]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
mfd: Only unregister platform devices allocated by the mfd core
authorCharles Keepax <ckeepax@opensource.wolfsonmicro.com>
Fri, 9 Nov 2012 16:15:28 +0000 (16:15 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Jan 2013 16:45:58 +0000 (08:45 -0800)
commit36623bfc682dc96a4654651f7f8ec11f86733920
tree0174ff411e33d9258899509abcdf06da315b5fe8
parent79664c177e20f2b49e44d61f31a7cbbe6c24061c
mfd: Only unregister platform devices allocated by the mfd core

commit b9fbb62eb61452d728c39b2e5020739c575aac53 upstream.

mfd_remove_devices would iterate over all devices sharing a parent with
an mfd device regardless of whether they were allocated by the mfd core
or not. This especially caused problems when the device structure was
not contained within a platform_device, because to_platform_device is
used on each device pointer.

This patch defines a device_type for mfd devices and checks this is
present from mfd_remove_devices_fn before processing the device.

Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Tested-by: Peter Tyser <ptyser@xes-inc.com>
Reviewed-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/mfd/mfd-core.c