Copy CIS3 and CIS4 strings into the kernel too.

PR:		51333
Submitted by:	Scott Mitchell
This commit is contained in:
Warner Losh 2003-04-23 23:40:28 +00:00
parent 9598fb9322
commit e4d8ed2595
2 changed files with 8 additions and 0 deletions

View File

@ -370,6 +370,10 @@ card_inserted(struct slot *sp)
strlcpy(sp->manufstr, sp->cis->manuf, sizeof(sp->manufstr));
if (sp->cis->vers)
strlcpy(sp->versstr, sp->cis->vers, sizeof(sp->versstr));
if (sp->cis->add_info1)
strlcpy(sp->cis3str, sp->cis->add_info1, sizeof(sp->cis3str));
if (sp->cis->add_info2)
strlcpy(sp->cis4str, sp->cis->add_info2, sizeof(sp->cis4str));
if (cp->ether) {
struct ether *e = 0;
@ -994,6 +998,8 @@ setup_slot(struct slot *sp)
drv.prodext = sp->prodext;
strlcpy(drv.manufstr, sp->manufstr, sizeof(drv.manufstr));
strlcpy(drv.versstr, sp->versstr, sizeof(drv.versstr));
strlcpy(drv.cis3str, sp->cis3str, sizeof(drv.cis3str));
strlcpy(drv.cis4str, sp->cis4str, sizeof(drv.cis4str));
/*
* If the driver fails to be connected to the device,
* then it may mean that the driver did not recognise it.

View File

@ -127,6 +127,8 @@ struct slot {
unsigned char eaddr[6]; /* If any */
char manufstr[DEV_MAX_CIS_LEN];
char versstr[DEV_MAX_CIS_LEN];
char cis3str[DEV_MAX_CIS_LEN];
char cis4str[DEV_MAX_CIS_LEN];
struct allocblk io; /* I/O block spec */
struct allocblk mem; /* Memory block spec */
int irq; /* Irq value */