mcb: remove sub-device handling code
authorJohannes Thumshirn <jthumshirn@suse.de>
Fri, 26 Aug 2016 07:35:00 +0000 (09:35 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 31 Aug 2016 11:16:24 +0000 (13:16 +0200)
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: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/mcb/mcb-core.c
include/linux/mcb.h

index 6f2c8522e14aaf74e0ed7eef7a1cdf60ee335b9b..5306966efc11d04a8c56a8f9a2d2a1d44ebed743 100644 (file)
@@ -369,7 +369,6 @@ struct mcb_device *mcb_alloc_dev(struct mcb_bus *bus)
        if (!dev)
                return NULL;
 
-       INIT_LIST_HEAD(&dev->bus_list);
        dev->bus = bus;
 
        return dev;
@@ -405,20 +404,6 @@ static int __mcb_bus_add_devices(struct device *dev, void *data)
        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
  * @bus: The @mcb_bus we add the devices
@@ -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)
 {
        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);
 
index a6733d3fe72bd6ddfe733550f07b9031f0b6ba79..ee5200d660b0ad2d47f7ebf80c5e752f7b95873b 100644 (file)
@@ -50,10 +50,8 @@ static inline struct mcb_bus *to_mcb_bus(struct device *dev)
 /**
  * struct mcb_device - MEN Chameleon Bus device
  *
- * @bus_list: internal list handling for bus code
  * @dev: device in kernel representation
  * @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
  * @driver: associated mcb_driver
  * @id: mcb device id
@@ -66,10 +64,8 @@ static inline struct mcb_bus *to_mcb_bus(struct device *dev)
  * @memory: memory resource
  */
 struct mcb_device {
-       struct list_head bus_list;
        struct device dev;
        struct mcb_bus *bus;
-       struct mcb_bus *subordinate;
        bool is_added;
        struct mcb_driver *driver;
        u16 id;