Commit b58189b3 authored by Johannes Thumshirn's avatar Johannes Thumshirn Committed by Greg Kroah-Hartman

mcb: remove sub-device handling code

The MEN Chameleon specification states that a chameleon FPGA can include a
bridge descriptor, which then opens up a new bus behind this bridge. MCB
included subdevice handling code in the core, but no support for bus
descriptors in the parser, due to a lack of hardware access.

As this is technically dead code, but it gets executed on a device add,
I've decided to remove it.
Signed-off-by: default avatarJohannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 68d9671a
...@@ -369,7 +369,6 @@ struct mcb_device *mcb_alloc_dev(struct mcb_bus *bus) ...@@ -369,7 +369,6 @@ struct mcb_device *mcb_alloc_dev(struct mcb_bus *bus)
if (!dev) if (!dev)
return NULL; return NULL;
INIT_LIST_HEAD(&dev->bus_list);
dev->bus = bus; dev->bus = bus;
return dev; return dev;
...@@ -405,20 +404,6 @@ static int __mcb_bus_add_devices(struct device *dev, void *data) ...@@ -405,20 +404,6 @@ static int __mcb_bus_add_devices(struct device *dev, void *data)
return 0; return 0;
} }
static int __mcb_bus_add_child(struct device *dev, void *data)
{
struct mcb_device *mdev = to_mcb_device(dev);
struct mcb_bus *child;
BUG_ON(!mdev->is_added);
child = mdev->subordinate;
if (child)
mcb_bus_add_devices(child);
return 0;
}
/** /**
* mcb_bus_add_devices() - Add devices in the bus' internal device list * mcb_bus_add_devices() - Add devices in the bus' internal device list
* @bus: The @mcb_bus we add the devices * @bus: The @mcb_bus we add the devices
...@@ -428,8 +413,6 @@ static int __mcb_bus_add_child(struct device *dev, void *data) ...@@ -428,8 +413,6 @@ static int __mcb_bus_add_child(struct device *dev, void *data)
void mcb_bus_add_devices(const struct mcb_bus *bus) void mcb_bus_add_devices(const struct mcb_bus *bus)
{ {
bus_for_each_dev(&mcb_bus_type, NULL, NULL, __mcb_bus_add_devices); bus_for_each_dev(&mcb_bus_type, NULL, NULL, __mcb_bus_add_devices);
bus_for_each_dev(&mcb_bus_type, NULL, NULL, __mcb_bus_add_child);
} }
EXPORT_SYMBOL_GPL(mcb_bus_add_devices); EXPORT_SYMBOL_GPL(mcb_bus_add_devices);
......
...@@ -50,10 +50,8 @@ static inline struct mcb_bus *to_mcb_bus(struct device *dev) ...@@ -50,10 +50,8 @@ static inline struct mcb_bus *to_mcb_bus(struct device *dev)
/** /**
* struct mcb_device - MEN Chameleon Bus device * struct mcb_device - MEN Chameleon Bus device
* *
* @bus_list: internal list handling for bus code
* @dev: device in kernel representation * @dev: device in kernel representation
* @bus: mcb bus the device is plugged to * @bus: mcb bus the device is plugged to
* @subordinate: subordinate MCBus in case of bridge
* @is_added: flag to check if device is added to bus * @is_added: flag to check if device is added to bus
* @driver: associated mcb_driver * @driver: associated mcb_driver
* @id: mcb device id * @id: mcb device id
...@@ -66,10 +64,8 @@ static inline struct mcb_bus *to_mcb_bus(struct device *dev) ...@@ -66,10 +64,8 @@ static inline struct mcb_bus *to_mcb_bus(struct device *dev)
* @memory: memory resource * @memory: memory resource
*/ */
struct mcb_device { struct mcb_device {
struct list_head bus_list;
struct device dev; struct device dev;
struct mcb_bus *bus; struct mcb_bus *bus;
struct mcb_bus *subordinate;
bool is_added; bool is_added;
struct mcb_driver *driver; struct mcb_driver *driver;
u16 id; u16 id;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment