Hi Jakub, On Mon, Jul 4, 2011 at 1:17 PM, Jakub Jermar <[email protected]> wrote: > On 4.7.2011 12:30, Artyom Tarasenko wrote: >> You mean that HelenOS only needs the interrupt controller, and the rest >> of IOMMU (particularly DVMA) is not necessary? > > Exactly, so far, the devices we have supported on sparc64 (and > everywhere else) were very simple ones using just PIO - mostly serial > controllers and various buses / interrupt controllers. HelenOS mainline > can't do any DMA or DVMA yet, just mere PIO.
Ok. Since today qemu has an interrupt controller good enough for booting Linux. So you might want to consider implementing a SU stdio driver. ;-) >> Actually Qemu-sparc64 does support hardware interrupts, what it lacks >> is an interrupt controller (and the rest of IOMMU). >> Particularly this means there is no general way to disable a certain >> interrupt without knowing its source, but all other mechanisms - >> changing pil, or disabling interrupt generation on a device level >> (timers, serial ports and cmd646 can do it) work fine. > > We detect what mondo vector number the device is using by traversing the > OFW tree, thus we can map the device's parent bus interrupt to the > system bus interrupt number. We also have auxilliary drivers for OBIO > (as found on the Ultra 5's Sabre PCI or also on Ultra 60's Psycho PCI) > to handle the end of interrupt condition in the "interrupt controller". > >> So, if the rest of IOMMU is not necessary, it sounds that HelenOS can >> be modified so that it would work both on a real and qemu sun4u >> machines. > > Could it then be just a matter of providing a small kbd driver and the > parent bus attachment code that would teach HelenOS to accept a PS2 > keyboard instead of a Sun keyboard attached via a ns16550? > > In a similar fashion, adding fb support was a matter of Igor providing a > small scr driver for QEMU,VGA. > >One problem I can immediately see is that there is no `interrupts` > property in the `keyboard` node. Does the vanilla 0.4.3 iso have a PS2 keyboard driver? Since there is a controller, adding a property is trivial: http://tyom.blogspot.com/2012/05/booting-linuxsparc64-on-todays-openbios.html Artyom -- Regards, Artyom Tarasenko solaris/sparc under qemu blog: http://tyom.blogspot.com/search/label/qemu _______________________________________________ HelenOS-devel mailing list [email protected] http://lists.modry.cz/cgi-bin/listinfo/helenos-devel
