powerpc/512x: mark clocks as big endian
authorJonas Gorski <jonas.gorski@gmail.com>
Thu, 18 Apr 2019 11:12:09 +0000 (13:12 +0200)
committerStephen Boyd <sboyd@kernel.org>
Tue, 23 Apr 2019 17:57:49 +0000 (10:57 -0700)
These clocks' registers are accessed as big endian, so mark them as
such.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
arch/powerpc/platforms/512x/clock-commonclk.c

index b3097fe6441b9571095a696b7ee357c995b88dbb..af265ae40a6125f9445b706e09dc4089e5d7d42f 100644 (file)
@@ -239,6 +239,7 @@ static inline struct clk *mpc512x_clk_divider(
        const char *name, const char *parent_name, u8 clkflags,
        u32 __iomem *reg, u8 pos, u8 len, int divflags)
 {
+       divflags |= CLK_DIVIDER_BIG_ENDIAN;
        return clk_register_divider(NULL, name, parent_name, clkflags,
                                    reg, pos, len, divflags, &clklock);
 }
@@ -250,7 +251,7 @@ static inline struct clk *mpc512x_clk_divtable(
 {
        u8 divflags;
 
-       divflags = 0;
+       divflags = CLK_DIVIDER_BIG_ENDIAN;
        return clk_register_divider_table(NULL, name, parent_name, 0,
                                          reg, pos, len, divflags,
                                          divtab, &clklock);
@@ -261,10 +262,12 @@ static inline struct clk *mpc512x_clk_gated(
        u32 __iomem *reg, u8 pos)
 {
        int clkflags;
+       u8 gateflags;
 
        clkflags = CLK_SET_RATE_PARENT;
+       gateflags = CLK_GATE_BIG_ENDIAN;
        return clk_register_gate(NULL, name, parent_name, clkflags,
-                                reg, pos, 0, &clklock);
+                                reg, pos, gateflags, &clklock);
 }
 
 static inline struct clk *mpc512x_clk_muxed(const char *name,
@@ -275,7 +278,7 @@ static inline struct clk *mpc512x_clk_muxed(const char *name,
        u8 muxflags;
 
        clkflags = CLK_SET_RATE_PARENT;
-       muxflags = 0;
+       muxflags = CLK_MUX_BIG_ENDIAN;
        return clk_register_mux(NULL, name,
                                parent_names, parent_count, clkflags,
                                reg, pos, len, muxflags, &clklock);