Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 /*
0003  * Fujitsu MB862xx Graphics Controller Registers/Bits
0004  */
0005 
0006 #ifndef _MB862XX_REG_H
0007 #define _MB862XX_REG_H
0008 
0009 #define MB862XX_MMIO_BASE   0x01fc0000
0010 #define MB862XX_MMIO_HIGH_BASE  0x03fc0000
0011 #define MB862XX_I2C_BASE    0x0000c000
0012 #define MB862XX_DISP_BASE   0x00010000
0013 #define MB862XX_CAP_BASE    0x00018000
0014 #define MB862XX_DRAW_BASE   0x00030000
0015 #define MB862XX_GEO_BASE    0x00038000
0016 #define MB862XX_PIO_BASE    0x00038000
0017 #define MB862XX_MMIO_SIZE   0x40000
0018 
0019 /* Host interface/pio registers */
0020 #define GC_IST          0x00000020
0021 #define GC_IMASK        0x00000024
0022 #define GC_SRST         0x0000002c
0023 #define GC_CCF          0x00000038
0024 #define GC_RSW          0x0000005c
0025 #define GC_CID          0x000000f0
0026 #define GC_REVISION     0x00000084
0027 
0028 #define GC_CCF_CGE_100      0x00000000
0029 #define GC_CCF_CGE_133      0x00040000
0030 #define GC_CCF_CGE_166      0x00080000
0031 #define GC_CCF_COT_100      0x00000000
0032 #define GC_CCF_COT_133      0x00010000
0033 #define GC_CID_CNAME_MSK    0x0000ff00
0034 #define GC_CID_VERSION_MSK  0x000000ff
0035 
0036 /* define enabled interrupts hereby */
0037 #define GC_INT_EN       0x00000000
0038 
0039 /* Memory interface mode register */
0040 #define GC_MMR          0x0000fffc
0041 
0042 /* Display Controller registers */
0043 #define GC_DCM0         0x00000000
0044 #define GC_HTP          0x00000004
0045 #define GC_HDB_HDP      0x00000008
0046 #define GC_VSW_HSW_HSP      0x0000000c
0047 #define GC_VTR          0x00000010
0048 #define GC_VDP_VSP      0x00000014
0049 #define GC_WY_WX        0x00000018
0050 #define GC_WH_WW        0x0000001c
0051 #define GC_L0M          0x00000020
0052 #define GC_L0OA0        0x00000024
0053 #define GC_L0DA0        0x00000028
0054 #define GC_L0DY_L0DX        0x0000002c
0055 #define GC_L1M          0x00000030
0056 #define GC_L1DA         0x00000034
0057 #define GC_DCM1         0x00000100
0058 #define GC_L0EM         0x00000110
0059 #define GC_L0WY_L0WX        0x00000114
0060 #define GC_L0WH_L0WW        0x00000118
0061 #define GC_L1EM         0x00000120
0062 #define GC_L1WY_L1WX        0x00000124
0063 #define GC_L1WH_L1WW        0x00000128
0064 #define GC_DLS          0x00000180
0065 #define GC_DCM2         0x00000104
0066 #define GC_DCM3         0x00000108
0067 #define GC_CPM_CUTC     0x000000a0
0068 #define GC_CUOA0        0x000000a4
0069 #define GC_CUY0_CUX0        0x000000a8
0070 #define GC_CUOA1        0x000000ac
0071 #define GC_CUY1_CUX1        0x000000b0
0072 #define GC_L0PAL0       0x00000400
0073 
0074 #define GC_CPM_CEN0     0x00100000
0075 #define GC_CPM_CEN1     0x00200000
0076 #define GC_DCM1_DEN     0x80000000
0077 #define GC_DCM1_L1E     0x00020000
0078 #define GC_L1M_16       0x80000000
0079 #define GC_L1M_YC       0x40000000
0080 #define GC_L1M_CS       0x20000000
0081 
0082 #define GC_DCM01_ESY        0x00000004
0083 #define GC_DCM01_SC     0x00003f00
0084 #define GC_DCM01_RESV       0x00004000
0085 #define GC_DCM01_CKS        0x00008000
0086 #define GC_DCM01_L0E        0x00010000
0087 #define GC_DCM01_DEN        0x80000000
0088 #define GC_L0M_L0C_8        0x00000000
0089 #define GC_L0M_L0C_16       0x80000000
0090 #define GC_L0EM_L0EC_24     0x40000000
0091 #define GC_L0M_L0W_UNIT     64
0092 #define GC_L1EM_DM      0x02000000
0093 
0094 #define GC_DISP_REFCLK_400  400
0095 
0096 /* I2C */
0097 #define GC_I2C_BSR      0x00000000  /* BSR */
0098 #define GC_I2C_BCR      0x00000004  /* BCR */
0099 #define GC_I2C_CCR      0x00000008  /* CCR */
0100 #define GC_I2C_ADR      0x0000000C  /* ADR */
0101 #define GC_I2C_DAR      0x00000010  /* DAR */
0102 
0103 #define I2C_DISABLE     0x00000000
0104 #define I2C_STOP        0x00000000
0105 #define I2C_START       0x00000010
0106 #define I2C_REPEATED_START  0x00000030
0107 #define I2C_CLOCK_AND_ENABLE    0x0000003f
0108 #define I2C_READY       0x01
0109 #define I2C_INT         0x01
0110 #define I2C_INTE        0x02
0111 #define I2C_ACK         0x08
0112 #define I2C_BER         0x80
0113 #define I2C_BEIE        0x40
0114 #define I2C_TRX         0x80
0115 #define I2C_LRB         0x10
0116 
0117 /* Capture registers and bits */
0118 #define GC_CAP_VCM      0x00000000
0119 #define GC_CAP_CSC      0x00000004
0120 #define GC_CAP_VCS      0x00000008
0121 #define GC_CAP_CBM      0x00000010
0122 #define GC_CAP_CBOA     0x00000014
0123 #define GC_CAP_CBLA     0x00000018
0124 #define GC_CAP_IMG_START    0x0000001C
0125 #define GC_CAP_IMG_END      0x00000020
0126 #define GC_CAP_CMSS     0x00000048
0127 #define GC_CAP_CMDS     0x0000004C
0128 
0129 #define GC_VCM_VIE      0x80000000
0130 #define GC_VCM_CM       0x03000000
0131 #define GC_VCM_VS_PAL       0x00000002
0132 #define GC_CBM_OO       0x80000000
0133 #define GC_CBM_HRV      0x00000010
0134 #define GC_CBM_CBST     0x00000001
0135 
0136 /* Carmine specific */
0137 #define MB86297_DRAW_BASE       0x00020000
0138 #define MB86297_DISP0_BASE      0x00100000
0139 #define MB86297_DISP1_BASE      0x00140000
0140 #define MB86297_WRBACK_BASE     0x00180000
0141 #define MB86297_CAP0_BASE       0x00200000
0142 #define MB86297_CAP1_BASE       0x00280000
0143 #define MB86297_DRAMCTRL_BASE       0x00300000
0144 #define MB86297_CTRL_BASE       0x00400000
0145 #define MB86297_I2C_BASE        0x00500000
0146 
0147 #define GC_CTRL_STATUS          0x00000000
0148 #define GC_CTRL_INT_MASK        0x00000004
0149 #define GC_CTRL_CLK_ENABLE      0x0000000c
0150 #define GC_CTRL_SOFT_RST        0x00000010
0151 
0152 #define GC_CTRL_CLK_EN_DRAM     0x00000001
0153 #define GC_CTRL_CLK_EN_2D3D     0x00000002
0154 #define GC_CTRL_CLK_EN_DISP0        0x00000020
0155 #define GC_CTRL_CLK_EN_DISP1        0x00000040
0156 
0157 #define GC_2D3D_REV         0x000004b4
0158 #define GC_RE_REVISION          0x24240200
0159 
0160 /* define enabled interrupts hereby */
0161 #define GC_CARMINE_INT_EN       0x00000004
0162 
0163 /* DRAM controller */
0164 #define GC_DCTL_MODE_ADD        0x00000000
0165 #define GC_DCTL_SETTIME1_EMODE      0x00000004
0166 #define GC_DCTL_REFRESH_SETTIME2    0x00000008
0167 #define GC_DCTL_RSV0_STATES     0x0000000C
0168 #define GC_DCTL_RSV2_RSV1       0x00000010
0169 #define GC_DCTL_DDRIF2_DDRIF1       0x00000014
0170 #define GC_DCTL_IOCONT1_IOCONT0     0x00000024
0171 
0172 #define GC_DCTL_STATES_MSK      0x0000000f
0173 #define GC_DCTL_INIT_WAIT_CNT       3000
0174 #define GC_DCTL_INIT_WAIT_INTERVAL  1
0175 
0176 /* DRAM ctrl values for Carmine PCI Eval. board */
0177 #define GC_EVB_DCTL_MODE_ADD        0x012105c3
0178 #define GC_EVB_DCTL_MODE_ADD_AFT_RST    0x002105c3
0179 #define GC_EVB_DCTL_SETTIME1_EMODE  0x47498000
0180 #define GC_EVB_DCTL_REFRESH_SETTIME2    0x00422a22
0181 #define GC_EVB_DCTL_RSV0_STATES     0x00200003
0182 #define GC_EVB_DCTL_RSV0_STATES_AFT_RST 0x00200002
0183 #define GC_EVB_DCTL_RSV2_RSV1       0x0000000f
0184 #define GC_EVB_DCTL_DDRIF2_DDRIF1   0x00556646
0185 #define GC_EVB_DCTL_IOCONT1_IOCONT0 0x05550555
0186 
0187 #define GC_DISP_REFCLK_533      533
0188 
0189 #endif