NetBSD/sys/arch/acorn26/podulebus/podulebusreg.h

67 lines
1.6 KiB
C

/* $NetBSD: podulebusreg.h,v 1.2 2002/05/22 22:43:17 bjh21 Exp $ */
/*
* 2000 Ben Harris
*
* This file is in the public domain.
*/
#ifndef _PODULEBUSREG_H_
#define _PODULEBUSREG_H_
#define MAX_PODULES 4
#define PODULE_GAP (0x4000 >> 2)
/* Podule CMOS bytes */
#define PODULE_CMOS_BASE (112 + 0x40)
#define PODULE_CMOS_PERSLOT 4
/* Podule identity byte (ECId) flags */
#define ECID_IRQING 0x01
#define ECID_NOTPRESENT 0x02
#define ECID_FIQING 0x04
#define ECID_ID_MASK 0x78
#define ECID_ID_SHIFT 3
#define ECID_ID_EXTEND 0x00
#define ECID_NONCONF 0x80
/* Extended ECId bytes */
#define EXTECID_F1 1
#define EXTECID_F1_CD 0x01
#define EXTECID_F1_IS 0x02
#define EXTECID_F1_W_MASK 0xc0
#define EXTECID_F1_W_8BIT 0x00
#define EXTECID_F1_W_16BIT 0x40
#define EXTECID_F1_W_32BIT 0x80
#define EXTECID_PLO 3
#define EXTECID_PHI 4
#define EXTECID_MLO 5
#define EXTECID_MHI 6
#define EXTECID_SIZE 8
/* Extended interrupt pointers */
#define IRQPTR_SIZE 8
/* Chunk types */
#define CHUNK_RISCOS_LOADER 0x80
#define CHUNK_RISCOS_MODULE 0x81
#define CHUNK_RISCOS_BBCROM 0x82
#define CHUNK_RISCOS_SPRITE 0x83
#define CHUNK_OS1_LOADER 0x90
#define CHUNK_RISCIX_LOADER 0xa0
#define CHUNK_HELIOS 0xa3
#define CHUNK_DEV_LINK 0xf0
#define CHUNK_DEV_SERIAL 0xf1 /* ASCII string */
#define CHUNK_DEV_DATE 0xf2 /* ASCII string */
#define CHUNK_DEV_MODS 0xf3 /* ASCII string */
#define CHUNK_DEV_PLACE 0xf4 /* ASCII string */
#define CHUNK_DEV_DESCR 0xf5 /* ASCII string */
#define CHUNK_DEV_PARTNO 0xf6 /* ASCII string */
#define CHUNK_DEV_EADDR 0xf7 /* Six bytes */
#define CHUNK_DEV_HWREV 0xf8 /* Four-byte LE word */
#define CHUNK_DEV_ROMCRC 0xf9
#endif