Commit 08076575 authored by Robert Sprowson's avatar Robert Sprowson Committed by ROOL

Make a substitute for MPHI

The MPHI is (ab)used by DWCDriver as a means to do a FIQ downgrade to IRQ, but Pi 4 has no MPHI, so instead we substitute the GIC (as the GICD_ISPENDRn can be used to cause an IRQ from software).
parent b33e2c7c
...@@ -63,7 +63,11 @@ HAL_USBControllerInfo ...@@ -63,7 +63,11 @@ HAL_USBControllerInfo
STR a4, [a2, #HALUSBControllerInfo_DevNo] STR a4, [a2, #HALUSBControllerInfo_DevNo]
LDR a4, FB_CacheMode LDR a4, FB_CacheMode
STR a4, [a2, #HALUSBControllerInfo_DMAOffset] STR a4, [a2, #HALUSBControllerInfo_DMAOffset]
ADD a4, ip, #MPHI_Base CPUDetect a3
; Raspberry Pi 4 / BCM2838 has no MPHI to do FIQ downgrade, but
; does have a GIC which can fulfil the same requirement
LDRHI a4, GICD_Base_Address
ADDLS a4, ip, #MPHI_Base
STR a4, [a2, #HALUSBControllerInfo_HW_MPHI] STR a4, [a2, #HALUSBControllerInfo_HW_MPHI]
MOV a4, #iDev_GPU_HostPort MOV a4, #iDev_GPU_HostPort
STR a4, [a2, #HALUSBControllerInfo_DevNo_MPHI] STR a4, [a2, #HALUSBControllerInfo_DevNo_MPHI]
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment