1*bfc93fb4SNobuhiro Iwamatsu/* 2*bfc93fb4SNobuhiro Iwamatsu * Copyright (C) 2011, 2012 Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> 3*bfc93fb4SNobuhiro Iwamatsu * Copyright (C) 2011, 2012 Renesas Solutions Corp. 4*bfc93fb4SNobuhiro Iwamatsu * 5*bfc93fb4SNobuhiro Iwamatsu * This program is free software; you can redistribute it and/or 6*bfc93fb4SNobuhiro Iwamatsu * modify it under the terms of the GNU General Public License as 7*bfc93fb4SNobuhiro Iwamatsu * published by the Free Software Foundation; either version 2 of 8*bfc93fb4SNobuhiro Iwamatsu * the License, or (at your option) any later version. 9*bfc93fb4SNobuhiro Iwamatsu * 10*bfc93fb4SNobuhiro Iwamatsu * This program is distributed in the hope that it will be useful, 11*bfc93fb4SNobuhiro Iwamatsu * but WITHOUT ANY WARRANTY; without even the implied warranty of 12*bfc93fb4SNobuhiro Iwamatsu * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13*bfc93fb4SNobuhiro Iwamatsu * GNU General Public License for more details. 14*bfc93fb4SNobuhiro Iwamatsu * 15*bfc93fb4SNobuhiro Iwamatsu */ 16*bfc93fb4SNobuhiro Iwamatsu#include <config.h> 17*bfc93fb4SNobuhiro Iwamatsu#include <version.h> 18*bfc93fb4SNobuhiro Iwamatsu#include <asm/processor.h> 19*bfc93fb4SNobuhiro Iwamatsu#include <asm/macro.h> 20*bfc93fb4SNobuhiro Iwamatsu 21*bfc93fb4SNobuhiro Iwamatsu#include <asm/processor.h> 22*bfc93fb4SNobuhiro Iwamatsu 23*bfc93fb4SNobuhiro Iwamatsu .global lowlevel_init 24*bfc93fb4SNobuhiro Iwamatsu 25*bfc93fb4SNobuhiro Iwamatsu .text 26*bfc93fb4SNobuhiro Iwamatsu .align 2 27*bfc93fb4SNobuhiro Iwamatsu 28*bfc93fb4SNobuhiro Iwamatsulowlevel_init: 29*bfc93fb4SNobuhiro Iwamatsu 30*bfc93fb4SNobuhiro Iwamatsu /* WDT */ 31*bfc93fb4SNobuhiro Iwamatsu write32 WDTCSR_A, WDTCSR_D 32*bfc93fb4SNobuhiro Iwamatsu 33*bfc93fb4SNobuhiro Iwamatsu /* MMU */ 34*bfc93fb4SNobuhiro Iwamatsu write32 MMUCR_A, MMUCR_D 35*bfc93fb4SNobuhiro Iwamatsu 36*bfc93fb4SNobuhiro Iwamatsu write32 FRQCR2_A, FRQCR2_D 37*bfc93fb4SNobuhiro Iwamatsu write32 FRQCR0_A, FRQCR0_D 38*bfc93fb4SNobuhiro Iwamatsu 39*bfc93fb4SNobuhiro Iwamatsu write32 CS0CTRL_A, CS0CTRL_D 40*bfc93fb4SNobuhiro Iwamatsu write32 CS1CTRL_A, CS1CTRL_D 41*bfc93fb4SNobuhiro Iwamatsu write32 CS0CTRL2_A, CS0CTRL2_D 42*bfc93fb4SNobuhiro Iwamatsu 43*bfc93fb4SNobuhiro Iwamatsu write32 CSPWCR0_A, CSPWCR0_D 44*bfc93fb4SNobuhiro Iwamatsu write32 CSPWCR1_A, CSPWCR1_D 45*bfc93fb4SNobuhiro Iwamatsu write32 CS1GDST_A, CS1GDST_D 46*bfc93fb4SNobuhiro Iwamatsu 47*bfc93fb4SNobuhiro Iwamatsu # clock mode check 48*bfc93fb4SNobuhiro Iwamatsu mov.l MODEMR, r1 49*bfc93fb4SNobuhiro Iwamatsu mov.l @r1, r0 50*bfc93fb4SNobuhiro Iwamatsu and #6, r0 /* Check 1 and 2 bit.*/ 51*bfc93fb4SNobuhiro Iwamatsu cmp/eq #2, r0 /* 0x02 is 533Mhz mode */ 52*bfc93fb4SNobuhiro Iwamatsu bt init_lbsc_533 53*bfc93fb4SNobuhiro Iwamatsu 54*bfc93fb4SNobuhiro Iwamatsuinit_lbsc_400: 55*bfc93fb4SNobuhiro Iwamatsu 56*bfc93fb4SNobuhiro Iwamatsu write32 CSWCR0_A, CSWCR0_D_400 57*bfc93fb4SNobuhiro Iwamatsu write32 CSWCR1_A, CSWCR1_D 58*bfc93fb4SNobuhiro Iwamatsu 59*bfc93fb4SNobuhiro Iwamatsu bra init_dbsc3_400_pad 60*bfc93fb4SNobuhiro Iwamatsu nop 61*bfc93fb4SNobuhiro Iwamatsu 62*bfc93fb4SNobuhiro Iwamatsu .align 2 63*bfc93fb4SNobuhiro Iwamatsu 64*bfc93fb4SNobuhiro IwamatsuMODEMR: .long 0xFFCC0020 65*bfc93fb4SNobuhiro IwamatsuWDTCSR_A: .long 0xFFCC0004 66*bfc93fb4SNobuhiro IwamatsuWDTCSR_D: .long 0xA5000000 67*bfc93fb4SNobuhiro IwamatsuMMUCR_A: .long 0xFF000010 68*bfc93fb4SNobuhiro IwamatsuMMUCR_D: .long 0x00000004 69*bfc93fb4SNobuhiro Iwamatsu 70*bfc93fb4SNobuhiro IwamatsuFRQCR2_A: .long 0xFFC80008 71*bfc93fb4SNobuhiro IwamatsuFRQCR2_D: .long 0x00000000 72*bfc93fb4SNobuhiro IwamatsuFRQCR0_A: .long 0xFFC80000 73*bfc93fb4SNobuhiro IwamatsuFRQCR0_D: .long 0xCF000001 74*bfc93fb4SNobuhiro Iwamatsu 75*bfc93fb4SNobuhiro IwamatsuCS0CTRL_A: .long 0xFF800200 76*bfc93fb4SNobuhiro IwamatsuCS0CTRL_D: .long 0x00000020 77*bfc93fb4SNobuhiro IwamatsuCS1CTRL_A: .long 0xFF800204 78*bfc93fb4SNobuhiro IwamatsuCS1CTRL_D: .long 0x00000020 79*bfc93fb4SNobuhiro Iwamatsu 80*bfc93fb4SNobuhiro IwamatsuCS0CTRL2_A: .long 0xFF800220 81*bfc93fb4SNobuhiro IwamatsuCS0CTRL2_D: .long 0x00004000 82*bfc93fb4SNobuhiro Iwamatsu 83*bfc93fb4SNobuhiro IwamatsuCSPWCR0_A: .long 0xFF800280 84*bfc93fb4SNobuhiro IwamatsuCSPWCR0_D: .long 0x00000000 85*bfc93fb4SNobuhiro IwamatsuCSPWCR1_A: .long 0xFF800284 86*bfc93fb4SNobuhiro IwamatsuCSPWCR1_D: .long 0x00000000 87*bfc93fb4SNobuhiro IwamatsuCS1GDST_A: .long 0xFF8002C0 88*bfc93fb4SNobuhiro IwamatsuCS1GDST_D: .long 0x00000011 89*bfc93fb4SNobuhiro Iwamatsu 90*bfc93fb4SNobuhiro Iwamatsuinit_lbsc_533: 91*bfc93fb4SNobuhiro Iwamatsu 92*bfc93fb4SNobuhiro Iwamatsu write32 CSWCR0_A, CSWCR0_D_533 93*bfc93fb4SNobuhiro Iwamatsu write32 CSWCR1_A, CSWCR1_D 94*bfc93fb4SNobuhiro Iwamatsu 95*bfc93fb4SNobuhiro Iwamatsu bra init_dbsc3_533_pad 96*bfc93fb4SNobuhiro Iwamatsu nop 97*bfc93fb4SNobuhiro Iwamatsu 98*bfc93fb4SNobuhiro Iwamatsu .align 2 99*bfc93fb4SNobuhiro Iwamatsu 100*bfc93fb4SNobuhiro IwamatsuCSWCR0_A: .long 0xFF800230 101*bfc93fb4SNobuhiro IwamatsuCSWCR0_D_533: .long 0x01120104 102*bfc93fb4SNobuhiro IwamatsuCSWCR0_D_400: .long 0x02120114 103*bfc93fb4SNobuhiro IwamatsuCSWCR1_A: .long 0xFF800234 104*bfc93fb4SNobuhiro IwamatsuCSWCR1_D: .long 0x077F077F 105*bfc93fb4SNobuhiro Iwamatsu 106*bfc93fb4SNobuhiro Iwamatsuinit_dbsc3_400_pad: 107*bfc93fb4SNobuhiro Iwamatsu 108*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D 109*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_200US_400 110*bfc93fb4SNobuhiro Iwamatsu 111*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT0_A, DBPDCNT0_D_400 112*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D0 113*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT1_A, DBPDCNT1_D 114*bfc93fb4SNobuhiro Iwamatsu 115*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D1 116*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_32MCLK 117*bfc93fb4SNobuhiro Iwamatsu 118*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D2 119*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_100US_400 120*bfc93fb4SNobuhiro Iwamatsu 121*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D3 122*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_16MCLK 123*bfc93fb4SNobuhiro Iwamatsu 124*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D4 125*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_200US_400 126*bfc93fb4SNobuhiro Iwamatsu 127*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D5 128*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_1MCLK 129*bfc93fb4SNobuhiro Iwamatsu 130*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D6 131*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_10KMCLK 132*bfc93fb4SNobuhiro Iwamatsu 133*bfc93fb4SNobuhiro Iwamatsu bra init_dbsc3_ctrl_400 134*bfc93fb4SNobuhiro Iwamatsu nop 135*bfc93fb4SNobuhiro Iwamatsu 136*bfc93fb4SNobuhiro Iwamatsu .align 2 137*bfc93fb4SNobuhiro Iwamatsu 138*bfc93fb4SNobuhiro Iwamatsuinit_dbsc3_533_pad: 139*bfc93fb4SNobuhiro Iwamatsu 140*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D 141*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_200US_533 142*bfc93fb4SNobuhiro Iwamatsu 143*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT0_A, DBPDCNT0_D_533 144*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D0 145*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT1_A, DBPDCNT1_D 146*bfc93fb4SNobuhiro Iwamatsu 147*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D1 148*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_32MCLK 149*bfc93fb4SNobuhiro Iwamatsu 150*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D2 151*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_100US_533 152*bfc93fb4SNobuhiro Iwamatsu 153*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D3 154*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_16MCLK 155*bfc93fb4SNobuhiro Iwamatsu 156*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D4 157*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_200US_533 158*bfc93fb4SNobuhiro Iwamatsu 159*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D5 160*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_1MCLK 161*bfc93fb4SNobuhiro Iwamatsu 162*bfc93fb4SNobuhiro Iwamatsu write32 DBPDCNT3_A, DBPDCNT3_D6 163*bfc93fb4SNobuhiro Iwamatsu wait_timer WAIT_10KMCLK 164*bfc93fb4SNobuhiro Iwamatsu 165*bfc93fb4SNobuhiro Iwamatsu bra init_dbsc3_ctrl_533 166*bfc93fb4SNobuhiro Iwamatsu nop 167*bfc93fb4SNobuhiro Iwamatsu 168*bfc93fb4SNobuhiro Iwamatsu .align 2 169*bfc93fb4SNobuhiro Iwamatsu 170*bfc93fb4SNobuhiro IwamatsuWAIT_200US_400: .long 40000 171*bfc93fb4SNobuhiro IwamatsuWAIT_200US_533: .long 53300 172*bfc93fb4SNobuhiro IwamatsuWAIT_100US_400: .long 20000 173*bfc93fb4SNobuhiro IwamatsuWAIT_100US_533: .long 26650 174*bfc93fb4SNobuhiro IwamatsuWAIT_32MCLK: .long 32 175*bfc93fb4SNobuhiro IwamatsuWAIT_16MCLK: .long 16 176*bfc93fb4SNobuhiro IwamatsuWAIT_1MCLK: .long 1 177*bfc93fb4SNobuhiro IwamatsuWAIT_10KMCLK: .long 10000 178*bfc93fb4SNobuhiro Iwamatsu 179*bfc93fb4SNobuhiro IwamatsuDBPDCNT0_A: .long 0xFE800200 180*bfc93fb4SNobuhiro IwamatsuDBPDCNT0_D_533: .long 0x00010245 181*bfc93fb4SNobuhiro IwamatsuDBPDCNT0_D_400: .long 0x00010235 182*bfc93fb4SNobuhiro IwamatsuDBPDCNT1_A: .long 0xFE800204 183*bfc93fb4SNobuhiro IwamatsuDBPDCNT1_D: .long 0x00000014 184*bfc93fb4SNobuhiro IwamatsuDBPDCNT3_A: .long 0xFE80020C 185*bfc93fb4SNobuhiro IwamatsuDBPDCNT3_D: .long 0x80000000 186*bfc93fb4SNobuhiro IwamatsuDBPDCNT3_D0: .long 0x800F0000 187*bfc93fb4SNobuhiro IwamatsuDBPDCNT3_D1: .long 0x800F1000 188*bfc93fb4SNobuhiro IwamatsuDBPDCNT3_D2: .long 0x820F1000 189*bfc93fb4SNobuhiro IwamatsuDBPDCNT3_D3: .long 0x860F1000 190*bfc93fb4SNobuhiro IwamatsuDBPDCNT3_D4: .long 0x870F1000 191*bfc93fb4SNobuhiro IwamatsuDBPDCNT3_D5: .long 0x870F3000 192*bfc93fb4SNobuhiro IwamatsuDBPDCNT3_D6: .long 0x870F7000 193*bfc93fb4SNobuhiro Iwamatsu 194*bfc93fb4SNobuhiro Iwamatsuinit_dbsc3_ctrl_400: 195*bfc93fb4SNobuhiro Iwamatsu 196*bfc93fb4SNobuhiro Iwamatsu write32 DBKIND_A, DBKIND_D 197*bfc93fb4SNobuhiro Iwamatsu write32 DBCONF_A, DBCONF_D 198*bfc93fb4SNobuhiro Iwamatsu 199*bfc93fb4SNobuhiro Iwamatsu write32 DBTR0_A, DBTR0_D_400 200*bfc93fb4SNobuhiro Iwamatsu write32 DBTR1_A, DBTR1_D_400 201*bfc93fb4SNobuhiro Iwamatsu write32 DBTR2_A, DBTR2_D 202*bfc93fb4SNobuhiro Iwamatsu write32 DBTR3_A, DBTR3_D_400 203*bfc93fb4SNobuhiro Iwamatsu write32 DBTR4_A, DBTR4_D_400 204*bfc93fb4SNobuhiro Iwamatsu write32 DBTR5_A, DBTR5_D_400 205*bfc93fb4SNobuhiro Iwamatsu write32 DBTR6_A, DBTR6_D_400 206*bfc93fb4SNobuhiro Iwamatsu write32 DBTR7_A, DBTR7_D 207*bfc93fb4SNobuhiro Iwamatsu write32 DBTR8_A, DBTR8_D_400 208*bfc93fb4SNobuhiro Iwamatsu write32 DBTR9_A, DBTR9_D 209*bfc93fb4SNobuhiro Iwamatsu write32 DBTR10_A, DBTR10_D_400 210*bfc93fb4SNobuhiro Iwamatsu write32 DBTR11_A, DBTR11_D 211*bfc93fb4SNobuhiro Iwamatsu write32 DBTR12_A, DBTR12_D_400 212*bfc93fb4SNobuhiro Iwamatsu write32 DBTR13_A, DBTR13_D_400 213*bfc93fb4SNobuhiro Iwamatsu write32 DBTR14_A, DBTR14_D 214*bfc93fb4SNobuhiro Iwamatsu write32 DBTR15_A, DBTR15_D 215*bfc93fb4SNobuhiro Iwamatsu write32 DBTR16_A, DBTR16_D_400 216*bfc93fb4SNobuhiro Iwamatsu write32 DBTR17_A, DBTR17_D_400 217*bfc93fb4SNobuhiro Iwamatsu write32 DBTR18_A, DBTR18_D_400 218*bfc93fb4SNobuhiro Iwamatsu 219*bfc93fb4SNobuhiro Iwamatsu write32 DBBL_A, DBBL_D 220*bfc93fb4SNobuhiro Iwamatsu write32 DBRNK0_A, DBRNK0_D 221*bfc93fb4SNobuhiro Iwamatsu 222*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D0_400 223*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D1 224*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D2 225*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D3 226*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D4 227*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D5_400 228*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D6 229*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D7 230*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D8 231*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D9_400 232*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D10 233*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D11 234*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D12 235*bfc93fb4SNobuhiro Iwamatsu 236*bfc93fb4SNobuhiro Iwamatsu write32 DBRFCNF0_A, DBRFCNF0_D 237*bfc93fb4SNobuhiro Iwamatsu write32 DBRFCNF1_A, DBRFCNF1_D_400 238*bfc93fb4SNobuhiro Iwamatsu write32 DBRFCNF2_A, DBRFCNF2_D 239*bfc93fb4SNobuhiro Iwamatsu write32 DBRFEN_A, DBRFEN_D 240*bfc93fb4SNobuhiro Iwamatsu write32 DBACEN_A, DBACEN_D 241*bfc93fb4SNobuhiro Iwamatsu write32 DBACEN_A, DBACEN_D 242*bfc93fb4SNobuhiro Iwamatsu 243*bfc93fb4SNobuhiro Iwamatsu /* Dummy read */ 244*bfc93fb4SNobuhiro Iwamatsu mov.l DBWAIT_A, r1 245*bfc93fb4SNobuhiro Iwamatsu synco 246*bfc93fb4SNobuhiro Iwamatsu mov.l @r1, r0 247*bfc93fb4SNobuhiro Iwamatsu synco 248*bfc93fb4SNobuhiro Iwamatsu 249*bfc93fb4SNobuhiro Iwamatsu /* Dummy read */ 250*bfc93fb4SNobuhiro Iwamatsu mov.l SDRAM_A, r1 251*bfc93fb4SNobuhiro Iwamatsu synco 252*bfc93fb4SNobuhiro Iwamatsu mov.l @r1, r0 253*bfc93fb4SNobuhiro Iwamatsu synco 254*bfc93fb4SNobuhiro Iwamatsu 255*bfc93fb4SNobuhiro Iwamatsu /* need sleep 186A0 */ 256*bfc93fb4SNobuhiro Iwamatsu 257*bfc93fb4SNobuhiro Iwamatsu bra finish_init_sh7734 258*bfc93fb4SNobuhiro Iwamatsu nop 259*bfc93fb4SNobuhiro Iwamatsu 260*bfc93fb4SNobuhiro Iwamatsu .align 2 261*bfc93fb4SNobuhiro Iwamatsu 262*bfc93fb4SNobuhiro Iwamatsuinit_dbsc3_ctrl_533: 263*bfc93fb4SNobuhiro Iwamatsu 264*bfc93fb4SNobuhiro Iwamatsu write32 DBKIND_A, DBKIND_D 265*bfc93fb4SNobuhiro Iwamatsu write32 DBCONF_A, DBCONF_D 266*bfc93fb4SNobuhiro Iwamatsu 267*bfc93fb4SNobuhiro Iwamatsu write32 DBTR0_A, DBTR0_D_533 268*bfc93fb4SNobuhiro Iwamatsu write32 DBTR1_A, DBTR1_D_533 269*bfc93fb4SNobuhiro Iwamatsu write32 DBTR2_A, DBTR2_D 270*bfc93fb4SNobuhiro Iwamatsu write32 DBTR3_A, DBTR3_D_533 271*bfc93fb4SNobuhiro Iwamatsu write32 DBTR4_A, DBTR4_D_533 272*bfc93fb4SNobuhiro Iwamatsu write32 DBTR5_A, DBTR5_D_533 273*bfc93fb4SNobuhiro Iwamatsu write32 DBTR6_A, DBTR6_D_533 274*bfc93fb4SNobuhiro Iwamatsu write32 DBTR7_A, DBTR7_D 275*bfc93fb4SNobuhiro Iwamatsu write32 DBTR8_A, DBTR8_D_533 276*bfc93fb4SNobuhiro Iwamatsu write32 DBTR9_A, DBTR9_D 277*bfc93fb4SNobuhiro Iwamatsu write32 DBTR10_A, DBTR10_D_533 278*bfc93fb4SNobuhiro Iwamatsu write32 DBTR11_A, DBTR11_D 279*bfc93fb4SNobuhiro Iwamatsu write32 DBTR12_A, DBTR12_D_533 280*bfc93fb4SNobuhiro Iwamatsu write32 DBTR13_A, DBTR13_D_533 281*bfc93fb4SNobuhiro Iwamatsu write32 DBTR14_A, DBTR14_D 282*bfc93fb4SNobuhiro Iwamatsu write32 DBTR15_A, DBTR15_D 283*bfc93fb4SNobuhiro Iwamatsu write32 DBTR16_A, DBTR16_D_533 284*bfc93fb4SNobuhiro Iwamatsu write32 DBTR17_A, DBTR17_D_533 285*bfc93fb4SNobuhiro Iwamatsu write32 DBTR18_A, DBTR18_D_533 286*bfc93fb4SNobuhiro Iwamatsu 287*bfc93fb4SNobuhiro Iwamatsu write32 DBBL_A, DBBL_D 288*bfc93fb4SNobuhiro Iwamatsu write32 DBRNK0_A, DBRNK0_D 289*bfc93fb4SNobuhiro Iwamatsu 290*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D0_533 291*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D1 292*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D2 293*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D3 294*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D4 295*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D5_533 296*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D6 297*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D7 298*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D8 299*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D9_533 300*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D10 301*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D11 302*bfc93fb4SNobuhiro Iwamatsu write32 DBCMD_A, DBCMD_D12 303*bfc93fb4SNobuhiro Iwamatsu 304*bfc93fb4SNobuhiro Iwamatsu write32 DBRFCNF0_A, DBRFCNF0_D 305*bfc93fb4SNobuhiro Iwamatsu write32 DBRFCNF1_A, DBRFCNF1_D_533 306*bfc93fb4SNobuhiro Iwamatsu write32 DBRFCNF2_A, DBRFCNF2_D 307*bfc93fb4SNobuhiro Iwamatsu write32 DBRFEN_A, DBRFEN_D 308*bfc93fb4SNobuhiro Iwamatsu write32 DBACEN_A, DBACEN_D 309*bfc93fb4SNobuhiro Iwamatsu write32 DBACEN_A, DBACEN_D 310*bfc93fb4SNobuhiro Iwamatsu 311*bfc93fb4SNobuhiro Iwamatsu /* Dummy read */ 312*bfc93fb4SNobuhiro Iwamatsu mov.l DBWAIT_A, r1 313*bfc93fb4SNobuhiro Iwamatsu synco 314*bfc93fb4SNobuhiro Iwamatsu mov.l @r1, r0 315*bfc93fb4SNobuhiro Iwamatsu synco 316*bfc93fb4SNobuhiro Iwamatsu 317*bfc93fb4SNobuhiro Iwamatsu /* Dummy read */ 318*bfc93fb4SNobuhiro Iwamatsu mov.l SDRAM_A, r1 319*bfc93fb4SNobuhiro Iwamatsu synco 320*bfc93fb4SNobuhiro Iwamatsu mov.l @r1, r0 321*bfc93fb4SNobuhiro Iwamatsu synco 322*bfc93fb4SNobuhiro Iwamatsu 323*bfc93fb4SNobuhiro Iwamatsu /* need sleep 186A0 */ 324*bfc93fb4SNobuhiro Iwamatsu 325*bfc93fb4SNobuhiro Iwamatsu bra finish_init_sh7734 326*bfc93fb4SNobuhiro Iwamatsu nop 327*bfc93fb4SNobuhiro Iwamatsu 328*bfc93fb4SNobuhiro Iwamatsu .align 2 329*bfc93fb4SNobuhiro Iwamatsu 330*bfc93fb4SNobuhiro IwamatsuDBKIND_A: .long 0xFE800020 331*bfc93fb4SNobuhiro IwamatsuDBKIND_D: .long 0x00000005 332*bfc93fb4SNobuhiro IwamatsuDBCONF_A: .long 0xFE800024 333*bfc93fb4SNobuhiro IwamatsuDBCONF_D: .long 0x0D020901 334*bfc93fb4SNobuhiro Iwamatsu 335*bfc93fb4SNobuhiro IwamatsuDBTR0_A: .long 0xFE800040 336*bfc93fb4SNobuhiro IwamatsuDBTR0_D_533:.long 0x00000004 337*bfc93fb4SNobuhiro IwamatsuDBTR0_D_400:.long 0x00000003 338*bfc93fb4SNobuhiro IwamatsuDBTR1_A: .long 0xFE800044 339*bfc93fb4SNobuhiro IwamatsuDBTR1_D_533:.long 0x00000003 340*bfc93fb4SNobuhiro IwamatsuDBTR1_D_400:.long 0x00000002 341*bfc93fb4SNobuhiro IwamatsuDBTR2_A: .long 0xFE800048 342*bfc93fb4SNobuhiro IwamatsuDBTR2_D: .long 0x00000000 343*bfc93fb4SNobuhiro IwamatsuDBTR3_A: .long 0xFE800050 344*bfc93fb4SNobuhiro IwamatsuDBTR3_D_533:.long 0x00000004 345*bfc93fb4SNobuhiro IwamatsuDBTR3_D_400:.long 0x00000003 346*bfc93fb4SNobuhiro Iwamatsu 347*bfc93fb4SNobuhiro IwamatsuDBTR4_A: .long 0xFE800054 348*bfc93fb4SNobuhiro IwamatsuDBTR4_D_533:.long 0x00050004 349*bfc93fb4SNobuhiro IwamatsuDBTR4_D_400:.long 0x00050003 350*bfc93fb4SNobuhiro Iwamatsu 351*bfc93fb4SNobuhiro IwamatsuDBTR5_A: .long 0xFE800058 352*bfc93fb4SNobuhiro IwamatsuDBTR5_D_533:.long 0x0000000F 353*bfc93fb4SNobuhiro IwamatsuDBTR5_D_400:.long 0x0000000B 354*bfc93fb4SNobuhiro Iwamatsu 355*bfc93fb4SNobuhiro IwamatsuDBTR6_A: .long 0xFE80005C 356*bfc93fb4SNobuhiro IwamatsuDBTR6_D_533:.long 0x0000000B 357*bfc93fb4SNobuhiro IwamatsuDBTR6_D_400:.long 0x00000008 358*bfc93fb4SNobuhiro Iwamatsu 359*bfc93fb4SNobuhiro IwamatsuDBTR7_A: .long 0xFE800060 360*bfc93fb4SNobuhiro IwamatsuDBTR7_D: .long 0x00000002 361*bfc93fb4SNobuhiro Iwamatsu 362*bfc93fb4SNobuhiro IwamatsuDBTR8_A: .long 0xFE800064 363*bfc93fb4SNobuhiro IwamatsuDBTR8_D_533:.long 0x0000000D 364*bfc93fb4SNobuhiro IwamatsuDBTR8_D_400:.long 0x0000000A 365*bfc93fb4SNobuhiro Iwamatsu 366*bfc93fb4SNobuhiro IwamatsuDBTR9_A: .long 0xFE800068 367*bfc93fb4SNobuhiro IwamatsuDBTR9_D: .long 0x00000002 368*bfc93fb4SNobuhiro Iwamatsu 369*bfc93fb4SNobuhiro IwamatsuDBTR10_A: .long 0xFE80006C 370*bfc93fb4SNobuhiro IwamatsuDBTR10_D_533:.long 0x00000004 371*bfc93fb4SNobuhiro IwamatsuDBTR10_D_400:.long 0x00000003 372*bfc93fb4SNobuhiro Iwamatsu 373*bfc93fb4SNobuhiro IwamatsuDBTR11_A: .long 0xFE800070 374*bfc93fb4SNobuhiro IwamatsuDBTR11_D: .long 0x00000008 375*bfc93fb4SNobuhiro Iwamatsu 376*bfc93fb4SNobuhiro IwamatsuDBTR12_A: .long 0xFE800074 377*bfc93fb4SNobuhiro IwamatsuDBTR12_D_533:.long 0x00000009 378*bfc93fb4SNobuhiro IwamatsuDBTR12_D_400:.long 0x00000008 379*bfc93fb4SNobuhiro Iwamatsu 380*bfc93fb4SNobuhiro IwamatsuDBTR13_A: .long 0xFE800078 381*bfc93fb4SNobuhiro IwamatsuDBTR13_D_533:.long 0x00000022 382*bfc93fb4SNobuhiro IwamatsuDBTR13_D_400:.long 0x0000001A 383*bfc93fb4SNobuhiro Iwamatsu 384*bfc93fb4SNobuhiro IwamatsuDBTR14_A: .long 0xFE80007C 385*bfc93fb4SNobuhiro IwamatsuDBTR14_D: .long 0x00070002 386*bfc93fb4SNobuhiro Iwamatsu 387*bfc93fb4SNobuhiro IwamatsuDBTR15_A: .long 0xFE800080 388*bfc93fb4SNobuhiro IwamatsuDBTR15_D: .long 0x00000003 389*bfc93fb4SNobuhiro Iwamatsu 390*bfc93fb4SNobuhiro IwamatsuDBTR16_A: .long 0xFE800084 391*bfc93fb4SNobuhiro IwamatsuDBTR16_D_533:.long 0x120A1001 392*bfc93fb4SNobuhiro IwamatsuDBTR16_D_400:.long 0x12091001 393*bfc93fb4SNobuhiro Iwamatsu 394*bfc93fb4SNobuhiro IwamatsuDBTR17_A: .long 0xFE800088 395*bfc93fb4SNobuhiro IwamatsuDBTR17_D_533:.long 0x00040000 396*bfc93fb4SNobuhiro IwamatsuDBTR17_D_400:.long 0x00030000 397*bfc93fb4SNobuhiro Iwamatsu 398*bfc93fb4SNobuhiro IwamatsuDBTR18_A: .long 0xFE80008C 399*bfc93fb4SNobuhiro IwamatsuDBTR18_D_533:.long 0x02010200 400*bfc93fb4SNobuhiro IwamatsuDBTR18_D_400:.long 0x02000207 401*bfc93fb4SNobuhiro Iwamatsu 402*bfc93fb4SNobuhiro IwamatsuDBBL_A: .long 0xFE8000B0 403*bfc93fb4SNobuhiro IwamatsuDBBL_D: .long 0x00000000 404*bfc93fb4SNobuhiro Iwamatsu 405*bfc93fb4SNobuhiro IwamatsuDBRNK0_A: .long 0xFE800100 406*bfc93fb4SNobuhiro IwamatsuDBRNK0_D: .long 0x00000001 407*bfc93fb4SNobuhiro Iwamatsu 408*bfc93fb4SNobuhiro IwamatsuDBCMD_A: .long 0xFE800018 409*bfc93fb4SNobuhiro IwamatsuDBCMD_D0_533: .long 0x1100006B 410*bfc93fb4SNobuhiro IwamatsuDBCMD_D0_400: .long 0x11000050 411*bfc93fb4SNobuhiro IwamatsuDBCMD_D1: .long 0x0B000000 412*bfc93fb4SNobuhiro IwamatsuDBCMD_D2: .long 0x2A004000 413*bfc93fb4SNobuhiro IwamatsuDBCMD_D3: .long 0x2B006000 414*bfc93fb4SNobuhiro IwamatsuDBCMD_D4: .long 0x29002044 415*bfc93fb4SNobuhiro IwamatsuDBCMD_D5_533: .long 0x28000743 416*bfc93fb4SNobuhiro IwamatsuDBCMD_D5_400: .long 0x28000533 417*bfc93fb4SNobuhiro IwamatsuDBCMD_D6: .long 0x0B000000 418*bfc93fb4SNobuhiro IwamatsuDBCMD_D7: .long 0x0C000000 419*bfc93fb4SNobuhiro IwamatsuDBCMD_D8: .long 0x0C000000 420*bfc93fb4SNobuhiro IwamatsuDBCMD_D9_533: .long 0x28000643 421*bfc93fb4SNobuhiro IwamatsuDBCMD_D9_400: .long 0x28000433 422*bfc93fb4SNobuhiro IwamatsuDBCMD_D10: .long 0x000000C8 423*bfc93fb4SNobuhiro IwamatsuDBCMD_D11: .long 0x290023C4 424*bfc93fb4SNobuhiro IwamatsuDBCMD_D12: .long 0x29002004 425*bfc93fb4SNobuhiro Iwamatsu 426*bfc93fb4SNobuhiro IwamatsuDBRFCNF0_A: .long 0xFE8000E0 427*bfc93fb4SNobuhiro IwamatsuDBRFCNF0_D: .long 0x000001FF 428*bfc93fb4SNobuhiro IwamatsuDBRFCNF1_A: .long 0xFE8000E4 429*bfc93fb4SNobuhiro IwamatsuDBRFCNF1_D_533: .long 0x00000805 430*bfc93fb4SNobuhiro IwamatsuDBRFCNF1_D_400: .long 0x00000618 431*bfc93fb4SNobuhiro Iwamatsu 432*bfc93fb4SNobuhiro IwamatsuDBRFCNF2_A: .long 0xFE8000E8 433*bfc93fb4SNobuhiro IwamatsuDBRFCNF2_D: .long 0x00000000 434*bfc93fb4SNobuhiro Iwamatsu 435*bfc93fb4SNobuhiro IwamatsuDBRFEN_A: .long 0xFE800014 436*bfc93fb4SNobuhiro IwamatsuDBRFEN_D: .long 0x00000001 437*bfc93fb4SNobuhiro Iwamatsu 438*bfc93fb4SNobuhiro IwamatsuDBACEN_A: .long 0xFE800010 439*bfc93fb4SNobuhiro IwamatsuDBACEN_D: .long 0x00000001 440*bfc93fb4SNobuhiro Iwamatsu 441*bfc93fb4SNobuhiro IwamatsuDBWAIT_A: .long 0xFE80001C 442*bfc93fb4SNobuhiro IwamatsuSDRAM_A: .long 0x0C000000 443*bfc93fb4SNobuhiro Iwamatsu 444*bfc93fb4SNobuhiro Iwamatsufinish_init_sh7734: 445*bfc93fb4SNobuhiro Iwamatsu write32 CCR_A, CCR_D 446*bfc93fb4SNobuhiro Iwamatsu 447*bfc93fb4SNobuhiro Iwamatsu stc sr, r0 448*bfc93fb4SNobuhiro Iwamatsu mov.l SR_MASK_D, r1 449*bfc93fb4SNobuhiro Iwamatsu and r1, r0 450*bfc93fb4SNobuhiro Iwamatsu ldc r0, sr 451*bfc93fb4SNobuhiro Iwamatsu 452*bfc93fb4SNobuhiro Iwamatsu rts 453*bfc93fb4SNobuhiro Iwamatsu nop 454*bfc93fb4SNobuhiro Iwamatsu 455*bfc93fb4SNobuhiro Iwamatsu .align 2 456*bfc93fb4SNobuhiro Iwamatsu 457*bfc93fb4SNobuhiro IwamatsuCCR_A: .long 0xFF00001C 458*bfc93fb4SNobuhiro IwamatsuCCR_D: .long 0x0000090B 459*bfc93fb4SNobuhiro IwamatsuSR_MASK_D: .long 0xEFFFFF0F 460