1
0
Fork 0

powerpc/512x: mark clocks as big endian

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>
hifive-unleashed-5.2
Jonas Gorski 2019-04-18 13:12:09 +02:00 committed by Stephen Boyd
parent 3a72751965
commit ce0c890e2a
1 changed files with 6 additions and 3 deletions

View File

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