[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[cdi-devel] [PATCH 0/3] Rework device creation mechanism
Currently, device creation is a very static thing. Each driver looks in
its initialisation function for devices that it supports. This means
that (a) the init_driver code is duplicated in each driver and (b) that
hot-plugging is impossible (becomes more important with USB support).
Making it library driven should solve these problems and might simplify
adaption to OS specific needs as an extra bonus (I'm thinking of
Pedigree's pDev here).
Kevin Wolf (3):
cdi.h: Introduce cdi_bus_data
Move complete initialisation to device_init
Initialise PCI devices in the CDI library
ata/atapi.c | 2 +-
ata/device.c | 11 ++++++++---
ata/device.h | 6 +++---
ata/main.c | 2 --
e1000/device.c | 31 +++++++++++++++++++++++--------
e1000/device.h | 4 +---
e1000/main.c | 31 ++-----------------------------
floppy/main.c | 2 +-
include/cdi.h | 15 ++++++++++++---
include/cdi/pci.h | 2 ++
ne2k/include/ne2k.h | 4 +---
ne2k/main.c | 28 ++--------------------------
ne2k/ne2k.c | 26 ++++++++++++++++++++------
pcnet/include/pcnet.h | 3 +--
pcnet/main.c | 25 ++-----------------------
pcnet/pcnet.c | 29 ++++++++++++++++++++++-------
rtl8139/include/rtl8139.h | 3 +--
rtl8139/main.c | 28 ++--------------------------
rtl8139/rtl8139.c | 26 ++++++++++++++++++++------
sis900/device.c | 30 ++++++++++++++++++++++--------
sis900/device.h | 3 +--
sis900/main.c | 31 ++-----------------------------
22 files changed, 149 insertions(+), 193 deletions(-)