version 1.6, 2007/11/01 13:19:27 |
version 1.7, 2007/11/01 13:22:08 |
|
|
{ |
{ |
/* |
/* |
* Attach device childs, if any. |
* Attach device childs, if any. |
* XXX Allocate space for struct device and its xxx_dd |
* Allocate space for struct device and its xxx_dd |
*/ |
*/ |
int retval; |
int retval; |
struct device *cdevp; |
struct device *cdevp; |
|
|
cdevp->dv_name = dip->di_dname; |
cdevp->dv_name = dip->di_dname; |
cdevp->dv_minor = dip->di_ninstances; |
cdevp->dv_minor = dip->di_ninstances; |
|
|
/* XXX what about locator (aip->ai_locator)? */ |
|
|
|
printf("%s/%d at %s/%d loc 0x%x flags 0x%x: ", cdevp->dv_name, cdevp->dv_minor, |
printf("%s/%d at %s/%d loc 0x%x flags 0x%x: ", cdevp->dv_name, cdevp->dv_minor, |
pdevp->dv_name, pdevp->dv_minor, aip->ai_locator, aip->ai_flags); |
pdevp->dv_name, pdevp->dv_minor, aip->ai_locator, aip->ai_flags); |
|
|
|
|
|
|
/* TODO kfree devdata and device */ |
/* TODO kfree devdata and device */ |
|
|
/* XXX next aip */ |
/* next aip */ |
aip++; |
aip++; |
|
|
continue; |
continue; |
|
|
|
|
/* activate device */ |
/* activate device */ |
cdevp->dv_active = 1; |
cdevp->dv_active = 1; |
|
|
/* XXX think about recursion */ |
|
|
|
/* recursive attach this child's children */ |
/* recursive attach this child's children */ |
devconfig_attach_childs(cdevp); |
devconfig_attach_childs(cdevp); |