diff options
author | nsouch <nsouch@FreeBSD.org> | 1999-01-30 15:35:39 +0000 |
---|---|---|
committer | nsouch <nsouch@FreeBSD.org> | 1999-01-30 15:35:39 +0000 |
commit | 10ef2b8422913dafa8c05f64b5d0c07a3d2ad9c0 (patch) | |
tree | 40df97b8849853b739d2d4fdbd234d29a62ee63a /sys/dev/ppbus/ppbconf.h | |
parent | c9bc4bf0090c71bd80805b53e37129f6052a7407 (diff) | |
download | FreeBSD-src-10ef2b8422913dafa8c05f64b5d0c07a3d2ad9c0.zip FreeBSD-src-10ef2b8422913dafa8c05f64b5d0c07a3d2ad9c0.tar.gz |
Distinguish EPP address/data register. Add EPP address register access to ppi.
Change microseq offsets. Previously, offsets of the program counter where
added to the index of the current microinstruction. Make them rely on the
index of the next executed microinstruction.
Suggested by: Luigi Rizzo <luigi@labinfo.iet.unipi.it>
Diffstat (limited to 'sys/dev/ppbus/ppbconf.h')
-rw-r--r-- | sys/dev/ppbus/ppbconf.h | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/sys/dev/ppbus/ppbconf.h b/sys/dev/ppbus/ppbconf.h index be0ff33..af08c5d 100644 --- a/sys/dev/ppbus/ppbconf.h +++ b/sys/dev/ppbus/ppbconf.h @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: ppbconf.h,v 1.11 1999/01/10 16:41:14 nsouch Exp $ + * $Id: ppbconf.h,v 1.12 1999/01/27 19:44:05 dillon Exp $ * */ #ifndef __PPBCONF_H @@ -204,14 +204,16 @@ struct ppb_adapter { u_char (*r_dtr)(int); u_char (*r_str)(int); u_char (*r_ctr)(int); - u_char (*r_epp)(int); + u_char (*r_epp_A)(int); + u_char (*r_epp_D)(int); u_char (*r_ecr)(int); u_char (*r_fifo)(int); void (*w_dtr)(int, char); void (*w_str)(int, char); void (*w_ctr)(int, char); - void (*w_epp)(int, char); + void (*w_epp_A)(int, char); + void (*w_epp_D)(int, char); void (*w_ecr)(int, char); void (*w_fifo)(int, char); }; @@ -315,6 +317,8 @@ extern int ppb_write(struct ppb_device *, char *, int, int); #define ppb_get_mode(dev) ((dev)->mode) +/* This set of function access only to the EPP _data_ registers + * in 8, 16 and 32 bit modes */ #define ppb_outsb_epp(dev,buf,cnt) \ (*(dev)->ppb->ppb_link->adapter->outsb_epp) \ ((dev)->ppb->ppb_link->adapter_unit, buf, cnt) @@ -334,13 +338,17 @@ extern int ppb_write(struct ppb_device *, char *, int, int); (*(dev)->ppb->ppb_link->adapter->insl_epp) \ ((dev)->ppb->ppb_link->adapter_unit, buf, cnt) -#define ppb_repp(dev) (*(dev)->ppb->ppb_link->adapter->r_epp) \ +#define ppb_repp_A(dev) (*(dev)->ppb->ppb_link->adapter->r_epp_A) \ + ((dev)->ppb->ppb_link->adapter_unit) +#define ppb_repp_D(dev) (*(dev)->ppb->ppb_link->adapter->r_epp_D) \ ((dev)->ppb->ppb_link->adapter_unit) #define ppb_recr(dev) (*(dev)->ppb->ppb_link->adapter->r_ecr) \ ((dev)->ppb->ppb_link->adapter_unit) #define ppb_rfifo(dev) (*(dev)->ppb->ppb_link->adapter->r_fifo) \ ((dev)->ppb->ppb_link->adapter_unit) -#define ppb_wepp(dev,byte) (*(dev)->ppb->ppb_link->adapter->w_epp) \ +#define ppb_wepp_A(dev,byte) (*(dev)->ppb->ppb_link->adapter->w_epp_A) \ + ((dev)->ppb->ppb_link->adapter_unit, byte) +#define ppb_wepp_D(dev,byte) (*(dev)->ppb->ppb_link->adapter->w_epp_D) \ ((dev)->ppb->ppb_link->adapter_unit, byte) #define ppb_wecr(dev,byte) (*(dev)->ppb->ppb_link->adapter->w_ecr) \ ((dev)->ppb->ppb_link->adapter_unit, byte) |