diff options
Diffstat (limited to 'sys/dev/ida/idareg.h')
-rw-r--r-- | sys/dev/ida/idareg.h | 41 |
1 files changed, 38 insertions, 3 deletions
diff --git a/sys/dev/ida/idareg.h b/sys/dev/ida/idareg.h index 506c495..8a28c15 100644 --- a/sys/dev/ida/idareg.h +++ b/sys/dev/ida/idareg.h @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1999 Jonathan Lemon + * Copyright (c) 1999,2000 Jonathan Lemon * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -31,7 +31,25 @@ */ /* - * board register offsets + * defines for older EISA controllers (IDA, IDA-2, IAES, SMART) + */ +#define R_EISA_INT_MASK 0xC89 +#define R_EISA_LOCAL_MASK 0xC8C +#define R_EISA_LOCAL_DOORBELL 0xC8D +#define R_EISA_SYSTEM_MASK 0xC8E +#define R_EISA_SYSTEM_DOORBELL 0xC8F +#define R_EISA_LIST_ADDR 0xC90 +#define R_EISA_LIST_LEN 0xC94 +#define R_EISA_TAG 0xC97 +#define R_EISA_COMPLETE_ADDR 0xC98 +#define R_EISA_LIST_STATUS 0xC9E + +#define EISA_CHANNEL_BUSY 0x01 +#define EISA_CHANNEL_CLEAR 0x02 + + +/* + * board register offsets for SMART-2 controllers */ #define R_CMD_FIFO 0x04 #define R_DONE_FIFO 0x08 @@ -40,11 +58,28 @@ #define R_INT_PENDING 0x14 /* - * interrupt mask values + * interrupt mask values for SMART series */ #define INT_DISABLE 0x00 #define INT_ENABLE 0x01 + +/* + * board offsets for the 42xx series + */ +#define R_42XX_STATUS 0x30 +#define R_42XX_INT_MASK 0x34 +#define R_42XX_REQUEST 0x40 +#define R_42XX_REPLY 0x44 + +/* + * interrupt values for 42xx series + */ +#define INT_ENABLE_42XX 0x00 +#define INT_DISABLE_42XX 0x08 +#define STATUS_42XX_INT_PENDING 0x08 + + /* * return status codes */ |