Thread (17 messages) flat view 17 messages, 5 authors, 2004-02-08

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/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help