ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
ra8_mipi_dsi_regs.h
Go to the documentation of this file.
1
78
79#pragma once
80
81#ifdef __cplusplus
82extern "C" {
83#endif
84
85#include <stddef.h>
86#include <stdint.h>
87
88#include "ra8_attributes.h"
89
99typedef enum : uintptr_t {
103
117
128typedef enum : uint32_t {
131
146
162
177
192
204
218
226typedef enum : uint32_t {
230
238typedef enum : uint32_t {
247 k_ra8_mipi_dsi_rstsr_all_reset = (1UL << 0) | (1UL << 1) | (1UL << 2) | (1UL << 3) | (1UL << 4),
250
273
283typedef enum : uint32_t {
305 (1UL << 0) | (1UL << 1) | (1UL << 2) | (1UL << 8) | (1UL << 10) | (1UL << 13) | (1UL << 14) |
306 (1UL << 15) | (1UL << 16) | (1UL << 17) | (1UL << 18) | (1UL << 20) | (1UL << 21) |
307 (1UL << 22) | (1UL << 23) | (1UL << 24) | (1UL << 25) | (1UL << 26) | (1UL << 28) | (1UL << 30),
310
324
350
361typedef enum : uint32_t {
365
374typedef enum : uint32_t {
385 k_ra8_mipi_dsi_ferrsr_clear_all = (1UL << 0) | (1UL << 1) | (1UL << 2) | (1UL << 16) |
386 (1UL << 17) | (1UL << 18) | (1UL << 19) | (1UL << 20),
389
420
435
448
460typedef enum : uint32_t {
468 (1UL << 0) | (1UL << 4) | (1UL << 8) | (1UL << 20) | (1UL << 22) | (1UL << 23),
471
489
504
518
533
547
566
575typedef enum : uint32_t {
578
593
608
623typedef enum : uint32_t {
637 k_ra8_mipi_dsi_sqch_clear_all = (1UL << 4) | (1UL << 8) | (1UL << 16) | (1UL << 19) |
638 (1UL << 24) | (1UL << 26) | (1UL << 27) | (1UL << 28) |
639 (1UL << 29) | (1UL << 30),
642
663
676
693
708
719typedef struct {
720 volatile uint32_t A;
721 volatile uint32_t B;
722 volatile uint32_t C;
723 volatile uint32_t D;
725
749
764
778typedef struct {
779 volatile uint32_t ISR;
781 volatile uint32_t LINKSR;
782 volatile uint32_t
784 volatile uint32_t TXSETR;
785 volatile uint32_t HSCLKSETR;
786 volatile uint32_t ULPSSETR;
787 volatile uint32_t ULPSCR;
788 volatile uint32_t RSTCR;
789 volatile uint32_t RSTSR;
790 volatile uint32_t _r2[2];
791 volatile uint32_t DSISETR;
792 volatile uint32_t
794 volatile uint32_t TXPPD0R;
795 volatile uint32_t TXPPD1R;
796 volatile uint32_t TXPPD2R;
797 volatile uint32_t TXPPD3R;
798 volatile uint32_t
800 volatile uint32_t RXSR;
801 volatile uint32_t RXSCR;
802 volatile uint32_t RXIER;
803 volatile uint32_t _r5;
804 volatile uint32_t PRESPTOBTASETR;
805 volatile uint32_t PRESPTOLPSETR;
806 volatile uint32_t PRESPTOHSSETR;
807 volatile uint32_t _r6;
808 volatile uint32_t AKEPLATIR;
809 volatile uint32_t AKEPACMSR;
810 volatile uint32_t AKEPSCR;
811 volatile uint32_t _r7;
812 volatile uint32_t RXRSSR;
813 volatile uint32_t RXRSSCR;
814 volatile uint32_t RXRINFOOWSR;
815 volatile uint32_t RXRINFOOWSCR;
816 volatile uint32_t RXRSS0R;
817 volatile uint32_t RXRSS1R;
818 volatile uint32_t RXRSS2R;
819 volatile uint32_t RXRSS3R;
820 volatile uint32_t
822 volatile uint32_t RXPPD0R;
823 volatile uint32_t RXPPD1R;
824 volatile uint32_t RXPPD2R;
825 volatile uint32_t RXPPD3R;
826 volatile uint32_t
828 volatile uint32_t HSTXTOSETR;
829 volatile uint32_t LRXHTOSETR;
830 volatile uint32_t TATOSETR;
831 volatile uint32_t
833 volatile uint32_t FERRSR;
834 volatile uint32_t FERRSCR;
835 volatile uint32_t FERRIER;
836 volatile uint32_t _r11[2];
837 volatile uint32_t CLSTPTSETR;
838 volatile uint32_t LPTRNSTSETR;
839 volatile uint32_t _r12;
840 volatile uint32_t PLSR;
841 volatile uint32_t PLSCR;
842 volatile uint32_t PLIER;
843 volatile uint32_t
845 volatile uint32_t VMSET0R;
846 volatile uint32_t VMSET1R;
847 volatile uint32_t _r14[2];
848 volatile uint32_t VMSR;
849 volatile uint32_t VMSCR;
850 volatile uint32_t VMIER;
851 volatile uint32_t _r15;
852 volatile uint32_t VMPPSETR;
853 volatile uint32_t _r16;
854 volatile uint32_t VMVSSETR;
855 volatile uint32_t VMVPSETR;
856 volatile uint32_t VMHSSETR;
857 volatile uint32_t VMHPSETR;
858 volatile uint32_t
860 volatile uint32_t SQCH0SET0R;
861 volatile uint32_t
863 volatile uint32_t SQCH0SR;
864 volatile uint32_t SQCH0SCR;
865 volatile uint32_t SQCH0IER;
866 volatile uint32_t
868 volatile uint32_t SQCH1SET0R;
869 volatile uint32_t
871 volatile uint32_t SQCH1SR;
872 volatile uint32_t SQCH1SCR;
873 volatile uint32_t SQCH1IER;
874 volatile uint32_t
879
880static_assert(sizeof(r_mipi_dsi_descriptor_t) == 16U,
881 "r_mipi_dsi_descriptor_t must be 4 x uint32 = 16 bytes");
882static_assert(sizeof(r_mipi_dsi_regs_t) == (size_t)k_ra8_mipi_dsi_window_bytes,
883 "r_mipi_dsi_regs_t size must match HUM Ch 65 register window");
884static_assert(offsetof(r_mipi_dsi_regs_t, SQCH0DSC) == (size_t)k_ra8_mipi_dsi_offset_sqch0dsc,
885 "SQCH0DSC must land at offset 0x780");
886static_assert(offsetof(r_mipi_dsi_regs_t, SQCH1DSC) == (size_t)k_ra8_mipi_dsi_offset_sqch1dsc,
887 "SQCH1DSC must land at offset 0x800");
888static_assert(offsetof(r_mipi_dsi_regs_t, VMPPSETR) == (size_t)k_ra8_mipi_dsi_offset_vmppsetr,
889 "VMPPSETR must land at offset 0x420");
890static_assert(offsetof(r_mipi_dsi_regs_t, AKEPLATIR) == (size_t)k_ra8_mipi_dsi_offset_akeplatir,
891 "AKEPLATIR must land at offset 0x220");
892
917static inline volatile r_mipi_dsi_regs_t* ra8_mipi_dsi(void)
918{
920}
921
922#ifdef __cplusplus
923}
924#endif
Annotation-attribute framework macros for ra8-firmware.
#define RA8_HW_REGISTER_ACCESS
Mark an MMIO accessor function (returns volatile register pointer).
ra8_mipi_dsi_vmsr_t
Bit fields for VMSR / VMSCR / VMIER.
@ k_ra8_mipi_dsi_vmsr_clear_all
Mask of every defined VMSR bit – write to VMSCR to scrub.
@ k_ra8_mipi_dsi_vmsr_virdy
Video mode ready (started).
@ k_ra8_mipi_dsi_vmsr_running
Video mode running.
@ k_ra8_mipi_dsi_vmsr_timerr
Timing error.
@ k_ra8_mipi_dsi_vmsr_vbufovf
Video buffer overflow.
@ k_ra8_mipi_dsi_vmsr_stop
Video mode stopped.
@ k_ra8_mipi_dsi_vmsr_vbufudf
Video buffer underflow.
ra8_mipi_dsi_rxrssr_t
Bit fields for RXRSSR / RXRSSCR (receive-result slot valid).
@ k_ra8_mipi_dsi_rxrssr_slt1vld
Slot 1 valid flag.
@ k_ra8_mipi_dsi_rxrssr_slt0vld
Slot 0 valid flag.
@ k_ra8_mipi_dsi_rxrssr_slt2vld
Slot 2 valid flag.
@ k_ra8_mipi_dsi_rxrssr_slt3vld
Slot 3 valid flag.
ra8_mipi_dsi_vmppsetr_t
Bit fields for VMPPSETR (video-mode pixel-packet set).
@ k_ra8_mipi_dsi_vmpp_vc_shift
VC field position.
@ k_ra8_mipi_dsi_vmpp_vc_mask
VC[23:22] mask, used to clamp the virtual-channel field.
@ k_ra8_mipi_dsi_vmpp_txesync
Transmit end-of-sync.
@ k_ra8_mipi_dsi_vmpp_dt_shift
DT field position.
@ k_ra8_mipi_dsi_vmpp_dt_mask
DT[21:16] mask, used to clamp the data-type field.
ra8_mipi_dsi_hsclk_t
Bit fields for HSCLKSETR.
@ k_ra8_mipi_dsi_hsclk_start
HSCLST: HS clock start.
@ k_ra8_mipi_dsi_hsclk_continuous
HSCLMD: continuous mode.
ra8_mipi_dsi_rstcr_t
Bit fields for RSTCR (software reset control).
@ k_ra8_mipi_dsi_rstcr_ftxstp
Force Tx stop mode.
@ k_ra8_mipi_dsi_rstcr_swrst
Assert software reset.
ra8_mipi_dsi_presptohs_t
Bit fields for PRESPTOHSSETR (HS read/write timeouts).
@ k_ra8_mipi_dsi_presptohs_hsrto_shift
HSRTO position.
@ k_ra8_mipi_dsi_presptohs_hswto_mask
HSWTO[15:0].
@ k_ra8_mipi_dsi_presptohs_hsrto_mask
HSRTO[31:16] mask, sets the HS-mode peripheral read timeout.
ra8_mipi_dsi_busy_loop_t
Bounded poll iteration cap shared by every busy-wait helper.
@ k_ra8_mipi_dsi_busy_loop_max
Max iterations per wait.
ra8_mipi_dsi_rxrss_t
Decoded fields for an RXRSS slot value (header capture).
@ k_ra8_mipi_dsi_rxrss_rxcerr
Correctable error.
@ k_ra8_mipi_dsi_rxrss_fmt
Long-packet flag.
@ k_ra8_mipi_dsi_rxrss_data0_mask
DATA0 byte 1 of pkt.
@ k_ra8_mipi_dsi_rxrss_rxfail
Receive fail.
@ k_ra8_mipi_dsi_rxrss_rxsuc
Receive success.
@ k_ra8_mipi_dsi_rxrss_data1_mask
DATA1 byte 2 of pkt.
@ k_ra8_mipi_dsi_rxrss_rxpfail
Packet data fail.
@ k_ra8_mipi_dsi_rxrss_vc_mask
Virtual channel.
@ k_ra8_mipi_dsi_rxrss_dt_mask
DT data type bits.
@ k_ra8_mipi_dsi_rxrss_rxferr
Fatal error.
@ k_ra8_mipi_dsi_rxrss_infoow
Info overwritten.
@ k_ra8_mipi_dsi_rxrss_rxake
Ack/error report.
ra8_mipi_dsi_ferrsr_t
Bit fields for FERRSR / FERRSCR / FERRIER (fatal errors).
@ k_ra8_mipi_dsi_ferrsr_htxto
HS Tx timeout.
@ k_ra8_mipi_dsi_ferrsr_clear_all
RW1C-able fields in FERRSCR (status-only bits 27/28 excluded).
@ k_ra8_mipi_dsi_ferrsr_syncesc
LPDT sync error.
@ k_ra8_mipi_dsi_ferrsr_clp1
LP1 contention error.
@ k_ra8_mipi_dsi_ferrsr_ctrl
Control error.
@ k_ra8_mipi_dsi_ferrsr_clp1s
LP1 contention status (RO).
@ k_ra8_mipi_dsi_ferrsr_clp0
LP0 contention error.
@ k_ra8_mipi_dsi_ferrsr_clp0s
LP0 contention status (RO).
@ k_ra8_mipi_dsi_ferrsr_tato
Turnaround ack timeout.
@ k_ra8_mipi_dsi_ferrsr_escent
Escape-mode entry error.
@ k_ra8_mipi_dsi_ferrsr_lrxhto
LP-RX host timeout.
ra8_mipi_dsi_reserved_words_t
Reserved-word array sizes (in 32-bit words) used by the host register block to keep named offsets ali...
@ k_ra8_mipi_dsi_rsv_words_sqch0_ier_to_ch1
+0x5DC..0x5FC gap.
@ k_ra8_mipi_dsi_rsv_words_rxppd_to_hstxto
+0x2D0..0x2DC gap.
@ k_ra8_mipi_dsi_rsv_words_isr_to_linksr
+0x004..0x00C gap.
@ k_ra8_mipi_dsi_rsv_words_dsisetr_to_txppd
+0x124..0x15C gap.
@ k_ra8_mipi_dsi_rsv_words_sqch1_ier_to_dsc
+0x61C..0x77C gap.
@ k_ra8_mipi_dsi_rsv_words_txppd_to_rxsr
+0x170..0x1FC gap.
@ k_ra8_mipi_dsi_rsv_words_linksr_to_txsetr
+0x014..0x0FC gap.
@ k_ra8_mipi_dsi_rsv_words_tato_to_ferrsr
+0x2EC..0x2FC gap.
@ k_ra8_mipi_dsi_rsv_words_hsporch_to_sqch0
+0x438..0x5BC gap.
@ k_ra8_mipi_dsi_rsv_words_sqch0_set0_to_sr
+0x5C4..0x5CC gap.
@ k_ra8_mipi_dsi_rsv_words_rxrss_to_rxppd
+0x250..0x2BC gap.
@ k_ra8_mipi_dsi_rsv_words_plier_to_vmset
+0x32C..0x3FC gap.
ra8_mipi_dsi_vmset0_t
Bit fields for VMSET0R (video-mode set 0).
@ k_ra8_mipi_dsi_vmset0_hsanolp
HSA period stays HS.
@ k_ra8_mipi_dsi_vmset0_hfpnolp
HFP period stays HS.
@ k_ra8_mipi_dsi_vmset0_vstop
VSTOP : request video stop.
@ k_ra8_mipi_dsi_vmset0_vstart
VSTART: start video mode.
@ k_ra8_mipi_dsi_vmset0_hbpnolp
HBP period stays HS.
ra8_mipi_dsi_vmhssetr_t
Bit fields for VMHSSETR (horizontal sync timing).
@ k_ra8_mipi_dsi_vmhs_hact_shift
HACT shift.
@ k_ra8_mipi_dsi_vmhs_hsa_mask
HSA[11:0].
@ k_ra8_mipi_dsi_vmhs_hact_mask
HACT[30:16].
@ k_ra8_mipi_dsi_vmhs_hspol
HSYNC polarity.
ra8_mipi_dsi_vmhpsetr_t
Bit fields for VMHPSETR (horizontal porch timing).
@ k_ra8_mipi_dsi_vmhp_hfp_mask
HFP[28:16].
@ k_ra8_mipi_dsi_vmhp_hfp_shift
HFP shift.
@ k_ra8_mipi_dsi_vmhp_hbp_mask
HBP[12:0].
ra8_mipi_dsi_bta_t
Bus Turn Around (BTA) selector for descriptor word A.
@ k_ra8_mipi_dsi_bta_none
No bus-turnaround.
@ k_ra8_mipi_dsi_bta_after
BTA after Tx (default ack request).
@ k_ra8_mipi_dsi_bta_read
BTA followed by read.
@ k_ra8_mipi_dsi_bta_no_write
Immediate BTA, no write first.
ra8_mipi_dsi_size_t
Window size and key constants for the MIPI DSI block.
@ k_ra8_mipi_dsi_max_lp_bytes
LP (ch 0) max long-pkt size.
@ k_ra8_mipi_dsi_max_lanes
D-PHY lane configurations 1/2.
@ k_ra8_mipi_dsi_descriptors
8 descriptors per channel.
@ k_ra8_mipi_dsi_max_hs_bytes
HS (ch 1) max long-pkt size.
@ k_ra8_mipi_dsi_rx_slots
RXRSS0..3 receive slot count.
@ k_ra8_mipi_dsi_payload_max
TXPPD bytes (4 x 32-bit regs).
@ k_ra8_mipi_dsi_window_bytes
Total MMIO window (FSP size).
ra8_mipi_dsi_vmset1_t
Bit fields for VMSET1R (video-mode set 1: pipeline delay).
@ k_ra8_mipi_dsi_vmset1_dly_mask
DLY[13:2] field mask.
@ k_ra8_mipi_dsi_vmset1_dly_shift
DLY position.
ra8_mipi_dsi_txset_t
Bit fields for TXSETR (lane configuration).
@ k_ra8_mipi_dsi_txset_lane2
NUMLANE = 1: 2 data lanes.
@ k_ra8_mipi_dsi_txset_lane1
NUMLANE = 0: 1 data lane.
@ k_ra8_mipi_dsi_txset_dlen
DLEN: data-lane enable.
@ k_ra8_mipi_dsi_txset_clen
CLEN: clock-lane enable.
ra8_mipi_dsi_vmvssetr_t
Bit fields for VMVSSETR (vertical sync timing).
@ k_ra8_mipi_dsi_vmvs_vact_shift
VACT shift.
@ k_ra8_mipi_dsi_vmvs_vspol
VSYNC polarity.
@ k_ra8_mipi_dsi_vmvs_vact_mask
VACT[30:16].
@ k_ra8_mipi_dsi_vmvs_vsa_mask
VSA[11:0].
static volatile r_mipi_dsi_regs_t * ra8_mipi_dsi(void)
Pointer to the RA8D2 MIPI DSI host register block.
ra8_mipi_dsi_clstpt_t
Bit fields for CLSTPTSETR (clock-lane stop / beforehand / keep).
@ k_ra8_mipi_dsi_clstpt_clkkpt_shift
CLKKPT pos.
@ k_ra8_mipi_dsi_clstpt_clkstpt_shift
CLKSTPT pos.
@ k_ra8_mipi_dsi_clstpt_clkstpt_mask
CLKSTPT[11:2].
@ k_ra8_mipi_dsi_clstpt_clkkpt_mask
CLKKPT[31:24] mask, sets the HS-to-LP clock keep time.
@ k_ra8_mipi_dsi_clstpt_clkbfht_mask
CLKBFHT[23:16] mask, sets the LP-to-HS clock guard time.
@ k_ra8_mipi_dsi_clstpt_clkbfht_shift
CLKBFHT pos.
ra8_mipi_dsi_addr_t
Memory-mapped base addresses for the MIPI DSI host.
@ k_ra8_mipi_dsi_base_addr_s
Secure-world MMIO base.
@ k_ra8_mipi_dsi_base_addr_ns
Non-Secure alias base.
ra8_mipi_dsi_dsc0b_t
SQCH*DSC?BR (descriptor word B) DTSEL field.
@ k_ra8_mipi_dsi_dsc0b_dtsel_seqrm
Use sequence RAM.
@ k_ra8_mipi_dsi_dsc0b_dtsel_txppd
Use TXPPD0..3R buffer.
ra8_mipi_dsi_offset_t
Verified MMIO offsets (in bytes) of select named registers.
@ k_ra8_mipi_dsi_offset_sqch1dsc
SQCH1DSC[0] offset.
@ k_ra8_mipi_dsi_offset_akeplatir
AKEPLATIR offset.
@ k_ra8_mipi_dsi_offset_vmppsetr
VMPPSETR offset.
@ k_ra8_mipi_dsi_offset_sqch0dsc
SQCH0DSC[0] offset.
ra8_mipi_dsi_lptrnst_t
Bit fields for LPTRNSTSETR (LP transition timing).
@ k_ra8_mipi_dsi_lptrnst_golpbkt_mask
GOLPBKT[9:0].
ra8_mipi_dsi_isr_mask_t
Bit masks for the top-level Interrupt Status Register (ISR).
@ k_ra8_mipi_dsi_isr_rcv
Receive interrupt.
@ k_ra8_mipi_dsi_isr_sq1
Sequence channel 1 interrupt.
@ k_ra8_mipi_dsi_isr_ppi
PPI (D-PHY) interrupt.
@ k_ra8_mipi_dsi_isr_ferr
Fatal-error interrupt.
@ k_ra8_mipi_dsi_isr_vm
Video-mode interrupt.
@ k_ra8_mipi_dsi_isr_sq0
Sequence channel 0 interrupt.
ra8_mipi_dsi_rstsr_t
Bit fields for RSTSR (software reset status).
@ k_ra8_mipi_dsi_rstsr_rstlp
LP subsystem in reset.
@ k_ra8_mipi_dsi_rstsr_rstv
Video subsystem in reset.
@ k_ra8_mipi_dsi_rstsr_all_reset
Composite mask: HS|LP|APB|AXI|V (all 5 reset bits).
@ k_ra8_mipi_dsi_rstsr_dl0stp
Data lane 0 stopped.
@ k_ra8_mipi_dsi_rstsr_rstaxi
AXI bridge in reset.
@ k_ra8_mipi_dsi_rstsr_rstapb
APB bridge in reset.
@ k_ra8_mipi_dsi_rstsr_dl0dir
Data lane 0 direction.
@ k_ra8_mipi_dsi_rstsr_rsths
HS subsystem in reset.
@ k_ra8_mipi_dsi_rstsr_dl1stp
Data lane 1 stopped.
ra8_mipi_dsi_ulpscr_t
Bit fields for ULPSCR.
@ k_ra8_mipi_dsi_ulpscr_dlexit
Data-lane ULPS exit.
@ k_ra8_mipi_dsi_ulpscr_dlent
Data-lane ULPS enter.
@ k_ra8_mipi_dsi_ulpscr_clexit
Clock-lane ULPS exit.
@ k_ra8_mipi_dsi_ulpscr_clent
Clock-lane ULPS enter.
ra8_mipi_dsi_presptolp_t
Bit fields for PRESPTOLPSETR (LP read/write timeouts).
@ k_ra8_mipi_dsi_presptolp_lpwto_mask
LPWTO[15:0].
@ k_ra8_mipi_dsi_presptolp_lprto_shift
LPRTO position.
@ k_ra8_mipi_dsi_presptolp_lprto_mask
LPRTO[31:16] mask, sets the LP-mode peripheral read timeout.
ra8_mipi_dsi_akep_t
Bit fields for AKEPLATIR / AKEPACMSR / AKEPSCR.
@ k_ra8_mipi_dsi_akep_vc_mask
Virtual channel id.
@ k_ra8_mipi_dsi_akep_erep_mask
16-bit error report.
ra8_mipi_dsi_rxrinfoowscr_t
Bit masks for RXRINFOOWSCR (receive-result info-overwrite clear).
@ k_ra8_mipi_dsi_rxrinfoow_sl2
Slot 2 overwrite flag.
@ k_ra8_mipi_dsi_rxrinfoow_sl0
Slot 0 overwrite flag.
@ k_ra8_mipi_dsi_rxrinfoow_sl3
Slot 3 overwrite flag.
@ k_ra8_mipi_dsi_rxrinfoow_sl1
Slot 1 overwrite flag.
ra8_mipi_dsi_rxsr_t
Bit fields for RXSR / RXSCR / RXIER (receive status path).
@ k_ra8_mipi_dsi_rxsr_prtoerr
Peripheral resp timeout.
@ k_ra8_mipi_dsi_rxsr_btarend
BTA request end.
@ k_ra8_mipi_dsi_rxsr_rxresp
Response packet received.
@ k_ra8_mipi_dsi_rxsr_rxte
Tearing-effect trigger rx.
@ k_ra8_mipi_dsi_rxsr_rxeotp
EoTp received.
@ k_ra8_mipi_dsi_rxsr_rxack
ACK trigger received.
@ k_ra8_mipi_dsi_rxsr_rxake
Ack-and-error report rx.
@ k_ra8_mipi_dsi_rxsr_wcerr
Word count error.
@ k_ra8_mipi_dsi_rxsr_iberr
Internal bus error.
@ k_ra8_mipi_dsi_rxsr_rsizeerr
Return packet size error.
@ k_ra8_mipi_dsi_rxsr_crcerr
CRC error.
@ k_ra8_mipi_dsi_rxsr_lrxhto
LP-RX host processor TO.
@ k_ra8_mipi_dsi_rxsr_eccerrm
Multi-bit ECC error.
@ k_ra8_mipi_dsi_rxsr_extedet
External TE detect.
@ k_ra8_mipi_dsi_rxsr_mlferr
Malform error.
@ k_ra8_mipi_dsi_rxsr_tato
Turnaround ack timeout.
@ k_ra8_mipi_dsi_rxsr_unexerr
Unexpected packet error.
@ k_ra8_mipi_dsi_rxsr_clear_all
Mask of every defined RXSR bit – write to RXSCR to scrub.
@ k_ra8_mipi_dsi_rxsr_eccerrs
Single-bit ECC error.
@ k_ra8_mipi_dsi_rxsr_noreserr
No response error.
@ k_ra8_mipi_dsi_rxsr_rxovferr
Receive buffer overflow.
ra8_mipi_dsi_plsr_t
Bit fields for PLSR / PLSCR / PLIER (PHY/PPI lane status).
@ k_ra8_mipi_dsi_plsr_dl1stp
DL1 stop status.
@ k_ra8_mipi_dsi_plsr_dl1uan
DL1 UlpsActiveNot.
@ k_ra8_mipi_dsi_plsr_cluan
CL UlpsActiveNot status.
@ k_ra8_mipi_dsi_plsr_clhs2lp
CL HS-to-LP transition.
@ k_ra8_mipi_dsi_plsr_dl0dir
DL0 direction.
@ k_ra8_mipi_dsi_plsr_dl0rle
DL0 RxLpdtEsc status.
@ k_ra8_mipi_dsi_plsr_clulpent
CL ULPS enter event.
@ k_ra8_mipi_dsi_plsr_dl0uan
DL0 UlpsActiveNot.
@ k_ra8_mipi_dsi_plsr_dl0rx2tx
DL0 RX-to-TX transition.
@ k_ra8_mipi_dsi_plsr_dl0rue
DL0 RxUlpsEsc status.
@ k_ra8_mipi_dsi_plsr_dlulpext
DL ULPS exit event.
@ k_ra8_mipi_dsi_plsr_clstp
CL stop status.
@ k_ra8_mipi_dsi_plsr_dl0tx2rx
DL0 TX-to-RX transition.
@ k_ra8_mipi_dsi_plsr_cllp2hs
CL LP-to-HS transition.
@ k_ra8_mipi_dsi_plsr_dlulpent
DL ULPS enter event.
@ k_ra8_mipi_dsi_plsr_dl0stp
DL0 stop status.
@ k_ra8_mipi_dsi_plsr_clulpext
CL ULPS exit event.
@ k_ra8_mipi_dsi_plsr_clear_all
Bit subset that is RW1C in PLSCR (steady-state lane bits aren't).
ra8_mipi_dsi_vmvpsetr_t
Bit fields for VMVPSETR (vertical porch timing).
@ k_ra8_mipi_dsi_vmvp_vfp_mask
VFP[28:16].
@ k_ra8_mipi_dsi_vmvp_vbp_mask
VBP[12:0].
@ k_ra8_mipi_dsi_vmvp_vfp_shift
VFP shift.
ra8_mipi_dsi_sqch_t
Bit fields for SQCH0SET0R / SQCH1SET0R / SQCH*SR.
@ k_ra8_mipi_dsi_sqch_rxpfail
RXPFAIL: Rx packet fail.
@ k_ra8_mipi_dsi_sqch_dabort
DABORT: descriptor abort.
@ k_ra8_mipi_dsi_sqch_txiberr
TXIBERR: Tx int-bus error.
@ k_ra8_mipi_dsi_sqch_rxfail
RXFAIL: Rx fail.
@ k_ra8_mipi_dsi_sqch_rxcorerr
RXCORERR: Rx correctable.
@ k_ra8_mipi_dsi_sqch_sizeerr
SIZEERR: packet size error.
@ k_ra8_mipi_dsi_sqch_rxferr
RXFERR: Rx fatal error.
@ k_ra8_mipi_dsi_sqch_start
START: kick sequence.
@ k_ra8_mipi_dsi_sqch_chsel
Channel-select bit (FSP).
@ k_ra8_mipi_dsi_sqch_adesfin
ADESFIN: all descriptors.
@ k_ra8_mipi_dsi_sqch_clear_all
Mask of every RW1C bit in SQCH*SCR.
@ k_ra8_mipi_dsi_sqch_rxake
RXAKE: ack/error report rx.
@ k_ra8_mipi_dsi_sqch_running
RUNNING flag in *SR.
@ k_ra8_mipi_dsi_sqch_aactfin
AACTFIN: all actions done.
ra8_mipi_dsi_linksr_mask_t
Bit masks for the Link Status Register (LINKSR).
@ k_ra8_mipi_dsi_link_vrun
Video-mode operation running.
@ k_ra8_mipi_dsi_link_sq1run
Sequence ch 1 running.
@ k_ra8_mipi_dsi_link_lpbusy
LP operation busy.
@ k_ra8_mipi_dsi_link_hsbusy
HS operation busy.
@ k_ra8_mipi_dsi_link_sq0run
Sequence ch 0 running.
ra8_mipi_dsi_dsc0a_shift_t
Bit shifts for SQCH*DSC?AR (descriptor word A).
@ k_ra8_mipi_dsi_dsc0a_shift_bta
Bus Turn Around bits.
@ k_ra8_mipi_dsi_dsc0a_shift_spd
0 = HS, 1 = LP escape.
@ k_ra8_mipi_dsi_dsc0a_shift_data0
Byte 1 of short packet.
@ k_ra8_mipi_dsi_dsc0a_shift_fmt
0 = short packet, 1 = long.
@ k_ra8_mipi_dsi_dsc0a_shift_data1
Byte 2 of short packet.
@ k_ra8_mipi_dsi_dsc0a_shift_dt
DSI data type (cmd id).
@ k_ra8_mipi_dsi_dsc0a_shift_nxact
Next-action bits.
@ k_ra8_mipi_dsi_dsc0a_shift_vc
Virtual channel.
ra8_mipi_dsi_dsisetr_t
Bit fields for DSISETR (DSI link configuration).
@ k_ra8_mipi_dsi_dsisetr_extemd
External tearing detect.
@ k_ra8_mipi_dsi_dsisetr_vc3crcen
VC-3 CRC check enable.
@ k_ra8_mipi_dsi_dsisetr_vc_crc_mask
Mask for the four per-VC CRC enable bits.
@ k_ra8_mipi_dsi_dsisetr_mrpsz_mask
MRPSZ field mask.
@ k_ra8_mipi_dsi_dsisetr_eccen
ECC check enable.
@ k_ra8_mipi_dsi_dsisetr_vc0crcen
VC-0 CRC check enable.
@ k_ra8_mipi_dsi_dsisetr_scren
Data scramble enable.
@ k_ra8_mipi_dsi_dsisetr_eotpen
HS Tx EoTp enable.
@ k_ra8_mipi_dsi_dsisetr_vc2crcen
VC-2 CRC check enable.
@ k_ra8_mipi_dsi_dsisetr_vc1crcen
VC-1 CRC check enable.
ra8_mipi_dsi_dsc0c_t
SQCH*DSC?CR (descriptor word C) bit fields.
@ k_ra8_mipi_dsi_dsc0c_actcode_shift
Action code shift.
@ k_ra8_mipi_dsi_dsc0c_auxop
Auxiliary op flag.
@ k_ra8_mipi_dsi_dsc0c_finact
Finish action flag.
@ k_ra8_mipi_dsi_dsc0c_actcode_mask
ACTCODE[31:24].
One sequence-channel descriptor slot (4 x 32-bit registers).
volatile uint32_t D
Descriptor word D: payload buffer address.
volatile uint32_t A
Descriptor word A: packet header.
volatile uint32_t C
Descriptor word C: action / finish.
volatile uint32_t B
Descriptor word B: payload select.
MIPI DSI host register block (full layout).
volatile uint32_t VMSET1R
+0x404 Video-mode set 1.
volatile uint32_t VMHSSETR
+0x430 Horizontal sync timing.
volatile uint32_t _r10[k_ra8_mipi_dsi_rsv_words_tato_to_ferrsr]
+0x2EC..0x2FC reserved.
volatile uint32_t RSTCR
+0x110 Software reset control.
volatile uint32_t DSISETR
+0x120 DSI link configuration.
volatile uint32_t VMVPSETR
+0x42C Vertical porch timing.
volatile uint32_t SQCH0IER
+0x5D8 Sequence ch 0 int enable.
volatile uint32_t CLSTPTSETR
+0x314 Clock-lane stop time.
volatile uint32_t AKEPACMSR
+0x224 Ack/err accumulated (RO).
volatile uint32_t TATOSETR
+0x2E8 Turnaround ack timeout.
volatile uint32_t LPTRNSTSETR
+0x318 LP transition time.
volatile uint32_t VMSCR
+0x414 Video-mode status clear.
volatile uint32_t TXSETR
+0x100 Lane enable + count.
volatile uint32_t SQCH1SR
+0x610 Sequence ch 1 status (RO).
volatile uint32_t VMVSSETR
+0x428 Vertical sync timing.
volatile uint32_t _r19[k_ra8_mipi_dsi_rsv_words_sqch0_ier_to_ch1]
+0x5DC..0x5FC reserved.
volatile uint32_t VMPPSETR
+0x420 Video pixel-packet set.
volatile uint32_t AKEPLATIR
+0x220 Ack/err report latest (RO).
volatile uint32_t FERRIER
+0x308 Fatal-error int enable.
volatile uint32_t _r2[2]
+0x118..0x11C reserved.
volatile uint32_t _r4[k_ra8_mipi_dsi_rsv_words_txppd_to_rxsr]
+0x170..0x1FC reserved.
volatile uint32_t SQCH1IER
+0x618 Sequence ch 1 int enable.
volatile uint32_t LINKSR
+0x010 Link status (RO).
volatile uint32_t RXRSSCR
+0x234 Rx result save clear.
volatile uint32_t RXRSS0R
+0x240 Rx result save slot 0.
volatile uint32_t _r15
+0x41C reserved.
volatile uint32_t SQCH0SCR
+0x5D4 Sequence ch 0 clear.
volatile uint32_t _r18[k_ra8_mipi_dsi_rsv_words_sqch0_set0_to_sr]
+0x5C4..0x5CC reserved.
volatile uint32_t _r6
+0x21C reserved.
volatile uint32_t _r17[k_ra8_mipi_dsi_rsv_words_hsporch_to_sqch0]
+0x438..0x5BC reserved.
volatile uint32_t PRESPTOHSSETR
+0x218 Peripheral resp TO (HS).
volatile uint32_t _r8[k_ra8_mipi_dsi_rsv_words_rxrss_to_rxppd]
+0x250..0x2BC reserved.
volatile uint32_t SQCH1SET0R
+0x600 Sequence ch 1 START bit.
volatile uint32_t TXPPD0R
+0x160 Tx packet payload data 0.
volatile uint32_t RXSCR
+0x204 Receive status clear.
volatile uint32_t VMSET0R
+0x400 Video-mode set 0.
volatile uint32_t VMSR
+0x410 Video-mode status (RO).
volatile uint32_t _r5
+0x20C reserved.
volatile uint32_t SQCH0SET0R
+0x5C0 Sequence ch 0 START bit.
volatile uint32_t _r0[k_ra8_mipi_dsi_rsv_words_isr_to_linksr]
+0x004..0x00C reserved.
volatile uint32_t VMIER
+0x418 Video-mode int enable.
volatile uint32_t _r7
+0x22C reserved.
volatile uint32_t _r21[k_ra8_mipi_dsi_rsv_words_sqch1_ier_to_dsc]
+0x61C..0x77C reserved.
volatile uint32_t PLSR
+0x320 PHY (PPI) status (RO).
volatile uint32_t RXRSS2R
+0x248 Rx result save slot 2.
volatile uint32_t ULPSCR
+0x10C ULPS enter/exit pulses.
volatile uint32_t _r14[2]
+0x408..0x40C reserved.
volatile uint32_t RXRSS1R
+0x244 Rx result save slot 1.
volatile uint32_t LRXHTOSETR
+0x2E4 LP-RX host timeout.
volatile uint32_t RXRINFOOWSR
+0x238 Rx info-overwrite status.
volatile uint32_t RXRSS3R
+0x24C Rx result save slot 3.
volatile uint32_t RXRSSR
+0x230 Rx result save status.
volatile uint32_t RXPPD1R
+0x2C4 Rx packet payload data 1.
r_mipi_dsi_descriptor_t SQCH0DSC[8]
+0x780..0x7FC ch0 desc 0..7.
volatile uint32_t RXPPD3R
+0x2CC Rx packet payload data 3.
volatile uint32_t PLIER
+0x328 PHY interrupt enable.
volatile uint32_t RXIER
+0x208 Receive interrupt enable.
volatile uint32_t HSTXTOSETR
+0x2E0 HS Tx timeout count.
volatile uint32_t _r9[k_ra8_mipi_dsi_rsv_words_rxppd_to_hstxto]
+0x2D0..0x2DC reserved.
volatile uint32_t TXPPD3R
+0x16C Tx packet payload data 3.
volatile uint32_t AKEPSCR
+0x228 Ack/err clear.
volatile uint32_t ULPSSETR
+0x108 ULPS wakeup period.
volatile uint32_t RXSR
+0x200 Receive status (RO).
volatile uint32_t FERRSR
+0x300 Fatal-error status (RO).
volatile uint32_t _r1[k_ra8_mipi_dsi_rsv_words_linksr_to_txsetr]
+0x014..0x0FC reserved.
volatile uint32_t SQCH1SCR
+0x614 Sequence ch 1 clear.
volatile uint32_t HSCLKSETR
+0x104 HS clock control.
volatile uint32_t TXPPD1R
+0x164 Tx packet payload data 1.
volatile uint32_t _r3[k_ra8_mipi_dsi_rsv_words_dsisetr_to_txppd]
+0x124..0x15C reserved.
volatile uint32_t ISR
+0x000 IRQ status (RO).
volatile uint32_t _r13[k_ra8_mipi_dsi_rsv_words_plier_to_vmset]
+0x32C..0x3FC reserved.
volatile uint32_t VMHPSETR
+0x434 Horizontal porch timing.
volatile uint32_t _r20[k_ra8_mipi_dsi_rsv_words_sqch0_set0_to_sr]
+0x604..0x60C reserved.
volatile uint32_t RXPPD0R
+0x2C0 Rx packet payload data 0.
r_mipi_dsi_descriptor_t SQCH1DSC[8]
+0x800..0x87C ch1 desc 0..7.
volatile uint32_t PLSCR
+0x324 PHY status clear.
volatile uint32_t SQCH0SR
+0x5D0 Sequence ch 0 status (RO).
volatile uint32_t PRESPTOLPSETR
+0x214 Peripheral resp TO (LP).
volatile uint32_t TXPPD2R
+0x168 Tx packet payload data 2.
volatile uint32_t _r16
+0x424 reserved.
volatile uint32_t FERRSCR
+0x304 Fatal-error status clear.
volatile uint32_t _r11[2]
+0x30C..0x310 reserved.
volatile uint32_t _r12
+0x31C reserved.
volatile uint32_t RSTSR
+0x114 Software reset status (RO).
volatile uint32_t PRESPTOBTASETR
+0x210 Peripheral resp TO (BTA).
volatile uint32_t RXRINFOOWSCR
+0x23C Rx info-overwrite clear.
volatile uint32_t RXPPD2R
+0x2C8 Rx packet payload data 2.