ARM: dts: exynos4412-*: decrease memory to account for unusable region
Commit Message
The last 4 MiB of RAM on those devices is likely used by trustzone
firmware, and is unusable under Linux. Change the device tree memory
node accordingly.
The proprietary bootloader (S-BOOT) passes these memory ranges through
ATAG_MEM; this change allows us to have the correct memory ranges
without relying on ATAG_MEM.
Tested-by: Henrik Grimler <henrik@grimler.se> # i9300, i9305
Signed-off-by: Artur Weber <aweber.kernel@gmail.com>
---
This follows a similar fix implemented for the exynos5420-based
Galaxy Tab boards:
https://lore.kernel.org/all/20240130-galaxy-tab-s-cleanup-v1-3-d4e17857241d@grimler.se/
..which in turn is inspired by another fix applied to exynos5422
Odroid devices, 6591a02e17e6 ("ARM: dts: reduce total RAM by 22 MiB
for exynos5422-odroidxu3"):
https://lore.kernel.org/all/1421842972-25807-1-git-send-email-m.szyprowski@samsung.com/
---
arch/arm/boot/dts/samsung/exynos4412-i9300.dts | 2 +-
arch/arm/boot/dts/samsung/exynos4412-i9305.dts | 2 +-
arch/arm/boot/dts/samsung/exynos4412-n710x.dts | 2 +-
arch/arm/boot/dts/samsung/exynos4412-p4note.dtsi | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
---
base-commit: 0f1dd5e91e2ba3990143645faff2bcce2d99778e
change-id: 20240217-exynos4-memsize-fix-dccdb9eb75d6
Best regards,
Comments
On Sat, 17 Feb 2024 19:22:40 +0100, Artur Weber wrote:
> The last 4 MiB of RAM on those devices is likely used by trustzone
> firmware, and is unusable under Linux. Change the device tree memory
> node accordingly.
>
> The proprietary bootloader (S-BOOT) passes these memory ranges through
> ATAG_MEM; this change allows us to have the correct memory ranges
> without relying on ATAG_MEM.
>
> [...]
Applied, thanks!
[1/1] ARM: dts: exynos4412-*: decrease memory to account for unusable region
https://git.kernel.org/krzk/linux/c/5fb1252944fc3bba4a1026adaa9d150cfe8a3e16
Best regards,
@@ -18,7 +18,7 @@ / {
memory@40000000 {
device_type = "memory";
- reg = <0x40000000 0x40000000>;
+ reg = <0x40000000 0x3fc00000>;
};
};
@@ -11,7 +11,7 @@ / {
memory@40000000 {
device_type = "memory";
- reg = <0x40000000 0x80000000>;
+ reg = <0x40000000 0x7fc00000>;
};
};
@@ -9,7 +9,7 @@ / {
memory@40000000 {
device_type = "memory";
- reg = <0x40000000 0x80000000>;
+ reg = <0x40000000 0x7fc00000>;
};
/* bootargs are passed in by bootloader */
@@ -23,7 +23,7 @@ / {
memory@40000000 {
device_type = "memory";
- reg = <0x40000000 0x80000000>;
+ reg = <0x40000000 0x7fc00000>;
};
aliases {