patchset "b17" updated

Dominik Brodowski linux at dominikbrodowski.de
Sat Nov 13 18:02:45 EST 2004


An updated version of the "b17" pcmcia patchset is available at
http://www.brodo.de/patches/2004-11-13/pcmcia-b17-device.tar.bz2

Changes to the previous version include:
- change SPIN_LOCK_UNLOCKED -> spin_lock_init()
- proper "pcmcia_{get,put}_dev" handling (and naming change!)
- drop reference to driver module only after call to ->detach()
- properly set the "owner" field in pcmcia-related struct device_driver.
- rediff

A "bigdiff" is available at
http://www.brodo.de/patches/2004-11-13/pcmcia-b17-complete

and individual patches as follows:


http://www.brodo.de/patches/2004-11-13/pcmcia-b17-device/01-new_ds_registration

Add a new registration function to register the PCMCIA 16-bit subsystem
(ds a.k.a. pcmcia) with the PCMICA core (cs a.k.a. pcmcia_core).

As send_event is only called with skt->sem held, we can use that to safeguard
skt->callback(), too. Note that the class_device_register() call by pccardd()
is done _before_ skt->sem() is held, and the pcmcia_socket_register() doesn't
hold skt->sem() as well, so there is no chance for a deadlock.


http://www.brodo.de/patches/2004-11-13/pcmcia-b17-device/02-send_event

Call the PCMCIA 16-bit device drivers from ds.c instead of cs.c. Also,
remove the delayed handling of CS_REMOVAL events, but keep the ordering
the same as it used to be due to the delay.


http://www.brodo.de/patches/2004-11-13/pcmcia-b17-device/03-unify_bind_mtd

Unify the pcmcia_bind_mtd and bind_mtd functions.


http://www.brodo.de/patches/2004-11-13/pcmcia-b17-device/04-unify_bind_device

Unify bind_device and pcmcia_bind_device. Also, change bind_device so
that it conforms to CodingStyle.


http://www.brodo.de/patches/2004-11-13/pcmcia-b17-device/05-license

As discussed previously, my integration of ds.c with the driver model
can and will only be available under the GPL, as it's too much 
derived of other buses' implementation of integration with the driver model.


http://www.brodo.de/patches/2004-11-13/pcmcia-b17-device/06-pcmcia_device

Add pcmcia_device(s).


http://www.brodo.de/patches/2004-11-13/pcmcia-b17-device/07-remove_bind_t

Remove struct socket_bind_t by moving "dev_link_t *instance" to struct
pcmcia_device, and transforming all users of socket_bind_t to use struct
pcmcia_device instead. Also, CodingStyle updates for
get_device_info and unbind_request.


http://www.brodo.de/patches/2004-11-13/pcmcia-b17-device/08-remove_use_count

Remove the internal driver use_count in ds.c, as the reference counting
is done in the module core anyways, and that reference count is available
for cardmgr's usage by a call to module_refcount. And if
!CONFIG_MODULE_UNLOAD, rmmod is useless anyways, so avoid that call by
cardmgr at all.


http://www.brodo.de/patches/2004-11-13/pcmcia-b17-device/09-set-driver-drv-owner

Properly set the "owner" field in pcmcia-related struct device_driver.





More information about the linux-pcmcia mailing list