On Monday 23 June 2008, Benjamin Herrenschmidt wrote: > On Mon, 2008-06-23 at 16:41 +1000, Benjamin Herrenschmidt wrote: > > > Don't panic. It looks like it's something else in linux-next that's > > > changing some ifdef's in the media-bay code which is causing that. > > > > > > I managed to pull linux next at the merge point with your tree and > > > things apply. I'll use that to test. > > > > Ok, it doesn't work properly. It gets error trying to register > > the IDE device. Booting with a CD drive in and no disk in the drive > > gives the log below. > > > > I've verified that it works without your patches. If I apply only patch > > 1, it doesn't build due to some wrong construct in the probe code. I've > > hand fixed it, but then I hit a BUG_ON in ide_probe_port() (line 773). > > > > mediabay boot time messages (before IDE probing) are: > > BTW. I didn't debug more today as I ran out of time but I'll do more > tomorrow. > > On a side note, we need to change the way the mediabay stuff works. I've > started writing a pata_macio (ie. libata variant of the driver) a while I (naively?) hope that you are using ide-pmac as a base (the driver looks like a normal host driver now) and going to make the final API switch after hardware specific changes are complete (so we will be able to use git-bisect instead of guesswork combined with voodoo dance when dealing with potential regressions :-). > ago that I need to kick myself into finishing one of these days, and it > will want something different than having the mediabay code poke into > the IDE layer directly :-) > > My current though is to add a media bay notification callback to the > macio_device structure (the pci variants of the device are never hooked > up on a media bay) and move the state query function to the macio core, > the media bay driver being then responsible for calling into the macio > core to update the state. You may want to look at ACPI hotplug dock handling for inspiration (if you haven't already). > I still have to sort out some interesting locking issues vs. state > changes around driver probe() but I think that's the way to go. Thus, > the drivers/ide driver can do it's old ide core hackery locally and the > libata variant do what is needed for libata locally too. There is no longer any hackery on IDE core code side in 2.6.26, there are just two nice methods: ide_port_unregister_devices() and ide_scan_port(). Therefore I would prefer to also update ide-pmac for new methods and just add what is needed (if any) to IDE core code. [ Please keep me in loop on these mediabay changes. ] > It's been a bit low on my todo list as Apple stopped making machines > with hotswap mediabays something like 8 years ago :-) The two I have > still working are pretty scary old things and one of them is almost > falling apart.. :) Bart -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html