diff options
author | imp <imp@FreeBSD.org> | 2009-03-03 18:57:59 +0000 |
---|---|---|
committer | imp <imp@FreeBSD.org> | 2009-03-03 18:57:59 +0000 |
commit | 1eb2cd44dfe80c9be11c739ba4808dc66bbdee10 (patch) | |
tree | 9c635cdf90786646da8ddda407952a966897949b /sys/dev/pccard/pccardvar.h | |
parent | 3c1523b9d54a950714d9c987515d1768c25eccd6 (diff) | |
download | FreeBSD-src-1eb2cd44dfe80c9be11c739ba4808dc66bbdee10.zip FreeBSD-src-1eb2cd44dfe80c9be11c739ba4808dc66bbdee10.tar.gz |
Add in parsing of the disk FUNCE tuples.
Diffstat (limited to 'sys/dev/pccard/pccardvar.h')
-rw-r--r-- | sys/dev/pccard/pccardvar.h | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/sys/dev/pccard/pccardvar.h b/sys/dev/pccard/pccardvar.h index ddd5609..91f5362 100644 --- a/sys/dev/pccard/pccardvar.h +++ b/sys/dev/pccard/pccardvar.h @@ -194,7 +194,8 @@ enum { PCCARD_IVAR_PRODUCT_STR,/* CIS strnig for "Product" */ PCCARD_IVAR_CIS3_STR, PCCARD_IVAR_CIS4_STR, - PCCARD_IVAR_FUNCTION + PCCARD_IVAR_FUNCTION, + PCCARD_IVAR_FUNCE_DISK }; #define PCCARD_ACCESSOR(A, B, T) \ @@ -211,6 +212,7 @@ PCCARD_ACCESSOR(product, PRODUCT, uint32_t) PCCARD_ACCESSOR(prodext, PRODEXT, uint16_t) PCCARD_ACCESSOR(function_number,FUNCTION_NUMBER, uint32_t) PCCARD_ACCESSOR(function, FUNCTION, uint32_t) +PCCARD_ACCESSOR(funce_disk, FUNCE_DISK, uint16_t) PCCARD_ACCESSOR(vendor_str, VENDOR_STR, const char *) PCCARD_ACCESSOR(product_str, PRODUCT_STR, const char *) PCCARD_ACCESSOR(cis3_str, CIS3_STR, const char *) @@ -250,3 +252,23 @@ enum { { NULL, PCMCIA_VENDOR_ ## v1, PCCARD_P(v1, p1), \ PCMCIA_CIS_ ## p2} #endif + +/* + * Defines to decoe the get_funce_disk return value. See the PCMCIA standard + * for all the details of what these bits mean. + */ +#define PFD_I_V_MASK 0x3 +#define PFD_I_V_NONE_REQUIRED 0x0 +#define PFD_I_V_REQ_MOD_ACC 0x1 +#define PFD_I_V_REQ_ACC 0x2 +#define PFD_I_V_REQ_ALWYS 0x1 +#define PFD_I_S 0x4 /* 0 rotating, 1 silicon */ +#define PFD_I_U 0x8 /* SN Uniq? */ +#define PFD_I_D 0x10 /* 0 - 1 drive, 1 - 2 drives */ +#define PFD_P_P0 0x100 +#define PFD_P_P1 0x200 +#define PFD_P_P2 0x400 +#define PFD_P_P3 0x800 +#define PFD_P_N 0x1000 /* 3f7/377 excluded? */ +#define PFD_P_E 0x2000 /* Index bit supported? */ +#define PFD_P_I 0x4000 /* twincard */ |