phy: fixes for 6.1

- Update Kishon's email
 - Fixes in drivers:
   - stms32 error code fix in driver probe
   - tegra: fix for checking valid pointer
   - qcom_qmp: null deref fix
   - sunplus: error check fix
   - ralink: add missing sentinel to table
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEE+vs47OPLdNbVcHzyfBQHDyUjg0cFAmNsxbYACgkQfBQHDyUj
 g0dLWg//YKY9hM07ObGHuAOH5RNQx/udNGAhlXEg996D3cUrX+KasmLxxLi60S/2
 dyWovcvLepftuNhLzyesHBSYTw8dUUmnpVFOPTm6a3fYycEzSNewwD0XhIqHnxso
 zem3HMNyzpwk7ZpdXJKuNJWul4OyhLf87nlmOmRZaGYSmrwol2T2I6baKisNGphc
 RExTe914AuTtSdHqjRopFlAmxk0f+0j9PDt+UbPhv77S/aDpO+sLGl6sRb985YQw
 +/f75GL6pEQpzgemz5p/w4rQwGNLZiBWaZNA/LoTtXwYqmw5sLJYhRRxiTakHBPE
 XfTpeCwqD7ugF1aQyokLo2+rQd51zCON0fc8RNGkCzhtNx9bhrN7qp8NXbY0abC7
 mc43j/ckLKaFyIQOEk3DADAQf7xw3EEbscV8MOOdPzpKGxcTwbYLrplHuHJCZdQo
 UugCwR+0UR/MfFNL9Sl7cGYL8QiR+oqJk3LRMvVQxtM/fz4geSgQWSgBEG2QwCmZ
 CJdFqBMvOeT665u0dDBxjvr6do/8Dak1CHPzHV/3lTDSw20gJOisoJl6CacC0bWo
 9VL7ZCdj7SLRbOW1boNLDr548ftRs9EqhFdcU5IBo5RYl8lxpfZWQJj3q+DyyCCG
 HMVK1UfWxyWw5rZmxSJna8y1kA8Iy/ivFeFk3oUkqnw9Njvgszo=
 =6AL7
 -----END PGP SIGNATURE-----

Merge tag 'phy-fixes-6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy

Pull phy fixes from Vinod Koul:
 "A bunch of odd driver fixes and a MAINTAINER email update:

   - Update Kishon's email

   - stms32 error code fix in driver probe

   - tegra: fix for checking valid pointer

   - qcom_qmp: null deref fix

   - sunplus: error check fix

   - ralink: add missing sentinel to table"

* tag 'phy-fixes-6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy:
  phy: ralink: mt7621-pci: add sentinel to quirks table
  phy: sunplus: Fix an IS_ERR() vs NULL bug in sp_usb_phy_probe
  phy: qcom-qmp-combo: fix NULL-deref on runtime resume
  phy: tegra: xusb: Fix crash during pad power on/down
  phy: stm32: fix an error code in probe
  MAINTAINERS: Update Kishon's email address in GENERIC PHY FRAMEWORK
This commit is contained in:
Linus Torvalds 2022-11-10 08:36:42 -08:00
commit 8395ee62b1
6 changed files with 24 additions and 9 deletions

View File

@ -8602,8 +8602,8 @@ F: include/asm-generic/
F: include/uapi/asm-generic/ F: include/uapi/asm-generic/
GENERIC PHY FRAMEWORK GENERIC PHY FRAMEWORK
M: Kishon Vijay Abraham I <kishon@ti.com>
M: Vinod Koul <vkoul@kernel.org> M: Vinod Koul <vkoul@kernel.org>
M: Kishon Vijay Abraham I <kishon@kernel.org>
L: linux-phy@lists.infradead.org L: linux-phy@lists.infradead.org
S: Supported S: Supported
Q: https://patchwork.kernel.org/project/linux-phy/list/ Q: https://patchwork.kernel.org/project/linux-phy/list/

View File

@ -2240,7 +2240,7 @@ static void qmp_combo_enable_autonomous_mode(struct qmp_phy *qphy)
static void qmp_combo_disable_autonomous_mode(struct qmp_phy *qphy) static void qmp_combo_disable_autonomous_mode(struct qmp_phy *qphy)
{ {
const struct qmp_phy_cfg *cfg = qphy->cfg; const struct qmp_phy_cfg *cfg = qphy->cfg;
void __iomem *pcs_usb = qphy->pcs_usb ?: qphy->pcs_usb; void __iomem *pcs_usb = qphy->pcs_usb ?: qphy->pcs;
void __iomem *pcs_misc = qphy->pcs_misc; void __iomem *pcs_misc = qphy->pcs_misc;
/* Disable i/o clamp_n on resume for normal mode */ /* Disable i/o clamp_n on resume for normal mode */

View File

@ -280,7 +280,8 @@ static struct phy *mt7621_pcie_phy_of_xlate(struct device *dev,
} }
static const struct soc_device_attribute mt7621_pci_quirks_match[] = { static const struct soc_device_attribute mt7621_pci_quirks_match[] = {
{ .soc_id = "mt7621", .revision = "E2" } { .soc_id = "mt7621", .revision = "E2" },
{ /* sentinel */ }
}; };
static const struct regmap_config mt7621_pci_phy_regmap_config = { static const struct regmap_config mt7621_pci_phy_regmap_config = {

View File

@ -710,6 +710,8 @@ static int stm32_usbphyc_probe(struct platform_device *pdev)
ret = of_property_read_u32(child, "reg", &index); ret = of_property_read_u32(child, "reg", &index);
if (ret || index > usbphyc->nphys) { if (ret || index > usbphyc->nphys) {
dev_err(&phy->dev, "invalid reg property: %d\n", ret); dev_err(&phy->dev, "invalid reg property: %d\n", ret);
if (!ret)
ret = -EINVAL;
goto put_child; goto put_child;
} }

View File

@ -256,8 +256,8 @@ static int sp_usb_phy_probe(struct platform_device *pdev)
usbphy->moon4_res_mem = platform_get_resource_byname(pdev, IORESOURCE_MEM, "moon4"); usbphy->moon4_res_mem = platform_get_resource_byname(pdev, IORESOURCE_MEM, "moon4");
usbphy->moon4_regs = devm_ioremap(&pdev->dev, usbphy->moon4_res_mem->start, usbphy->moon4_regs = devm_ioremap(&pdev->dev, usbphy->moon4_res_mem->start,
resource_size(usbphy->moon4_res_mem)); resource_size(usbphy->moon4_res_mem));
if (IS_ERR(usbphy->moon4_regs)) if (!usbphy->moon4_regs)
return PTR_ERR(usbphy->moon4_regs); return -ENOMEM;
usbphy->phy_clk = devm_clk_get(&pdev->dev, NULL); usbphy->phy_clk = devm_clk_get(&pdev->dev, NULL);
if (IS_ERR(usbphy->phy_clk)) if (IS_ERR(usbphy->phy_clk))

View File

@ -1461,8 +1461,14 @@ EXPORT_SYMBOL_GPL(tegra_phy_xusb_utmi_port_reset);
void tegra_phy_xusb_utmi_pad_power_on(struct phy *phy) void tegra_phy_xusb_utmi_pad_power_on(struct phy *phy)
{ {
struct tegra_xusb_lane *lane = phy_get_drvdata(phy); struct tegra_xusb_lane *lane;
struct tegra_xusb_padctl *padctl = lane->pad->padctl; struct tegra_xusb_padctl *padctl;
if (!phy)
return;
lane = phy_get_drvdata(phy);
padctl = lane->pad->padctl;
if (padctl->soc->ops->utmi_pad_power_on) if (padctl->soc->ops->utmi_pad_power_on)
padctl->soc->ops->utmi_pad_power_on(phy); padctl->soc->ops->utmi_pad_power_on(phy);
@ -1471,8 +1477,14 @@ EXPORT_SYMBOL_GPL(tegra_phy_xusb_utmi_pad_power_on);
void tegra_phy_xusb_utmi_pad_power_down(struct phy *phy) void tegra_phy_xusb_utmi_pad_power_down(struct phy *phy)
{ {
struct tegra_xusb_lane *lane = phy_get_drvdata(phy); struct tegra_xusb_lane *lane;
struct tegra_xusb_padctl *padctl = lane->pad->padctl; struct tegra_xusb_padctl *padctl;
if (!phy)
return;
lane = phy_get_drvdata(phy);
padctl = lane->pad->padctl;
if (padctl->soc->ops->utmi_pad_power_down) if (padctl->soc->ops->utmi_pad_power_down)
padctl->soc->ops->utmi_pad_power_down(phy); padctl->soc->ops->utmi_pad_power_down(phy);