mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-26 21:13:48 +00:00
83d290c56f
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us. In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style. This commit changes all instances where we have a single declared license in the tag as both the before and after are identical in tag contents. There's also a few places where I found we did not have a tag and have introduced one. Signed-off-by: Tom Rini <trini@konsulko.com> |
||
---|---|---|
.. | ||
ddr.c | ||
Kconfig | ||
law.c | ||
MAINTAINERS | ||
Makefile | ||
mpc8544ds.c | ||
README | ||
tlb.c |
Overview -------- The MPC8544DS system is similar to the 85xx CDS systems such as the MPC8548CDS due to the similar E500 core. However, it is placed on the same board as the 8641 HPCN system. Flash Banks ----------- Like the 85xx CDS systems, the 8544 DS board has two flash banks. They are both present on boot, but there locations can be swapped using the dip-switch SW10, bit 2. However, unlike the CDS systems, but similar to the 8641 HPCN board, a runtime reset through the FPGA can also affect a swap on the flash bank mappings for the next reset cycle. Irrespective of the switch SW10[2], booting is always from the boot bank at 0xfff8_0000. Memory Map ---------- 0xff80_0000 - 0xffbf_ffff Alternate bank 4MB 0xffc0_0000 - 0xffff_ffff Boot bank 4MB 0xffb8_0000 Alternate image start 512KB 0xfff8_0000 Boot image start 512KB Flashing Images --------------- For example, to place a new image in the alternate flash bank and then reset with that new image temporarily, use this: tftp 1000000 u-boot.bin.8544ds erase ffb80000 ffbfffff cp.b 1000000 ffb80000 80000 pixis_reset altbank To overwrite the image in the boot flash bank: tftp 1000000 u-boot.bin.8544ds protect off all erase fff80000 ffffffff cp.b 1000000 fff80000 80000 Other example U-Boot image and flash manipulations examples can be found in the README.mpc85xxcds file as well. The pixis_reset command ----------------------- A new command, "pixis_reset", is introduced to reset mpc8641hpcn board using the FPGA sequencer. When the board restarts, it has the option of using either the current or alternate flash bank as the boot image, with or without the watchdog timer enabled, and finally with or without frequency changes. Usage is; pixis_reset pixis_reset altbank pixis_reset altbank wd pixis_reset altbank cf <SYSCLK freq> <COREPLL ratio> <MPXPLL ratio> pixis_reset cf <SYSCLK freq> <COREPLL ratio> <MPXPLL ratio> Examples; /* reset to current bank, like "reset" command */ pixis_reset /* reset board but use the to alternate flash bank */ pixis_reset altbank /* reset board, use alternate flash bank with watchdog timer enabled*/ pixis_reset altbank wd /* reset board to alternate bank with frequency changed. * 40 is SYSCLK, 2.5 is COREPLL ratio, 10 is MPXPLL ratio */ pixis-reset altbank cf 40 2.5 10 Valid clock choices are in the 8641 Reference Manuals. Using the Device Tree Source File --------------------------------- To create the DTB (Device Tree Binary) image file, use a command similar to this: dtc -b 0 -f -I dts -O dtb mpc8544ds.dts > mpc8544ds.dtb Likely, that .dts file will come from here; linux-2.6/arch/powerpc/boot/dts/mpc8544ds.dts After placing the DTB file in your TFTP disk area, you can download that dtb file using a command like: tftp 900000 mpc8544ds.dtb Burn it to flash if you want. Booting Linux ------------- Place a linux uImage in the TFTP disk area too. tftp 1000000 uImage.8544 tftp 900000 mpc8544ds.dtb bootm 1000000 - 900000 Watch your ethact, netdev and bootargs U-Boot environment variables. You may want to do something like this too: setenv ethact eTSEC3 setenv netdev eth1