[U-Boot-Board-Maintainers] mach-ath79: ap121(ar9331) die in lowlevel_init

duhuanpeng iu87m888m at qq.com
Tue Oct 1 21:11:53 UTC 2019


Hello, Heinrich,

my board has

	64MByte(512Mbit) RAM
	16Mbyte SPI flash

I checked the ar9331 datasheet, DDR space is 0~0FFF FFFF, (256MB),
but my board is:
	512 Mbits (32 M x 16) 1 DDR1
	(H5DU5162ETR-E3C)
in this case, will the get_ram_size works properly?

/*
 * Check memory range for valid RAM. A simple memory test determines
 * the actually available RAM size between addresses `base' and
 * `base + maxsize'.
 */
long get_ram_size(long *base, long maxsize)


>   int dram_init(void)
>   {
>          ddr_tap_tuning();
> -       gd->ram_size = get_ram_size((void *)KSEG1, SZ_256M);
> +       gd->ram_size = get_ram_size((void *)KSEG1, SZ_64M);

the piece of code is tongling GPIO, I use a oscilloscope to test
the GPIO, I can see there was squarewave out from the GPIO.

> --- a/arch/mips/mach-ath79/ar933x/lowlevel_init.S
> +++ b/arch/mips/mach-ath79/ar933x/lowlevel_init.S
> @@ -78,6 +78,15 @@ LEAF(lowlevel_init)
>          /* These three WLAN_RESET will avoid original issue */
>          li      t3, 0x03
>   1:
> +
> +li      t0, 0x18040000
> +li      t1, 1
> +sw      t1, 0(t0)
> +
> +lw      t1, 8(t0)
> +xori    t1, t1, 1
> +sw      t1, 8(t0)
> +
>          li      t0, CKSEG1ADDR(AR71XX_RESET_BASE)
>          lw      t1, AR933X_RESET_REG_RESET_MODULE(t0)
>          ori     t1, t1, 0x0800

Regards,
duhuanpeng





More information about the U-Boot-Board-Maintainers mailing list