From 53ab9865c2b91bc6a239b2adee800dc52875b6bc Mon Sep 17 00:00:00 2001 From: David Bauer Date: Sun, 8 Dec 2019 21:44:23 +0100 Subject: ath79: add support for kernel 5.4 Signed-off-by: David Bauer [refreshed] Signed-off-by: Koen Vandeputte * Sync the patches with the changes done for kernel 4.19 * Use KERNEL_TESTING_PATCHVER * Refresh the configuration * Fix multiple compile bugs in the patches * Only add own ag71xx files for kernel 4.19 and use upstream version for 5.4. Signed-off-by: Hauke Mehrtens --- ...rypto-crypto4xx-reduce-memory-fragmentation.patch | 20 ++++++++------------ ...rypto4xx-use-GFP_KERNEL-for-big-allocations.patch | 13 ++++--------- .../patches-5.4/201-add-amcc-apollo3g-support.patch | 4 ++-- .../202-add-netgear-wndr4700-support.patch | 2 +- .../patches-5.4/301-fix-memory-map-wndr4700.patch | 2 +- ...add-firmware-loader-for-uPD720201-and-uPD72.patch | 12 ++++++------ .../802-usb-xhci-force-msi-renesas-xhci.patch | 10 +++++----- .../803-hwmon-tc654-add-detection-routine.patch | 6 +++--- .../804-hwmon-tc654-add-thermal_cooling-device.patch | 13 ++++--------- ...ootwrapper-force-gzip-as-mkimage-s-compress.patch | 5 ----- 10 files changed, 34 insertions(+), 53 deletions(-) (limited to 'target/linux/apm821xx/patches-5.4') diff --git a/target/linux/apm821xx/patches-5.4/111-crypto-crypto4xx-reduce-memory-fragmentation.patch b/target/linux/apm821xx/patches-5.4/111-crypto-crypto4xx-reduce-memory-fragmentation.patch index 72f8825cb7..4d23b8816a 100644 --- a/target/linux/apm821xx/patches-5.4/111-crypto-crypto4xx-reduce-memory-fragmentation.patch +++ b/target/linux/apm821xx/patches-5.4/111-crypto-crypto4xx-reduce-memory-fragmentation.patch @@ -28,11 +28,9 @@ Signed-off-by: Christian Lamparter drivers/crypto/amcc/crypto4xx_core.c | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) -diff --git a/drivers/crypto/amcc/crypto4xx_core.c b/drivers/crypto/amcc/crypto4xx_core.c -index 7d6b695c4ab3..3ce5f0a24cbc 100644 --- a/drivers/crypto/amcc/crypto4xx_core.c +++ b/drivers/crypto/amcc/crypto4xx_core.c -@@ -286,7 +286,8 @@ static u32 crypto4xx_build_gdr(struct crypto4xx_device *dev) +@@ -286,7 +286,8 @@ static u32 crypto4xx_build_gdr(struct cr static inline void crypto4xx_destroy_gdr(struct crypto4xx_device *dev) { @@ -42,7 +40,7 @@ index 7d6b695c4ab3..3ce5f0a24cbc 100644 sizeof(struct ce_gd) * PPC4XX_NUM_GD, dev->gdr, dev->gdr_pa); } -@@ -354,13 +355,6 @@ static u32 crypto4xx_build_sdr(struct crypto4xx_device *dev) +@@ -354,13 +355,6 @@ static u32 crypto4xx_build_sdr(struct cr { int i; @@ -56,7 +54,7 @@ index 7d6b695c4ab3..3ce5f0a24cbc 100644 dev->scatter_buffer_va = dma_alloc_coherent(dev->core_dev->device, PPC4XX_SD_BUFFER_SIZE * PPC4XX_NUM_SD, -@@ -368,6 +362,13 @@ static u32 crypto4xx_build_sdr(struct crypto4xx_device *dev) +@@ -368,6 +362,13 @@ static u32 crypto4xx_build_sdr(struct cr if (!dev->scatter_buffer_va) return -ENOMEM; @@ -70,7 +68,7 @@ index 7d6b695c4ab3..3ce5f0a24cbc 100644 for (i = 0; i < PPC4XX_NUM_SD; i++) { dev->sdr[i].ptr = dev->scatter_buffer_pa + PPC4XX_SD_BUFFER_SIZE * i; -@@ -1439,15 +1440,14 @@ static int crypto4xx_probe(struct platform_device *ofdev) +@@ -1439,16 +1440,15 @@ static int crypto4xx_probe(struct platfo spin_lock_init(&core_dev->lock); INIT_LIST_HEAD(&core_dev->dev->alg_list); ratelimit_default_init(&core_dev->dev->aead_ratelimit); @@ -83,14 +81,15 @@ index 7d6b695c4ab3..3ce5f0a24cbc 100644 + goto err_build_sdr; rc = crypto4xx_build_gdr(core_dev->dev); -- if (rc) + if (rc) - goto err_build_pdr; - - rc = crypto4xx_build_sdr(core_dev->dev); - if (rc) +- if (rc) goto err_build_sdr; -@@ -1493,7 +1493,6 @@ static int crypto4xx_probe(struct platform_device *ofdev) + /* Init tasklet for bottom half processing */ +@@ -1493,7 +1493,6 @@ err_iomap: err_build_sdr: crypto4xx_destroy_sdr(core_dev->dev); crypto4xx_destroy_gdr(core_dev->dev); @@ -98,6 +97,3 @@ index 7d6b695c4ab3..3ce5f0a24cbc 100644 crypto4xx_destroy_pdr(core_dev->dev); kfree(core_dev->dev); err_alloc_dev: --- -2.25.0.rc0 - diff --git a/target/linux/apm821xx/patches-5.4/112-crypto-crypto4xx-use-GFP_KERNEL-for-big-allocations.patch b/target/linux/apm821xx/patches-5.4/112-crypto-crypto4xx-use-GFP_KERNEL-for-big-allocations.patch index 4fc988c1ec..6668c3a91d 100644 --- a/target/linux/apm821xx/patches-5.4/112-crypto-crypto4xx-use-GFP_KERNEL-for-big-allocations.patch +++ b/target/linux/apm821xx/patches-5.4/112-crypto-crypto4xx-use-GFP_KERNEL-for-big-allocations.patch @@ -17,11 +17,9 @@ Signed-off-by: Christian Lamparter drivers/crypto/amcc/crypto4xx_core.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) -diff --git a/drivers/crypto/amcc/crypto4xx_core.c b/drivers/crypto/amcc/crypto4xx_core.c -index 3ce5f0a24cbc..981de43ea5e2 100644 --- a/drivers/crypto/amcc/crypto4xx_core.c +++ b/drivers/crypto/amcc/crypto4xx_core.c -@@ -169,7 +169,7 @@ static u32 crypto4xx_build_pdr(struct crypto4xx_device *dev) +@@ -169,7 +169,7 @@ static u32 crypto4xx_build_pdr(struct cr int i; dev->pdr = dma_alloc_coherent(dev->core_dev->device, sizeof(struct ce_pd) * PPC4XX_NUM_PD, @@ -30,7 +28,7 @@ index 3ce5f0a24cbc..981de43ea5e2 100644 if (!dev->pdr) return -ENOMEM; -@@ -185,13 +185,13 @@ static u32 crypto4xx_build_pdr(struct crypto4xx_device *dev) +@@ -185,13 +185,13 @@ static u32 crypto4xx_build_pdr(struct cr dev->shadow_sa_pool = dma_alloc_coherent(dev->core_dev->device, sizeof(union shadow_sa_buf) * PPC4XX_NUM_PD, &dev->shadow_sa_pool_pa, @@ -46,7 +44,7 @@ index 3ce5f0a24cbc..981de43ea5e2 100644 if (!dev->shadow_sr_pool) return -ENOMEM; for (i = 0; i < PPC4XX_NUM_PD; i++) { -@@ -277,7 +277,7 @@ static u32 crypto4xx_build_gdr(struct crypto4xx_device *dev) +@@ -277,7 +277,7 @@ static u32 crypto4xx_build_gdr(struct cr { dev->gdr = dma_alloc_coherent(dev->core_dev->device, sizeof(struct ce_gd) * PPC4XX_NUM_GD, @@ -55,7 +53,7 @@ index 3ce5f0a24cbc..981de43ea5e2 100644 if (!dev->gdr) return -ENOMEM; -@@ -358,14 +358,14 @@ static u32 crypto4xx_build_sdr(struct crypto4xx_device *dev) +@@ -358,14 +358,14 @@ static u32 crypto4xx_build_sdr(struct cr dev->scatter_buffer_va = dma_alloc_coherent(dev->core_dev->device, PPC4XX_SD_BUFFER_SIZE * PPC4XX_NUM_SD, @@ -72,6 +70,3 @@ index 3ce5f0a24cbc..981de43ea5e2 100644 if (!dev->sdr) return -ENOMEM; --- -2.25.0.rc0 - diff --git a/target/linux/apm821xx/patches-5.4/201-add-amcc-apollo3g-support.patch b/target/linux/apm821xx/patches-5.4/201-add-amcc-apollo3g-support.patch index 18f4c72de8..e188954094 100644 --- a/target/linux/apm821xx/patches-5.4/201-add-amcc-apollo3g-support.patch +++ b/target/linux/apm821xx/patches-5.4/201-add-amcc-apollo3g-support.patch @@ -1,6 +1,6 @@ --- a/arch/powerpc/platforms/44x/Kconfig +++ b/arch/powerpc/platforms/44x/Kconfig -@@ -131,6 +131,17 @@ config CANYONLANDS +@@ -121,6 +121,17 @@ config CANYONLANDS help This option enables support for the AMCC PPC460EX evaluation board. @@ -20,7 +20,7 @@ depends on 44x --- a/arch/powerpc/platforms/44x/ppc44x_simple.c +++ b/arch/powerpc/platforms/44x/ppc44x_simple.c -@@ -50,6 +50,7 @@ machine_device_initcall(ppc44x_simple, p +@@ -47,6 +47,7 @@ machine_device_initcall(ppc44x_simple, p * board.c file for it rather than adding it to this list. */ static char *board[] __initdata = { diff --git a/target/linux/apm821xx/patches-5.4/202-add-netgear-wndr4700-support.patch b/target/linux/apm821xx/patches-5.4/202-add-netgear-wndr4700-support.patch index 536a74ef00..b0619852b9 100644 --- a/target/linux/apm821xx/patches-5.4/202-add-netgear-wndr4700-support.patch +++ b/target/linux/apm821xx/patches-5.4/202-add-netgear-wndr4700-support.patch @@ -10,7 +10,7 @@ obj-$(CONFIG_WARP) += warp.o --- a/arch/powerpc/platforms/44x/Kconfig +++ b/arch/powerpc/platforms/44x/Kconfig -@@ -260,6 +260,19 @@ config ICON +@@ -243,6 +243,19 @@ config ICON help This option enables support for the AMCC PPC440SPe evaluation board. diff --git a/target/linux/apm821xx/patches-5.4/301-fix-memory-map-wndr4700.patch b/target/linux/apm821xx/patches-5.4/301-fix-memory-map-wndr4700.patch index 6eb04b2c25..9c0ed35cf1 100644 --- a/target/linux/apm821xx/patches-5.4/301-fix-memory-map-wndr4700.patch +++ b/target/linux/apm821xx/patches-5.4/301-fix-memory-map-wndr4700.patch @@ -1,6 +1,6 @@ --- a/arch/powerpc/platforms/4xx/pci.c +++ b/arch/powerpc/platforms/4xx/pci.c -@@ -1905,9 +1905,9 @@ static void __init ppc4xx_configure_pcie +@@ -1904,9 +1904,9 @@ static void __init ppc4xx_configure_pcie * if it works */ out_le32(mbase + PECFG_PIM0LAL, 0x00000000); diff --git a/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch b/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch index 0bc4b2c65b..0ccbc22f1c 100644 --- a/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch +++ b/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch @@ -48,7 +48,7 @@ Signed-off-by: Vinod Koul #include "xhci.h" #include "xhci-trace.h" -@@ -48,6 +50,44 @@ +@@ -56,6 +58,44 @@ #define PCI_DEVICE_ID_AMD_PROMONTORYA_1 0x43bc #define PCI_DEVICE_ID_ASMEDIA_1042A_XHCI 0x1142 @@ -93,7 +93,7 @@ Signed-off-by: Vinod Koul static const char hcd_name[] = "xhci_hcd"; static struct hc_driver __read_mostly xhci_pci_hc_driver; -@@ -262,6 +302,873 @@ static void xhci_pme_acpi_rtd3_enable(st +@@ -281,6 +321,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 /* called during probe() after chip reset completes */ static int xhci_pci_setup(struct usb_hcd *hcd) { -@@ -300,6 +1207,27 @@ static int xhci_pci_probe(struct pci_dev +@@ -319,6 +1226,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 driver = (struct hc_driver *)id->driver_data; /* Prevent runtime suspending between USB-2 and USB-3 initialization */ -@@ -361,6 +1289,16 @@ static void xhci_pci_remove(struct pci_d +@@ -383,6 +1311,16 @@ static void xhci_pci_remove(struct pci_d { struct xhci_hcd *xhci; @@ -1011,8 +1011,8 @@ Signed-off-by: Vinod Koul + xhci = hcd_to_xhci(pci_get_drvdata(dev)); xhci->xhc_state |= XHCI_STATE_REMOVING; - if (xhci->shared_hcd) { -@@ -484,6 +1422,11 @@ static int xhci_pci_resume(struct usb_hc + +@@ -510,6 +1448,11 @@ static int xhci_pci_resume(struct usb_hc if (pdev->vendor == PCI_VENDOR_ID_INTEL) usb_enable_intel_xhci_ports(pdev); diff --git a/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch b/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch index a745ea6f44..e095610f61 100644 --- a/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch +++ b/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch @@ -13,7 +13,7 @@ produce a noisy warning. --- a/drivers/usb/host/xhci-pci.c +++ b/drivers/usb/host/xhci-pci.c -@@ -215,6 +215,7 @@ static void xhci_pci_quirks(struct devic +@@ -272,6 +272,7 @@ static void xhci_pci_quirks(struct devic pdev->device == 0x0015) { xhci->quirks |= XHCI_RESET_ON_RESUME; xhci->quirks |= XHCI_ZERO_64B_REGS; @@ -23,7 +23,7 @@ produce a noisy warning. xhci->quirks |= XHCI_RESET_ON_RESUME; --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c -@@ -422,10 +422,14 @@ static int xhci_try_enable_msi(struct us +@@ -423,10 +423,14 @@ static int xhci_try_enable_msi(struct us free_irq(hcd->irq, hcd); hcd->irq = 0; @@ -43,9 +43,9 @@ produce a noisy warning. hcd->msi_enabled = 1; --- a/drivers/usb/host/xhci.h +++ b/drivers/usb/host/xhci.h -@@ -1876,6 +1876,7 @@ struct xhci_hcd { - /* support xHCI 0.96 spec USB2 software LPM */ - unsigned sw_lpm_support:1; +@@ -1874,6 +1874,7 @@ struct xhci_hcd { + struct xhci_hub usb2_rhub; + struct xhci_hub usb3_rhub; /* support xHCI 1.0 spec USB2 hardware LPM */ +#define XHCI_FORCE_MSI (1 << 24) unsigned hw_lpm_support:1; diff --git a/target/linux/apm821xx/patches-5.4/803-hwmon-tc654-add-detection-routine.patch b/target/linux/apm821xx/patches-5.4/803-hwmon-tc654-add-detection-routine.patch index f8b30ae1b3..f0ed5a7cff 100644 --- a/target/linux/apm821xx/patches-5.4/803-hwmon-tc654-add-detection-routine.patch +++ b/target/linux/apm821xx/patches-5.4/803-hwmon-tc654-add-detection-routine.patch @@ -13,7 +13,7 @@ Signed-off-by: Christian Lamparter --- a/drivers/hwmon/tc654.c +++ b/drivers/hwmon/tc654.c -@@ -64,6 +64,11 @@ enum tc654_regs { +@@ -55,6 +55,11 @@ enum tc654_regs { /* Register data is read (and cached) at most once per second. */ #define TC654_UPDATE_INTERVAL HZ @@ -25,7 +25,7 @@ Signed-off-by: Christian Lamparter struct tc654_data { struct i2c_client *client; -@@ -497,6 +502,29 @@ static const struct i2c_device_id tc654_ +@@ -482,6 +487,29 @@ static const struct i2c_device_id tc654_ {} }; @@ -55,7 +55,7 @@ Signed-off-by: Christian Lamparter MODULE_DEVICE_TABLE(i2c, tc654_id); static struct i2c_driver tc654_driver = { -@@ -505,6 +533,7 @@ static struct i2c_driver tc654_driver = +@@ -490,6 +518,7 @@ static struct i2c_driver tc654_driver = }, .probe = tc654_probe, .id_table = tc654_id, diff --git a/target/linux/apm821xx/patches-5.4/804-hwmon-tc654-add-thermal_cooling-device.patch b/target/linux/apm821xx/patches-5.4/804-hwmon-tc654-add-thermal_cooling-device.patch index c3c6870fab..a7b0a58f7c 100644 --- a/target/linux/apm821xx/patches-5.4/804-hwmon-tc654-add-thermal_cooling-device.patch +++ b/target/linux/apm821xx/patches-5.4/804-hwmon-tc654-add-thermal_cooling-device.patch @@ -11,8 +11,6 @@ Signed-off-by: Christian Lamparter drivers/hwmon/tc654.c | 103 +++++++++++++++++++++++++++++++++++------- 1 file changed, 86 insertions(+), 17 deletions(-) -diff --git a/drivers/hwmon/tc654.c b/drivers/hwmon/tc654.c -index c7939b7c417b..66e6bbe795a5 100644 --- a/drivers/hwmon/tc654.c +++ b/drivers/hwmon/tc654.c @@ -15,6 +15,7 @@ @@ -33,7 +31,7 @@ index c7939b7c417b..66e6bbe795a5 100644 }; /* helper to grab and cache data, at most one time per second */ -@@ -367,36 +371,30 @@ static ssize_t pwm_mode_store(struct device *dev, struct device_attribute *da, +@@ -367,36 +371,30 @@ static ssize_t pwm_mode_store(struct dev static const int tc654_pwm_map[16] = { 77, 88, 102, 112, 124, 136, 148, 160, 172, 184, 196, 207, 219, 231, 243, 255}; @@ -80,7 +78,7 @@ index c7939b7c417b..66e6bbe795a5 100644 mutex_lock(&data->update_lock); if (val == 0) -@@ -416,6 +414,22 @@ static ssize_t pwm_store(struct device *dev, struct device_attribute *da, +@@ -416,6 +414,22 @@ static ssize_t pwm_store(struct device * out: mutex_unlock(&data->update_lock); @@ -103,7 +101,7 @@ index c7939b7c417b..66e6bbe795a5 100644 return ret < 0 ? ret : count; } -@@ -447,6 +461,47 @@ static struct attribute *tc654_attrs[] = { +@@ -447,6 +461,47 @@ static struct attribute *tc654_attrs[] = ATTRIBUTE_GROUPS(tc654); @@ -151,7 +149,7 @@ index c7939b7c417b..66e6bbe795a5 100644 /* * device probe and removal */ -@@ -478,7 +533,21 @@ static int tc654_probe(struct i2c_client *client, +@@ -478,7 +533,21 @@ static int tc654_probe(struct i2c_client hwmon_dev = devm_hwmon_device_register_with_groups(dev, client->name, data, tc654_groups); @@ -174,6 +172,3 @@ index c7939b7c417b..66e6bbe795a5 100644 } static const struct i2c_device_id tc654_id[] = { --- -2.24.0 - diff --git a/target/linux/apm821xx/patches-5.4/900-powerpc-bootwrapper-force-gzip-as-mkimage-s-compress.patch b/target/linux/apm821xx/patches-5.4/900-powerpc-bootwrapper-force-gzip-as-mkimage-s-compress.patch index c6bb6c5f1a..c2cc632693 100644 --- a/target/linux/apm821xx/patches-5.4/900-powerpc-bootwrapper-force-gzip-as-mkimage-s-compress.patch +++ b/target/linux/apm821xx/patches-5.4/900-powerpc-bootwrapper-force-gzip-as-mkimage-s-compress.patch @@ -16,8 +16,6 @@ Signed-off-by: Christian Lamparter arch/powerpc/boot/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile -index dfbd7f22eef5..0bdef8e5f362 100644 --- a/arch/powerpc/boot/Makefile +++ b/arch/powerpc/boot/Makefile @@ -254,7 +254,7 @@ compressor-$(CONFIG_KERNEL_LZO) := lzo @@ -29,6 +27,3 @@ index dfbd7f22eef5..0bdef8e5f362 100644 $(CROSSWRAP) $(if $3, -s $3)$(if $4, -d $4)$(if $5, -i $5) \ vmlinux --- -2.24.0 - -- cgit v1.2.3