Re: drivers/macintosh/Kconfig (was: Re: Linux 2.6.3-rc1)
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2004-02-08 22:22:35
I've been thinking about splitting up the ADB and other functions of the egret, cuda, and pmu. The abuse of adb_request for non-ADB functionality should go away. With the new driver model, the ADB bus will be represented as a generic bus and any request should go to a specific bus or device. I don't want to have to assume a single, global bus the way the current code does. I would prefer to have ADB be really just for ADB. The power management stuff should be a separate interface, and really should be more generic across the different Mac power management systems. Although the egret and cuda don't do as much as pmu, they still manage poweroff, reset, and the PRAM/RTC. These are totally unrelated to ADB, and that stuff I think should be left in drivers/macintosh/.
I agree that the abuse of adb_request should go, though replacing it isn't easy at this stage. It's not worth bothering with a common interface for things like poweroff, reset and RTC imho, it would only solve a small part of the problem, there are too many places where we actually need to send directly a PMU command. Part of the problem is that the PMU driver low level state machine it tied to the format of the adb_request structure. I don't think I will fix any of that for 2.6. For 2.7, I may define a low level pmu_request structure _without_ embedded buffers and have the ADB request handling allocate one of those atomically. Ben. ** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/