mirror of
https://github.com/hanwckf/immortalwrt-mt798x.git
synced 2025-01-09 02:43:53 +08:00
Merge Official Source
This commit is contained in:
commit
0f39011c13
@ -6,13 +6,13 @@ ifdef CONFIG_TESTING_KERNEL
|
||||
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
|
||||
endif
|
||||
|
||||
LINUX_VERSION-4.9 = .205
|
||||
LINUX_VERSION-4.14 = .156
|
||||
LINUX_VERSION-4.19 = .86
|
||||
LINUX_VERSION-4.9 = .206
|
||||
LINUX_VERSION-4.14 = .158
|
||||
LINUX_VERSION-4.19 = .88
|
||||
|
||||
LINUX_KERNEL_HASH-4.9.205 = 98b9e8644706acc0cf51022372bb263b59a1d2bbe3ccd7ce6bd9bc7378c78b05
|
||||
LINUX_KERNEL_HASH-4.14.156 = f8889feb0cbd7df36ff35bd4c72c1e2010567621bfcb218fcfa501bc5c7787c0
|
||||
LINUX_KERNEL_HASH-4.19.86 = bf2cbba319d43d1bd9e876ac0b55ab83118d1a1e61cce3c929d5371f7567bff6
|
||||
LINUX_KERNEL_HASH-4.9.206 = 1df27899a9bc4dd874f3830ab9e7b638f0026dffd67a2e230444e5d2805ccad6
|
||||
LINUX_KERNEL_HASH-4.14.158 = 0d49ec72e273f6fc7462ad56849b2285f13fd5f4185e8f932a0074fc2eca1bb3
|
||||
LINUX_KERNEL_HASH-4.19.88 = c1923b6bd166e6dd07be860c15f59e8273aaa8692bc2a1fce1d31b826b9b3fbe
|
||||
|
||||
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
||||
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
|
||||
|
@ -28,67 +28,67 @@ endef
|
||||
define U-Boot/A10-OLinuXino-Lime
|
||||
BUILD_SUBTARGET:=cortexa8
|
||||
NAME:=A10 OLinuXino LIME
|
||||
BUILD_DEVICES:=sun4i-a10-olinuxino-lime
|
||||
BUILD_DEVICES:=olimex_a10-olinuxino-lime
|
||||
endef
|
||||
|
||||
define U-Boot/A13-OLinuXino
|
||||
BUILD_SUBTARGET:=cortexa8
|
||||
NAME:=A13 OlinuXino
|
||||
BUILD_DEVICES:=sun5i-a13-olinuxino
|
||||
BUILD_DEVICES:=olimex_a13-olinuxino
|
||||
endef
|
||||
|
||||
define U-Boot/A20-OLinuXino-Lime
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=A20 OLinuXino LIME
|
||||
BUILD_DEVICES:=sun7i-a20-olinuxino-lime
|
||||
BUILD_DEVICES:=olimex_a20-olinuxino-lime
|
||||
endef
|
||||
|
||||
define U-Boot/A20-OLinuXino-Lime2
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=A20 OLinuXino LIME2
|
||||
BUILD_DEVICES:=sun7i-a20-olinuxino-lime2
|
||||
BUILD_DEVICES:=olimex_a20-olinuxino-lime2
|
||||
endef
|
||||
|
||||
define U-Boot/A20-OLinuXino-Lime2-eMMC
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=A20 OLinuXino LIME2 eMMC
|
||||
BUILD_DEVICES:=sun7i-a20-olinuxino-lime2-emmc
|
||||
BUILD_DEVICES:=olimex_a20-olinuxino-lime2-emmc
|
||||
endef
|
||||
|
||||
define U-Boot/A20-OLinuXino_MICRO
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=A20 OLinuXino MICRO
|
||||
BUILD_DEVICES:=sun7i-a20-olinuxino-micro
|
||||
BUILD_DEVICES:=olimex_a20-olinuxino-micro
|
||||
endef
|
||||
|
||||
define U-Boot/Bananapi
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Bananapi
|
||||
BUILD_DEVICES:=sun7i-a20-bananapi
|
||||
BUILD_DEVICES:=lemaker_bananapi
|
||||
endef
|
||||
|
||||
define U-Boot/Bananapro
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Bananapro
|
||||
BUILD_DEVICES:=sun7i-a20-bananapro
|
||||
BUILD_DEVICES:=lemaker_bananapro
|
||||
endef
|
||||
|
||||
define U-Boot/Cubieboard
|
||||
BUILD_SUBTARGET:=cortexa8
|
||||
NAME:=Cubieboard
|
||||
BUILD_DEVICES:=sun4i-a10-cubieboard
|
||||
BUILD_DEVICES:=cubietech_a10-cubieboard
|
||||
endef
|
||||
|
||||
define U-Boot/Cubieboard2
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Cubieboard2
|
||||
BUILD_DEVICES:=sun7i-a20-cubieboard2
|
||||
BUILD_DEVICES:=cubietech_cubieboard2
|
||||
endef
|
||||
|
||||
define U-Boot/Cubietruck
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Cubietruck
|
||||
BUILD_DEVICES:=sun7i-a20-cubietruck
|
||||
BUILD_DEVICES:=cubietech_cubietruck
|
||||
endef
|
||||
|
||||
define U-Boot/Hummingbird_A31
|
||||
@ -99,91 +99,97 @@ endef
|
||||
define U-Boot/Marsboard_A10
|
||||
BUILD_SUBTARGET:=cortexa8
|
||||
NAME:=Marsboard
|
||||
BUILD_DEVICES:=sun4i-a10-marsboard
|
||||
BUILD_DEVICES:=marsboard_a10-marsboard
|
||||
endef
|
||||
|
||||
define U-Boot/Mele_M9
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Mele M9 (A31)
|
||||
BUILD_DEVICES:=sun6i-a31-m9
|
||||
BUILD_DEVICES:=mele_m9
|
||||
endef
|
||||
|
||||
define U-Boot/OLIMEX_A13_SOM
|
||||
BUILD_SUBTARGET:=cortexa8
|
||||
NAME:=Olimex A13 SOM
|
||||
BUILD_DEVICES:=sun5i-a13-olimex-som
|
||||
BUILD_DEVICES:=olimex_a13-olimex-som
|
||||
endef
|
||||
|
||||
define U-Boot/Linksprite_pcDuino
|
||||
BUILD_SUBTARGET:=cortexa8
|
||||
NAME:=Linksprite pcDuino
|
||||
BUILD_DEVICES:=sun4i-a10-pcduino
|
||||
BUILD_DEVICES:=linksprite_a10-pcduino
|
||||
endef
|
||||
|
||||
define U-Boot/Linksprite_pcDuino3
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Linksprite pcDuino3
|
||||
BUILD_DEVICES:=sun7i-a20-pcduino3
|
||||
BUILD_DEVICES:=linksprite_pcduino3
|
||||
endef
|
||||
|
||||
define U-Boot/Lamobo_R1
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Lamobo R1
|
||||
BUILD_DEVICES:=sun7i-a20-lamobo-r1
|
||||
BUILD_DEVICES:=lamobo_lamobo-r1
|
||||
endef
|
||||
|
||||
define U-Boot/nanopi_m1_plus
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=NanoPi M1 Plus (H3)
|
||||
BUILD_DEVICES:=sun8i-h3-nanopi-m1-plus
|
||||
BUILD_DEVICES:=friendlyarm_nanopi-m1-plus
|
||||
endef
|
||||
|
||||
define U-Boot/nanopi_neo_air
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=U-Boot for NanoPi NEO Air (H3)
|
||||
BUILD_DEVICES:=friendlyarm_nanopi-neo-air
|
||||
endef
|
||||
|
||||
define U-Boot/nanopi_neo
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=U-Boot for NanoPi NEO (H3)
|
||||
BUILD_DEVICES:=sun8i-h3-nanopi-neo
|
||||
BUILD_DEVICES:=friendlyarm_nanopi-neo
|
||||
endef
|
||||
|
||||
define U-Boot/orangepi_r1
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Orange Pi R1 (H2+)
|
||||
BUILD_DEVICES:=sun8i-h2-plus-orangepi-r1
|
||||
BUILD_DEVICES:=xunlong_orangepi-r1
|
||||
endef
|
||||
|
||||
define U-Boot/orangepi_zero
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Orange Pi Zero (H2+)
|
||||
BUILD_DEVICES:=sun8i-h2-plus-orangepi-zero
|
||||
BUILD_DEVICES:=xunlong_orangepi-zero
|
||||
endef
|
||||
|
||||
define U-Boot/orangepi_one
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Orange Pi One (H3)
|
||||
BUILD_DEVICES:=sun8i-h3-orangepi-one
|
||||
BUILD_DEVICES:=xunlong_orangepi-one
|
||||
endef
|
||||
|
||||
define U-Boot/orangepi_pc
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Orange Pi PC (H3)
|
||||
BUILD_DEVICES:=sun8i-h3-orangepi-pc
|
||||
BUILD_DEVICES:=xunlong_orangepi-pc
|
||||
endef
|
||||
|
||||
define U-Boot/orangepi_pc_plus
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Orange Pi PC Plus (H3)
|
||||
BUILD_DEVICES:=sun8i-h3-orangepi-pc-plus
|
||||
BUILD_DEVICES:=xunlong_orangepi-pc-plus
|
||||
endef
|
||||
|
||||
define U-Boot/orangepi_plus
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Orange Pi Plus (H3)
|
||||
BUILD_DEVICES:=sun8i-h3-orangepi-plus
|
||||
BUILD_DEVICES:=xunlong_orangepi-plus
|
||||
endef
|
||||
|
||||
define U-Boot/orangepi_2
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Orange Pi 2 (H3)
|
||||
BUILD_DEVICES:=sun8i-h3-orangepi-2
|
||||
BUILD_DEVICES:=xunlong_orangepi-2
|
||||
endef
|
||||
|
||||
define U-Boot/pangolin
|
||||
@ -195,7 +201,7 @@ endef
|
||||
define U-Boot/nanopi_neo_plus2
|
||||
BUILD_SUBTARGET:=cortexa53
|
||||
NAME:=NanoPi NEO Plus2 (H5)
|
||||
BUILD_DEVICES:=sun50i-h5-nanopi-neo-plus2
|
||||
BUILD_DEVICES:=friendlyarm_nanopi-neo-plus2
|
||||
DEPENDS:=+PACKAGE_u-boot-nanopi_neo_plus2:arm-trusted-firmware-sunxi
|
||||
UENV:=a64
|
||||
endef
|
||||
@ -203,7 +209,7 @@ endef
|
||||
define U-Boot/nanopi_neo2
|
||||
BUILD_SUBTARGET:=cortexa53
|
||||
NAME:=NanoPi NEO2 (H5)
|
||||
BUILD_DEVICES:=sun50i-h5-nanopi-neo2
|
||||
BUILD_DEVICES:=friendlyarm_nanopi-neo2
|
||||
DEPENDS:=+PACKAGE_u-boot-nanopi_neo2:arm-trusted-firmware-sunxi
|
||||
UENV:=a64
|
||||
endef
|
||||
@ -211,7 +217,7 @@ endef
|
||||
define U-Boot/pine64_plus
|
||||
BUILD_SUBTARGET:=cortexa53
|
||||
NAME:=Pine64 Plus A64
|
||||
BUILD_DEVICES:=sun50i-a64-pine64-plus
|
||||
BUILD_DEVICES:=pine64_pine64-plus
|
||||
DEPENDS:=+PACKAGE_u-boot-pine64_plus:arm-trusted-firmware-sunxi
|
||||
UENV:=a64
|
||||
endef
|
||||
@ -219,13 +225,13 @@ endef
|
||||
define U-Boot/Sinovoip_BPI_M2_Plus
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Bananapi M2 Plus
|
||||
BUILD_DEVICES:=sun8i-h3-bananapi-m2-plus
|
||||
BUILD_DEVICES:=sinovoip_bananapi-m2-plus
|
||||
endef
|
||||
|
||||
define U-Boot/sopine_baseboard
|
||||
BUILD_SUBTARGET:=cortexa53
|
||||
NAME:=Sopine Baseboard
|
||||
BUILD_DEVICES:=sun50i-a64-sopine-baseboard
|
||||
BUILD_DEVICES:=pine64_sopine-baseboard
|
||||
DEPENDS:=+PACKAGE_u-boot-sopine_baseboard:arm-trusted-firmware-sunxi
|
||||
UENV:=a64
|
||||
endef
|
||||
@ -234,7 +240,7 @@ endef
|
||||
define U-Boot/orangepi_zero_plus
|
||||
BUILD_SUBTARGET:=cortexa53
|
||||
NAME:=Xunlong Orange Pi Zero Plus
|
||||
BUILD_DEVICES:=sun50i-h5-orangepi-zero-plus
|
||||
BUILD_DEVICES:=xunlong_orangepi-zero-plus
|
||||
DEPENDS:=+PACKAGE_u-boot-orangepi_zero_plus:arm-trusted-firmware-sunxi
|
||||
UENV:=a64
|
||||
endef
|
||||
@ -242,7 +248,7 @@ endef
|
||||
define U-Boot/orangepi_pc2
|
||||
BUILD_SUBTARGET:=cortexa53
|
||||
NAME:=Xunlong Orange Pi PC2
|
||||
BUILD_DEVICES:=sun50i-h5-orangepi-pc2
|
||||
BUILD_DEVICES:=xunlong_orangepi-pc2
|
||||
DEPENDS:=+PACKAGE_u-boot-orangepi_pc2:arm-trusted-firmware-sunxi
|
||||
UENV:=a64
|
||||
endef
|
||||
@ -250,7 +256,7 @@ endef
|
||||
define U-Boot/Sinovoip_BPI_M2_Ultra
|
||||
BUILD_SUBTARGET:=cortexa7
|
||||
NAME:=Bananapi M2 Ultra
|
||||
BUILD_DEVICES:=sun8i-r40-bananapi-m2-ultra
|
||||
BUILD_DEVICES:=lemaker_bananapi-m2-ultra
|
||||
endef
|
||||
|
||||
UBOOT_TARGETS := \
|
||||
@ -274,6 +280,7 @@ UBOOT_TARGETS := \
|
||||
Lamobo_R1 \
|
||||
nanopi_m1_plus \
|
||||
nanopi_neo \
|
||||
nanopi_neo_air \
|
||||
nanopi_neo_plus2 \
|
||||
nanopi_neo2 \
|
||||
orangepi_zero \
|
||||
|
@ -64,92 +64,92 @@ define Download/ct-firmware-htt
|
||||
URL_FILE:=$($(1)_FIRMWARE_FILE_CT_HTT)
|
||||
endef
|
||||
|
||||
QCA988X_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-22.bin.lede.012
|
||||
QCA988X_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-22.bin.lede.013
|
||||
define Download/ath10k-firmware-qca988x-ct
|
||||
$(call Download/ct-firmware,QCA988X,)
|
||||
HASH:=3b2c584f7070c3e286ce27a370cc181d70b45f9cdaa462fb4f44c6c20d2ee8c1
|
||||
HASH:=19db86003509dedb8ace339c183813ca637d65af24d00666411d1590efe33e13
|
||||
endef
|
||||
$(eval $(call Download,ath10k-firmware-qca988x-ct))
|
||||
|
||||
QCA988X_FIRMWARE_FILE_CT_HTT:=firmware-2-ct-full-htt-mgt-community-22.bin.lede.012
|
||||
QCA988X_FIRMWARE_FILE_CT_HTT:=firmware-2-ct-full-htt-mgt-community-22.bin.lede.013
|
||||
define Download/ath10k-firmware-qca988x-ct-htt
|
||||
$(call Download/ct-firmware-htt,QCA988X,)
|
||||
HASH:=a7042b2c90de82b21e87f243411b6fb12142bb4fb28266ea92cdf3101557b6de
|
||||
HASH:=454e67dab545e720369a07be2fee16de008c76db4ab3119e7760bf9f7504c066
|
||||
endef
|
||||
$(eval $(call Download,ath10k-firmware-qca988x-ct-htt))
|
||||
|
||||
|
||||
QCA9887_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-22.bin.lede.012
|
||||
QCA9887_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-22.bin.lede.013
|
||||
define Download/ath10k-firmware-qca9887-ct
|
||||
$(call Download/ct-firmware,QCA9887,ath10k-9887)
|
||||
HASH:=c3f891b2cd4e225e1c635a328af3dce94481b096432020e445f71144dda749d5
|
||||
HASH:=b3c738328427e124701a5735d65cde0f60e4172ae5bc23b00e5b16df7995dbd4
|
||||
endef
|
||||
$(eval $(call Download,ath10k-firmware-qca9887-ct))
|
||||
|
||||
QCA9887_FIRMWARE_FILE_CT_HTT:=firmware-2-ct-full-htt-mgt-community-22.bin.lede.012
|
||||
QCA9887_FIRMWARE_FILE_CT_HTT:=firmware-2-ct-full-htt-mgt-community-22.bin.lede.013
|
||||
define Download/ath10k-firmware-qca9887-ct-htt
|
||||
$(call Download/ct-firmware-htt,QCA9887,ath10k-9887)
|
||||
HASH:=f5e9825279d590a2362f44aef4ced345376cccd65d9b826c131d4dbcef4e689c
|
||||
HASH:=4432ccee23133bbaa4a5552e50a1e7e889b257362603e05530e751b67c29b7b5
|
||||
endef
|
||||
$(eval $(call Download,ath10k-firmware-qca9887-ct-htt))
|
||||
|
||||
|
||||
QCA99X0_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.012
|
||||
QCA99X0_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.013
|
||||
define Download/ath10k-firmware-qca99x0-ct
|
||||
$(call Download/ct-firmware,QCA99X0,ath10k-10-4b)
|
||||
HASH:=4b90fa91dcab68350fe695b3c918cb9a4fb09c2b419519b8b84b71da4cfde5e8
|
||||
HASH:=6fa74a3fc87cba97dbc4a7213b760f8d997cd9c5f11900d47d387b23764cf20a
|
||||
endef
|
||||
$(eval $(call Download,ath10k-firmware-qca99x0-ct))
|
||||
|
||||
QCA99X0_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-12.bin-lede.012
|
||||
QCA99X0_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-12.bin-lede.013
|
||||
define Download/ath10k-firmware-qca99x0-ct-htt
|
||||
$(call Download/ct-firmware-htt,QCA99X0,ath10k-10-4b)
|
||||
HASH:=6dd40233fe99d99c69781d6514cf9ba7862b3f66c647f7921ca8be6100799986
|
||||
HASH:=68e92820c51270eba4f68b24654c4a9408902b2600762b70204f4cb5419bb714
|
||||
endef
|
||||
$(eval $(call Download,ath10k-firmware-qca99x0-ct-htt))
|
||||
|
||||
|
||||
QCA9984_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.012
|
||||
QCA9984_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.013
|
||||
define Download/ath10k-firmware-qca9984-ct
|
||||
$(call Download/ct-firmware,QCA9984,ath10k-9984-10-4b)
|
||||
HASH:=2551f5c0bfa6c1b1222bd9452e14f60b8e29c8c0fe85de8af95393f31d544ea3
|
||||
HASH:=08aeb883bd2d9258e8f1907cca8a0d2eda1c559a66e228dadffd6798f6877c7d
|
||||
endef
|
||||
$(eval $(call Download,ath10k-firmware-qca9984-ct))
|
||||
|
||||
QCA9984_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-12.bin-lede.012
|
||||
QCA9984_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-12.bin-lede.013
|
||||
define Download/ath10k-firmware-qca9984-ct-htt
|
||||
$(call Download/ct-firmware-htt,QCA9984,ath10k-9984-10-4b)
|
||||
HASH:=90f947257e1f42496b22cbdd29be99fbc8ea8700045b4ed2380acc980b4c247b
|
||||
HASH:=38ed59a2b3c66c10926706a21ae2d3aeaf83e589f19345a8f48d6520522e4fde
|
||||
endef
|
||||
$(eval $(call Download,ath10k-firmware-qca9984-ct-htt))
|
||||
|
||||
|
||||
QCA4019_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.012
|
||||
QCA4019_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.013
|
||||
define Download/ath10k-firmware-qca4019-ct
|
||||
$(call Download/ct-firmware,QCA4019,ath10k-4019-10-4b)
|
||||
HASH:=cd85fc9df8b3652f7b12c2ab745b2a9691dca5ca38f8d65a02003e938ad8b570
|
||||
HASH:=feca75fe89af9a3e998047f85ff3428676f4d574b770d51773bb419d0dd98e5a
|
||||
endef
|
||||
$(eval $(call Download,ath10k-firmware-qca4019-ct))
|
||||
|
||||
QCA4019_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-12.bin-lede.012
|
||||
QCA4019_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-12.bin-lede.013
|
||||
define Download/ath10k-firmware-qca4019-ct-htt
|
||||
$(call Download/ct-firmware-htt,QCA4019,ath10k-4019-10-4b)
|
||||
HASH:=67a923cda6ec3936ef23ec6c30c80dfc9bfd2cee73a142d2e308e8f035b8ed3a
|
||||
HASH:=6a4977689343f43edd934823512f031fd1a026e872004343b9952077f9607cb0
|
||||
endef
|
||||
$(eval $(call Download,ath10k-firmware-qca4019-ct-htt))
|
||||
|
||||
|
||||
QCA9888_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.012
|
||||
QCA9888_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.013
|
||||
define Download/ath10k-firmware-qca9888-ct
|
||||
$(call Download/ct-firmware,QCA9888,ath10k-9888-10-4b)
|
||||
HASH:=4bdb71b50c68f1a07c88d21f84a6c054fe1b8cb5bacd089a6b9f0a56448535d3
|
||||
HASH:=d6a59c17bfbec1abc8498762d9f00b2449cab352feb8bef8b621771168376dbf
|
||||
endef
|
||||
$(eval $(call Download,ath10k-firmware-qca9888-ct))
|
||||
|
||||
QCA9888_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-12.bin-lede.012
|
||||
QCA9888_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-12.bin-lede.013
|
||||
define Download/ath10k-firmware-qca9888-ct-htt
|
||||
$(call Download/ct-firmware-htt,QCA9888,ath10k-9888-10-4b)
|
||||
HASH:=e1f0242a91af58ec5628bb4f7c015f6c8dba55f92e2813f8f0b97c86ec496d2d
|
||||
HASH:=fe242c0d56494975d7a1aeb6969d90cc21cb133fba99040d4da7a25fdb90d92c
|
||||
endef
|
||||
$(eval $(call Download,ath10k-firmware-qca9888-ct-htt))
|
||||
|
||||
|
@ -19,6 +19,8 @@ NEWAPLIST=
|
||||
OLDAPLIST=
|
||||
NEWSPLIST=
|
||||
OLDSPLIST=
|
||||
NEWUMLIST=
|
||||
OLDUMLIST=
|
||||
|
||||
drv_mac80211_init_device_config() {
|
||||
hostapd_common_add_device_config
|
||||
@ -666,6 +668,8 @@ mac80211_setup_adhoc() {
|
||||
local enable=$1
|
||||
json_get_vars bssid ssid key mcast_rate
|
||||
|
||||
NEWUMLIST="${NEWUMLIST}$ifname "
|
||||
|
||||
[ "$enable" = 0 ] && {
|
||||
ip link set dev "$ifname" down
|
||||
return 0
|
||||
@ -712,6 +716,8 @@ mac80211_setup_mesh() {
|
||||
local enable=$1
|
||||
json_get_vars ssid mesh_id mcast_rate
|
||||
|
||||
NEWUMLIST="${NEWUMLIST}$ifname "
|
||||
|
||||
[ "$enable" = 0 ] && {
|
||||
ip link set dev "$ifname" down
|
||||
return 0
|
||||
@ -800,7 +806,7 @@ mac80211_vap_cleanup() {
|
||||
local vaps="$2"
|
||||
|
||||
for wdev in $vaps; do
|
||||
ubus call ${service}.${phy} config_remove "{\"iface\":\"$wdev\"}"
|
||||
[ "$service" != "none" ] && ubus call ${service}.${phy} config_remove "{\"iface\":\"$wdev\"}"
|
||||
ip link set dev "$wdev" down 2>/dev/null
|
||||
iw dev "$wdev" del
|
||||
done
|
||||
@ -813,6 +819,7 @@ mac80211_interface_cleanup() {
|
||||
|
||||
mac80211_vap_cleanup hostapd "${primary_ap}"
|
||||
mac80211_vap_cleanup wpa_supplicant "$(uci -q -P /var/state get wireless._${phy}.splist)"
|
||||
mac80211_vap_cleanup none "$(uci -q -P /var/state get wireless._${phy}.umlist)"
|
||||
}
|
||||
|
||||
mac80211_set_noscan() {
|
||||
@ -845,6 +852,28 @@ drv_mac80211_setup() {
|
||||
wireless_set_data phy="$phy"
|
||||
}
|
||||
|
||||
OLDAPLIST=$(uci -q -P /var/state get wireless._${phy}.aplist)
|
||||
OLDSPLIST=$(uci -q -P /var/state get wireless._${phy}.splist)
|
||||
OLDUMLIST=$(uci -q -P /var/state get wireless._${phy}.umlist)
|
||||
|
||||
local wdev
|
||||
local cwdev
|
||||
local found
|
||||
|
||||
for wdev in $(list_phy_interfaces "$phy"); do
|
||||
found=0
|
||||
for cwdev in $OLDAPLIST $OLDSPLIST $OLDUMLIST; do
|
||||
if [ "$wdev" = "$cwdev" ]; then
|
||||
found=1
|
||||
break
|
||||
fi
|
||||
done
|
||||
if [ "$found" = "0" ]; then
|
||||
ip link set dev "$wdev" down
|
||||
iw dev "$wdev" del
|
||||
fi
|
||||
done
|
||||
|
||||
# convert channel to frequency
|
||||
[ "$auto_channel" -gt 0 ] || freq="$(get_freq "$phy" "$channel")"
|
||||
|
||||
@ -896,8 +925,7 @@ drv_mac80211_setup() {
|
||||
for_each_interface "sta adhoc mesh monitor" mac80211_prepare_vif
|
||||
NEWAPLIST=
|
||||
for_each_interface "ap" mac80211_prepare_vif
|
||||
OLDAPLIST=$(uci -q -P /var/state get wireless._${phy}.aplist)
|
||||
NEW_MD5=$(md5sum ${hostapd_conf_file})
|
||||
NEW_MD5=$(test -e "${hostapd_conf_file}" && md5sum ${hostapd_conf_file})
|
||||
OLD_MD5=$(uci -q -P /var/state get wireless._${phy}.md5)
|
||||
if [ "${NEWAPLIST}" != "${OLDAPLIST}" ]; then
|
||||
mac80211_vap_cleanup hostapd "${OLDAPLIST}"
|
||||
@ -912,7 +940,10 @@ drv_mac80211_setup() {
|
||||
}
|
||||
else
|
||||
add_ap=1
|
||||
ubus wait_for hostapd.$phy
|
||||
ubus call hostapd.${phy} config_add "{\"iface\":\"$primary_ap\", \"config\":\"${hostapd_conf_file}\"}"
|
||||
local hostapd_pid=$(ubus call service list '{"name": "hostapd"}' | jsonfilter -l 1 -e "@['hostapd'].instances['hostapd-${phy}'].pid")
|
||||
wireless_add_process "$hostapd_pid" "/usr/sbin/hostapd" 1
|
||||
fi
|
||||
ret="$?"
|
||||
[ "$ret" != 0 ] && {
|
||||
@ -927,10 +958,12 @@ drv_mac80211_setup() {
|
||||
for_each_interface "ap" mac80211_setup_vif
|
||||
|
||||
NEWSPLIST=
|
||||
OLDSPLIST=$(uci -q -P /var/state get wireless._${phy}.splist)
|
||||
NEWUMLIST=
|
||||
|
||||
for_each_interface "sta adhoc mesh monitor" mac80211_setup_vif
|
||||
|
||||
uci -q -P /var/state set wireless._${phy}.splist="${NEWSPLIST}"
|
||||
uci -q -P /var/state set wireless._${phy}.umlist="${NEWUMLIST}"
|
||||
|
||||
local foundvap
|
||||
local dropvap=""
|
||||
@ -945,6 +978,15 @@ drv_mac80211_setup() {
|
||||
wireless_set_up
|
||||
}
|
||||
|
||||
list_phy_interfaces() {
|
||||
local phy="$1"
|
||||
if [ -d "/sys/class/ieee80211/${phy}/device/net" ]; then
|
||||
ls "/sys/class/ieee80211/${phy}/device/net" 2>/dev/null;
|
||||
else
|
||||
ls "/sys/class/ieee80211/${phy}/device" 2>/dev/null | grep net: | sed -e 's,net:,,g'
|
||||
fi
|
||||
}
|
||||
|
||||
drv_mac80211_teardown() {
|
||||
wireless_process_kill_all
|
||||
|
||||
|
@ -394,3 +394,8 @@ CONFIG_TLS=internal
|
||||
# Services can connect to the bus and provide methods
|
||||
# that can be called by other services or clients.
|
||||
CONFIG_UBUS=y
|
||||
|
||||
# OpenWrt patch 380-disable-ctrl-iface-mib.patch
|
||||
# leads to the MIB only being compiled in if
|
||||
# CONFIG_CTRL_IFACE_MIB is enabled.
|
||||
#CONFIG_CTRL_IFACE_MIB=y
|
||||
|
@ -394,3 +394,8 @@ CONFIG_TAXONOMY=y
|
||||
# Services can connect to the bus and provide methods
|
||||
# that can be called by other services or clients.
|
||||
CONFIG_UBUS=y
|
||||
|
||||
# OpenWrt patch 380-disable-ctrl-iface-mib.patch
|
||||
# leads to the MIB only being compiled in if
|
||||
# CONFIG_CTRL_IFACE_MIB is enabled.
|
||||
CONFIG_CTRL_IFACE_MIB=y
|
||||
|
@ -394,3 +394,8 @@ CONFIG_TLS=internal
|
||||
# Services can connect to the bus and provide methods
|
||||
# that can be called by other services or clients.
|
||||
CONFIG_UBUS=y
|
||||
|
||||
# OpenWrt patch 380-disable-ctrl-iface-mib.patch
|
||||
# leads to the MIB only being compiled in if
|
||||
# CONFIG_CTRL_IFACE_MIB is enabled.
|
||||
#CONFIG_CTRL_IFACE_MIB=y
|
||||
|
@ -1,14 +1,46 @@
|
||||
#!/bin/sh
|
||||
|
||||
[ ${ACTION} = "remove" -a -n "${DEVICENAME}" ] && {
|
||||
kill $(cat /var/run/hostapd-${DEVICENAME}.pid)
|
||||
rm -rf /var/run/hostapd-${DEVICENAME}.pid /var/run/hostapd-${DEVICENAME}/
|
||||
kill $(cat /var/run/wpa_supplicant-${DEVICENAME}.pid)
|
||||
rm -rf /var/run/wpa_supplicant-${DEVICENAME}.pid /var/run/wpa_supplicant-${DEVICENAME}/
|
||||
initscript="$0"
|
||||
|
||||
. /lib/functions.sh
|
||||
. /lib/functions/procd.sh
|
||||
|
||||
cd /sys/class/ieee80211
|
||||
|
||||
procd_lock() {
|
||||
return 0
|
||||
}
|
||||
|
||||
[ ${ACTION} = "add" -a -n "${DEVICENAME}" ] && {
|
||||
/usr/sbin/hostapd -s -n ${DEVICENAME} -P /var/run/hostapd-${DEVICENAME}.pid -g /var/run/hostapd-${DEVICENAME}/global -B &
|
||||
mkdir -p /var/run/wpa_supplicant-${DEVICENAME}
|
||||
/usr/sbin/wpa_supplicant -s -n ${DEVICENAME} -P /var/run/wpa_supplicant-${DEVICENAME}.pid -g /var/run/wpa_supplicant-${DEVICENAME}/global -B &
|
||||
service_triggers() {
|
||||
return 0
|
||||
}
|
||||
|
||||
service_data() {
|
||||
return 0
|
||||
}
|
||||
|
||||
procd_open_service hostapd
|
||||
|
||||
for phy in phy*; do
|
||||
[ -d "$phy" ] || continue
|
||||
|
||||
mkdir -p /var/run/wpa_supplicant-$phy /var/run/hostapd-$phy
|
||||
|
||||
if [ -x "/usr/sbin/hostapd" ]; then
|
||||
procd_open_instance hostapd-$phy
|
||||
procd_set_param command /usr/sbin/hostapd -s -n $phy -g /var/run/hostapd-${phy}/global
|
||||
procd_set_param CREATE_TIME="$(date -r $phy)" # force restart on recreated phy
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
fi
|
||||
|
||||
if [ -x "/usr/sbin/wpa_supplicant" ]; then
|
||||
procd_open_instance supplicant-$phy
|
||||
procd_set_param command /usr/sbin/wpa_supplicant -s -n $phy -g /var/run/wpa_supplicant-${phy}/global
|
||||
procd_set_param CREATE_TIME="$(date -r $phy)" # force restart on recreated phy
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
fi
|
||||
done
|
||||
|
||||
procd_close_service set
|
||||
|
@ -958,6 +958,7 @@ wpa_supplicant_run() {
|
||||
|
||||
_wpa_supplicant_common "$ifname"
|
||||
|
||||
ubus wait_for wpa_supplicant.$phy
|
||||
ubus call wpa_supplicant.$phy config_add "{ \
|
||||
\"driver\": \"${_w_driver:-wext}\", \"ctrl\": \"$_rpath\", \
|
||||
\"iface\": \"$ifname\", \"config\": \"$_config\" \
|
||||
@ -969,6 +970,9 @@ wpa_supplicant_run() {
|
||||
|
||||
[ "$ret" != 0 ] && wireless_setup_vif_failed WPA_SUPPLICANT_FAILED
|
||||
|
||||
local supplicant_pid=$(ubus call service list '{"name": "hostapd"}' | jsonfilter -l 1 -e "@['hostapd'].instances['supplicant-${phy}'].pid")
|
||||
wireless_add_process "$supplicant_pid" "/usr/sbin/wpa_supplicant" 1
|
||||
|
||||
return $ret
|
||||
}
|
||||
|
||||
|
@ -618,3 +618,8 @@ CONFIG_GETRANDOM=y
|
||||
# Services can connect to the bus and provide methods
|
||||
# that can be called by other services or clients.
|
||||
CONFIG_UBUS=y
|
||||
|
||||
# OpenWrt patch 380-disable-ctrl-iface-mib.patch
|
||||
# leads to the MIB only being compiled in if
|
||||
# CONFIG_CTRL_IFACE_MIB is enabled.
|
||||
#CONFIG_CTRL_IFACE_MIB=y
|
||||
|
@ -618,3 +618,8 @@ CONFIG_IBSS_RSN=y
|
||||
# Services can connect to the bus and provide methods
|
||||
# that can be called by other services or clients.
|
||||
CONFIG_UBUS=y
|
||||
|
||||
# OpenWrt patch 380-disable-ctrl-iface-mib.patch
|
||||
# leads to the MIB only being compiled in if
|
||||
# CONFIG_CTRL_IFACE_MIB is enabled.
|
||||
CONFIG_CTRL_IFACE_MIB=y
|
||||
|
@ -618,3 +618,8 @@ CONFIG_GETRANDOM=y
|
||||
# Services can connect to the bus and provide methods
|
||||
# that can be called by other services or clients.
|
||||
CONFIG_UBUS=y
|
||||
|
||||
# OpenWrt patch 380-disable-ctrl-iface-mib.patch
|
||||
# leads to the MIB only being compiled in if
|
||||
# CONFIG_CTRL_IFACE_MIB is enabled.
|
||||
#CONFIG_CTRL_IFACE_MIB=y
|
||||
|
@ -618,3 +618,8 @@ CONFIG_IBSS_RSN=y
|
||||
# Services can connect to the bus and provide methods
|
||||
# that can be called by other services or clients.
|
||||
CONFIG_UBUS=y
|
||||
|
||||
# OpenWrt patch 380-disable-ctrl-iface-mib.patch
|
||||
# leads to the MIB only being compiled in if
|
||||
# CONFIG_CTRL_IFACE_MIB is enabled.
|
||||
#CONFIG_CTRL_IFACE_MIB=y
|
||||
|
@ -87,7 +87,7 @@
|
||||
hapd->iconf = conf;
|
||||
hapd->conf = bss;
|
||||
hapd->iface = hapd_iface;
|
||||
+ if (bss->config_id)
|
||||
+ if (bss && bss->config_id)
|
||||
+ hapd->config_id = strdup(bss->config_id);
|
||||
+ else
|
||||
+ hapd->config_id = NULL;
|
||||
|
@ -223,7 +223,7 @@
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/ipv6.h>
|
||||
#include <linux/icmpv6.h>
|
||||
@@ -819,10 +820,10 @@ static void tcp_v6_send_response(const s
|
||||
@@ -820,10 +821,10 @@ static void tcp_v6_send_response(const s
|
||||
topt = (__be32 *)(t1 + 1);
|
||||
|
||||
if (tsecr) {
|
||||
|
@ -315,8 +315,6 @@ CONFIG_LEDS_TRIGGER_CPU=y
|
||||
# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set
|
||||
CONFIG_LEDS_TRIGGER_GPIO=y
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
|
||||
CONFIG_LEGACY_PTYS=y
|
||||
CONFIG_LEGACY_PTY_COUNT=4
|
||||
CONFIG_LIBFDT=y
|
||||
CONFIG_LOCALVERSION_AUTO=y
|
||||
CONFIG_LOG_BUF_SHIFT=16
|
||||
@ -556,10 +554,6 @@ CONFIG_VIDEOMODE_HELPERS=y
|
||||
CONFIG_VIDEO_DEV=y
|
||||
CONFIG_VIDEO_V4L2=y
|
||||
CONFIG_VM_EVENT_COUNTERS=y
|
||||
CONFIG_VT=y
|
||||
CONFIG_VT_CONSOLE=y
|
||||
CONFIG_VT_CONSOLE_SLEEP=y
|
||||
# CONFIG_VT_HW_CONSOLE_BINDING is not set
|
||||
CONFIG_WATCHDOG_CORE=y
|
||||
# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -47,7 +47,7 @@
|
||||
usb {
|
||||
label = "buffalo:green:usb";
|
||||
gpios = <&ath9k0 3 GPIO_ACTIVE_LOW>;
|
||||
trigger-sources = <&usb_ochi_port>, <&usb_echi_port>;
|
||||
trigger-sources = <&usb_ohci_port>, <&usb_ehci_port>;
|
||||
linux,default-trigger = "usbport";
|
||||
};
|
||||
|
||||
@ -180,7 +180,7 @@
|
||||
#size-cells = <0>;
|
||||
status = "okay";
|
||||
|
||||
usb_ochi_port: port@1 {
|
||||
usb_ohci_port: port@1 {
|
||||
reg = <1>;
|
||||
#trigger-source-cells = <0>;
|
||||
};
|
||||
@ -191,7 +191,7 @@
|
||||
#size-cells = <0>;
|
||||
status = "okay";
|
||||
|
||||
usb_echi_port: port@1 {
|
||||
usb_ehci_port: port@1 {
|
||||
reg = <1>;
|
||||
#trigger-source-cells = <0>;
|
||||
};
|
||||
|
@ -34,7 +34,7 @@
|
||||
usb {
|
||||
label = "d-link:blue:usb";
|
||||
gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
|
||||
trigger-sources = <&usb_ochi_port>, <&usb_echi_port>;
|
||||
trigger-sources = <&usb_ohci_port>, <&usb_ehci_port>;
|
||||
linux,default-trigger = "usbport";
|
||||
};
|
||||
|
||||
@ -123,7 +123,7 @@
|
||||
#size-cells = <0>;
|
||||
status = "okay";
|
||||
|
||||
usb_ochi_port: port@1 {
|
||||
usb_ohci_port: port@1 {
|
||||
reg = <1>;
|
||||
#trigger-source-cells = <0>;
|
||||
};
|
||||
@ -134,7 +134,7 @@
|
||||
#size-cells = <0>;
|
||||
status = "okay";
|
||||
|
||||
usb_echi_port: port@1 {
|
||||
usb_ehci_port: port@1 {
|
||||
reg = <1>;
|
||||
#trigger-source-cells = <0>;
|
||||
};
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
@ -32,7 +31,7 @@
|
||||
usb_led {
|
||||
label = "netgear:green:usb";
|
||||
resets = <&rst 12>;
|
||||
trigger-sources = <&usb_ochi_port>, <&usb_echi_port>;
|
||||
trigger-sources = <&usb_ohci_port>, <&usb_ehci_port>;
|
||||
linux,default-trigger = "usbport";
|
||||
};
|
||||
};
|
||||
@ -134,7 +133,7 @@
|
||||
#size-cells = <0>;
|
||||
status = "okay";
|
||||
|
||||
usb_ochi_port: port@1 {
|
||||
usb_ohci_port: port@1 {
|
||||
reg = <1>;
|
||||
#trigger-source-cells = <0>;
|
||||
};
|
||||
@ -145,7 +144,7 @@
|
||||
#size-cells = <0>;
|
||||
status = "okay";
|
||||
|
||||
usb_echi_port: port@1 {
|
||||
usb_ehci_port: port@1 {
|
||||
reg = <1>;
|
||||
#trigger-source-cells = <0>;
|
||||
};
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
@ -86,7 +85,7 @@
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
usb_ochi_port: port@1 {
|
||||
usb_ohci_port: port@1 {
|
||||
reg = <1>;
|
||||
#trigger-source-cells = <0>;
|
||||
};
|
||||
@ -97,7 +96,7 @@
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
usb_echi_port: port@1 {
|
||||
usb_ehci_port: port@1 {
|
||||
reg = <1>;
|
||||
#trigger-source-cells = <0>;
|
||||
};
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include "ar9344_tplink_cpe.dtsi"
|
||||
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include "ar9344_tplink_cpe.dtsi"
|
||||
|
||||
|
@ -0,0 +1,9 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include "ar9344_tplink_tl-wdr4300.dtsi"
|
||||
|
||||
/ {
|
||||
model = "TP-Link TL-WDR4300 v1 (IL)";
|
||||
compatible = "tplink,tl-wdr4300-v1-il", "qca,ar9344";
|
||||
};
|
@ -1,4 +1,3 @@
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include "qca9533_tplink_cpexxx.dtsi"
|
||||
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include "qca9533_tplink_tl-wr841.dtsi"
|
||||
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -10,8 +10,6 @@
|
||||
* antennas and number of spatial streams.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,7 +1,5 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include "tp9343_tplink_tl-wr94x.dtsi"
|
||||
|
||||
|
@ -1,5 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
@ -212,7 +212,8 @@ ath79_setup_interfaces()
|
||||
tplink,archer-c7-v4|\
|
||||
tplink,archer-c7-v5|\
|
||||
tplink,tl-wdr3600-v1|\
|
||||
tplink,tl-wdr4300-v1)
|
||||
tplink,tl-wdr4300-v1|\
|
||||
tplink,tl-wdr4300-v1-il)
|
||||
ucidef_add_switch "switch0" \
|
||||
"0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
|
||||
;;
|
||||
|
@ -72,6 +72,7 @@ case "$FIRMWARE" in
|
||||
tplink,tl-wdr3500-v1|\
|
||||
tplink,tl-wdr3600-v1|\
|
||||
tplink,tl-wdr4300-v1|\
|
||||
tplink,tl-wdr4300-v1-il|\
|
||||
tplink,tl-wdr4900-v2|\
|
||||
winchannel,wb2000)
|
||||
caldata_extract "art" 0x5000 0x440
|
||||
|
@ -399,6 +399,17 @@ define Device/tplink_tl-wdr4300-v1
|
||||
endef
|
||||
TARGET_DEVICES += tplink_tl-wdr4300-v1
|
||||
|
||||
define Device/tplink_tl-wdr4300-v1-il
|
||||
$(Device/tplink-8mlzma)
|
||||
ATH_SOC := ar9344
|
||||
DEVICE_MODEL := TL-WDR4300
|
||||
DEVICE_VARIANT := v1 (IL)
|
||||
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
|
||||
TPLINK_HWID := 0x43008001
|
||||
SUPPORTED_DEVICES += tl-wdr4300
|
||||
endef
|
||||
TARGET_DEVICES += tplink_tl-wdr4300-v1-il
|
||||
|
||||
define Device/tplink_tl-wdr4900-v2
|
||||
$(Device/tplink-8mlzma)
|
||||
ATH_SOC := qca9558
|
||||
|
@ -36,8 +36,6 @@ endef
|
||||
define Device/ubnt
|
||||
DEVICE_VENDOR := Ubiquiti
|
||||
DEVICE_PACKAGES := kmod-usb2
|
||||
UBNT_BOARD := XM
|
||||
UBNT_VERSION := 6.0.0
|
||||
IMAGES += factory.bin
|
||||
IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
|
||||
append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | mkubntimage-split
|
||||
@ -45,53 +43,58 @@ endef
|
||||
|
||||
define Device/ubnt-bz
|
||||
$(Device/ubnt)
|
||||
IMAGE_SIZE := 7448k
|
||||
UBNT_TYPE := BZ
|
||||
UBNT_CHIP := ar7240
|
||||
ATH_SOC := ar7241
|
||||
IMAGE_SIZE := 7448k
|
||||
UBNT_BOARD := XM
|
||||
UBNT_CHIP := ar7240
|
||||
UBNT_TYPE := BZ
|
||||
UBNT_VERSION := 6.0.0
|
||||
endef
|
||||
|
||||
define Device/ubnt-wa
|
||||
$(Device/ubnt)
|
||||
IMAGE_SIZE := 15744k
|
||||
UBNT_TYPE := WA
|
||||
UBNT_CHIP := ar934x
|
||||
UBNT_BOARD := WA
|
||||
UBNT_VERSION := 8.5.0
|
||||
ATH_SOC := ar9342
|
||||
IMAGE_SIZE := 15744k
|
||||
UBNT_BOARD := WA
|
||||
UBNT_CHIP := ar934x
|
||||
UBNT_TYPE := WA
|
||||
UBNT_VERSION := 8.5.0
|
||||
endef
|
||||
|
||||
define Device/ubnt-xm
|
||||
$(Device/ubnt)
|
||||
ATH_SOC := ar7241
|
||||
DEVICE_VARIANT := XM
|
||||
DEVICE_PACKAGES += kmod-usb-ohci
|
||||
IMAGE_SIZE := 7448k
|
||||
UBNT_TYPE := XM
|
||||
UBNT_BOARD := XM
|
||||
UBNT_CHIP := ar7240
|
||||
ATH_SOC := ar7241
|
||||
UBNT_TYPE := XM
|
||||
UBNT_VERSION := 6.0.0
|
||||
KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma | uImage lzma
|
||||
endef
|
||||
|
||||
define Device/ubnt-xw
|
||||
$(Device/ubnt)
|
||||
ATH_SOC := ar9342
|
||||
DEVICE_VARIANT := XW
|
||||
IMAGE_SIZE := 7552k
|
||||
UBNT_TYPE := XW
|
||||
UBNT_CHIP := ar934x
|
||||
UBNT_BOARD := XM
|
||||
UBNT_VERSION := 6.0.4
|
||||
UBNT_CHIP := ar934x
|
||||
UBNT_REVISION := 42.$(UBNT_REVISION)
|
||||
ATH_SOC := ar9342
|
||||
UBNT_TYPE := XW
|
||||
UBNT_VERSION := 6.0.4
|
||||
endef
|
||||
|
||||
define Device/ubnt_acb-isp
|
||||
$(Device/ubnt)
|
||||
ATH_SOC := qca9533
|
||||
IMAGE_SIZE := 15744k
|
||||
DEVICE_MODEL := airCube ISP
|
||||
IMAGE_SIZE := 15744k
|
||||
UBNT_BOARD := ACB-ISP
|
||||
UBNT_TYPE := ACB
|
||||
UBNT_CHIP := qca9533
|
||||
UBNT_TYPE := ACB
|
||||
UBNT_VERSION := 6.0.0
|
||||
IMAGES := sysupgrade.bin
|
||||
endef
|
||||
TARGET_DEVICES += ubnt_acb-isp
|
||||
|
@ -214,7 +214,7 @@
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/ipv6.h>
|
||||
#include <linux/icmpv6.h>
|
||||
@@ -819,10 +820,10 @@ static void tcp_v6_send_response(const s
|
||||
@@ -820,10 +821,10 @@ static void tcp_v6_send_response(const s
|
||||
topt = (__be32 *)(t1 + 1);
|
||||
|
||||
if (tsecr) {
|
||||
|
@ -214,7 +214,7 @@
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/ipv6.h>
|
||||
#include <linux/icmpv6.h>
|
||||
@@ -836,10 +837,10 @@ static void tcp_v6_send_response(const s
|
||||
@@ -837,10 +838,10 @@ static void tcp_v6_send_response(const s
|
||||
topt = (__be32 *)(t1 + 1);
|
||||
|
||||
if (tsecr) {
|
||||
|
@ -14,7 +14,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
|
||||
|
||||
--- a/mm/page_alloc.c
|
||||
+++ b/mm/page_alloc.c
|
||||
@@ -7980,8 +7980,6 @@ int alloc_contig_range(unsigned long sta
|
||||
@@ -7977,8 +7977,6 @@ int alloc_contig_range(unsigned long sta
|
||||
|
||||
/* Make sure the range is really isolated. */
|
||||
if (test_pages_isolated(outer_start, end, false)) {
|
||||
|
@ -11,7 +11,7 @@ Signed-off-by: Noralf Tronnes <notro@tronnes.org>
|
||||
|
||||
--- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
||||
+++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c
|
||||
@@ -352,7 +352,7 @@ static const struct gpio_chip bcm2835_gp
|
||||
@@ -350,7 +350,7 @@ static const struct gpio_chip bcm2835_gp
|
||||
.get_direction = bcm2835_gpio_get_direction,
|
||||
.get = bcm2835_gpio_get,
|
||||
.set = bcm2835_gpio_set,
|
||||
|
@ -125,7 +125,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
static inline int mmc_blk_part_switch(struct mmc_card *card,
|
||||
unsigned int part_type);
|
||||
|
||||
@@ -2919,6 +2926,7 @@ static int mmc_blk_probe(struct mmc_card
|
||||
@@ -2913,6 +2920,7 @@ static int mmc_blk_probe(struct mmc_card
|
||||
{
|
||||
struct mmc_blk_data *md, *part_md;
|
||||
char cap_str[10];
|
||||
@ -133,7 +133,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
/*
|
||||
* Check that the card supports the command class(es) we need.
|
||||
@@ -2926,7 +2934,16 @@ static int mmc_blk_probe(struct mmc_card
|
||||
@@ -2920,7 +2928,16 @@ static int mmc_blk_probe(struct mmc_card
|
||||
if (!(card->csd.cmdclass & CCC_BLOCK_READ))
|
||||
return -ENODEV;
|
||||
|
||||
@ -151,7 +151,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
card->complete_wq = alloc_workqueue("mmc_complete",
|
||||
WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
|
||||
@@ -2941,9 +2958,14 @@ static int mmc_blk_probe(struct mmc_card
|
||||
@@ -2935,9 +2952,14 @@ static int mmc_blk_probe(struct mmc_card
|
||||
|
||||
string_get_size((u64)get_capacity(md->disk), 512, STRING_UNITS_2,
|
||||
cap_str, sizeof(cap_str));
|
||||
|
@ -57,7 +57,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
cfg->pwr_save = enabled;
|
||||
if (!check_vif_up(ifp->vif)) {
|
||||
|
||||
@@ -6776,12 +6778,18 @@ static s32 brcmf_translate_country_code(
|
||||
@@ -6786,12 +6788,18 @@ static s32 brcmf_translate_country_code(
|
||||
struct brcmfmac_pd_cc *country_codes;
|
||||
struct brcmfmac_pd_cc_entry *cc;
|
||||
s32 found_index;
|
||||
@ -78,7 +78,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
}
|
||||
|
||||
if ((alpha2[0] == ccreq->country_abbrev[0]) &&
|
||||
@@ -6805,10 +6813,14 @@ static s32 brcmf_translate_country_code(
|
||||
@@ -6815,10 +6823,14 @@ static s32 brcmf_translate_country_code(
|
||||
brcmf_dbg(TRACE, "No country code match found\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
@ -109,7 +109,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
||||
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
||||
@@ -608,6 +608,7 @@ BRCMF_FW_DEF(4329, "brcmfmac4329-sdio");
|
||||
@@ -614,6 +614,7 @@ BRCMF_FW_DEF(4329, "brcmfmac4329-sdio");
|
||||
BRCMF_FW_DEF(4330, "brcmfmac4330-sdio");
|
||||
BRCMF_FW_DEF(4334, "brcmfmac4334-sdio");
|
||||
BRCMF_FW_DEF(43340, "brcmfmac43340-sdio");
|
||||
@ -117,7 +117,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
BRCMF_FW_DEF(4335, "brcmfmac4335-sdio");
|
||||
BRCMF_FW_DEF(43362, "brcmfmac43362-sdio");
|
||||
BRCMF_FW_DEF(4339, "brcmfmac4339-sdio");
|
||||
@@ -628,7 +629,7 @@ static const struct brcmf_firmware_mappi
|
||||
@@ -634,7 +635,7 @@ static const struct brcmf_firmware_mappi
|
||||
BRCMF_FW_ENTRY(BRCM_CC_4330_CHIP_ID, 0xFFFFFFFF, 4330),
|
||||
BRCMF_FW_ENTRY(BRCM_CC_4334_CHIP_ID, 0xFFFFFFFF, 4334),
|
||||
BRCMF_FW_ENTRY(BRCM_CC_43340_CHIP_ID, 0xFFFFFFFF, 43340),
|
||||
|
@ -13,7 +13,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
|
||||
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
|
||||
@@ -6844,6 +6844,8 @@ static void brcmf_cfg80211_reg_notifier(
|
||||
@@ -6854,6 +6854,8 @@ static void brcmf_cfg80211_reg_notifier(
|
||||
/* ignore non-ISO3166 country codes */
|
||||
for (i = 0; i < 2; i++)
|
||||
if (req->alpha2[i] < 'A' || req->alpha2[i] > 'Z') {
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
|
||||
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
|
||||
@@ -6844,8 +6844,6 @@ static void brcmf_cfg80211_reg_notifier(
|
||||
@@ -6854,8 +6854,6 @@ static void brcmf_cfg80211_reg_notifier(
|
||||
/* ignore non-ISO3166 country codes */
|
||||
for (i = 0; i < 2; i++)
|
||||
if (req->alpha2[i] < 'A' || req->alpha2[i] > 'Z') {
|
||||
|
@ -18,7 +18,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||
@@ -2149,7 +2149,7 @@ static void bcmgenet_init_tx_ring(struct
|
||||
@@ -2147,7 +2147,7 @@ static void bcmgenet_init_tx_ring(struct
|
||||
|
||||
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_PROD_INDEX);
|
||||
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_CONS_INDEX);
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
|
||||
--- a/drivers/net/ethernet/broadcom/genet/bcmmii.c
|
||||
+++ b/drivers/net/ethernet/broadcom/genet/bcmmii.c
|
||||
@@ -285,6 +285,8 @@ int bcmgenet_mii_probe(struct net_device
|
||||
@@ -318,6 +318,8 @@ int bcmgenet_mii_probe(struct net_device
|
||||
/* Communicate the integrated PHY revision */
|
||||
if (priv->internal_phy)
|
||||
phy_flags = priv->gphy_rev;
|
||||
|
@ -28,7 +28,7 @@ compatibility for the device-tree configuration has been retained.
|
||||
#define FSEL_REG(p) (GPFSEL0 + (((p) / 10) * 4))
|
||||
#define FSEL_SHIFT(p) (((p) % 10) * 3)
|
||||
#define GPIO_REG_OFFSET(p) ((p) / 32)
|
||||
@@ -917,21 +923,45 @@ static void bcm2835_pull_config_set(stru
|
||||
@@ -915,21 +921,45 @@ static void bcm2835_pull_config_set(stru
|
||||
unsigned int pin, unsigned int arg)
|
||||
{
|
||||
u32 off, bit;
|
||||
|
@ -170,7 +170,8 @@ configure_by_model() {
|
||||
;;
|
||||
|
||||
"Asus RT-N16"* | \
|
||||
"Linksys E3000 V1")
|
||||
"Linksys E3000 V1" | \
|
||||
"Netgear WNR3500L")
|
||||
ucidef_add_switch "switch0" \
|
||||
"0:wan" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "8@eth0"
|
||||
;;
|
||||
|
@ -1,20 +0,0 @@
|
||||
From 95be54e285767c5209bb51df923373f78b8c4099 Mon Sep 17 00:00:00 2001
|
||||
From: Linus Walleij <linus.walleij@linaro.org>
|
||||
Date: Mon, 16 Jul 2018 23:36:30 +0200
|
||||
Subject: [PATCH 04/18] boot sq201 from sda1
|
||||
|
||||
---
|
||||
arch/arm/boot/dts/gemini-sq201.dts | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/gemini-sq201.dts
|
||||
+++ b/arch/arm/boot/dts/gemini-sq201.dts
|
||||
@@ -20,7 +20,7 @@
|
||||
};
|
||||
|
||||
chosen {
|
||||
- bootargs = "console=ttyS0,115200n8";
|
||||
+ bootargs = "console=ttyS0,115200n8 root=/dev/sda1 rw rootwait";
|
||||
stdout-path = &uart0;
|
||||
};
|
||||
|
@ -121,7 +121,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||
/* 16MB of flash */
|
||||
reg = <0x30000000 0x01000000>;
|
||||
|
||||
@@ -184,9 +177,7 @@
|
||||
@@ -157,9 +150,7 @@
|
||||
mux {
|
||||
function = "gpio0";
|
||||
groups = "gpio0fgrp",
|
||||
@ -132,7 +132,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||
};
|
||||
};
|
||||
/*
|
||||
@@ -199,6 +190,18 @@
|
||||
@@ -172,6 +163,18 @@
|
||||
groups = "gpio1dgrp";
|
||||
};
|
||||
};
|
||||
|
@ -19,50 +19,8 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||
};
|
||||
|
||||
chosen {
|
||||
- bootargs = "console=ttyS0,115200n8 root=/dev/sda1 rw rootwait";
|
||||
- bootargs = "console=ttyS0,115200n8 root=/dev/mtdblock2 rw rootfstype=squashfs,jffs2 rootwait";
|
||||
+ bootargs = "console=ttyS0,115200n8 root=/dev/mtdblock3 rw rootfstype=squashfs,jffs2 rootwait";
|
||||
stdout-path = &uart0;
|
||||
};
|
||||
|
||||
@@ -131,37 +131,10 @@
|
||||
/* 16MB of flash */
|
||||
reg = <0x30000000 0x01000000>;
|
||||
|
||||
- partition@0 {
|
||||
- label = "RedBoot";
|
||||
- reg = <0x00000000 0x00120000>;
|
||||
- read-only;
|
||||
- };
|
||||
- partition@120000 {
|
||||
- label = "Kernel";
|
||||
- reg = <0x00120000 0x00200000>;
|
||||
- };
|
||||
- partition@320000 {
|
||||
- label = "Ramdisk";
|
||||
- reg = <0x00320000 0x00600000>;
|
||||
- };
|
||||
- partition@920000 {
|
||||
- label = "Application";
|
||||
- reg = <0x00920000 0x00600000>;
|
||||
- };
|
||||
- partition@f20000 {
|
||||
- label = "VCTL";
|
||||
- reg = <0x00f20000 0x00020000>;
|
||||
- read-only;
|
||||
- };
|
||||
- partition@f40000 {
|
||||
- label = "CurConf";
|
||||
- reg = <0x00f40000 0x000a0000>;
|
||||
- read-only;
|
||||
- };
|
||||
- partition@fe0000 {
|
||||
- label = "FIS directory";
|
||||
- reg = <0x00fe0000 0x00020000>;
|
||||
- read-only;
|
||||
+ partitions {
|
||||
+ compatible = "redboot-fis";
|
||||
+ /* Eraseblock at 0xfe0000 */
|
||||
+ fis-index-block = <0x1fc>;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -30,7 +30,7 @@ Signed-off-by: Johan Hovold <johan@kernel.org>
|
||||
|
||||
--- a/drivers/usb/serial/option.c
|
||||
+++ b/drivers/usb/serial/option.c
|
||||
@@ -1965,7 +1965,8 @@ static const struct usb_device_id option
|
||||
@@ -1968,7 +1968,8 @@ static const struct usb_device_id option
|
||||
{ USB_DEVICE_INTERFACE_CLASS(0x2001, 0x7d01, 0xff) }, /* D-Link DWM-156 (variant) */
|
||||
{ USB_DEVICE_INTERFACE_CLASS(0x2001, 0x7d02, 0xff) },
|
||||
{ USB_DEVICE_INTERFACE_CLASS(0x2001, 0x7d03, 0xff) },
|
||||
|
@ -55,7 +55,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
|
||||
#include "mtdcore.h"
|
||||
|
||||
@@ -894,6 +895,92 @@ static int mtd_part_do_parse(struct mtd_
|
||||
@@ -919,6 +920,92 @@ static int mtd_part_do_parse(struct mtd_
|
||||
}
|
||||
|
||||
/**
|
||||
@ -148,7 +148,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
* parse_mtd_partitions - parse MTD partitions
|
||||
* @master: the master partition (describes whole MTD device)
|
||||
* @types: names of partition parsers to try or %NULL
|
||||
@@ -925,19 +1012,30 @@ int parse_mtd_partitions(struct mtd_info
|
||||
@@ -950,19 +1037,30 @@ int parse_mtd_partitions(struct mtd_info
|
||||
types = default_mtd_part_types;
|
||||
|
||||
for ( ; *types; types++) {
|
||||
|
@ -22,7 +22,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
|
||||
--- a/drivers/mtd/mtdpart.c
|
||||
+++ b/drivers/mtd/mtdpart.c
|
||||
@@ -940,7 +940,7 @@ static int mtd_part_of_parse(struct mtd_
|
||||
@@ -965,7 +965,7 @@ static int mtd_part_of_parse(struct mtd_
|
||||
struct device_node *np;
|
||||
struct property *prop;
|
||||
const char *compat;
|
||||
@ -31,7 +31,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
int ret, err = 0;
|
||||
|
||||
np = of_get_child_by_name(mtd_get_of_node(master), "partitions");
|
||||
@@ -960,7 +960,7 @@ static int mtd_part_of_parse(struct mtd_
|
||||
@@ -985,7 +985,7 @@ static int mtd_part_of_parse(struct mtd_
|
||||
of_node_put(np);
|
||||
|
||||
/*
|
||||
|
@ -98,7 +98,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
}
|
||||
|
||||
static struct mtd_part *allocate_partition(struct mtd_info *parent,
|
||||
@@ -981,30 +968,27 @@ static int mtd_part_of_parse(struct mtd_
|
||||
@@ -1006,30 +993,27 @@ static int mtd_part_of_parse(struct mtd_
|
||||
}
|
||||
|
||||
/**
|
||||
@ -136,7 +136,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
struct mtd_part_parser *parser;
|
||||
int ret, err = 0;
|
||||
|
||||
@@ -1018,7 +1002,7 @@ int parse_mtd_partitions(struct mtd_info
|
||||
@@ -1043,7 +1027,7 @@ int parse_mtd_partitions(struct mtd_info
|
||||
* handled in a separated function.
|
||||
*/
|
||||
if (!strcmp(*types, "ofpart")) {
|
||||
@ -145,7 +145,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
} else {
|
||||
pr_debug("%s: parsing partitions %s\n", master->name,
|
||||
*types);
|
||||
@@ -1029,13 +1013,17 @@ int parse_mtd_partitions(struct mtd_info
|
||||
@@ -1054,13 +1038,17 @@ int parse_mtd_partitions(struct mtd_info
|
||||
parser ? parser->name : NULL);
|
||||
if (!parser)
|
||||
continue;
|
||||
|
@ -55,9 +55,9 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
static struct mtd_part *allocate_partition(struct mtd_info *parent,
|
||||
const struct mtd_partition *part, int partno,
|
||||
uint64_t cur_offset)
|
||||
@@ -783,8 +767,8 @@ int add_mtd_partitions(struct mtd_info *
|
||||
@@ -803,8 +787,8 @@ int add_mtd_partitions(struct mtd_info *
|
||||
}
|
||||
|
||||
add_mtd_device(&slave->mtd);
|
||||
mtd_add_partition_attrs(slave);
|
||||
- if (parts[i].types)
|
||||
- mtd_parse_part(slave, parts[i].types);
|
||||
@ -66,7 +66,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
|
||||
cur_offset = slave->offset + slave->mtd.size;
|
||||
}
|
||||
@@ -860,6 +844,12 @@ static const char * const default_mtd_pa
|
||||
@@ -885,6 +869,12 @@ static const char * const default_mtd_pa
|
||||
NULL
|
||||
};
|
||||
|
||||
@ -79,7 +79,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
static int mtd_part_do_parse(struct mtd_part_parser *parser,
|
||||
struct mtd_info *master,
|
||||
struct mtd_partitions *pparts,
|
||||
@@ -930,7 +920,9 @@ static int mtd_part_of_parse(struct mtd_
|
||||
@@ -955,7 +945,9 @@ static int mtd_part_of_parse(struct mtd_
|
||||
const char *fixed = "fixed-partitions";
|
||||
int ret, err = 0;
|
||||
|
||||
@ -90,7 +90,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
of_property_for_each_string(np, "compatible", prop, compat) {
|
||||
parser = mtd_part_get_compatible_parser(compat);
|
||||
if (!parser)
|
||||
@@ -993,7 +985,8 @@ int parse_mtd_partitions(struct mtd_info
|
||||
@@ -1018,7 +1010,8 @@ int parse_mtd_partitions(struct mtd_info
|
||||
int ret, err = 0;
|
||||
|
||||
if (!types)
|
||||
|
@ -1,46 +0,0 @@
|
||||
From d62e98ed1efcaa94caa004f622944afdce5f1c3c Mon Sep 17 00:00:00 2001
|
||||
From: Gabor Juhos <juhosg@openwrt.org>
|
||||
Date: Sun, 9 Dec 2018 18:12:13 +0100
|
||||
Subject: [PATCH] ubifs: Fix default compression selection in ubifs
|
||||
|
||||
When ubifs is build without the LZO compressor and no compressor is
|
||||
given the creation of the default file system will fail. before
|
||||
selection the LZO compressor check if it is present and if not fall back
|
||||
to the zlib or none.
|
||||
|
||||
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
||||
Signed-off-by: Richard Weinberger <richard@nod.at>
|
||||
---
|
||||
fs/ubifs/sb.c | 13 ++++++++++++-
|
||||
1 file changed, 12 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/fs/ubifs/sb.c
|
||||
+++ b/fs/ubifs/sb.c
|
||||
@@ -63,6 +63,17 @@
|
||||
/* Default time granularity in nanoseconds */
|
||||
#define DEFAULT_TIME_GRAN 1000000000
|
||||
|
||||
+static int get_default_compressor(struct ubifs_info *c)
|
||||
+{
|
||||
+ if (ubifs_compr_present(c, UBIFS_COMPR_LZO))
|
||||
+ return UBIFS_COMPR_LZO;
|
||||
+
|
||||
+ if (ubifs_compr_present(c, UBIFS_COMPR_ZLIB))
|
||||
+ return UBIFS_COMPR_ZLIB;
|
||||
+
|
||||
+ return UBIFS_COMPR_NONE;
|
||||
+}
|
||||
+
|
||||
/**
|
||||
* create_default_filesystem - format empty UBI volume.
|
||||
* @c: UBIFS file-system description object
|
||||
@@ -186,7 +197,7 @@ static int create_default_filesystem(str
|
||||
if (c->mount_opts.override_compr)
|
||||
sup->default_compr = cpu_to_le16(c->mount_opts.compr_type);
|
||||
else
|
||||
- sup->default_compr = cpu_to_le16(UBIFS_COMPR_LZO);
|
||||
+ sup->default_compr = cpu_to_le16(get_default_compressor(c));
|
||||
|
||||
generate_random_uuid(sup->uuid);
|
||||
|
@ -18,7 +18,7 @@ Acked-by: Brian Norris <computersforpeace@gmail.com>
|
||||
|
||||
--- a/drivers/mtd/mtdpart.c
|
||||
+++ b/drivers/mtd/mtdpart.c
|
||||
@@ -807,6 +807,27 @@ static const char * const default_mtd_pa
|
||||
@@ -832,6 +832,27 @@ static const char * const default_mtd_pa
|
||||
NULL
|
||||
};
|
||||
|
||||
@ -46,7 +46,7 @@ Acked-by: Brian Norris <computersforpeace@gmail.com>
|
||||
/**
|
||||
* parse_mtd_partitions - parse MTD partitions
|
||||
* @master: the master partition (describes whole MTD device)
|
||||
@@ -847,16 +868,10 @@ int parse_mtd_partitions(struct mtd_info
|
||||
@@ -872,16 +893,10 @@ int parse_mtd_partitions(struct mtd_info
|
||||
parser ? parser->name : NULL);
|
||||
if (!parser)
|
||||
continue;
|
||||
|
@ -54,7 +54,7 @@ Signed-off-by: Brian Norris <computersforpeace@gmail.com>
|
||||
static struct mtd_part *allocate_partition(struct mtd_info *master,
|
||||
const struct mtd_partition *part, int partno,
|
||||
uint64_t cur_offset)
|
||||
@@ -675,6 +649,48 @@ int mtd_add_partition(struct mtd_info *m
|
||||
@@ -686,6 +660,48 @@ err_remove_part:
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mtd_add_partition);
|
||||
|
||||
@ -103,7 +103,7 @@ Signed-off-by: Brian Norris <computersforpeace@gmail.com>
|
||||
int mtd_del_partition(struct mtd_info *master, int partno)
|
||||
{
|
||||
struct mtd_part *slave, *next;
|
||||
@@ -686,12 +702,7 @@ int mtd_del_partition(struct mtd_info *m
|
||||
@@ -697,12 +713,7 @@ int mtd_del_partition(struct mtd_info *m
|
||||
(slave->mtd.index == partno)) {
|
||||
sysfs_remove_files(&slave->mtd.dev.kobj,
|
||||
mtd_partition_attrs);
|
||||
|
@ -25,7 +25,7 @@ Signed-off-by: Brian Norris <computersforpeace@gmail.com>
|
||||
|
||||
--- a/drivers/mtd/mtdpart.c
|
||||
+++ b/drivers/mtd/mtdpart.c
|
||||
@@ -660,6 +660,8 @@ static int __mtd_del_partition(struct mt
|
||||
@@ -671,6 +671,8 @@ static int __mtd_del_partition(struct mt
|
||||
{
|
||||
int err;
|
||||
|
||||
@ -34,7 +34,7 @@ Signed-off-by: Brian Norris <computersforpeace@gmail.com>
|
||||
err = del_mtd_device(&priv->mtd);
|
||||
if (err)
|
||||
return err;
|
||||
@@ -700,8 +702,6 @@ int mtd_del_partition(struct mtd_info *m
|
||||
@@ -711,8 +713,6 @@ int mtd_del_partition(struct mtd_info *m
|
||||
list_for_each_entry_safe(slave, next, &mtd_partitions, list)
|
||||
if ((slave->master == master) &&
|
||||
(slave->mtd.index == partno)) {
|
||||
|
@ -578,7 +578,7 @@ Signed-off-by: Brian Norris <computersforpeace@gmail.com>
|
||||
if (IS_ERR(new))
|
||||
return PTR_ERR(new);
|
||||
|
||||
@@ -683,7 +689,7 @@ int del_mtd_partitions(struct mtd_info *
|
||||
@@ -694,7 +700,7 @@ int del_mtd_partitions(struct mtd_info *
|
||||
|
||||
mutex_lock(&mtd_partitions_mutex);
|
||||
list_for_each_entry_safe(slave, next, &mtd_partitions, list)
|
||||
@ -587,7 +587,7 @@ Signed-off-by: Brian Norris <computersforpeace@gmail.com>
|
||||
ret = __mtd_del_partition(slave);
|
||||
if (ret < 0)
|
||||
err = ret;
|
||||
@@ -700,7 +706,7 @@ int mtd_del_partition(struct mtd_info *m
|
||||
@@ -711,7 +717,7 @@ int mtd_del_partition(struct mtd_info *m
|
||||
|
||||
mutex_lock(&mtd_partitions_mutex);
|
||||
list_for_each_entry_safe(slave, next, &mtd_partitions, list)
|
||||
@ -596,7 +596,7 @@ Signed-off-by: Brian Norris <computersforpeace@gmail.com>
|
||||
(slave->mtd.index == partno)) {
|
||||
ret = __mtd_del_partition(slave);
|
||||
break;
|
||||
@@ -933,6 +939,6 @@ uint64_t mtd_get_device_size(const struc
|
||||
@@ -958,6 +964,6 @@ uint64_t mtd_get_device_size(const struc
|
||||
if (!mtd_is_partition(mtd))
|
||||
return mtd->size;
|
||||
|
||||
|
@ -31,7 +31,7 @@ Signed-off-by: Brian Norris <computersforpeace@gmail.com>
|
||||
&parent->dev :
|
||||
parent->dev.parent;
|
||||
slave->mtd.dev.of_node = part->of_node;
|
||||
@@ -664,8 +664,17 @@ EXPORT_SYMBOL_GPL(mtd_add_partition);
|
||||
@@ -675,8 +675,17 @@ EXPORT_SYMBOL_GPL(mtd_add_partition);
|
||||
*/
|
||||
static int __mtd_del_partition(struct mtd_part *priv)
|
||||
{
|
||||
@ -49,7 +49,7 @@ Signed-off-by: Brian Norris <computersforpeace@gmail.com>
|
||||
sysfs_remove_files(&priv->mtd.dev.kobj, mtd_partition_attrs);
|
||||
|
||||
err = del_mtd_device(&priv->mtd);
|
||||
@@ -680,16 +689,16 @@ static int __mtd_del_partition(struct mt
|
||||
@@ -691,16 +700,16 @@ static int __mtd_del_partition(struct mt
|
||||
|
||||
/*
|
||||
* This function unregisters and destroy all slave MTD objects which are
|
||||
@ -69,7 +69,7 @@ Signed-off-by: Brian Norris <computersforpeace@gmail.com>
|
||||
ret = __mtd_del_partition(slave);
|
||||
if (ret < 0)
|
||||
err = ret;
|
||||
@@ -699,14 +708,14 @@ int del_mtd_partitions(struct mtd_info *
|
||||
@@ -710,14 +719,14 @@ int del_mtd_partitions(struct mtd_info *
|
||||
return err;
|
||||
}
|
||||
|
||||
@ -86,7 +86,7 @@ Signed-off-by: Brian Norris <computersforpeace@gmail.com>
|
||||
(slave->mtd.index == partno)) {
|
||||
ret = __mtd_del_partition(slave);
|
||||
break;
|
||||
@@ -939,6 +948,6 @@ uint64_t mtd_get_device_size(const struc
|
||||
@@ -964,6 +973,6 @@ uint64_t mtd_get_device_size(const struc
|
||||
if (!mtd_is_partition(mtd))
|
||||
return mtd->size;
|
||||
|
||||
|
@ -76,9 +76,9 @@ Signed-off-by: Brian Norris <computersforpeace@gmail.com>
|
||||
static struct mtd_part *allocate_partition(struct mtd_info *parent,
|
||||
const struct mtd_partition *part, int partno,
|
||||
uint64_t cur_offset)
|
||||
@@ -758,6 +787,8 @@ int add_mtd_partitions(struct mtd_info *
|
||||
@@ -778,6 +807,8 @@ int add_mtd_partitions(struct mtd_info *
|
||||
}
|
||||
|
||||
add_mtd_device(&slave->mtd);
|
||||
mtd_add_partition_attrs(slave);
|
||||
+ if (parts[i].types)
|
||||
+ mtd_parse_part(slave, parts[i].types);
|
||||
|
@ -55,7 +55,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
|
||||
#include "mtdcore.h"
|
||||
|
||||
@@ -886,6 +887,92 @@ static int mtd_part_do_parse(struct mtd_
|
||||
@@ -911,6 +912,92 @@ static int mtd_part_do_parse(struct mtd_
|
||||
}
|
||||
|
||||
/**
|
||||
@ -148,7 +148,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
* parse_mtd_partitions - parse MTD partitions
|
||||
* @master: the master partition (describes whole MTD device)
|
||||
* @types: names of partition parsers to try or %NULL
|
||||
@@ -917,19 +1004,30 @@ int parse_mtd_partitions(struct mtd_info
|
||||
@@ -942,19 +1029,30 @@ int parse_mtd_partitions(struct mtd_info
|
||||
types = default_mtd_part_types;
|
||||
|
||||
for ( ; *types; types++) {
|
||||
|
@ -22,7 +22,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
|
||||
--- a/drivers/mtd/mtdpart.c
|
||||
+++ b/drivers/mtd/mtdpart.c
|
||||
@@ -932,7 +932,7 @@ static int mtd_part_of_parse(struct mtd_
|
||||
@@ -957,7 +957,7 @@ static int mtd_part_of_parse(struct mtd_
|
||||
struct device_node *np;
|
||||
struct property *prop;
|
||||
const char *compat;
|
||||
@ -31,7 +31,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
int ret, err = 0;
|
||||
|
||||
np = of_get_child_by_name(mtd_get_of_node(master), "partitions");
|
||||
@@ -952,7 +952,7 @@ static int mtd_part_of_parse(struct mtd_
|
||||
@@ -977,7 +977,7 @@ static int mtd_part_of_parse(struct mtd_
|
||||
of_node_put(np);
|
||||
|
||||
/*
|
||||
|
@ -98,7 +98,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
}
|
||||
|
||||
static struct mtd_part *allocate_partition(struct mtd_info *parent,
|
||||
@@ -973,30 +960,27 @@ static int mtd_part_of_parse(struct mtd_
|
||||
@@ -998,30 +985,27 @@ static int mtd_part_of_parse(struct mtd_
|
||||
}
|
||||
|
||||
/**
|
||||
@ -136,7 +136,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
struct mtd_part_parser *parser;
|
||||
int ret, err = 0;
|
||||
|
||||
@@ -1010,7 +994,7 @@ int parse_mtd_partitions(struct mtd_info
|
||||
@@ -1035,7 +1019,7 @@ int parse_mtd_partitions(struct mtd_info
|
||||
* handled in a separated function.
|
||||
*/
|
||||
if (!strcmp(*types, "ofpart")) {
|
||||
@ -145,7 +145,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
} else {
|
||||
pr_debug("%s: parsing partitions %s\n", master->name,
|
||||
*types);
|
||||
@@ -1021,13 +1005,17 @@ int parse_mtd_partitions(struct mtd_info
|
||||
@@ -1046,13 +1030,17 @@ int parse_mtd_partitions(struct mtd_info
|
||||
parser ? parser->name : NULL);
|
||||
if (!parser)
|
||||
continue;
|
||||
|
@ -137,7 +137,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
--- a/drivers/net/can/c_can/c_can.c
|
||||
+++ b/drivers/net/can/c_can/c_can.c
|
||||
@@ -1079,7 +1079,7 @@ static int c_can_poll(struct napi_struct
|
||||
@@ -1105,7 +1105,7 @@ static int c_can_poll(struct napi_struct
|
||||
|
||||
end:
|
||||
if (work_done < quota) {
|
||||
@ -313,7 +313,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
}
|
||||
--- a/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
|
||||
+++ b/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
|
||||
@@ -1532,7 +1532,7 @@ static int atl1e_clean(struct napi_struc
|
||||
@@ -1534,7 +1534,7 @@ static int atl1e_clean(struct napi_struc
|
||||
/* If no Tx and not enough Rx work done, exit the polling mode */
|
||||
if (work_done < budget) {
|
||||
quit_polling:
|
||||
|
@ -55,9 +55,9 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
static struct mtd_part *allocate_partition(struct mtd_info *parent,
|
||||
const struct mtd_partition *part, int partno,
|
||||
uint64_t cur_offset)
|
||||
@@ -775,8 +759,8 @@ int add_mtd_partitions(struct mtd_info *
|
||||
@@ -795,8 +779,8 @@ int add_mtd_partitions(struct mtd_info *
|
||||
}
|
||||
|
||||
add_mtd_device(&slave->mtd);
|
||||
mtd_add_partition_attrs(slave);
|
||||
- if (parts[i].types)
|
||||
- mtd_parse_part(slave, parts[i].types);
|
||||
@ -66,7 +66,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
|
||||
cur_offset = slave->offset + slave->mtd.size;
|
||||
}
|
||||
@@ -852,6 +836,12 @@ static const char * const default_mtd_pa
|
||||
@@ -877,6 +861,12 @@ static const char * const default_mtd_pa
|
||||
NULL
|
||||
};
|
||||
|
||||
@ -79,7 +79,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
static int mtd_part_do_parse(struct mtd_part_parser *parser,
|
||||
struct mtd_info *master,
|
||||
struct mtd_partitions *pparts,
|
||||
@@ -922,7 +912,9 @@ static int mtd_part_of_parse(struct mtd_
|
||||
@@ -947,7 +937,9 @@ static int mtd_part_of_parse(struct mtd_
|
||||
const char *fixed = "fixed-partitions";
|
||||
int ret, err = 0;
|
||||
|
||||
@ -90,7 +90,7 @@ Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
|
||||
of_property_for_each_string(np, "compatible", prop, compat) {
|
||||
parser = mtd_part_get_compatible_parser(compat);
|
||||
if (!parser)
|
||||
@@ -985,7 +977,8 @@ int parse_mtd_partitions(struct mtd_info
|
||||
@@ -1010,7 +1002,8 @@ int parse_mtd_partitions(struct mtd_info
|
||||
int ret, err = 0;
|
||||
|
||||
if (!types)
|
||||
|
@ -54,7 +54,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
depends on BROKEN || !FRV
|
||||
--- a/kernel/Makefile
|
||||
+++ b/kernel/Makefile
|
||||
@@ -113,6 +113,7 @@ obj-$(CONFIG_CONTEXT_TRACKING) += contex
|
||||
@@ -110,6 +110,7 @@ obj-$(CONFIG_CONTEXT_TRACKING) += contex
|
||||
obj-$(CONFIG_TORTURE_TEST) += torture.o
|
||||
|
||||
obj-$(CONFIG_HAS_IOMEM) += memremap.o
|
||||
|
@ -327,7 +327,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
--- a/net/core/sock.c
|
||||
+++ b/net/core/sock.c
|
||||
@@ -3485,6 +3485,8 @@ static __net_initdata struct pernet_oper
|
||||
@@ -3486,6 +3486,8 @@ static __net_initdata struct pernet_oper
|
||||
|
||||
static int __init proto_init(void)
|
||||
{
|
||||
|
@ -54,7 +54,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
help
|
||||
--- a/kernel/Makefile
|
||||
+++ b/kernel/Makefile
|
||||
@@ -117,6 +117,7 @@ obj-$(CONFIG_TORTURE_TEST) += torture.o
|
||||
@@ -114,6 +114,7 @@ obj-$(CONFIG_TORTURE_TEST) += torture.o
|
||||
obj-$(CONFIG_HAS_IOMEM) += iomem.o
|
||||
obj-$(CONFIG_ZONE_DEVICE) += memremap.o
|
||||
obj-$(CONFIG_RSEQ) += rseq.o
|
||||
|
@ -110,7 +110,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
||||
#include <linux/err.h>
|
||||
#include <linux/of.h>
|
||||
|
||||
@@ -844,6 +845,37 @@ void deregister_mtd_parser(struct mtd_pa
|
||||
@@ -869,6 +870,37 @@ void deregister_mtd_parser(struct mtd_pa
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(deregister_mtd_parser);
|
||||
|
||||
@ -148,7 +148,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
||||
/*
|
||||
* Do not forget to update 'parse_mtd_partitions()' kerneldoc comment if you
|
||||
* are changing this array!
|
||||
@@ -993,6 +1025,13 @@ int parse_mtd_partitions(struct mtd_info
|
||||
@@ -1018,6 +1050,13 @@ int parse_mtd_partitions(struct mtd_info
|
||||
struct mtd_partitions pparts = { };
|
||||
struct mtd_part_parser *parser;
|
||||
int ret, err = 0;
|
||||
@ -162,7 +162,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
||||
|
||||
if (!types)
|
||||
types = mtd_is_partition(master) ? default_subpartition_types :
|
||||
@@ -1034,6 +1073,7 @@ int parse_mtd_partitions(struct mtd_info
|
||||
@@ -1059,6 +1098,7 @@ int parse_mtd_partitions(struct mtd_info
|
||||
if (ret < 0 && !err)
|
||||
err = ret;
|
||||
}
|
||||
|
@ -60,15 +60,15 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
/*
|
||||
* Given a pointer to the MTD object in the mtd_part structure, we can retrieve
|
||||
* the pointer to that structure.
|
||||
@@ -668,6 +672,7 @@ int mtd_add_partition(struct mtd_info *p
|
||||
mutex_unlock(&mtd_partitions_mutex);
|
||||
@@ -671,6 +675,7 @@ int mtd_add_partition(struct mtd_info *p
|
||||
if (ret)
|
||||
goto err_remove_part;
|
||||
|
||||
add_mtd_device(&new->mtd);
|
||||
+ mtd_partition_split(parent, new);
|
||||
|
||||
mtd_add_partition_attrs(new);
|
||||
|
||||
@@ -746,6 +751,29 @@ int mtd_del_partition(struct mtd_info *m
|
||||
return 0;
|
||||
@@ -757,6 +762,29 @@ int mtd_del_partition(struct mtd_info *m
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mtd_del_partition);
|
||||
|
||||
@ -98,10 +98,10 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
/*
|
||||
* This function, given a master MTD object and a partition table, creates
|
||||
* and registers slave MTD objects which are bound to the master according to
|
||||
@@ -777,6 +805,7 @@ int add_mtd_partitions(struct mtd_info *
|
||||
mutex_unlock(&mtd_partitions_mutex);
|
||||
@@ -797,6 +825,7 @@ int add_mtd_partitions(struct mtd_info *
|
||||
goto err_del_partitions;
|
||||
}
|
||||
|
||||
add_mtd_device(&slave->mtd);
|
||||
+ mtd_partition_split(master, slave);
|
||||
mtd_add_partition_attrs(slave);
|
||||
/* Look for subpartitions */
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
|
||||
/*
|
||||
* Given a pointer to the MTD object in the mtd_part structure, we can retrieve
|
||||
@@ -751,6 +755,36 @@ int mtd_del_partition(struct mtd_info *m
|
||||
@@ -762,6 +766,36 @@ int mtd_del_partition(struct mtd_info *m
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mtd_del_partition);
|
||||
|
||||
@ -57,7 +57,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
#ifdef CONFIG_MTD_SPLIT_FIRMWARE_NAME
|
||||
#define SPLIT_FIRMWARE_NAME CONFIG_MTD_SPLIT_FIRMWARE_NAME
|
||||
#else
|
||||
@@ -1122,6 +1156,61 @@ void mtd_part_parser_cleanup(struct mtd_
|
||||
@@ -1147,6 +1181,61 @@ void mtd_part_parser_cleanup(struct mtd_
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -10,7 +10,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
|
||||
--- a/drivers/mtd/mtdpart.c
|
||||
+++ b/drivers/mtd/mtdpart.c
|
||||
@@ -793,6 +793,7 @@ run_parsers_by_type(struct mtd_part *sla
|
||||
@@ -804,6 +804,7 @@ run_parsers_by_type(struct mtd_part *sla
|
||||
|
||||
static void split_firmware(struct mtd_info *master, struct mtd_part *part)
|
||||
{
|
||||
@ -18,7 +18,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
}
|
||||
|
||||
static void mtd_partition_split(struct mtd_info *master, struct mtd_part *part)
|
||||
@@ -802,6 +803,12 @@ static void mtd_partition_split(struct m
|
||||
@@ -813,6 +814,12 @@ static void mtd_partition_split(struct m
|
||||
if (rootfs_found)
|
||||
return;
|
||||
|
||||
|
@ -11,7 +11,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
|
||||
--- a/drivers/mtd/mtdpart.c
|
||||
+++ b/drivers/mtd/mtdpart.c
|
||||
@@ -1235,6 +1235,24 @@ int mtd_is_partition(const struct mtd_in
|
||||
@@ -1260,6 +1260,24 @@ int mtd_is_partition(const struct mtd_in
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mtd_is_partition);
|
||||
|
||||
|
@ -31,7 +31,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
|
||||
help
|
||||
--- a/init/main.c
|
||||
+++ b/init/main.c
|
||||
@@ -359,6 +359,29 @@ static inline void setup_nr_cpu_ids(void
|
||||
@@ -358,6 +358,29 @@ static inline void setup_nr_cpu_ids(void
|
||||
static inline void smp_prepare_cpus(unsigned int maxcpus) { }
|
||||
#endif
|
||||
|
||||
@ -61,7 +61,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
|
||||
/*
|
||||
* We need to store the untouched command line for future reference.
|
||||
* We also need to store the touched command line since the parameter
|
||||
@@ -540,6 +563,7 @@ asmlinkage __visible void __init start_k
|
||||
@@ -539,6 +562,7 @@ asmlinkage __visible void __init start_k
|
||||
add_device_randomness(command_line, strlen(command_line));
|
||||
boot_init_stack_canary();
|
||||
mm_init_cpumask(&init_mm);
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user