1bed53753SAnatolij Gustschin /* 2bed53753SAnatolij Gustschin * (C) Copyright 2007 3bed53753SAnatolij Gustschin * DENX Software Engineering, Anatolij Gustschin, agust@denx.de 4bed53753SAnatolij Gustschin * 5bed53753SAnatolij Gustschin * See file CREDITS for list of people who contributed to this 6bed53753SAnatolij Gustschin * project. 7bed53753SAnatolij Gustschin * 8bed53753SAnatolij Gustschin * This program is free software; you can redistribute it and/or 9bed53753SAnatolij Gustschin * modify it under the terms of the GNU General Public License as 10bed53753SAnatolij Gustschin * published by the Free Software Foundation; either version 2 of 11bed53753SAnatolij Gustschin * the License, or (at your option) any later version. 12bed53753SAnatolij Gustschin * 13bed53753SAnatolij Gustschin * This program is distributed in the hope that it will be useful, 14bed53753SAnatolij Gustschin * but WITHOUT ANY WARRANTY; without even the implied warranty of 15bed53753SAnatolij Gustschin * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16bed53753SAnatolij Gustschin * GNU General Public License for more details. 17bed53753SAnatolij Gustschin * 18bed53753SAnatolij Gustschin * You should have received a copy of the GNU General Public License 19bed53753SAnatolij Gustschin * along with this program; if not, write to the Free Software 20bed53753SAnatolij Gustschin * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 21bed53753SAnatolij Gustschin * MA 02111-1307 USA 22bed53753SAnatolij Gustschin */ 23bed53753SAnatolij Gustschin 24bed53753SAnatolij Gustschin /* 25bed53753SAnatolij Gustschin * mb862xx.h - Graphic interface for Fujitsu CoralP/Lime 26bed53753SAnatolij Gustschin */ 27bed53753SAnatolij Gustschin 28bed53753SAnatolij Gustschin #ifndef _MB862XX_H_ 29bed53753SAnatolij Gustschin #define _MB862XX_H_ 30bed53753SAnatolij Gustschin 31bed53753SAnatolij Gustschin #define PCI_VENDOR_ID_FUJITSU 0x10CF 32bed53753SAnatolij Gustschin #define PCI_DEVICE_ID_CORAL_P 0x2019 33bed53753SAnatolij Gustschin #define PCI_DEVICE_ID_CORAL_PA 0x201E 34bed53753SAnatolij Gustschin 35*cce99b2aSAnatolij Gustschin #define GC_HOST_BASE 0x01fc0000 36*cce99b2aSAnatolij Gustschin #define GC_DISP_BASE 0x01fd0000 37*cce99b2aSAnatolij Gustschin #define GC_DRAW_BASE 0x01ff0000 38*cce99b2aSAnatolij Gustschin 39*cce99b2aSAnatolij Gustschin /* Host interface registers */ 40*cce99b2aSAnatolij Gustschin #define GC_SRST 0x0000002c 41*cce99b2aSAnatolij Gustschin #define GC_CCF 0x00000038 42*cce99b2aSAnatolij Gustschin #define GC_MMR 0x0000fffc 43*cce99b2aSAnatolij Gustschin 44*cce99b2aSAnatolij Gustschin /* 45*cce99b2aSAnatolij Gustschin * Display Controller registers 46*cce99b2aSAnatolij Gustschin * _A means the offset is aligned, we use these for boards 47*cce99b2aSAnatolij Gustschin * with 8-/16-bit GDC access not working or buggy. 48*cce99b2aSAnatolij Gustschin */ 49*cce99b2aSAnatolij Gustschin #define GC_DCM0 0x00000000 50*cce99b2aSAnatolij Gustschin #define GC_HTP_A 0x00000004 51*cce99b2aSAnatolij Gustschin #define GC_HTP 0x00000006 52*cce99b2aSAnatolij Gustschin #define GC_HDB_HDP_A 0x00000008 53*cce99b2aSAnatolij Gustschin #define GC_HDP 0x00000008 54*cce99b2aSAnatolij Gustschin #define GC_HDB 0x0000000a 55*cce99b2aSAnatolij Gustschin #define GC_VSW_HSW_HSP_A 0x0000000c 56*cce99b2aSAnatolij Gustschin #define GC_HSP 0x0000000c 57*cce99b2aSAnatolij Gustschin #define GC_HSW 0x0000000e 58*cce99b2aSAnatolij Gustschin #define GC_VSW 0x0000000f 59*cce99b2aSAnatolij Gustschin #define GC_VTR_A 0x00000010 60*cce99b2aSAnatolij Gustschin #define GC_VTR 0x00000012 61*cce99b2aSAnatolij Gustschin #define GC_VDP_VSP_A 0x00000014 62*cce99b2aSAnatolij Gustschin #define GC_VSP 0x00000014 63*cce99b2aSAnatolij Gustschin #define GC_VDP 0x00000016 64*cce99b2aSAnatolij Gustschin #define GC_WY_WX 0x00000018 65*cce99b2aSAnatolij Gustschin #define GC_WH_WW 0x0000001c 66*cce99b2aSAnatolij Gustschin #define GC_L0M 0x00000020 67*cce99b2aSAnatolij Gustschin #define GC_L0OA0 0x00000024 68*cce99b2aSAnatolij Gustschin #define GC_L0DA0 0x00000028 69*cce99b2aSAnatolij Gustschin #define GC_L0DY_L0DX 0x0000002c 70*cce99b2aSAnatolij Gustschin #define GC_L2M 0x00000040 71*cce99b2aSAnatolij Gustschin #define GC_L2OA0 0x00000044 72*cce99b2aSAnatolij Gustschin #define GC_L2DA0 0x00000048 73*cce99b2aSAnatolij Gustschin #define GC_L2OA1 0x0000004c 74*cce99b2aSAnatolij Gustschin #define GC_L2DA1 0x00000050 75*cce99b2aSAnatolij Gustschin #define GC_L2DX 0x00000054 76*cce99b2aSAnatolij Gustschin #define GC_L2DY 0x00000056 77*cce99b2aSAnatolij Gustschin #define GC_DCM1 0x00000100 78*cce99b2aSAnatolij Gustschin #define GC_DCM2 0x00000104 79*cce99b2aSAnatolij Gustschin #define GC_DCM3 0x00000108 80*cce99b2aSAnatolij Gustschin #define GC_L0EM 0x00000110 81*cce99b2aSAnatolij Gustschin #define GC_L0WY_L0WX 0x00000114 82*cce99b2aSAnatolij Gustschin #define GC_L0WH_L0WW 0x00000118 83*cce99b2aSAnatolij Gustschin #define GC_L2EM 0x00000130 84*cce99b2aSAnatolij Gustschin #define GC_L2WX 0x00000134 85*cce99b2aSAnatolij Gustschin #define GC_L2WY 0x00000136 86*cce99b2aSAnatolij Gustschin #define GC_L2WW 0x00000138 87*cce99b2aSAnatolij Gustschin #define GC_L2WH 0x0000013a 88*cce99b2aSAnatolij Gustschin #define GC_L0PAL0 0x00000400 89*cce99b2aSAnatolij Gustschin 90*cce99b2aSAnatolij Gustschin /* Drawing registers */ 91*cce99b2aSAnatolij Gustschin #define GC_CTR 0x00000400 92*cce99b2aSAnatolij Gustschin #define GC_IFCNT 0x00000408 93*cce99b2aSAnatolij Gustschin #define GC_FBR 0x00000440 94*cce99b2aSAnatolij Gustschin #define GC_XRES 0x00000444 95*cce99b2aSAnatolij Gustschin #define GC_CXMIN 0x00000454 96*cce99b2aSAnatolij Gustschin #define GC_CXMAX 0x00000458 97*cce99b2aSAnatolij Gustschin #define GC_CYMIN 0x0000045c 98*cce99b2aSAnatolij Gustschin #define GC_CYMAX 0x00000460 99*cce99b2aSAnatolij Gustschin #define GC_FC 0x00000480 100*cce99b2aSAnatolij Gustschin #define GC_BC 0x00000484 101*cce99b2aSAnatolij Gustschin #define GC_FIFO 0x000004a0 102*cce99b2aSAnatolij Gustschin #define GC_GEO_FIFO 0x00008400 103*cce99b2aSAnatolij Gustschin 104bed53753SAnatolij Gustschin typedef struct { 105bed53753SAnatolij Gustschin unsigned int index; 106bed53753SAnatolij Gustschin unsigned int value; 107bed53753SAnatolij Gustschin } gdc_regs; 108bed53753SAnatolij Gustschin 109bed53753SAnatolij Gustschin const gdc_regs *board_get_regs (void); 110bed53753SAnatolij Gustschin unsigned int board_video_init (void); 111bed53753SAnatolij Gustschin void board_backlight_switch(int); 112bed53753SAnatolij Gustschin 113bed53753SAnatolij Gustschin #endif /* _MB862XX_H_ */ 114