mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-23 00:20:52 -05:00
phy: fixes for 6.2
Fixes in drivers for: - Binding fix for g12a phys - Kconfig operator precedence for TI driver - renesas: register setting - sunplus: null deref fix - rockchip-inno fix for clk_disable_unprepare() - MDM9607 init sequence revert due to regression -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE+vs47OPLdNbVcHzyfBQHDyUjg0cFAmPKqp8ACgkQfBQHDyUj g0c8QxAAlT17OSekO44/4j1ZPc1c0fvgf0CEDE6xrcfoD7taByuvFK7gm2NGYSaT 5RNYDniiMBDgchxHvy4BoEAXqrTbGLC6uFBlZ3BcEMM9ONFSU5t/J7YK0gH1WdSq 15Bp491XhWGVr3KlqAxgtatv7qgi0JS/mRmjXnN5ytIxETCqzPWwWvMtMRudQFTy g3pydR1j4bTu/9yhBWfw6OIOnPVRTTmiEaqxUmahTCRld9YWvPLLJCCllZIh3YKS kDF3UKDP0nRTPH7LqPlZtnOFdM0yq8lU8Wzt4Y+QVzTUr2OZ7+hCK03c/kVIA/5e 5tRValarw5hpZ0BfRAqhRIFFkh6K7ImqlMuuduZnDG8v/m7XKse7y2HaVOn9wDY8 l4FgrzJxSbfQzyPk3JYds+9tQezM1IGAc0FxarqY99NYMwHbqAHPs+W/Ft2tRY3W ncG5j9YcGAdIZ/qa9/rY1Qdm9UOkzba9/bsi6ahQcW6QmtrmTtKgs2SKTpGOEnly qwjmjKynVByZ8Kf3310lmhHm8TPs/vN0SAKbzh0VLacAcYmJMV9bN/E/DLzttkKP lFx0GZ1WdyIlQaT/pXMGBPM2fux9oyNIKDn6sRmfe6ybx+I3e1UrHtgJa9HoyJet iJQibehGdM+o+RP12lO97IsvzN1qHhfPkN144r/PZwK95UJsWDM= =MDsZ -----END PGP SIGNATURE----- Merge tag 'phy-fixes-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy Pull phy fixes from Vinod Koul: - binding fix for g12a phys - Kconfig operator precedence for TI driver - renesas: register setting - sunplus: null deref fix - rockchip-inno fix for clk_disable_unprepare() - MDM9607 init sequence revert due to regression * tag 'phy-fixes-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy: phy: phy-can-transceiver: Skip warning if no "max-bitrate" dt-bindings: phy: g12a-usb2-phy: fix compatible string documentation dt-bindings: phy: g12a-usb3-pcie-phy: fix compatible string documentation phy: freescale: imx8m-pcie: Add one missing error return phy: Revert "phy: qualcomm: usb28nm: Add MDM9607 init sequence" phy: rockchip-inno-usb2: Fix missing clk_disable_unprepare() in rockchip_usb2phy_power_on() phy: renesas: r8a779f0-eth-serdes: Fix register setting phy: usb: sunplus: Fix potential null-ptr-deref in sp_usb_phy_probe() phy: ti: fix Kconfig warning and operator precedence
This commit is contained in:
commit
aaaf919c2e
10 changed files with 20 additions and 28 deletions
|
@ -2,7 +2,7 @@
|
|||
# Copyright 2019 BayLibre, SAS
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/phy/amlogic,meson-g12a-usb2-phy.yaml#"
|
||||
$id: "http://devicetree.org/schemas/phy/amlogic,g12a-usb2-phy.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
|
||||
title: Amlogic G12A USB2 PHY
|
||||
|
@ -13,8 +13,8 @@ maintainers:
|
|||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- amlogic,meson-g12a-usb2-phy
|
||||
- amlogic,meson-a1-usb2-phy
|
||||
- amlogic,g12a-usb2-phy
|
||||
- amlogic,a1-usb2-phy
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
@ -68,7 +68,7 @@ additionalProperties: false
|
|||
examples:
|
||||
- |
|
||||
phy@36000 {
|
||||
compatible = "amlogic,meson-g12a-usb2-phy";
|
||||
compatible = "amlogic,g12a-usb2-phy";
|
||||
reg = <0x36000 0x2000>;
|
||||
clocks = <&xtal>;
|
||||
clock-names = "xtal";
|
|
@ -2,7 +2,7 @@
|
|||
# Copyright 2019 BayLibre, SAS
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/phy/amlogic,meson-g12a-usb3-pcie-phy.yaml#"
|
||||
$id: "http://devicetree.org/schemas/phy/amlogic,g12a-usb3-pcie-phy.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
|
||||
title: Amlogic G12A USB3 + PCIE Combo PHY
|
||||
|
@ -13,7 +13,7 @@ maintainers:
|
|||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- amlogic,meson-g12a-usb3-pcie-phy
|
||||
- amlogic,g12a-usb3-pcie-phy
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
@ -49,7 +49,7 @@ additionalProperties: false
|
|||
examples:
|
||||
- |
|
||||
phy@46000 {
|
||||
compatible = "amlogic,meson-g12a-usb3-pcie-phy";
|
||||
compatible = "amlogic,g12a-usb3-pcie-phy";
|
||||
reg = <0x46000 0x2000>;
|
||||
clocks = <&ref_clk>;
|
||||
clock-names = "ref_clk";
|
|
@ -16,7 +16,6 @@ properties:
|
|||
compatible:
|
||||
enum:
|
||||
- qcom,usb-hs-28nm-femtophy
|
||||
- qcom,usb-hs-28nm-mdm9607
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
|
|
@ -255,7 +255,7 @@ static int imx8_pcie_phy_probe(struct platform_device *pdev)
|
|||
imx8_phy->perst =
|
||||
devm_reset_control_get_exclusive(dev, "perst");
|
||||
if (IS_ERR(imx8_phy->perst))
|
||||
dev_err_probe(dev, PTR_ERR(imx8_phy->perst),
|
||||
return dev_err_probe(dev, PTR_ERR(imx8_phy->perst),
|
||||
"Failed to get PCIE PHY PERST control\n");
|
||||
}
|
||||
|
||||
|
|
|
@ -99,6 +99,7 @@ static int can_transceiver_phy_probe(struct platform_device *pdev)
|
|||
struct gpio_desc *standby_gpio;
|
||||
struct gpio_desc *enable_gpio;
|
||||
u32 max_bitrate = 0;
|
||||
int err;
|
||||
|
||||
can_transceiver_phy = devm_kzalloc(dev, sizeof(struct can_transceiver_phy), GFP_KERNEL);
|
||||
if (!can_transceiver_phy)
|
||||
|
@ -124,8 +125,8 @@ static int can_transceiver_phy_probe(struct platform_device *pdev)
|
|||
return PTR_ERR(phy);
|
||||
}
|
||||
|
||||
device_property_read_u32(dev, "max-bitrate", &max_bitrate);
|
||||
if (!max_bitrate)
|
||||
err = device_property_read_u32(dev, "max-bitrate", &max_bitrate);
|
||||
if ((err != -EINVAL) && !max_bitrate)
|
||||
dev_warn(dev, "Invalid value for transceiver max bitrate. Ignoring bitrate limit\n");
|
||||
phy->attrs.max_link_rate = max_bitrate;
|
||||
|
||||
|
|
|
@ -401,26 +401,13 @@ static const struct hsphy_init_seq init_seq_femtophy[] = {
|
|||
HSPHY_INIT_CFG(0x90, 0x60, 0),
|
||||
};
|
||||
|
||||
static const struct hsphy_init_seq init_seq_mdm9607[] = {
|
||||
HSPHY_INIT_CFG(0x80, 0x44, 0),
|
||||
HSPHY_INIT_CFG(0x81, 0x38, 0),
|
||||
HSPHY_INIT_CFG(0x82, 0x24, 0),
|
||||
HSPHY_INIT_CFG(0x83, 0x13, 0),
|
||||
};
|
||||
|
||||
static const struct hsphy_data hsphy_data_femtophy = {
|
||||
.init_seq = init_seq_femtophy,
|
||||
.init_seq_num = ARRAY_SIZE(init_seq_femtophy),
|
||||
};
|
||||
|
||||
static const struct hsphy_data hsphy_data_mdm9607 = {
|
||||
.init_seq = init_seq_mdm9607,
|
||||
.init_seq_num = ARRAY_SIZE(init_seq_mdm9607),
|
||||
};
|
||||
|
||||
static const struct of_device_id qcom_snps_hsphy_match[] = {
|
||||
{ .compatible = "qcom,usb-hs-28nm-femtophy", .data = &hsphy_data_femtophy, },
|
||||
{ .compatible = "qcom,usb-hs-28nm-mdm9607", .data = &hsphy_data_mdm9607, },
|
||||
{ },
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, qcom_snps_hsphy_match);
|
||||
|
|
|
@ -126,7 +126,7 @@ r8a779f0_eth_serdes_chan_setting(struct r8a779f0_eth_serdes_channel *channel)
|
|||
r8a779f0_eth_serdes_write32(channel->addr, 0x0160, 0x180, 0x0007);
|
||||
r8a779f0_eth_serdes_write32(channel->addr, 0x01ac, 0x180, 0x0000);
|
||||
r8a779f0_eth_serdes_write32(channel->addr, 0x00c4, 0x180, 0x0310);
|
||||
r8a779f0_eth_serdes_write32(channel->addr, 0x00c8, 0x380, 0x0101);
|
||||
r8a779f0_eth_serdes_write32(channel->addr, 0x00c8, 0x180, 0x0101);
|
||||
ret = r8a779f0_eth_serdes_reg_wait(channel, 0x00c8, 0x0180, BIT(0), 0);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
|
|
@ -485,8 +485,10 @@ static int rockchip_usb2phy_power_on(struct phy *phy)
|
|||
return ret;
|
||||
|
||||
ret = property_enable(base, &rport->port_cfg->phy_sus, false);
|
||||
if (ret)
|
||||
if (ret) {
|
||||
clk_disable_unprepare(rphy->clk480m);
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* waiting for the utmi_clk to become stable */
|
||||
usleep_range(1500, 2000);
|
||||
|
|
|
@ -254,6 +254,9 @@ static int sp_usb_phy_probe(struct platform_device *pdev)
|
|||
return PTR_ERR(usbphy->phy_regs);
|
||||
|
||||
usbphy->moon4_res_mem = platform_get_resource_byname(pdev, IORESOURCE_MEM, "moon4");
|
||||
if (!usbphy->moon4_res_mem)
|
||||
return -EINVAL;
|
||||
|
||||
usbphy->moon4_regs = devm_ioremap(&pdev->dev, usbphy->moon4_res_mem->start,
|
||||
resource_size(usbphy->moon4_res_mem));
|
||||
if (!usbphy->moon4_regs)
|
||||
|
|
|
@ -23,7 +23,7 @@ config PHY_DM816X_USB
|
|||
|
||||
config PHY_AM654_SERDES
|
||||
tristate "TI AM654 SERDES support"
|
||||
depends on OF && ARCH_K3 || COMPILE_TEST
|
||||
depends on OF && (ARCH_K3 || COMPILE_TEST)
|
||||
depends on COMMON_CLK
|
||||
select GENERIC_PHY
|
||||
select MULTIPLEXER
|
||||
|
@ -35,7 +35,7 @@ config PHY_AM654_SERDES
|
|||
|
||||
config PHY_J721E_WIZ
|
||||
tristate "TI J721E WIZ (SERDES Wrapper) support"
|
||||
depends on OF && ARCH_K3 || COMPILE_TEST
|
||||
depends on OF && (ARCH_K3 || COMPILE_TEST)
|
||||
depends on HAS_IOMEM && OF_ADDRESS
|
||||
depends on COMMON_CLK
|
||||
select GENERIC_PHY
|
||||
|
|
Loading…
Reference in a new issue