1*702e6014SWolfgang DenkOverview 2*702e6014SWolfgang Denk-------- 3*702e6014SWolfgang DenkThe MPC8544DS system is similar to the 85xx CDS systems such 4*702e6014SWolfgang Denkas the MPC8548CDS due to the similar E500 core. However, it 5*702e6014SWolfgang Denkis placed on the same board as the 8641 HPCN system. 6*702e6014SWolfgang Denk 7*702e6014SWolfgang Denk 8*702e6014SWolfgang DenkFlash Banks 9*702e6014SWolfgang Denk----------- 10*702e6014SWolfgang DenkLike the 85xx CDS systems, the 8544 DS board has two flash banks. 11*702e6014SWolfgang DenkThey are both present on boot, but there locations can be swapped 12*702e6014SWolfgang Denkusing the dip-switch SW10, bit 2. 13*702e6014SWolfgang Denk 14*702e6014SWolfgang DenkHowever, unlike the CDS systems, but similar to the 8641 HPCN 15*702e6014SWolfgang Denkboard, a runtime reset through the FPGA can also affect a swap 16*702e6014SWolfgang Denkon the flash bank mappings for the next reset cycle. 17*702e6014SWolfgang Denk 18*702e6014SWolfgang DenkIrrespective of the switch SW10[2], booting is always from the 19*702e6014SWolfgang Denkboot bank at 0xfff8_0000. 20*702e6014SWolfgang Denk 21*702e6014SWolfgang Denk 22*702e6014SWolfgang DenkMemory Map 23*702e6014SWolfgang Denk---------- 24*702e6014SWolfgang Denk 25*702e6014SWolfgang Denk0xff80_0000 - 0xffbf_ffff Alternate bank 4MB 26*702e6014SWolfgang Denk0xffc0_0000 - 0xffff_ffff Boot bank 4MB 27*702e6014SWolfgang Denk 28*702e6014SWolfgang Denk0xffb8_0000 Alternate image start 512KB 29*702e6014SWolfgang Denk0xfff8_0000 Boot image start 512KB 30*702e6014SWolfgang Denk 31*702e6014SWolfgang Denk 32*702e6014SWolfgang DenkFlashing Images 33*702e6014SWolfgang Denk--------------- 34*702e6014SWolfgang Denk 35*702e6014SWolfgang DenkFor example, to place a new image in the alternate flash bank 36*702e6014SWolfgang Denkand then reset with that new image temporarily, use this: 37*702e6014SWolfgang Denk 38*702e6014SWolfgang Denk tftp 1000000 u-boot.bin.8544ds 39*702e6014SWolfgang Denk erase ffb80000 ffbfffff 40*702e6014SWolfgang Denk cp.b 1000000 ffb80000 80000 41*702e6014SWolfgang Denk pixis_reset altbank 42*702e6014SWolfgang Denk 43*702e6014SWolfgang Denk 44*702e6014SWolfgang DenkTo overwrite the image in the boot flash bank: 45*702e6014SWolfgang Denk 46*702e6014SWolfgang Denk tftp 1000000 u-boot.bin.8544ds 47*702e6014SWolfgang Denk protect off all 48*702e6014SWolfgang Denk erase fff80000 ffffffff 49*702e6014SWolfgang Denk cp.b 1000000 fff80000 80000 50*702e6014SWolfgang Denk 51*702e6014SWolfgang DenkOther example U-Boot image and flash manipulations examples 52*702e6014SWolfgang Denkcan be found in the README.mpc85xxcds file as well. 53*702e6014SWolfgang Denk 54*702e6014SWolfgang Denk 55*702e6014SWolfgang DenkThe pixis_reset command 56*702e6014SWolfgang Denk----------------------- 57*702e6014SWolfgang DenkA new command, "pixis_reset", is introduced to reset mpc8641hpcn board 58*702e6014SWolfgang Denkusing the FPGA sequencer. When the board restarts, it has the option 59*702e6014SWolfgang Denkof using either the current or alternate flash bank as the boot 60*702e6014SWolfgang Denkimage, with or without the watchdog timer enabled, and finally with 61*702e6014SWolfgang Denkor without frequency changes. 62*702e6014SWolfgang Denk 63*702e6014SWolfgang DenkUsage is; 64*702e6014SWolfgang Denk 65*702e6014SWolfgang Denk pixis_reset 66*702e6014SWolfgang Denk pixis_reset altbank 67*702e6014SWolfgang Denk pixis_reset altbank wd 68*702e6014SWolfgang Denk pixis_reset altbank cf <SYSCLK freq> <COREPLL ratio> <MPXPLL ratio> 69*702e6014SWolfgang Denk pixis_reset cf <SYSCLK freq> <COREPLL ratio> <MPXPLL ratio> 70*702e6014SWolfgang Denk 71*702e6014SWolfgang DenkExamples; 72*702e6014SWolfgang Denk 73*702e6014SWolfgang Denk /* reset to current bank, like "reset" command */ 74*702e6014SWolfgang Denk pixis_reset 75*702e6014SWolfgang Denk 76*702e6014SWolfgang Denk /* reset board but use the to alternate flash bank */ 77*702e6014SWolfgang Denk pixis_reset altbank 78*702e6014SWolfgang Denk 79*702e6014SWolfgang Denk /* reset board, use alternate flash bank with watchdog timer enabled*/ 80*702e6014SWolfgang Denk pixis_reset altbank wd 81*702e6014SWolfgang Denk 82*702e6014SWolfgang Denk /* reset board to alternate bank with frequency changed. 83*702e6014SWolfgang Denk * 40 is SYSCLK, 2.5 is COREPLL ratio, 10 is MPXPLL ratio 84*702e6014SWolfgang Denk */ 85*702e6014SWolfgang Denk pixis-reset altbank cf 40 2.5 10 86*702e6014SWolfgang Denk 87*702e6014SWolfgang DenkValid clock choices are in the 8641 Reference Manuals. 88*702e6014SWolfgang Denk 89*702e6014SWolfgang Denk 90*702e6014SWolfgang DenkUsing the Device Tree Source File 91*702e6014SWolfgang Denk--------------------------------- 92*702e6014SWolfgang DenkTo create the DTB (Device Tree Binary) image file, 93*702e6014SWolfgang Denkuse a command similar to this: 94*702e6014SWolfgang Denk 95*702e6014SWolfgang Denk dtc -b 0 -f -I dts -O dtb mpc8544ds.dts > mpc8544ds.dtb 96*702e6014SWolfgang Denk 97*702e6014SWolfgang DenkLikely, that .dts file will come from here; 98*702e6014SWolfgang Denk 99*702e6014SWolfgang Denk linux-2.6/arch/powerpc/boot/dts/mpc8544ds.dts 100*702e6014SWolfgang Denk 101*702e6014SWolfgang DenkAfter placing the DTB file in your TFTP disk area, 102*702e6014SWolfgang Denkyou can download that dtb file using a command like: 103*702e6014SWolfgang Denk 104*702e6014SWolfgang Denk tftp 900000 mpc8544ds.dtb 105*702e6014SWolfgang Denk 106*702e6014SWolfgang DenkBurn it to flash if you want. 107*702e6014SWolfgang Denk 108*702e6014SWolfgang Denk 109*702e6014SWolfgang DenkBooting Linux 110*702e6014SWolfgang Denk------------- 111*702e6014SWolfgang Denk 112*702e6014SWolfgang DenkPlace a linux uImage in the TFTP disk area too. 113*702e6014SWolfgang Denk 114*702e6014SWolfgang Denk tftp 1000000 uImage.8544 115*702e6014SWolfgang Denk tftp 900000 mpc8544ds.dtb 116*702e6014SWolfgang Denk bootm 1000000 - 900000 117*702e6014SWolfgang Denk 118*702e6014SWolfgang DenkWatch your ethact, netdev and bootargs U-Boot environment variables. 119*702e6014SWolfgang DenkYou may want to do something like this too: 120*702e6014SWolfgang Denk 121*702e6014SWolfgang Denk setenv ethact eTSEC3 122*702e6014SWolfgang Denk setenv netdev eth1 123