Adding support for BeagleBoard.
ArmPkg - Supoprt for ARM specific things that can change as the architecture changes. Plus semihosting JTAG drivers. EmbeddedPkg - Generic support for an embeddded platform. Including a light weight command line shell. BeagleBoardPkg - Platform specifics for BeagleBoard. SD Card works, but USB has issues. Looks like a bug in the open source USB stack (Our internal stack works fine). git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9518 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
67
BeagleBoardPkg/Sec/Arm/Macro.inc
Executable file
67
BeagleBoardPkg/Sec/Arm/Macro.inc
Executable file
@@ -0,0 +1,67 @@
|
||||
//%HEADER%
|
||||
MACRO
|
||||
MmioWrite32Macro $Address, $Data
|
||||
ldr r1, = ($Address)
|
||||
ldr r0, = ($Data)
|
||||
str r0, [r1]
|
||||
MEND
|
||||
|
||||
MACRO
|
||||
MmioOr32Macro $Address, $OrData
|
||||
ldr r1, =($Address)
|
||||
ldr r2, =($OrData)
|
||||
ldr r0, [r1]
|
||||
orr r0, r0, r2
|
||||
str r0, [r1]
|
||||
MEND
|
||||
|
||||
MACRO
|
||||
MmioAnd32Macro $Address, $AndData
|
||||
ldr r1, =($Address)
|
||||
ldr r2, =($AndData)
|
||||
ldr r0, [r1]
|
||||
and r0, r0, r2
|
||||
str r0, [r1]
|
||||
MEND
|
||||
|
||||
MACRO
|
||||
MmioAndThenOr32Macro $Address, $AndData, $OrData
|
||||
ldr r1, =($Address)
|
||||
ldr r0, [r1]
|
||||
ldr r2, =($AndData)
|
||||
and r0, r0, r2
|
||||
ldr r2, =($OrData)
|
||||
orr r0, r0, r2
|
||||
str r0, [r1]
|
||||
MEND
|
||||
|
||||
MACRO
|
||||
MmioWriteFromReg32Macro $Address, $Reg
|
||||
ldr r1, =($Address)
|
||||
str $Reg, [r1]
|
||||
MEND
|
||||
|
||||
MACRO
|
||||
MmioRead32Macro $Address
|
||||
ldr r1, =($Address)
|
||||
ldr r0, [r1]
|
||||
MEND
|
||||
|
||||
MACRO
|
||||
MmioReadToReg32Macro $Address, $Reg
|
||||
ldr r1, =($Address)
|
||||
ldr $Reg, [r1]
|
||||
MEND
|
||||
|
||||
MACRO
|
||||
LoadConstantMacro $Data
|
||||
ldr r0, =($Data)
|
||||
MEND
|
||||
|
||||
MACRO
|
||||
LoadConstantToRegMacro $Data, $Reg
|
||||
ldr $Reg, =($Data)
|
||||
MEND
|
||||
|
||||
END
|
||||
|
Reference in New Issue
Block a user