1# ------------------------------------------------------------------------- 2# KaRo TX25 CPU Module on a StarterkitV base board 3# http://www.karo-electronics.com/tx25.html 4# ------------------------------------------------------------------------- 5 6 7source [find target/imx25.cfg] 8 9 #------------------------------------------------------------------------- 10 # Declare Nand 11 #------------------------------------------------------------------------- 12 13 nand device K9F1G08UOC mxc imx25.cpu mx25 hwecc biswap 14 15 16$_TARGETNAME configure -event gdb-attach { reset init } 17$_TARGETNAME configure -event reset-init { tx25_init } 18 19 20proc tx25_init { } { 21 22 #------------------------------------------------------------------------- 23 # AIPS setup - Only setup MPROTx registers. The PACR default values are good. 24 # Set all MPROTx to be non-bufferable, trusted for R/W, 25 # not forced to user-mode. 26 #------------------------------------------------------------------------- 27 28 mww 0x43f00000 0x77777777 29 mww 0x43f00004 0x77777777 30 mww 0x53f00000 0x77777777 31 mww 0x53f00004 0x77777777 32 33 sleep 100 34 35 #------------------------------------------------------------------------- 36 # MAX (Multi-Layer AHB Crossbar Switch) setup 37 # MPR - priority for MX25 is (SDHC2/SDMA)>USBOTG>RTIC>IAHB>DAHB 38 #------------------------------------------------------------------------- 39 40 mww 0x43f04000 0x00043210 41 mww 0x43f04100 0x00043210 42 mww 0x43f04200 0x00043210 43 mww 0x43f04300 0x00043210 44 mww 0x43f04400 0x00043210 45 46 # SGPCR - always park on last master 47 mww 0x43f04010 0x10 48 mww 0x43f04110 0x10 49 mww 0x43f04210 0x10 50 mww 0x43f04310 0x10 51 mww 0x43f04410 0x10 52 53 # MGPCR - restore default values 54 mww 0x43f04800 0x0 55 mww 0x43f04900 0x0 56 mww 0x43f04a00 0x0 57 mww 0x43f04b00 0x0 58 mww 0x43f04c00 0x0 59 60 # Configure M3IF registers 61 # M3IF Control Register (M3IFCTL) for MX25 62 # MRRP[0] = LCDC on priority list (1 << 0) = 0x00000001 63 # MRRP[1] = MAX1 not on priority list (0 << 1) = 0x00000000 64 # MRRP[2] = MAX0 not on priority list (0 << 2) = 0x00000000 65 # MRRP[3] = USB HOST not on priority list (0 << 3) = 0x00000000 66 # MRRP[4] = SDMA not on priority list (0 << 4) = 0x00000000 67 # MRRP[5] = SD/ATA/FEC not on priority list (0 << 5) = 0x00000000 68 # MRRP[6] = SCMFBC not on priority list (0 << 6) = 0x00000000 69 # MRRP[7] = CSI not on priority list (0 << 7) = 0x00000000 70 # ---------- 71 # 0x00000001 72 mww 0xb8003000 0x00000001 73 74 #------------------------------------------------------------------------- 75 # configure ARM CLK 76 #------------------------------------------------------------------------- 77 78 # Set the Clock CTL (HRM p. 355) 79 mww 0x53F80008 0x20034000 80 81 # Setup Clock Gating CTL 0-2 (HRM p. 357) 82 mww 0x53F8000C 0x1fffffff 83 mww 0x53F80010 0xffffffff 84 mww 0x53F80014 0x000fdfff 85 86 #------------------------------------------------------------------------- 87 # SDRAM initialization 88 #------------------------------------------------------------------------- 89 90 # set to 3.3v SDRAM 91 mww 0x43FAC454 0x00000800 92 93 # reset (set up ESDMISC) 94 mww 0xB8001010 0x00000002 95 96 # Setup for SDRAM Bank 0 97 #------------------------------------------------------------------------- 98 99 # Write ESDCFG0 100 mww 0xB8001004 0x00095728 101 102 # CTL SMode = Precharge command 103 mww 0xB8001000 0x92116480 104 mww 0x80000400 0x00000000 105 106 # CTL SMode = Auto Refresh command 107 mww 0xB8001000 0xA2116480 108 mww 0x80000000 0x0 109 mww 0x80000000 0x0 110 mww 0x80000000 0x0 111 mww 0x80000000 0x0 112 mww 0x80000000 0x0 113 mww 0x80000000 0x0 114 mww 0x80000000 0x0 115 mww 0x80000000 0x0 116 117 # CTL SMode = Load Mode Register command 118 mww 0xB8001000 0xB2116480 119 mwb 0x80000033 0x00 120 121 # CTL SMode = normal 122 mww 0xB8001000 0x82116480 123 124 # Setup for SDRAM Bank 1 125 #------------------------------------------------------------------------- 126 127 # Write ESDCFG1 128 mww 0xB800100C 0x00095728 129 130 # CTL SMode = Precharge command 131 mww 0xB8001008 0x92116480 132 mww 0x90000400 0x00000000 133 134 # CTL SMode = Auto Refresh command 135 mww 0xB8001008 0xA2116480 136 mww 0x90000000 0x00000000 137 mww 0x90000000 0x00000000 138 mww 0x90000000 0x00000000 139 mww 0x90000000 0x00000000 140 mww 0x90000000 0x00000000 141 mww 0x90000000 0x00000000 142 mww 0x90000000 0x00000000 143 mww 0x90000000 0x00000000 144 145 # CTL SMode = Load Mode Register command 146 mww 0xB8001008 0xB2116480 147 mwb 0x90000033 0x00 148 149 # CTL SMode = normal 150 mww 0xB8001008 0x82116480 151 152 # GPIO configuration 153 #------------------------------------------------------------------------- 154 155 mww 0x43FAC02C 0x00000015 156 mww 0x53FD0000 0x01000000 157 mww 0x53FD0004 0x00000080 158} 159