mirror of
https://github.com/openwrt/openwrt.git
synced 2025-04-12 05:41:12 +00:00
kernel: bump 5.4 to 5.4.108
Refreshed all patches. Compile-tested on: x86_64, ath79, lantiq Runtime-tested on: x86_64, ath79 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
parent
e8cbdbbe97
commit
2464a9a8a4
include
target/linux
apm821xx/patches-5.4
801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch802-usb-xhci-force-msi-renesas-xhci.patch
ath79/patches-5.4
bcm27xx/patches-5.4
950-0025-Update-vfpmodule.c.patch950-0211-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch950-0219-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch950-0264-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch950-0313-kbuild-Allow-.dtbo-overlays-to-be-built-piecemeal.patch950-0435-arm64-rename-variables-used-to-calculate-ZONE_DMA32-.patch950-0436-arm64-use-both-ZONE_DMA-and-ZONE_DMA32.patch950-0439-dma-direct-turn-ARCH_ZONE_DMA_BITS-into-a-variable.patch950-0454-Kbuild-Allow-.dtbo-overlays-to-be-built-adjust.patch950-0625-arm64-mm-reserve-CMA-and-crashkernel-in-ZONE_DMA32.patch950-0993-xhci-quirks-add-link-TRB-quirk-for-VL805.patch
bcm4908/patches-5.4
070-v5.10-0001-net-dsa-b53-Use-dev_-err-info-instead-of-pr_.patch070-v5.10-0002-net-dsa-b53-Print-err-message-on-SW_RST-timeout.patch071-v5.12-0001-net-dsa-bcm_sf2-support-BCM4908-s-integrated-switch.patch075-v5.13-0001-net-dsa-bcm_sf2-store-PHY-interface-mode-in-port-str.patch075-v5.13-0002-net-dsa-bcm_sf2-setup-BCM4908-internal-crossbar.patch700-net-dsa-bcm_sf2-enable-GPHY-for-switch-probing.patch701-net-dsa-bcm_sf2-keep-GPHY-enabled-on-the-BCM4908.patch702-net-dsa-bcm_sf2-quick-fix-for-RGMII-reg-access-on-BC.patch
bcm53xx/patches-5.4
generic/backport-5.4
layerscape/patches-5.4
303-core-0009-arm64-move-elfcorehdr-reservation-early-for-crash-du.patch701-net-0225-enetc-Configure-the-Time-Aware-Scheduler-via-tc-tapr.patch701-net-0226-enetc-update-TSN-Qbv-PSPEED-set-according-to-adjust-.patch701-net-0229-enetc-Initialize-SerDes-for-SGMII-and-SXGMII-protoco.patch701-net-0231-enetc-Use-DT-protocol-information-to-set-up-the-port.patch701-net-0232-enetc-Handle-USXGMII-protocol.patch701-net-0234-enetc-WA-for-MDIO-register-access-issue.patch701-net-0236-enetc-Replace-enetc_gregs-with-a-readers-writer-lock.patch701-net-0237-enetc-Remove-mdio-bus-on-PF-probe-error-path.patch701-net-0336-enetc-add-support-Credit-Based-Shaper-CBS-for-hardwa.patch701-net-0337-enetc-add-support-tsn-capabilities-qbv-qci-qbu-cbs.patch701-net-0342-LF-376-enetc-disable-EEE-autoneg-by-default.patch701-net-0382-enetc-Make-MDIO-accessors-more-generic-and-export-to.patch701-net-0398-enetc-add-ioctl-support-for-PHY-related-ops.patch801-audio-0008-Revert-ASoC-Remove-dev_err-usage-after-platform_get_.patch802-can-0007-can-flexcan-use-devm_platform_ioremap_resource-to-si.patch802-can-0009-can-flexcan-rename-macro-FLEXCAN_IFLAG_MB-FLEXCAN_IF.patch802-can-0011-can-flexcan-rename-struct-flexcan_priv-reg_imask-1-2.patch802-can-0012-can-flexcan-remove-TX-mailbox-bit-from-struct-flexca.patch802-can-0013-can-flexcan-convert-struct-flexcan_priv-rx_mask-1-2-.patch802-can-0014-can-flexcan-introduce-struct-flexcan_priv-tx_mask-an.patch802-can-0019-can-flexcan-add-CAN-FD-mode-support.patch802-can-0021-can-flexcan-add-ISO-CAN-FD-feature-support.patch802-can-0022-can-flexcan-add-Transceiver-Delay-Compensation-suopp.patch802-can-0023-can-flexcan-add-imx8qm-support.patch802-can-0024-can-flexcan-add-lx2160ar1-support.patch802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch802-can-0027-can-flexcan-add-CAN-wakeup-function-for-i.MX8.patch802-can-0028-can-flexcan-Add-S32V234-support-to-FlexCAN-driver.patch811-kvm-0002-arm-arm64-KVM-allow-specifying-s2-prot-bits-when-map.patch811-kvm-0003-arm-arm64-KVM-drop-qman-mmio-cacheable-mapping-hack.patch820-usb-0015-MLK-17380-4-usb-host-xhci-add-EH-SINGLE_STEP_SET_FEA.patch820-usb-0016-MLK-16735-usb-host-add-XHCI_CDNS_HOST-flag.patch820-usb-0018-MLK-18794-1-usb-host-xhci-add-.bus_suspend-override.patch
mediatek/patches-5.4
ramips/patches-5.4
@ -6,9 +6,9 @@ ifdef CONFIG_TESTING_KERNEL
|
||||
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
|
||||
endif
|
||||
|
||||
LINUX_VERSION-5.4 = .105
|
||||
LINUX_VERSION-5.4 = .108
|
||||
|
||||
LINUX_KERNEL_HASH-5.4.105 = 244e4cd16184285df55ec5a9501daba011aa8b85c5527ee05eab4592e70fb8b6
|
||||
LINUX_KERNEL_HASH-5.4.108 = f212ac07c21bd33e6898fdbb2ddba2a454f74578bbe7bef8fe4dbbbc0ec52172
|
||||
|
||||
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
||||
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
|
||||
|
@ -48,9 +48,9 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
|
||||
|
||||
#include "xhci.h"
|
||||
#include "xhci-trace.h"
|
||||
@@ -63,6 +65,44 @@
|
||||
#define PCI_DEVICE_ID_ASMEDIA_1142_XHCI 0x1242
|
||||
@@ -64,6 +66,44 @@
|
||||
#define PCI_DEVICE_ID_ASMEDIA_2142_XHCI 0x2142
|
||||
#define PCI_DEVICE_ID_ASMEDIA_3242_XHCI 0x3242
|
||||
|
||||
+#define RENESAS_FW_VERSION 0x6C
|
||||
+#define RENESAS_ROM_CONFIG 0xF0
|
||||
@ -93,7 +93,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
|
||||
static const char hcd_name[] = "xhci_hcd";
|
||||
|
||||
static struct hc_driver __read_mostly xhci_pci_hc_driver;
|
||||
@@ -298,6 +338,873 @@ static void xhci_pme_acpi_rtd3_enable(st
|
||||
@@ -307,6 +347,873 @@ static void xhci_pme_acpi_rtd3_enable(st
|
||||
static void xhci_pme_acpi_rtd3_enable(struct pci_dev *dev) { }
|
||||
#endif /* CONFIG_ACPI */
|
||||
|
||||
@ -967,7 +967,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
|
||||
/* called during probe() after chip reset completes */
|
||||
static int xhci_pci_setup(struct usb_hcd *hcd)
|
||||
{
|
||||
@@ -339,6 +1246,27 @@ static int xhci_pci_probe(struct pci_dev
|
||||
@@ -348,6 +1255,27 @@ static int xhci_pci_probe(struct pci_dev
|
||||
struct hc_driver *driver;
|
||||
struct usb_hcd *hcd;
|
||||
|
||||
@ -995,7 +995,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
|
||||
driver = (struct hc_driver *)id->driver_data;
|
||||
|
||||
/* Prevent runtime suspending between USB-2 and USB-3 initialization */
|
||||
@@ -400,6 +1328,16 @@ static void xhci_pci_remove(struct pci_d
|
||||
@@ -409,6 +1337,16 @@ static void xhci_pci_remove(struct pci_d
|
||||
{
|
||||
struct xhci_hcd *xhci;
|
||||
|
||||
@ -1012,7 +1012,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
|
||||
xhci = hcd_to_xhci(pci_get_drvdata(dev));
|
||||
xhci->xhc_state |= XHCI_STATE_REMOVING;
|
||||
|
||||
@@ -539,6 +1477,11 @@ static int xhci_pci_resume(struct usb_hc
|
||||
@@ -548,6 +1486,11 @@ static int xhci_pci_resume(struct usb_hc
|
||||
if (pdev->vendor == PCI_VENDOR_ID_INTEL)
|
||||
usb_enable_intel_xhci_ports(pdev);
|
||||
|
||||
|
@ -13,7 +13,7 @@ produce a noisy warning.
|
||||
|
||||
--- a/drivers/usb/host/xhci-pci.c
|
||||
+++ b/drivers/usb/host/xhci-pci.c
|
||||
@@ -285,6 +285,7 @@ static void xhci_pci_quirks(struct devic
|
||||
@@ -286,6 +286,7 @@ static void xhci_pci_quirks(struct devic
|
||||
pdev->device == 0x0015) {
|
||||
xhci->quirks |= XHCI_RESET_ON_RESUME;
|
||||
xhci->quirks |= XHCI_ZERO_64B_REGS;
|
||||
@ -43,7 +43,7 @@ produce a noisy warning.
|
||||
hcd->msi_enabled = 1;
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1882,6 +1882,7 @@ struct xhci_hcd {
|
||||
@@ -1883,6 +1883,7 @@ struct xhci_hcd {
|
||||
struct xhci_hub usb2_rhub;
|
||||
struct xhci_hub usb3_rhub;
|
||||
/* support xHCI 1.0 spec USB2 hardware LPM */
|
||||
|
@ -36,11 +36,9 @@ Signed-off-by: Mauri Sandberg <sandberg@mailfence.com>
|
||||
drivers/mtd/chips/cfi_cmdset_0002.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/drivers/mtd/chips/cfi_cmdset_0002.c b/drivers/mtd/chips/cfi_cmdset_0002.c
|
||||
index a1f3e1031c3d..28b6f3583f8a 100644
|
||||
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
|
||||
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
|
||||
@@ -272,6 +272,10 @@ static void fixup_use_write_buffers(struct mtd_info *mtd)
|
||||
@@ -272,6 +272,10 @@ static void fixup_use_write_buffers(stru
|
||||
{
|
||||
struct map_info *map = mtd->priv;
|
||||
struct cfi_private *cfi = map->fldrv_priv;
|
||||
@ -51,8 +49,3 @@ index a1f3e1031c3d..28b6f3583f8a 100644
|
||||
if (cfi->cfiq->BufWriteTimeoutTyp) {
|
||||
pr_debug("Using buffer write method\n");
|
||||
mtd->_write = cfi_amdstd_write_buffers;
|
||||
|
||||
base-commit: 5de15b610f785f0e188fefb707f0b19de156968a
|
||||
--
|
||||
2.25.1
|
||||
|
||||
|
@ -125,7 +125,7 @@ Signed-off-by: Christopher Alexander Tobias Schulze <cat.schulze@alice-dsl.net>
|
||||
hwstate->fpexc = fpexc;
|
||||
|
||||
hwstate->fpinst = ufp_exc->fpinst;
|
||||
@@ -682,7 +694,8 @@ void kernel_neon_begin(void)
|
||||
@@ -726,7 +738,8 @@ void kernel_neon_begin(void)
|
||||
cpu = get_cpu();
|
||||
|
||||
fpexc = fmrx(FPEXC) | FPEXC_EN;
|
||||
|
@ -10,7 +10,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
--- a/drivers/usb/host/xhci-pci.c
|
||||
+++ b/drivers/usb/host/xhci-pci.c
|
||||
@@ -254,6 +254,10 @@ static void xhci_pci_quirks(struct devic
|
||||
@@ -255,6 +255,10 @@ static void xhci_pci_quirks(struct devic
|
||||
pdev->device == 0x3432)
|
||||
xhci->quirks |= XHCI_BROKEN_STREAMS;
|
||||
|
||||
|
4
target/linux/bcm27xx/patches-5.4/950-0219-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch
4
target/linux/bcm27xx/patches-5.4/950-0219-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch
@ -15,7 +15,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
|
||||
--- a/drivers/usb/host/xhci.c
|
||||
+++ b/drivers/usb/host/xhci.c
|
||||
@@ -1456,6 +1456,103 @@ command_cleanup:
|
||||
@@ -1464,6 +1464,103 @@ command_cleanup:
|
||||
}
|
||||
|
||||
/*
|
||||
@ -119,7 +119,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
* non-error returns are a promise to giveback() the urb later
|
||||
* we drop ownership so next owner (or urb unlink) can get it
|
||||
*/
|
||||
@@ -5337,6 +5434,7 @@ static const struct hc_driver xhci_hc_dr
|
||||
@@ -5345,6 +5442,7 @@ static const struct hc_driver xhci_hc_dr
|
||||
.endpoint_reset = xhci_endpoint_reset,
|
||||
.check_bandwidth = xhci_check_bandwidth,
|
||||
.reset_bandwidth = xhci_reset_bandwidth,
|
||||
|
4
target/linux/bcm27xx/patches-5.4/950-0264-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch
4
target/linux/bcm27xx/patches-5.4/950-0264-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch
@ -23,7 +23,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
|
||||
--- a/drivers/usb/host/xhci-pci.c
|
||||
+++ b/drivers/usb/host/xhci-pci.c
|
||||
@@ -255,8 +255,10 @@ static void xhci_pci_quirks(struct devic
|
||||
@@ -256,8 +256,10 @@ static void xhci_pci_quirks(struct devic
|
||||
xhci->quirks |= XHCI_BROKEN_STREAMS;
|
||||
|
||||
if (pdev->vendor == PCI_VENDOR_ID_VIA &&
|
||||
@ -87,4 +87,4 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
+#define XHCI_EP_CTX_BROKEN_DCS BIT_ULL(36)
|
||||
#define XHCI_SKIP_PHY_INIT BIT_ULL(37)
|
||||
#define XHCI_DISABLE_SPARSE BIT_ULL(38)
|
||||
|
||||
#define XHCI_NO_SOFT_RETRY BIT_ULL(40)
|
||||
|
@ -24,7 +24,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -1261,6 +1261,9 @@ ifneq ($(dtstree),)
|
||||
@@ -1269,6 +1269,9 @@ ifneq ($(dtstree),)
|
||||
%.dtb: include/config/kernel.release scripts_dtc
|
||||
$(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@
|
||||
|
||||
|
6
target/linux/bcm27xx/patches-5.4/950-0435-arm64-rename-variables-used-to-calculate-ZONE_DMA32-.patch
6
target/linux/bcm27xx/patches-5.4/950-0435-arm64-rename-variables-used-to-calculate-ZONE_DMA32-.patch
@ -85,7 +85,7 @@ Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
|
||||
zhole_size[ZONE_NORMAL] -= normal_end - normal_start;
|
||||
}
|
||||
}
|
||||
@@ -410,9 +410,9 @@ void __init arm64_memblock_init(void)
|
||||
@@ -422,9 +422,9 @@ void __init arm64_memblock_init(void)
|
||||
|
||||
/* 4GB maximum for 32-bit only capable devices */
|
||||
if (IS_ENABLED(CONFIG_ZONE_DMA32))
|
||||
@ -97,7 +97,7 @@ Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
|
||||
|
||||
reserve_crashkernel();
|
||||
|
||||
@@ -420,7 +420,7 @@ void __init arm64_memblock_init(void)
|
||||
@@ -432,7 +432,7 @@ void __init arm64_memblock_init(void)
|
||||
|
||||
high_memory = __va(memblock_end_of_DRAM() - 1) + 1;
|
||||
|
||||
@ -106,7 +106,7 @@ Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
|
||||
}
|
||||
|
||||
void __init bootmem_init(void)
|
||||
@@ -524,7 +524,7 @@ static void __init free_unused_memmap(vo
|
||||
@@ -536,7 +536,7 @@ static void __init free_unused_memmap(vo
|
||||
void __init mem_init(void)
|
||||
{
|
||||
if (swiotlb_force == SWIOTLB_FORCE ||
|
||||
|
@ -140,7 +140,7 @@ Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
|
||||
}
|
||||
#endif
|
||||
if (end > max_dma32) {
|
||||
@@ -408,9 +430,11 @@ void __init arm64_memblock_init(void)
|
||||
@@ -420,9 +442,11 @@ void __init arm64_memblock_init(void)
|
||||
|
||||
early_init_fdt_scan_reserved_mem();
|
||||
|
||||
@ -154,7 +154,7 @@ Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
|
||||
else
|
||||
arm64_dma32_phys_limit = PHYS_MASK + 1;
|
||||
|
||||
@@ -420,7 +444,7 @@ void __init arm64_memblock_init(void)
|
||||
@@ -432,7 +456,7 @@ void __init arm64_memblock_init(void)
|
||||
|
||||
high_memory = __va(memblock_end_of_DRAM() - 1) + 1;
|
||||
|
||||
@ -163,7 +163,7 @@ Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
|
||||
}
|
||||
|
||||
void __init bootmem_init(void)
|
||||
@@ -524,7 +548,7 @@ static void __init free_unused_memmap(vo
|
||||
@@ -536,7 +560,7 @@ static void __init free_unused_memmap(vo
|
||||
void __init mem_init(void)
|
||||
{
|
||||
if (swiotlb_force == SWIOTLB_FORCE ||
|
||||
|
2
target/linux/bcm27xx/patches-5.4/950-0439-dma-direct-turn-ARCH_ZONE_DMA_BITS-into-a-variable.patch
2
target/linux/bcm27xx/patches-5.4/950-0439-dma-direct-turn-ARCH_ZONE_DMA_BITS-into-a-variable.patch
@ -50,7 +50,7 @@ Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
|
||||
/*
|
||||
* We need to be able to catch inadvertent references to memstart_addr
|
||||
* that occur (potentially in generic code) before arm64_memblock_init()
|
||||
@@ -430,8 +433,10 @@ void __init arm64_memblock_init(void)
|
||||
@@ -442,8 +445,10 @@ void __init arm64_memblock_init(void)
|
||||
|
||||
early_init_fdt_scan_reserved_mem();
|
||||
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: Nataliya Korovkina <malus.brandywine@gmail.com>
|
||||
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -1261,7 +1261,7 @@ ifneq ($(dtstree),)
|
||||
@@ -1269,7 +1269,7 @@ ifneq ($(dtstree),)
|
||||
%.dtb: include/config/kernel.release scripts_dtc
|
||||
$(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@
|
||||
|
||||
|
2
target/linux/bcm27xx/patches-5.4/950-0625-arm64-mm-reserve-CMA-and-crashkernel-in-ZONE_DMA32.patch
2
target/linux/bcm27xx/patches-5.4/950-0625-arm64-mm-reserve-CMA-and-crashkernel-in-ZONE_DMA32.patch
@ -33,7 +33,7 @@ Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
|
||||
crash_size, SZ_2M);
|
||||
if (crash_base == 0) {
|
||||
pr_warn("cannot allocate crashkernel (size:0x%llx)\n",
|
||||
@@ -449,7 +449,7 @@ void __init arm64_memblock_init(void)
|
||||
@@ -461,7 +461,7 @@ void __init arm64_memblock_init(void)
|
||||
|
||||
high_memory = __va(memblock_end_of_DRAM() - 1) + 1;
|
||||
|
||||
|
@ -22,7 +22,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/usb/host/xhci-pci.c
|
||||
+++ b/drivers/usb/host/xhci-pci.c
|
||||
@@ -258,6 +258,7 @@ static void xhci_pci_quirks(struct devic
|
||||
@@ -259,6 +259,7 @@ static void xhci_pci_quirks(struct devic
|
||||
pdev->device == 0x3483) {
|
||||
xhci->quirks |= XHCI_LPM_SUPPORT;
|
||||
xhci->quirks |= XHCI_EP_CTX_BROKEN_DCS;
|
||||
@ -56,6 +56,6 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
#define XHCI_SKIP_PHY_INIT BIT_ULL(37)
|
||||
#define XHCI_DISABLE_SPARSE BIT_ULL(38)
|
||||
+#define XHCI_AVOID_DQ_ON_LINK BIT_ULL(39)
|
||||
#define XHCI_NO_SOFT_RETRY BIT_ULL(40)
|
||||
|
||||
unsigned int num_active_eps;
|
||||
unsigned int limit_active_eps;
|
||||
|
4
target/linux/bcm4908/patches-5.4/070-v5.10-0001-net-dsa-b53-Use-dev_-err-info-instead-of-pr_.patch
4
target/linux/bcm4908/patches-5.4/070-v5.10-0001-net-dsa-b53-Use-dev_-err-info-instead-of-pr_.patch
@ -26,7 +26,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/export.h>
|
||||
#include <linux/gpio.h>
|
||||
@@ -2458,8 +2456,9 @@ int b53_switch_detect(struct b53_device
|
||||
@@ -2476,8 +2474,9 @@ int b53_switch_detect(struct b53_device
|
||||
dev->chip_id = id32;
|
||||
break;
|
||||
default:
|
||||
@ -38,7 +38,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
return -ENODEV;
|
||||
}
|
||||
}
|
||||
@@ -2489,7 +2488,8 @@ int b53_switch_register(struct b53_devic
|
||||
@@ -2507,7 +2506,8 @@ int b53_switch_register(struct b53_devic
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
--- a/drivers/net/dsa/b53/b53_common.c
|
||||
+++ b/drivers/net/dsa/b53/b53_common.c
|
||||
@@ -740,8 +740,11 @@ static int b53_switch_reset(struct b53_d
|
||||
@@ -755,8 +755,11 @@ static int b53_switch_reset(struct b53_d
|
||||
usleep_range(1000, 2000);
|
||||
} while (timeout-- > 0);
|
||||
|
||||
|
@ -23,7 +23,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/dsa/b53/b53_common.c
|
||||
+++ b/drivers/net/dsa/b53/b53_common.c
|
||||
@@ -2260,6 +2260,22 @@ static const struct b53_chip_data b53_sw
|
||||
@@ -2278,6 +2278,22 @@ static const struct b53_chip_data b53_sw
|
||||
.jumbo_pm_reg = B53_JUMBO_PORT_MASK,
|
||||
.jumbo_size_reg = B53_JUMBO_MAX_SIZE,
|
||||
},
|
||||
@ -68,7 +68,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
offset = CORE_STS_OVERRIDE_IMP;
|
||||
else
|
||||
offset = CORE_STS_OVERRIDE_IMP2;
|
||||
@@ -546,7 +547,8 @@ static void bcm_sf2_sw_mac_config(struct
|
||||
@@ -541,7 +542,8 @@ static void bcm_sf2_sw_mac_config(struct
|
||||
if (port == core_readl(priv, CORE_IMP0_PRT_ID))
|
||||
return;
|
||||
|
||||
@ -78,7 +78,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
offset = CORE_STS_OVERRIDE_GMIIP_PORT(port);
|
||||
else
|
||||
offset = CORE_STS_OVERRIDE_GMIIP2_PORT(port);
|
||||
@@ -988,6 +990,30 @@ struct bcm_sf2_of_data {
|
||||
@@ -983,6 +985,30 @@ struct bcm_sf2_of_data {
|
||||
unsigned int num_cfp_rules;
|
||||
};
|
||||
|
||||
@ -109,7 +109,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
/* Register offsets for the SWITCH_REG_* block */
|
||||
static const u16 bcm_sf2_7445_reg_offsets[] = {
|
||||
[REG_SWITCH_CNTRL] = 0x00,
|
||||
@@ -1036,6 +1062,9 @@ static const struct bcm_sf2_of_data bcm_
|
||||
@@ -1031,6 +1057,9 @@ static const struct bcm_sf2_of_data bcm_
|
||||
};
|
||||
|
||||
static const struct of_device_id bcm_sf2_of_match[] = {
|
||||
|
@ -18,7 +18,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
--- a/drivers/net/dsa/bcm_sf2.c
|
||||
+++ b/drivers/net/dsa/bcm_sf2.c
|
||||
@@ -385,8 +385,9 @@ static void bcm_sf2_intr_disable(struct
|
||||
@@ -380,8 +380,9 @@ static void bcm_sf2_intr_disable(struct
|
||||
static void bcm_sf2_identify_ports(struct bcm_sf2_priv *priv,
|
||||
struct device_node *dn)
|
||||
{
|
||||
@ -29,7 +29,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
unsigned int port_num;
|
||||
|
||||
priv->moca_port = -1;
|
||||
@@ -395,19 +396,26 @@ static void bcm_sf2_identify_ports(struc
|
||||
@@ -390,19 +391,26 @@ static void bcm_sf2_identify_ports(struc
|
||||
if (of_property_read_u32(port, "reg", &port_num))
|
||||
continue;
|
||||
|
||||
|
@ -37,7 +37,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
--- a/drivers/net/dsa/bcm_sf2.c
|
||||
+++ b/drivers/net/dsa/bcm_sf2.c
|
||||
@@ -374,6 +374,44 @@ static int bcm_sf2_sw_rst(struct bcm_sf2
|
||||
@@ -369,6 +369,44 @@ static int bcm_sf2_sw_rst(struct bcm_sf2
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -82,7 +82,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
static void bcm_sf2_intr_disable(struct bcm_sf2_priv *priv)
|
||||
{
|
||||
intrl2_0_mask_set(priv, 0xffffffff);
|
||||
@@ -737,6 +775,8 @@ static int bcm_sf2_sw_resume(struct dsa_
|
||||
@@ -732,6 +770,8 @@ static int bcm_sf2_sw_resume(struct dsa_
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -91,7 +91,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
ret = bcm_sf2_cfp_resume(ds);
|
||||
if (ret)
|
||||
return ret;
|
||||
@@ -999,6 +1039,7 @@ struct bcm_sf2_of_data {
|
||||
@@ -994,6 +1034,7 @@ struct bcm_sf2_of_data {
|
||||
const u16 *reg_offsets;
|
||||
unsigned int core_reg_align;
|
||||
unsigned int num_cfp_rules;
|
||||
@ -99,7 +99,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
};
|
||||
|
||||
static const u16 bcm_sf2_4908_reg_offsets[] = {
|
||||
@@ -1023,6 +1064,7 @@ static const struct bcm_sf2_of_data bcm_
|
||||
@@ -1018,6 +1059,7 @@ static const struct bcm_sf2_of_data bcm_
|
||||
.core_reg_align = 0,
|
||||
.reg_offsets = bcm_sf2_4908_reg_offsets,
|
||||
.num_cfp_rules = 0, /* FIXME */
|
||||
@ -107,7 +107,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
};
|
||||
|
||||
/* Register offsets for the SWITCH_REG_* block */
|
||||
@@ -1133,6 +1175,7 @@ static int bcm_sf2_sw_probe(struct platf
|
||||
@@ -1128,6 +1170,7 @@ static int bcm_sf2_sw_probe(struct platf
|
||||
priv->reg_offsets = data->reg_offsets;
|
||||
priv->core_reg_align = data->core_reg_align;
|
||||
priv->num_cfp_rules = data->num_cfp_rules;
|
||||
@ -115,7 +115,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
/* Auto-detection using standard registers will not work, so
|
||||
* provide an indication of what kind of device we are for
|
||||
@@ -1187,6 +1230,8 @@ static int bcm_sf2_sw_probe(struct platf
|
||||
@@ -1182,6 +1225,8 @@ static int bcm_sf2_sw_probe(struct platf
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -29,7 +29,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
|
||||
--- a/drivers/net/dsa/bcm_sf2.c
|
||||
+++ b/drivers/net/dsa/bcm_sf2.c
|
||||
@@ -1290,10 +1290,14 @@ static int bcm_sf2_sw_probe(struct platf
|
||||
@@ -1285,10 +1285,14 @@ static int bcm_sf2_sw_probe(struct platf
|
||||
rev = reg_readl(priv, REG_PHY_REVISION);
|
||||
priv->hw_params.gphy_rev = rev & PHY_REVISION_MASK;
|
||||
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
|
||||
--- a/drivers/net/dsa/bcm_sf2.c
|
||||
+++ b/drivers/net/dsa/bcm_sf2.c
|
||||
@@ -1304,6 +1304,12 @@ static int bcm_sf2_sw_probe(struct platf
|
||||
@@ -1299,6 +1299,12 @@ static int bcm_sf2_sw_probe(struct platf
|
||||
priv->hw_params.core_rev >> 8, priv->hw_params.core_rev & 0xff,
|
||||
priv->irq0, priv->irq1);
|
||||
|
||||
|
@ -16,7 +16,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
|
||||
--- a/drivers/net/dsa/bcm_sf2.c
|
||||
+++ b/drivers/net/dsa/bcm_sf2.c
|
||||
@@ -592,10 +592,19 @@ static void bcm_sf2_sw_mac_config(struct
|
||||
@@ -587,10 +587,19 @@ static void bcm_sf2_sw_mac_config(struct
|
||||
struct bcm_sf2_priv *priv = bcm_sf2_to_priv(ds);
|
||||
u32 id_mode_dis = 0, port_mode;
|
||||
u32 reg, offset;
|
||||
@ -36,7 +36,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
if (priv->type == BCM4908_DEVICE_ID ||
|
||||
priv->type == BCM7445_DEVICE_ID)
|
||||
offset = CORE_STS_OVERRIDE_GMIIP_PORT(port);
|
||||
@@ -623,7 +632,7 @@ static void bcm_sf2_sw_mac_config(struct
|
||||
@@ -618,7 +627,7 @@ static void bcm_sf2_sw_mac_config(struct
|
||||
/* Clear id_mode_dis bit, and the existing port mode, let
|
||||
* RGMII_MODE_EN bet set by mac_link_{up,down}
|
||||
*/
|
||||
@ -45,7 +45,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
reg &= ~ID_MODE_DIS;
|
||||
reg &= ~(PORT_MODE_MASK << PORT_MODE_SHIFT);
|
||||
reg &= ~(RX_PAUSE_EN | TX_PAUSE_EN);
|
||||
@@ -638,7 +647,7 @@ static void bcm_sf2_sw_mac_config(struct
|
||||
@@ -633,7 +642,7 @@ static void bcm_sf2_sw_mac_config(struct
|
||||
reg |= RX_PAUSE_EN;
|
||||
}
|
||||
|
||||
@ -54,7 +54,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
|
||||
force_link:
|
||||
/* Force link settings detected from the PHY */
|
||||
@@ -664,6 +673,7 @@ static void bcm_sf2_sw_mac_link_set(stru
|
||||
@@ -659,6 +668,7 @@ static void bcm_sf2_sw_mac_link_set(stru
|
||||
phy_interface_t interface, bool link)
|
||||
{
|
||||
struct bcm_sf2_priv *priv = bcm_sf2_to_priv(ds);
|
||||
@ -62,7 +62,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
u32 reg;
|
||||
|
||||
if (!phy_interface_mode_is_rgmii(interface) &&
|
||||
@@ -671,13 +681,21 @@ static void bcm_sf2_sw_mac_link_set(stru
|
||||
@@ -666,13 +676,21 @@ static void bcm_sf2_sw_mac_link_set(stru
|
||||
interface != PHY_INTERFACE_MODE_REVMII)
|
||||
return;
|
||||
|
||||
@ -86,7 +86,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
}
|
||||
|
||||
static void bcm_sf2_sw_mac_link_down(struct dsa_switch *ds, int port,
|
||||
@@ -1051,9 +1069,7 @@ static const u16 bcm_sf2_4908_reg_offset
|
||||
@@ -1046,9 +1064,7 @@ static const u16 bcm_sf2_4908_reg_offset
|
||||
[REG_PHY_REVISION] = 0x14,
|
||||
[REG_SPHY_CNTRL] = 0x24,
|
||||
[REG_CROSSBAR] = 0xc8,
|
||||
|
@ -134,4 +134,4 @@ it on BCM4708 family.
|
||||
+#define XHCI_FAKE_DOORBELL BIT_ULL(36)
|
||||
#define XHCI_SKIP_PHY_INIT BIT_ULL(37)
|
||||
#define XHCI_DISABLE_SPARSE BIT_ULL(38)
|
||||
|
||||
#define XHCI_NO_SOFT_RETRY BIT_ULL(40)
|
||||
|
@ -24,7 +24,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
|
||||
#include <linux/workqueue.h>
|
||||
#include <linux/mdio.h>
|
||||
#include <linux/io.h>
|
||||
@@ -842,6 +843,9 @@ void phy_stop(struct phy_device *phydev)
|
||||
@@ -843,6 +844,9 @@ void phy_stop(struct phy_device *phydev)
|
||||
|
||||
mutex_lock(&phydev->lock);
|
||||
|
||||
@ -34,7 +34,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
|
||||
phydev->state = PHY_HALTED;
|
||||
|
||||
mutex_unlock(&phydev->lock);
|
||||
@@ -904,6 +908,9 @@ void phy_state_machine(struct work_struc
|
||||
@@ -905,6 +909,9 @@ void phy_state_machine(struct work_struc
|
||||
|
||||
old_state = phydev->state;
|
||||
|
||||
|
@ -14,7 +14,7 @@ Signed-off-by: Poonam Aggrwal <poonam.aggrwal@nxp.com>
|
||||
|
||||
--- a/arch/arm64/mm/init.c
|
||||
+++ b/arch/arm64/mm/init.c
|
||||
@@ -406,6 +406,8 @@ void __init arm64_memblock_init(void)
|
||||
@@ -418,6 +418,8 @@ void __init arm64_memblock_init(void)
|
||||
initrd_end = initrd_start + phys_initrd_size;
|
||||
}
|
||||
|
||||
@ -23,7 +23,7 @@ Signed-off-by: Poonam Aggrwal <poonam.aggrwal@nxp.com>
|
||||
early_init_fdt_scan_reserved_mem();
|
||||
|
||||
/* 4GB maximum for 32-bit only capable devices */
|
||||
@@ -416,8 +418,6 @@ void __init arm64_memblock_init(void)
|
||||
@@ -428,8 +430,6 @@ void __init arm64_memblock_init(void)
|
||||
|
||||
reserve_crashkernel();
|
||||
|
||||
|
@ -57,7 +57,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
fsl-enetc-mdio-y := enetc_pci_mdio.o enetc_mdio.o
|
||||
--- a/drivers/net/ethernet/freescale/enetc/enetc.c
|
||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc.c
|
||||
@@ -1427,8 +1427,7 @@ int enetc_close(struct net_device *ndev)
|
||||
@@ -1422,8 +1422,7 @@ int enetc_close(struct net_device *ndev)
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -67,7 +67,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
{
|
||||
struct enetc_ndev_priv *priv = netdev_priv(ndev);
|
||||
struct tc_mqprio_qopt *mqprio = type_data;
|
||||
@@ -1436,9 +1435,6 @@ int enetc_setup_tc(struct net_device *nd
|
||||
@@ -1431,9 +1430,6 @@ int enetc_setup_tc(struct net_device *nd
|
||||
u8 num_tc;
|
||||
int i;
|
||||
|
||||
@ -77,7 +77,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
mqprio->hw = TC_MQPRIO_HW_OFFLOAD_TCS;
|
||||
num_tc = mqprio->num_tc;
|
||||
|
||||
@@ -1483,6 +1479,19 @@ int enetc_setup_tc(struct net_device *nd
|
||||
@@ -1478,6 +1474,19 @@ int enetc_setup_tc(struct net_device *nd
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -99,7 +99,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
struct enetc_ndev_priv *priv = netdev_priv(ndev);
|
||||
--- a/drivers/net/ethernet/freescale/enetc/enetc.h
|
||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc.h
|
||||
@@ -244,3 +244,10 @@ int enetc_set_fs_entry(struct enetc_si *
|
||||
@@ -249,3 +249,10 @@ int enetc_set_fs_entry(struct enetc_si *
|
||||
void enetc_set_rss_key(struct enetc_hw *hw, const u8 *bytes);
|
||||
int enetc_get_rss_table(struct enetc_si *si, u32 *table, int count);
|
||||
int enetc_set_rss_table(struct enetc_si *si, const u32 *table, int count);
|
||||
|
@ -42,7 +42,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
}
|
||||
|
||||
static int enetc_dma_alloc_bdr(struct enetc_bdr *r, size_t bd_size)
|
||||
@@ -1314,8 +1319,12 @@ static void enetc_disable_interrupts(str
|
||||
@@ -1309,8 +1314,12 @@ static void enetc_disable_interrupts(str
|
||||
|
||||
static void adjust_link(struct net_device *ndev)
|
||||
{
|
||||
@ -91,7 +91,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
struct enetc_bdr *tx_ring[16];
|
||||
struct enetc_bdr *rx_ring[16];
|
||||
|
||||
@@ -248,6 +254,8 @@ int enetc_send_cmd(struct enetc_si *si,
|
||||
@@ -253,6 +259,8 @@ int enetc_send_cmd(struct enetc_si *si,
|
||||
|
||||
#ifdef CONFIG_FSL_ENETC_QOS
|
||||
int enetc_setup_tc_taprio(struct net_device *ndev, void *type_data);
|
||||
|
@ -79,8 +79,8 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
||||
+}
|
||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||
@@ -852,6 +852,61 @@ static int enetc_init_port_rss_memory(st
|
||||
return err;
|
||||
@@ -872,6 +872,61 @@ static void enetc_init_unused_port(struc
|
||||
enetc_free_cbdr(dev, &si->cbd_ring);
|
||||
}
|
||||
|
||||
+static void enetc_configure_sgmii(struct mii_bus *imdio)
|
||||
@ -141,7 +141,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
||||
static int enetc_pf_probe(struct pci_dev *pdev,
|
||||
const struct pci_device_id *ent)
|
||||
{
|
||||
@@ -928,6 +983,10 @@ static int enetc_pf_probe(struct pci_dev
|
||||
@@ -956,6 +1011,10 @@ static int enetc_pf_probe(struct pci_dev
|
||||
if (err)
|
||||
dev_warn(&pdev->dev, "Fallback to PHY-less operation\n");
|
||||
|
||||
|
@ -125,7 +125,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
||||
}
|
||||
|
||||
/* Initialize the entire shared memory for the flow steering entries
|
||||
@@ -933,6 +936,10 @@ static int enetc_pf_probe(struct pci_dev
|
||||
@@ -955,6 +958,10 @@ static int enetc_pf_probe(struct pci_dev
|
||||
pf->si = si;
|
||||
pf->total_vfs = pci_sriov_get_totalvfs(pdev);
|
||||
|
||||
@ -136,7 +136,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
||||
enetc_configure_port(pf);
|
||||
|
||||
enetc_get_si_caps(si);
|
||||
@@ -947,6 +954,8 @@ static int enetc_pf_probe(struct pci_dev
|
||||
@@ -969,6 +976,8 @@ static int enetc_pf_probe(struct pci_dev
|
||||
enetc_pf_netdev_setup(si, ndev, &enetc_ndev_ops);
|
||||
|
||||
priv = netdev_priv(ndev);
|
||||
@ -145,7 +145,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
||||
|
||||
enetc_init_si_rings_params(priv);
|
||||
|
||||
@@ -974,10 +983,6 @@ static int enetc_pf_probe(struct pci_dev
|
||||
@@ -1002,10 +1011,6 @@ static int enetc_pf_probe(struct pci_dev
|
||||
goto err_alloc_msix;
|
||||
}
|
||||
|
||||
@ -156,23 +156,23 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
||||
err = enetc_configure_serdes(priv);
|
||||
if (err)
|
||||
dev_warn(&pdev->dev, "Attempted serdes config but failed\n");
|
||||
@@ -995,7 +1000,6 @@ static int enetc_pf_probe(struct pci_dev
|
||||
@@ -1023,7 +1028,6 @@ static int enetc_pf_probe(struct pci_dev
|
||||
|
||||
err_reg_netdev:
|
||||
enetc_mdio_remove(pf);
|
||||
- enetc_of_put_phy(priv);
|
||||
enetc_free_msix(priv);
|
||||
err_config_si:
|
||||
err_init_port_rss:
|
||||
err_init_port_rfs:
|
||||
@@ -1005,6 +1009,7 @@ err_alloc_si_res:
|
||||
@@ -1034,6 +1038,7 @@ err_alloc_si_res:
|
||||
si->ndev = NULL;
|
||||
free_netdev(ndev);
|
||||
err_alloc_netdev:
|
||||
+ enetc_of_put_phy(pf);
|
||||
err_device_disabled:
|
||||
err_map_pf_space:
|
||||
enetc_pci_remove(pdev);
|
||||
|
||||
@@ -1027,7 +1032,7 @@ static void enetc_pf_remove(struct pci_d
|
||||
@@ -1057,7 +1062,7 @@ static void enetc_pf_remove(struct pci_d
|
||||
unregister_netdev(si->ndev);
|
||||
|
||||
enetc_mdio_remove(pf);
|
||||
|
@ -23,7 +23,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
|
||||
enetc_port_wr(hw, ENETC_PM0_IF_MODE, ENETC_PM0_IFM_XGMII);
|
||||
}
|
||||
|
||||
@@ -889,7 +890,8 @@ static int enetc_configure_serdes(struct
|
||||
@@ -909,7 +910,8 @@ static int enetc_configure_serdes(struct
|
||||
int err;
|
||||
|
||||
if (priv->if_mode != PHY_INTERFACE_MODE_SGMII &&
|
||||
@ -33,7 +33,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
|
||||
return 0;
|
||||
|
||||
err = enetc_imdio_init(pf);
|
||||
@@ -899,7 +901,8 @@ static int enetc_configure_serdes(struct
|
||||
@@ -919,7 +921,8 @@ static int enetc_configure_serdes(struct
|
||||
if (priv->if_mode == PHY_INTERFACE_MODE_SGMII)
|
||||
enetc_configure_sgmii(pf->imdio);
|
||||
|
||||
|
@ -397,7 +397,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
|
||||
#define enetc_mdio_rd(mdio_priv, off) \
|
||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||
@@ -1046,6 +1046,9 @@ static void enetc_pf_remove(struct pci_d
|
||||
@@ -1076,6 +1076,9 @@ static void enetc_pf_remove(struct pci_d
|
||||
enetc_pci_remove(pdev);
|
||||
}
|
||||
|
||||
|
@ -371,7 +371,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
||||
#define enetc_rd(hw, off) enetc_rd_reg((hw)->reg + (off))
|
||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||
@@ -1046,8 +1046,9 @@ static void enetc_pf_remove(struct pci_d
|
||||
@@ -1076,8 +1076,9 @@ static void enetc_pf_remove(struct pci_d
|
||||
enetc_pci_remove(pdev);
|
||||
}
|
||||
|
||||
|
4
target/linux/layerscape/patches-5.4/701-net-0237-enetc-Remove-mdio-bus-on-PF-probe-error-path.patch
4
target/linux/layerscape/patches-5.4/701-net-0237-enetc-Remove-mdio-bus-on-PF-probe-error-path.patch
@ -48,11 +48,11 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
||||
|
||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||
@@ -1012,6 +1012,7 @@ err_alloc_si_res:
|
||||
@@ -1041,6 +1041,7 @@ err_alloc_si_res:
|
||||
si->ndev = NULL;
|
||||
free_netdev(ndev);
|
||||
err_alloc_netdev:
|
||||
+ enetc_mdio_remove(pf);
|
||||
enetc_of_put_phy(pf);
|
||||
err_device_disabled:
|
||||
err_map_pf_space:
|
||||
enetc_pci_remove(pdev);
|
||||
|
@ -47,7 +47,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
+ taprio(802.1Qbv) and Credit Based Shaper(802.1Qbu).
|
||||
--- a/drivers/net/ethernet/freescale/enetc/enetc.c
|
||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc.c
|
||||
@@ -1524,6 +1524,8 @@ int enetc_setup_tc(struct net_device *nd
|
||||
@@ -1519,6 +1519,8 @@ int enetc_setup_tc(struct net_device *nd
|
||||
return enetc_setup_tc_mqprio(ndev, type_data);
|
||||
case TC_SETUP_QDISC_TAPRIO:
|
||||
return enetc_setup_tc_taprio(ndev, type_data);
|
||||
@ -58,7 +58,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
}
|
||||
--- a/drivers/net/ethernet/freescale/enetc/enetc.h
|
||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc.h
|
||||
@@ -255,7 +255,9 @@ int enetc_send_cmd(struct enetc_si *si,
|
||||
@@ -260,7 +260,9 @@ int enetc_send_cmd(struct enetc_si *si,
|
||||
#ifdef CONFIG_FSL_ENETC_QOS
|
||||
int enetc_setup_tc_taprio(struct net_device *ndev, void *type_data);
|
||||
void enetc_sched_speed_set(struct net_device *ndev);
|
||||
|
@ -179,7 +179,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
|
||||
};
|
||||
|
||||
struct enetc_ndev_priv {
|
||||
@@ -261,3 +292,10 @@ int enetc_setup_tc_cbs(struct net_device
|
||||
@@ -266,3 +297,10 @@ int enetc_setup_tc_cbs(struct net_device
|
||||
#define enetc_sched_speed_set(ndev) (void)0
|
||||
#define enetc_setup_tc_cbs(ndev, type_data) -EOPNOTSUPP
|
||||
#endif
|
||||
@ -839,7 +839,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
|
||||
/* pick up primary MAC address from SI */
|
||||
enetc_get_primary_mac_addr(&si->hw, ndev->dev_addr);
|
||||
}
|
||||
@@ -999,6 +1006,8 @@ static int enetc_pf_probe(struct pci_dev
|
||||
@@ -1027,6 +1034,8 @@ static int enetc_pf_probe(struct pci_dev
|
||||
netif_info(priv, probe, ndev, "%s v%s\n",
|
||||
enetc_drv_name, enetc_drv_ver);
|
||||
|
||||
@ -848,7 +848,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
|
||||
return 0;
|
||||
|
||||
err_reg_netdev:
|
||||
@@ -1033,6 +1042,8 @@ static void enetc_pf_remove(struct pci_d
|
||||
@@ -1063,6 +1072,8 @@ static void enetc_pf_remove(struct pci_d
|
||||
netif_info(priv, drv, si->ndev, "%s v%s remove\n",
|
||||
enetc_drv_name, enetc_drv_ver);
|
||||
|
||||
|
4
target/linux/layerscape/patches-5.4/701-net-0342-LF-376-enetc-disable-EEE-autoneg-by-default.patch
4
target/linux/layerscape/patches-5.4/701-net-0342-LF-376-enetc-disable-EEE-autoneg-by-default.patch
@ -17,7 +17,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
|
||||
|
||||
--- a/drivers/net/ethernet/freescale/enetc/enetc.c
|
||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc.c
|
||||
@@ -1369,6 +1369,7 @@ static int enetc_phy_connect(struct net_
|
||||
@@ -1364,6 +1364,7 @@ static int enetc_phy_connect(struct net_
|
||||
{
|
||||
struct enetc_ndev_priv *priv = netdev_priv(ndev);
|
||||
struct phy_device *phydev;
|
||||
@ -25,7 +25,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
|
||||
|
||||
if (!priv->phy_node)
|
||||
return 0; /* phy-less mode */
|
||||
@@ -1382,6 +1383,10 @@ static int enetc_phy_connect(struct net_
|
||||
@@ -1377,6 +1378,10 @@ static int enetc_phy_connect(struct net_
|
||||
|
||||
phy_attached_info(phydev);
|
||||
|
||||
|
@ -344,7 +344,7 @@ MDIO erratum.
|
||||
static int enetc_of_get_phy(struct enetc_pf *pf)
|
||||
{
|
||||
struct device *dev = &pf->si->pdev->dev;
|
||||
@@ -891,6 +938,30 @@ static void enetc_configure_sxgmii(struc
|
||||
@@ -911,6 +958,30 @@ static void enetc_configure_sxgmii(struc
|
||||
ENETC_PCS_CR_LANE_RESET | ENETC_PCS_CR_RESET_AN);
|
||||
}
|
||||
|
||||
|
2
target/linux/layerscape/patches-5.4/701-net-0398-enetc-add-ioctl-support-for-PHY-related-ops.patch
2
target/linux/layerscape/patches-5.4/701-net-0398-enetc-add-ioctl-support-for-PHY-related-ops.patch
@ -16,7 +16,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
--- a/drivers/net/ethernet/freescale/enetc/enetc.c
|
||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc.c
|
||||
@@ -1661,7 +1661,10 @@ int enetc_ioctl(struct net_device *ndev,
|
||||
@@ -1656,7 +1656,10 @@ int enetc_ioctl(struct net_device *ndev,
|
||||
if (cmd == SIOCGHWTSTAMP)
|
||||
return enetc_hwtstamp_get(ndev, rq);
|
||||
#endif
|
||||
|
@ -194,7 +194,7 @@ This reverts commit cf9441adb1a35506d7606866c382b9d8614169b5.
|
||||
dev_name(&pdev->dev), spdif_priv);
|
||||
--- a/sound/soc/fsl/fsl_ssi.c
|
||||
+++ b/sound/soc/fsl/fsl_ssi.c
|
||||
@@ -1515,8 +1515,10 @@ static int fsl_ssi_probe(struct platform
|
||||
@@ -1517,8 +1517,10 @@ static int fsl_ssi_probe(struct platform
|
||||
}
|
||||
|
||||
ssi->irq = platform_get_irq(pdev, 0);
|
||||
|
@ -17,7 +17,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
|
||||
--- a/drivers/net/can/flexcan.c
|
||||
+++ b/drivers/net/can/flexcan.c
|
||||
@@ -1573,7 +1573,6 @@ static int flexcan_probe(struct platform
|
||||
@@ -1579,7 +1579,6 @@ static int flexcan_probe(struct platform
|
||||
struct net_device *dev;
|
||||
struct flexcan_priv *priv;
|
||||
struct regulator *reg_xceiver;
|
||||
@ -25,7 +25,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
struct clk *clk_ipg = NULL, *clk_per = NULL;
|
||||
struct flexcan_regs __iomem *regs;
|
||||
int err, irq;
|
||||
@@ -1608,12 +1607,11 @@ static int flexcan_probe(struct platform
|
||||
@@ -1614,12 +1613,11 @@ static int flexcan_probe(struct platform
|
||||
clock_freq = clk_get_rate(clk_per);
|
||||
}
|
||||
|
||||
|
@ -50,7 +50,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
netif_wake_queue(dev);
|
||||
}
|
||||
|
||||
@@ -1321,7 +1321,7 @@ static int flexcan_open(struct net_devic
|
||||
@@ -1323,7 +1323,7 @@ static int flexcan_open(struct net_devic
|
||||
priv->tx_mb = flexcan_get_mb(priv, priv->tx_mb_idx);
|
||||
|
||||
priv->reg_imask1_default = 0;
|
||||
|
@ -61,7 +61,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
|
||||
return (u64)iflag2 << 32 | iflag1;
|
||||
}
|
||||
@@ -1225,8 +1225,8 @@ static int flexcan_chip_start(struct net
|
||||
@@ -1227,8 +1227,8 @@ static int flexcan_chip_start(struct net
|
||||
/* enable interrupts atomically */
|
||||
disable_irq(dev->irq);
|
||||
priv->write(priv->reg_ctrl_default, ®s->ctrl);
|
||||
@ -72,7 +72,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
enable_irq(dev->irq);
|
||||
|
||||
/* print chip status */
|
||||
@@ -1320,8 +1320,8 @@ static int flexcan_open(struct net_devic
|
||||
@@ -1322,8 +1322,8 @@ static int flexcan_open(struct net_devic
|
||||
priv->tx_mb_idx = priv->mb_count - 1;
|
||||
priv->tx_mb = flexcan_get_mb(priv, priv->tx_mb_idx);
|
||||
|
||||
@ -83,7 +83,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
|
||||
priv->offload.mailbox_read = flexcan_mailbox_read;
|
||||
|
||||
@@ -1333,12 +1333,12 @@ static int flexcan_open(struct net_devic
|
||||
@@ -1335,12 +1335,12 @@ static int flexcan_open(struct net_devic
|
||||
|
||||
imask = GENMASK_ULL(priv->offload.mb_last,
|
||||
priv->offload.mb_first);
|
||||
|
@ -34,7 +34,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
iflag1 = priv->read(®s->iflag1) & priv->rx_mask1;
|
||||
|
||||
return (u64)iflag2 << 32 | iflag1;
|
||||
@@ -1226,7 +1225,7 @@ static int flexcan_chip_start(struct net
|
||||
@@ -1228,7 +1227,7 @@ static int flexcan_chip_start(struct net
|
||||
disable_irq(dev->irq);
|
||||
priv->write(priv->reg_ctrl_default, ®s->ctrl);
|
||||
priv->write(priv->rx_mask1, ®s->imask1);
|
||||
@ -43,7 +43,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
enable_irq(dev->irq);
|
||||
|
||||
/* print chip status */
|
||||
@@ -1320,9 +1319,6 @@ static int flexcan_open(struct net_devic
|
||||
@@ -1322,9 +1321,6 @@ static int flexcan_open(struct net_devic
|
||||
priv->tx_mb_idx = priv->mb_count - 1;
|
||||
priv->tx_mb = flexcan_get_mb(priv, priv->tx_mb_idx);
|
||||
|
||||
@ -53,7 +53,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
priv->offload.mailbox_read = flexcan_mailbox_read;
|
||||
|
||||
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) {
|
||||
@@ -1333,12 +1329,12 @@ static int flexcan_open(struct net_devic
|
||||
@@ -1335,12 +1331,12 @@ static int flexcan_open(struct net_devic
|
||||
|
||||
imask = GENMASK_ULL(priv->offload.mb_last,
|
||||
priv->offload.mb_first);
|
||||
|
@ -70,7 +70,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
int err, i;
|
||||
struct flexcan_mb __iomem *mb;
|
||||
|
||||
@@ -1224,8 +1224,9 @@ static int flexcan_chip_start(struct net
|
||||
@@ -1226,8 +1226,9 @@ static int flexcan_chip_start(struct net
|
||||
/* enable interrupts atomically */
|
||||
disable_irq(dev->irq);
|
||||
priv->write(priv->reg_ctrl_default, ®s->ctrl);
|
||||
@ -82,7 +82,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
enable_irq(dev->irq);
|
||||
|
||||
/* print chip status */
|
||||
@@ -1322,19 +1323,14 @@ static int flexcan_open(struct net_devic
|
||||
@@ -1324,19 +1325,14 @@ static int flexcan_open(struct net_devic
|
||||
priv->offload.mailbox_read = flexcan_mailbox_read;
|
||||
|
||||
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) {
|
||||
|
@ -71,7 +71,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
netif_wake_queue(dev);
|
||||
}
|
||||
|
||||
@@ -1224,7 +1225,7 @@ static int flexcan_chip_start(struct net
|
||||
@@ -1226,7 +1227,7 @@ static int flexcan_chip_start(struct net
|
||||
/* enable interrupts atomically */
|
||||
disable_irq(dev->irq);
|
||||
priv->write(priv->reg_ctrl_default, ®s->ctrl);
|
||||
@ -80,7 +80,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
priv->write(upper_32_bits(reg_imask), ®s->imask2);
|
||||
priv->write(lower_32_bits(reg_imask), ®s->imask1);
|
||||
enable_irq(dev->irq);
|
||||
@@ -1319,6 +1320,7 @@ static int flexcan_open(struct net_devic
|
||||
@@ -1321,6 +1322,7 @@ static int flexcan_open(struct net_devic
|
||||
flexcan_get_mb(priv, FLEXCAN_TX_MB_RESERVED_OFF_FIFO);
|
||||
priv->tx_mb_idx = priv->mb_count - 1;
|
||||
priv->tx_mb = flexcan_get_mb(priv, priv->tx_mb_idx);
|
||||
|
@ -324,7 +324,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
u64 reg_imask;
|
||||
int err, i;
|
||||
struct flexcan_mb __iomem *mb;
|
||||
@@ -1164,6 +1312,26 @@ static int flexcan_chip_start(struct net
|
||||
@@ -1166,6 +1314,26 @@ static int flexcan_chip_start(struct net
|
||||
netdev_dbg(dev, "%s: writing ctrl=0x%08x", __func__, reg_ctrl);
|
||||
priv->write(reg_ctrl, ®s->ctrl);
|
||||
|
||||
@ -351,7 +351,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
if ((priv->devtype_data->quirks & FLEXCAN_QUIRK_ENABLE_EACEN_RRS)) {
|
||||
reg_ctrl2 = priv->read(®s->ctrl2);
|
||||
reg_ctrl2 |= FLEXCAN_CTRL2_EACEN | FLEXCAN_CTRL2_RRS;
|
||||
@@ -1304,6 +1472,12 @@ static int flexcan_open(struct net_devic
|
||||
@@ -1306,6 +1474,12 @@ static int flexcan_open(struct net_devic
|
||||
struct flexcan_priv *priv = netdev_priv(dev);
|
||||
int err;
|
||||
|
||||
@ -364,7 +364,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
err = pm_runtime_get_sync(priv->dev);
|
||||
if (err < 0) {
|
||||
pm_runtime_put_noidle(priv->dev);
|
||||
@@ -1322,7 +1496,10 @@ static int flexcan_open(struct net_devic
|
||||
@@ -1324,7 +1498,10 @@ static int flexcan_open(struct net_devic
|
||||
if (err)
|
||||
goto out_transceiver_disable;
|
||||
|
||||
@ -376,7 +376,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
priv->mb_count = (sizeof(priv->regs->mb[0]) / priv->mb_size) +
|
||||
(sizeof(priv->regs->mb[1]) / priv->mb_size);
|
||||
|
||||
@@ -1670,6 +1847,18 @@ static int flexcan_probe(struct platform
|
||||
@@ -1676,6 +1853,18 @@ static int flexcan_probe(struct platform
|
||||
priv->devtype_data = devtype_data;
|
||||
priv->reg_xceiver = reg_xceiver;
|
||||
|
||||
|
@ -31,7 +31,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
|
||||
/* FLEXCAN memory error control register (MECR) bits */
|
||||
#define FLEXCAN_MECR_ECRWRDIS BIT(31)
|
||||
@@ -1324,6 +1325,7 @@ static int flexcan_chip_start(struct net
|
||||
@@ -1326,6 +1327,7 @@ static int flexcan_chip_start(struct net
|
||||
reg_fdctrl = priv->read(®s->fdctrl) & ~FLEXCAN_FDCTRL_FDRATE;
|
||||
reg_fdctrl &= ~(FLEXCAN_FDCTRL_MBDSR1(0x3) | FLEXCAN_FDCTRL_MBDSR0(0x3));
|
||||
reg_mcr = priv->read(®s->mcr) & ~FLEXCAN_MCR_FDEN;
|
||||
@ -39,7 +39,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
|
||||
/* support BRS when set CAN FD mode
|
||||
* 64 bytes payload per MB and 7 MBs per RAM block by default
|
||||
@@ -1333,10 +1335,14 @@ static int flexcan_chip_start(struct net
|
||||
@@ -1335,10 +1337,14 @@ static int flexcan_chip_start(struct net
|
||||
reg_fdctrl |= FLEXCAN_FDCTRL_FDRATE;
|
||||
reg_fdctrl |= FLEXCAN_FDCTRL_MBDSR1(0x3) | FLEXCAN_FDCTRL_MBDSR0(0x3);
|
||||
reg_mcr |= FLEXCAN_MCR_FDEN;
|
||||
@ -54,7 +54,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
}
|
||||
|
||||
if ((priv->devtype_data->quirks & FLEXCAN_QUIRK_ENABLE_EACEN_RRS)) {
|
||||
@@ -1856,7 +1862,7 @@ static int flexcan_probe(struct platform
|
||||
@@ -1862,7 +1868,7 @@ static int flexcan_probe(struct platform
|
||||
|
||||
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_TIMESTAMP_SUPPORT_FD) {
|
||||
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) {
|
||||
|
@ -60,7 +60,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
if (bt->brp != dbt->brp)
|
||||
netdev_warn(dev, "Warning!! data brp = %d and brp = %d don't match.\n"
|
||||
"flexcan may not work. consider using different bitrate or data bitrate\n",
|
||||
@@ -1323,6 +1339,7 @@ static int flexcan_chip_start(struct net
|
||||
@@ -1325,6 +1341,7 @@ static int flexcan_chip_start(struct net
|
||||
/* FDCTRL */
|
||||
if (priv->can.ctrlmode_supported & CAN_CTRLMODE_FD) {
|
||||
reg_fdctrl = priv->read(®s->fdctrl) & ~FLEXCAN_FDCTRL_FDRATE;
|
||||
|
@ -52,7 +52,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
static const struct flexcan_devtype_data fsl_vf610_devtype_data = {
|
||||
.quirks = FLEXCAN_QUIRK_DISABLE_RXFG | FLEXCAN_QUIRK_ENABLE_EACEN_RRS |
|
||||
FLEXCAN_QUIRK_DISABLE_MECR | FLEXCAN_QUIRK_USE_OFF_TIMESTAMP |
|
||||
@@ -1763,6 +1770,7 @@ out_put_node:
|
||||
@@ -1769,6 +1776,7 @@ out_put_node:
|
||||
}
|
||||
|
||||
static const struct of_device_id flexcan_of_match[] = {
|
||||
|
@ -35,7 +35,7 @@ Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
static const struct flexcan_devtype_data fsl_ls1021a_r2_devtype_data = {
|
||||
.quirks = FLEXCAN_QUIRK_DISABLE_RXFG | FLEXCAN_QUIRK_ENABLE_EACEN_RRS |
|
||||
FLEXCAN_QUIRK_BROKEN_PERR_STATE | FLEXCAN_QUIRK_USE_OFF_TIMESTAMP,
|
||||
@@ -1779,6 +1786,7 @@ static const struct of_device_id flexcan
|
||||
@@ -1785,6 +1792,7 @@ static const struct of_device_id flexcan
|
||||
{ .compatible = "fsl,p1010-flexcan", .data = &fsl_p1010_devtype_data, },
|
||||
{ .compatible = "fsl,vf610-flexcan", .data = &fsl_vf610_devtype_data, },
|
||||
{ .compatible = "fsl,ls1021ar2-flexcan", .data = &fsl_ls1021a_r2_devtype_data, },
|
||||
|
4
target/linux/layerscape/patches-5.4/802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch
4
target/linux/layerscape/patches-5.4/802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch
@ -28,7 +28,7 @@ Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
|
||||
#include <linux/regmap.h>
|
||||
|
||||
#define DRV_NAME "flexcan"
|
||||
@@ -1959,9 +1960,7 @@ static int __maybe_unused flexcan_suspen
|
||||
@@ -1965,9 +1966,7 @@ static int __maybe_unused flexcan_suspen
|
||||
if (err)
|
||||
return err;
|
||||
} else {
|
||||
@ -39,7 +39,7 @@ Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
|
||||
}
|
||||
netif_stop_queue(dev);
|
||||
netif_device_detach(dev);
|
||||
@@ -1987,7 +1986,9 @@ static int __maybe_unused flexcan_resume
|
||||
@@ -1993,7 +1992,9 @@ static int __maybe_unused flexcan_resume
|
||||
if (err)
|
||||
return err;
|
||||
} else {
|
||||
|
6
target/linux/layerscape/patches-5.4/802-can-0027-can-flexcan-add-CAN-wakeup-function-for-i.MX8.patch
6
target/linux/layerscape/patches-5.4/802-can-0027-can-flexcan-add-CAN-wakeup-function-for-i.MX8.patch
@ -126,7 +126,7 @@ Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
|
||||
|
||||
|
||||
reg_mcr = priv->read(®s->mcr);
|
||||
@@ -1770,11 +1814,6 @@ static int flexcan_setup_stop_mode(struc
|
||||
@@ -1776,11 +1820,6 @@ static int flexcan_setup_stop_mode(struc
|
||||
gpr_np->full_name, priv->stm.req_gpr, priv->stm.req_bit,
|
||||
priv->stm.ack_gpr, priv->stm.ack_bit);
|
||||
|
||||
@ -138,7 +138,7 @@ Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
|
||||
return 0;
|
||||
|
||||
out_put_node:
|
||||
@@ -1782,6 +1821,30 @@ out_put_node:
|
||||
@@ -1788,6 +1827,30 @@ out_put_node:
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -169,7 +169,7 @@ Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
|
||||
static const struct of_device_id flexcan_of_match[] = {
|
||||
{ .compatible = "fsl,imx8qm-flexcan", .data = &fsl_imx8qm_devtype_data, },
|
||||
{ .compatible = "fsl,imx6q-flexcan", .data = &fsl_imx6q_devtype_data, },
|
||||
@@ -1924,9 +1987,19 @@ static int flexcan_probe(struct platform
|
||||
@@ -1930,9 +1993,19 @@ static int flexcan_probe(struct platform
|
||||
devm_can_led_init(dev);
|
||||
|
||||
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_SETUP_STOP_MODE) {
|
||||
|
@ -36,7 +36,7 @@ Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
|
||||
static const struct can_bittiming_const flexcan_bittiming_const = {
|
||||
.name = DRV_NAME,
|
||||
.tseg1_min = 4,
|
||||
@@ -1856,6 +1861,8 @@ static const struct of_device_id flexcan
|
||||
@@ -1862,6 +1867,8 @@ static const struct of_device_id flexcan
|
||||
{ .compatible = "fsl,vf610-flexcan", .data = &fsl_vf610_devtype_data, },
|
||||
{ .compatible = "fsl,ls1021ar2-flexcan", .data = &fsl_ls1021a_r2_devtype_data, },
|
||||
{ .compatible = "fsl,lx2160ar1-flexcan", .data = &fsl_lx2160a_r1_devtype_data, },
|
||||
|
@ -64,7 +64,7 @@ Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
|
||||
|
||||
if (writable)
|
||||
pte = kvm_s2pte_mkwrite(pte);
|
||||
@@ -2362,7 +2364,7 @@ int kvm_arch_prepare_memory_region(struc
|
||||
@@ -2361,7 +2363,7 @@ int kvm_arch_prepare_memory_region(struc
|
||||
|
||||
ret = kvm_phys_addr_ioremap(kvm, gpa, pa,
|
||||
vm_end - vm_start,
|
||||
|
@ -105,7 +105,7 @@ Signed-off-by: Diana Craciun <diana.craciun@nxp.com>
|
||||
if (kvm_is_device_pfn(pfn)) {
|
||||
mem_type = PAGE_S2_DEVICE;
|
||||
flags |= KVM_S2PTE_FLAG_IS_IOMAP;
|
||||
@@ -2352,6 +2396,9 @@ int kvm_arch_prepare_memory_region(struc
|
||||
@@ -2351,6 +2395,9 @@ int kvm_arch_prepare_memory_region(struc
|
||||
gpa_t gpa = mem->guest_phys_addr +
|
||||
(vm_start - mem->userspace_addr);
|
||||
phys_addr_t pa;
|
||||
@ -115,7 +115,7 @@ Signed-off-by: Diana Craciun <diana.craciun@nxp.com>
|
||||
|
||||
pa = (phys_addr_t)vma->vm_pgoff << PAGE_SHIFT;
|
||||
pa += vm_start - vma->vm_start;
|
||||
@@ -2362,9 +2409,13 @@ int kvm_arch_prepare_memory_region(struc
|
||||
@@ -2361,9 +2408,13 @@ int kvm_arch_prepare_memory_region(struc
|
||||
goto out;
|
||||
}
|
||||
|
||||
|
@ -42,7 +42,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
retval = xhci_enter_test_mode(xhci, test_mode, wIndex,
|
||||
--- a/drivers/usb/host/xhci-ring.c
|
||||
+++ b/drivers/usb/host/xhci-ring.c
|
||||
@@ -3591,6 +3591,129 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
|
||||
@@ -3592,6 +3592,129 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -174,7 +174,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
* bursts that are required to move all packets in this TD. Only SuperSpeed
|
||||
--- a/drivers/usb/host/xhci.c
|
||||
+++ b/drivers/usb/host/xhci.c
|
||||
@@ -5364,6 +5364,7 @@ static const struct hc_driver xhci_hc_dr
|
||||
@@ -5372,6 +5372,7 @@ static const struct hc_driver xhci_hc_dr
|
||||
.disable_usb3_lpm_timeout = xhci_disable_usb3_lpm_timeout,
|
||||
.find_raw_port_number = xhci_find_raw_port_number,
|
||||
.clear_tt_buffer_complete = xhci_clear_tt_buffer_complete,
|
||||
@ -184,7 +184,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
void xhci_init_driver(struct hc_driver *drv,
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -2149,6 +2149,16 @@ int xhci_find_raw_port_number(struct usb
|
||||
@@ -2150,6 +2150,16 @@ int xhci_find_raw_port_number(struct usb
|
||||
struct xhci_hub *xhci_get_rhub(struct usb_hcd *hcd);
|
||||
|
||||
void xhci_hc_died(struct xhci_hcd *xhci);
|
||||
|
@ -39,4 +39,4 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
+#define XHCI_CDNS_HOST BIT_ULL(36)
|
||||
#define XHCI_SKIP_PHY_INIT BIT_ULL(37)
|
||||
#define XHCI_DISABLE_SPARSE BIT_ULL(38)
|
||||
|
||||
#define XHCI_NO_SOFT_RETRY BIT_ULL(40)
|
||||
|
@ -24,7 +24,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
|
||||
--- a/drivers/usb/host/xhci.c
|
||||
+++ b/drivers/usb/host/xhci.c
|
||||
@@ -5385,6 +5385,8 @@ void xhci_init_driver(struct hc_driver *
|
||||
@@ -5393,6 +5393,8 @@ void xhci_init_driver(struct hc_driver *
|
||||
drv->check_bandwidth = over->check_bandwidth;
|
||||
if (over->reset_bandwidth)
|
||||
drv->reset_bandwidth = over->reset_bandwidth;
|
||||
@ -35,7 +35,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
EXPORT_SYMBOL_GPL(xhci_init_driver);
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1915,6 +1915,7 @@ struct xhci_driver_overrides {
|
||||
@@ -1916,6 +1916,7 @@ struct xhci_driver_overrides {
|
||||
int (*start)(struct usb_hcd *hcd);
|
||||
int (*check_bandwidth)(struct usb_hcd *, struct usb_device *);
|
||||
void (*reset_bandwidth)(struct usb_hcd *, struct usb_device *);
|
||||
|
@ -12,7 +12,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
--- a/drivers/net/dsa/b53/b53_common.c
|
||||
+++ b/drivers/net/dsa/b53/b53_common.c
|
||||
@@ -1276,7 +1276,9 @@ EXPORT_SYMBOL(b53_phylink_mac_link_down)
|
||||
@@ -1291,7 +1291,9 @@ EXPORT_SYMBOL(b53_phylink_mac_link_down)
|
||||
void b53_phylink_mac_link_up(struct dsa_switch *ds, int port,
|
||||
unsigned int mode,
|
||||
phy_interface_t interface,
|
||||
@ -38,7 +38,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
const struct switchdev_obj_port_vlan *vlan);
|
||||
--- a/drivers/net/dsa/bcm_sf2.c
|
||||
+++ b/drivers/net/dsa/bcm_sf2.c
|
||||
@@ -639,7 +639,9 @@ static void bcm_sf2_sw_mac_link_down(str
|
||||
@@ -634,7 +634,9 @@ static void bcm_sf2_sw_mac_link_down(str
|
||||
static void bcm_sf2_sw_mac_link_up(struct dsa_switch *ds, int port,
|
||||
unsigned int mode,
|
||||
phy_interface_t interface,
|
||||
|
@ -11,7 +11,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
|
||||
--- a/drivers/net/phy/phy.c
|
||||
+++ b/drivers/net/phy/phy.c
|
||||
@@ -546,7 +546,10 @@ static int phy_check_link_status(struct
|
||||
@@ -547,7 +547,10 @@ static int phy_check_link_status(struct
|
||||
phy_link_up(phydev);
|
||||
} else if (!phydev->link && phydev->state != PHY_NOLINK) {
|
||||
phydev->state = PHY_NOLINK;
|
||||
@ -23,7 +23,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -926,7 +929,10 @@ void phy_state_machine(struct work_struc
|
||||
@@ -927,7 +930,10 @@ void phy_state_machine(struct work_struc
|
||||
case PHY_HALTED:
|
||||
if (phydev->link) {
|
||||
phydev->link = 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user