Bob Feretich wrote: > Xenomai booted with the 2.6.33 kernel on BeagleBoard! > I built the below 2.6.33 kernels... > > * No Angstrom patches, no Adeos patch - - it booted, I noticed that > /proc/interrupts showed no interrupts occurred on IRQs 7 or 378 > (SD card Detect). The 2.6.31 kernel showed 2 on each IRQ just > after boot. > * No Angstrom patches, Adeos patch, but Xenomai disabled - - it > booted. Still no interrupts on IRQs 7 or 378. > * No Angstrom patches, Adeos patch, and Xenomai enabled - - it > booted! :-) Still no interrupts on IRQs 7 or 378. > > Something obviously changed in the kernel between 2.6.31 and 2.6.33 to > suppress the IRQ 378 interrupts that occurred at boot time. This change > *may* be the reason that Xenomai works on the Beagleboard at 2.6.33, but > not at 2.6.31. > > I suspect that the Adeos patch may have trouble handling Level 2 > interrupts coming through a twl4030 device. I know that it is an OMAP > design practice to route the SD/MMC Card Detect interrupt through this > device. The device also controls several voltage regulators supplying > power to the board and OMAP chip. Overvoltage/undervoltage/thermal > alerts may also be originated by this device.
That is not really possible. The Adeos pipeline does not really "see" the twl4030 level 2 interrupts, as I said, these are dispatched manually by a thread, and not handled by the usual chained interrupts mechanism. However, I had trouble with this code on 2.6.33 generating spurious i2c interrupts, which lead me to the following patch: http://git.xenomai.org/?p=ipipe-gch.git;a=commitdiff;h=cdc72520c88b329fa785b0e1f45392cdfff10ec6;hp=e52fee515be7c5b914c201c19604cd700afbc44f which I backported to 2.6.31 without testing it. Could you try and revert it? > > The easiest way to test the twl4030 interrupt handling may be to use the > SD Card for a removable file system (not root). If the file system > automounts when the SD Card is plugged in, that would indicate that the > twl4030 interrupts are being handled correctly. From the available > documentation, the micro-SD card slot on the IGEPv2 should be able to be > used for this testing. I tested reads and writes on the sd card on IGEPv2, it works, generating interrupts. > > My current dilemma is to figure out how to move the pieces of Angstrom > that I want from the 2.6.32 kernel system to the 2.6.33 kernel ahead of > the Angstrom train. :-( We probably can get 2.6.31 to work, we just have to figure out what is wrong. > > Many thanks for you help Gilles. > > Now that I can see Xenomai running, is there any documentation that > describes useful things I can poke to obtain Xenomai state, status and > statistics? (for example the meanings of the data in the /proc/Xemomai > directory) We have this for /proc/xenomai/sched: http://www.xenomai.org/index.php/Proc/xenomai/sched You also have /proc/xenomai/stat, but I do not think we have a detailed page for it. > > Regards, > Bob Feretich > > On 7/20/2010 2:24 PM, Gilles Chanteperdrix wrote: >> Bob Feretich wrote: >>> I have downloaded the 2.6.33 omap kernel and I 'm starting to work >>> with it. I'll write again when I have a clean boot of the vanilla kernel >>> and tried to boot again with the Adeos patch. >>> >>> I think that I figured out how to tell OpenEmbedded to build it. >>> >>> When you display /proc/interrupts on the IGEPv2, do you see interrupts >>> occuring at IRQs greater or equal to IRQ 384? >>> Do you see the same number reflected in IRQ 7? >> I see this: >> CPU0 >> 7: 104068 INTC TWL4030-PIH >> 12: 4 INTC DMA >> 37: 1408 INTC gp timer >> 56: 313486 INTC i2c_omap >> 61: 0 INTC i2c_omap >> 74: 42 INTC serial >> 77: 93 INTC ehci_hcd:usb2 >> 83: 66 INTC mmc0 >> 86: 12 INTC mmc1 >> 92: 1 INTC musb_hdrc >> 336: 809 GPIO eth0 >> 378: 0 twl4030 twl4030_usb >> 384: 0 twl4030 mmc0 >> >> I believe the interrupts tagged "twl4030" are chained interrupts. Having >> looked at the code, these interrupts are not chained the usual way >> because they require i2c communication, which in turn requires a context >> allowed to sleep, so they are dispatched by a kernel thread. >> >> > -- Gilles. _______________________________________________ Xenomai-help mailing list [email protected] https://mail.gna.org/listinfo/xenomai-help
