You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.6 KiB
Diff
43 lines
1.6 KiB
Diff
From c752b54bda4d772426c5eeb56978d2e41bd525b4 Mon Sep 17 00:00:00 2001
|
|
From: Sergio Paracuellos <sergio.paracuellos@gmail.com>
|
|
Date: Fri, 20 Mar 2020 12:01:21 +0100
|
|
Subject: [PATCH] staging: mt7621-pci: use only two phys from device tree
|
|
|
|
In order to align work with the mt7621-pci-phy part of
|
|
the driver and device tree which is now using only two
|
|
real phys one of them dual ported properly parse the
|
|
device tree and don't call phy initialization for the
|
|
slot 1 because is being taking into account when the
|
|
phy for the slot 0 is instantiated.
|
|
|
|
Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
|
|
Link: https://lore.kernel.org/r/20200320110123.9907-4-sergio.paracuellos@gmail.com
|
|
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|
---
|
|
drivers/staging/mt7621-pci/pci-mt7621.c | 7 ++++++-
|
|
1 file changed, 6 insertions(+), 1 deletion(-)
|
|
|
|
--- a/drivers/staging/mt7621-pci/pci-mt7621.c
|
|
+++ b/drivers/staging/mt7621-pci/pci-mt7621.c
|
|
@@ -358,7 +358,7 @@ static int mt7621_pcie_parse_port(struct
|
|
|
|
snprintf(name, sizeof(name), "pcie-phy%d", slot);
|
|
port->phy = devm_phy_get(dev, name);
|
|
- if (IS_ERR(port->phy))
|
|
+ if (IS_ERR(port->phy) && slot != 1)
|
|
return PTR_ERR(port->phy);
|
|
|
|
port->gpio_rst = devm_gpiod_get_index_optional(dev, "reset", slot,
|
|
@@ -495,6 +495,11 @@ static void mt7621_pcie_init_ports(struc
|
|
list_for_each_entry_safe(port, tmp, &pcie->ports, list) {
|
|
u32 slot = port->slot;
|
|
|
|
+ if (slot == 1) {
|
|
+ port->enabled = true;
|
|
+ continue;
|
|
+ }
|
|
+
|
|
err = mt7621_pcie_init_port(port);
|
|
if (err) {
|
|
dev_err(dev, "Initiating port %d failed\n", slot);
|