On 05/13/2012 12:00 AM, Artyom Tarasenko wrote:
On Sat, May 12, 2012 at 7:06 PM, Artyom Tarasenko atar4qemu@gmail.com wrote:
On Sat, May 12, 2012 at 6:29 PM, Blue Swirl blauwirbel@gmail.com wrote:
On Sat, May 12, 2012 at 3:57 PM, Artyom Tarasenko atar4qemu@gmail.com wrote:
On Sat, May 12, 2012 at 1:42 PM, Blue Swirl blauwirbel@gmail.com wrote:
Based on Artyom's Sparc64 work (thanks a lot!), I added some minimal support for virtio-block and interrupt nodes.
With these patches and QEMU HEAD, Linux can boot like Artyom describes in http://tyom.blogspot.de/2012_05_01_archive.html but without any manual OpenBIOS setup.
My test kernel - 3.3.2 - still needs the ebus interrupt mapping properties:
cd /pci@1fe,0/ebus 000001fe encode-int 020003f8 encode-int encode+ 1 encode-int encode+ ffe29140 encode-int encode+ 2b encode-int encode+ " interrupt-map" property 000001ff encode-int ffffffff encode-int encode+ 00000003 encode-int encode+ " interrupt-map-mask" property device-end boot
Updated patch attached. This change seems to help the serial driver.
Looks good. The result seems to be identical with my hack, but there is one point I'd like to discuss:
cd /pci@1fe,0/pci-ata ok .properties name "pci-ata" [...] interrupts 0
I'm not sure that this is a valid value for the interrupts property.
Tarl, Jakub, can you comment whether 0 is allowed?
According to the UltraSPARC IIi User's Manual, section 19.3.3, INO 0 (again, relative to the parent node mapping), would be INTA# on bus 0 and INO 1 would be INTB#.
Jakub