head -r317015 (and before) vs. Pine64+ 2GB (an aarch64) and spurious interrupts: [the A64 IRQ numbers involved other than 1023]
Mark Millard
markmi at dsl-only.net
Tue Apr 25 07:25:32 UTC 2017
On 2017-Apr-24, at 10:03 PM, Mark Millard <markmi at dsl-only.net> wrote:
> I found some basic reference material for the
> "last irq" numbers for the A64 that is in the
> Pine64+ 2GB (and 1GB). . .
>
> IRQ 27: PPI 11 interrupt, vector 0x006C
> (I've no clue about this one beyond it being a
> "Private Peripheral Interrupt" example, somehow
> specific to each core separately.)
Looks to be a timer, not that I can tell
much about it:
timer {
compatible = "arm,armv8-timer";
interrupts = <GIC_PPI 13
(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
<GIC_PPI 14
(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
<GIC_PPI 11
(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
<GIC_PPI 10
(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
};
But looking around I've seen references to needing IRQ_TYPE_NONE
if the register is read-only, avoiding writes to read-only
registers, --with such timers as examples (not necessarily
A64 specific material though).
> The rest of the IRQs are "Shared Peripheral
> Interrupt"s. . .
>
> IRQ 92: SD/MMC Host Controller 0 interrupt, vector 0x0170
>
> IRQ 106: USB-EHCI0 interrupt, vector 0x01A8
>
>
> There were some:
>
> IRQ 114: EMAC interrupt, vector 0x01C8
> IRQ 32: UART 0 interrupt, vector 0x0080
>
> And the first "last irq:" for each boot was
> one of:
>
> IRQ 107: USB-OHCIO interrupt, vector 0x0A1C
> IRQ 64: External Non-Mask Interrupt, vector 0x0100
>
> Neither 107 or 64 occurred again after the first
> message for a boot. 64 showed up when no USB device
> was plugged in; 107 showed when one was left plugged
> in (plugged in before powering on the Pine64+ 2GB).
>
> 1023 for the current irq number is special
> and not specific to the A64.
>
>
> So far I can not tell if the kernel mishandles the
> A64 in some way that leads to 1023's vs. if this
> is just what an A64 does for some odd reason, even
> with fully-correct software.
===
Mark Millard
markmi at dsl-only.net
More information about the freebsd-arm
mailing list