Re: [U-Boot] [PATCH 3/8] riscv: ax25-ae350: Use generic memory size setup

2019-10-29 Thread Rick Chen
Hi Bin

Bin Meng  於 2019年10月29日 週二 下午10:42寫道:
>
> Hi Rick,
>
> On Fri, Oct 25, 2019 at 2:17 PM Andes  wrote:
> >
> > From: Rick Chen 
> >
> > To get memory size from device tree instead of
> > get_ram_size(). This can avoid memory access fault
>
> Could you please explain a little more about why get_ram_size() causes
> PMP access fault?

OpenSBI will configure pmpcfg and pmpaddr for memory protection in
specific range.
When get_ram_size() try to store or load memory address, it will appear
access fault exception.

Thanks
Rick

>
> > in U-Boot proper after PMP configurations in OpenSbi.
> >
> > Signed-off-by: Rick Chen 
> > Cc: KC Lin 
> > Cc: Alan Kao 
> > ---
> >  board/AndesTech/ax25-ae350/ax25-ae350.c | 21 ++---
> >  1 file changed, 2 insertions(+), 19 deletions(-)
> >
>
> Regards,
> Bin
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [PATCH 3/8] riscv: ax25-ae350: Use generic memory size setup

2019-10-29 Thread Bin Meng
Hi Rick,

On Fri, Oct 25, 2019 at 2:17 PM Andes  wrote:
>
> From: Rick Chen 
>
> To get memory size from device tree instead of
> get_ram_size(). This can avoid memory access fault

Could you please explain a little more about why get_ram_size() causes
PMP access fault?

> in U-Boot proper after PMP configurations in OpenSbi.
>
> Signed-off-by: Rick Chen 
> Cc: KC Lin 
> Cc: Alan Kao 
> ---
>  board/AndesTech/ax25-ae350/ax25-ae350.c | 21 ++---
>  1 file changed, 2 insertions(+), 19 deletions(-)
>

Regards,
Bin
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 3/8] riscv: ax25-ae350: Use generic memory size setup

2019-10-24 Thread Andes
From: Rick Chen 

To get memory size from device tree instead of
get_ram_size(). This can avoid memory access fault
in U-Boot proper after PMP configurations in OpenSbi.

Signed-off-by: Rick Chen 
Cc: KC Lin 
Cc: Alan Kao 
---
 board/AndesTech/ax25-ae350/ax25-ae350.c | 21 ++---
 1 file changed, 2 insertions(+), 19 deletions(-)

diff --git a/board/AndesTech/ax25-ae350/ax25-ae350.c 
b/board/AndesTech/ax25-ae350/ax25-ae350.c
index b0164a9..47e6929 100644
--- a/board/AndesTech/ax25-ae350/ax25-ae350.c
+++ b/board/AndesTech/ax25-ae350/ax25-ae350.c
@@ -30,29 +30,12 @@ int board_init(void)
 
 int dram_init(void)
 {
-   unsigned long sdram_base = PHYS_SDRAM_0;
-   unsigned long expected_size = PHYS_SDRAM_0_SIZE + PHYS_SDRAM_1_SIZE;
-   unsigned long actual_size;
-
-   actual_size = get_ram_size((void *)sdram_base, expected_size);
-   gd->ram_size = actual_size;
-
-   if (expected_size != actual_size) {
-   printf("Warning: Only %lu of %lu MiB SDRAM is working\n",
-   actual_size >> 20, expected_size >> 20);
-   }
-
-   return 0;
+   return fdtdec_setup_mem_size_base();
 }
 
 int dram_init_banksize(void)
 {
-   gd->bd->bi_dram[0].start = PHYS_SDRAM_0;
-   gd->bd->bi_dram[0].size =  PHYS_SDRAM_0_SIZE;
-   gd->bd->bi_dram[1].start = PHYS_SDRAM_1;
-   gd->bd->bi_dram[1].size =  PHYS_SDRAM_1_SIZE;
-
-   return 0;
+   return fdtdec_setup_memory_banksize();
 }
 
 #if defined(CONFIG_FTMAC100) && !defined(CONFIG_DM_ETH)
-- 
2.7.4

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot