On 15 August 2013 18:54, Guenter Roeck <li...@roeck-us.net> wrote: > On Thu, Aug 15, 2013 at 05:45:42PM +0100, Peter Maydell wrote: >> On 13 August 2013 04:40, Guenter Roeck <li...@roeck-us.net> wrote: >> > Patch tested and working with qemu 1.5.2, using the configuration file >> > from the yocto project. Patch applied on top of kernel version 3.11-rc5. >> >> OK, I tested this on PB926+PCI backplane hardware, and it is >> definitely better than current mainline, in that the test USB >> card that I have no longer causes the kernel to generate this sort of >> backtrace: >> > Do you mean my patch fixes the traceback below as a side effect ? > Would be great ... it would be one more reason to get it applied.
Yes, exactly -- the kernel currently has the wrong irq mapping, which causes the traceback (ie h/w asserts irq 93 but the kernel is listening on something else). That the patch fixes this confirms that it is the behaviour of hardware as well as of QEMU. >> However it still doesn't seem to reliably detect the USB harddisk >> plugged into the card, so I think there may be further issues, possibly >> some subset of those Arnd identified and fixed with this patch: >> http://permalink.gmane.org/gmane.linux.ports.arm.kernel/93397 >> > Does it get better if you apply Arnd's patch ? Arnd's patch is ancient and won't apply as is (due to intervening changes and also because some of the things it fixes were fixed in later patches); I'm currently trying to extract the relevant parts. If you want you can confirm that I/O port PCI access is broken on QEMU too -- disable CONFIG_SCSI_SYM53C8XX_MMIO so the driver uses PCI IO rather than MMIO and you'll see QEMU's SCSI device doesn't work any more. >> so I'd like to continue testing. >> >> The other thing this patch should (IMHO) have is the >> line in pci_versatile_setup() which tells QEMU that the >> kernel really does expect hardware-like behaviour: >> (Without this line QEMU will guess whether the kernel is broken >> or not and will get it right most but not necessarily all of the time.) >> > Might make sense, but I think it should be a separate patch. It needs to go in the same patch, because a kernel with the fixed irq remapping must also tell QEMU it is fixed; if you split the two then at the point between the two patches the kernel is broken for bisection purposes. > If I understand correctly, my patch fixes the SCSI problem. > Is that correct ? If so, can we get it applied to mainline ? I'd rather get to a point where I have the hardware definitely completely working first. There's no real hurry, this has been broken for months and months. -- PMM