Anton Vorontsov wrote: > On Tue, Aug 12, 2008 at 06:18:42PM +0400, Sergei Shtylyov wrote: > >> Anton Vorontsov wrote: >> >> >>>>>> 1. IDE status read does not work. (But am I understand correctly >>>>>> that IDE works well if IRQ is unspecified? Then this is hardly >>>>>> an issue.) >>>>>> 2. IDE interrupt comes when it should not. I'd recommend to use >>>>>> oscilloscope to find out what is happening there, that is, if >>>>>> the drive actually deasserts its irq line after status read. >>>>>> If so, than this could be a PIC problem. >>>>>> >>>>>> What is the platform on which you're observing the issue, btw? >>>>>> >>>>> Another possibility is that you got the wrong interrupt number >>>>> in the device-tree... >>>>> >>>>> Ben. >>>>> >>>> The platform is the AMCC Sequoia board. We've built a little adapter to >>>> connect a compact flash card to the processor bus. I believe the >>>> interrupt selection in the device tree is correct, and I've checked over >>>> the u-boot settings for the IRQ line (active high, level sensitive). >>>> >>> IDE IRQs are active-low. >>> >> Only on the PCI and only in the native mode. Natively, the IDE INTRQ >> signal is active-high, rising edge triggering, as on ISA. You seem to >> have an invertor somewhere, if it's not a PCI chip... >> > > Ugh. Right you are, as always. I've just looked into mpc8349emitx > schematics, there is indeed an inverter on the irq line. > > CF in True IDE mode is active-high, sorry. >
Ok, just to close this issue, my CF device is now working perfectly. Two problems, both my fault. 1) I thought the alternate registers used the same reg-shift and offset, so the alt_command and alt_status were at the wrong address, and 2) I was missing a pull-down on the IRQ line - the sequoia eval board has it in the schematic, but it is marked "not populated". Thanks to all for your comments and help, Steve
_______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev