|
@@ -1576,3 +1576,147 @@
|
|
#define MDREFR_TRASR Fld (4, 0)
|
|
#define MDREFR_TRASR Fld (4, 0)
|
|
#define MDREFR_DRI Fld (12, 4)
|
|
#define MDREFR_DRI Fld (12, 4)
|
|
#define MDREFR_E0PIN (1 << 16)
|
|
#define MDREFR_E0PIN (1 << 16)
|
|
|
|
+#define MDREFR_K0RUN (1 << 17)
|
|
|
|
+#define MDREFR_K0DB2 (1 << 18)
|
|
|
|
+#define MDREFR_E1PIN (1 << 20)
|
|
|
|
+#define MDREFR_K1RUN (1 << 21)
|
|
|
|
+#define MDREFR_K1DB2 (1 << 22)
|
|
|
|
+#define MDREFR_K2RUN (1 << 25)
|
|
|
|
+#define MDREFR_K2DB2 (1 << 26)
|
|
|
|
+#define MDREFR_EAPD (1 << 28)
|
|
|
|
+#define MDREFR_KAPD (1 << 29)
|
|
|
|
+#define MDREFR_SLFRSH (1 << 31)
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+/*
|
|
|
|
+ * Direct Memory Access (DMA) control registers
|
|
|
|
+ */
|
|
|
|
+#define DMA_SIZE (6 * 0x20)
|
|
|
|
+#define DMA_PHYS 0xb0000000
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+/*
|
|
|
|
+ * Liquid Crystal Display (LCD) control registers
|
|
|
|
+ *
|
|
|
|
+ * Registers
|
|
|
|
+ * LCCR0 Liquid Crystal Display (LCD) Control Register 0
|
|
|
|
+ * (read/write).
|
|
|
|
+ * [Bits LDM, BAM, and ERM are only implemented in
|
|
|
|
+ * versions 2.0 (rev. = 8) and higher of the StrongARM
|
|
|
|
+ * SA-1100.]
|
|
|
|
+ * LCSR Liquid Crystal Display (LCD) Status Register
|
|
|
|
+ * (read/write).
|
|
|
|
+ * [Bit LDD can be only read in versions 1.0 (rev. = 1)
|
|
|
|
+ * and 1.1 (rev. = 2) of the StrongARM SA-1100, it can be
|
|
|
|
+ * read and written (cleared) in versions 2.0 (rev. = 8)
|
|
|
|
+ * and higher.]
|
|
|
|
+ * DBAR1 Liquid Crystal Display (LCD) Direct Memory Access
|
|
|
|
+ * (DMA) Base Address Register channel 1 (read/write).
|
|
|
|
+ * DCAR1 Liquid Crystal Display (LCD) Direct Memory Access
|
|
|
|
+ * (DMA) Current Address Register channel 1 (read).
|
|
|
|
+ * DBAR2 Liquid Crystal Display (LCD) Direct Memory Access
|
|
|
|
+ * (DMA) Base Address Register channel 2 (read/write).
|
|
|
|
+ * DCAR2 Liquid Crystal Display (LCD) Direct Memory Access
|
|
|
|
+ * (DMA) Current Address Register channel 2 (read).
|
|
|
|
+ * LCCR1 Liquid Crystal Display (LCD) Control Register 1
|
|
|
|
+ * (read/write).
|
|
|
|
+ * [The LCCR1 register can be only written in
|
|
|
|
+ * versions 1.0 (rev. = 1) and 1.1 (rev. = 2) of the
|
|
|
|
+ * StrongARM SA-1100, it can be written and read in
|
|
|
|
+ * versions 2.0 (rev. = 8) and higher.]
|
|
|
|
+ * LCCR2 Liquid Crystal Display (LCD) Control Register 2
|
|
|
|
+ * (read/write).
|
|
|
|
+ * [The LCCR1 register can be only written in
|
|
|
|
+ * versions 1.0 (rev. = 1) and 1.1 (rev. = 2) of the
|
|
|
|
+ * StrongARM SA-1100, it can be written and read in
|
|
|
|
+ * versions 2.0 (rev. = 8) and higher.]
|
|
|
|
+ * LCCR3 Liquid Crystal Display (LCD) Control Register 3
|
|
|
|
+ * (read/write).
|
|
|
|
+ * [The LCCR1 register can be only written in
|
|
|
|
+ * versions 1.0 (rev. = 1) and 1.1 (rev. = 2) of the
|
|
|
|
+ * StrongARM SA-1100, it can be written and read in
|
|
|
|
+ * versions 2.0 (rev. = 8) and higher. Bit PCP is only
|
|
|
|
+ * implemented in versions 2.0 (rev. = 8) and higher of
|
|
|
|
+ * the StrongARM SA-1100.]
|
|
|
|
+ *
|
|
|
|
+ * Clocks
|
|
|
|
+ * fcpu, Tcpu Frequency, period of the CPU core clock (CCLK).
|
|
|
|
+ * fmem, Tmem Frequency, period of the memory clock (fmem = fcpu/2).
|
|
|
|
+ * fpix, Tpix Frequency, period of the pixel clock.
|
|
|
|
+ * fln, Tln Frequency, period of the line clock.
|
|
|
|
+ * fac, Tac Frequency, period of the AC bias clock.
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+#define LCD_PEntrySp 2 /* LCD Palette Entry Space [byte] */
|
|
|
|
+#define LCD_4BitPSp /* LCD 4-Bit pixel Palette Space */ \
|
|
|
|
+ /* [byte] */ \
|
|
|
|
+ (16*LCD_PEntrySp)
|
|
|
|
+#define LCD_8BitPSp /* LCD 8-Bit pixel Palette Space */ \
|
|
|
|
+ /* [byte] */ \
|
|
|
|
+ (256*LCD_PEntrySp)
|
|
|
|
+#define LCD_12_16BitPSp /* LCD 12/16-Bit pixel */ \
|
|
|
|
+ /* dummy-Palette Space [byte] */ \
|
|
|
|
+ (16*LCD_PEntrySp)
|
|
|
|
+
|
|
|
|
+#define LCD_PGrey Fld (4, 0) /* LCD Palette entry Grey value */
|
|
|
|
+#define LCD_PBlue Fld (4, 0) /* LCD Palette entry Blue value */
|
|
|
|
+#define LCD_PGreen Fld (4, 4) /* LCD Palette entry Green value */
|
|
|
|
+#define LCD_PRed Fld (4, 8) /* LCD Palette entry Red value */
|
|
|
|
+#define LCD_PBS Fld (2, 12) /* LCD Pixel Bit Size */
|
|
|
|
+#define LCD_4Bit /* LCD 4-Bit pixel mode */ \
|
|
|
|
+ (0 << FShft (LCD_PBS))
|
|
|
|
+#define LCD_8Bit /* LCD 8-Bit pixel mode */ \
|
|
|
|
+ (1 << FShft (LCD_PBS))
|
|
|
|
+#define LCD_12_16Bit /* LCD 12/16-Bit pixel mode */ \
|
|
|
|
+ (2 << FShft (LCD_PBS))
|
|
|
|
+
|
|
|
|
+#define LCD_Int0_0 0x0 /* LCD Intensity = 0.0% = 0 */
|
|
|
|
+#define LCD_Int11_1 0x1 /* LCD Intensity = 11.1% = 1/9 */
|
|
|
|
+#define LCD_Int20_0 0x2 /* LCD Intensity = 20.0% = 1/5 */
|
|
|
|
+#define LCD_Int26_7 0x3 /* LCD Intensity = 26.7% = 4/15 */
|
|
|
|
+#define LCD_Int33_3 0x4 /* LCD Intensity = 33.3% = 3/9 */
|
|
|
|
+#define LCD_Int40_0 0x5 /* LCD Intensity = 40.0% = 2/5 */
|
|
|
|
+#define LCD_Int44_4 0x6 /* LCD Intensity = 44.4% = 4/9 */
|
|
|
|
+#define LCD_Int50_0 0x7 /* LCD Intensity = 50.0% = 1/2 */
|
|
|
|
+#define LCD_Int55_6 0x8 /* LCD Intensity = 55.6% = 5/9 */
|
|
|
|
+#define LCD_Int60_0 0x9 /* LCD Intensity = 60.0% = 3/5 */
|
|
|
|
+#define LCD_Int66_7 0xA /* LCD Intensity = 66.7% = 6/9 */
|
|
|
|
+#define LCD_Int73_3 0xB /* LCD Intensity = 73.3% = 11/15 */
|
|
|
|
+#define LCD_Int80_0 0xC /* LCD Intensity = 80.0% = 4/5 */
|
|
|
|
+#define LCD_Int88_9 0xD /* LCD Intensity = 88.9% = 8/9 */
|
|
|
|
+#define LCD_Int100_0 0xE /* LCD Intensity = 100.0% = 1 */
|
|
|
|
+#define LCD_Int100_0A 0xF /* LCD Intensity = 100.0% = 1 */
|
|
|
|
+ /* (Alternative) */
|
|
|
|
+
|
|
|
|
+#define LCCR0_LEN 0x00000001 /* LCD ENable */
|
|
|
|
+#define LCCR0_CMS 0x00000002 /* Color/Monochrome display Select */
|
|
|
|
+#define LCCR0_Color (LCCR0_CMS*0) /* Color display */
|
|
|
|
+#define LCCR0_Mono (LCCR0_CMS*1) /* Monochrome display */
|
|
|
|
+#define LCCR0_SDS 0x00000004 /* Single/Dual panel display */
|
|
|
|
+ /* Select */
|
|
|
|
+#define LCCR0_Sngl (LCCR0_SDS*0) /* Single panel display */
|
|
|
|
+#define LCCR0_Dual (LCCR0_SDS*1) /* Dual panel display */
|
|
|
|
+#define LCCR0_LDM 0x00000008 /* LCD Disable done (LDD) */
|
|
|
|
+ /* interrupt Mask (disable) */
|
|
|
|
+#define LCCR0_BAM 0x00000010 /* Base Address update (BAU) */
|
|
|
|
+ /* interrupt Mask (disable) */
|
|
|
|
+#define LCCR0_ERM 0x00000020 /* LCD ERror (BER, IOL, IUL, IOU, */
|
|
|
|
+ /* IUU, OOL, OUL, OOU, and OUU) */
|
|
|
|
+ /* interrupt Mask (disable) */
|
|
|
|
+#define LCCR0_PAS 0x00000080 /* Passive/Active display Select */
|
|
|
|
+#define LCCR0_Pas (LCCR0_PAS*0) /* Passive display (STN) */
|
|
|
|
+#define LCCR0_Act (LCCR0_PAS*1) /* Active display (TFT) */
|
|
|
|
+#define LCCR0_BLE 0x00000100 /* Big/Little Endian select */
|
|
|
|
+#define LCCR0_LtlEnd (LCCR0_BLE*0) /* Little Endian frame buffer */
|
|
|
|
+#define LCCR0_BigEnd (LCCR0_BLE*1) /* Big Endian frame buffer */
|
|
|
|
+#define LCCR0_DPD 0x00000200 /* Double Pixel Data (monochrome */
|
|
|
|
+ /* display mode) */
|
|
|
|
+#define LCCR0_4PixMono (LCCR0_DPD*0) /* 4-Pixel/clock Monochrome */
|
|
|
|
+ /* display */
|
|
|
|
+#define LCCR0_8PixMono (LCCR0_DPD*1) /* 8-Pixel/clock Monochrome */
|
|
|
|
+ /* display */
|
|
|
|
+#define LCCR0_PDD Fld (8, 12) /* Palette DMA request Delay */
|
|
|
|
+ /* [Tmem] */
|
|
|
|
+#define LCCR0_DMADel(Tcpu) /* palette DMA request Delay */ \
|
|
|
|
+ /* [0..510 Tcpu] */ \
|
|
|
|
+ ((Tcpu)/2 << FShft (LCCR0_PDD))
|