This patchset will merge the ibmebus and of_platform bus drivers by basing a lot of ibmebus functionality on of_platform code and adding the features specific to ibmebus on top of that.
This is a repost of my previous patchset incorporating Arnd's comments. I split the actual ibmebus rework into three patches (2/5-4/5) for easier readability. The kernel will compile during the intermediate states, and ibmebus will not crash, but not work either. As a side-effect of patch 3/5, a problem with bus_id collisions in case of two devices sharing the same location code is resolved -- the bus_id is now determined differently. [1/5] moves of_device allocation into of_device.[ch] [2/5] removes the old bus match/probe/remove functions [3/5] adds device creation and bus probing based on of_device [4/5] finally moves to of_device and of_platform_driver by changing ibmebus.h and matching the eHCA and eHEA drivers [5/5] just changes a nit in ibmebus_store_probe() These patches should apply cleanly, in order, against 2.6.23-rc5 and against Linus' git. Please review and comment them, and queue them up for 2.6.24 if you think they're okay. Thanks and regards, Joachim arch/powerpc/kernel/ibmebus.c | 267 ++++++++--------------------- arch/powerpc/kernel/of_device.c | 80 +++++++++ arch/powerpc/kernel/of_platform.c | 70 +-------- drivers/infiniband/hw/ehca/ehca_classes.h | 2 +- drivers/infiniband/hw/ehca/ehca_eq.c | 6 +- drivers/infiniband/hw/ehca/ehca_main.c | 32 ++-- drivers/net/ehea/ehea.h | 2 +- drivers/net/ehea/ehea_main.c | 72 ++++---- include/asm-powerpc/ibmebus.h | 38 +---- include/asm-powerpc/of_device.h | 4 + include/linux/of_device.h | 5 + 11 files changed, 228 insertions(+), 350 deletions(-) -- Joachim Fenkes -- eHCA Linux Driver Developer and Hardware Tamer IBM Deutschland Entwicklung GmbH -- Dept. 3627 (I/O Firmware Dev. 2) Schoenaicher Strasse 220 -- 71032 Boeblingen -- Germany eMail: [EMAIL PROTECTED] - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/