diff mbox series

[05/10] mach-snapdragon: Update gd->ram_size in msm_fixup_memory

Message ID 20240226100807.1095607-6-quic_varada@quicinc.com
State Changes Requested
Delegated to: Caleb Connolly
Headers show
Series Add initial support for IPQ9574 based boards | expand

Commit Message

Varadarajan Narayanan Feb. 26, 2024, 10:08 a.m. UTC
* gd->ram_size: msm_fixup_memory calculates the amount of memory
  present in the system. Update 'gd->ram_size' with the computed
  value.

* Update FDT only if 'blob' is not null

Signed-off-by: Varadarajan Narayanan <quic_varada@quicinc.com>
---

 arch/arm/mach-snapdragon/dram.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

Comments

Dan Carpenter Feb. 26, 2024, 3:41 p.m. UTC | #1
On Mon, Feb 26, 2024 at 03:38:02PM +0530, Varadarajan Narayanan wrote:
> 
> * Update FDT only if 'blob' is not null

It seems that this is patching up a bug that was introduced in patch
1/10.  Please fold it into patch 1.

> @@ -91,9 +93,9 @@ int msm_fixup_memory(void *blob)
>  		return -ENODEV;
>  	}
>  
> -	ret = fdt_fixup_memory_banks(blob, bank_start, bank_size, count);
> -	if (ret)
> -		return ret;
> +	if (blob)
> +		return fdt_fixup_memory_banks(blob, bank_start,
> +					      bank_size, count);
>  
> -	return 0;
> +	return ret;

Please leave this as return 0;

regards,
dan carpenter
diff mbox series

Patch

diff --git a/arch/arm/mach-snapdragon/dram.c b/arch/arm/mach-snapdragon/dram.c
index 499dfdf0da..08d681555d 100644
--- a/arch/arm/mach-snapdragon/dram.c
+++ b/arch/arm/mach-snapdragon/dram.c
@@ -74,10 +74,12 @@  int msm_fixup_memory(void *blob)
 		return -ENODEV;
 	}
 
+	gd->ram_size = 0;
 	/* Check validy of RAM */
 	for (i = 0; i < RAM_NUM_PART_ENTRIES; i++) {
 		p = &ram_ptable->parts[i];
 		if (p->category == CATEGORY_SDRAM && p->type == TYPE_SYSMEM) {
+			gd->ram_size += p->size;
 			bank_start[count] = p->start;
 			bank_size[count] = p->size;
 			debug("Detected memory bank %u: start: 0x%llx size: 0x%llx\n",
@@ -91,9 +93,9 @@  int msm_fixup_memory(void *blob)
 		return -ENODEV;
 	}
 
-	ret = fdt_fixup_memory_banks(blob, bank_start, bank_size, count);
-	if (ret)
-		return ret;
+	if (blob)
+		return fdt_fixup_memory_banks(blob, bank_start,
+					      bank_size, count);
 
-	return 0;
+	return ret;
 }