OSDN Git Service

memory: of: parse max-freq property
authorKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Sun, 6 Feb 2022 13:58:06 +0000 (14:58 +0100)
committerKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Wed, 9 Feb 2022 14:34:42 +0000 (15:34 +0100)
Passing the memory timings maximum frequency as an unit address was
a workaround and instead 'max-freq' is preferred.  Look for 'max-freq'
first and then fallback to 'reg'.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Reviewed-by: Alim Akhtar <alim.ahtar@samsung.com>
Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220206135807.211767-8-krzysztof.kozlowski@canonical.com
drivers/memory/of_memory.c

index b944089..bac5c7f 100644 (file)
@@ -212,8 +212,10 @@ static int of_lpddr3_do_get_timings(struct device_node *np,
 {
        int ret;
 
-       /* The 'reg' param required since DT has changed, used as 'max-freq' */
-       ret = of_property_read_u32(np, "reg", &tim->max_freq);
+       ret = of_property_read_u32(np, "max-freq", &tim->max_freq);
+       if (ret)
+               /* Deprecated way of passing max-freq as 'reg' */
+               ret = of_property_read_u32(np, "reg", &tim->max_freq);
        ret |= of_property_read_u32(np, "min-freq", &tim->min_freq);
        ret |= of_property_read_u32(np, "tRFC", &tim->tRFC);
        ret |= of_property_read_u32(np, "tRRD", &tim->tRRD);