diff options
author | Arnd Bergmann <arnd@arndb.de> | 2023-01-09 23:16:38 +0100 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2023-01-09 23:16:38 +0100 |
commit | 33abcaef9888080af73a803d52199c4f45990948 (patch) | |
tree | b7ab52072094ac2ed65504c11a89cc6750dad2fe /drivers | |
parent | 97bcdf24e00075cf37ee4cbd63f07f54e25c5265 (diff) | |
parent | 490748874ebf1875420fc29b335bba2075dd1b5e (diff) | |
download | linux-33abcaef9888080af73a803d52199c4f45990948.tar.bz2 |
Merge tag 'imx-fixes-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/fixes
i.MX fixes for 6.2:
- Fix i.MX8MP DT for missing GPC Interrupt, power-domain typo and USB
clock error.
- Fix mach-imx cpu code to add missing of_node_put() call.
- A couple of verdin-imx8mm DT fixes for audio playback support.
- Fix pca9547 i2c-mux node name for i.MX and Vybrid device trees.
- Fix an imx93-11x11-evk uSDHC pad setting problem that causes Micron
eMMC CMD8 CRC error in HS400ES/HS400 mode.
- A couple of imx8mp-blk-ctrl driver fixes from Lucas Stach, enabling
pixclk with HDMI_TX_PHY PD, dropping power device name setting.
- Fix the error check for of_clk_get_by_name() in soc-imx8m driver.
- Other various DT fixes and cleanups.
* tag 'imx-fixes-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (22 commits)
soc: imx8m: Fix incorrect check for of_clk_get_by_name()
arm64: dts: imx8mm-venice-gw7901: fix USB2 controller OC polarity
arm64: dts: imx8mp-evk: pcie0-refclk cosmetic cleanup
arm64: dts: imx8mp: Fix power-domain typo
arm64: dts: imx8mp: Fix missing GPC Interrupt
soc: imx: imx8mp-blk-ctrl: don't set power device name
arm64: dts: imx8mm: Drop xtal clock specifier from eDM SBC
ARM: imx: add missing of_node_put()
arm64: dts: imx93-11x11-evk: correct clock and strobe pad setting
arm64: dts: verdin-imx8mm: fix dev board audio playback
arm64: dts: imx8mq-thor96: fix no-mmc property for SDHCI
arm64: dts: imx8mm-beacon: Fix ecspi2 pinmux
arm64: dts: freescale: Fix pca954x i2c-mux node names
ARM: dts: vf610: Fix pca9548 i2c-mux node names
ARM: dts: imx: Fix pca9547 i2c-mux node name
arm64: dts: verdin-imx8mm: fix dahlia audio playback
ARM: dts: imx6qdl-gw560x: Remove incorrect 'uart-has-rtscts'
ARM: dts: imx7d-pico: Use 'clock-frequency'
ARM: dts: imx6ul-pico-dwarf: Use 'clock-frequency'
arm64: dts: imx8mp-phycore-som: Remove invalid PMIC property
...
Link: https://lore.kernel.org/r/20230102132016.GA10699@T480
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/soc/imx/imx8mp-blk-ctrl.c | 7 | ||||
-rw-r--r-- | drivers/soc/imx/soc-imx8m.c | 4 |
2 files changed, 6 insertions, 5 deletions
diff --git a/drivers/soc/imx/imx8mp-blk-ctrl.c b/drivers/soc/imx/imx8mp-blk-ctrl.c index 0e3b6ba22f94..0f13853901df 100644 --- a/drivers/soc/imx/imx8mp-blk-ctrl.c +++ b/drivers/soc/imx/imx8mp-blk-ctrl.c @@ -212,7 +212,7 @@ static void imx8mp_hdmi_blk_ctrl_power_on(struct imx8mp_blk_ctrl *bc, break; case IMX8MP_HDMIBLK_PD_LCDIF: regmap_set_bits(bc->regmap, HDMI_RTX_CLK_CTL0, - BIT(7) | BIT(16) | BIT(17) | BIT(18) | + BIT(16) | BIT(17) | BIT(18) | BIT(19) | BIT(20)); regmap_set_bits(bc->regmap, HDMI_RTX_CLK_CTL1, BIT(11)); regmap_set_bits(bc->regmap, HDMI_RTX_RESET_CTL0, @@ -241,6 +241,7 @@ static void imx8mp_hdmi_blk_ctrl_power_on(struct imx8mp_blk_ctrl *bc, regmap_set_bits(bc->regmap, HDMI_TX_CONTROL0, BIT(1)); break; case IMX8MP_HDMIBLK_PD_HDMI_TX_PHY: + regmap_set_bits(bc->regmap, HDMI_RTX_CLK_CTL0, BIT(7)); regmap_set_bits(bc->regmap, HDMI_RTX_CLK_CTL1, BIT(22) | BIT(24)); regmap_set_bits(bc->regmap, HDMI_RTX_RESET_CTL0, BIT(12)); regmap_clear_bits(bc->regmap, HDMI_TX_CONTROL0, BIT(3)); @@ -270,7 +271,7 @@ static void imx8mp_hdmi_blk_ctrl_power_off(struct imx8mp_blk_ctrl *bc, BIT(4) | BIT(5) | BIT(6)); regmap_clear_bits(bc->regmap, HDMI_RTX_CLK_CTL1, BIT(11)); regmap_clear_bits(bc->regmap, HDMI_RTX_CLK_CTL0, - BIT(7) | BIT(16) | BIT(17) | BIT(18) | + BIT(16) | BIT(17) | BIT(18) | BIT(19) | BIT(20)); break; case IMX8MP_HDMIBLK_PD_PAI: @@ -298,6 +299,7 @@ static void imx8mp_hdmi_blk_ctrl_power_off(struct imx8mp_blk_ctrl *bc, case IMX8MP_HDMIBLK_PD_HDMI_TX_PHY: regmap_set_bits(bc->regmap, HDMI_TX_CONTROL0, BIT(3)); regmap_clear_bits(bc->regmap, HDMI_RTX_RESET_CTL0, BIT(12)); + regmap_clear_bits(bc->regmap, HDMI_RTX_CLK_CTL0, BIT(7)); regmap_clear_bits(bc->regmap, HDMI_RTX_CLK_CTL1, BIT(22) | BIT(24)); break; case IMX8MP_HDMIBLK_PD_HDCP: @@ -590,7 +592,6 @@ static int imx8mp_blk_ctrl_probe(struct platform_device *pdev) ret = PTR_ERR(domain->power_dev); goto cleanup_pds; } - dev_set_name(domain->power_dev, "%s", data->name); domain->genpd.name = data->name; domain->genpd.power_on = imx8mp_blk_ctrl_power_on; diff --git a/drivers/soc/imx/soc-imx8m.c b/drivers/soc/imx/soc-imx8m.c index 28144c699b0c..32ed9dc88e45 100644 --- a/drivers/soc/imx/soc-imx8m.c +++ b/drivers/soc/imx/soc-imx8m.c @@ -66,8 +66,8 @@ static u32 __init imx8mq_soc_revision(void) ocotp_base = of_iomap(np, 0); WARN_ON(!ocotp_base); clk = of_clk_get_by_name(np, NULL); - if (!clk) { - WARN_ON(!clk); + if (IS_ERR(clk)) { + WARN_ON(IS_ERR(clk)); return 0; } |