[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH v3 0/2] Fix ARM Generic Timer interrupt parsing
From: Andrei Cherechesu <andrei.cherechesu@xxxxxxx> This 2-patch series fixes the parsing of the ARM Generic Timer interrupts from the device tree. If the generic timer interrupts order in the DT was different than the expected order in Xen code, these interrupts would no longer be correctly parsed and registered by Xen, and would result in boot failure. This method with using "interrupt-names" for the generic timer interrupts instead of having them hardcoded in the DTB in a specific order is the newer approach already implemented in Linux. Xen did not have the necessary code for this approach, and it has been implemented by the means of this patch series. Functionality should remain the same if "interrupt-names" is not present in the Generic Timer DTB node of the platform, but the interrupts should then still be present in the expected "sec-phys", "phys", "virt", "hyp-phys", "hyp-virt" order. If "interrupt-names" is present, now it is also correctly handled. Changes v2->v3: - Fixed 2nd commit message to mention that treating 0 as a valid return for platform_get_irq would lead to a BUG() when trying to reserve vIRQ being SGI instead of "during vgic_reserve_virq()". - Moved timer_irq_names[] in the init_dt_xen_time() function as it's only used there, and marked it as __initconst and also as const ptr. Changes v1->v2: - Rebased on latest staging as of 2023-03-09 - Fixed coding style of comment added in 2nd commit - Added to 2nd commit message explanation as to why 0 should be treated as an error case for platform_get_irq Andrei Cherechesu (2): arch/arm: irq: Add platform_get_irq_byname() implementation arch/arm: time: Add support for parsing interrupts by names xen/arch/arm/include/asm/irq.h | 2 ++ xen/arch/arm/include/asm/time.h | 3 ++- xen/arch/arm/irq.c | 14 +++++++++++ xen/arch/arm/time.c | 26 +++++++++++++++++--- xen/drivers/passthrough/arm/smmu-v3.c | 35 +++++---------------------- 5 files changed, 46 insertions(+), 34 deletions(-) -- 2.35.1
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |