]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
ram: starfive: drop references to 16GB memory size
authorE Shattow <e@freeshell.de>
Thu, 30 Oct 2025 06:23:32 +0000 (23:23 -0700)
committerLeo Yu-Chi Liang <ycliang@andestech.com>
Mon, 8 Dec 2025 04:10:26 +0000 (12:10 +0800)
16GB memory size is not addressable on StarFive JH-7110 SoC because the
DRAM uncached alias begins at +8GB offset from start of DRAM. The logic
for 16GB memory size is a fall-through to the default for an unknown size.
Let's drop this unnecessary 16GB memory size and rely on the case default.

Signed-off-by: E Shattow <e@freeshell.de>
drivers/ram/starfive/ddrcsr_boot.c
drivers/ram/starfive/ddrphy_start.c
drivers/ram/starfive/starfive_ddr.c
drivers/ram/starfive/starfive_ddr.h

index 6764b3ed5cc918a56979c85d34c85f1a998ebd61..ece6f5aae94ea41ead2fa0a638a2eb3368c4d652 100644 (file)
@@ -231,7 +231,6 @@ void ddrcsr_boot(u32 *csrreg, u32 *secreg, u32 *phyreg, enum ddr_size_t size)
                mask = REG8G;
                break;
 
-       case DDR_SIZE_16G:
        default:
                return;
        };
@@ -260,7 +259,6 @@ void ddrcsr_boot(u32 *csrreg, u32 *secreg, u32 *phyreg, enum ddr_size_t size)
                out_le32(csrreg + REGOFFSET(0x10), 0x3c);
                break;
 
-       case DDR_SIZE_16G:
        default:
                break;
        };
@@ -286,7 +284,6 @@ void ddrcsr_boot(u32 *csrreg, u32 *secreg, u32 *phyreg, enum ddr_size_t size)
                break;
 
        case DDR_SIZE_2G:
-       case DDR_SIZE_16G:
        default:
                break;
        };
index efe3f8a181a54f0671efadbf0ea5eda78d761d83..f26bc9ccaade33ebcd0044aded2990f3179df5d5 100644 (file)
@@ -267,7 +267,6 @@ void ddr_phy_start(u32 *phyreg, enum ddr_size_t size)
                mask = REG8G;
                break;
 
-       case DDR_SIZE_16G:
        default:
                return;
        };
index b31ed3bcf617326436e88440238c805ae0669b73..9e902f03ee9ae3b6e3f2b8c2d16a0257e406b8d7 100644 (file)
@@ -47,7 +47,6 @@ static int starfive_ddr_setup(struct udevice *dev, struct starfive_ddr_priv *pri
                size = DDR_SIZE_8G;
                break;
 
-       case 0x400000000:
        default:
                pr_err("unsupport size %lx\n", priv->info.size);
                return -EINVAL;
index c29d26b510c9c436cf7d4c0da8183cc4b569ea89..3ab0b0e8fa668b94d3c6d5a58f586a27efcbe0c8 100644 (file)
@@ -48,7 +48,6 @@ enum ddr_size_t {
        DDR_SIZE_2G,
        DDR_SIZE_4G,
        DDR_SIZE_8G,
-       DDR_SIZE_16G,
 };
 
 void ddr_phy_train(u32 *phyreg);