mips: mtmips: rewrite lowlevel codes of mt7628
authorWeijie Gao <weijie.gao@mediatek.com>
Tue, 21 Apr 2020 07:28:34 +0000 (09:28 +0200)
committerDaniel Schwierzeck <daniel.schwierzeck@gmail.com>
Mon, 27 Apr 2020 18:29:33 +0000 (20:29 +0200)
commit02cd449f0b03a3015577b42fbb4db88606c76c03
tree7cc9b437e9a31f96433f649406a4d5a3b1d2178d
parentc95c3ec025f46b6d65f87bc1010eae76c4152334
mips: mtmips: rewrite lowlevel codes of mt7628

This patch rewrites the mtmips architecture with the following changes:

1. Move MT7628 soc parts into a subfolder.
2. Lock parts of D-Cache as temporary stack.
3. Reimplement DDR initialization in C language.
4. Reimplement DDR calibration in a clear logic.
5. Add full support for auto size detection for DDR1 and DDR2.
6. Use accurate CPU clock depending on the input xtal frequency for timer
   and delay functions.

Note:

print_cpuinfo() has incompatible parts with MT7620 so it's moved into
mt7628 subfolder.

Reviewed-by: Stefan Roese <sr@denx.de>
Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
17 files changed:
arch/mips/mach-mtmips/Kconfig
arch/mips/mach-mtmips/Makefile
arch/mips/mach-mtmips/cpu.c
arch/mips/mach-mtmips/ddr_cal.c [new file with mode: 0644]
arch/mips/mach-mtmips/ddr_calibrate.c [deleted file]
arch/mips/mach-mtmips/ddr_init.c [new file with mode: 0644]
arch/mips/mach-mtmips/include/mach/ddr.h [new file with mode: 0644]
arch/mips/mach-mtmips/include/mach/mc.h [new file with mode: 0644]
arch/mips/mach-mtmips/lowlevel_init.S [deleted file]
arch/mips/mach-mtmips/mt7628/Makefile [new file with mode: 0644]
arch/mips/mach-mtmips/mt7628/ddr.c [new file with mode: 0644]
arch/mips/mach-mtmips/mt7628/init.c [new file with mode: 0644]
arch/mips/mach-mtmips/mt7628/lowlevel_init.S [new file with mode: 0644]
arch/mips/mach-mtmips/mt7628/mt7628.h [new file with mode: 0644]
arch/mips/mach-mtmips/mt76xx.h [deleted file]
configs/gardena-smart-gateway-mt7688_defconfig
configs/linkit-smart-7688_defconfig