mirror of
https://github.com/torvalds/linux.git
synced 2026-09-23 13:14:02 +02:00
clk: mediatek: mt8135: Fix inverted gate control for devapc_ck
The devapc_ck (CLK_INFRA_DEVAPC) on MT8135 is currently using "mtk_clk_gate_ops_setclr". However, checking the downstream kernel reveals that this clock is configured with set:enable and clr:disable making "mtk_clk_gate_ops_setclr_inv" the appropriate choice. But, it is strange that some downstream kernels are not like that. Amazon: INV ChromiumOS (early): not INV ChromiumOS 3.16 to 3.18-revew-v2: INV ChromiumOS 3.18-review-v3 and later (sent to kernel.org): not INV Link:e2b2163a8e/arch/arm/mach-mt8135/mt_clkmgr.c (L1022-L1028)Link:4b624ee66e/arch/arm/boot/dts/mt8135-clocks.dtsi (L944-L948)Link:decd80c01d/drivers/clk/mediatek/clk-mt8135.c (L881-L882)Link:9b6f06cb76/drivers/clk/mediatek/clk-mt8135.c (L450)Fixes:a8aede7948("clk: mediatek: Add basic clocks for Mediatek MT8135.") Signed-off-by: Akari Tsuyukusa <akkun11.open@gmail.com> Signed-off-by: Brian Masney <bmasney@redhat.com>
This commit is contained in:
parent
d85028afef
commit
fd0e3e4ede
|
|
@ -409,6 +409,9 @@ static const struct mtk_gate_regs infra_cg_regs = {
|
|||
GATE_MTK_FLAGS(_id, _name, _parent, &infra_cg_regs, _shift, \
|
||||
&mtk_clk_gate_ops_setclr, CLK_IS_CRITICAL)
|
||||
|
||||
#define GATE_ICG_INV(_id, _name, _parent, _shift) \
|
||||
GATE_MTK(_id, _name, _parent, &infra_cg_regs, _shift, &mtk_clk_gate_ops_setclr_inv)
|
||||
|
||||
static const struct mtk_gate infra_clks[] = {
|
||||
GATE_DUMMY(CLK_DUMMY, "infra_dummy"),
|
||||
GATE_ICG(CLK_INFRA_PMIC_WRAP, "pmic_wrap_ck", "axi_sel", 23),
|
||||
|
|
@ -419,7 +422,7 @@ static const struct mtk_gate infra_clks[] = {
|
|||
GATE_ICG(CLK_INFRA_CPUM, "cpum_ck", "cpum_tck_in", 15),
|
||||
GATE_ICG_AO(CLK_INFRA_M4U, "m4u_ck", "mem_sel", 8),
|
||||
GATE_ICG(CLK_INFRA_MFGAXI, "mfgaxi_ck", "axi_sel", 7),
|
||||
GATE_ICG(CLK_INFRA_DEVAPC, "devapc_ck", "axi_sel", 6),
|
||||
GATE_ICG_INV(CLK_INFRA_DEVAPC, "devapc_ck", "axi_sel", 6),
|
||||
GATE_ICG(CLK_INFRA_AUDIO, "audio_ck", "aud_intbus_sel", 5),
|
||||
GATE_ICG(CLK_INFRA_MFG_BUS, "mfg_bus_ck", "axi_sel", 2),
|
||||
GATE_ICG(CLK_INFRA_SMI, "smi_ck", "smi_sel", 1),
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user