From: Patrick M. <mo...@os...> - 2002-03-25 21:19:07
|
> --- clean/include/linux/device.h Tue Mar 5 21:52:49 2002 > +++ linux-acpi/include/linux/device.h Fri Mar 22 11:45:43 2002 > @@ -142,5 +143,8 @@ > } > > extern void put_device(struct device * dev); > +extern struct device device_root; > +extern struct device device_legacy; > +extern struct device device_sys; Why do you need to export these? I would rather not, and instead export interfaces to use them. Recall that I had implemented a register_sys_device() and register_legacy_device(), and each "bus" had its own file in drivers/base/. Why do this here: > +static struct device device_i8259A = { > + name: "i8259A", > + bus_id: "0020", > + parent: &device_sys, > +}; And not here? > +static struct device device_i8253; > + > +static void time_init_driverfs(void) > +{ > + strcpy(device_i8253.name, "i8253"); > + strcpy(device_i8253.bus_id, "0040"); > + device_i8253.parent = &device_sys; > + device_register(&device_i8253); > +} > + > +__initcall(time_init_driverfs); And, this should be device_initcall(time_init_driverfs), and probably wrapped into: > void __init time_init(void) (though I haven't looked carefully at it) -pat |