diff --git a/package/firmware/ipq-wifi/Makefile b/package/firmware/ipq-wifi/Makefile index 2734911aabe01dfd641af77e7f025112648ffb6f..f398a98c521979492c30c5cfa0c42d04e751fdcc 100644 --- a/package/firmware/ipq-wifi/Makefile +++ b/package/firmware/ipq-wifi/Makefile @@ -13,7 +13,8 @@ endef define Build/Compile endef -ALLWIFIBOARDS:=8dev_jalapeno asus_rt-ac58u avm_fritzbox-4040 glinet_gl-b1300 meraki_mr33 netgear_ex61x0v2 +#ALLWIFIBOARDS:= +ALLWIFIBOARDS:=rt-acrh17 ALLWIFIPACKAGES:=$(foreach BOARD,$(ALLWIFIBOARDS),ipq-wifi-$(BOARD)) define Package/ipq-wifi-default @@ -47,11 +48,7 @@ Don't install it for any other device! PREV_BOARD+=ipq-wifi-$(1) endef -$(eval $(call generate-ipq-wifi-package,8dev_jalapeno,board-8dev_jalapeno.bin,8devices Jalapeno)) -$(eval $(call generate-ipq-wifi-package,asus_rt-ac58u,board-asus_rt-ac58u.bin,ASUS RT-AC58U)) -$(eval $(call generate-ipq-wifi-package,avm_fritzbox-4040,board-avm_fritzbox-4040.bin,AVM FRITZ!Box 4040)) -$(eval $(call generate-ipq-wifi-package,glinet_gl-b1300,board-glinet_gl-b1300.bin,GL.iNet GL-B1300)) -$(eval $(call generate-ipq-wifi-package,meraki_mr33,board-meraki_mr33.bin,Cisco Meraki MR33)) -$(eval $(call generate-ipq-wifi-package,netgear_ex61x0v2,board-netgear_ex61x0v2.bin,Netgear EX61x0v2)) +#$(eval $(call generate-ipq-wifi-package,,,)) +$(eval $(call generate-ipq-wifi-package,rt-acrh17,board-rt-acrh17.bin,ASUS RT-ACRH17/RT-AC82U/RT-AC42U)) $(foreach PACKAGE,$(ALLWIFIPACKAGES),$(eval $(call BuildPackage,$(PACKAGE)))) diff --git a/package/firmware/ipq-wifi/board-8dev_jalapeno.bin b/package/firmware/ipq-wifi/board-8dev_jalapeno.bin deleted file mode 100644 index 0e12d9573c3dab79f8d668141ca970aea5482129..0000000000000000000000000000000000000000 Binary files a/package/firmware/ipq-wifi/board-8dev_jalapeno.bin and /dev/null differ diff --git a/package/firmware/ipq-wifi/board-asus_rt-ac58u.bin b/package/firmware/ipq-wifi/board-asus_rt-ac58u.bin deleted file mode 100644 index ae1cb560adb5f64eab4b9f0ecca2faea7be4e05c..0000000000000000000000000000000000000000 Binary files a/package/firmware/ipq-wifi/board-asus_rt-ac58u.bin and /dev/null differ diff --git a/package/firmware/ipq-wifi/board-avm_fritzbox-4040.bin b/package/firmware/ipq-wifi/board-avm_fritzbox-4040.bin deleted file mode 100644 index 8d17a9f38fd2a0d2931ba2570f0b5af0eef4ec6a..0000000000000000000000000000000000000000 Binary files a/package/firmware/ipq-wifi/board-avm_fritzbox-4040.bin and /dev/null differ diff --git a/package/firmware/ipq-wifi/board-glinet_gl-b1300.bin b/package/firmware/ipq-wifi/board-glinet_gl-b1300.bin deleted file mode 100644 index f2020f6fc9f9b4290dc63753274ce2a5a8216b90..0000000000000000000000000000000000000000 Binary files a/package/firmware/ipq-wifi/board-glinet_gl-b1300.bin and /dev/null differ diff --git a/package/firmware/ipq-wifi/board-meraki_mr33.bin b/package/firmware/ipq-wifi/board-meraki_mr33.bin deleted file mode 100644 index e569b32fe36ad5df8f76532af1a949b3f05e9b60..0000000000000000000000000000000000000000 Binary files a/package/firmware/ipq-wifi/board-meraki_mr33.bin and /dev/null differ diff --git a/package/firmware/ipq-wifi/board-netgear_ex61x0v2.bin b/package/firmware/ipq-wifi/board-netgear_ex61x0v2.bin deleted file mode 100644 index 0937a65fc976444ad72ad9ccc0b3df2a524a071e..0000000000000000000000000000000000000000 Binary files a/package/firmware/ipq-wifi/board-netgear_ex61x0v2.bin and /dev/null differ diff --git a/package/firmware/ipq-wifi/board-rt-acrh17.bin b/package/firmware/ipq-wifi/board-rt-acrh17.bin new file mode 100644 index 0000000000000000000000000000000000000000..00421bef239e275aaca20449872c07c846fe39eb Binary files /dev/null and b/package/firmware/ipq-wifi/board-rt-acrh17.bin differ diff --git a/target/linux/ipq40xx/base-files/etc/board.d/02_network b/target/linux/ipq40xx/base-files/etc/board.d/02_network index 26d70673b6856cbb813edec66c078688364f43cc..a2146c95657cae96e6def40d9c9f8dbb83de625b 100755 --- a/target/linux/ipq40xx/base-files/etc/board.d/02_network +++ b/target/linux/ipq40xx/base-files/etc/board.d/02_network @@ -43,7 +43,8 @@ glinet,gl-b1300) "0t@eth0" "3:lan" "4:lan" "5:wan" ;; 8dev,jalapeno |\ -openmesh,a42) +openmesh,a42 |\ +openmesh,a62) ucidef_add_switch "switch0" \ "0t@eth0" "4:lan" "5:wan" ;; diff --git a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata index 6541f69613be6023ebaafc3457f227e1c2e2b672..df84a275d7bf799a5260a982eb6de2f83cfdcf15 100644 --- a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata +++ b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata @@ -110,6 +110,17 @@ case "$FIRMWARE" in ;; esac ;; +"ath10k/pre-cal-pci-0000:01:00.0.bin") + case "$board" in + asus,rt-acrh17) + CI_UBIPART=UBI_DEV + ath10kcal_ubi_extract "Factory" 36864 12064 + ;; + openmesh,a62) + ath10kcal_extract "0:ART" 36864 12064 + ;; + esac + ;; "ath10k/pre-cal-ahb-a000000.wifi.bin") case "$board" in 8dev,jalapeno |\ @@ -136,7 +147,8 @@ case "$FIRMWARE" in ath10kcal_patch_mac_crc $(mtd_get_mac_binary dnidata 0) ;; compex,wpj428 |\ - openmesh,a42) + openmesh,a42 |\ + openmesh,a62) ath10kcal_extract "0:ART" 4096 12064 ;; esac @@ -166,19 +178,12 @@ case "$FIRMWARE" in ath10kcal_patch_mac_crc $(mtd_get_mac_binary dnidata 12) ;; compex,wpj428 |\ - openmesh,a42) + openmesh,a42 |\ + openmesh,a62) ath10kcal_extract "0:ART" 20480 12064 ;; esac ;; -"ath10k/pre-cal-pci-0000:01:00.0.bin") - case "$board" in - asus,rt-acrh17) - CI_UBIPART=UBI_DEV - ath10kcal_ubi_extract "Factory" 36864 12064 - ;; - esac - ;; *) exit 1 ;; diff --git a/target/linux/ipq40xx/base-files/lib/upgrade/openmesh.sh b/target/linux/ipq40xx/base-files/lib/upgrade/openmesh.sh index 71ab247ead14140cd0446e7b03e348412f51d90c..f7aed7c9b6452baeb5fb7de7ee6c0546e814ee1d 100644 --- a/target/linux/ipq40xx/base-files/lib/upgrade/openmesh.sh +++ b/target/linux/ipq40xx/base-files/lib/upgrade/openmesh.sh @@ -47,6 +47,9 @@ platform_do_upgrade_openmesh() { openmesh,a42) primary_kernel_mtd=8 ;; + openmesh,a62) + primary_kernel_mtd=10 + ;; *) echo "failed to detect primary kernel mtd partition for board" return 1 diff --git a/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh b/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh index 5a3ad2876c1c556a026c518a32c71afb58434540..7c262b830a2d5148475d60f6693f7f41cf0f173d 100644 --- a/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh +++ b/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh @@ -47,7 +47,7 @@ asus_nand_upgrade_tar() { local root_ubivol="$( nand_find_volume $ubidev rootfs )" # remove ubiblock device of rootfs - local root_ubiblk="ubiblock${root_ubivol:-3}" + local root_ubiblk="ubiblock${root_ubivol:3}" if [ "$root_ubivol" -a -e "/dev/$root_ubiblk" ]; then echo "removing $root_ubiblk" if ! ubiblock -r /dev/$root_ubivol; then @@ -56,11 +56,11 @@ asus_nand_upgrade_tar() { fi fi - ubi_kill_if_exist linux - ubi_kill_if_exist linux2 - ubi_kill_if_exist rootfs ubi_kill_if_exist rootfs_data + ubi_kill_if_exist rootfs ubi_kill_if_exist jffs2 + ubi_kill_if_exist linux2 + ubi_kill_if_exist linux ubimkvol /dev/$ubidev -N linux -s $kpart_size ubimkvol /dev/$ubidev -N linux2 -s $kpart_size @@ -112,7 +112,7 @@ asus_nand_upgrade_factory() { local root_ubivol="$( nand_find_volume $ubidev rootfs )" # remove ubiblock device of rootfs - local root_ubiblk="ubiblock${root_ubivol:-3}" + local root_ubiblk="ubiblock${root_ubivol:3}" if [ "$root_ubivol" -a -e "/dev/$root_ubiblk" ]; then echo "removing $root_ubiblk" if ! ubiblock -r /dev/$root_ubivol; then @@ -121,11 +121,11 @@ asus_nand_upgrade_factory() { fi fi - ubi_kill_if_exist linux - ubi_kill_if_exist linux2 - ubi_kill_if_exist rootfs ubi_kill_if_exist rootfs_data + ubi_kill_if_exist rootfs ubi_kill_if_exist jffs2 + ubi_kill_if_exist linux2 + ubi_kill_if_exist linux ubimkvol /dev/$ubidev -N linux -s $kpart_size @@ -159,7 +159,8 @@ platform_do_upgrade() { asus_nand_upgrade_tar 20951040 "$1" fi ;; - openmesh,a42) + openmesh,a42 |\ + openmesh,a62) PART_NAME="inactive" platform_do_upgrade_openmesh "$ARGV" ;; diff --git a/target/linux/ipq40xx/config-4.14 b/target/linux/ipq40xx/config-4.14 index 18a8bafd5f99de96c22b4e7f2c3bce87267d40fe..fa52d58bed2ec76faec9f563d15ae4ecdc8c2a13 100644 --- a/target/linux/ipq40xx/config-4.14 +++ b/target/linux/ipq40xx/config-4.14 @@ -35,7 +35,6 @@ CONFIG_ARCH_SUPPORTS_UPROBES=y CONFIG_ARCH_SUSPEND_POSSIBLE=y CONFIG_ARCH_USE_BUILTIN_BSWAP=y CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y -# CONFIG_ARCH_WANTS_THP_SWAP is not set CONFIG_ARCH_WANT_GENERAL_HUGETLB=y CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y CONFIG_ARM=y @@ -148,12 +147,9 @@ CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" # CONFIG_DEBUG_USER is not set CONFIG_DMADEVICES=y CONFIG_DMA_ENGINE=y -# CONFIG_DMA_NOOP_OPS is not set CONFIG_DMA_OF=y CONFIG_DMA_SHARED_BUFFER=y CONFIG_DMA_VIRTUAL_CHANNELS=y -# CONFIG_DMA_VIRT_OPS is not set -# CONFIG_DRM_LIB_RANDOM is not set CONFIG_DTC=y CONFIG_DT_IDLE_STATES=y CONFIG_DYNAMIC_DEBUG=y @@ -161,11 +157,9 @@ CONFIG_EDAC_ATOMIC_SCRUB=y CONFIG_EDAC_SUPPORT=y CONFIG_EEPROM_AT24=y CONFIG_ESSEDMA=y -CONFIG_EXPORTFS=y CONFIG_EXTCON=y CONFIG_FIXED_PHY=y CONFIG_FIX_EARLYCON_MEM=y -CONFIG_FUTEX_PI=y CONFIG_GENERIC_ALLOCATOR=y CONFIG_GENERIC_BUG=y CONFIG_GENERIC_CLOCKEVENTS=y @@ -456,7 +450,6 @@ CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 CONFIG_THERMAL_GOV_STEP_WISE=y CONFIG_THERMAL_OF=y -CONFIG_THIN_ARCHIVES=y # CONFIG_THUMB2_KERNEL is not set CONFIG_TICK_CPU_ACCOUNTING=y CONFIG_TIMER_OF=y diff --git a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-fritz4040.dts b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-fritz4040.dts index 3768cd87b9d83d52a7e3c2d2744309296f343ba2..6ebac16c94adeac45ebee6d0e351a76b59d787dc 100644 --- a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-fritz4040.dts +++ b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-fritz4040.dts @@ -84,10 +84,12 @@ wifi@a000000 { status = "okay"; + qcom,ath10k-calibration-variant = "AVM-FRITZBox-4040"; }; wifi@a800000 { status = "okay"; + qcom,ath10k-calibration-variant = "AVM-FRITZBox-4040"; }; watchdog@b017000 { diff --git a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-rt-ac58u.dts b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-rt-ac58u.dts index e0bb968f5bb4603da7d9948d57a41630ed6b2136..d988275564380998e3d113353c87af47cac7a972 100644 --- a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-rt-ac58u.dts +++ b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-rt-ac58u.dts @@ -89,12 +89,12 @@ wifi@a000000 { status = "okay"; - qcom,ath10k-calibration-variant = "ASUS-RT-AC58U"; + qcom,ath10k-calibration-variant = "RT-AC58U"; }; wifi@a800000 { status = "okay"; - qcom,ath10k-calibration-variant = "ASUS-RT-AC58U"; + qcom,ath10k-calibration-variant = "RT-AC58U"; }; watchdog@b017000 { diff --git a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4019-rt-acrh17.dts b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4019-rt-acrh17.dts index db6ff7d73b1bee306c76df7251f2ca9f60403b5f..a6c7fd52a0d61edbdc1f6d38d1dea1f7f44811cb 100644 --- a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4019-rt-acrh17.dts +++ b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4019-rt-acrh17.dts @@ -93,6 +93,7 @@ qcom,mtd-name = "0:ART"; qcom,cal-offset = <0x1000>; qcom,cal-len = <12064>; + qcom,ath10k-calibration-variant = "RT-ACRH17"; }; wifi1: wifi@a800000 { diff --git a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4029-gl-b1300.dts b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4029-gl-b1300.dts index cbbc1e14018466847fcf482769f5bba126244db0..8fa787cb4cf7f4944341287ea73f8cbcffbf104c 100644 --- a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4029-gl-b1300.dts +++ b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4029-gl-b1300.dts @@ -266,8 +266,10 @@ &wifi0 { status = "okay"; + qcom,ath10k-calibration-variant = "GL-B1300"; }; &wifi1 { status = "okay"; + qcom,ath10k-calibration-variant = "GL-B1300"; }; diff --git a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4029-mr33.dts b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4029-mr33.dts index 8bbfb0ba0bb1e1efed969d189cf7c129eeac0b1c..0be196065583107290c5a186725dd58219a54d79 100644 --- a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4029-mr33.dts +++ b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4029-mr33.dts @@ -372,10 +372,10 @@ &wifi0 { status = "okay"; - /* qcom,ath10k-calibration-variant = "MERAKI-MR33"; */ + qcom,ath10k-calibration-variant = "Meraki-MR33"; }; &wifi1 { status = "okay"; - /* qcom,ath10k-calibration-variant = "MERAKI-MR33"; */ + qcom,ath10k-calibration-variant = "Meraki-MR33"; }; diff --git a/target/linux/ipq40xx/image/Makefile b/target/linux/ipq40xx/image/Makefile index e3da496790ae0b1766647064e602defd892c2feb..f8080fffd67efd39175a613caa2ee1f7e2e4d4c9 100644 --- a/target/linux/ipq40xx/image/Makefile +++ b/target/linux/ipq40xx/image/Makefile @@ -51,7 +51,6 @@ define Device/8dev_jalapeno BLOCKSIZE := 128k PAGESIZE := 2048 DEVICE_TITLE := 8devices Jalapeno - DEVICE_PACKAGES := ipq-wifi-8dev_jalapeno endef TARGET_DEVICES += 8dev_jalapeno @@ -73,7 +72,7 @@ define Device/asus_rt-ac58u KERNEL_INITRAMFS := $$(KERNEL) | uImage none KERNEL_INITRAMFS_SUFFIX := -factory.trx IMAGES := sysupgrade.bin - DEVICE_PACKAGES := ipq-wifi-asus_rt-ac58u kmod-usb-ledtrig-usbport + DEVICE_PACKAGES := kmod-usb-ledtrig-usbport endef TARGET_DEVICES += asus_rt-ac58u @@ -90,7 +89,7 @@ define Device/asus_rt-acrh17 KERNEL_INITRAMFS := $$(KERNEL) | uImage none KERNEL_INITRAMFS_SUFFIX := -factory.trx IMAGES := sysupgrade.bin - DEVICE_PACKAGES := ath10k-firmware-qca4019 ath10k-firmware-qca9984 + DEVICE_PACKAGES := ipq-wifi-rt-acrh17 ath10k-firmware-qca9984 endef TARGET_DEVICES += asus_rt-acrh17 @@ -100,9 +99,12 @@ define Device/avm_fritzbox-4040 BOARD_NAME := fritz4040 DEVICE_TITLE := AVM Fritz!Box 4040 IMAGE_SIZE := 29753344 - IMAGES = sysupgrade.bin + UBOOT_PATH := $$(BIN_DIR)/u-boot-fritz4040/uboot-fritz4040.bin + UBOOT_PARTITION_SIZE := 524288 + IMAGES = eva.bin sysupgrade.bin + IMAGE/eva.bin := append-uboot | pad-to $$$$(UBOOT_PARTITION_SIZE) | append-kernel | append-rootfs | pad-rootfs IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata - DEVICE_PACKAGES := ipq-wifi-avm_fritzbox-4040 fritz-tffs fritz-caldata u-boot-fritz4040 + DEVICE_PACKAGES := fritz-tffs fritz-caldata u-boot-fritz4040 endef TARGET_DEVICES += avm_fritzbox-4040 @@ -129,7 +131,6 @@ define Device/glinet_gl-b1300 IMAGE_SIZE := 26624k IMAGES := sysupgrade.bin IMAGE/sysupgrade.bin := append-kernel |append-rootfs | pad-rootfs | append-metadata - DEVICE_PACKAGES := ipq-wifi-glinet_gl-b1300 endef TARGET_DEVICES += glinet_gl-b1300 @@ -140,7 +141,7 @@ define Device/meraki_mr33 PAGESIZE := 2048 DEVICE_TITLE := Cisco Meraki MR33 IMAGES = sysupgrade.bin - DEVICE_PACKAGES := -swconfig ipq-wifi-meraki_mr33 ath10k-firmware-qca9887 + DEVICE_PACKAGES := -swconfig ath10k-firmware-qca9887 endef TARGET_DEVICES += meraki_mr33 @@ -148,7 +149,6 @@ define Device/netgear_ex61x0v2 $(call Device/DniImage) KERNEL_SIZE := 3080192 DEVICE_DTS_CONFIG := config@4 - DEVICE_PACKAGES := ipq-wifi-netgear_ex61x0v2 NETGEAR_BOARD_ID := EX6150v2series NETGEAR_HW_ID := 29765285+16+0+128+2x2 endef @@ -182,6 +182,22 @@ define Device/openmesh_a42 endef TARGET_DEVICES += openmesh_a42 +define Device/openmesh_a62 + $(call Device/FitImageLzma) + DEVICE_DTS := qcom-ipq4019-a62 + DEVICE_DTS_CONFIG := config@om.a62 + BLOCKSIZE := 64k + DEVICE_TITLE := OpenMesh A62 + KERNEL = kernel-bin | lzma | fit lzma $$(DTS_DIR)/$$(DEVICE_DTS).dtb | pad-to $$(BLOCKSIZE) + IMAGE_SIZE := 15552k + IMAGES = factory.bin sysupgrade.bin + IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=A62 + IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata + DEVICE_PACKAGES := ath10k-firmware-qca9888 uboot-envtools +endef + +TARGET_DEVICES += openmesh_a62 + define Device/qcom_ap-dk01.1-c1 DEVICE_TITLE := QCA AP-DK01.1-C1 BOARD_NAME := ap-dk01.1-c1 diff --git a/target/linux/ipq40xx/patches-4.14/040-dmaengine-qcom-bam-Process-multiple-pending-descript.patch b/target/linux/ipq40xx/patches-4.14/040-dmaengine-qcom-bam-Process-multiple-pending-descript.patch index 881d08c7e5ecd5d1c00a702f76ffb0dfd25e53b2..dca516e8783fcb5fcdd285b6d7f5090e7fa52177 100644 --- a/target/linux/ipq40xx/patches-4.14/040-dmaengine-qcom-bam-Process-multiple-pending-descript.patch +++ b/target/linux/ipq40xx/patches-4.14/040-dmaengine-qcom-bam-Process-multiple-pending-descript.patch @@ -114,7 +114,7 @@ Signed-off-by: Vinod Koul struct list_head node; }; -@@ -540,7 +545,7 @@ static void bam_free_chan(struct dma_cha +@@ -539,7 +544,7 @@ static void bam_free_chan(struct dma_cha vchan_free_chan_resources(to_virt_chan(chan)); @@ -123,7 +123,7 @@ Signed-off-by: Vinod Koul dev_err(bchan->bdev->dev, "Cannot free busy channel\n"); goto err; } -@@ -633,8 +638,6 @@ static struct dma_async_tx_descriptor *b +@@ -632,8 +637,6 @@ static struct dma_async_tx_descriptor *b if (flags & DMA_PREP_INTERRUPT) async_desc->flags |= DESC_FLAG_EOT; @@ -132,7 +132,7 @@ Signed-off-by: Vinod Koul async_desc->num_desc = num_alloc; async_desc->curr_desc = async_desc->desc; -@@ -685,14 +688,16 @@ err_out: +@@ -684,14 +687,16 @@ err_out: static int bam_dma_terminate_all(struct dma_chan *chan) { struct bam_chan *bchan = to_bam_chan(chan); @@ -152,7 +152,7 @@ Signed-off-by: Vinod Koul } vchan_get_all_descriptors(&bchan->vc, &head); -@@ -764,9 +769,9 @@ static int bam_resume(struct dma_chan *c +@@ -763,9 +768,9 @@ static int bam_resume(struct dma_chan *c */ static u32 process_channel_irqs(struct bam_device *bdev) { @@ -164,7 +164,7 @@ Signed-off-by: Vinod Koul srcs = readl_relaxed(bam_addr(bdev, 0, BAM_IRQ_SRCS_EE)); -@@ -786,27 +791,40 @@ static u32 process_channel_irqs(struct b +@@ -785,27 +790,40 @@ static u32 process_channel_irqs(struct b writel_relaxed(pipe_stts, bam_addr(bdev, i, BAM_P_IRQ_CLR)); spin_lock_irqsave(&bchan->vc.lock, flags); @@ -214,7 +214,7 @@ Signed-off-by: Vinod Koul } spin_unlock_irqrestore(&bchan->vc.lock, flags); -@@ -868,6 +886,7 @@ static enum dma_status bam_tx_status(str +@@ -867,6 +885,7 @@ static enum dma_status bam_tx_status(str struct dma_tx_state *txstate) { struct bam_chan *bchan = to_bam_chan(chan); @@ -222,7 +222,7 @@ Signed-off-by: Vinod Koul struct virt_dma_desc *vd; int ret; size_t residue = 0; -@@ -883,11 +902,17 @@ static enum dma_status bam_tx_status(str +@@ -882,11 +901,17 @@ static enum dma_status bam_tx_status(str spin_lock_irqsave(&bchan->vc.lock, flags); vd = vchan_find_desc(&bchan->vc, cookie); @@ -244,7 +244,7 @@ Signed-off-by: Vinod Koul spin_unlock_irqrestore(&bchan->vc.lock, flags); -@@ -928,63 +953,86 @@ static void bam_start_dma(struct bam_cha +@@ -927,63 +952,86 @@ static void bam_start_dma(struct bam_cha { struct virt_dma_desc *vd = vchan_next_desc(&bchan->vc); struct bam_device *bdev = bchan->bdev; @@ -367,7 +367,7 @@ Signed-off-by: Vinod Koul /* ensure descriptor writes and dma start not reordered */ wmb(); -@@ -1013,7 +1061,7 @@ static void dma_tasklet(unsigned long da +@@ -1012,7 +1060,7 @@ static void dma_tasklet(unsigned long da bchan = &bdev->channels[i]; spin_lock_irqsave(&bchan->vc.lock, flags); @@ -376,7 +376,7 @@ Signed-off-by: Vinod Koul bam_start_dma(bchan); spin_unlock_irqrestore(&bchan->vc.lock, flags); } -@@ -1034,7 +1082,7 @@ static void bam_issue_pending(struct dma +@@ -1033,7 +1081,7 @@ static void bam_issue_pending(struct dma spin_lock_irqsave(&bchan->vc.lock, flags); /* if work pending and idle, start a transaction */ @@ -385,7 +385,7 @@ Signed-off-by: Vinod Koul bam_start_dma(bchan); spin_unlock_irqrestore(&bchan->vc.lock, flags); -@@ -1138,6 +1186,7 @@ static void bam_channel_init(struct bam_ +@@ -1133,6 +1181,7 @@ static void bam_channel_init(struct bam_ vchan_init(&bchan->vc, &bdev->common); bchan->vc.desc_free = bam_dma_free_desc; diff --git a/target/linux/ipq40xx/patches-4.14/069-arm-boot-add-dts-files.patch b/target/linux/ipq40xx/patches-4.14/069-arm-boot-add-dts-files.patch index caf82fd0afd6050b8eda9d0f0c301964a451d2a8..1feff745e78782860e17aabe13c15b70e807eb9d 100644 --- a/target/linux/ipq40xx/patches-4.14/069-arm-boot-add-dts-files.patch +++ b/target/linux/ipq40xx/patches-4.14/069-arm-boot-add-dts-files.patch @@ -10,7 +10,7 @@ Signed-off-by: John Crispin --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile -@@ -697,7 +697,18 @@ dtb-$(CONFIG_ARCH_QCOM) += \ +@@ -697,7 +697,19 @@ dtb-$(CONFIG_ARCH_QCOM) += \ qcom-apq8074-dragonboard.dtb \ qcom-apq8084-ifc6540.dtb \ qcom-apq8084-mtp.dtb \ @@ -21,6 +21,7 @@ Signed-off-by: John Crispin + qcom-ipq4018-jalapeno.dtb \ + qcom-ipq4018-rt-ac58u.dtb \ qcom-ipq4019-ap.dk01.1-c1.dtb \ ++ qcom-ipq4019-a62.dtb \ + qcom-ipq4019-ap.dk04.1-c1.dtb \ + qcom-ipq4019-rt-acrh17.dtb \ + qcom-ipq4028-wpj428.dtb \ diff --git a/target/linux/ipq40xx/patches-4.14/305-qcom-ipq4019-use-v2-of-the-kpss-bringup-mechanism.patch b/target/linux/ipq40xx/patches-4.14/305-qcom-ipq4019-use-v2-of-the-kpss-bringup-mechanism.patch index 1d08b9de74536f749ca6ea213882a861443b2b46..ed44359e5fa1906ac972f99f04377a00a2e2b9e5 100644 --- a/target/linux/ipq40xx/patches-4.14/305-qcom-ipq4019-use-v2-of-the-kpss-bringup-mechanism.patch +++ b/target/linux/ipq40xx/patches-4.14/305-qcom-ipq4019-use-v2-of-the-kpss-bringup-mechanism.patch @@ -67,7 +67,7 @@ Changes: qcom,acc = <&acc3>; qcom,saw = <&saw3>; reg = <0x3>; -@@ -264,22 +274,22 @@ +@@ -265,22 +275,22 @@ }; acc0: clock-controller@b088000 { @@ -94,7 +94,7 @@ Changes: reg = <0x0b0b8000 0x1000>, <0xb008000 0x1000>; }; -@@ -307,6 +317,12 @@ +@@ -308,6 +318,12 @@ regulator; }; diff --git a/target/linux/ipq40xx/patches-4.14/306-qcom-ipq4019-add-USB-nodes-to-ipq4019-SoC-device-tre.patch b/target/linux/ipq40xx/patches-4.14/306-qcom-ipq4019-add-USB-nodes-to-ipq4019-SoC-device-tre.patch index cd0f14eafd99c1e50047e72e3d4c236535f004a0..33d744251cd207e13ed4bbcaf9e8e1b0c9f0c98c 100644 --- a/target/linux/ipq40xx/patches-4.14/306-qcom-ipq4019-add-USB-nodes-to-ipq4019-SoC-device-tre.patch +++ b/target/linux/ipq40xx/patches-4.14/306-qcom-ipq4019-add-USB-nodes-to-ipq4019-SoC-device-tre.patch @@ -51,7 +51,7 @@ Changes: }; --- a/arch/arm/boot/dts/qcom-ipq4019.dtsi +++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi -@@ -538,5 +538,76 @@ +@@ -539,5 +539,76 @@ "legacy"; status = "disabled"; }; diff --git a/target/linux/ipq40xx/patches-4.14/701-dts-ipq4019-add-mdio-node.patch b/target/linux/ipq40xx/patches-4.14/701-dts-ipq4019-add-mdio-node.patch index 112c921dbd54b0abd055e3d06a2f0abdada4d4da..25f596eaffd7ec4cc9474d677dd8407035bb3a23 100644 --- a/target/linux/ipq40xx/patches-4.14/701-dts-ipq4019-add-mdio-node.patch +++ b/target/linux/ipq40xx/patches-4.14/701-dts-ipq4019-add-mdio-node.patch @@ -15,7 +15,7 @@ so the info might change. --- a/arch/arm/boot/dts/qcom-ipq4019.dtsi +++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi -@@ -539,6 +539,34 @@ +@@ -540,6 +540,34 @@ status = "disabled"; }; diff --git a/target/linux/ipq40xx/patches-4.14/702-dts-ipq4019-add-PHY-switch-nodes.patch b/target/linux/ipq40xx/patches-4.14/702-dts-ipq4019-add-PHY-switch-nodes.patch index 7ad9edbe99a39d8e00a18d3b5626f327e4f4865b..eb3d9be01302b98d4b217dad9ec86e57ec73f57e 100644 --- a/target/linux/ipq40xx/patches-4.14/702-dts-ipq4019-add-PHY-switch-nodes.patch +++ b/target/linux/ipq40xx/patches-4.14/702-dts-ipq4019-add-PHY-switch-nodes.patch @@ -14,7 +14,7 @@ Signed-off-by: Christian Lamparter --- a/arch/arm/boot/dts/qcom-ipq4019.dtsi +++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi -@@ -567,6 +567,29 @@ +@@ -568,6 +568,29 @@ }; }; diff --git a/target/linux/ipq40xx/patches-4.14/711-dts-ipq4019-add-ethernet-essedma-node.patch b/target/linux/ipq40xx/patches-4.14/711-dts-ipq4019-add-ethernet-essedma-node.patch index 285cafd6d50b51571fcec9d7e249e016aaafa63d..2c923625b472d2c6b839d4f760e480e603c1a51c 100644 --- a/target/linux/ipq40xx/patches-4.14/711-dts-ipq4019-add-ethernet-essedma-node.patch +++ b/target/linux/ipq40xx/patches-4.14/711-dts-ipq4019-add-ethernet-essedma-node.patch @@ -25,7 +25,7 @@ Signed-off-by: Christian Lamparter }; cpus { -@@ -590,6 +592,64 @@ +@@ -591,6 +593,64 @@ status = "disabled"; }; diff --git a/target/linux/ipq40xx/patches-4.14/864-09-dts-ipq4019-ap-dk01.1-enable-ethernet.patch b/target/linux/ipq40xx/patches-4.14/864-09-dts-ipq4019-ap-dk01.1-enable-ethernet.patch new file mode 100644 index 0000000000000000000000000000000000000000..625c18dcc8aa0f68f3918ca7c594fd9fae82ce40 --- /dev/null +++ b/target/linux/ipq40xx/patches-4.14/864-09-dts-ipq4019-ap-dk01.1-enable-ethernet.patch @@ -0,0 +1,25 @@ +--- a/arch/arm/boot/dts/qcom-ipq4019-ap.dk01.1.dtsi ++++ b/arch/arm/boot/dts/qcom-ipq4019-ap.dk01.1.dtsi +@@ -121,6 +121,22 @@ + status = "ok"; + }; + ++ mdio@90000 { ++ status = "okay"; ++ }; ++ ++ ess-switch@c000000 { ++ status = "okay"; ++ }; ++ ++ ess-psgmii@98000 { ++ status = "okay"; ++ }; ++ ++ edma@c080000 { ++ status = "okay"; ++ }; ++ + usb3_ss_phy: ssphy@9a000 { + status = "ok"; + };