xref: /csrg-svn/sys/vax/include/cpu.h (revision 2712)
1*2712Swnj /*	cpu.h	4.3	81/02/26	*/
22550Swnj 
3*2712Swnj #ifndef LOCORE
42550Swnj /*
52550Swnj  * Cpu identification, from SID register.
62550Swnj  */
72550Swnj union cpusid {
82550Swnj 	int	cpusid;
92550Swnj 	struct cpuany {
102550Swnj 		u_int	:24,
112550Swnj 			cp_type:8;
122550Swnj 	} cpuany;
132550Swnj 	struct cpu780 {
142550Swnj 		u_int	cp_sno:12,		/* serial number */
152550Swnj 			cp_plant:3,		/* plant number */
162550Swnj 			cp_eco:9,		/* eco level */
172550Swnj 			cp_type:8;		/* VAX_780 */
182550Swnj 	} cpu780;
192550Swnj 	struct cpu750 {
202550Swnj 		u_int	cp_hrev:8,		/* hardware rev level */
212550Swnj 			cp_urev:8,		/* ucode rev level */
222550Swnj 			:8,
232550Swnj 			cp_type:8;		/* VAX_750 */
242550Swnj 	} cpu750;
252550Swnj };
26*2712Swnj #endif
272550Swnj #define	VAX_780		1
282550Swnj #define	VAX_750		2
292550Swnj 
302550Swnj #define	VAX_MAX		2
312550Swnj 
32*2712Swnj #ifndef LOCORE
332550Swnj /*
342550Swnj  * Per-cpu information for system.
352550Swnj  */
362550Swnj struct	percpu {
372550Swnj 	int	(*pc_config)();
382550Swnj 	short	pc_cputype;
392550Swnj };
402550Swnj 
412550Swnj #ifdef KERNEL
422550Swnj int	cpu;
432550Swnj #endif
44*2712Swnj #endif
45