kernel: bump 5.10 to 5.10.61
Manually rebased: bcm27xx/patches-5.10/950-1031-net-lan78xx-Ack-pending-PHY-ints-when-resetting.patch Removed upstreamed: mvebu/patches-5.10/101-cpufreq-armada-37xx-forbid-cpufreq-for-1.2-GHz-variant.patch All other patches automatically rebased. Build system: x86_64 Build-tested: bcm2711/RPi4B Run-tested: bcm2711/RPi4B No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us>
This commit is contained in:
parent
1c8214d6f2
commit
6b1cd3e345
@ -7,10 +7,10 @@ ifdef CONFIG_TESTING_KERNEL
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
LINUX_VERSION-5.4 = .142
|
LINUX_VERSION-5.4 = .142
|
||||||
LINUX_VERSION-5.10 = .60
|
LINUX_VERSION-5.10 = .61
|
||||||
|
|
||||||
LINUX_KERNEL_HASH-5.4.142 = 99785728968564ba27c7e552d024b560072dcbc885540912eabb5c021e231451
|
LINUX_KERNEL_HASH-5.4.142 = 99785728968564ba27c7e552d024b560072dcbc885540912eabb5c021e231451
|
||||||
LINUX_KERNEL_HASH-5.10.60 = 696ff7753f6c7c5123dbcb0a22d693cb358c760c61a76649531b6a207155f78d
|
LINUX_KERNEL_HASH-5.10.61 = 82eae38cc5cd11dd6aaac91c02ff0d006c7bafd6d4cf5c6a791930820a3a91d1
|
||||||
|
|
||||||
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
||||||
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
|
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
|
||||||
|
@ -14,7 +14,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
--- a/drivers/net/usb/lan78xx.c
|
--- a/drivers/net/usb/lan78xx.c
|
||||||
+++ b/drivers/net/usb/lan78xx.c
|
+++ b/drivers/net/usb/lan78xx.c
|
||||||
@@ -2453,6 +2453,11 @@ static int lan78xx_reset(struct lan78xx_
|
@@ -2461,6 +2461,11 @@ static int lan78xx_reset(struct lan78xx_
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
unsigned long timeout;
|
unsigned long timeout;
|
||||||
u8 sig;
|
u8 sig;
|
||||||
@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
ret = lan78xx_read_reg(dev, HW_CFG, &buf);
|
ret = lan78xx_read_reg(dev, HW_CFG, &buf);
|
||||||
buf |= HW_CFG_LRST_;
|
buf |= HW_CFG_LRST_;
|
||||||
@@ -2506,6 +2511,9 @@ static int lan78xx_reset(struct lan78xx_
|
@@ -2514,6 +2519,9 @@ static int lan78xx_reset(struct lan78xx_
|
||||||
|
|
||||||
ret = lan78xx_read_reg(dev, HW_CFG, &buf);
|
ret = lan78xx_read_reg(dev, HW_CFG, &buf);
|
||||||
buf |= HW_CFG_MEF_;
|
buf |= HW_CFG_MEF_;
|
||||||
@ -36,7 +36,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
ret = lan78xx_write_reg(dev, HW_CFG, buf);
|
ret = lan78xx_write_reg(dev, HW_CFG, buf);
|
||||||
|
|
||||||
ret = lan78xx_read_reg(dev, USB_CFG0, &buf);
|
ret = lan78xx_read_reg(dev, USB_CFG0, &buf);
|
||||||
@@ -2561,6 +2569,9 @@ static int lan78xx_reset(struct lan78xx_
|
@@ -2569,6 +2577,9 @@ static int lan78xx_reset(struct lan78xx_
|
||||||
buf |= MAC_CR_AUTO_DUPLEX_ | MAC_CR_AUTO_SPEED_;
|
buf |= MAC_CR_AUTO_DUPLEX_ | MAC_CR_AUTO_SPEED_;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1134,7 +1134,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
|||||||
USB_PORT_FEAT_C_OVER_CURRENT);
|
USB_PORT_FEAT_C_OVER_CURRENT);
|
||||||
--- a/drivers/usb/core/message.c
|
--- a/drivers/usb/core/message.c
|
||||||
+++ b/drivers/usb/core/message.c
|
+++ b/drivers/usb/core/message.c
|
||||||
@@ -2129,6 +2129,85 @@ free_interfaces:
|
@@ -2135,6 +2135,85 @@ free_interfaces:
|
||||||
if (cp->string == NULL &&
|
if (cp->string == NULL &&
|
||||||
!(dev->quirks & USB_QUIRK_CONFIG_INTF_STRINGS))
|
!(dev->quirks & USB_QUIRK_CONFIG_INTF_STRINGS))
|
||||||
cp->string = usb_cache_string(dev, cp->desc.iConfiguration);
|
cp->string = usb_cache_string(dev, cp->desc.iConfiguration);
|
||||||
|
@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
--- a/drivers/net/usb/lan78xx.c
|
--- a/drivers/net/usb/lan78xx.c
|
||||||
+++ b/drivers/net/usb/lan78xx.c
|
+++ b/drivers/net/usb/lan78xx.c
|
||||||
@@ -2635,6 +2635,22 @@ static int lan78xx_open(struct net_devic
|
@@ -2643,6 +2643,22 @@ static int lan78xx_open(struct net_devic
|
||||||
|
|
||||||
netif_dbg(dev, ifup, dev->net, "phy initialised successfully");
|
netif_dbg(dev, ifup, dev->net, "phy initialised successfully");
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
|||||||
static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
|
static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
|
||||||
{
|
{
|
||||||
u32 *buf = kmalloc(sizeof(u32), GFP_KERNEL);
|
u32 *buf = kmalloc(sizeof(u32), GFP_KERNEL);
|
||||||
@@ -2917,8 +2926,14 @@ static int lan78xx_bind(struct lan78xx_n
|
@@ -2925,8 +2934,14 @@ static int lan78xx_bind(struct lan78xx_n
|
||||||
if (DEFAULT_RX_CSUM_ENABLE)
|
if (DEFAULT_RX_CSUM_ENABLE)
|
||||||
dev->net->features |= NETIF_F_RXCSUM;
|
dev->net->features |= NETIF_F_RXCSUM;
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
--- a/drivers/net/usb/lan78xx.c
|
--- a/drivers/net/usb/lan78xx.c
|
||||||
+++ b/drivers/net/usb/lan78xx.c
|
+++ b/drivers/net/usb/lan78xx.c
|
||||||
@@ -2167,6 +2167,22 @@ static int lan78xx_phy_init(struct lan78
|
@@ -2175,6 +2175,22 @@ static int lan78xx_phy_init(struct lan78
|
||||||
mii_adv_to_linkmode_adv_t(fc, mii_adv);
|
mii_adv_to_linkmode_adv_t(fc, mii_adv);
|
||||||
linkmode_or(phydev->advertising, fc, phydev->advertising);
|
linkmode_or(phydev->advertising, fc, phydev->advertising);
|
||||||
|
|
||||||
@ -39,7 +39,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
if (phydev->mdio.dev.of_node) {
|
if (phydev->mdio.dev.of_node) {
|
||||||
u32 reg;
|
u32 reg;
|
||||||
int len;
|
int len;
|
||||||
@@ -2644,22 +2660,6 @@ static int lan78xx_open(struct net_devic
|
@@ -2652,22 +2668,6 @@ static int lan78xx_open(struct net_devic
|
||||||
|
|
||||||
netif_dbg(dev, ifup, dev->net, "phy initialised successfully");
|
netif_dbg(dev, ifup, dev->net, "phy initialised successfully");
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@ See: https://github.com/raspberrypi/linux/issues/2447
|
|||||||
static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
|
static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
|
||||||
{
|
{
|
||||||
u32 *buf = kmalloc(sizeof(u32), GFP_KERNEL);
|
u32 *buf = kmalloc(sizeof(u32), GFP_KERNEL);
|
||||||
@@ -3760,7 +3765,13 @@ static int lan78xx_probe(struct usb_inte
|
@@ -3768,7 +3773,13 @@ static int lan78xx_probe(struct usb_inte
|
||||||
netdev->max_mtu = MAX_SINGLE_PACKET_SIZE;
|
netdev->max_mtu = MAX_SINGLE_PACKET_SIZE;
|
||||||
netif_set_gso_max_size(netdev, MAX_SINGLE_PACKET_SIZE - MAX_HEADER);
|
netif_set_gso_max_size(netdev, MAX_SINGLE_PACKET_SIZE - MAX_HEADER);
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
--- a/drivers/net/usb/lan78xx.c
|
--- a/drivers/net/usb/lan78xx.c
|
||||||
+++ b/drivers/net/usb/lan78xx.c
|
+++ b/drivers/net/usb/lan78xx.c
|
||||||
@@ -2172,7 +2172,7 @@ static int lan78xx_phy_init(struct lan78
|
@@ -2180,7 +2180,7 @@ static int lan78xx_phy_init(struct lan78
|
||||||
mii_adv_to_linkmode_adv_t(fc, mii_adv);
|
mii_adv_to_linkmode_adv_t(fc, mii_adv);
|
||||||
linkmode_or(phydev->advertising, fc, phydev->advertising);
|
linkmode_or(phydev->advertising, fc, phydev->advertising);
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@ in both dwc_otg and in ipv6 processing.
|
|||||||
|
|
||||||
--- a/drivers/net/usb/lan78xx.c
|
--- a/drivers/net/usb/lan78xx.c
|
||||||
+++ b/drivers/net/usb/lan78xx.c
|
+++ b/drivers/net/usb/lan78xx.c
|
||||||
@@ -3161,7 +3161,7 @@ static int rx_submit(struct lan78xx_net
|
@@ -3169,7 +3169,7 @@ static int rx_submit(struct lan78xx_net
|
||||||
size_t size = dev->rx_urb_size;
|
size_t size = dev->rx_urb_size;
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
|
|
||||||
|
@ -18,8 +18,8 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
--- a/drivers/mmc/host/sdhci-iproc.c
|
--- a/drivers/mmc/host/sdhci-iproc.c
|
||||||
+++ b/drivers/mmc/host/sdhci-iproc.c
|
+++ b/drivers/mmc/host/sdhci-iproc.c
|
||||||
@@ -173,6 +173,17 @@ static unsigned int sdhci_iproc_get_max_
|
@@ -190,6 +190,17 @@ static unsigned int sdhci_iproc_bcm2711_
|
||||||
return pltfm_host->clock;
|
return 200000;
|
||||||
}
|
}
|
||||||
|
|
||||||
+static void sdhci_iproc_set_power(struct sdhci_host *host, unsigned char mode,
|
+static void sdhci_iproc_set_power(struct sdhci_host *host, unsigned char mode,
|
||||||
@ -36,7 +36,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
static const struct sdhci_ops sdhci_iproc_ops = {
|
static const struct sdhci_ops sdhci_iproc_ops = {
|
||||||
.set_clock = sdhci_set_clock,
|
.set_clock = sdhci_set_clock,
|
||||||
.get_max_clock = sdhci_iproc_get_max_clock,
|
.get_max_clock = sdhci_iproc_get_max_clock,
|
||||||
@@ -190,6 +201,7 @@ static const struct sdhci_ops sdhci_ipro
|
@@ -207,6 +218,7 @@ static const struct sdhci_ops sdhci_ipro
|
||||||
.write_b = sdhci_iproc_writeb,
|
.write_b = sdhci_iproc_writeb,
|
||||||
.set_clock = sdhci_set_clock,
|
.set_clock = sdhci_set_clock,
|
||||||
.get_max_clock = sdhci_iproc_get_max_clock,
|
.get_max_clock = sdhci_iproc_get_max_clock,
|
||||||
|
@ -46,7 +46,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
|||||||
* have been called previously. Use for set_configuration, set_interface,
|
* have been called previously. Use for set_configuration, set_interface,
|
||||||
--- a/drivers/usb/core/message.c
|
--- a/drivers/usb/core/message.c
|
||||||
+++ b/drivers/usb/core/message.c
|
+++ b/drivers/usb/core/message.c
|
||||||
@@ -1259,6 +1259,21 @@ static void remove_intf_ep_devs(struct u
|
@@ -1265,6 +1265,21 @@ static void remove_intf_ep_devs(struct u
|
||||||
intf->ep_devs_created = 0;
|
intf->ep_devs_created = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -27,6 +27,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
|||||||
+ /* Acknowledge any pending PHY interrupt, lest it be the last */
|
+ /* Acknowledge any pending PHY interrupt, lest it be the last */
|
||||||
+ phy_read(phydev, LAN88XX_INT_STS);
|
+ phy_read(phydev, LAN88XX_INT_STS);
|
||||||
+
|
+
|
||||||
|
mutex_lock(&phydev->lock);
|
||||||
phy_read_status(phydev);
|
phy_read_status(phydev);
|
||||||
|
link = phydev->link;
|
||||||
if (!phydev->link && dev->link_on) {
|
|
||||||
|
@ -920,7 +920,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
+ case RTL_VER_15:
|
+ case RTL_VER_15:
|
||||||
default:
|
default:
|
||||||
if (type == MCU_TYPE_USB) {
|
if (type == MCU_TYPE_USB) {
|
||||||
ocp_write_byte(tp, MCU_TYPE_USB, USB_BP2_EN, 0);
|
ocp_write_word(tp, MCU_TYPE_USB, USB_BP2_EN, 0);
|
||||||
@@ -3653,6 +4100,11 @@ static bool rtl8152_is_fw_mac_ok(struct
|
@@ -3653,6 +4100,11 @@ static bool rtl8152_is_fw_mac_ok(struct
|
||||||
case RTL_VER_06:
|
case RTL_VER_06:
|
||||||
case RTL_VER_08:
|
case RTL_VER_08:
|
||||||
|
@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
|||||||
/*
|
/*
|
||||||
* The Mellanox Tavor device gives false positive parity errors. Mark this
|
* The Mellanox Tavor device gives false positive parity errors. Mark this
|
||||||
* device with a broken_parity_status to allow PCI scanning code to "skip"
|
* device with a broken_parity_status to allow PCI scanning code to "skip"
|
||||||
@@ -3321,6 +3322,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
|
@@ -3322,6 +3323,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
|
||||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata);
|
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata);
|
||||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata);
|
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata);
|
||||||
|
|
||||||
@ -42,7 +42,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
|||||||
/*
|
/*
|
||||||
* Ivytown NTB BAR sizes are misreported by the hardware due to an erratum.
|
* Ivytown NTB BAR sizes are misreported by the hardware due to an erratum.
|
||||||
* To work around this, query the size it should be configured to by the
|
* To work around this, query the size it should be configured to by the
|
||||||
@@ -3346,6 +3349,8 @@ static void quirk_intel_ntb(struct pci_d
|
@@ -3347,6 +3350,8 @@ static void quirk_intel_ntb(struct pci_d
|
||||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e08, quirk_intel_ntb);
|
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e08, quirk_intel_ntb);
|
||||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e0d, quirk_intel_ntb);
|
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e0d, quirk_intel_ntb);
|
||||||
|
|
||||||
@ -51,7 +51,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
|||||||
/*
|
/*
|
||||||
* Some BIOS implementations leave the Intel GPU interrupts enabled, even
|
* Some BIOS implementations leave the Intel GPU interrupts enabled, even
|
||||||
* though no one is handling them (e.g., if the i915 driver is never
|
* though no one is handling them (e.g., if the i915 driver is never
|
||||||
@@ -3384,6 +3389,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
|
@@ -3385,6 +3390,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
|
||||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq);
|
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq);
|
||||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq);
|
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq);
|
||||||
|
|
||||||
|
@ -17,9 +17,6 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|||||||
delete mode 100644 Documentation/devicetree/bindings/usb/mediatek,musb.txt
|
delete mode 100644 Documentation/devicetree/bindings/usb/mediatek,musb.txt
|
||||||
create mode 100644 Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
create mode 100644 Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
||||||
|
|
||||||
diff --git a/Documentation/devicetree/bindings/usb/mediatek,musb.txt b/Documentation/devicetree/bindings/usb/mediatek,musb.txt
|
|
||||||
deleted file mode 100644
|
|
||||||
index 5eedb02965622..0000000000000
|
|
||||||
--- a/Documentation/devicetree/bindings/usb/mediatek,musb.txt
|
--- a/Documentation/devicetree/bindings/usb/mediatek,musb.txt
|
||||||
+++ /dev/null
|
+++ /dev/null
|
||||||
@@ -1,57 +0,0 @@
|
@@ -1,57 +0,0 @@
|
||||||
@ -80,9 +77,6 @@ index 5eedb02965622..0000000000000
|
|||||||
- vbus-supply = <&usb_vbus>;
|
- vbus-supply = <&usb_vbus>;
|
||||||
- };
|
- };
|
||||||
-};
|
-};
|
||||||
diff --git a/Documentation/devicetree/bindings/usb/mediatek,musb.yaml b/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000000000..790efe8b62746
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
+++ b/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
||||||
@@ -0,0 +1,113 @@
|
@@ -0,0 +1,113 @@
|
||||||
@ -199,6 +193,3 @@ index 0000000000000..790efe8b62746
|
|||||||
+ };
|
+ };
|
||||||
+ };
|
+ };
|
||||||
+...
|
+...
|
||||||
--
|
|
||||||
2.32.0
|
|
||||||
|
|
||||||
|
@ -13,8 +13,6 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|||||||
Documentation/devicetree/bindings/usb/mediatek,musb.yaml | 1 +
|
Documentation/devicetree/bindings/usb/mediatek,musb.yaml | 1 +
|
||||||
1 file changed, 1 insertion(+)
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
diff --git a/Documentation/devicetree/bindings/usb/mediatek,musb.yaml b/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
|
||||||
index 790efe8b62746..84ddacfdbe9b0 100644
|
|
||||||
--- a/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
--- a/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
||||||
+++ b/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
+++ b/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
||||||
@@ -17,6 +17,7 @@ properties:
|
@@ -17,6 +17,7 @@ properties:
|
||||||
@ -25,6 +23,3 @@ index 790efe8b62746..84ddacfdbe9b0 100644
|
|||||||
- mediatek,mt2701-musb
|
- mediatek,mt2701-musb
|
||||||
- const: mediatek,mtk-musb
|
- const: mediatek,mtk-musb
|
||||||
|
|
||||||
--
|
|
||||||
2.32.0
|
|
||||||
|
|
||||||
|
@ -11,8 +11,6 @@ Reviewed-by: Matthias Brugger <matthias.bgg@gmail.com>
|
|||||||
Documentation/devicetree/bindings/usb/mediatek,musb.yaml | 1 +
|
Documentation/devicetree/bindings/usb/mediatek,musb.yaml | 1 +
|
||||||
1 file changed, 1 insertion(+)
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
diff --git a/Documentation/devicetree/bindings/usb/mediatek,musb.yaml b/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
|
||||||
index 84ddacfdbe9b0..03d62d60ce5fe 100644
|
|
||||||
--- a/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
--- a/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
||||||
+++ b/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
+++ b/Documentation/devicetree/bindings/usb/mediatek,musb.yaml
|
||||||
@@ -19,6 +19,7 @@ properties:
|
@@ -19,6 +19,7 @@ properties:
|
||||||
@ -23,6 +21,3 @@ index 84ddacfdbe9b0..03d62d60ce5fe 100644
|
|||||||
- const: mediatek,mtk-musb
|
- const: mediatek,mtk-musb
|
||||||
|
|
||||||
reg:
|
reg:
|
||||||
--
|
|
||||||
2.32.0
|
|
||||||
|
|
||||||
|
@ -11,11 +11,9 @@ Signed-off-by: Sungbo Eo <mans0n@gorani.run>
|
|||||||
arch/arm/boot/dts/mt7623a.dtsi | 4 ++++
|
arch/arm/boot/dts/mt7623a.dtsi | 4 ++++
|
||||||
2 files changed, 38 insertions(+)
|
2 files changed, 38 insertions(+)
|
||||||
|
|
||||||
diff --git a/arch/arm/boot/dts/mt7623.dtsi b/arch/arm/boot/dts/mt7623.dtsi
|
|
||||||
index 3c11f7cfcc401..790d74439cc66 100644
|
|
||||||
--- a/arch/arm/boot/dts/mt7623.dtsi
|
--- a/arch/arm/boot/dts/mt7623.dtsi
|
||||||
+++ b/arch/arm/boot/dts/mt7623.dtsi
|
+++ b/arch/arm/boot/dts/mt7623.dtsi
|
||||||
@@ -585,6 +585,40 @@ spi2: spi@11017000 {
|
@@ -585,6 +585,40 @@
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -56,11 +54,9 @@ index 3c11f7cfcc401..790d74439cc66 100644
|
|||||||
audsys: clock-controller@11220000 {
|
audsys: clock-controller@11220000 {
|
||||||
compatible = "mediatek,mt7623-audsys",
|
compatible = "mediatek,mt7623-audsys",
|
||||||
"mediatek,mt2701-audsys",
|
"mediatek,mt2701-audsys",
|
||||||
diff --git a/arch/arm/boot/dts/mt7623a.dtsi b/arch/arm/boot/dts/mt7623a.dtsi
|
|
||||||
index 0735a1fb8ad9a..d304b62d24b58 100644
|
|
||||||
--- a/arch/arm/boot/dts/mt7623a.dtsi
|
--- a/arch/arm/boot/dts/mt7623a.dtsi
|
||||||
+++ b/arch/arm/boot/dts/mt7623a.dtsi
|
+++ b/arch/arm/boot/dts/mt7623a.dtsi
|
||||||
@@ -35,6 +35,10 @@ &scpsys {
|
@@ -35,6 +35,10 @@
|
||||||
clock-names = "ethif";
|
clock-names = "ethif";
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -71,6 +67,3 @@ index 0735a1fb8ad9a..d304b62d24b58 100644
|
|||||||
&usb1 {
|
&usb1 {
|
||||||
power-domains = <&scpsys MT7623A_POWER_DOMAIN_HIF>;
|
power-domains = <&scpsys MT7623A_POWER_DOMAIN_HIF>;
|
||||||
};
|
};
|
||||||
--
|
|
||||||
2.32.0
|
|
||||||
|
|
||||||
|
@ -836,7 +836,7 @@
|
|||||||
#include <linux/mtd/partitions.h>
|
#include <linux/mtd/partitions.h>
|
||||||
#include <linux/of_platform.h>
|
#include <linux/of_platform.h>
|
||||||
|
|
||||||
@@ -608,6 +609,8 @@ static int mtk_snand_probe(struct platfo
|
@@ -612,6 +613,8 @@ static int mtk_snand_probe(struct platfo
|
||||||
mtd->_block_isbad = mtk_snand_mtd_block_isbad;
|
mtd->_block_isbad = mtk_snand_mtd_block_isbad;
|
||||||
mtd->_block_markbad = mtk_snand_mtd_block_markbad;
|
mtd->_block_markbad = mtk_snand_mtd_block_markbad;
|
||||||
|
|
||||||
@ -845,7 +845,7 @@
|
|||||||
ret = mtd_device_register(mtd, NULL, 0);
|
ret = mtd_device_register(mtd, NULL, 0);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
dev_err(msm->pdev.dev, "failed to register mtd partition\n");
|
dev_err(msm->pdev.dev, "failed to register mtd partition\n");
|
||||||
@@ -619,6 +622,7 @@ static int mtk_snand_probe(struct platfo
|
@@ -623,6 +626,7 @@ static int mtk_snand_probe(struct platfo
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
errout4:
|
errout4:
|
||||||
@ -853,7 +853,7 @@
|
|||||||
devm_kfree(msm->pdev.dev, msm->page_cache);
|
devm_kfree(msm->pdev.dev, msm->page_cache);
|
||||||
|
|
||||||
errout3:
|
errout3:
|
||||||
@@ -646,6 +650,8 @@ static int mtk_snand_remove(struct platf
|
@@ -650,6 +654,8 @@ static int mtk_snand_remove(struct platf
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
@ -253,7 +253,7 @@ Signed-off-by: chuanjia.liu <Chuanjia.Liu@mediatek.com>
|
|||||||
#interrupt-cells = <1>;
|
#interrupt-cells = <1>;
|
||||||
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
|
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
|
||||||
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
|
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
|
||||||
@@ -296,18 +296,16 @@
|
@@ -288,18 +288,16 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -281,7 +281,7 @@ Signed-off-by: chuanjia.liu <Chuanjia.Liu@mediatek.com>
|
|||||||
&pio {
|
&pio {
|
||||||
--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
|
--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
|
||||||
+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
|
+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
|
||||||
@@ -801,45 +801,41 @@
|
@@ -802,45 +802,41 @@
|
||||||
#reset-cells = <1>;
|
#reset-cells = <1>;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -344,7 +344,7 @@ Signed-off-by: chuanjia.liu <Chuanjia.Liu@mediatek.com>
|
|||||||
interrupt-map-mask = <0 0 0 7>;
|
interrupt-map-mask = <0 0 0 7>;
|
||||||
interrupt-map = <0 0 0 1 &pcie_intc0 0>,
|
interrupt-map = <0 0 0 1 &pcie_intc0 0>,
|
||||||
<0 0 0 2 &pcie_intc0 1>,
|
<0 0 0 2 &pcie_intc0 1>,
|
||||||
@@ -851,15 +847,39 @@
|
@@ -852,15 +848,39 @@
|
||||||
#interrupt-cells = <1>;
|
#interrupt-cells = <1>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -149,7 +149,7 @@ Signed-off-by: chuanjia.liu <Chuanjia.Liu@mediatek.com>
|
|||||||
&pciephy1 {
|
&pciephy1 {
|
||||||
--- a/arch/arm/boot/dts/mt7629.dtsi
|
--- a/arch/arm/boot/dts/mt7629.dtsi
|
||||||
+++ b/arch/arm/boot/dts/mt7629.dtsi
|
+++ b/arch/arm/boot/dts/mt7629.dtsi
|
||||||
@@ -382,16 +382,21 @@
|
@@ -376,16 +376,21 @@
|
||||||
#reset-cells = <1>;
|
#reset-cells = <1>;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -177,7 +177,7 @@ Signed-off-by: chuanjia.liu <Chuanjia.Liu@mediatek.com>
|
|||||||
clocks = <&pciesys CLK_PCIE_P1_MAC_EN>,
|
clocks = <&pciesys CLK_PCIE_P1_MAC_EN>,
|
||||||
<&pciesys CLK_PCIE_P0_AHB_EN>,
|
<&pciesys CLK_PCIE_P0_AHB_EN>,
|
||||||
<&pciesys CLK_PCIE_P1_AUX_EN>,
|
<&pciesys CLK_PCIE_P1_AUX_EN>,
|
||||||
@@ -412,21 +417,19 @@
|
@@ -406,21 +411,19 @@
|
||||||
power-domains = <&scpsys MT7622_POWER_DOMAIN_HIF0>;
|
power-domains = <&scpsys MT7622_POWER_DOMAIN_HIF0>;
|
||||||
bus-range = <0x00 0xff>;
|
bus-range = <0x00 0xff>;
|
||||||
ranges = <0x82000000 0 0x20000000 0x20000000 0 0x10000000>;
|
ranges = <0x82000000 0 0x20000000 0x20000000 0 0x10000000>;
|
||||||
|
@ -18,7 +18,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
interface-type = "ace";
|
interface-type = "ace";
|
||||||
reg = <0x5000 0x1000>;
|
reg = <0x5000 0x1000>;
|
||||||
};
|
};
|
||||||
@@ -976,6 +976,8 @@
|
@@ -977,6 +977,8 @@
|
||||||
power-domains = <&scpsys MT7622_POWER_DOMAIN_ETHSYS>;
|
power-domains = <&scpsys MT7622_POWER_DOMAIN_ETHSYS>;
|
||||||
mediatek,ethsys = <ðsys>;
|
mediatek,ethsys = <ðsys>;
|
||||||
mediatek,sgmiisys = <&sgmiisys>;
|
mediatek,sgmiisys = <&sgmiisys>;
|
||||||
|
@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
|
--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
|
||||||
+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
|
+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
|
||||||
@@ -812,6 +812,8 @@
|
@@ -813,6 +813,8 @@
|
||||||
reg = <0 0x1a143000 0 0x1000>;
|
reg = <0 0x1a143000 0 0x1000>;
|
||||||
reg-names = "port0";
|
reg-names = "port0";
|
||||||
mediatek,pcie-cfg = <&pciecfg>;
|
mediatek,pcie-cfg = <&pciecfg>;
|
||||||
@ -19,7 +19,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
#address-cells = <3>;
|
#address-cells = <3>;
|
||||||
#size-cells = <2>;
|
#size-cells = <2>;
|
||||||
interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_LOW>;
|
interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_LOW>;
|
||||||
@@ -829,6 +831,7 @@
|
@@ -830,6 +832,7 @@
|
||||||
bus-range = <0x00 0xff>;
|
bus-range = <0x00 0xff>;
|
||||||
ranges = <0x82000000 0 0x20000000 0x0 0x20000000 0 0x8000000>;
|
ranges = <0x82000000 0 0x20000000 0x0 0x20000000 0 0x8000000>;
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
slot0: pcie@0,0 {
|
slot0: pcie@0,0 {
|
||||||
reg = <0x0000 0 0 0 0>;
|
reg = <0x0000 0 0 0 0>;
|
||||||
@@ -855,6 +858,8 @@
|
@@ -856,6 +859,8 @@
|
||||||
reg = <0 0x1a145000 0 0x1000>;
|
reg = <0 0x1a145000 0 0x1000>;
|
||||||
reg-names = "port1";
|
reg-names = "port1";
|
||||||
mediatek,pcie-cfg = <&pciecfg>;
|
mediatek,pcie-cfg = <&pciecfg>;
|
||||||
@ -36,7 +36,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
#address-cells = <3>;
|
#address-cells = <3>;
|
||||||
#size-cells = <2>;
|
#size-cells = <2>;
|
||||||
interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_LOW>;
|
interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_LOW>;
|
||||||
@@ -873,6 +878,7 @@
|
@@ -874,6 +879,7 @@
|
||||||
bus-range = <0x00 0xff>;
|
bus-range = <0x00 0xff>;
|
||||||
ranges = <0x82000000 0 0x28000000 0x0 0x28000000 0 0x8000000>;
|
ranges = <0x82000000 0 0x28000000 0x0 0x28000000 0 0x8000000>;
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
@ -44,7 +44,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
slot1: pcie@1,0 {
|
slot1: pcie@1,0 {
|
||||||
reg = <0x0800 0 0 0 0>;
|
reg = <0x0800 0 0 0 0>;
|
||||||
@@ -932,6 +938,11 @@
|
@@ -933,6 +939,11 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
|
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
|
||||||
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
|
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
|
||||||
@@ -305,14 +305,14 @@
|
@@ -297,14 +297,14 @@
|
||||||
&pcie1 {
|
&pcie1 {
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
pinctrl-0 = <&pcie1_pins>;
|
pinctrl-0 = <&pcie1_pins>;
|
||||||
|
@ -1,39 +0,0 @@
|
|||||||
From: =?utf-8?q?Marek_Beh=C3=BAn?= <kabel@kernel.org>
|
|
||||||
Subject: [PATCH v2] cpufreq: armada-37xx: forbid cpufreq for 1.2 GHz variant
|
|
||||||
Date: Thu, 1 Jul 2021 00:56:01 +0200
|
|
||||||
|
|
||||||
The 1.2 GHz variant of the Armada 3720 SOC is unstable with DVFS: when
|
|
||||||
the SOC boots, the WTMI firmware sets clocks and AVS values that work
|
|
||||||
correctly with 1.2 GHz CPU frequency, but random crashes occur once
|
|
||||||
cpufreq driver starts scaling.
|
|
||||||
|
|
||||||
We do not know currently what is the reason:
|
|
||||||
- it may be that the voltage value for L0 for 1.2 GHz variant provided
|
|
||||||
by the vendor in the OTP is simply incorrect when scaling is used,
|
|
||||||
- it may be that some delay is needed somewhere,
|
|
||||||
- it may be something else.
|
|
||||||
|
|
||||||
The most sane solution now seems to be to simply forbid the cpufreq
|
|
||||||
driver on 1.2 GHz variant.
|
|
||||||
|
|
||||||
Signed-off-by: Marek Behún <kabel@kernel.org>
|
|
||||||
Fixes: 92ce45fb875d ("cpufreq: Add DVFS support for Armada 37xx")
|
|
||||||
---
|
|
||||||
drivers/cpufreq/armada-37xx-cpufreq.c | 6 +++++-
|
|
||||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
--- a/drivers/cpufreq/armada-37xx-cpufreq.c
|
|
||||||
+++ b/drivers/cpufreq/armada-37xx-cpufreq.c
|
|
||||||
@@ -102,7 +102,11 @@ struct armada_37xx_dvfs {
|
|
||||||
};
|
|
||||||
|
|
||||||
static struct armada_37xx_dvfs armada_37xx_dvfs[] = {
|
|
||||||
- {.cpu_freq_max = 1200*1000*1000, .divider = {1, 2, 4, 6} },
|
|
||||||
+ /*
|
|
||||||
+ * The cpufreq scaling for 1.2 GHz variant of the SOC is currently
|
|
||||||
+ * unstable because we do not know how to configure it properly.
|
|
||||||
+ */
|
|
||||||
+ /* {.cpu_freq_max = 1200*1000*1000, .divider = {1, 2, 4, 6} }, */
|
|
||||||
{.cpu_freq_max = 1000*1000*1000, .divider = {1, 2, 4, 5} },
|
|
||||||
{.cpu_freq_max = 800*1000*1000, .divider = {1, 2, 3, 4} },
|
|
||||||
{.cpu_freq_max = 600*1000*1000, .divider = {2, 4, 5, 6} },
|
|
Loading…
x
Reference in New Issue
Block a user