Difference between revisions of "Unit BCM2837"

From Ultibo.org
Jump to: navigation, search
Line 4,805: Line 4,805:
 
----
 
----
  
''To be documented''
+
 
 +
'''BCM2837 interrupt controller registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837InterruptRegisters = ^TBCM2837InterruptRegisters;</code>
 +
 
 +
<code>TBCM2837InterruptRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 Interrupt Controller registers (See 7.5)
 +
|-
 +
| <code>IRQ_basic_pending:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>IRQ_pending_1:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>IRQ_pending_2:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FIQ_control:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Enable_IRQs_1:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Enable_IRQs_2:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Enable_Basic_IRQs:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Disable_IRQs_1:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Disable_IRQs_2:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Disable_Basic_IRQs:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 system timer registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837SystemTimerRegisters = ^TBCM2837SystemTimerRegisters;</code>
 +
 
 +
<code>TBCM2837SystemTimerRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 System Timer registers (See 12.1)
 +
|-
 +
| <code>CS:LongWord;</code>
 +
| System Timer Control/Status
 +
|-
 +
| <code>CLO:LongWord;</code>
 +
| System Timer Counter Lower 32 bits
 +
|-
 +
| <code>CHI:LongWord;</code>
 +
| System Timer Counter Higher 32 bits
 +
|-
 +
| <code>C0:LongWord;</code>
 +
| System Timer Compare 0. Already used by the VideoCore GPU (Do not use)
 +
|-
 +
| <code>C1:LongWord;</code>
 +
| System Timer Compare 1
 +
|-
 +
| <code>C2:LongWord;</code>
 +
| System Timer Compare 2. Already used by the VideoCore GPU (Do not use)
 +
|-
 +
| <code>C3:LongWord;</code>
 +
| System Timer Compare 3
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''BCM2837 DMA channel registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837DMARegisters = ^TBCM2837DMARegisters;</code>
 +
 
 +
<code>TBCM2837DMARegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 DMA Channel registers (See 4.2.1.2)
 +
|-
 +
| <code>CS:LongWord;</code>
 +
| DMA Channel Control and Status
 +
|-
 +
| <code>CONBLK_AD:LongWord;</code>
 +
| DMA Channel Control Block Address
 +
|-
 +
| <code>TI:LongWord;</code>
 +
| DMA Channel CB Word 0 (Transfer Information)
 +
|-
 +
| <code>SOURCE_AD:LongWord;</code>
 +
| DMA Channel CB Word 1 (Source Address)
 +
|-
 +
| <code>DEST_AD:LongWord;</code>
 +
| DMA Channel CB Word 2 (Destination Address)
 +
|-
 +
| <code>TXFR_LEN:LongWord;</code>
 +
| DMA Channel CB Word 3 (Transfer Length)
 +
|-
 +
| <code>STRIDE:LongWord;</code>
 +
| DMA Channel CB Word 4 (2D Stride)
 +
|-
 +
| <code>NEXTCONBK:LongWord;</code>
 +
| DMA Channel CB Word 5 (Next CB Address)
 +
|-
 +
| <code>DEBUG:LongWord;</code>
 +
| DMA Channel Debug
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 DMA control block structure'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837DMAControlBlock = ^TBCM2837DMAControlBlock;</code>
 +
 
 +
<code>TBCM2837DMAControlBlock = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of BCM2837 DMA Control Block structure (See 4.2.1.1) Must be 32byte (256bit) aligned
 +
|-
 +
| <code>TransferInformation:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>SourceAddress:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DestinationAddress:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TransferLength:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ModeStide:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>NextControlBlockAddress:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved1:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved2:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 BSC (I2C) registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837BSCRegisters = ^TBCM2837BSCRegisters;</code>
 +
 
 +
<code>TBCM2837BSCRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 BSC (I2C) registers (See 3.2)
 +
|-
 +
| <code>C:LongWord;</code>
 +
| Control
 +
|-
 +
| <code>S:LongWord;</code>
 +
| Status
 +
|-
 +
| <code>DLEN:LongWord;</code>
 +
| Data Length
 +
|-
 +
| <code>A:LongWord;</code>
 +
| Slave Address
 +
|-
 +
| <code>FIFO:LongWord;</code>
 +
| Data FIFO
 +
|-
 +
| <code>CDIV:LongWord;</code>
 +
| Clock Divider
 +
|-
 +
| <code>DEL:LongWord;</code>
 +
| Data Delay
 +
|-
 +
|}
 +
</div></div>
 +
 +
'''BCM2837 SPI0 registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837SPI0Registers = ^TBCM2837SPI0Registers;</code>
 +
 
 +
<code>TBCM2837SPI0Registers = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 SPI0 registers (See 10.5)
 +
|-
 +
| <code>CS:LongWord;</code>
 +
| SPI Master Control and Status
 +
|-
 +
| <code>FIFO:LongWord;</code>
 +
| SPI Master TX and RX FIFOs
 +
|-
 +
| <code>CLK:LongWord;</code>
 +
| SPI Master Clock Divider
 +
|-
 +
| <code>DLEN:LongWord;</code>
 +
| SPI Master Data Length
 +
|-
 +
| <code>LTOH:LongWord;</code>
 +
| SPI LOSSI mode TOH
 +
|-
 +
| <code>DC:LongWord;</code>
 +
| SPI DMA DREQ Controls
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 I2C / SPI slave registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837I2CSPIRegisters = ^TBCM2837I2CSPIRegisters;</code>
 +
 
 +
<code>TBCM2837I2CSPIRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 I2C / SPI Slave registers (See 11.2)
 +
|-
 +
| <code>DR:LongWord;</code>
 +
| Data Register
 +
|-
 +
| <code>RSR:LongWord;</code>
 +
| Operation status register and error clear register
 +
|-
 +
| <code>SLV:LongWord;</code>
 +
| I2C SPI Address Register holds the I2C slave address value
 +
|-
 +
| <code>CR:LongWord;</code>
 +
| Control register is used to configure the I2C or SPI operation
 +
|-
 +
| <code>FR:LongWord;</code>
 +
| Flag register
 +
|-
 +
| <code>IFLS:LongWord;</code>
 +
| Interrupt fifo level select register
 +
|-
 +
| <code>IMSC:LongWord;</code>
 +
| Interupt Mask Set Clear Register
 +
|-
 +
| <code>RIS:LongWord;</code>
 +
| Raw Interupt Status Register
 +
|-
 +
| <code>MIS:LongWord;</code>
 +
| Masked Interupt Status Register
 +
|-
 +
| <code>ICR:LongWord;</code>
 +
| Interupt Clear Register
 +
|-
 +
| <code>DMACR:LongWord;</code>
 +
| DMA Control Register
 +
|-
 +
| <code>TDR:LongWord;</code>
 +
| FIFO Test Data Register
 +
|-
 +
| <code>GPUSTAT:LongWord;</code>
 +
| GPU Status Register
 +
|-
 +
| <code>HCTRL:LongWord;</code>
 +
| Host Control Register
 +
|-
 +
| <code>DEBUG1:LongWord;</code>
 +
| I2C Debug Register
 +
|-
 +
| <code>DEBUG2:LongWord;</code>
 +
| SPI Debug Register
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 AUX (UART1, SPI1 and SPI2) registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837AUXRegisters = ^TBCM2837AUXRegisters;</code>
 +
 
 +
<code>TBCM2837AUXRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 AUX (UART1, SPI1 and SPI2) registers (See 2.1)
 +
|-
 +
| <code>AUX_IRQ:LongWord;</code>
 +
| Auxiliary Interrupt status
 +
|-
 +
| <code>AUX_ENABLE:LongWord;</code>
 +
| Auxiliary enables
 +
|-
 +
| <code>Reserved01:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved02:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved03:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved04:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved05:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved06:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved07:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved08:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved09:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved0A:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved0B:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved0C:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved0D:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved0E:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>AUX_MU_IO:LongWord;</code>
 +
| Mini Uart I/O Data
 +
|-
 +
| <code>AUX_MU_IER:LongWord;</code>
 +
| Mini Uart Interrupt Enable
 +
|-
 +
| <code>AUX_MU_IIR:LongWord;</code>
 +
| Mini Uart Interrupt Identify
 +
|-
 +
| <code>AUX_MU_LCR:LongWord;</code>
 +
| Mini Uart Line Control
 +
|-
 +
| <code>AUX_MU_MCR:LongWord;</code>
 +
| Mini Uart Modem Control
 +
|-
 +
| <code>AUX_MU_LSR:LongWord;</code>
 +
| Mini Uart Line Status
 +
|-
 +
| <code>AUX_MU_MSR:LongWord;</code>
 +
| Mini Uart Modem Status
 +
|-
 +
| <code>AUX_MU_SCRATCH:LongWord;</code>
 +
| Mini Uart Scratch
 +
|-
 +
| <code>AUX_MU_CNTL:LongWord;</code>
 +
| Mini Uart Extra Control
 +
|-
 +
| <code>AUX_MU_STAT:LongWord;</code>
 +
| Mini Uart Extra Status
 +
|-
 +
| <code>AUX_MU_BAUD:LongWord;</code>
 +
| Mini Uart Baudrate
 +
|-
 +
| <code>Reserved11:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved12:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved13:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved14:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved15:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>AUX_SPI1_CNTL0:LongWord;</code>
 +
| SPI 1 Control register 0
 +
|-
 +
| <code>AUX_SPI1_CNTL1:LongWord;</code>
 +
| SPI 1 Control register 1
 +
|-
 +
| <code>AUX_SPI1_STAT:LongWord;</code>
 +
| SPI 1 Status
 +
|-
 +
| <code>Reserved21:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>AUX_SPI1_IO:LongWord;</code>
 +
| SPI 1 Data
 +
|-
 +
| <code>AUX_SPI1_PEEK:LongWord;</code>
 +
| SPI 1 Peek
 +
|-
 +
| <code>Reserved31:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved32:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved33:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved34:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved35:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved36:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved37:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved38:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved39:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved3A:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>AUX_SPI2_CNTL0:LongWord;</code>
 +
| SPI 2 Control register 0
 +
|-
 +
| <code>AUX_SPI2_CNTL1:LongWord;</code>
 +
| SPI 2 Control register 1
 +
|-
 +
| <code>AUX_SPI2_STAT:LongWord;</code>
 +
| SPI 2 Status
 +
|-
 +
| <code>Reserved40:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>AUX_SPI2_IO:LongWord;</code>
 +
| SPI 2 Data
 +
|-
 +
| <code>AUX_SPI2_PEEK:LongWord;</code>
 +
| SPI 2 Peek
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 PCM / I2S registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837PCMRegisters = ^TBCM2837PCMRegisters;</code>
 +
 
 +
<code>TBCM2837PCMRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 PCM / I2S registers (See 8.8)
 +
|-
 +
| <code>CS_A:LongWord;</code>
 +
| PCM Control and Status
 +
|-
 +
| <code>FIFO_A:LongWord;</code>
 +
| PCM FIFO Data
 +
|-
 +
| <code>MODE_A:LongWord;</code>
 +
| PCM Mode
 +
|-
 +
| <code>RXC_A:LongWord;</code>
 +
| PCM Receive Configuration
 +
|-
 +
| <code>TXC_A:LongWord;</code>
 +
| PCM Transmit Configuration
 +
|-
 +
| <code>DREQ_A:LongWord;</code>
 +
| PCM DMA Request Level
 +
|-
 +
| <code>INTEN_A:LongWord;</code>
 +
| PCM Interrupt Enables
 +
|-
 +
| <code>INTSTC_A:LongWord;</code>
 +
| PCM Interrupt Status & Clear
 +
|-
 +
| <code>GRAY:LongWord;</code>
 +
| PCM Gray Mode Control
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 pulse width modulator (PWM) registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837PWMRegisters = ^TBCM2837PWMRegisters;</code>
 +
 
 +
<code>TBCM2837PWMRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 Pulse Width Modulator (PWM) registers (See 9.6)
 +
|-
 +
| <code>CTL:LongWord;</code>
 +
| PWM Control
 +
|-
 +
| <code>STA:LongWord;</code>
 +
| PWM Status
 +
|-
 +
| <code>DMAC:LongWord;</code>
 +
| PWM DMA Configuration
 +
|-
 +
| <code>Reserved1:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RNG1:LongWord;</code>
 +
| PWM Channel 1 Range
 +
|-
 +
| <code>DAT1:LongWord;</code>
 +
| PWM Channel 1 Data
 +
|-
 +
| <code>FIF1:LongWord;</code>
 +
| PWM FIFO Input
 +
|-
 +
| <code>Reserved2:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RNG2:LongWord;</code>
 +
| PWM Channel 2 Range
 +
|-
 +
| <code>DAT2:LongWord;</code>
 +
| PWM Channel 2 Data
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 PL011 UART registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837PL011Registers = ^TBCM2837PL011Registers;</code>
 +
 
 +
<code>TBCM2837PL011Registers = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 PL011 UART registers (See 13.4)
 +
|-
 +
| <code>DR:LongWord;</code>
 +
| Data Register
 +
|-
 +
| <code>RSRECR:LongWord;</code>
 +
| Receive Status Register / Error Clear Register
 +
|-
 +
| <code>Reserved01:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved02:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved03:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved04:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FR:LongWord;</code>
 +
| Flag register
 +
|-
 +
| <code>Reserved05:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ILPR:LongWord;</code>
 +
| Not in use
 +
|-
 +
| <code>IBRD:LongWord;</code>
 +
| Integer Baud rate divisor
 +
|-
 +
| <code>FBRD:LongWord;</code>
 +
| Fractional Baud rate divisor
 +
|-
 +
| <code>LCRH:LongWord;</code>
 +
| Line Control register
 +
|-
 +
| <code>CR:LongWord;</code>
 +
| Control register
 +
|-
 +
| <code>IFLS:LongWord;</code>
 +
| Interupt FIFO Level Select Register
 +
|-
 +
| <code>IMSC:LongWord;</code>
 +
| Interupt Mask Set Clear Register
 +
|-
 +
| <code>RIS:LongWord;</code>
 +
| Raw Interupt Status Register
 +
|-
 +
| <code>MIS:LongWord;</code>
 +
| Masked Interupt Status Register
 +
|-
 +
| <code>ICR:LongWord;</code>
 +
| Interupt Clear Register
 +
|-
 +
| <code>DMACR:LongWord;</code>
 +
| DMA Control Register
 +
|-
 +
| <code>Reserved11:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved12:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved13:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved14:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved15:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved16:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved17:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved18:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved19:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved1A:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved1B:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved1C:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved1D:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ITCR:LongWord;</code>
 +
| Test Control Register
 +
|-
 +
| <code>ITIP:LongWord;</code>
 +
| Integration Test Input Register
 +
|-
 +
| <code>ITOP:LongWord;</code>
 +
| Integration Test Output Register
 +
|-
 +
| <code>TDR:LongWord;</code>
 +
| Test Data Register
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 ARM timer registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837ARMTimerRegisters = ^TBCM2837ARMTimerRegisters;</code>
 +
 
 +
<code>TBCM2837ARMTimerRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 ARM Timer registers (See 14.2)
 +
|-
 +
| <code>Load:LongWord;</code>
 +
| Timer Load register
 +
|-
 +
| <code>Value:LongWord;</code>
 +
| Timer Value register
 +
|-
 +
| <code>Control:LongWord;</code>
 +
| Timer control register
 +
|-
 +
| <code>IRQClear:LongWord;</code>
 +
| Timer IRQ clear register
 +
|-
 +
| <code>RawIRQ:LongWord;</code>
 +
| Timer Raw IRQ register
 +
|-
 +
| <code>MaskedIRQ:LongWord;</code>
 +
| Timer Masked IRQ register
 +
|-
 +
| <code>Reload:LongWord;</code>
 +
| Timer Reload register
 +
|-
 +
| <code>Predivider:LongWord;</code>
 +
| The timer pre-divider register
 +
|-
 +
| <code>Counter:LongWord;</code>
 +
| Free running counter
 +
|-
 +
|}
 +
</div></div>
 +
 +
'''BCM2837 power management watchdog registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837PMWatchdogRegisters = ^TBCM2837PMWatchdogRegisters;</code>
 +
 
 +
<code>TBCM2837PMWatchdogRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 Power Management Watchdog registers
 +
|-
 +
| <code>Reserved1:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Reserved2:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved3:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved4:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved5:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved6:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved7:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RSTC:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RSTS:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>WDOG:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 random number generator registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837RNGRegisters = ^TBCM2837RNGRegisters;</code>
 +
 
 +
<code>TBCM2837RNGRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 Random Number Generator registers
 +
|-
 +
| <code>Control:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Status:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Data:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FFThreshold:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 GPIO registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837GPIORegisters = ^TBCM2837GPIORegisters;</code>
 +
 
 +
<code>TBCM2837GPIORegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 GPIO registers (See 6.1)
 +
|-
 +
| <code>GPFSEL0:LongWord;</code>
 +
| GPIO Function Select 0
 +
|-
 +
| <code>GPFSEL1:LongWord;</code>
 +
| GPIO Function Select 1
 +
|-
 +
| <code>GPFSEL2:LongWord;</code>
 +
| GPIO Function Select 2
 +
|-
 +
| <code>GPFSEL3:LongWord;</code>
 +
| GPIO Function Select 3
 +
|-
 +
| <code>GPFSEL4:LongWord;</code>
 +
| GPIO Function Select 4
 +
|-
 +
| <code>GPFSEL5:LongWord;</code>
 +
| GPIO Function Select 5
 +
|-
 +
| <code>Reserved1:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>GPSET0:LongWord;</code>
 +
| GPIO Pin Output Set 0
 +
|-
 +
| <code>GPSET1:LongWord;</code>
 +
| GPIO Pin Output Set 1
 +
|-
 +
| <code>Reserved2:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>GPCLR0:LongWord;</code>
 +
| GPIO Pin Output Clear 0
 +
|-
 +
| <code>GPCLR1:LongWord;</code>
 +
| GPIO Pin Output Clear 1
 +
|-
 +
| <code>Reserved3:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>GPLEV0:LongWord;</code>
 +
| GPIO Pin Level 0
 +
|-
 +
| <code>GPLEV1:LongWord;</code>
 +
| GPIO Pin Level 1
 +
|-
 +
| <code>Reserved4:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>GPEDS0:LongWord;</code>
 +
| GPIO Pin Event Detect Status 0
 +
|-
 +
| <code>GPEDS1:LongWord;</code>
 +
| GPIO Pin Event Detect Status 1
 +
|-
 +
| <code>Reserved5:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>GPREN0:LongWord;</code>
 +
| GPIO Pin Rising Edge Detect Enable 0
 +
|-
 +
| <code>GPREN1:LongWord;</code>
 +
| GPIO Pin Rising Edge Detect Enable 1
 +
|-
 +
| <code>Reserved6:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>GPFEN0:LongWord;</code>
 +
| GPIO Pin Falling Edge Detect Enable 0
 +
|-
 +
| <code>GPFEN1:LongWord;</code>
 +
| GPIO Pin Falling Edge Detect Enable 1
 +
|-
 +
| <code>Reserved7:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>GPHEN0:LongWord;</code>
 +
| GPIO Pin High Detect Enable 0
 +
|-
 +
| <code>GPHEN1:LongWord;</code>
 +
| GPIO Pin High Detect Enable 1
 +
|-
 +
| <code>Reserved8:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>GPLEN0:LongWord;</code>
 +
| GPIO Pin Low Detect Enable 0
 +
|-
 +
| <code>GPLEN1:LongWord;</code>
 +
| GPIO Pin Low Detect Enable 1
 +
|-
 +
| <code>Reserved9:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>GPAREN0:LongWord;</code>
 +
| GPIO Pin Async. Rising Edge Detect 0
 +
|-
 +
| <code>GPAREN1:LongWord;</code>
 +
| GPIO Pin Async. Rising Edge Detect 1
 +
|-
 +
| <code>Reserved10:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>GPAFEN0:LongWord;</code>
 +
| GPIO Pin Async. Falling Edge Detect 0
 +
|-
 +
| <code>GPAFEN1:LongWord;</code>
 +
| GPIO Pin Async. Falling Edge Detect 1
 +
|-
 +
| <code>Reserved11:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>GPPUD:LongWord;</code>
 +
| GPIO Pin Pull-up/down Enable
 +
|-
 +
| <code>GPPUDCLK0:LongWord;</code>
 +
| GPIO Pin Pull-up/down Enable Clock 0
 +
|-
 +
| <code>GPPUDCLK1:LongWord;</code>
 +
| GPIO Pin Pull-up/down Enable Clock 1
 +
|-
 +
| <code>Reserved12:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Test:LongWord;</code>
 +
| Test
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox0 registers'''
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837Mailbox0Registers = ^TBCM2837Mailbox0Registers;</code>
 +
 
 +
<code>TBCM2837Mailbox0Registers = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 Mailbox0 registers (See https://github.com/raspberrypi/firmware/wiki/Mailboxes)
 +
|-
 +
| <code>Read:LongWord;</code>
 +
| Offset 0x00 (The read register for mailbox 0)
 +
|-
 +
| <code>Reserved1:LongWord;</code>
 +
| Offset 0x04
 +
|-
 +
| <code>Reserved2:LongWord;</code>
 +
| Offset 0x08
 +
|-
 +
| <code>Reserved3:LongWord;</code>
 +
| Offset 0x0C
 +
|-
 +
| <code>Peek:LongWord;</code>
 +
| Offset 0x10 (Read from the mailbox without removing data from it)
 +
|-
 +
| <code>Sender:LongWord;</code>
 +
| Offset 0x14 (Sender ID (bottom 2 bits only))
 +
|-
 +
| <code>Status:LongWord;</code>
 +
| Offset 0x18 (The status register for mailbox 0)
 +
|-
 +
| <code>Config:LongWord;</code>
 +
| Offset 0x1C (The configuration register for mailbox 0)
 +
|-
 +
| <code>Write:LongWord;</code>
 +
| Offset 0x20 (The write register for mailbox 0 (This is actually the read register for Mailbox 1))
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox framebuffer request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxFramebuffer = ^TBCM2837MailboxFramebuffer;</code>
 +
 
 +
<code>TBCM2837MailboxFramebuffer = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 Mailbox Framebuffer request (This structure must be 16 byte aligned when passed to the GPU)
 +
|-
 +
| <code>PhysicalWidth:LongWord;</code>
 +
| Requested width of Physical Framebuffer
 +
|-
 +
| <code>PhysicalHeight:LongWord;</code>
 +
| Requested height of Physical Framebuffer
 +
|-
 +
| <code>VirtualWidth:LongWord;</code>
 +
| Requested width of Virtual Display
 +
|-
 +
| <code>VirtualHeight:LongWord;</code>
 +
| Requested height of Virtual Display
 +
|-
 +
| <code>Pitch:LongWord;</code>
 +
| Zero on request, Number of Bytes per Row in response
 +
|-
 +
| <code>Depth:LongWord;</code>
 +
| Requested Colour Depth in Bits per Pixel
 +
|-
 +
| <code>OffsetX:LongWord;</code>
 +
| Requested X offset of Virtual Framebuffer
 +
|-
 +
| <code>OffsetY:LongWord;</code>
 +
| Requested Y offset of Virtual Framebuffer
 +
|-
 +
| <code>Address:LongWord;</code>
 +
| Framebuffer address (Zero on request, Failure if zero in response)
 +
|-
 +
| <code>Size:LongWord;</code>
 +
| Framebuffer size (Zero on request, Size in bytes in response)
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox header property tags'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxHeader = ^TBCM2837MailboxHeader;</code>
 +
 
 +
<code>TBCM2837MailboxHeader = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Layout of the BCM2837 Mailbox Property tags (These structures must be 16 byte aligned when passed to the GPU)
 +
|-
 +
|colspan="2"|''Header''
 +
|-
 +
| <code>Size:LongWord;</code>
 +
| Total buffer size in bytes (including the header values, the end tag and padding)
 +
|-
 +
| <code>Code:LongWord;</code>
 +
| Request/response code
 +
|-
 +
|}
 +
</div></div>
 +
 +
'''BCM2837 mailbox footer property tags'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxFooter = ^TBCM2837MailboxFooter;</code>
 +
 
 +
<code>TBCM2837MailboxFooter = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Footer''
 +
|-
 +
| <code>Tag:LongWord;</code>
 +
| BCM2837_MBOX_TAG_END
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag headers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagHeader = ^TBCM2837MailboxTagHeader;</code>
 +
 
 +
<code>TBCM2837MailboxTagHeader = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Tag Header''
 +
|-
 +
| <code>Tag:LongWord;</code>
 +
| Tag identifier
 +
|-
 +
| <code>Size:LongWord;</code>
 +
| Value buffer size in bytes
 +
|-
 +
| <code>Length:LongWord;</code>
 +
| 1 bit (MSB) request/response indicator (0=request, 1=response), 31 bits (LSB) value length in bytes
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag no request''' 
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagNoRequest = ^TBCM2837MailboxTagNoRequest;</code>
 +
 
 +
<code>TBCM2837MailboxTagNoRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Tag No Request''
 +
|-
 +
| &nbsp;
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag no response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagNoResponse = ^TBCM2837MailboxTagNoResponse;</code>
 +
 
 +
<code>TBCM2837MailboxTagNoResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Tag No Response''
 +
|-
 +
| &nbsp;
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag firmware revision response''' 
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagFirmwareRevisionResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Firmware Revision''
 +
|-
 +
| <code>Revision:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get firmware revision'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetFirmwareRevision = ^TBCM2837MailboxTagGetFirmwareRevision;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetFirmwareRevision = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagFirmwareRevisionResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag board model response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagBoardModelResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Board Model''
 +
|-
 +
| <code>Model:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get board model'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetBoardModel = ^TBCM2837MailboxTagGetBoardModel;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetBoardModel = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagBoardModelResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get board revision response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagBoardRevisionResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Board Revision''
 +
|-
 +
| <code>Revision:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get board revision'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetBoardRevision = ^TBCM2837MailboxTagGetBoardRevision;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetBoardRevision = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagBoardRevisionResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag MAC address response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagMACAddressResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get MAC Address''
 +
|-
 +
| <code>MAC:array[0..5] of Byte;</code>
 +
| MAC address in network byte order
 +
|-
 +
| <code>Padding:Word;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get MAC address'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetMACAddress = ^TBCM2837MailboxTagGetMACAddress;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetMACAddress = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagMACAddressResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag board serial response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagBoardSerialResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Board Serial''
 +
|-
 +
| <code>Serial:Int64;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get board serial'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetBoardSerial = ^TBCM2837MailboxTagGetBoardSerial;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetBoardSerial = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagBoardSerialResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag ARM memory response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagARMMemoryResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get ARM Memory''
 +
|-
 +
| <code>Address:LongWord;</code>
 +
| Base address in bytes
 +
|-
 +
| <code>Size:LongWord;</code>
 +
| Size in bytes
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get ARM memory'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetARMMemory = ^TBCM2837MailboxTagGetARMMemory;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetARMMemory = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagARMMemoryResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag VC memory response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagVCMemoryResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get VC Memory''
 +
|-
 +
| <code>Address:LongWord;</code>
 +
| Base address in bytes
 +
|-
 +
| <code>Size:LongWord;</code>
 +
| Size in bytes
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get VC memory'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetVCMemory = ^TBCM2837MailboxTagGetVCMemory;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetVCMemory = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagVCMemoryResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag clock response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagClockResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Clocks''
 +
|-
 +
| <code>ParentId:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>ClockId:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag clocks response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagClocksResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Clocks:array[0..255] of TBCM2837MailboxTagClockResponse;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
'''BCM2837 mailbox tag get clocks'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetClocks = ^TBCM2837MailboxTagGetClocks;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetClocks = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagClocksResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get power state request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetPowerStateRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Power State''
 +
|-
 +
| <code>DeviceId:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag power state response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagPowerStateResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>DeviceId:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>State:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get power state'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetPowerState = ^TBCM2837MailboxTagGetPowerState;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetPowerState = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagGetPowerStateRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagPowerStateResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag timimg request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagTimingRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Timing''
 +
|-
 +
| <code>DeviceId:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag timimg response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagTimingResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>DeviceId:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Wait:LongWord;</code>
 +
| Enable wait time in microseconds
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get timing'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetTiming = ^TBCM2837MailboxTagGetTiming;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetTiming = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagTimingRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagTimingResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set power state request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagSetPowerStateRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Power State''
 +
 
 +
|-
 +
| <code>DeviceId:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>State:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set power state'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetPowerState = ^TBCM2837MailboxTagSetPowerState;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetPowerState = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagSetPowerStateRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagPowerStateResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get clock state request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetClockStateRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Clock State''
 +
|-
 +
| <code>ClockId:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag clock state response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagClockStateResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>ClockId:LongWord; </code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>State:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get clock state'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetClockState = ^TBCM2837MailboxTagGetClockState;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetClockState = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagGetClockStateRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagClockStateResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set clock state request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagSetClockStateRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Clock State''
 +
|-
 +
| <code>ClockId:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>State:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set clock rate'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetClockState = ^TBCM2837MailboxTagSetClockState;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetClockState = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagSetClockStateRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagClockStateResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get clock rate request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetClockRateRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Clock Rate''
 +
|-
 +
| <code>ClockId:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag clock rate response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagClockRateResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>ClockId:LongWord; </code>
 +
| &nbsp;
 +
|-
 +
| <code>Rate:LongWord;</code>
 +
| In Hz
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get clock rate'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetClockRate = ^TBCM2837MailboxTagGetClockRate;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetClockRate = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagGetClockRateRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagClockRateResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set clock rate request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagSetClockRateRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Clock Rate''
 +
|-
 +
| <code>ClockId:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Rate:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SkipTurbo:LongWord;</code>
 +
| In Hz
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set clock rate'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetClockRate = ^TBCM2837MailboxTagSetClockRate;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetClockRate = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagSetClockRateRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagClockRateResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get clock max rate request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetClockMaxRateRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Clock Max Rate''
 +
|-
 +
| <code>ClockId:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get clock max rate response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetClockMaxRateResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>ClockId:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Rate:LongWord;</code>
 +
| In Hz
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get clock max rate'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetClockMaxRate = ^TBCM2837MailboxTagGetClockMaxRate;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetClockMaxRate = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagGetClockMaxRateRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagGetClockMaxRateResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get clock min rate'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetClockMinRate = ^TBCM2837MailboxTagGetClockMinRate;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetClockMinRate = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Clock Min Rate''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagGetClockMaxRateRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagGetClockMaxRateResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get turbo request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetTurboRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Turbo''
 +
|-
 +
| <code>Id:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag turbo response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagTurboResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Id:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Level:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get turbo'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetTurbo = ^TBCM2837MailboxTagGetTurbo;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetTurbo = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagGetTurboRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagTurboResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set turbo request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagSetTurboRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Turbo''
 +
|-
 +
| <code>Id:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Level:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set turbo'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetTurbo = ^TBCM2837MailboxTagSetTurbo;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetTurbo = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagSetTurboRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagTurboResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get voltage request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetVoltageRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Voltage''
 +
|-
 +
| <code>VoltageId:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag voltage response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagVoltageResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>VoltageId:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Value:LongWord;</code>
 +
| Offset from 1.2V in units of 0.025V
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get voltage'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetVoltage = ^TBCM2837MailboxTagGetVoltage;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetVoltage = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagGetVoltageRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagVoltageResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set voltage request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagSetVoltageRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Voltage''
 +
|-
 +
| <code>VoltageId:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Value:LongWord;</code>
 +
| Offset from 1.2V in units of 0.025V
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set voltage'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetVoltage = ^TBCM2837MailboxTagSetVoltage;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetVoltage = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagSetVoltageRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagVoltageResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get max voltage'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetMaxVoltage = ^TBCM2837MailboxTagGetMaxVoltage;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetMaxVoltage = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Max Voltage''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagGetVoltageRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagVoltageResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 +
'''BCM2837 mailbox tag get min voltage'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetMinVoltage = ^TBCM2837MailboxTagGetMinVoltage;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetMinVoltage = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Min Voltage''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagGetVoltageRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagVoltageResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag temperature request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagTemperatureRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Temperature''
 +
|-
 +
| <code>TemperatureId:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag temperture response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagTemperatureResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>TemperatureId:LongWord;</code>
 +
| Should be zero
 +
|-
 +
| <code>Temperature:LongWord;</code>
 +
| Return the temperature of the SoC in thousandths of a degree C
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get temperature'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetTemperature = ^TBCM2837MailboxTagGetTemperature;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetTemperature = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagTemperatureRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagTemperatureResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get max temperature'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetMaxTemperature = ^TBCM2837MailboxTagGetMaxTemperature;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetMaxTemperature = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Max Temp''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagTemperatureRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagTemperatureResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag allocate memory request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagAllocateMemoryRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Allocate Memory''
 +
|-
 +
| <code>Size:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Alignment:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Flags:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag allocate memory response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagAllocateMemoryResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Handle:THandle;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag allocate memory'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagAllocateMemory = ^TBCM2837MailboxTagAllocateMemory;</code>
 +
 
 +
<code>TBCM2837MailboxTagAllocateMemory = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagAllocateMemoryRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagAllocateMemoryResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag lock memory request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagLockMemoryRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Lock Memory''
 +
|-
 +
| <code>Handle:THandle;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag lock memory response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagLockMemoryResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Address:LongWord;</code>
 +
| Bus Address
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag lock memory'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagLockMemory = ^TBCM2837MailboxTagLockMemory;</code>
 +
 
 +
<code>TBCM2837MailboxTagLockMemory = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagLockMemoryRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagLockMemoryResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag umlock memory response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagUnlockMemoryResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Unlock Memory''
 +
|-
 +
| <code>Status:LongWord;</code>
 +
| 0 is Success
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag unlock memory'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagUnlockMemory = ^TBCM2837MailboxTagUnlockMemory;</code>
 +
 
 +
<code>TBCM2837MailboxTagUnlockMemory = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagLockMemoryRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagUnlockMemoryResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag release memory'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagReleaseMemory = ^TBCM2837MailboxTagReleaseMemory;</code>
 +
 
 +
<code>TBCM2837MailboxTagReleaseMemory = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Release Memory''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagLockMemoryRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagUnlockMemoryResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag execute code request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagExecuteCodeRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Execute Code''
 +
|-
 +
| <code>Address:Pointer;</code>
 +
| Bus Address
 +
|-
 +
| <code>R0:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>R1:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>R2:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>R3:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>R4:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>R5:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag execute code response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagExecuteCodeResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>R0:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag execute code'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagExecuteCode = ^TBCM2837MailboxTagExecuteCode;</code>
 +
 
 +
<code>TBCM2837MailboxTagExecuteCode = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagExecuteCodeRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagExecuteCodeResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag dispmanx handle request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetDispmanxHandleRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Dispmanx Handle''
 +
|-
 +
| <code>Resource:THandle;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get dispmanx handle response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetDispmanxHandleResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Status:LongWord;</code>
 +
| 0 is Success
 +
|-
 +
| <code>Memory:THandle;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get dispmanx handle'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetDispmanxHandle = ^TBCM2837MailboxTagGetDispmanxHandle;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetDispmanxHandle = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagGetDispmanxHandleRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagGetDispmanxHandleResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get EDID block request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetEDIDBlockRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get EDID Block''
 +
|-
 +
| <code>Block:LongWord;</code>
 +
| Starting from 0
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get EDID block response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetEDIDBlockResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Block:LongWord;</code>
 +
| Starting from 0
 +
|-
 +
| <code>Status:LongWord;</code>
 +
| 0 is Success
 +
|-
 +
| <code>EDID:array[0..127] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get EDID block'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetEDIDBlock = ^TBCM2837MailboxTagGetEDIDBlock;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetEDIDBlock = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagGetEDIDBlockRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagGetEDIDBlockResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag allocate buffer request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagAllocateBufferRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Allocate Buffer''
 +
|-
 +
| <code>Alignment:LongWord;</code>
 +
| Bytes
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag buffer response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagAllocateBufferResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Address:LongWord;</code>
 +
| Base Address in Bytes
 +
|-
 +
| <code>Size:LongWord;</code>
 +
| Size in Bytes
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag allocate buffer'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagAllocateBuffer = ^TBCM2837MailboxTagAllocateBuffer;</code>
 +
 
 +
<code>TBCM2837MailboxTagAllocateBuffer = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagAllocateBufferRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagAllocateBufferResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag release buffer'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagReleaseBuffer = ^TBCM2837MailboxTagReleaseBuffer;</code>
 +
 
 +
<code>TBCM2837MailboxTagReleaseBuffer = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Release Buffer''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagNoResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag blank screen request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagBlankScreenRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Blank Screen''
 +
|-
 +
| <code>State:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag blank screen response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagBlankScreenResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>State:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag blank screen'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagBlankScreen = ^TBCM2837MailboxTagBlankScreen;</code>
 +
 
 +
<code>TBCM2837MailboxTagBlankScreen = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagBlankScreenRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagBlankScreenResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag physical request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagPhysicalRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Physical''
 +
|-
 +
| <code>Width:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Height:Longword;</code>
 +
| Pixels
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag physical response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagPhysicalResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Width:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Height:Longword;</code>
 +
| Pixels
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get physical'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetPhysical = ^TBCM2837MailboxTagGetPhysical;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetPhysical = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagPhysicalResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag test physical'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagTestPhysical = ^TBCM2837MailboxTagTestPhysical;</code>
 +
 
 +
<code>TBCM2837MailboxTagTestPhysical = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Test Physical''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagPhysicalRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagPhysicalResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set physical'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetPhysical = ^TBCM2837MailboxTagSetPhysical;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetPhysical = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Physical''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagPhysicalRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagPhysicalResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag virtual request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagVirtualRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Virtual''
 +
|-
 +
| <code>Width:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Height:Longword;</code>
 +
| Pixels
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag virtual response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagVirtualResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Width:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Height:Longword;</code>
 +
| Pixels
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get virtual'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetVirtual = ^TBCM2837MailboxTagGetVirtual;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetVirtual = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagVirtualResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag test virtual'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagTestVirtual = ^TBCM2837MailboxTagTestVirtual;</code>
 +
 
 +
<code>TBCM2837MailboxTagTestVirtual = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Test Virtual''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagVirtualRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagVirtualResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set virtual'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetVirtual = ^TBCM2837MailboxTagSetVirtual;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetVirtual = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Virtual''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagVirtualRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagVirtualResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag depth request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagDepthRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Depth''
 +
|-
 +
| <code>Depth:LongWord;</code>
 +
| Bits per pixel
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag depth response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagDepthResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Depth:LongWord;</code>
 +
| Bits per pixel
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get depth'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetDepth = ^TBCM2837MailboxTagGetDepth;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetDepth = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagDepthResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag test depth'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagTestDepth = ^TBCM2837MailboxTagTestDepth;</code>
 +
 
 +
<code>TBCM2837MailboxTagTestDepth = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Test Depth''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagDepthRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagDepthResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set depth'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetDepth = ^TBCM2837MailboxTagSetDepth;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetDepth = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Depth''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagDepthRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagDepthResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag pixel order request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagPixelOrderRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Pixel Order''
 +
|-
 +
| <code>Order:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag pixel order response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagPixelOrderResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Order:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get pixel order'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetPixelOrder = ^TBCM2837MailboxTagGetPixelOrder;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetPixelOrder = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagPixelOrderResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag test pixel order'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagTestPixelOrder = ^TBCM2837MailboxTagTestPixelOrder;</code>
 +
 
 +
<code>TBCM2837MailboxTagTestPixelOrder = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Test Pixel Order''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagPixelOrderRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagPixelOrderResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set pixel order'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetPixelOrder = ^TBCM2837MailboxTagSetPixelOrder;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetPixelOrder = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Pixel Order''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagPixelOrderRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagPixelOrderResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag alpha mode request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagAlphaModeRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Alpha Mode''
 +
|-
 +
| <code>Mode:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag alpha mode response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagAlphaModeResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Mode:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get alpha mode'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetAlphaMode = ^TBCM2837MailboxTagGetAlphaMode;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetAlphaMode = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagAlphaModeResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag test alpha mode'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagTestAlphaMode = ^TBCM2837MailboxTagTestAlphaMode;</code>
 +
 
 +
<code>TBCM2837MailboxTagTestAlphaMode = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Test Alpha Mode''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagAlphaModeRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagAlphaModeResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set alpha mode'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetAlphaMode = ^TBCM2837MailboxTagSetAlphaMode;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetAlphaMode = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Alpha Mode''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagAlphaModeRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagAlphaModeResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag pitch response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagPitchResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Pitch''
 +
|-
 +
| <code>Pitch:LongWord;</code>
 +
| Bytes per line
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get pitch'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetPitch = ^TBCM2837MailboxTagGetPitch;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetPitch = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagPitchResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag virtual offset request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagVirtualOffsetRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Virtual Offset''
 +
|-
 +
| <code>X:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Y:LongWord;</code>
 +
| Pixels
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag virtual offset response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagVirtualOffsetResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>X:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Y:LongWord;</code>
 +
| Pixels
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get virtual offset'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetVirtualOffset = ^TBCM2837MailboxTagGetVirtualOffset;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetVirtualOffset = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagVirtualOffsetResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag test virtual offset'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagTestVirtualOffset = ^TBCM2837MailboxTagTestVirtualOffset;</code>
 +
 
 +
<code>TBCM2837MailboxTagTestVirtualOffset = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Test Virtual Offset''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagVirtualOffsetRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagVirtualOffsetResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set virtual offset'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetVirtualOffset = ^TBCM2837MailboxTagSetVirtualOffset;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetVirtualOffset = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Virtual Offset''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagVirtualOffsetRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagVirtualOffsetResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag overscan request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagOverscanRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Overscan''
 +
|-
 +
| <code>Top:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Bottom:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Left:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Right:LongWord;</code>
 +
| Pixels
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag overscan response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagOverscanResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Top:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Bottom:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Left:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Right:LongWord;</code>
 +
| Pixels
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get overscan'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetOverscan = ^TBCM2837MailboxTagGetOverscan;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetOverscan = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagOverscanResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag test overscan'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagTestOverscan = ^TBCM2837MailboxTagTestOverscan;</code>
 +
 
 +
<code>TBCM2837MailboxTagTestOverscan = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Test Overscan''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagOverscanRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagOverscanResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set overscan'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetOverscan = ^TBCM2837MailboxTagSetOverscan;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetOverscan = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Overscan''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagOverscanRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagOverscanResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get palette response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetPaletteResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Palette''
 +
|-
 +
| <code>Values:array[0..255] of LongWord;</code>
 +
| RGBA Palette Values
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get palette'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetPalette = ^TBCM2837MailboxTagGetPalette;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetPalette = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagGetPaletteResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag palette request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagPaletteRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Test Palette''
 +
|-
 +
| <code>Offset:LongWord;</code>
 +
| First palette index to set (0-255)
 +
|-
 +
| <code>Length:LongWord;</code>
 +
| Number of palette entries to set (1-256)
 +
|-
 +
| <code>Values:array[0..255] of LongWord;</code>
 +
| RGBA Palette Values
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag palette response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagPaletteResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Status:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag test palette'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagTestPalette = ^TBCM2837MailboxTagTestPalette;</code>
 +
 
 +
<code>TBCM2837MailboxTagTestPalette = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagPaletteRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagPaletteResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set palette'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetPalette = ^TBCM2837MailboxTagSetPalette;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetPalette = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Palette''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagPaletteRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagPaletteResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get touch response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetTouchResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Touch Buffer''
 +
|-
 +
| <code>Address:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get touch'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetTouch = ^TBCM2837MailboxTagGetTouch;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetTouch = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagGetTouchResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get cirtual GPIO response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagGetVirtualGPIOResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Virtual GPIO Buffer''
 +
|-
 +
| <code>Address:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get virtual GPIO'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetVirtualGPIO = ^TBCM2837MailboxTagGetVirtualGPIO;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetVirtualGPIO = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagGetVirtualGPIOResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag test vsync'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagTestVsync = ^TBCM2837MailboxTagTestVsync;</code>
 +
 
 +
<code>TBCM2837MailboxTagTestVsync = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Test Vsync''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagNoResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set vsync'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetVsync = ^TBCM2837MailboxTagSetVsync;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetVsync = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Vsync''
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagNoResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set backlight request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagSetBacklightRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Backlight''
 +
|-
 +
| <code>Brightness:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set backlight response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagSetBacklightResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Brightness:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set backlight'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetBacklight = ^TBCM2837MailboxTagSetBacklight;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetBacklight = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagSetBacklightRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagSetBacklightResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set cursor info request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagSetCursorInfoRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Cursor Info''
 +
|-
 +
| <code>Width:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Height:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Reserved:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Pixels:Pointer;</code>
 +
| Format is 32bpp (ARGB) (Width and Height should be >= 16 and (Width * Height) <= 64)
 +
|-
 +
| <code>HotspotX:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>HotspotY:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag cursor response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagCursorResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Status:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set cursor info'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetCursorInfo = ^TBCM2837MailboxTagSetCursorInfo;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetCursorInfo = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagSetCursorInfoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagCursorResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set cursor state request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagSetCursorStateRequest = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Set Cursor State''
 +
|-
 +
| <code>Enable:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>X:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Y:LongWord;</code>
 +
| Pixels
 +
|-
 +
| <code>Flags:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag set cursor state'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagSetCursorState = ^TBCM2837MailboxTagSetCursorState;</code>
 +
 
 +
<code>TBCM2837MailboxTagSetCursorState = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagSetCursorStateRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagCursorResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag command line response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagCommandLineResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get Command Line''
 +
|-
 +
| <code>CommandLine:array[0..1023] of Char;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get command line'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetCommandLine = ^TBCM2837MailboxTagGetCommandLine;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetCommandLine = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagCommandLineResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag DMA channels response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBCM2837MailboxTagDMAChannelsResponse = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Get DMA Channels''
 +
|-
 +
| <code>Channels:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag get DMA channels'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagGetDMAChannels = ^TBCM2837MailboxTagGetDMAChannels;</code>
 +
 
 +
<code>TBCM2837MailboxTagGetDMAChannels = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Header:TBCM2837MailboxTagHeader;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Request:TBCM2837MailboxTagNoRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Response:TBCM2837MailboxTagDMAChannelsResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag create buffer'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagCreateBuffer = ^TBCM2837MailboxTagCreateBuffer;</code>
 +
 
 +
<code>TBCM2837MailboxTagCreateBuffer = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: A combination tag to allocate and configure a framebuffer in one request
 +
|-
 +
|colspan="2"|''Create Buffer''
 +
|-
 +
| <code>Physical:TBCM2837MailboxTagSetPhysical;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Vertual:TBCM2837MailboxTagSetVirtual;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Depth:TBCM2837MailboxTagSetDepth;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Order:TBCM2837MailboxTagSetPixelOrder;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Mode:TBCM2837MailboxTagSetAlphaMode;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Offset:TBCM2837MailboxTagSetVirtualOffset;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Overscan:TBCM2837MailboxTagSetOverscan;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Allocate:TBCM2837MailboxTagAllocateBuffer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Pitch:TBCM2837MailboxTagGetPitch;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 mailbox tag query buffer'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837MailboxTagQueryBuffer = ^TBCM2837MailboxTagQueryBuffer;</code>
 +
 
 +
<code>TBCM2837MailboxTagQueryBuffer = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: A combination tag to query all framebuffer properties in one request
 +
|-
 +
|colspan="2"|''Query Buffer''
 +
|-
 +
| <code>Physical:TBCM2837MailboxTagGetPhysical;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Vertual:TBCM2837MailboxTagGetVirtual;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Depth:TBCM2837MailboxTagGetDepth;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Order:TBCM2837MailboxTagGetPixelOrder;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Mode:TBCM2837MailboxTagGetAlphaMode;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Offset:TBCM2837MailboxTagGetVirtualOffset;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Overscan:TBCM2837MailboxTagGetOverscan;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Pitch:TBCM2837MailboxTagGetPitch;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 ARM local mailbox write registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837ARMLocalMailboxWriteRegisters = ^TBCM2837ARMLocalMailboxWriteRegisters;</code>
 +
 
 +
<code>TBCM2837ARMLocalMailboxWriteRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: BCM2837 ARM local structures (See: QA7 Rev3.4.pdf)
 +
|-
 +
| <code>Mailbox0Write:LongWord;</code>
 +
| Mailbox 0 write-set (WO)
 +
|-
 +
| <code>Mailbox1Write:LongWord;</code>
 +
| Mailbox 1 write-set (WO)
 +
|-
 +
| <code>Mailbox2Write:LongWord;</code>
 +
| Mailbox 2 write-set (WO)
 +
|-
 +
| <code>Mailbox3Write:LongWord;</code>
 +
| Mailbox 3 write-set (WO)
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 ARM local mailbox read clear registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837ARMLocalMailboxReadClearRegisters = ^TBCM2837ARMLocalMailboxReadClearRegisters;</code>
 +
 
 +
<code>TBCM2837ARMLocalMailboxReadClearRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Mailbox0ReadClear:LongWord;</code>
 +
| Mailbox 0 read & write-high-to-clear
 +
|-
 +
| <code>Mailbox1ReadClear:LongWord;</code>
 +
| Mailbox 1 read & write-high-to-clear
 +
|-
 +
| <code>Mailbox2ReadClear:LongWord;</code>
 +
| Mailbox 2 read & write-high-to-clear
 +
|-
 +
| <code>Mailbox3ReadClear:LongWord;</code>
 +
| Mailbox 3 read & write-high-to-clear
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 ARM local registers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837ARMLocalRegisters = ^TBCM2837ARMLocalRegisters;</code>
 +
 
 +
<code>TBCM2837ARMLocalRegisters = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Control:LongWord;</code>
 +
| Control register $0000
 +
|-
 +
| <code>Reserved1:LongWord;</code>
 +
| Unused $0004
 +
|-
 +
| <code>CoreTimerPrescaler:LongWord;</code>
 +
| Core timer prescaler $0008
 +
|-
 +
| <code>GPUInterruptRouting:LongWord;</code>
 +
| GPU interrupts routing $000C
 +
|-
 +
| <code>PMInterruptRoutingSet:LongWord;</code>
 +
| Performance Monitor Interrupts routing-set $0010
 +
|-
 +
| <code>PMInterruptRoutingClear:LongWord;</code>
 +
| Performance Monitor Interrupts routing-clear $0014
 +
|-
 +
| <code>Reserved2:LongWord;</code>
 +
| Unused $0018
 +
|-
 +
| <code>CoreTimerLow:LongWord;</code>
 +
| Core timer access LS 32 bits $001C
 +
|-
 +
| <code>CoreTimerHigh:LongWord;</code>
 +
| Core timer access MS 32 bits $0020
 +
|-
 +
| <code>LocalIntRouting0:LongWord;</code>
 +
| Local Interrupts 0-7 routing (1 to 7 Unused) $0024
 +
|-
 +
| <code>LocalIntRouting1:LongWord;</code>
 +
| Local Interrupts 8-15 routing (Unused) $0028
 +
|-
 +
| <code>AXIOutstandingCount:LongWord;</code>
 +
| AXI outstanding counters $002C
 +
|-
 +
| <code>AXIOutstandingIRQ:LongWord;</code>
 +
| AXI outstanding IRQ $0030
 +
|-
 +
| <code>LocalTimerControl:LongWord;</code>
 +
| Local timer control & status $0034
 +
|-
 +
| <code>LocalTimerClearReload:LongWord;</code>
 +
| Local timer IRQ clear & reload $0038
 +
|-
 +
| <code>Reserved3:LongWord;</code>
 +
| Unused $003C
 +
|-
 +
| <code>TimersIntControl:array[0..BCM2837_CPU_COUNT - 1] of LongWord;</code>
 +
| Core0-3 Timers Interrupt control $0040-004C
 +
|-
 +
| <code>MailboxIntControl:array[0..BCM2837_CPU_COUNT - 1] of LongWord;</code>
 +
| Core0-3 Mailboxes Interrupt control $0050-005C
 +
|-
 +
| <code>IRQPending:array[0..BCM2837_CPU_COUNT - 1] of LongWord;</code>
 +
| Core0-3 IRQ Source $0060-006C
 +
|-
 +
| <code>FIQPending:array[0..BCM2837_CPU_COUNT - 1] of LongWord;</code>
 +
| Core0-3 FIQ Source $0070-007C
 +
|-
 +
| <code>MailboxWrite:array[0..BCM2837_CPU_COUNT - 1] of TBCM2837ARMLocalMailboxWriteRegisters;</code>
 +
| Core0-3 Mailbox 0-3 write-set (WO) $0080-00BC
 +
|-
 +
| <code>MailboxReadClear:array[0..BCM2837_CPU_COUNT - 1] of TBCM2837ARMLocalMailboxReadClearRegisters;</code>
 +
| Core0-3 Mailbox 0-3 read & write-high-to-clear $00C0-00FC
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''BCM2837 virtual GPIO buffer'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBCM2837VirtualGPIOBuffer = ^TBCM2837VirtualGPIOBuffer;</code>
 +
 
 +
<code>TBCM2837VirtualGPIOBuffer = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Address:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>EnableDisable:array[0..BCM2837_VIRTUAL_GPIO_PIN_COUNT - 1] of LongWord;</code>
 +
| Two packed 16-bit counts of enabled and disabled / Allows host to detect a brief enable that was missed
 +
|-
 +
|}
 +
</div></div>
 +
<br />
  
 
=== Public variables ===
 
=== Public variables ===

Revision as of 03:57, 16 January 2017

Return to Unit Reference


Description


Ultibo Definitions specific to the Broadcom 2837 System on chip unit

Note that most of this information is directly from the BCM2835 documentation as there is no complete technical reference yet available for the BCM2837.

Constants



[Expand]
BCM2837 specific constants BCM2837_CPU_*


[Expand]
BCM2837 ARM physical to VC IO mapping constants BCM2837_VCIO_*


[Expand]
BCM2837 ARM physical to VC bus mapping constants BCM2837_VCBUS_*


[Expand]
BCM2837 peripheral constants BCM2837_PERIPHERALS_*


[Expand]
BCM2837 interrupt controller 0 constants BCM2837_IC0_REGS_*


[Expand]
BCM2837 system timer constants BCM2837_SYSTEM_TIMER_*


[Expand]
BCM2837 message based parallel host interface constants BCM2837_MPHI_REGS_*


[Expand]
BCM2837 DMA controller constants BCM2837_DMA*


[Expand]
BCM2837 ARM interrupt controller constants BCM2837_INTERRUPT_*


[Expand]
BCM2837 ARM timer constants BCM2837_TIMER_*


[Expand]
BCM2837 ARM mailbox 0 constants BCM2837_MAILBOX0_*


[Expand]
BCM2837 ARM mailbox 1 constants BCM2837_MAILBOX1_*


[Expand]
BCM2837 power management, reset controller and watchdog constants BCM2837_PM_*


[Expand]
BCM2837 clock management constants BCM2837_CM_*


[Expand]
BCM2837 PCM clock constants BCM2837_PCM_CLOCK_*


[Expand]
BCM2837 random number generator constants BCM2837_RNG_*


[Expand]
BCM2837 GPIO constants BCM2837_GPIO_*


[Expand]
BCM2837 UART0 (PL011) constants BCM2837_PL011_*


[Expand]
BCM2837 MMCI0 constants BCM2837_MMCI0_*


[Expand]
BCM2837 PCM/I2S audio constants BCM2837_PCM_*


[Expand]
BCM2837 SPI0 constants BCM2837_SPI0_*


[Expand]
BCM2837 BSC0 (I2C) constants BCM2837_BSC0_*


[Expand]
BCM2837 PWM constants BCM2837_PWM_*


[Expand]
BCM2837 I2C/SPI slave constants BCM2837_I2CSPI_*


[Expand]
BCM2837 AUX (UART1, SPI1 and SPI2) constants BCM2837_AUX_*


[Expand]
BCM2837 SD host controller constants BCM2837_SDHCI_*


[Expand]
BCM2837 SMI constants BCM2837_SMI_*


[Expand]
BCM2837 BSC1 (I2C) constants BCM2837_BSC1_*


[Expand]
BCM2837 BSC2 (I2C) constants BCM2837_BSC2_*


[Expand]
BCM2837 USB constants BCM2837_USB_*


[Expand]
BCM2837 V3D constants BCM2837_V3D_*


[Expand]
BCM2837 DMA controller constants BCM2837_DMA15_*


[Expand]
BCM2837 IRQ peripheral constants BCM2837_IRQ_*


[Expand]
BCM2837 system timer frequency constants BCM2837_SYSTEM_TIMER_FREQUENCY*


[Expand]
BCM2837 system timer control/status constants BCM2837_SYSTEM_TIMER_CS_*


[Expand]
BCM2837 DMA control and status constants BCM2837_DMA_CS_*


[Expand]
BCM2837 DMA transfer information constants BCM2837_DMA_TI_*


[Expand]
BCM2837 DMA transfer length constants BCM2837_DMA_TXFR_LEN_*


[Expand]
BCM2837 DMA 2D stride constants BCM2837_DMA_STRIDE_*


[Expand]
BCM2837 DMA debug constants BCM2837_DMA_DEBUG_*


[Expand]
BCM2837 DMA engine interrupt status constants BCM2837_DMA_INT_STATUS_*


[Expand]
BCM2837 DMA engine enable constants BCM2837_DMA_ENABLE_*


[Expand]
BCM2837 DMA engine DREQ peripheral constants BCM2837_DMA_DREQ_*


[Expand]
BCM2837 BSC (I2C0/1/2) control constants BCM2837_BSC_C_*


[Expand]
BCM2837 BSC (I2C0/1/2) status constants BCM2837_BSC_S_*


[Expand]
BCM2837 BSC (I2C0/1/2) data length constants BCM2837_BSC_DLEN_*


[Expand]
BCM2837 BSC (I2C0/1/2) slave address constants BCM2837_BSC_A_*


[Expand]
BCM2837 BSC (I2C0/1/2) data FIFO constants BCM2837_BSC_FIFO_*


[Expand]
BCM2837 BSC (I2C0/1/2) clock divider constants BCM2837_BSC_CDIV_*


[Expand]
BCM2837 BSC (I2C0/1/2) data delay constants BCM2837_BSC_DEL_*


[Expand]
BCM2837 BSC (I2C0/1/2) clock stretch timeout constants BCM2837_BSC_CLKT_TOUT_*


[Expand]
BCM2837 SPI0 constants BCM2837_SPI0_CS_*


[Expand]
BCM2837 PWM control constants BCM2837_PWM_CTL_*


[Expand]
BCM2837 PWM status constants BCM2837_PWM_STA_*


[Expand]
BCM2837 PWM DMA configuration constants BCM2837_PWM_DMAC_*


[Expand]
BCM2837 PWM constants BCM2837_PWM_*


[Expand]
BCM2837 PL011 UART data constants BCM2837_PL011_DR_*


[Expand]
BCM2837 PL011 UART receive status / error clear constants BCM2837_PL011_RSRECR_*


[Expand]
BCM2837 PL011 UART flag constants BCM2837_PL011_FR_*


[Expand]
BCM2837 PL011 UART IrDA constants


[Expand]
BCM2837 PL011 UART integer baud rate divisor constants BCM2837_PL011_IBRD_*


[Expand]
BCM2837 PL011 UART fractional baud rate divisor constants BCM2837_PL011_FBRD_*


[Expand]
BCM2837 PL011 UART line control constants BCM2837_PL011_LCRH_*


[Expand]
BCM2837 PL011 UART control constants BCM2837_PL011_CR_*


[Expand]
BCM2837 PL011 UART interrupt FIFO level select constants BCM2837_PL011_IFLS_*


[Expand]
BCM2837 PL011 UART interrupt mask set/clear constants BCM2837_PL011_IMSC_*


[Expand]
BCM2837 PL011 UART raw interrupt status constants BCM2837_PL011_RIS_*


[Expand]
BCM2837 PL011 UART masked interrupt status constants BCM2837_PL011_MIS_*


[Expand]
BCM2837 PL011 UART interrupt clear constants BCM2837_PL011_ICR_*


[Expand]
BCM2837 PL011 UART DMA Control constants


[Expand]
BCM2837 ARM interrupt controller constants BCM2837_ARM_INTERRUPT_FIQ_*


[Expand]
BCM2837 ARM timer constants BCM2837_ARM_TIMER_CONTROL_*


[Expand]
BCM2837 power management, reset controller and watchdog constants BCM2837_PM_*


[Expand]
BCM2837 random number generator constants BCM2837_RANDOM_*


[Expand]
BCM2837 clock management constants BCM2837_CM_*


[Expand]
BCM2837 clock manager control constants BCM2837_CM_CTL_*


[Expand]
BCM2837 clock manager divisor constants BCM2837_CM_DIV_*


[Expand]
BCM2837 clock manager constants BCM2837_CM_*


[Expand]
BCM2837 mailbox constants BCM2837_MAILBOX_*


[Expand]
BCM2837 mailbox 0 channel constants BCM2837_MAILBOX0_CHANNEL_*


[Expand]
BCM2837 mailbox 1 channel constants BCM2837_MAILBOX_*_MASK


[Expand]
BCM2837 mailbox status flag constants BCM2837_MAILBOX_STATUS_*


[Expand]
BCM2837 mailbox property tag constants BCM2837_MBOX_TAG_GET_*


[Expand]
BCM2837 mailbox board revision value constants BCM2837_BOARD_REV_*


[Expand]
BCM2837 mailbox board revision constants BCM2837_BOARD_REVISION_*


[Expand]
BCM2837 mailbox power state device constants BCM2837_MBOX_POWER_DEVID_*


[Expand]
BCM2837 mailbox power state request constants BCM2837_MBOX_SET_POWER_STATE_REQ_*


[Expand]
BCM2837 mailbox power state response constants BCM2837_MBOX_POWER_STATE_RESP_*


[Expand]
BCM2837 mailbox clock state/rate id constants BCM2837_MBOX_CLOCK_ID_*


[Expand]
BCM2837 mailbox clock state constants BCM2837_MBOX_SET_CLOCK_STATE_REQ_*


[Expand]
BCM2837 mailbox clock state response constants BCM2837_MBOX_CLOCK_STATE_RESP_*


[Expand]
BCM2837 mailbox clock rate turbo constants BCM2837_MBOX_CLOCK_RATE_*


[Expand]
BCM2837 mailbox voltage id constants BCM2837_MBOX_VOLTAGE_ID_*


[Expand]
BCM2837 mailbox voltage constants BCM2837_MBOX_VOLTAGE_*


[Expand]
BCM2837 mailbox temperature id constants BCM2837_MBOX_TEMP_ID_*


[Expand]
BCM2837 mailbox memory flag constants BCM2837_MBOX_MEM_FLAG_*


[Expand]
BCM2837 mailbox blank screen constants BCM2837_MBOX_BLANK_SCREEN_*


[Expand]
BCM2837 mailbox pixel order constants BCM2837_MBOX_PIXEL_ORDER_*


[Expand]
BCM2837 mailbox alpha mode constants BCM2837_MBOX_ALPHA_MODE_*


[Expand]
BCM2837 mailbox palette constants BCM2837_MBOX_PALETTE_*


[Expand]
BCM2837 mailbox cursor state constants BCM2837_MBOX_CURSOR_*


[Expand]
BCM2837 mailbox cursor state flag constants BCM2837_MBOX_CURSOR_STATE_*


[Expand]
BCM2837 mailbox cursor constants BCM2837_MBOX_CURSOR_*


[Expand]
BCM2837 mailbox request constants BCM2837_MBOX_REQUEST_*


[Expand]
BCM2837 mailbox tag request constants BCM2837_MBOX_TAG_REQUEST_*


[Expand]
BCM2837 GPIO constants BCM2837_GPIO_*


[Expand]
BCM2837 virtual GPIO constants BCM2837_VIRTUAL_GPIO_*


[Expand]
BCM2837 function select register constants BCM2837_GP*


[Expand]
BCM2837 ARM local constants BCM2837_ARM_LOCAL_*


[Expand]
BCM2837 ARM local peripheral constants BCM2837_ARM_LOCAL_REGS_*


[Expand]
BCM2837 IRQ local ARM peripheral constants BCM2837_IRQ_LOCAL_ARM_*


[Expand]
BCM2837 ARM local control constants BCM2837_ARM_LOCAL_CONTROL_*


[Expand]
BCM2837 ARM local GPU interrupt routing constants BCM2837_ARM_LOCAL_GPU_INT_ROUTING_*


[Expand]
BCM2837 ARM local PM interrupt routing set/clear constants BCM2837_ARM_LOCAL_PM_INT_ROUTING_*


[Expand]
BCM2837 ARM local interrupt routing0 (0-7) constants BCM2837_ARM_LOCAL_INT_ROUTING0_TIMER_*


[Expand]
BCM2837 ARM local AXI outstanding count constants BCM2837_ARM_LOCAL_AXI_COUNT_*


[Expand]
BCM2837 ARM local AXI outstanding IRQ constants BCM2837_ARM_LOCAL_AXI_IRQ_*


[Expand]
BCM2837 ARM local timer control constants BCM2837_ARM_LOCAL_TIMER_CONTROL_*


[Expand]
BCM2837 ARM local timer clear reload constants BCM2837_ARM_LOCAL_TIMER_CLEAR_*


[Expand]
BCM2837 ARM local timer interrupt control constants BCM2837_ARM_LOCAL_TIMER_INT_CONTROL_*


[Expand]
BCM2837 ARM local mailbox interrupt control constants BCM2837_ARM_LOCAL_MAILBOX_INT_CONTROL_*


[Expand]
BCM2837 ARM local IRQ pending constants BCM2837_ARM_LOCAL_IRQ_PENDING_*


[Expand]
BCM2837 ARM local FIQ pending constants BCM2837_ARM_LOCAL_FIQ_PENDING_*


Type definitions



BCM2837 interrupt controller registers

[Expand]

PBCM2837InterruptRegisters = ^TBCM2837InterruptRegisters;

TBCM2837InterruptRegisters = record

BCM2837 system timer registers

[Expand]

PBCM2837SystemTimerRegisters = ^TBCM2837SystemTimerRegisters;

TBCM2837SystemTimerRegisters = record

BCM2837 DMA channel registers

[Expand]

PBCM2837DMARegisters = ^TBCM2837DMARegisters;

TBCM2837DMARegisters = record

BCM2837 DMA control block structure

[Expand]

PBCM2837DMAControlBlock = ^TBCM2837DMAControlBlock;

TBCM2837DMAControlBlock = record

BCM2837 BSC (I2C) registers

[Expand]

PBCM2837BSCRegisters = ^TBCM2837BSCRegisters;

TBCM2837BSCRegisters = record

BCM2837 SPI0 registers

[Expand]

PBCM2837SPI0Registers = ^TBCM2837SPI0Registers;

TBCM2837SPI0Registers = record

BCM2837 I2C / SPI slave registers

[Expand]

PBCM2837I2CSPIRegisters = ^TBCM2837I2CSPIRegisters;

TBCM2837I2CSPIRegisters = record

BCM2837 AUX (UART1, SPI1 and SPI2) registers

[Expand]

PBCM2837AUXRegisters = ^TBCM2837AUXRegisters;

TBCM2837AUXRegisters = record

BCM2837 PCM / I2S registers

[Expand]

PBCM2837PCMRegisters = ^TBCM2837PCMRegisters;

TBCM2837PCMRegisters = record

BCM2837 pulse width modulator (PWM) registers

[Expand]

PBCM2837PWMRegisters = ^TBCM2837PWMRegisters;

TBCM2837PWMRegisters = record

BCM2837 PL011 UART registers

[Expand]

PBCM2837PL011Registers = ^TBCM2837PL011Registers;

TBCM2837PL011Registers = record

BCM2837 ARM timer registers

[Expand]

PBCM2837ARMTimerRegisters = ^TBCM2837ARMTimerRegisters;

TBCM2837ARMTimerRegisters = record

BCM2837 power management watchdog registers

[Expand]

PBCM2837PMWatchdogRegisters = ^TBCM2837PMWatchdogRegisters;

TBCM2837PMWatchdogRegisters = record

BCM2837 random number generator registers

[Expand]

PBCM2837RNGRegisters = ^TBCM2837RNGRegisters;

TBCM2837RNGRegisters = record

BCM2837 GPIO registers

[Expand]

PBCM2837GPIORegisters = ^TBCM2837GPIORegisters;

TBCM2837GPIORegisters = record

BCM2837 mailbox0 registers

[Expand]

PBCM2837Mailbox0Registers = ^TBCM2837Mailbox0Registers;

TBCM2837Mailbox0Registers = record

BCM2837 mailbox framebuffer request

[Expand]

PBCM2837MailboxFramebuffer = ^TBCM2837MailboxFramebuffer;

TBCM2837MailboxFramebuffer = record

BCM2837 mailbox header property tags

[Expand]

PBCM2837MailboxHeader = ^TBCM2837MailboxHeader;

TBCM2837MailboxHeader = record

BCM2837 mailbox footer property tags

[Expand]

PBCM2837MailboxFooter = ^TBCM2837MailboxFooter;

TBCM2837MailboxFooter = record

BCM2837 mailbox tag headers

[Expand]

PBCM2837MailboxTagHeader = ^TBCM2837MailboxTagHeader;

TBCM2837MailboxTagHeader = record

BCM2837 mailbox tag no request

[Expand]

PBCM2837MailboxTagNoRequest = ^TBCM2837MailboxTagNoRequest;

TBCM2837MailboxTagNoRequest = record

BCM2837 mailbox tag no response

[Expand]

PBCM2837MailboxTagNoResponse = ^TBCM2837MailboxTagNoResponse;

TBCM2837MailboxTagNoResponse = record

BCM2837 mailbox tag firmware revision response

[Expand]

TBCM2837MailboxTagFirmwareRevisionResponse = record

BCM2837 mailbox tag get firmware revision

[Expand]

PBCM2837MailboxTagGetFirmwareRevision = ^TBCM2837MailboxTagGetFirmwareRevision;

TBCM2837MailboxTagGetFirmwareRevision = record

BCM2837 mailbox tag board model response

[Expand]

TBCM2837MailboxTagBoardModelResponse = record

BCM2837 mailbox tag get board model

[Expand]

PBCM2837MailboxTagGetBoardModel = ^TBCM2837MailboxTagGetBoardModel;

TBCM2837MailboxTagGetBoardModel = record

BCM2837 mailbox tag get board revision response

[Expand]

TBCM2837MailboxTagBoardRevisionResponse = record

BCM2837 mailbox tag get board revision

[Expand]

PBCM2837MailboxTagGetBoardRevision = ^TBCM2837MailboxTagGetBoardRevision;

TBCM2837MailboxTagGetBoardRevision = record

BCM2837 mailbox tag MAC address response

[Expand]

TBCM2837MailboxTagMACAddressResponse = record

BCM2837 mailbox tag get MAC address

[Expand]

PBCM2837MailboxTagGetMACAddress = ^TBCM2837MailboxTagGetMACAddress;

TBCM2837MailboxTagGetMACAddress = record

BCM2837 mailbox tag board serial response

[Expand]

TBCM2837MailboxTagBoardSerialResponse = record

BCM2837 mailbox tag get board serial

[Expand]

PBCM2837MailboxTagGetBoardSerial = ^TBCM2837MailboxTagGetBoardSerial;

TBCM2837MailboxTagGetBoardSerial = record

BCM2837 mailbox tag ARM memory response

[Expand]

TBCM2837MailboxTagARMMemoryResponse = record

BCM2837 mailbox tag get ARM memory

[Expand]

PBCM2837MailboxTagGetARMMemory = ^TBCM2837MailboxTagGetARMMemory;

TBCM2837MailboxTagGetARMMemory = record

BCM2837 mailbox tag VC memory response

[Expand]

TBCM2837MailboxTagVCMemoryResponse = record

BCM2837 mailbox tag get VC memory

[Expand]

PBCM2837MailboxTagGetVCMemory = ^TBCM2837MailboxTagGetVCMemory;

TBCM2837MailboxTagGetVCMemory = record

BCM2837 mailbox tag clock response

[Expand]

TBCM2837MailboxTagClockResponse = record

BCM2837 mailbox tag clocks response

[Expand]

TBCM2837MailboxTagClocksResponse = record

BCM2837 mailbox tag get clocks

[Expand]

PBCM2837MailboxTagGetClocks = ^TBCM2837MailboxTagGetClocks;

TBCM2837MailboxTagGetClocks = record

BCM2837 mailbox tag get power state request

[Expand]

TBCM2837MailboxTagGetPowerStateRequest = record

BCM2837 mailbox tag power state response

[Expand]

TBCM2837MailboxTagPowerStateResponse = record

BCM2837 mailbox tag get power state

[Expand]

PBCM2837MailboxTagGetPowerState = ^TBCM2837MailboxTagGetPowerState;

TBCM2837MailboxTagGetPowerState = record

BCM2837 mailbox tag timimg request

[Expand]

TBCM2837MailboxTagTimingRequest = record

BCM2837 mailbox tag timimg response

[Expand]

TBCM2837MailboxTagTimingResponse = record

BCM2837 mailbox tag get timing

[Expand]

PBCM2837MailboxTagGetTiming = ^TBCM2837MailboxTagGetTiming;

TBCM2837MailboxTagGetTiming = record

BCM2837 mailbox tag set power state request

[Expand]

TBCM2837MailboxTagSetPowerStateRequest = record

BCM2837 mailbox tag set power state

[Expand]

PBCM2837MailboxTagSetPowerState = ^TBCM2837MailboxTagSetPowerState;

TBCM2837MailboxTagSetPowerState = record

BCM2837 mailbox tag get clock state request

[Expand]

TBCM2837MailboxTagGetClockStateRequest = record

BCM2837 mailbox tag clock state response

[Expand]

TBCM2837MailboxTagClockStateResponse = record

BCM2837 mailbox tag get clock state

[Expand]

PBCM2837MailboxTagGetClockState = ^TBCM2837MailboxTagGetClockState;

TBCM2837MailboxTagGetClockState = record

BCM2837 mailbox tag set clock state request

[Expand]

TBCM2837MailboxTagSetClockStateRequest = record

BCM2837 mailbox tag set clock rate

[Expand]

PBCM2837MailboxTagSetClockState = ^TBCM2837MailboxTagSetClockState;

TBCM2837MailboxTagSetClockState = record

BCM2837 mailbox tag get clock rate request

[Expand]

TBCM2837MailboxTagGetClockRateRequest = record

BCM2837 mailbox tag clock rate response

[Expand]

TBCM2837MailboxTagClockRateResponse = record

BCM2837 mailbox tag get clock rate

[Expand]

PBCM2837MailboxTagGetClockRate = ^TBCM2837MailboxTagGetClockRate;

TBCM2837MailboxTagGetClockRate = record

BCM2837 mailbox tag set clock rate request

[Expand]

TBCM2837MailboxTagSetClockRateRequest = record

BCM2837 mailbox tag set clock rate

[Expand]

PBCM2837MailboxTagSetClockRate = ^TBCM2837MailboxTagSetClockRate;

TBCM2837MailboxTagSetClockRate = record

BCM2837 mailbox tag get clock max rate request

[Expand]

TBCM2837MailboxTagGetClockMaxRateRequest = record

BCM2837 mailbox tag get clock max rate response

[Expand]

TBCM2837MailboxTagGetClockMaxRateResponse = record

BCM2837 mailbox tag get clock max rate

[Expand]

PBCM2837MailboxTagGetClockMaxRate = ^TBCM2837MailboxTagGetClockMaxRate;

TBCM2837MailboxTagGetClockMaxRate = record

BCM2837 mailbox tag get clock min rate

[Expand]

PBCM2837MailboxTagGetClockMinRate = ^TBCM2837MailboxTagGetClockMinRate;

TBCM2837MailboxTagGetClockMinRate = record

BCM2837 mailbox tag get turbo request

[Expand]

TBCM2837MailboxTagGetTurboRequest = record

BCM2837 mailbox tag turbo response

[Expand]

TBCM2837MailboxTagTurboResponse = record

BCM2837 mailbox tag get turbo

[Expand]

PBCM2837MailboxTagGetTurbo = ^TBCM2837MailboxTagGetTurbo;

TBCM2837MailboxTagGetTurbo = record

BCM2837 mailbox tag set turbo request

[Expand]

TBCM2837MailboxTagSetTurboRequest = record

BCM2837 mailbox tag set turbo

[Expand]

PBCM2837MailboxTagSetTurbo = ^TBCM2837MailboxTagSetTurbo;

TBCM2837MailboxTagSetTurbo = record

BCM2837 mailbox tag get voltage request

[Expand]

TBCM2837MailboxTagGetVoltageRequest = record

BCM2837 mailbox tag voltage response

[Expand]

TBCM2837MailboxTagVoltageResponse = record

BCM2837 mailbox tag get voltage

[Expand]

PBCM2837MailboxTagGetVoltage = ^TBCM2837MailboxTagGetVoltage;

TBCM2837MailboxTagGetVoltage = record

BCM2837 mailbox tag set voltage request

[Expand]

TBCM2837MailboxTagSetVoltageRequest = record

BCM2837 mailbox tag set voltage

[Expand]

PBCM2837MailboxTagSetVoltage = ^TBCM2837MailboxTagSetVoltage;

TBCM2837MailboxTagSetVoltage = record

BCM2837 mailbox tag get max voltage

[Expand]

PBCM2837MailboxTagGetMaxVoltage = ^TBCM2837MailboxTagGetMaxVoltage;

TBCM2837MailboxTagGetMaxVoltage = record

BCM2837 mailbox tag get min voltage

[Expand]

PBCM2837MailboxTagGetMinVoltage = ^TBCM2837MailboxTagGetMinVoltage;

TBCM2837MailboxTagGetMinVoltage = record

BCM2837 mailbox tag temperature request

[Expand]

TBCM2837MailboxTagTemperatureRequest = record

BCM2837 mailbox tag temperture response

[Expand]

TBCM2837MailboxTagTemperatureResponse = record

BCM2837 mailbox tag get temperature

[Expand]

PBCM2837MailboxTagGetTemperature = ^TBCM2837MailboxTagGetTemperature;

TBCM2837MailboxTagGetTemperature = record

BCM2837 mailbox tag get max temperature

[Expand]

PBCM2837MailboxTagGetMaxTemperature = ^TBCM2837MailboxTagGetMaxTemperature;

TBCM2837MailboxTagGetMaxTemperature = record

BCM2837 mailbox tag allocate memory request

[Expand]

TBCM2837MailboxTagAllocateMemoryRequest = record

BCM2837 mailbox tag allocate memory response

[Expand]

TBCM2837MailboxTagAllocateMemoryResponse = record

BCM2837 mailbox tag allocate memory

[Expand]

PBCM2837MailboxTagAllocateMemory = ^TBCM2837MailboxTagAllocateMemory;

TBCM2837MailboxTagAllocateMemory = record

BCM2837 mailbox tag lock memory request

[Expand]

TBCM2837MailboxTagLockMemoryRequest = record

BCM2837 mailbox tag lock memory response

[Expand]

TBCM2837MailboxTagLockMemoryResponse = record

BCM2837 mailbox tag lock memory

[Expand]

PBCM2837MailboxTagLockMemory = ^TBCM2837MailboxTagLockMemory;

TBCM2837MailboxTagLockMemory = record

BCM2837 mailbox tag umlock memory response

[Expand]

TBCM2837MailboxTagUnlockMemoryResponse = record

BCM2837 mailbox tag unlock memory

[Expand]

PBCM2837MailboxTagUnlockMemory = ^TBCM2837MailboxTagUnlockMemory;

TBCM2837MailboxTagUnlockMemory = record

BCM2837 mailbox tag release memory

[Expand]

PBCM2837MailboxTagReleaseMemory = ^TBCM2837MailboxTagReleaseMemory;

TBCM2837MailboxTagReleaseMemory = record

BCM2837 mailbox tag execute code request

[Expand]

TBCM2837MailboxTagExecuteCodeRequest = record

BCM2837 mailbox tag execute code response

[Expand]

TBCM2837MailboxTagExecuteCodeResponse = record

BCM2837 mailbox tag execute code

[Expand]

PBCM2837MailboxTagExecuteCode = ^TBCM2837MailboxTagExecuteCode;

TBCM2837MailboxTagExecuteCode = record

BCM2837 mailbox tag dispmanx handle request

[Expand]

TBCM2837MailboxTagGetDispmanxHandleRequest = record

BCM2837 mailbox tag get dispmanx handle response

[Expand]

TBCM2837MailboxTagGetDispmanxHandleResponse = record

BCM2837 mailbox tag get dispmanx handle

[Expand]

PBCM2837MailboxTagGetDispmanxHandle = ^TBCM2837MailboxTagGetDispmanxHandle;

TBCM2837MailboxTagGetDispmanxHandle = record

BCM2837 mailbox tag get EDID block request

[Expand]

TBCM2837MailboxTagGetEDIDBlockRequest = record

BCM2837 mailbox tag get EDID block response

[Expand]

TBCM2837MailboxTagGetEDIDBlockResponse = record

BCM2837 mailbox tag get EDID block

[Expand]

PBCM2837MailboxTagGetEDIDBlock = ^TBCM2837MailboxTagGetEDIDBlock;

TBCM2837MailboxTagGetEDIDBlock = record

BCM2837 mailbox tag allocate buffer request

[Expand]

TBCM2837MailboxTagAllocateBufferRequest = record

BCM2837 mailbox tag buffer response

[Expand]

TBCM2837MailboxTagAllocateBufferResponse = record

BCM2837 mailbox tag allocate buffer

[Expand]

PBCM2837MailboxTagAllocateBuffer = ^TBCM2837MailboxTagAllocateBuffer;

TBCM2837MailboxTagAllocateBuffer = record

BCM2837 mailbox tag release buffer

[Expand]

PBCM2837MailboxTagReleaseBuffer = ^TBCM2837MailboxTagReleaseBuffer;

TBCM2837MailboxTagReleaseBuffer = record

BCM2837 mailbox tag blank screen request

[Expand]

TBCM2837MailboxTagBlankScreenRequest = record

BCM2837 mailbox tag blank screen response

[Expand]

TBCM2837MailboxTagBlankScreenResponse = record

BCM2837 mailbox tag blank screen

[Expand]

PBCM2837MailboxTagBlankScreen = ^TBCM2837MailboxTagBlankScreen;

TBCM2837MailboxTagBlankScreen = record

BCM2837 mailbox tag physical request

[Expand]

TBCM2837MailboxTagPhysicalRequest = record

BCM2837 mailbox tag physical response

[Expand]

TBCM2837MailboxTagPhysicalResponse = record

BCM2837 mailbox tag get physical

[Expand]

PBCM2837MailboxTagGetPhysical = ^TBCM2837MailboxTagGetPhysical;

TBCM2837MailboxTagGetPhysical = record

BCM2837 mailbox tag test physical

[Expand]

PBCM2837MailboxTagTestPhysical = ^TBCM2837MailboxTagTestPhysical;

TBCM2837MailboxTagTestPhysical = record

BCM2837 mailbox tag set physical

[Expand]

PBCM2837MailboxTagSetPhysical = ^TBCM2837MailboxTagSetPhysical;

TBCM2837MailboxTagSetPhysical = record

BCM2837 mailbox tag virtual request

[Expand]

TBCM2837MailboxTagVirtualRequest = record

BCM2837 mailbox tag virtual response

[Expand]

TBCM2837MailboxTagVirtualResponse = record

BCM2837 mailbox tag get virtual

[Expand]

PBCM2837MailboxTagGetVirtual = ^TBCM2837MailboxTagGetVirtual;

TBCM2837MailboxTagGetVirtual = record

BCM2837 mailbox tag test virtual

[Expand]

PBCM2837MailboxTagTestVirtual = ^TBCM2837MailboxTagTestVirtual;

TBCM2837MailboxTagTestVirtual = record

BCM2837 mailbox tag set virtual

[Expand]

PBCM2837MailboxTagSetVirtual = ^TBCM2837MailboxTagSetVirtual;

TBCM2837MailboxTagSetVirtual = record

BCM2837 mailbox tag depth request

[Expand]

TBCM2837MailboxTagDepthRequest = record

BCM2837 mailbox tag depth response

[Expand]

TBCM2837MailboxTagDepthResponse = record

BCM2837 mailbox tag get depth

[Expand]

PBCM2837MailboxTagGetDepth = ^TBCM2837MailboxTagGetDepth;

TBCM2837MailboxTagGetDepth = record

BCM2837 mailbox tag test depth

[Expand]

PBCM2837MailboxTagTestDepth = ^TBCM2837MailboxTagTestDepth;

TBCM2837MailboxTagTestDepth = record

BCM2837 mailbox tag set depth

[Expand]

PBCM2837MailboxTagSetDepth = ^TBCM2837MailboxTagSetDepth;

TBCM2837MailboxTagSetDepth = record

BCM2837 mailbox tag pixel order request

[Expand]

TBCM2837MailboxTagPixelOrderRequest = record

BCM2837 mailbox tag pixel order response

[Expand]

TBCM2837MailboxTagPixelOrderResponse = record

BCM2837 mailbox tag get pixel order

[Expand]

PBCM2837MailboxTagGetPixelOrder = ^TBCM2837MailboxTagGetPixelOrder;

TBCM2837MailboxTagGetPixelOrder = record

BCM2837 mailbox tag test pixel order

[Expand]

PBCM2837MailboxTagTestPixelOrder = ^TBCM2837MailboxTagTestPixelOrder;

TBCM2837MailboxTagTestPixelOrder = record

BCM2837 mailbox tag set pixel order

[Expand]

PBCM2837MailboxTagSetPixelOrder = ^TBCM2837MailboxTagSetPixelOrder;

TBCM2837MailboxTagSetPixelOrder = record

BCM2837 mailbox tag alpha mode request

[Expand]

TBCM2837MailboxTagAlphaModeRequest = record

BCM2837 mailbox tag alpha mode response

[Expand]

TBCM2837MailboxTagAlphaModeResponse = record

BCM2837 mailbox tag get alpha mode

[Expand]

PBCM2837MailboxTagGetAlphaMode = ^TBCM2837MailboxTagGetAlphaMode;

TBCM2837MailboxTagGetAlphaMode = record

BCM2837 mailbox tag test alpha mode

[Expand]

PBCM2837MailboxTagTestAlphaMode = ^TBCM2837MailboxTagTestAlphaMode;

TBCM2837MailboxTagTestAlphaMode = record

BCM2837 mailbox tag set alpha mode

[Expand]

PBCM2837MailboxTagSetAlphaMode = ^TBCM2837MailboxTagSetAlphaMode;

TBCM2837MailboxTagSetAlphaMode = record

BCM2837 mailbox tag pitch response

[Expand]

TBCM2837MailboxTagPitchResponse = record

BCM2837 mailbox tag get pitch

[Expand]

PBCM2837MailboxTagGetPitch = ^TBCM2837MailboxTagGetPitch;

TBCM2837MailboxTagGetPitch = record

BCM2837 mailbox tag virtual offset request

[Expand]

TBCM2837MailboxTagVirtualOffsetRequest = record

BCM2837 mailbox tag virtual offset response

[Expand]

TBCM2837MailboxTagVirtualOffsetResponse = record

BCM2837 mailbox tag get virtual offset

[Expand]

PBCM2837MailboxTagGetVirtualOffset = ^TBCM2837MailboxTagGetVirtualOffset;

TBCM2837MailboxTagGetVirtualOffset = record

BCM2837 mailbox tag test virtual offset

[Expand]

PBCM2837MailboxTagTestVirtualOffset = ^TBCM2837MailboxTagTestVirtualOffset;

TBCM2837MailboxTagTestVirtualOffset = record

BCM2837 mailbox tag set virtual offset

[Expand]

PBCM2837MailboxTagSetVirtualOffset = ^TBCM2837MailboxTagSetVirtualOffset;

TBCM2837MailboxTagSetVirtualOffset = record

BCM2837 mailbox tag overscan request

[Expand]

TBCM2837MailboxTagOverscanRequest = record

BCM2837 mailbox tag overscan response

[Expand]

TBCM2837MailboxTagOverscanResponse = record

BCM2837 mailbox tag get overscan

[Expand]

PBCM2837MailboxTagGetOverscan = ^TBCM2837MailboxTagGetOverscan;

TBCM2837MailboxTagGetOverscan = record

BCM2837 mailbox tag test overscan

[Expand]

PBCM2837MailboxTagTestOverscan = ^TBCM2837MailboxTagTestOverscan;

TBCM2837MailboxTagTestOverscan = record

BCM2837 mailbox tag set overscan

[Expand]

PBCM2837MailboxTagSetOverscan = ^TBCM2837MailboxTagSetOverscan;

TBCM2837MailboxTagSetOverscan = record

BCM2837 mailbox tag get palette response

[Expand]

TBCM2837MailboxTagGetPaletteResponse = record

BCM2837 mailbox tag get palette

[Expand]

PBCM2837MailboxTagGetPalette = ^TBCM2837MailboxTagGetPalette;

TBCM2837MailboxTagGetPalette = record

BCM2837 mailbox tag palette request

[Expand]

TBCM2837MailboxTagPaletteRequest = record

BCM2837 mailbox tag palette response

[Expand]

TBCM2837MailboxTagPaletteResponse = record

BCM2837 mailbox tag test palette

[Expand]

PBCM2837MailboxTagTestPalette = ^TBCM2837MailboxTagTestPalette;

TBCM2837MailboxTagTestPalette = record

BCM2837 mailbox tag set palette

[Expand]

PBCM2837MailboxTagSetPalette = ^TBCM2837MailboxTagSetPalette;

TBCM2837MailboxTagSetPalette = record

BCM2837 mailbox tag get touch response

[Expand]

TBCM2837MailboxTagGetTouchResponse = record

BCM2837 mailbox tag get touch

[Expand]

PBCM2837MailboxTagGetTouch = ^TBCM2837MailboxTagGetTouch;

TBCM2837MailboxTagGetTouch = record

BCM2837 mailbox tag get cirtual GPIO response

[Expand]

TBCM2837MailboxTagGetVirtualGPIOResponse = record

BCM2837 mailbox tag get virtual GPIO

[Expand]

PBCM2837MailboxTagGetVirtualGPIO = ^TBCM2837MailboxTagGetVirtualGPIO;

TBCM2837MailboxTagGetVirtualGPIO = record

BCM2837 mailbox tag test vsync

[Expand]

PBCM2837MailboxTagTestVsync = ^TBCM2837MailboxTagTestVsync;

TBCM2837MailboxTagTestVsync = record

BCM2837 mailbox tag set vsync

[Expand]

PBCM2837MailboxTagSetVsync = ^TBCM2837MailboxTagSetVsync;

TBCM2837MailboxTagSetVsync = record

BCM2837 mailbox tag set backlight request

[Expand]

TBCM2837MailboxTagSetBacklightRequest = record

BCM2837 mailbox tag set backlight response

[Expand]

TBCM2837MailboxTagSetBacklightResponse = record

BCM2837 mailbox tag set backlight

[Expand]

PBCM2837MailboxTagSetBacklight = ^TBCM2837MailboxTagSetBacklight;

TBCM2837MailboxTagSetBacklight = record

BCM2837 mailbox tag set cursor info request

[Expand]

TBCM2837MailboxTagSetCursorInfoRequest = record

BCM2837 mailbox tag cursor response

[Expand]

TBCM2837MailboxTagCursorResponse = record

BCM2837 mailbox tag set cursor info

[Expand]

PBCM2837MailboxTagSetCursorInfo = ^TBCM2837MailboxTagSetCursorInfo;

TBCM2837MailboxTagSetCursorInfo = record

BCM2837 mailbox tag set cursor state request

[Expand]

TBCM2837MailboxTagSetCursorStateRequest = record

BCM2837 mailbox tag set cursor state

[Expand]

PBCM2837MailboxTagSetCursorState = ^TBCM2837MailboxTagSetCursorState;

TBCM2837MailboxTagSetCursorState = record

BCM2837 mailbox tag command line response

[Expand]

TBCM2837MailboxTagCommandLineResponse = record

BCM2837 mailbox tag get command line

[Expand]

PBCM2837MailboxTagGetCommandLine = ^TBCM2837MailboxTagGetCommandLine;

TBCM2837MailboxTagGetCommandLine = record

BCM2837 mailbox tag DMA channels response

[Expand]

TBCM2837MailboxTagDMAChannelsResponse = record

BCM2837 mailbox tag get DMA channels

[Expand]

PBCM2837MailboxTagGetDMAChannels = ^TBCM2837MailboxTagGetDMAChannels;

TBCM2837MailboxTagGetDMAChannels = record

BCM2837 mailbox tag create buffer

[Expand]

PBCM2837MailboxTagCreateBuffer = ^TBCM2837MailboxTagCreateBuffer;

TBCM2837MailboxTagCreateBuffer = record

BCM2837 mailbox tag query buffer

[Expand]

PBCM2837MailboxTagQueryBuffer = ^TBCM2837MailboxTagQueryBuffer;

TBCM2837MailboxTagQueryBuffer = record

BCM2837 ARM local mailbox write registers

[Expand]

PBCM2837ARMLocalMailboxWriteRegisters = ^TBCM2837ARMLocalMailboxWriteRegisters;

TBCM2837ARMLocalMailboxWriteRegisters = record

BCM2837 ARM local mailbox read clear registers

[Expand]

PBCM2837ARMLocalMailboxReadClearRegisters = ^TBCM2837ARMLocalMailboxReadClearRegisters;

TBCM2837ARMLocalMailboxReadClearRegisters = record

BCM2837 ARM local registers

[Expand]

PBCM2837ARMLocalRegisters = ^TBCM2837ARMLocalRegisters;

TBCM2837ARMLocalRegisters = record

BCM2837 virtual GPIO buffer

[Expand]

PBCM2837VirtualGPIOBuffer = ^TBCM2837VirtualGPIOBuffer;

TBCM2837VirtualGPIOBuffer = record


Public variables


None defined

Function declarations


None defined


Return to Unit Reference