CVSROOT: /cvs Module name: src Changes by: kette...@cvs.openbsd.org 2018/08/15 15:46:29
Modified files: sys/arch/arm64/dev: agintc.c Log message: Turns out the integration of the GIC-500 on the Rockchip RK3399 is busted. It treats all access to the memory mapped registers as "secure" even if we're running in non-secure mode. As a result, during bringup of OpenBSD on the RK3399, I got confused and tweaked the interrupt priorities in a way that is wrong (but worked on the RK3399. Fix those priorities to match what they should be according to the documentation (and works on other hardware that includes a GICv3) and add code that detects the broken RK3399 GIC and adjusts the priorities accordingly. Also remove (broken) code that tries to mess around with group 0 interrupts and fix setting bits in the GICD_CTLR register on the broken RK3399 GIC.