Skip to content

Commit 527630f

Browse files
committed
Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux
Pull clk fixes from Stephen Boyd: "A handful of clk driver fixes. Mostly they're around the i.MX drivers fixing the parents of a few clks and making KASAN happy with how the message passing code works. Besides that we have a TI driver fix for the RTC parent and a fix for the basic gate type registration functions introduced this release where they didn't actually pass the arguments in the right places to the multiplexer function down below" * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: clk: imx: Align imx sc clock parent msg structs to 4 clk: imx: Align imx sc clock msg structs to 4 clk: Pass correct arguments to __clk_hw_register_gate() clk: ti: am43xx: Fix clock parent for RTC clock clk: imx8mp: Correct the enet_qos parent clock clk: imx8mp: Correct IMX8MP_CLK_HDMI_AXI clock parent
2 parents 7bf8df6 + 8400ab8 commit 527630f

File tree

4 files changed

+12
-12
lines changed

4 files changed

+12
-12
lines changed

drivers/clk/imx/clk-imx8mp.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -560,7 +560,7 @@ static int imx8mp_clocks_probe(struct platform_device *pdev)
560560
hws[IMX8MP_CLK_MEDIA_AXI] = imx8m_clk_hw_composite("media_axi", imx8mp_media_axi_sels, ccm_base + 0x8a00);
561561
hws[IMX8MP_CLK_MEDIA_APB] = imx8m_clk_hw_composite("media_apb", imx8mp_media_apb_sels, ccm_base + 0x8a80);
562562
hws[IMX8MP_CLK_HDMI_APB] = imx8m_clk_hw_composite("hdmi_apb", imx8mp_media_apb_sels, ccm_base + 0x8b00);
563-
hws[IMX8MP_CLK_HDMI_AXI] = imx8m_clk_hw_composite("hdmi_axi", imx8mp_media_apb_sels, ccm_base + 0x8b80);
563+
hws[IMX8MP_CLK_HDMI_AXI] = imx8m_clk_hw_composite("hdmi_axi", imx8mp_media_axi_sels, ccm_base + 0x8b80);
564564
hws[IMX8MP_CLK_GPU_AXI] = imx8m_clk_hw_composite("gpu_axi", imx8mp_gpu_axi_sels, ccm_base + 0x8c00);
565565
hws[IMX8MP_CLK_GPU_AHB] = imx8m_clk_hw_composite("gpu_ahb", imx8mp_gpu_ahb_sels, ccm_base + 0x8c80);
566566
hws[IMX8MP_CLK_NOC] = imx8m_clk_hw_composite_critical("noc", imx8mp_noc_sels, ccm_base + 0x8d00);
@@ -686,7 +686,7 @@ static int imx8mp_clocks_probe(struct platform_device *pdev)
686686
hws[IMX8MP_CLK_CAN1_ROOT] = imx_clk_hw_gate2("can1_root_clk", "can1", ccm_base + 0x4350, 0);
687687
hws[IMX8MP_CLK_CAN2_ROOT] = imx_clk_hw_gate2("can2_root_clk", "can2", ccm_base + 0x4360, 0);
688688
hws[IMX8MP_CLK_SDMA1_ROOT] = imx_clk_hw_gate4("sdma1_root_clk", "ipg_root", ccm_base + 0x43a0, 0);
689-
hws[IMX8MP_CLK_ENET_QOS_ROOT] = imx_clk_hw_gate4("enet_qos_root_clk", "enet_axi", ccm_base + 0x43b0, 0);
689+
hws[IMX8MP_CLK_ENET_QOS_ROOT] = imx_clk_hw_gate4("enet_qos_root_clk", "sim_enet_root_clk", ccm_base + 0x43b0, 0);
690690
hws[IMX8MP_CLK_SIM_ENET_ROOT] = imx_clk_hw_gate4("sim_enet_root_clk", "enet_axi", ccm_base + 0x4400, 0);
691691
hws[IMX8MP_CLK_GPU2D_ROOT] = imx_clk_hw_gate4("gpu2d_root_clk", "gpu2d_div", ccm_base + 0x4450, 0);
692692
hws[IMX8MP_CLK_GPU3D_ROOT] = imx_clk_hw_gate4("gpu3d_root_clk", "gpu3d_core_div", ccm_base + 0x4460, 0);

drivers/clk/imx/clk-scu.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,12 @@ struct imx_sc_msg_req_set_clock_rate {
4343
__le32 rate;
4444
__le16 resource;
4545
u8 clk;
46-
} __packed;
46+
} __packed __aligned(4);
4747

4848
struct req_get_clock_rate {
4949
__le16 resource;
5050
u8 clk;
51-
} __packed;
51+
} __packed __aligned(4);
5252

5353
struct resp_get_clock_rate {
5454
__le32 rate;
@@ -84,7 +84,7 @@ struct imx_sc_msg_get_clock_parent {
8484
struct req_get_clock_parent {
8585
__le16 resource;
8686
u8 clk;
87-
} __packed req;
87+
} __packed __aligned(4) req;
8888
struct resp_get_clock_parent {
8989
u8 parent;
9090
} resp;
@@ -121,7 +121,7 @@ struct imx_sc_msg_req_clock_enable {
121121
u8 clk;
122122
u8 enable;
123123
u8 autog;
124-
} __packed;
124+
} __packed __aligned(4);
125125

126126
static inline struct clk_scu *to_clk_scu(struct clk_hw *hw)
127127
{

drivers/clk/ti/clk-43xx.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ static const struct omap_clkctrl_reg_data am4_gfx_l3_clkctrl_regs[] __initconst
7878
};
7979

8080
static const struct omap_clkctrl_reg_data am4_l4_rtc_clkctrl_regs[] __initconst = {
81-
{ AM4_L4_RTC_RTC_CLKCTRL, NULL, CLKF_SW_SUP, "clk_32768_ck" },
81+
{ AM4_L4_RTC_RTC_CLKCTRL, NULL, CLKF_SW_SUP, "clkdiv32k_ick" },
8282
{ 0 },
8383
};
8484

include/linux/clk-provider.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -522,9 +522,9 @@ struct clk *clk_register_gate(struct device *dev, const char *name,
522522
* @clk_gate_flags: gate-specific flags for this clock
523523
* @lock: shared register lock for this clock
524524
*/
525-
#define clk_hw_register_gate_parent_hw(dev, name, parent_name, flags, reg, \
525+
#define clk_hw_register_gate_parent_hw(dev, name, parent_hw, flags, reg, \
526526
bit_idx, clk_gate_flags, lock) \
527-
__clk_hw_register_gate((dev), NULL, (name), (parent_name), NULL, \
527+
__clk_hw_register_gate((dev), NULL, (name), NULL, (parent_hw), \
528528
NULL, (flags), (reg), (bit_idx), \
529529
(clk_gate_flags), (lock))
530530
/**
@@ -539,10 +539,10 @@ struct clk *clk_register_gate(struct device *dev, const char *name,
539539
* @clk_gate_flags: gate-specific flags for this clock
540540
* @lock: shared register lock for this clock
541541
*/
542-
#define clk_hw_register_gate_parent_data(dev, name, parent_name, flags, reg, \
542+
#define clk_hw_register_gate_parent_data(dev, name, parent_data, flags, reg, \
543543
bit_idx, clk_gate_flags, lock) \
544-
__clk_hw_register_gate((dev), NULL, (name), (parent_name), NULL, \
545-
NULL, (flags), (reg), (bit_idx), \
544+
__clk_hw_register_gate((dev), NULL, (name), NULL, NULL, (parent_data), \
545+
(flags), (reg), (bit_idx), \
546546
(clk_gate_flags), (lock))
547547
void clk_unregister_gate(struct clk *clk);
548548
void clk_hw_unregister_gate(struct clk_hw *hw);

0 commit comments

Comments
 (0)