This commit is contained in:
aooom 2018-04-09 14:06:38 +08:00
commit 75d75c1722
1061 changed files with 145124 additions and 13508 deletions

5198
AR71XX.config Normal file

File diff suppressed because it is too large Load Diff

5117
arjj.config Normal file

File diff suppressed because it is too large Load Diff

View File

@ -184,6 +184,22 @@ menu "Global build settings"
this per package by adding PKG_CHECK_FORMAT_SECURITY:=0 in the package
Makefile.
config PKG_ASLR_PIE
bool
prompt "User space ASLR PIE compilation"
select BUSYBOX_DEFAULT_PIE
default n
help
Add -fPIC to CFLAGS and -specs=hardened-build-ld to LDFLAGS.
This enables package build as Position Independent Executables (PIE)
to protect against "return-to-text" attacks. This belongs to the
feature of Address Space Layout Randomisation (ASLR), which is
implemented by the kernel and the ELF loader by randomising the
location of memory allocations. This makes memory addresses harder
to predict when an attacker is attempting a memory-corruption exploit.
You can disable this per package by adding PKG_ASLR_PIE:=0 in the package
Makefile.
choice
prompt "User space Stack-Smashing Protection"
depends on USE_MUSL
@ -194,11 +210,11 @@ menu "Global build settings"
bool "None"
config PKG_CC_STACKPROTECTOR_REGULAR
bool "Regular"
select SSP_SUPPORT if !USE_MUSL
select GCC_LIBSSP if !USE_MUSL
depends on KERNEL_CC_STACKPROTECTOR_REGULAR
config PKG_CC_STACKPROTECTOR_STRONG
bool "Strong"
select SSP_SUPPORT if !USE_MUSL
select GCC_LIBSSP if !USE_MUSL
depends on !GCC_VERSION_4_8
depends on KERNEL_CC_STACKPROTECTOR_STRONG
endchoice

View File

@ -18,6 +18,7 @@ menu "Target Images"
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_apm821xx
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_mpc85xx
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ipq40xx
default TARGET_INITRAMFS_COMPRESSION_NONE
depends on TARGET_ROOTFS_INITRAMFS
help
@ -62,7 +63,7 @@ menu "Target Images"
config TARGET_ROOTFS_TARGZ
bool "tar.gz"
default y if USES_TARGZ
default n
help
Build a compressed tar archive of the root filesystem.
@ -70,7 +71,7 @@ menu "Target Images"
menuconfig TARGET_ROOTFS_EXT4FS
bool "ext4"
default y if USES_EXT4
default n
help
Build an ext4 root filesystem.
@ -115,7 +116,7 @@ menu "Target Images"
config TARGET_ROOTFS_ISO
bool "iso"
default n
depends on TARGET_x86_generic
depends on TARGET_x86
help
Create a bootable ISO image.
@ -186,21 +187,29 @@ menu "Target Images"
select PACKAGE_grub2
default y
config EFI_IMAGES
bool "Build EFI GRUB images (Linux x86 or x86_64 host only)"
depends on TARGET_x86
depends on TARGET_ROOTFS_EXT4FS || TARGET_ROOTFS_ISO || TARGET_ROOTFS_JFFS2 || TARGET_ROOTFS_SQUASHFS
select PACKAGE_grub2
select PACKAGE_grub2-efi
default n
config GRUB_CONSOLE
bool "Use Console Terminal (in addition to Serial)"
depends on GRUB_IMAGES
depends on GRUB_IMAGES || EFI_IMAGES
default n if (TARGET_x86_generic_Soekris45xx || TARGET_x86_generic_Soekris48xx || TARGET_x86_net5501 || TARGET_x86_geos || TARGET_x86_alix2)
default y
config GRUB_SERIAL
string "Serial port device"
depends on GRUB_IMAGES
depends on GRUB_IMAGES || EFI_IMAGES
default "hvc0" if TARGET_x86_xen_domu
default "ttyS0" if ! TARGET_x86_xen_domu
config GRUB_BAUDRATE
int "Serial port baud rate"
depends on GRUB_IMAGES
depends on GRUB_IMAGES || EFI_IMAGES
default 38400 if TARGET_x86_generic
default 115200
@ -211,14 +220,14 @@ menu "Target Images"
config GRUB_BOOTOPTS
string "Extra kernel boot options"
depends on GRUB_IMAGES
depends on GRUB_IMAGES || EFI_IMAGES
default "xencons=hvc" if TARGET_x86_xen_domu
help
If you don't know, just leave it blank.
config GRUB_TIMEOUT
string "Seconds to wait before booting the default entry"
depends on GRUB_IMAGES
depends on GRUB_IMAGES || EFI_IMAGES
default "0"
help
If you don't know, 5 seconds is a reasonable default.
@ -226,7 +235,7 @@ menu "Target Images"
config VDI_IMAGES
bool "Build VirtualBox image files (VDI)"
depends on TARGET_x86 || TARGET_x86_64
select GRUB_IMAGES
depends on GRUB_IMAGES || EFI_IMAGES
select TARGET_IMAGES_PAD
select PACKAGE_kmod-e1000
@ -234,13 +243,21 @@ menu "Target Images"
bool "Build VMware image files (VMDK)"
depends on TARGET_x86 || TARGET_x86_64
default y
select GRUB_IMAGES
depends on GRUB_IMAGES || EFI_IMAGES
select TARGET_IMAGES_PAD
select PACKAGE_kmod-e1000
config VHD_IMAGES
bool "Build Hyper-V image files (VHD)"
depends on TARGET_x86 || TARGET_x86_64
default n
depends on GRUB_IMAGES || EFI_IMAGES
select TARGET_IMAGES_PAD
select PACKAGE_kmod-tulip
config TARGET_IMAGES_PAD
bool "Pad images to filesystem size (for JFFS2)"
depends on GRUB_IMAGES
depends on GRUB_IMAGES || EFI_IMAGES
config TARGET_IMAGES_GZIP
bool "GZip images"
@ -253,19 +270,19 @@ menu "Target Images"
config TARGET_KERNEL_PARTSIZE
int "Kernel partition size (in MB)"
depends on GRUB_IMAGES
depends on GRUB_IMAGES || EFI_IMAGES
default 16
config TARGET_ROOTFS_PARTSIZE
int "Root filesystem partition size (in MB)"
depends on GRUB_IMAGES || TARGET_ROOTFS_EXT4FS || TARGET_rb532 || TARGET_mvebu || TARGET_uml
depends on GRUB_IMAGES || EFI_IMAGES || TARGET_ROOTFS_EXT4FS || TARGET_rb532 || TARGET_mvebu || TARGET_uml
default 90
help
Select the root filesystem partition size.
config TARGET_ROOTFS_PARTNAME
string "Root partition on target device"
depends on GRUB_IMAGES
depends on GRUB_IMAGES || EFI_IMAGES
help
Override the root partition on the final device. If left empty,
it will be mounted by PARTUUID which makes the kernel find the

View File

@ -1,7 +1,7 @@
src-git packages https://git.openwrt.org/feed/packages.git
src-git luci https://git.openwrt.org/project/luci.git
src-git routing https://git.openwrt.org/feed/routing.git
src-git telephony https://git.openwrt.org/feed/telephony.git
#src-git telephony https://git.openwrt.org/feed/telephony.git
#src-git video https://github.com/openwrt/video.git
#src-git targets https://github.com/openwrt/targets.git
#src-git management https://github.com/openwrt-management/packages.git

View File

@ -3,14 +3,14 @@
LINUX_RELEASE?=1
LINUX_VERSION-3.18 = .71
LINUX_VERSION-4.4 = .111
LINUX_VERSION-4.9 = .76
LINUX_VERSION-4.14 = .13
LINUX_VERSION-4.4 = .112
LINUX_VERSION-4.9 = .77
LINUX_VERSION-4.14 = .32
LINUX_KERNEL_HASH-3.18.71 = 5abc9778ad44ce02ed6c8ab52ece8a21c6d20d21f6ed8a19287b4a38a50c1240
LINUX_KERNEL_HASH-4.4.111 = a201282e8eaf62b4f51edb2241e98ff805fe2d1b04a72a2328c5a6e2d77ec008
LINUX_KERNEL_HASH-4.9.76 = b82b94332cffaaeade74495264c989dafb96d4748503f87a5b7c436f5de887de
LINUX_KERNEL_HASH-4.14.13 = 4ab46d1b5a0f8ef83b80760f89ae4f5c88431b19b3cf79ffa0c66d6b33e45772
LINUX_KERNEL_HASH-4.4.112 = 544b42cbeed022896115c76a18fc97b4507d5b41d7ac0ce1dce9afd6ffd11ecd
LINUX_KERNEL_HASH-4.9.77 = 7c29bc3fb96f1e23d98f664e786dddd53a1599f56431b9b7fdfba402a4b3705c
LINUX_KERNEL_HASH-4.14.32 = cb0979bec663089a43b10cfbeae0cf9673544b0ff5968c33ede614ec0f43b680
ifdef KERNEL_PATCHVER
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))

View File

@ -30,9 +30,10 @@ endef
# core
# kernel only
$(eval $(if $(NF_KMOD),$(call nf_add,NF_REJECT,CONFIG_NF_REJECT_IPV4, $(P_V4)nf_reject_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_IPT,CONFIG_IP_NF_IPTABLES, $(P_V4)ip_tables),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_IPT,CONFIG_NETFILTER_XTABLES, $(P_XT)x_tables),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_IPT,CONFIG_NF_REJECT_IPV4, $(P_V4)nf_reject_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_CORE,CONFIG_NETFILTER_XTABLES, $(P_XT)xt_tcpudp),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_CORE,CONFIG_IP_NF_FILTER, $(P_V4)iptable_filter),))
@ -85,6 +86,10 @@ $(eval $(call nf_add,IPT_CONNTRACK_EXTRA,CONFIG_NETFILTER_XT_MATCH_RECENT, $(P_X
$(eval $(if $(NF_KMOD),,$(call nf_add,IPT_CONNTRACK_EXTRA,CONFIG_NETFILTER_XT_CONNMARK, $(P_XT)xt_CONNMARK)))
#conntrack-label
$(eval $(call nf_add,IPT_CONNTRACK_LABEL,CONFIG_NETFILTER_XT_MATCH_CONNLABEL, $(P_XT)xt_connlabel))
# extra
$(eval $(call nf_add,IPT_EXTRA,CONFIG_NETFILTER_XT_MATCH_ADDRTYPE, $(if $(NF_KMOD),$(P_XT)xt_addrtype,$(P_XT)ipt_addrtype)))
@ -138,12 +143,15 @@ $(eval $(call nf_add,IPT_IPSEC,CONFIG_IP_NF_MATCH_AH, $(P_V4)ipt_ah))
$(eval $(call nf_add,IPT_IPSEC,CONFIG_NETFILTER_XT_MATCH_ESP, $(P_XT)xt_esp))
$(eval $(call nf_add,IPT_IPSEC,CONFIG_NETFILTER_XT_MATCH_POLICY, $(P_XT)xt_policy))
# flow offload support
$(eval $(call nf_add,IPT_FLOW,CONFIG_NETFILTER_XT_TARGET_FLOWOFFLOAD, $(P_XT)xt_FLOWOFFLOAD))
# IPv6
# kernel only
$(eval $(if $(NF_KMOD),$(call nf_add,NF_REJECT6,CONFIG_NF_REJECT_IPV6, $(P_V6)nf_reject_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_IPT6,CONFIG_IP6_NF_IPTABLES, $(P_V6)ip6_tables),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_IPT6,CONFIG_NF_REJECT_IPV6, $(P_V6)nf_reject_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_CONNTRACK6,CONFIG_NF_DEFRAG_IPV6, $(P_V6)nf_defrag_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_CONNTRACK6,CONFIG_NF_CONNTRACK_IPV6, $(P_V6)nf_conntrack_ipv6),))
@ -338,14 +346,22 @@ $(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_CHAIN_ROUTE_IPV6, $(P_V
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_REDIR, $(P_XT)nft_redir, ge 3.19.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_QUOTA, $(P_XT)nft_quota, ge 4.9.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_ARP,CONFIG_NF_TABLES_ARP, $(P_V4)nf_tables_arp),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_BRIDGE,CONFIG_NF_TABLES_BRIDGE, $(P_EBT)nf_tables_bridge),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_BRIDGE,CONFIG_NFT_BRIDGE_META, $(P_EBT)nft_meta_bridge),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_BRIDGE,CONFIG_NFT_BRIDGE_REJECT, $(P_EBT)nft_reject_bridge),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_NAT, $(P_XT)nft_nat),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_CHAIN_NAT_IPV4, $(P_V4)nft_chain_nat_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_REDIR_IPV4, $(P_V4)nft_redir_ipv4, ge 3.19.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_REDIR_IPV6, $(P_V6)nft_redir_ipv6, ge 3.19.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_CHAIN_NAT_IPV6, $(P_V6)nft_chain_nat_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_MASQ, $(P_XT)nft_masq),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_MASQ_IPV4, $(P_V4)nft_masq_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_MASQ_IPV6, $(P_V6)nft_masq_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_REDIR_IPV6, $(P_V6)nft_redir_ipv6, ge 3.19.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_CHAIN_NAT_IPV6, $(P_V6)nft_chain_nat_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_MASQ_IPV6, $(P_V6)nft_masq_ipv6),))
# userland only
IPT_BUILTIN += $(NF_IPT-y) $(NF_IPT-m)
@ -356,6 +372,7 @@ IPT_BUILTIN += $(IPT_CONNTRACK-y)
IPT_BUILTIN += $(IPT_CONNTRACK_EXTRA-y)
IPT_BUILTIN += $(IPT_EXTRA-y)
IPT_BUILTIN += $(IPT_FILTER-y)
IPT_BUILTIN += $(IPT_FLOW-y) $(IPT_FLOW-m)
IPT_BUILTIN += $(IPT_IPOPT-y)
IPT_BUILTIN += $(IPT_IPRANGE-y)
IPT_BUILTIN += $(IPT_CLUSTER-y)

View File

@ -5,7 +5,7 @@
# See /LICENSE for more information.
#
PKG_DEFAULT_DEPENDS = +libc +SSP_SUPPORT:libssp +USE_GLIBC:librt +USE_GLIBC:libpthread
PKG_DEFAULT_DEPENDS = +libc +GCC_LIBSSP:libssp +USE_GLIBC:librt +USE_GLIBC:libpthread
ifneq ($(PKG_NAME),toolchain)
PKG_FIXUP_DEPENDS = $(if $(filter kmod-%,$(1)),$(2),$(PKG_DEFAULT_DEPENDS) $(filter-out $(PKG_DEFAULT_DEPENDS),$(2)))

View File

@ -21,7 +21,7 @@ luci-app-pptp-server luci-app-ipsec-vpnd luci-app-vlmcsd luci-app-wifischedule l
# For nas targets
DEFAULT_PACKAGES.nas:=block-mount fdisk lsblk mdadm
# For router targets
DEFAULT_PACKAGES.router:=dnsmasq-full iptables ip6tables ppp ppp-mod-pppoe firewall
DEFAULT_PACKAGES.router:=dnsmasq-full iptables ip6tables ppp ppp-mod-pppoe firewall kmod-ipt-offload
DEFAULT_PACKAGES.bootloader:=
ifneq ($(DUMP),)
@ -55,6 +55,10 @@ else
endif
endif
ifneq ($(filter 3.18 4.4 4.9,$(KERNEL_PATCHVER)),)
DEFAULT_PACKAGES.router:=$(filter-out kmod-ipt-offload,$(DEFAULT_PACKAGES.router))
endif
# Add device specific packages (here below to allow device type set from subtarget)
DEFAULT_PACKAGES += $(DEFAULT_PACKAGES.$(DEVICE_TYPE))

View File

@ -117,6 +117,24 @@ export_bootdevice() {
esac
case "$disk" in
PARTUUID=[A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9]-[A-F0-9][A-F0-9][A-F0-9][A-F0-9]-[A-F0-9][A-F0-9][A-F0-9][A-F0-9]-[A-F0-9][A-F0-9][A-F0-9][A-F0-9]-[A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9]0002)
uuid="${disk#PARTUUID=}"
uuid="${uuid%0002}0002"
for disk in $(find /dev -type b); do
set -- $(dd if=$disk bs=1 skip=$((2*51225612816)) count=16 2>/dev/null | hexdump -v -e '4/1 "%02x"' | awk '{ \
for(i=1;i<9;i=i2) first=substr($0,i,1) substr($0,i1,1) first; \
for(i=9;i<13;i=i2) second=substr($0,i,1) substr($0,i1,1) second; \
for(i=13;i<16;i=i2) third=substr($0,i,1) substr($0,i1,1) third; \
fourth = substr($0,17,4); \
five = substr($0,21,12); \
} END { print toupper(first"-"second"-"third"-"fourth"-"five) }')
if [ "$1" = "$uuid" ]; then
uevent="/sys/class/block/${disk##*/}/uevent"
export SAVE_PARTITIONS=0
break
fi
done
;;
PARTUUID=[a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9]-02)
uuid="${disk#PARTUUID=}"
uuid="${uuid%-02}"

View File

@ -1,34 +1,24 @@
#
# Copyright (C) 2006-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=grub
PKG_CPE_ID:=cpe:/a:gnu:grub2
PKG_VERSION:=2.02
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE:=grub-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNU/grub
PKG_HASH:=810b3798d316394f94096ec2797909dbf23c858e48f7b3830826b8daa06b7b0f
PKG_FIXUP:=autoreconf
HOST_BUILD_PARALLEL:=1
PKG_BUILD_DEPENDS:=grub2/host
PKG_SSP:=0
PKG_FLAGS:=nonshared
PATCH_DIR := ../patches
HOST_PATCH_DIR := ../patches
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/package.mk
define Package/grub2
define Package/grub2/Default
CATEGORY:=Boot Loaders
SECTION:=boot
TITLE:=GRand Unified Bootloader
@ -36,19 +26,6 @@ define Package/grub2
DEPENDS:=@TARGET_x86||TARGET_x86_64
endef
define Package/grub2-editenv
CATEGORY:=Utilities
SECTION:=utils
SUBMENU:=Boot Loaders
TITLE:=Grub2 Environment editor
URL:=http://www.gnu.org/software/grub/
DEPENDS:=@TARGET_x86||TARGET_x86_64
endef
define Package/grub2-editenv/description
Edit grub2 environment files.
endef
HOST_BUILD_PREFIX := $(STAGING_DIR_HOST)
CONFIGURE_VARS += \
@ -82,11 +59,3 @@ define Host/Configure
$(Host/Configure/Default)
endef
define Package/grub2-editenv/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/grub-editenv $(1)/usr/sbin/
endef
$(eval $(call HostBuild))
$(eval $(call BuildPackage,grub2))
$(eval $(call BuildPackage,grub2-editenv))

View File

@ -0,0 +1,22 @@
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=grub-efi
include ../common.mk
TAR_OPTIONS:= --transform 's/grub-${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}/' $(TAR_OPTIONS)
PKG_BUILD_DEPENDS:=grub2-efi/host
CONFIGURE_ARGS += --with-platform=efi
HOST_CONFIGURE_ARGS += --with-platform=efi --program-suffix=-efi
define Package/grub2-efi
$(call Package/grub2/Default)
HIDDEN:=1
TITLE += (with EFI support)
endef
$(eval $(call HostBuild))
$(eval $(call BuildPackage,grub2-efi))

View File

@ -0,0 +1,33 @@
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=grub
include ../common.mk
PKG_BUILD_DEPENDS:=grub2/host
define Package/grub2
$(call Package/grub2/Default)
endef
define Package/grub2-editenv
CATEGORY:=Utilities
SECTION:=utils
TITLE:=Grub2 Environment editor
URL:=http://www.gnu.org/software/grub/
DEPENDS:=@TARGET_x86||TARGET_x86_64
endef
define Package/grub2-editenv/description
Edit grub2 environment files.
endef
define Package/grub2-editenv/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/grub-editenv $(1)/usr/sbin/
endef
$(eval $(call HostBuild))
$(eval $(call BuildPackage,grub2))
$(eval $(call BuildPackage,grub2-editenv))

@ -0,0 +1 @@
Subproject commit 86ef75ed8a376ca0a7490ce68c5b09fa0fbe8c1d

View File

@ -0,0 +1,45 @@
#
# Copyright (C) 2018 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=amd64-microcode
PKG_VERSION:=20171205
PKG_RELEASE:=1
PKG_SOURCE:=amd64-microcode_3.$(PKG_VERSION).$(PKG_RELEASE).tar.xz
PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/non-free/a/amd64-microcode/
PKG_HASH:=a38bc072f535a3d3c1bf4e9e545197aa5114e979e94ef7e4a67e615df2f853a7
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-3.$(PKG_VERSION).$(PKG_RELEASE)
PKG_LICENSE_FILE:=LICENSE.amd-ucode
include $(INCLUDE_DIR)/package.mk
define Package/amd64-microcode
SECTION:=firmware
CATEGORY:=Firmware
URL:=$(PKG_SOURCE_URL)
DEPENDS:=@TARGET_x86
TITLE:=AMD64 CPU microcode
endef
define Build/Prepare
rm -rf $(PKG_BUILD_DIR)
mkdir -p $(PKG_BUILD_DIR)
$(TAR) -C $(BUILD_DIR) -xJf $(DL_DIR)/$(PKG_SOURCE)
endef
define Build/Compile
endef
define Package/amd64-microcode/install
$(INSTALL_DIR) $(1)/lib/firmware/amd-ucode
$(INSTALL_DATA) $(PKG_BUILD_DIR)/*.bin $(1)/lib/firmware/amd-ucode
endef
$(eval $(call BuildPackage,amd64-microcode))

View File

@ -8,9 +8,9 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ath10k-firmware
PKG_SOURCE_DATE:=2017-10-30
PKG_SOURCE_VERSION:=476a2850b1e8582d51187799d7de209daf1a57b2
PKG_MIRROR_HASH:=77ba59f75c5897c842c5c525945de019fd23f1e2d8bea6239924857e500bf73a
PKG_SOURCE_DATE:=2018-02-09
PKG_SOURCE_VERSION:=8f4bafdd400d21a65966004d0ce6e0686ef4d9bc
PKG_MIRROR_HASH:=4f4f0678b9d07c0282f18c69bd63a5e2a2ae015b9ce7298cedb88a60be87ed3a
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
@ -50,6 +50,7 @@ $(Package/ath10k-firmware-default)
endef
CT_FIRMWARE_FILE = $(1)-$($(1)_FIRMWARE_FILE_CT)
CT_FIRMWARE_FILE_HTT = $(1)-$($(1)_FIRMWARE_FILE_CT_HTT)
define Download/ct-firmware
URL:=https://www.candelatech.com/downloads/$(2)
@ -57,41 +58,102 @@ define Download/ct-firmware
URL_FILE:=$($(1)_FIRMWARE_FILE_CT)
endef
QCA988X_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-19.bin.lede
define Download/ct-firmware-htt
URL:=https://www.candelatech.com/downloads/$(2)
FILE:=$(call CT_FIRMWARE_FILE_HTT,$(1))
URL_FILE:=$($(1)_FIRMWARE_FILE_CT_HTT)
endef
QCA988X_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-20.bin.lede.006
define Download/ath10k-firmware-qca988x-ct
$(call Download/ct-firmware,QCA988X,)
HASH:=bff98f028062dae9fc638c7596aec3c79bf9eddaff65cfacba067f6d72f217cd
HASH:=b28ff3eb10f15033be68bbedc91abcf40f7369cc44da4273e3c0df285c74a4f8
endef
$(eval $(call Download,ath10k-firmware-qca988x-ct))
QCA9887_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-19.bin.lede
QCA988X_FIRMWARE_FILE_CT_HTT:=firmware-2-ct-full-htt-mgt-community-20.bin.lede.006
define Download/ath10k-firmware-qca988x-ct-htt
$(call Download/ct-firmware-htt,QCA988X,)
HASH:=08dd8d339079c9a704cf3f91787cc06a73168a9f57eeb777edaa9cd4194c246c
endef
$(eval $(call Download,ath10k-firmware-qca988x-ct-htt))
QCA9887_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-20.bin.lede.006
define Download/ath10k-firmware-qca9887-ct
$(call Download/ct-firmware,QCA9887,ath10k-9887)
HASH:=95dc106f98672bd9c7d3fe6881ed79ab079cb49b0a995650991b1beaff2b0101
HASH:=8d3fd2fb62479efa955e0d0487ca8971409e68b395f3a2df28569ec243bd937d
endef
$(eval $(call Download,ath10k-firmware-qca9887-ct))
QCA99X0_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-9.bin-lede.004
QCA9887_FIRMWARE_FILE_CT_HTT:=firmware-2-ct-full-htt-mgt-community-20.bin.lede.006
define Download/ath10k-firmware-qca9887-ct-htt
$(call Download/ct-firmware-htt,QCA9887,ath10k-9887)
HASH:=f192b5a8ac4b90d828cace0a2279c02fda689fa936f5154f08df6658d0230e9b
endef
$(eval $(call Download,ath10k-firmware-qca9887-ct-htt))
QCA99X0_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-10.bin-lede.006
define Download/ath10k-firmware-qca99x0-ct
$(call Download/ct-firmware,QCA99X0,ath10k-10-4)
HASH:=993c29fd64bb2a59b86d34f58601a1a48b83b541750bc511f78cc17152829b4d
HASH:=1aa21acab7974651af6c0a2698891fc8792edb5124824fac1587123d3b48df67
endef
$(eval $(call Download,ath10k-firmware-qca99x0-ct))
QCA9984_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-9.bin-lede.004
QCA99X0_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-10.bin-lede.006
define Download/ath10k-firmware-qca99x0-ct-htt
$(call Download/ct-firmware-htt,QCA99X0,ath10k-10-4)
HASH:=e3d89c00f194975649b2f41ff5f5ffc34d60c393d15800df6ea56a8ac29aeeee
endef
$(eval $(call Download,ath10k-firmware-qca99x0-ct-htt))
QCA9984_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-10.bin-lede.006
define Download/ath10k-firmware-qca9984-ct
$(call Download/ct-firmware,QCA9984,ath10k-9984-10-4)
HASH:=d997eed9a8bc6809c01d367759ba8545c10e3be93ea1f33d6d753127ef0f7c5e
HASH:=f9700cafb4e2cebe8364eb6fe1754eb2c37b1b02a7408ded908ecc78954380a3
endef
$(eval $(call Download,ath10k-firmware-qca9984-ct))
QCA9888_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-9.bin-lede.004
QCA9984_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-10.bin-lede.006
define Download/ath10k-firmware-qca9984-ct-htt
$(call Download/ct-firmware-htt,QCA9984,ath10k-9984-10-4)
HASH:=c8c288cd38f3e6b378d7ed8407ee6b01cfcc73acc03d6ad5b8d392a8a346dd82
endef
$(eval $(call Download,ath10k-firmware-qca9984-ct-htt))
QCA4019_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-10.bin-lede.006
define Download/ath10k-firmware-qca4019-ct
$(call Download/ct-firmware,QCA4019,ath10k-4019-10-4)
HASH:=d2207982b49959b9526d4dc1fd4181b49b3d43a841cf5d6cc396ccb1bc4b572c
endef
$(eval $(call Download,ath10k-firmware-qca4019-ct))
QCA4019_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-10.bin-lede.006
define Download/ath10k-firmware-qca4019-ct-htt
$(call Download/ct-firmware-htt,QCA4019,ath10k-4019-10-4)
HASH:=3c900bb656f093fe6882616d788c6e2e8fc09edbdda06691e16e5f08d79c4955
endef
$(eval $(call Download,ath10k-firmware-qca4019-ct-htt))
QCA9888_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-10.bin-lede.006
define Download/ath10k-firmware-qca9888-ct
$(call Download/ct-firmware,QCA9888,ath10k-9888-10-4)
HASH:=bbaa71bc7dcaa264c5875e86639f174908fed09fbace975e325959d42f3754ff
HASH:=9bd38e80ec52484bae5edc785df09cf9acdad3e28ee5080a8105ba786118193a
endef
$(eval $(call Download,ath10k-firmware-qca9888-ct))
QCA9888_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-10.bin-lede.006
define Download/ath10k-firmware-qca9888-ct-htt
$(call Download/ct-firmware-htt,QCA9888,ath10k-9888-10-4)
HASH:=63e695f55400f784ca8123c299e240626a403437b30d197a7e69a4b42d155b8a
endef
$(eval $(call Download,ath10k-firmware-qca9888-ct-htt))
define Package/ath10k-firmware-qca99x0
$(Package/ath10k-firmware-default)
TITLE:=ath10k firmware for QCA99x0 devices
@ -104,6 +166,15 @@ $(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.1 firmware for QCA988x devices
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca988x
endef
define Package/ath10k-firmware-qca988x-ct-htt
$(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.1 htt-mgt fw for QCA988x
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca988x
DEPENDS:=+kmod-ath10k-ct
endef
define Package/ath10k-firmware-qca9887-ct
@ -111,6 +182,15 @@ $(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.1 firmware for QCA9887 devices
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9887
endef
define Package/ath10k-firmware-qca9887-ct-htt
$(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.1 htt-mgt fw for QCA9887
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9887
DEPENDS:=+kmod-ath10k-ct
endef
define Package/ath10k-firmware-qca988x-ct/description
@ -121,6 +201,14 @@ This firmware will NOT be used unless the standard ath10k-firmware-qca988x
is un-selected since the driver will try to load firmware-5.bin before
firmware-2.bin
endef
define Package/ath10k-firmware-qca988x-ct-htt/description
Alternative ath10k firmware for QCA988X from Candela Technologies.
Uses normal HTT TX data path for management frames, which improves
stability in busy networks and fixes .11r authentication.
Enables IBSS and other features. See:
http://www.candelatech.com/ath10k-10.1.php
This firmware selects and requires the ath10k-ct driver.
endef
define Package/ath10k-firmware-qca9887-ct/description
Alternative ath10k firmware for QCA9887 from Candela Technologies.
@ -129,6 +217,14 @@ http://www.candelatech.com/ath10k-10.1.php
This firmware conflicts with the standard 9887 firmware, so select only
one.
endef
define Package/ath10k-firmware-qca9887-ct-htt/description
Alternative ath10k firmware for QCA9887 from Candela Technologies.
Uses normal HTT TX data path for management frames, which improves
stability in busy networks and fixes .11r authentication.
Enables IBSS and other features. See:
http://www.candelatech.com/ath10k-10.1.php
This firmware selects and requires the ath10k-ct driver.
endef
define Package/ath10k-firmware-qca99x0-ct/description
Alternative ath10k firmware for QCA99x0 from Candela Technologies.
@ -137,6 +233,14 @@ http://www.candelatech.com/ath10k-10.4.php
This firmware conflicts with the standard 99x0 firmware, so select only
one.
endef
define Package/ath10k-firmware-qca99x0-ct-htt/description
Alternative ath10k firmware for QCA99x0 from Candela Technologies.
Uses normal HTT TX data path for management frames, which improves
stability in busy networks and may be required for .11r authentication.
Enables IBSS and other features. See:
http://www.candelatech.com/ath10k-10.4.php
This firmware selects and requires the ath10k-ct driver.
endef
define Package/ath10k-firmware-qca9984-ct/description
Alternative ath10k firmware for QCA9984 from Candela Technologies.
@ -145,6 +249,28 @@ http://www.candelatech.com/ath10k-10.4.php
This firmware conflicts with the standard 9984 firmware, so select only
one.
endef
define Package/ath10k-firmware-qca9984-ct-htt/description
Alternative ath10k firmware for QCA9984 from Candela Technologies.
Uses normal HTT TX data path for management frames, which improves
stability in busy networks and may be required for .11r authentication.
Enables IBSS and other features. See:
http://www.candelatech.com/ath10k-10.4.php
This firmware selects and requires the ath10k-ct driver.
endef
define Package/ath10k-firmware-qca4019-ct/description
Alternative ath10k firmware for IPQ4019 radio from Candela Technologies.
Enables IBSS and other features. Works with standard or ath10k-ct driver.
See: http://www.candelatech.com/ath10k-10.4.php
endef
define Package/ath10k-firmware-qca4019-ct-htt/description
Alternative ath10k firmware for IPQ4019 radio from Candela Technologies.
Uses normal HTT TX data path for management frames, which improves
stability in busy networks and may be required for .11r authentication.
Enables IBSS and other features.
See: http://www.candelatech.com/ath10k-10.4.php
This firmware selects and requires the ath10k-ct driver.
endef
define Package/ath10k-firmware-qca9888-ct/description
Alternative ath10k firmware for QCA9886 and QCA9888 from Candela Technologies.
@ -153,6 +279,15 @@ http://www.candelatech.com/ath10k-10.4.php
This firmware conflicts with the standard 9886 and 9888 firmware, so select only
one.
endef
define Package/ath10k-firmware-qca9888-ct-htt/description
Alternative ath10k firmware for QCA9886 and QCA9888 from Candela Technologies.
Uses normal HTT TX data path for management frames, which improves
stability in busy networks and may be required for .11r authentication.
Enables IBSS and other features. See:
http://www.candelatech.com/ath10k-10.4.php
This firmware selects and requires the ath10k-ct driver.
endef
define Package/ath10k-firmware-qca99x0/description
Standard ath10k firmware for QCA99x0 from QCA
@ -162,24 +297,69 @@ endef
define Package/ath10k-firmware-qca99x0-ct
$(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.4.3 firmware for QCA99x0 devices
TITLE:=ath10k CT 10.4 firmware for QCA99x0 devices
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca99x0
endef
define Package/ath10k-firmware-qca99x0-ct-htt
$(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.4 htt-mgt fw for QCA99x0
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca99x0
DEPENDS:=+kmod-ath10k-ct
endef
define Package/ath10k-firmware-qca9984-ct
$(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.4.3 firmware for QCA9984 devices
TITLE:=ath10k CT 10.4 firmware for QCA9984 devices
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9984
endef
define Package/ath10k-firmware-qca9984-ct-htt
$(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.4 htt-mgt fw for QCA9984
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9984
DEPENDS:=+kmod-ath10k-ct
endef
define Package/ath10k-firmware-qca4019-ct
$(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.4 firmware for QCA4018/9
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca4019
endef
define Package/ath10k-firmware-qca4019-ct-htt
$(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.4 htt-mgt for QCA4018/9
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca4019
DEPENDS:=+kmod-ath10k-ct
endef
define Package/ath10k-firmware-qca9888-ct
$(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.4.3 firmware for QCA9886 and QCA9888 devices
TITLE:=ath10k CT 10.4 fw for QCA9886/8 devices
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9888
endef
define Package/ath10k-firmware-qca9888-ct-htt
$(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.4 htt-mgt fw for QCA9886/8
SECTION:=firmware
CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9888
DEPENDS:=+kmod-ath10k-ct
endef
define Package/ath10k-firmware-qca9984
$(Package/ath10k-firmware-default)
@ -223,14 +403,14 @@ define Package/ath10k-firmware-qca4019/install
$(PKG_BUILD_DIR)/QCA4019/hw1.0/board-2.bin \
$(1)/lib/firmware/ath10k/QCA4019/hw1.0/
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA4019/hw1.0/3.2.1/firmware-5.bin_10.4-3.2.1-00058 \
$(PKG_BUILD_DIR)/QCA4019/hw1.0/3.4/firmware-5.bin_10.4-3.4-00104 \
$(1)/lib/firmware/ath10k/QCA4019/hw1.0/firmware-5.bin
endef
define Package/ath10k-firmware-qca9887/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9887/hw1.0
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9887/hw1.0/10.2.4-1.0/firmware-5.bin_10.2.4-1.0-00029 \
$(PKG_BUILD_DIR)/QCA9887/hw1.0/10.2.4-1.0/firmware-5.bin_10.2.4-1.0-00033 \
$(1)/lib/firmware/ath10k/QCA9887/hw1.0/firmware-5.bin
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9887/hw1.0/board.bin \
@ -243,7 +423,7 @@ define Package/ath10k-firmware-qca9888/install
$(PKG_BUILD_DIR)/QCA9888/hw2.0/board-2.bin \
$(1)/lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9888/hw2.0/firmware-5.bin_10.4-3.2-00072 \
$(PKG_BUILD_DIR)/QCA9888/hw2.0/3.5.3/firmware-5.bin_10.4-3.5.3-00053 \
$(1)/lib/firmware/ath10k/QCA9888/hw2.0/firmware-5.bin
endef
@ -253,30 +433,10 @@ define Package/ath10k-firmware-qca988x/install
$(PKG_BUILD_DIR)/QCA988X/hw2.0/board.bin \
$(1)/lib/firmware/ath10k/QCA988X/hw2.0/
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA988X/hw2.0/10.2.4-1.0/firmware-5.bin_10.2.4-1.0-00029 \
$(PKG_BUILD_DIR)/QCA988X/hw2.0/10.2.4-1.0/firmware-5.bin_10.2.4-1.0-00033 \
$(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-5.bin
endef
define Package/ath10k-firmware-qca9887-ct/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9887/hw1.0
$(INSTALL_DATA) \
$(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA9887) \
$(1)/lib/firmware/ath10k/QCA9887/hw1.0/firmware-2.bin
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9887/hw1.0/board.bin \
$(1)/lib/firmware/ath10k/QCA9887/hw1.0/board.bin
endef
define Package/ath10k-firmware-qca988x-ct/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA988X/hw2.0
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA988X/hw2.0/board.bin \
$(1)/lib/firmware/ath10k/QCA988X/hw2.0/
$(INSTALL_DATA) \
$(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA988X) \
$(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin
endef
define Package/ath10k-firmware-qca6174/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k
$(CP) $(PKG_BUILD_DIR)/QCA6174 $(1)/lib/firmware/ath10k/
@ -295,6 +455,57 @@ define Package/ath10k-firmware-qca99x0/install
$(1)/lib/firmware/ath10k/QCA99X0/hw2.0/firmware-5.bin
endef
define Package/ath10k-firmware-qca9984/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9984/hw1.0
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9984/hw1.0/board-2.bin \
$(1)/lib/firmware/ath10k/QCA9984/hw1.0/board-2.bin
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9984/hw1.0/3.5.3/firmware-5.bin_10.4-3.5.3-00053 \
$(1)/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin
endef
# CT related firmware
define Package/ath10k-firmware-qca9887-ct/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9887/hw1.0
$(INSTALL_DATA) \
$(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA9887) \
$(1)/lib/firmware/ath10k/QCA9887/hw1.0/firmware-2.bin
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9887/hw1.0/board.bin \
$(1)/lib/firmware/ath10k/QCA9887/hw1.0/board.bin
endef
define Package/ath10k-firmware-qca9887-ct-htt/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9887/hw1.0
$(INSTALL_DATA) \
$(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA9887) \
$(1)/lib/firmware/ath10k/QCA9887/hw1.0/ct-firmware-2.bin
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9887/hw1.0/board.bin \
$(1)/lib/firmware/ath10k/QCA9887/hw1.0/board.bin
endef
define Package/ath10k-firmware-qca988x-ct/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA988X/hw2.0
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA988X/hw2.0/board.bin \
$(1)/lib/firmware/ath10k/QCA988X/hw2.0/
$(INSTALL_DATA) \
$(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA988X) \
$(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin
endef
define Package/ath10k-firmware-qca988x-ct-htt/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA988X/hw2.0
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA988X/hw2.0/board.bin \
$(1)/lib/firmware/ath10k/QCA988X/hw2.0/
$(INSTALL_DATA) \
$(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA988X) \
$(1)/lib/firmware/ath10k/QCA988X/hw2.0/ct-firmware-2.bin
endef
define Package/ath10k-firmware-qca99x0-ct/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA99X0/hw2.0
$(INSTALL_DATA) \
@ -307,15 +518,17 @@ define Package/ath10k-firmware-qca99x0-ct/install
$(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA99X0) \
$(1)/lib/firmware/ath10k/QCA99X0/hw2.0/firmware-5.bin
endef
define Package/ath10k-firmware-qca9984/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9984/hw1.0
define Package/ath10k-firmware-qca99x0-ct-htt/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA99X0/hw2.0
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9984/hw1.0/board-2.bin \
$(1)/lib/firmware/ath10k/QCA9984/hw1.0/board-2.bin
$(DL_DIR)/$(QCA99X0_BOARD_FILE) \
$(1)/lib/firmware/ath10k/QCA99X0/hw2.0/board-2.bin
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9984/hw1.0/3.4/firmware-5.bin_10.4-3.4-00082 \
$(1)/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin
$(PKG_BUILD_DIR)/QCA99X0/hw2.0/boardData_AR900B_CUS239_5G_v2_001.bin \
$(1)/lib/firmware/ath10k/QCA99X0/hw2.0/board.bin
$(INSTALL_DATA) \
$(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA99X0) \
$(1)/lib/firmware/ath10k/QCA99X0/hw2.0/ct-firmware-5.bin
endef
define Package/ath10k-firmware-qca9984-ct/install
@ -327,6 +540,34 @@ define Package/ath10k-firmware-qca9984-ct/install
$(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA9984) \
$(1)/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin
endef
define Package/ath10k-firmware-qca9984-ct-htt/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9984/hw1.0
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9984/hw1.0/board-2.bin \
$(1)/lib/firmware/ath10k/QCA9984/hw1.0/board-2.bin
$(INSTALL_DATA) \
$(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA9984) \
$(1)/lib/firmware/ath10k/QCA9984/hw1.0/ct-firmware-5.bin
endef
define Package/ath10k-firmware-qca4019-ct/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA4019/hw1.0
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA4019/hw1.0/board-2.bin \
$(1)/lib/firmware/ath10k/QCA4019/hw1.0/
$(INSTALL_DATA) \
$(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA4019) \
$(1)/lib/firmware/ath10k/QCA4019/hw1.0/firmware-5.bin
endef
define Package/ath10k-firmware-qca4019-ct-htt/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA4019/hw1.0
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA4019/hw1.0/board-2.bin \
$(1)/lib/firmware/ath10k/QCA4019/hw1.0/
$(INSTALL_DATA) \
$(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA4019) \
$(1)/lib/firmware/ath10k/QCA4019/hw1.0/ct-firmware-5.bin
endef
define Package/ath10k-firmware-qca9888-ct/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9888/hw2.0
@ -340,6 +581,18 @@ define Package/ath10k-firmware-qca9888-ct/install
$(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA9888) \
$(1)/lib/firmware/ath10k/QCA9888/hw2.0/firmware-5.bin
endef
define Package/ath10k-firmware-qca9888-ct-htt/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9888/hw2.0
ln -s \
../../cal-pci-0000:01:00.0.bin \
$(1)/lib/firmware/ath10k/QCA9888/hw2.0/board.bin
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9888/hw2.0/board-2.bin \
$(1)/lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin
$(INSTALL_DATA) \
$(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA9888) \
$(1)/lib/firmware/ath10k/QCA9888/hw2.0/ct-firmware-5.bin
endef
$(eval $(call BuildPackage,ath10k-firmware-qca9887))
$(eval $(call BuildPackage,ath10k-firmware-qca9888))
@ -350,7 +603,14 @@ $(eval $(call BuildPackage,ath10k-firmware-qca9984))
$(eval $(call BuildPackage,ath10k-firmware-qca4019))
$(eval $(call BuildPackage,ath10k-firmware-qca9887-ct))
$(eval $(call BuildPackage,ath10k-firmware-qca9887-ct-htt))
$(eval $(call BuildPackage,ath10k-firmware-qca988x-ct))
$(eval $(call BuildPackage,ath10k-firmware-qca988x-ct-htt))
$(eval $(call BuildPackage,ath10k-firmware-qca99x0-ct))
$(eval $(call BuildPackage,ath10k-firmware-qca99x0-ct-htt))
$(eval $(call BuildPackage,ath10k-firmware-qca9984-ct))
$(eval $(call BuildPackage,ath10k-firmware-qca9984-ct-htt))
$(eval $(call BuildPackage,ath10k-firmware-qca4019-ct))
$(eval $(call BuildPackage,ath10k-firmware-qca4019-ct-htt))
$(eval $(call BuildPackage,ath10k-firmware-qca9888-ct))
$(eval $(call BuildPackage,ath10k-firmware-qca9888-ct-htt))

View File

@ -0,0 +1,49 @@
#
# Copyright (C) 2018 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=intel-microcode
PKG_VERSION:=20180312
PKG_RELEASE:=1
PKG_SOURCE:=intel-microcode_3.$(PKG_VERSION).$(PKG_RELEASE).tar.xz
PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/non-free/i/intel-microcode/
PKG_HASH:=6ccb295d23961c7b96a69280e30fdce939e1d905147b22b8428886b173812d52
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-3.$(PKG_VERSION).$(PKG_RELEASE)
PKG_BUILD_DEPENDS:=iucode-tool/host
ifdef CONFIG_TARGET_x86_64
MICROCODE:="intel-microcode-64"
else
MICROCODE:="intel-microcode"
endif
include $(INCLUDE_DIR)/package.mk
define Package/intel-microcode
SECTION:=firmware
CATEGORY:=Firmware
URL:=$(PKG_SOURCE_URL)
DEPENDS:=@TARGET_x86 +iucode-tool
TITLE:=Intel x86 CPU microcode
endef
define Build/Compile
IUCODE_TOOL=$(STAGING_DIR)/../host/bin/iucode_tool $(MAKE) -C $(PKG_BUILD_DIR)
mkdir $(PKG_BUILD_DIR)/intel-ucode
$(STAGING_DIR)/../host/bin/iucode_tool -q \
--write-firmware=$(PKG_BUILD_DIR)/intel-ucode $(PKG_BUILD_DIR)/$(MICROCODE).bin
endef
define Package/intel-microcode/install
$(INSTALL_DIR) $(1)/lib/firmware/intel-ucode
$(INSTALL_DATA) $(PKG_BUILD_DIR)/intel-ucode/* $(1)/lib/firmware/intel-ucode
endef
$(eval $(call BuildPackage,intel-microcode))

View File

@ -13,14 +13,14 @@ endef
define Build/Compile
endef
ALLWIFIBOARDS:=fritz4040 openmesh_a42
ALLWIFIBOARDS:=asus_rt-ac58u avm_fritzbox-4040 glinet_gl-b1300 meraki_mr33
ALLWIFIPACKAGES:=$(foreach BOARD,$(ALLWIFIBOARDS),ipq-wifi-$(BOARD))
define Package/ipq-wifi-default
SUBMENU:=ath10k IPQ4019 Boarddata
SECTION:=firmware
CATEGORY:=Firmware
DEPENDS:=@TARGET_ipq806x +ath10k-firmware-qca4019
DEPENDS:=@TARGET_ipq40xx +ath10k-firmware-qca4019
TITLE:=Custom Board
endef
@ -47,7 +47,9 @@ Don't install it for any other device!
PREV_BOARD+=ipq-wifi-$(1)
endef
$(eval $(call generate-ipq-wifi-package,fritz4040,board-fritz4040.bin,AVM FRITZBox 4040))
$(eval $(call generate-ipq-wifi-package,openmesh_a42,board-openmesh_a42.bin,OpenMesh A42))
$(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))
$(foreach PACKAGE,$(ALLWIFIPACKAGES),$(eval $(call BuildPackage,$(PACKAGE))))

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -13,7 +13,7 @@ PKG_SOURCE_DATE:=2017-02-13
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/qoriq-open-source/fm-ucode.git
PKG_SOURCE_URL:=https://github.com/NXP/qoriq-fm-ucode.git
PKG_SOURCE_VERSION:=c275e91392e2adab1ed22f3867b8269ca3c54014
PKG_MIRROR_HASH:=1a4611d528f67f3acfa88aefdec9a9a67d96a3139ac5fe1089f599272e6c4a52

View File

@ -8,13 +8,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ls-mc
PKG_SOURCE_DATE:=2014-07-04
PKG_SOURCE_DATE:=2014-07-02
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/qoriq-open-source/mc-binary.git
PKG_SOURCE_VERSION:=824745fe1580b281bebb808321c3f41353a3140a
PKG_MIRROR_HASH:=984c7905af3a4b87b72263de9220901c531fe064f0b89dd2882676354e09ed16
PKG_SOURCE_URL:=https://github.com/NXP/qoriq-mc-binary.git
PKG_SOURCE_VERSION:=40b0c8b7edfd2d8f989619b12d6352472455c696
PKG_MIRROR_HASH:=b3c8db70de8617e5bc033951b5ad3824f98353303870d6035668075daf93382e
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
@ -28,7 +28,7 @@ define Package/layerscape-mc-ls1088ardb
DEPENDS:=@TARGET_layerscape
TITLE:=NXP LS1088ARDB MC firmware
VARIANT:=ls1088ardb
CONFIG:=ls1088a/mc_10.3.4_ls1088a_20170929.itb
CONFIG:=ls1088a/mc_10.4.0_ls1088a_20171101.itb
endef
define Package/layerscape-mc-ls2088ardb
@ -37,7 +37,7 @@ define Package/layerscape-mc-ls2088ardb
DEPENDS:=@TARGET_layerscape
TITLE:=NXP LS2088ARDB MC firmware
VARIANT:=ls2088ardb
CONFIG:=ls2088a/mc_10.3.4_ls2088a_20170929.itb
CONFIG:=ls2088a/mc_10.4.0_ls2088a_20171101.itb
endef
define Build/Compile

View File

@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk
PKG_NAME:=ls-ppa
PKG_SOURCE_DATE:=2017-10-26
PKG_SOURCE_DATE:=2018-01-18
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/yangbolu1991/ppa-binary.git
PKG_SOURCE_VERSION:=76a80ca988affbee67bb17096aefb82ba6d91be7
PKG_MIRROR_HASH:=55e6cfa0f03f2db667ed4270e5aaf43ab830343af3b9724f92e830a1e3a3a25f
PKG_SOURCE_VERSION:=cd295be24cadae51741154f3b1c935c7b9064230
PKG_MIRROR_HASH:=743ca493f640d5fb2e99ad7b1da030f9088546f1ad70b5d1e61eb98a969c00c5
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)

View File

@ -0,0 +1,99 @@
#
# Copyright 2017 NXP
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk
PKG_NAME:=ls-rcw-bin
PKG_SOURCE_DATE:=2017-11-19
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/NXP/qoriq-rcw-bin.git
PKG_SOURCE_VERSION:=bf3ae3cb15829876007c553509501cdaa16745e7
PKG_MIRROR_HASH:=dc14a47e9529578c63d9ad2bf4e27ef565a055e4121ce2d1324c019f69074314
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
PKG_FLAGS:=nonshared
include $(INCLUDE_DIR)/package.mk
define rcw-bin/Default
TITLE:=
CONFIG:=
endef
define rcw-bin/ls1012ardb
TITLE=NXP LS1012ARDB RCW Binary
CONFIG=ls1012ardb/R_SPNH_3508/PBL_0x35_0x08_1000_250_1000_default.bin
endef
define rcw-bin/ls1088ardb
TITLE=NXP LS1088ARDB RCW Binary
CONFIG=ls1088ardb/FCQQQQQQQQ_PPP_H_0x1d_0x0d/PBL_QSPI_1600_700_2100_0x1d_0x0d.bin
endef
define rcw-bin/ls2088ardb
TITLE=NXP LS2088ARDB RCW Binary
CONFIG=ls2088ardb/FFFFFFFF_PP_HH_0x2a_0x41/PBL_0x2a_0x41_1800_700_1866_1600.bin
endef
define rcw-bin/ls1012afrdm
TITLE=NXP LS1012AFRDM RCW Binary
CONFIG=ls1012afrdm/N_SSNP_3305/PBL_0x33_0x05_800_250_1000_default.bin
endef
RCWS := \
ls1012ardb \
ls1088ardb \
ls2088ardb \
ls1012afrdm
define Package/rcw-bin/template
define Package/rcw-layerscape-$(1)
SECTION:=firmware
CATEGORY:=Firmware
DEPENDS:=@TARGET_layerscape
TITLE:=$(2)
VARIANT:=$(1)
endef
endef
define BuildRCWPackage
$(eval $(rcw-bin/Default))
$(eval $(rcw-bin/$(1)))
$(call Package/rcw-bin/template,$(1),$(TITLE))
endef
ifdef BUILD_VARIANT
$(eval $(call rcw-bin/$(BUILD_VARIANT)))
RCW_CONFIG:=$(if $(CONFIG),$(CONFIG),$(BUILD_VARIANT))
endif
define Build/Compile
endef
define Package/rcw-bin/install/default
$(INSTALL_DIR) $(STAGING_DIR_IMAGE)
$(CP) $(PKG_BUILD_DIR)/$(RCW_CONFIG) $(STAGING_DIR_IMAGE)/$(1)-rcw.bin
endef
define Package/rcw-bin/install/template
define Package/rcw-layerscape-$(1)/install
$(call Package/rcw-bin/install/default,$(2))
endef
endef
$(foreach r,$(RCWS), \
$(eval $(call Package/rcw-bin/install/template,$(r),$(r))) \
)
$(foreach r,$(RCWS), \
$(eval $(call BuildRCWPackage,$(r))) \
$(eval $(call BuildPackage,rcw-layerscape-$(r))) \
)

View File

@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk
PKG_NAME:=ls-rcw
PKG_SOURCE_DATE:=2017-09-26
PKG_SOURCE_DATE:=2017-12-01
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/qoriq-open-source/rcw.git
PKG_SOURCE_VERSION:=6719b046ee87b04026fe163e6c8fbbebba2186aa
PKG_MIRROR_HASH:=9645ecf148640ec7d1029bce65950f2a0b0e6b351a25ef60c8a839c42c6ed56d
PKG_SOURCE_VERSION:=cbd5e66fcb850e821c8632578410ceba5733a49e
PKG_MIRROR_HASH:=4caad5e0ae2018a0a594f36e46e4a96698420956c64bb73656f380fd46733c3d
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
@ -41,33 +41,9 @@ define rcw/ls1046ardb
CONFIG=ls1046ardb/RR_FFSSPPPH_1133_5559/rcw_1800_qspiboot.bin.swap
endef
define rcw/ls1012ardb
TITLE=RCW binary $(PKG_VERSION) for NXP ls1012ardb 64b/32b Dev Board
CONFIG=ls1012ardb/R_SPNH_3508/PBL_0x35_0x08_1000_250_1000_default.bin
endef
define rcw/ls1088ardb
TITLE=RCW binary $(PKG_VERSION) for NXP ls1088ardb 64b/32b Dev Board
CONFIG=ls1088ardb/FCQQQQQQQQ_PPP_H_0x1d_0x0d/PBL_QSPI_1600_700_2100_0x1d_0x0d.bin
endef
define rcw/ls2088ardb
TITLE=RCW binary $(PKG_VERSION) for NXP ls2088ardb 64b/32b Dev Board
CONFIG=ls2088ardb/FFFFFFFF_PP_HH_0x2a_0x41/PBL_0x2a_0x41_1800_700_1866_1600.bin
endef
define rcw/ls1012afrdm
TITLE=RCW binary $(PKG_VERSION) for NXP ls1012afrdm 64b/32b Dev Board
CONFIG=ls1012afrdm/N_SSNP_3305/PBL_0x33_0x05_800_250_1000_default.bin
endef
RCWS := \
ls1043ardb \
ls1046ardb \
ls1012ardb \
ls1088ardb \
ls2088ardb \
ls1012afrdm
ls1046ardb
define Package/rcw/template
define Package/rcw-layerscape-$(1)

View File

@ -8,13 +8,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ppfe
PKG_SOURCE_DATE:=2017-10-13
PKG_SOURCE_DATE:=2017-12-05
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/qoriq-open-source/engine-pfe-bin.git
PKG_SOURCE_VERSION:=97cd13d3070d7199e62881bc495b332194b67edd
PKG_MIRROR_HASH:=3457bfe7201a8410443f34d4bb5fa67d4ff19e2d0f3957e84e3f20e2ae3fa34a
PKG_SOURCE_URL:=https://github.com/NXP/qoriq-engine-pfe-bin.git
PKG_SOURCE_VERSION:=848002fe4e0e3efb8d13a813e5c123bbc87aa95b
PKG_MIRROR_HASH:=b6867be2f5826e807db15256996e11303ca7bbe06ac18448cbf68827d9a59ae2
PKG_FLAGS:=nonshared
@ -31,7 +31,7 @@ define Package/layerscape-ppfe
CONFIG_FW:=ls1012a/u-boot/pfe_fw_sbl.itb
CONFIG_BIN1:=ls1012a/slow_path/ppfe_class_ls1012a.elf
CONFIG_BIN2:=ls1012a/slow_path/ppfe_tmu_ls1012a.elf
CONFIG_LIC:=Freescale-Binary-EULA
CONFIG_LIC:=NXP-Binary-EULA.txt
endef
define Build/Compile

View File

@ -143,7 +143,7 @@ $(eval $(call BuildPackage,iwlwifi-firmware-iwl7265d))
Package/iwlwifi-firmware-iwl8260c = $(call Package/firmware-default,Intel Wireless 8260 and 4165 firmware)
define Package/iwlwifi-firmware-iwl8260c/install
$(INSTALL_DIR) $(1)/lib/firmware
$(INSTALL_DATA) $(PKG_BUILD_DIR)/iwlwifi-8000C-27.ucode $(1)/lib/firmware
$(INSTALL_DATA) $(PKG_BUILD_DIR)/iwlwifi-8000C-31.ucode $(1)/lib/firmware
endef
$(eval $(call BuildPackage,iwlwifi-firmware-iwl8260c))

View File

@ -0,0 +1,42 @@
From 7eb6313910023f1be6015a8cd9e1b380ae01af64 Mon Sep 17 00:00:00 2001
From: Chen Minqiang <ptpt52@gmail.com>
Date: Sun, 7 Jan 2018 14:38:36 +0800
Subject: [PATCH] custom fix txpower and dfs
---
db.txt | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/db.txt b/db.txt
index 75dc0a3..24989ad 100644
--- a/db.txt
+++ b/db.txt
@@ -277,9 +277,9 @@ country CL: DFS-JP
(5735 - 5835 @ 80), (20)
country CN: DFS-FCC
- (2402 - 2482 @ 40), (20)
- (5170 - 5250 @ 80), (23), AUTO-BW
- (5250 - 5330 @ 80), (23), DFS, AUTO-BW
+ (2402 - 2482 @ 40), (30)
+ (5170 - 5250 @ 80), (30), AUTO-BW
+ (5250 - 5330 @ 80), (30), AUTO-BW
(5735 - 5835 @ 80), (30)
# 60 GHz band channels 1,4: 28dBm, channels 2,3: 44dBm
# ref: http://www.miit.gov.cn/n11293472/n11505629/n11506593/n11960250/n11960606/n11960700/n12330791.files/n12330790.pdf
@@ -1238,9 +1238,9 @@ country UG: DFS-FCC
country US: DFS-FCC
(2402 - 2472 @ 40), (30)
# 5.15 ~ 5.25 GHz: 30 dBm for master mode, 23 dBm for clients
- (5170 - 5250 @ 80), (23), AUTO-BW
- (5250 - 5330 @ 80), (23), DFS, AUTO-BW
- (5490 - 5730 @ 160), (23), DFS
+ (5170 - 5250 @ 80), (30), AUTO-BW
+ (5250 - 5330 @ 80), (30), AUTO-BW
+ (5490 - 5730 @ 160), (30)
(5735 - 5835 @ 80), (30)
# 60g band
# reference: http://cfr.regstoday.com/47cfr15.aspx#47_CFR_15p255
--
2.7.4

View File

@ -8,19 +8,19 @@ PKG_LICENSE_FILES:=
PKG_SOURCE_URL:=https://github.com/greearb/ath10k-ct.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_DATE:=2017-06-13
PKG_SOURCE_VERSION:=bded1823912549017d819d1796273b3134c3de20
PKG_MIRROR_HASH:=616174650e12a82edb6b6bd18ac186e2c6a48fdad0082df9d2011ab20940814b
PKG_MAINTAINER:=Ben Greear <greearb@candelatech.com>
PKG_BUILD_PARALLEL:=1
PKG_EXTMOD_SUBDIRS:=ath10k
PKG_SOURCE_DATE:=2018-03-16
PKG_SOURCE_VERSION:=30827f7d5b9841905c4efe918da2d95fc518c921
PKG_MIRROR_HASH:=aac023d7f9b09becf27058b1d09ae6d068b14bb6f10c5b5a248c7ee5ecff04dc
# Build the 4.13 ath10k-ct driver version. Other options are "-4.9", or
# leave un-defined for 4.7 kernel. Probably this should match as closely as
# possible to whatever mac80211 backports version is being used.
CT_KVER="-4.13"
PKG_MAINTAINER:=Ben Greear <greearb@candelatech.com>
PKG_BUILD_PARALLEL:=1
PKG_EXTMOD_SUBDIRS:=ath10k$(CT_KVER)
STAMP_CONFIGURED_DEPENDS := $(STAGING_DIR)/usr/include/mac80211-backport/backport/autoconf.h
include $(INCLUDE_DIR)/kernel.mk
@ -29,11 +29,12 @@ include $(INCLUDE_DIR)/package.mk
define KernelPackage/ath10k-ct
SUBMENU:=Wireless Drivers
TITLE:=ath10k-ct driver optimized for CT ath10k firmware
DEPENDS:=+kmod-mac80211 +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT @PCI_SUPPORT +kmod-hwmon-core
DEPENDS:=+kmod-mac80211 +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT +@DRIVER_11W_SUPPORT +kmod-hwmon-core
FILES:=\
$(PKG_BUILD_DIR)/ath10k$(CT_KVER)/ath10k_pci.ko \
$(PKG_BUILD_DIR)/ath10k$(CT_KVER)/ath10k_core.ko
AUTOLOAD:=$(call AutoProbe,ath10k_pci)
PROVIDES:=kmod-ath10k
endef
NOSTDINC_FLAGS = \
@ -50,9 +51,11 @@ ifdef CONFIG_PACKAGE_MAC80211_MESH
endif
CT_MAKEDEFS += CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m
# No AHB support enabled yet. Could conditionally enable it later.
#CT_MAKEDEFS += CONFIG_ATH10K_AHB=y
#NOSTDINC_FLAGS += -DCONFIG_ATH10K_AHB
# This AHB logic is needed for IPQ4019 radios
CT_MAKEDEFS += CONFIG_ATH10K_AHB=m
NOSTDINC_FLAGS += -DCONFIG_ATH10K_AHB
NOSTDINC_FLAGS += -DSTANDALONE_CT
ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS

View File

@ -1,36 +0,0 @@
From c0cc00f250e19c717fc9cdbdb7f55aaa569c7498 Mon Sep 17 00:00:00 2001
From: Hauke Mehrtens <hauke@hauke-m.de>
Date: Thu, 24 Aug 2017 23:06:41 +0200
Subject: [PATCH] ath10k: activate user space firmware loading again
In commit 9f5bcfe93315 ("ath10k: silence firmware file probing
warnings") the firmware loading was changed from request_firmware() to
request_firmware_direct() to silence some warnings in case it fails.
request_firmware_direct() directly searches in the file system only and
does not send a hotplug event to user space in case it could not find
the firmware directly.
In LEDE we use a user space script to extract the calibration data from
the flash memory which gets triggered by the hotplug event. This way the
firmware gets extracted from some vendor specific partition when the
driver requests this firmware. This mechanism does not work any more
after this change.
Fixes: 9f5bcfe93315 ("ath10k: silence firmware file probing warnings")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Cc: Michal Kazior <michal.kazior@tieto.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
---
ath10k-4.13/core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/ath10k-4.13/core.c
+++ b/ath10k-4.13/core.c
@@ -556,7 +556,7 @@ static const struct firmware *ath10k_fet
dir = ".";
snprintf(filename, sizeof(filename), "%s/%s", dir, file);
- ret = request_firmware_direct(&fw, filename, ar->dev);
+ ret = request_firmware(&fw, filename, ar->dev);
ath10k_dbg(ar, ATH10K_DBG_BOOT, "boot fw request '%s': %d\n",
filename, ret);

View File

@ -0,0 +1,10 @@
--- broadcom-wl-5.10.56.27.3/driver/wl_linux.c.orig 2018-01-13 18:25:14.944667645 +0100
+++ broadcom-wl-5.10.56.27.3/driver/wl_linux.c 2018-01-13 18:25:25.836667888 +0100
@@ -2762,7 +2762,6 @@
bcopy(oskb->data + D11_PHY_HDR_LEN, pdata, oskb->len - D11_PHY_HDR_LEN);
skb->dev = wl->monitor;
- skb->dev->last_rx = jiffies;
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
skb_reset_mac_header(skb);
#else

View File

@ -35,7 +35,8 @@
#define SIO_LOCK_KEY 0xAA /* Key to disable Super-I/O */
#define SIO_NCT5104D_ID 0x1061 /* Chip ID */
#define SIO_PCENGINES_APU_NCT5104D_ID 0xc452 /* Chip ID */
#define SIO_PCENGINES_APU_NCT5104D_ID1 0xc452 /* Chip ID */
#define SIO_PCENGINES_APU_NCT5104D_ID2 0xc453 /* Chip ID */
enum chips { nct5104d };
@ -350,7 +351,8 @@ static int __init nct5104d_find(int addr, struct nct5104d_sio *sio)
devid = superio_inw(addr, SIO_CHIPID);
switch (devid) {
case SIO_NCT5104D_ID:
case SIO_PCENGINES_APU_NCT5104D_ID:
case SIO_PCENGINES_APU_NCT5104D_ID1:
case SIO_PCENGINES_APU_NCT5104D_ID2:
sio->type = nct5104d;
/* enable GPIO0 and GPIO1 */
superio_select(addr, SIO_LD_GPIO);

View File

@ -13,9 +13,9 @@ PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/dtaht/sch_cake.git
PKG_SOURCE_DATE:=2018-01-07
PKG_SOURCE_VERSION:=568ed96467f41aad37556b0db11fc008e05941e9
PKG_MIRROR_HASH:=8f3f962824826d07b1029379d91e01bf97fe0bfce1233af5cfa7a54cb1c3632c
PKG_SOURCE_DATE:=2018-03-19
PKG_SOURCE_VERSION:=0afc1bee4e9fc5d75668cb10254ab5d2d02f0098
PKG_MIRROR_HASH:=b8ac95753d05ff602282ed5a799f9c953f60decebc5720ee8f0101344a5acfc4
include $(INCLUDE_DIR)/package.mk

View File

@ -111,7 +111,11 @@ static inline long
ugly_hack_sleep_on_timeout(wait_queue_head_t *q, long timeout)
{
unsigned long flags;
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
wait_queue_entry_t wait;
#else
wait_queue_t wait;
#endif
init_waitqueue_entry(&wait, current);

View File

@ -10,15 +10,15 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=ltq-adsl
PKG_VERSION:=3.24.4.4
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=drv_dsl_cpe_api_danube-$(PKG_VERSION).tar.gz
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/ltq-dsl-$(BUILD_VARIANT)/drv_dsl_cpe_api-$(PKG_VERSION)
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources/
PKG_HASH:=eb2ed59715d3bf4e8a1460bbbe2f1660039e0a9f9d72afb1b2b16590094eb33c
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_USE_MIPS16:=0
PKG_CHECK_FORMAT_SECURITY:=0
PKG_ASLR_PIE:=0
PKG_FIXUP:=autoreconf
include $(INCLUDE_DIR)/package.mk
@ -83,8 +83,6 @@ CONFIGURE_ARGS += \
EXTRA_CFLAGS += -DDEBUG
endif
EXTRA_CFLAGS = -fno-pic -mno-abicalls -mlong-calls -G 0
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include/adsl
$(CP) $(PKG_BUILD_DIR)/src/include/drv_dsl_cpe_*.h $(1)/usr/include/adsl/

View File

@ -0,0 +1,32 @@
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -253,10 +253,7 @@ else
drv_dsl_cpe_api_common_mod_cflags =
endif
-drv_dsl_cpe_api_common_cflags = -DLINUX -D__LINUX__ -D__KERNEL__ -DEXPORT_SYMTAB \
- -pipe -Wall -Wformat -Wimplicit -Wunused -Wswitch -Wcomment -Winline \
- -Wuninitialized -Wparentheses -Wsign-compare -Wreturn-type \
- -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common
+drv_dsl_cpe_api_common_cflags = -DLINUX -D__LINUX__ -D__KERNEL__ -DEXPORT_SYMTAB
if DSL_DBG_MAX_LEVEL_SET
drv_dsl_cpe_api_common_cflags += -DDSL_DBG_MAX_LEVEL=$(DSL_DBG_MAX_LEVEL_PRE)
@@ -266,7 +263,7 @@ endif
drv_dsl_cpe_api_target_cflags = $(ADD_DRV_CFLAGS)
# compile cflags
-drv_dsl_cpe_api_compile_cflags = $(EXTRA_DRV_CFLAGS)
+drv_dsl_cpe_api_compile_cflags =
if !KERNEL_2_6
# the headerfile of linux kernels 2.6.x contain to much arithmetic
@@ -314,7 +311,7 @@ drv_dsl_cpe_api.ko: $(drv_dsl_cpe_api_SO
@echo -e "# drv_dsl_cpe_api: Generated to build Linux 2.6.x kernel object" > $(PWD)/Kbuild
@echo -e "obj-m := $(subst .ko,.o,$@)" >> $(PWD)/Kbuild
@echo -e "$(subst .ko,,$@)-y := $(drv_dsl_cpe_api_OBJS)" >> $(PWD)/Kbuild
- @echo -e "EXTRA_CFLAGS := $(CFLAGS) -DHAVE_CONFIG_H $(drv_dsl_cpe_api_CFLAGS) $(DSL_DRIVER_INCL_PATH) $(IFXOS_INCLUDE_PATH) -I@abs_srcdir@/include -I$(PWD)/include" >> $(PWD)/Kbuild
+ @echo -e "EXTRA_CFLAGS := -DHAVE_CONFIG_H $(drv_dsl_cpe_api_CFLAGS) $(DSL_DRIVER_INCL_PATH) $(IFXOS_INCLUDE_PATH) -I@abs_srcdir@/include -I$(PWD)/include" >> $(PWD)/Kbuild
$(MAKE) ARCH=@KERNEL_ARCH@ -C @KERNEL_BUILD_PATH@ O=@KERNEL_BUILD_PATH@ M=$(PWD) modules
clean-generic:

View File

@ -1,7 +1,5 @@
Index: drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_device_danube.h
===================================================================
--- drv_dsl_cpe_api-3.24.4.4.orig/src/include/drv_dsl_cpe_device_danube.h 2009-05-12 20:02:16.000000000 +0200
+++ drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_device_danube.h 2012-11-29 19:47:21.060210322 +0100
--- a/src/include/drv_dsl_cpe_device_danube.h
+++ b/src/include/drv_dsl_cpe_device_danube.h
@@ -24,7 +24,7 @@
#include "drv_dsl_cpe_simulator_danube.h"
#else
@ -11,10 +9,8 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_device_danube.h
#endif /* defined(DSL_CPE_SIMULATOR_DRIVER) && defined(WIN32)*/
#define DSL_MAX_LINE_NUMBER 1
Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
===================================================================
--- drv_dsl_cpe_api-3.24.4.4.orig/src/common/drv_dsl_cpe_os_linux.c 2009-07-13 11:33:43.000000000 +0200
+++ drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c 2012-11-29 19:46:32.700209112 +0100
--- a/src/common/drv_dsl_cpe_os_linux.c
+++ b/src/common/drv_dsl_cpe_os_linux.c
@@ -11,6 +11,7 @@
#ifdef __LINUX__
@ -23,7 +19,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
#include "drv_dsl_cpe_api.h"
#include "drv_dsl_cpe_api_ioctl.h"
@@ -34,9 +35,13 @@
@@ -34,9 +35,13 @@ static const char* dsl_cpe_api_version =
static DSL_ssize_t DSL_DRV_Write(DSL_DRV_file_t *pFile, const DSL_char_t * pBuf,
DSL_DRV_size_t nSize, DSL_DRV_offset_t * pLoff);
@ -38,7 +34,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
static int DSL_DRV_Open(DSL_DRV_inode_t * ino, DSL_DRV_file_t * fil);
static int DSL_DRV_Release(DSL_DRV_inode_t * ino, DSL_DRV_file_t * fil);
@@ -72,7 +77,11 @@
@@ -72,7 +77,11 @@ static struct file_operations dslCpeApiO
open: DSL_DRV_Open,
release: DSL_DRV_Release,
write: DSL_DRV_Write,
@ -50,7 +46,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
poll: DSL_DRV_Poll
};
#else
@@ -168,10 +177,17 @@
@@ -168,10 +177,17 @@ static DSL_ssize_t DSL_DRV_Write(DSL_DRV
\return Success or failure.
\ingroup Internal
*/
@ -68,7 +64,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
{
DSL_int_t nErr=0;
DSL_boolean_t bIsInKernel;
@@ -216,16 +232,7 @@
@@ -216,16 +232,7 @@ static DSL_int_t DSL_DRV_Ioctls(DSL_DRV_
}
}
}
@ -86,7 +82,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
if ( (_IOC_TYPE(nCommand) == DSL_IOC_MAGIC_CPE_API) ||
(_IOC_TYPE(nCommand) == DSL_IOC_MAGIC_CPE_API_G997) ||
(_IOC_TYPE(nCommand) == DSL_IOC_MAGIC_CPE_API_PM) ||
@@ -1058,6 +1065,7 @@
@@ -1058,6 +1065,7 @@ static void DSL_DRV_DebugInit(void)
/* Entry point of driver */
int __init DSL_ModuleInit(void)
{
@ -94,7 +90,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
DSL_int_t i;
printk(DSL_DRV_CRLF DSL_DRV_CRLF "Infineon CPE API Driver version: %s" DSL_DRV_CRLF,
@@ -1104,7 +1112,8 @@
@@ -1104,7 +1112,8 @@ int __init DSL_ModuleInit(void)
}
DSL_DRV_DevNodeInit();
@ -104,35 +100,44 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
return 0;
}
Index: drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_os_linux.h
===================================================================
--- drv_dsl_cpe_api-3.24.4.4.orig/src/include/drv_dsl_cpe_os_linux.h 2009-07-03 17:04:51.000000000 +0200
+++ drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_os_linux.h 2012-11-29 19:47:23.092210377 +0100
@@ -17,17 +17,17 @@
--- a/src/include/drv_dsl_cpe_os_linux.h
+++ b/src/include/drv_dsl_cpe_os_linux.h
@@ -16,18 +16,18 @@
extern "C" {
#endif
#include <asm/ioctl.h>
-#include <asm/ioctl.h>
-#include <linux/autoconf.h>
+#include <generated/autoconf.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/ctype.h>
#include <linux/version.h>
#include <linux/spinlock.h>
-
+#include <linux/sched.h>
#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,17))
-
-#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,17))
- #include <linux/utsrelease.h>
+ #include <generated/utsrelease.h>
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33))
+#include <linux/utsrelease.h>
+#else
+#include <generated/utsrelease.h>
#endif
#include <linux/types.h>
Index: drv_dsl_cpe_api-3.24.4.4/src/ifxmips_mei_interface.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ drv_dsl_cpe_api-3.24.4.4/src/ifxmips_mei_interface.h 2012-11-29 19:47:54.972211177 +0100
@@ -39,7 +39,8 @@
#include <linux/delay.h>
#include <linux/poll.h>
#include <asm/uaccess.h>
-#include <linux/smp_lock.h>
+//#include <linux/smp_lock.h>
+#include <asm/ioctl.h>
#ifdef INCLUDE_DSL_CPE_API_IFXOS_SUPPORT
/** IFXOS includes*/
--- /dev/null
+++ b/src/ifxmips_mei_interface.h
@@ -0,0 +1,702 @@
+/******************************************************************************
+
@ -838,7 +843,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/ifxmips_mei_interface.h
+#endif //IFXMIPS_MEI_H
--- a/configure.in
+++ b/configure.in
@@ -310,7 +310,7 @@
@@ -310,7 +310,7 @@ dnl Set kernel build path
AC_ARG_ENABLE(kernelbuild,
AC_HELP_STRING(--enable-kernel-build=x,Set the target kernel build path),
[
@ -847,7 +852,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/ifxmips_mei_interface.h
AC_SUBST([KERNEL_BUILD_PATH],[$enableval])
else
AC_MSG_ERROR([The kernel build directory is not valid or not configured!])
@@ -333,12 +333,12 @@
@@ -333,12 +333,12 @@ AC_ARG_ENABLE(ifxos-include,
echo Set the lib_ifxos include path $enableval
AC_SUBST([IFXOS_INCLUDE_PATH],[$enableval])
else
@ -862,7 +867,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/ifxmips_mei_interface.h
AC_SUBST([IFXOS_INCLUDE_PATH],[$DEFAULT_IFXOS_INCLUDE_PATH])
]
)
@@ -1702,73 +1702,73 @@
@@ -1702,73 +1702,73 @@ dnl Set the configure params for dist ch
AC_SUBST([DISTCHECK_CONFIGURE_PARAMS],[$CONFIGURE_OPTIONS])
AC_CONFIG_COMMANDS_PRE([
@ -1005,7 +1010,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/ifxmips_mei_interface.h
AC_CONFIG_FILES([Makefile src/Makefile])
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -303,7 +303,7 @@
@@ -300,7 +300,7 @@ if KERNEL_2_6
drv_dsl_cpe_api_OBJS = "$(subst .c,.o,$(filter %.c,$(drv_dsl_cpe_api_SOURCES)))"
drv_dsl_cpe_api.ko: $(drv_dsl_cpe_api_SOURCES)
@ -1014,52 +1019,18 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/ifxmips_mei_interface.h
if test ! -e common/drv_dsl_cpe_api.c ; then \
echo "copy source files (as links only!)"; \
for f in $(filter %.c,$(drv_dsl_cpe_api_SOURCES)); do \
@@ -311,10 +311,10 @@
@@ -308,10 +308,10 @@ drv_dsl_cpe_api.ko: $(drv_dsl_cpe_api_SO
cp -s $(addprefix @abs_srcdir@/,$$f) $(PWD)/`dirname $$f`/ ; \
done \
fi
- @echo -e "# drv_dsl_cpe_api: Generated to build Linux 2.6.x kernel object" > $(PWD)/Kbuild
- @echo -e "obj-m := $(subst .ko,.o,$@)" >> $(PWD)/Kbuild
- @echo -e "$(subst .ko,,$@)-y := $(drv_dsl_cpe_api_OBJS)" >> $(PWD)/Kbuild
- @echo -e "EXTRA_CFLAGS := $(CFLAGS) -DHAVE_CONFIG_H $(drv_dsl_cpe_api_CFLAGS) $(DSL_DRIVER_INCL_PATH) $(IFXOS_INCLUDE_PATH) -I@abs_srcdir@/include -I$(PWD)/include" >> $(PWD)/Kbuild
- @echo -e "EXTRA_CFLAGS := -DHAVE_CONFIG_H $(drv_dsl_cpe_api_CFLAGS) $(DSL_DRIVER_INCL_PATH) $(IFXOS_INCLUDE_PATH) -I@abs_srcdir@/include -I$(PWD)/include" >> $(PWD)/Kbuild
+ @echo "# drv_dsl_cpe_api: Generated to build Linux 2.6.x kernel object" > $(PWD)/Kbuild
+ @echo "obj-m := $(subst .ko,.o,$@)" >> $(PWD)/Kbuild
+ @echo "$(subst .ko,,$@)-y := $(drv_dsl_cpe_api_OBJS)" >> $(PWD)/Kbuild
+ @echo "EXTRA_CFLAGS := $(CFLAGS) -DHAVE_CONFIG_H $(drv_dsl_cpe_api_CFLAGS) $(DSL_DRIVER_INCL_PATH) $(IFXOS_INCLUDE_PATH) -I@abs_srcdir@/include -I$(PWD)/include" >> $(PWD)/Kbuild
+ @echo "EXTRA_CFLAGS := -DHAVE_CONFIG_H $(drv_dsl_cpe_api_CFLAGS) $(DSL_DRIVER_INCL_PATH) $(IFXOS_INCLUDE_PATH) -I@abs_srcdir@/include -I$(PWD)/include" >> $(PWD)/Kbuild
$(MAKE) ARCH=@KERNEL_ARCH@ -C @KERNEL_BUILD_PATH@ O=@KERNEL_BUILD_PATH@ M=$(PWD) modules
clean-generic:
--- a/src/include/drv_dsl_cpe_os_linux.h
+++ b/src/include/drv_dsl_cpe_os_linux.h
@@ -16,8 +16,6 @@
extern "C" {
#endif
-#include <asm/ioctl.h>
-#include <generated/autoconf.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/init.h>
@@ -26,8 +24,10 @@
#include <linux/spinlock.h>
#include <linux/sched.h>
-#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,17))
- #include <generated/utsrelease.h>
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33))
+#include <linux/utsrelease.h>
+#else
+#include <generated/utsrelease.h>
#endif
#include <linux/types.h>
@@ -39,7 +39,8 @@
#include <linux/delay.h>
#include <linux/poll.h>
#include <asm/uaccess.h>
-#include <linux/smp_lock.h>
+//#include <linux/smp_lock.h>
+#include <asm/ioctl.h>
#ifdef INCLUDE_DSL_CPE_API_IFXOS_SUPPORT
/** IFXOS includes*/

View File

@ -1,7 +1,5 @@
Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
===================================================================
--- drv_dsl_cpe_api-3.24.4.4.orig/src/common/drv_dsl_cpe_os_linux.c 2012-12-07 21:22:58.020256076 +0100
+++ drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c 2012-12-07 21:31:13.156268489 +0100
--- a/src/common/drv_dsl_cpe_os_linux.c
+++ b/src/common/drv_dsl_cpe_os_linux.c
@@ -12,6 +12,7 @@
#define DSL_INTERN
@ -10,7 +8,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
#include "drv_dsl_cpe_api.h"
#include "drv_dsl_cpe_api_ioctl.h"
@@ -1063,7 +1064,7 @@
@@ -1063,7 +1064,7 @@ static void DSL_DRV_DebugInit(void)
#endif
/* Entry point of driver */
@ -19,7 +17,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
{
struct class *dsl_class;
DSL_int_t i;
@@ -1117,7 +1118,7 @@
@@ -1117,7 +1118,7 @@ int __init DSL_ModuleInit(void)
return 0;
}
@ -28,7 +26,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
{
printk("Module will be unloaded"DSL_DRV_CRLF);
@@ -1132,7 +1133,7 @@
@@ -1132,7 +1133,7 @@ void __exit DSL_ModuleCleanup(void)
(DSL_uint8_t**)&g_BndFpgaBase);
#endif /* defined(INCLUDE_DSL_CPE_API_VINAX) && defined(INCLUDE_DSL_BONDING)*/
@ -37,7 +35,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
}
#ifndef _lint
@@ -1148,8 +1149,30 @@
@@ -1148,8 +1149,30 @@ module_param(debug_level, byte, 0);
MODULE_PARM_DESC(debug_level, "set to get more (1) or fewer (4) debug outputs");
#endif /* #ifndef DSL_DEBUG_DISABLE*/

View File

@ -1,7 +1,5 @@
Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
===================================================================
--- drv_dsl_cpe_api-3.24.4.4.orig/src/common/drv_dsl_cpe_os_linux.c 2013-03-14 11:44:50.318326078 +0100
+++ drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c 2013-03-14 11:46:08.562329425 +0100
--- a/src/common/drv_dsl_cpe_os_linux.c
+++ b/src/common/drv_dsl_cpe_os_linux.c
@@ -11,6 +11,7 @@
#ifdef __LINUX__
@ -10,7 +8,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
#include <linux/device.h>
#include <linux/platform_device.h>
@@ -40,7 +41,7 @@
@@ -40,7 +41,7 @@ static DSL_ssize_t DSL_DRV_Write(DSL_DRV
static DSL_int_t DSL_DRV_Ioctls(DSL_DRV_inode_t * pINode, DSL_DRV_file_t * pFile,
DSL_uint_t nCommand, unsigned long nArg);
#else
@ -19,7 +17,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
DSL_uint_t nCommand, unsigned long nArg);
#endif
static int DSL_DRV_Open(DSL_DRV_inode_t * ino, DSL_DRV_file_t * fil);
@@ -184,7 +185,7 @@
@@ -184,7 +185,7 @@ static DSL_int_t DSL_DRV_Ioctls(DSL_DRV_
DSL_uint_t nCommand,
unsigned long nArg)
#else
@ -28,7 +26,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
DSL_DRV_file_t * pFile,
DSL_uint_t nCommand,
unsigned long nArg)
@@ -521,9 +522,9 @@
@@ -521,9 +522,9 @@ DSL_void_t* DSL_IoctlMemCpyTo(
- IFX_SUCCESS on success
- IFX_ERROR on error
*/
@ -40,7 +38,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
DSL_int32_t retVal = -1;
#ifndef _lint
@@ -546,30 +547,6 @@
@@ -546,30 +547,6 @@ DSL_DRV_STATIC DSL_int32_t DSL_DRV_Kerne
(DSL_NULL, "ENTER - Kernel Thread Startup <%s>" DSL_DRV_CRLF,
pThrCntrl->thrParams.pName));
@ -71,7 +69,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
/*DSL_DRV_ThreadPriorityModify(pThrCntrl->nPriority);*/
pThrCntrl->thrParams.bRunning = 1;
@@ -639,9 +616,7 @@
@@ -639,9 +616,7 @@ DSL_int32_t DSL_DRV_ThreadInit(
init_completion(&pThrCntrl->thrCompletion);
/* start kernel thread via the wrapper function */
@ -82,7 +80,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
pThrCntrl->bValid = DSL_TRUE;
@@ -1064,12 +1039,12 @@
@@ -1064,12 +1039,12 @@ static void DSL_DRV_DebugInit(void)
#endif
/* Entry point of driver */
@ -97,7 +95,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
&(dsl_cpe_api_version[4]));
DSL_DRV_MemSet( ifxDevices, 0, sizeof(DSL_devCtx_t) * DSL_DRV_MAX_DEVICE_NUMBER );
@@ -1118,7 +1093,7 @@
@@ -1118,7 +1093,7 @@ static int __devinit ltq_adsl_probe(stru
return 0;
}
@ -106,7 +104,7 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
{
printk("Module will be unloaded"DSL_DRV_CRLF);
@@ -1163,7 +1138,7 @@
@@ -1163,7 +1138,7 @@ MODULE_DEVICE_TABLE(of, ltq_adsl_match);
static struct platform_driver ltq_adsl_driver = {
.probe = ltq_adsl_probe,
@ -115,11 +113,9 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c
.driver = {
.name = "adsl",
.owner = THIS_MODULE,
Index: drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_os_lint_map.h
===================================================================
--- drv_dsl_cpe_api-3.24.4.4.orig/src/include/drv_dsl_cpe_os_lint_map.h 2009-02-24 21:44:54.000000000 +0100
+++ drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_os_lint_map.h 2013-03-14 11:44:50.330326079 +0100
@@ -247,7 +247,7 @@
--- a/src/include/drv_dsl_cpe_os_lint_map.h
+++ b/src/include/drv_dsl_cpe_os_lint_map.h
@@ -247,7 +247,7 @@ typedef struct
DSL_DRV_ThreadFunction_t pThrFct;
/** Kernel thread process ID */
@ -128,11 +124,9 @@ Index: drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_os_lint_map.h
/** requested kernel thread priority */
DSL_int32_t nPriority;
Index: drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_os_linux.h
===================================================================
--- drv_dsl_cpe_api-3.24.4.4.orig/src/include/drv_dsl_cpe_os_linux.h 2013-03-14 11:44:50.298326077 +0100
+++ drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_os_linux.h 2013-03-14 11:44:50.330326079 +0100
@@ -288,7 +288,7 @@
--- a/src/include/drv_dsl_cpe_os_linux.h
+++ b/src/include/drv_dsl_cpe_os_linux.h
@@ -288,7 +288,7 @@ typedef struct
DSL_DRV_ThreadFunction_t pThrFct;
/** Kernel thread process ID */

View File

@ -43,6 +43,7 @@ struct ltq_atm_ops {
void (*fw_ver)(unsigned int *major, unsigned int *minor);
};
#include <linux/atomic.h>
#include <lantiq_atm.h>
/*
@ -195,6 +196,7 @@ struct connection {
volatile struct tx_descriptor *tx_desc;
unsigned int tx_desc_pos;
struct sk_buff **tx_skb;
spinlock_t lock;
unsigned int aal5_vcc_crc_err; /* number of packets with CRC error */
unsigned int aal5_vcc_oversize_sdu; /* number of packets with oversize error */

View File

@ -19,6 +19,8 @@
** HISTORY
** $Date $Author $Comment
** 07 JUL 2009 Xu Liang Init Version
**
** Copyright 2017 Alexander Couzens <lynxis@fe80.eu>
*******************************************************************************/
#define IFX_ATM_VER_MAJOR 1
@ -189,8 +191,6 @@ struct sk_buff* atm_alloc_tx(struct atm_vcc *, unsigned int);
static inline void atm_free_tx_skb_vcc(struct sk_buff *, struct atm_vcc *);
static inline struct sk_buff *get_skb_rx_pointer(unsigned int);
static inline int get_tx_desc(unsigned int);
static struct sk_buff* skb_duplicate(struct sk_buff *);
static struct sk_buff* skb_break_away_from_protocol(struct sk_buff *);
/*
* mailbox handler and signal function
@ -444,6 +444,9 @@ static int ppe_open(struct atm_vcc *vcc)
/* set htu entry */
set_htu_entry(vpi, vci, conn, vcc->qos.aal == ATM_AAL5 ? 1 : 0, 0);
*MBOX_IGU1_ISRC |= (1 << (conn + FIRST_QSB_QID + 16));
*MBOX_IGU1_IER |= (1 << (conn + FIRST_QSB_QID + 16));
ret = 0;
PPE_OPEN_EXIT:
@ -511,14 +514,17 @@ static int ppe_send(struct atm_vcc *vcc, struct sk_buff *skb)
int ret;
int conn;
int desc_base;
int byteoff;
int required;
/* the len of the data without offset and header */
int datalen;
unsigned long flags;
struct tx_descriptor reg_desc = {0};
struct sk_buff *new_skb;
struct tx_inband_header *header;
if ( vcc == NULL || skb == NULL )
return -EINVAL;
skb_get(skb);
atm_free_tx_skb_vcc(skb, vcc);
conn = find_vcc(vcc);
if ( conn < 0 ) {
@ -532,31 +538,28 @@ static int ppe_send(struct atm_vcc *vcc, struct sk_buff *skb)
goto PPE_SEND_FAIL;
}
if ( vcc->qos.aal == ATM_AAL5 ) {
int byteoff;
int datalen;
struct tx_inband_header *header;
byteoff = (unsigned int)skb->data & (DATA_BUFFER_ALIGNMENT - 1);
required = sizeof(*header) + byteoff;
if (!skb_clone_writable(skb, required)) {
int expand_by = 0;
int ret;
byteoff = (unsigned int)skb->data & (DATA_BUFFER_ALIGNMENT - 1);
if ( skb_headroom(skb) < byteoff + TX_INBAND_HEADER_LENGTH )
new_skb = skb_duplicate(skb);
else
new_skb = skb_break_away_from_protocol(skb);
if ( new_skb == NULL ) {
pr_err("either skb_duplicate or skb_break_away_from_protocol fail\n");
ret = -ENOMEM;
goto PPE_SEND_FAIL;
if (skb_headroom(skb) < required)
expand_by = required - skb_headroom(skb);
ret = pskb_expand_head(skb, expand_by, 0, GFP_ATOMIC);
if (ret) {
printk("pskb_expand_head failed.\n");
atm_free_tx_skb_vcc(skb, vcc);
return ret;
}
dev_kfree_skb_any(skb);
skb = new_skb;
}
datalen = skb->len;
byteoff = (unsigned int)skb->data & (DATA_BUFFER_ALIGNMENT - 1);
datalen = skb->len;
header = (void *)skb_push(skb, byteoff + TX_INBAND_HEADER_LENGTH);
skb_push(skb, byteoff + TX_INBAND_HEADER_LENGTH);
header = (struct tx_inband_header *)skb->data;
if ( vcc->qos.aal == ATM_AAL5 ) {
/* setup inband trailer */
header->uu = 0;
header->cpi = 0;
@ -576,23 +579,9 @@ static int ppe_send(struct atm_vcc *vcc, struct sk_buff *skb)
reg_desc.byteoff = byteoff;
reg_desc.iscell = 0;
} else {
/* if data pointer is not aligned, allocate new sk_buff */
if ( ((unsigned int)skb->data & (DATA_BUFFER_ALIGNMENT - 1)) != 0 ) {
pr_err("skb->data not aligned\n");
new_skb = skb_duplicate(skb);
} else
new_skb = skb_break_away_from_protocol(skb);
if ( new_skb == NULL ) {
pr_err("either skb_duplicate or skb_break_away_from_protocol fail\n");
ret = -ENOMEM;
goto PPE_SEND_FAIL;
}
dev_kfree_skb_any(skb);
skb = new_skb;
reg_desc.dataptr = (unsigned int)skb->data >> 2;
reg_desc.datalen = skb->len;
reg_desc.byteoff = 0;
reg_desc.byteoff = byteoff;
reg_desc.iscell = 1;
}
@ -600,23 +589,25 @@ static int ppe_send(struct atm_vcc *vcc, struct sk_buff *skb)
reg_desc.c = 1;
reg_desc.sop = reg_desc.eop = 1;
spin_lock_irqsave(&g_atm_priv_data.conn[conn].lock, flags);
desc_base = get_tx_desc(conn);
if ( desc_base < 0 ) {
spin_unlock_irqrestore(&g_atm_priv_data.conn[conn].lock, flags);
pr_debug("ALLOC_TX_CONNECTION_FAIL\n");
ret = -EIO;
goto PPE_SEND_FAIL;
}
if ( vcc->stats )
atomic_inc(&vcc->stats->tx);
if ( vcc->qos.aal == ATM_AAL5 )
g_atm_priv_data.wtx_pdu++;
/* update descriptor send pointer */
if ( g_atm_priv_data.conn[conn].tx_skb[desc_base] != NULL )
dev_kfree_skb_any(g_atm_priv_data.conn[conn].tx_skb[desc_base]);
g_atm_priv_data.conn[conn].tx_skb[desc_base] = skb;
spin_unlock_irqrestore(&g_atm_priv_data.conn[conn].lock, flags);
if ( vcc->stats )
atomic_inc(&vcc->stats->tx);
if ( vcc->qos.aal == ATM_AAL5 )
g_atm_priv_data.wtx_pdu++;
/* write discriptor to memory and write back cache */
g_atm_priv_data.conn[conn].tx_desc[desc_base] = reg_desc;
dma_cache_wback((unsigned long)skb->data, skb->len);
@ -821,7 +812,11 @@ struct sk_buff* atm_alloc_tx(struct atm_vcc *vcc, unsigned int size)
return NULL;
}
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
refcount_add(skb->truesize, &sk_atm(vcc)->sk_wmem_alloc);
#else
atomic_add(skb->truesize, &sk_atm(vcc)->sk_wmem_alloc);
#endif
return skb;
}
@ -862,42 +857,40 @@ static inline int get_tx_desc(unsigned int conn)
return desc_base;
}
static struct sk_buff* skb_duplicate(struct sk_buff *skb)
static void free_tx_ring(unsigned int queue)
{
struct sk_buff *new_skb;
unsigned long flags;
int i;
struct connection *conn = &g_atm_priv_data.conn[queue];
struct sk_buff *skb;
new_skb = alloc_skb_tx(skb->len);
if ( new_skb == NULL )
return NULL;
if (!conn)
return;
skb_put(new_skb, skb->len);
memcpy(new_skb->data, skb->data, skb->len);
spin_lock_irqsave(&conn->lock, flags);
return new_skb;
for (i = 0; i < dma_tx_descriptor_length; i++) {
if (conn->tx_desc[i].own == 0 && conn->tx_skb[i] != NULL) {
skb = conn->tx_skb[i];
conn->tx_skb[i] = NULL;
atm_free_tx_skb_vcc(skb, ATM_SKB(skb)->vcc);
}
}
spin_unlock_irqrestore(&conn->lock, flags);
}
static struct sk_buff* skb_break_away_from_protocol(struct sk_buff *skb)
static void mailbox_tx_handler(unsigned int queue_bitmap)
{
struct sk_buff *new_skb;
int i;
int bit;
if ( skb_shared(skb) ) {
new_skb = skb_clone(skb, GFP_ATOMIC);
if ( new_skb == NULL )
return NULL;
} else
new_skb = skb_get(skb);
/* only get valid queues */
queue_bitmap &= g_atm_priv_data.conn_table;
skb_dst_drop(new_skb);
#if defined(CONFIG_NF_CONNTRACK) || defined(CONFIG_NF_CONNTRACK_MODULE)
nf_conntrack_put(new_skb->nfct);
new_skb->nfct = NULL;
#ifdef CONFIG_BRIDGE_NETFILTER
nf_bridge_put(new_skb->nf_bridge);
new_skb->nf_bridge = NULL;
#endif
#endif
return new_skb;
for ( i = 0, bit = 1; i < MAX_PVC_NUMBER; i++, bit <<= 1 ) {
if (queue_bitmap & bit)
free_tx_ring(i);
}
}
static inline void mailbox_oam_rx_handler(void)
@ -1050,12 +1043,22 @@ static inline void mailbox_aal_rx_handler(void)
static void do_ppe_tasklet(unsigned long data)
{
unsigned int irqs = *MBOX_IGU1_ISR;
*MBOX_IGU1_ISRC = *MBOX_IGU1_ISR;
mailbox_oam_rx_handler();
mailbox_aal_rx_handler();
if (irqs & (1 << RX_DMA_CH_AAL))
mailbox_aal_rx_handler();
if (irqs & (1 << RX_DMA_CH_OAM))
mailbox_oam_rx_handler();
/* any valid tx irqs */
if ((irqs >> (FIRST_QSB_QID + 16)) & g_atm_priv_data.conn_table)
mailbox_tx_handler(irqs >> (FIRST_QSB_QID + 16));
if ((*MBOX_IGU1_ISR & ((1 << RX_DMA_CH_AAL) | (1 << RX_DMA_CH_OAM))) != 0)
tasklet_schedule(&g_dma_tasklet);
else if (*MBOX_IGU1_ISR >> (FIRST_QSB_QID + 16)) /* TX queue */
tasklet_schedule(&g_dma_tasklet);
else
enable_irq(PPE_MAILBOX_IGU1_INT);
}
@ -1512,6 +1515,7 @@ static inline int init_priv_data(void)
p_tx_desc = (volatile struct tx_descriptor *)((((unsigned int)g_atm_priv_data.tx_desc_base + DESC_ALIGNMENT - 1) & ~(DESC_ALIGNMENT - 1)) | KSEG1);
ppskb = (struct sk_buff **)(((unsigned int)g_atm_priv_data.tx_skb_base + 3) & ~3);
for ( i = 0; i < MAX_PVC_NUMBER; i++ ) {
spin_lock_init(&g_atm_priv_data.conn[i].lock);
g_atm_priv_data.conn[i].tx_desc = &p_tx_desc[i * dma_tx_descriptor_length];
g_atm_priv_data.conn[i].tx_skb = &ppskb[i * dma_tx_descriptor_length];
}
@ -1799,7 +1803,6 @@ static int ltq_atm_probe(struct platform_device *pdev)
int ret;
int port_num;
struct port_cell_info port_cell = {0};
int i, j;
char ver_str[256];
match = of_match_device(ltq_atm_match, &pdev->dev);

View File

@ -885,12 +885,12 @@ struct crypto_alg ifxdeu_ctr_rfc3686_aes_alg = {
};
/*! \fn int __init ifxdeu_init_aes (void)
/*! \fn int ifxdeu_init_aes (void)
* \ingroup IFX_AES_FUNCTIONS
* \brief function to initialize AES driver
* \return ret
*/
int __init ifxdeu_init_aes (void)
int ifxdeu_init_aes (void)
{
int ret = -ENOSYS;
@ -952,11 +952,11 @@ aes_err:
return ret;
}
/*! \fn void __exit ifxdeu_fini_aes (void)
/*! \fn void ifxdeu_fini_aes (void)
* \ingroup IFX_AES_FUNCTIONS
* \brief unregister aes driver
*/
void __exit ifxdeu_fini_aes (void)
void ifxdeu_fini_aes (void)
{
crypto_unregister_alg (&ifxdeu_aes_alg);
crypto_unregister_alg (&ifxdeu_ecb_aes_alg);

View File

@ -343,11 +343,11 @@ static struct crypto_alg ifxdeu_ecb_arc4_alg = {
}
};
/*! \fn int __init ifxdeu_init_arc4(void)
/*! \fn int ifxdeu_init_arc4(void)
\ingroup IFX_ARC4_FUNCTIONS
\brief initialize arc4 driver
*/
int __init ifxdeu_init_arc4(void)
int ifxdeu_init_arc4(void)
{
int ret = -ENOSYS;
@ -376,11 +376,11 @@ ecb_arc4_err:
}
/*! \fn void __exit ifxdeu_fini_arc4(void)
/*! \fn void ifxdeu_fini_arc4(void)
\ingroup IFX_ARC4_FUNCTIONS
\brief unregister arc4 driver
*/
void __exit ifxdeu_fini_arc4(void)
void ifxdeu_fini_arc4(void)
{
crypto_unregister_alg (&ifxdeu_arc4_alg);
crypto_unregister_alg (&ifxdeu_ecb_arc4_alg);

View File

@ -682,11 +682,11 @@ struct crypto_alg ifxdeu_cbc_des3_ede_alg = {
}
};
/*! \fn int __init ifxdeu_init_des (void)
/*! \fn int ifxdeu_init_des (void)
* \ingroup IFX_DES_FUNCTIONS
* \brief initialize des driver
*/
int __init ifxdeu_init_des (void)
int ifxdeu_init_des (void)
{
int ret = -ENOSYS;
@ -761,11 +761,11 @@ cbc_des3_ede_err:
}
/*! \fn void __exit ifxdeu_fini_des (void)
/*! \fn void ifxdeu_fini_des (void)
* \ingroup IFX_DES_FUNCTIONS
* \brief unregister des driver
*/
void __exit ifxdeu_fini_des (void)
void ifxdeu_fini_des (void)
{
crypto_unregister_alg (&ifxdeu_des_alg);
crypto_unregister_alg (&ifxdeu_ecb_des_alg);

View File

@ -108,23 +108,23 @@
*/
int __init ifxdeu_init_des (void);
int __init ifxdeu_init_aes (void);
int __init ifxdeu_init_arc4 (void);
int __init ifxdeu_init_sha1 (void);
int __init ifxdeu_init_md5 (void);
int __init ifxdeu_init_sha1_hmac (void);
int __init ifxdeu_init_md5_hmac (void);
int ifxdeu_init_des (void);
int ifxdeu_init_aes (void);
int ifxdeu_init_arc4 (void);
int ifxdeu_init_sha1 (void);
int ifxdeu_init_md5 (void);
int ifxdeu_init_sha1_hmac (void);
int ifxdeu_init_md5_hmac (void);
int __init lqdeu_async_aes_init(void);
int __init lqdeu_async_des_init(void);
void __exit ifxdeu_fini_des (void);
void __exit ifxdeu_fini_aes (void);
void __exit ifxdeu_fini_arc4 (void);
void __exit ifxdeu_fini_sha1 (void);
void __exit ifxdeu_fini_md5 (void);
void __exit ifxdeu_fini_sha1_hmac (void);
void __exit ifxdeu_fini_md5_hmac (void);
void ifxdeu_fini_des (void);
void ifxdeu_fini_aes (void);
void ifxdeu_fini_arc4 (void);
void ifxdeu_fini_sha1 (void);
void ifxdeu_fini_md5 (void);
void ifxdeu_fini_sha1_hmac (void);
void ifxdeu_fini_md5_hmac (void);
void __exit ifxdeu_fini_dma(void);
void __exit lqdeu_fini_async_aes(void);
void __exit lqdeu_fini_async_des(void);

View File

@ -39,6 +39,7 @@
#include <asm/byteorder.h>
#include <linux/skbuff.h>
#include <linux/netdevice.h>
#include <linux/version.h>
// must match the size of memory block allocated for g_dma_block and g_dma_block2
#define DEU_MAX_PACKET_SIZE (PAGE_SIZE >> 1)
@ -53,7 +54,11 @@ typedef struct ifx_deu_device {
int recv_count;
int packet_size;
int packet_num;
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
wait_queue_entry_t wait;
#else
wait_queue_t wait;
#endif
} _ifx_deu_device;
extern _ifx_deu_device ifx_deu[1];

View File

@ -276,11 +276,11 @@ static struct shash_alg ifxdeu_md5_alg = {
}
};
/*! \fn int __init ifxdeu_init_md5 (void)
/*! \fn int ifxdeu_init_md5 (void)
* \ingroup IFX_MD5_FUNCTIONS
* \brief initialize md5 driver
*/
int __init ifxdeu_init_md5 (void)
int ifxdeu_init_md5 (void)
{
int ret = -ENOSYS;
@ -298,12 +298,12 @@ md5_err:
return ret;
}
/*! \fn void __exit ifxdeu_fini_md5 (void)
/*! \fn void ifxdeu_fini_md5 (void)
* \ingroup IFX_MD5_FUNCTIONS
* \brief unregister md5 driver
*/
void __exit ifxdeu_fini_md5 (void)
void ifxdeu_fini_md5 (void)
{
crypto_unregister_shash(&ifxdeu_md5_alg);

View File

@ -352,11 +352,11 @@ static struct shash_alg ifxdeu_md5_hmac_alg = {
}
};
/*! \fn int __init ifxdeu_init_md5_hmac (void)
/*! \fn int ifxdeu_init_md5_hmac (void)
* \ingroup IFX_MD5_HMAC_FUNCTIONS
* \brief initialize md5 hmac driver
*/
int __init ifxdeu_init_md5_hmac (void)
int ifxdeu_init_md5_hmac (void)
{
int ret = -ENOSYS;
@ -375,11 +375,11 @@ md5_hmac_err:
return ret;
}
/** \fn void __exit ifxdeu_fini_md5_hmac (void)
/** \fn void ifxdeu_fini_md5_hmac (void)
* \ingroup IFX_MD5_HMAC_FUNCTIONS
* \brief unregister md5 hmac driver
*/
void __exit ifxdeu_fini_md5_hmac (void)
void ifxdeu_fini_md5_hmac (void)
{
crypto_unregister_shash(&ifxdeu_md5_hmac_alg);
}

View File

@ -266,11 +266,11 @@ static struct shash_alg ifxdeu_sha1_alg = {
};
/*! \fn int __init ifxdeu_init_sha1 (void)
/*! \fn int ifxdeu_init_sha1 (void)
* \ingroup IFX_SHA1_FUNCTIONS
* \brief initialize sha1 driver
*/
int __init ifxdeu_init_sha1 (void)
int ifxdeu_init_sha1 (void)
{
int ret = -ENOSYS;
@ -288,11 +288,11 @@ sha1_err:
return ret;
}
/*! \fn void __exit ifxdeu_fini_sha1 (void)
/*! \fn void ifxdeu_fini_sha1 (void)
* \ingroup IFX_SHA1_FUNCTIONS
* \brief unregister sha1 driver
*/
void __exit ifxdeu_fini_sha1 (void)
void ifxdeu_fini_sha1 (void)
{
crypto_unregister_shash(&ifxdeu_sha1_alg);

View File

@ -342,11 +342,11 @@ static struct shash_alg ifxdeu_sha1_hmac_alg = {
};
/*! \fn int __init ifxdeu_init_sha1_hmac (void)
/*! \fn int ifxdeu_init_sha1_hmac (void)
* \ingroup IFX_SHA1_HMAC_FUNCTIONS
* \brief initialize sha1 hmac driver
*/
int __init ifxdeu_init_sha1_hmac (void)
int ifxdeu_init_sha1_hmac (void)
{
int ret = -ENOSYS;
@ -365,11 +365,11 @@ sha1_err:
return ret;
}
/*! \fn void __exit ifxdeu_fini_sha1_hmac (void)
/*! \fn void ifxdeu_fini_sha1_hmac (void)
* \ingroup IFX_SHA1_HMAC_FUNCTIONS
* \brief unregister sha1 hmac driver
*/
void __exit ifxdeu_fini_sha1_hmac (void)
void ifxdeu_fini_sha1_hmac (void)
{
crypto_unregister_shash(&ifxdeu_sha1_hmac_alg);

View File

@ -8,7 +8,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=lib_ifxos
PKG_VERSION:=1.5.19
PKG_RELEASE:=3
PKG_RELEASE:=4
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_URL:=https://github.com/xdarklight/$(PKG_NAME)/archive/v$(PKG_VERSION)
@ -17,8 +17,7 @@ PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_LICENSE:=GPL-2.0 BSD-2-Clause
PKG_LICENSE_FILES:=LICENSE
PKG_USE_MIPS16:=0
PKG_ASLR_PIE:=0
PKG_FIXUP:=autoreconf
include $(INCLUDE_DIR)/package.mk

View File

@ -0,0 +1,22 @@
--- a/src/linux/ifxos_linux_copy_user_space_drv.c
+++ b/src/linux/ifxos_linux_copy_user_space_drv.c
@@ -29,7 +29,7 @@
#ifdef MODULE
#include <linux/module.h>
#endif
-#include <asm/uaccess.h>
+#include <linux/uaccess.h>
#include "ifx_types.h"
#include "ifxos_rt_if_check.h"
--- a/src/linux/ifxos_linux_socket_drv.c
+++ b/src/linux/ifxos_linux_socket_drv.c
@@ -25,7 +25,7 @@
#endif
#include <linux/in.h>
#include <linux/net.h>
-#include <asm/uaccess.h>
+#include <linux/uaccess.h>
#include "ifx_types.h"
#include "ifxos_rt_if_check.h"

View File

@ -0,0 +1,19 @@
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -45,8 +45,6 @@ endif !HAVE_GCC
if ENABLE_DEBUG
used_gcc_cflags += -O1 -g
-else
-used_gcc_cflags += -O3
endif
AM_CFLAGS = \
@@ -92,7 +90,6 @@ endif
drvifxos_additional_cflags=\
-DLINUX \
-D__LINUX__ \
- -O \
-D__KERNEL__ \
-DMODULE \
-DEXPORT_SYMTAB

View File

@ -37,8 +37,6 @@ Ref: https://bugs.lede-project.org/index.php?do=details&task_id=1196
src/Makefile.am | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/src/Makefile.am b/src/Makefile.am
index f95668f..d232e7f 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -14,11 +14,7 @@ lib_LIBRARIES = libifxos.a
@ -54,6 +52,3 @@ index f95668f..d232e7f 100644
if HAVE_GCC
--
1.8.3.1

View File

@ -128,7 +128,9 @@ static int ptm_stop(struct net_device *);
static unsigned int ptm_poll(int, unsigned int);
static int ptm_napi_poll(struct napi_struct *, int);
static int ptm_hard_start_xmit(struct sk_buff *, struct net_device *);
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0))
static int ptm_change_mtu(struct net_device *, int);
#endif
static int ptm_ioctl(struct net_device *, struct ifreq *, int);
static void ptm_tx_timeout(struct net_device *);
@ -247,7 +249,9 @@ static struct net_device_ops g_ptm_netdev_ops = {
.ndo_start_xmit = ptm_hard_start_xmit,
.ndo_validate_addr = eth_validate_addr,
.ndo_set_mac_address = eth_mac_addr,
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0))
.ndo_change_mtu = ptm_change_mtu,
#endif
.ndo_do_ioctl = ptm_ioctl,
.ndo_tx_timeout = ptm_tx_timeout,
};
@ -285,6 +289,10 @@ static void ptm_setup(struct net_device *dev, int ndev)
/* hook network operations */
dev->netdev_ops = &g_ptm_netdev_ops;
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0))
/* Allow up to 1508 bytes, for RFC4638 */
dev->max_mtu = ETH_DATA_LEN + 8;
#endif
netif_napi_add(dev, &g_ptm_priv_data.itf[ndev].napi, ptm_napi_poll, 25);
dev->watchdog_timeo = ETH_WATCHDOG_TIMEOUT;
@ -459,7 +467,7 @@ PTM_HARD_START_XMIT_FAIL:
g_ptm_priv_data.itf[ndev].stats.tx_dropped++;
return NETDEV_TX_OK;
}
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0))
static int ptm_change_mtu(struct net_device *dev, int mtu)
{
/* Allow up to 1508 bytes, for RFC4638 */
@ -468,6 +476,7 @@ static int ptm_change_mtu(struct net_device *dev, int mtu)
dev->mtu = mtu;
return 0;
}
#endif
static int ptm_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
{
@ -654,7 +663,9 @@ static INLINE int mailbox_rx_irq_handler(unsigned int ch) // return: < 0 - de
skb->dev = g_net_dev[ndev];
skb->protocol = eth_type_trans(skb, skb->dev);
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,11,0))
g_net_dev[ndev]->last_rx = jiffies;
#endif
netif_rx_ret = netif_receive_skb(skb);

View File

@ -74,7 +74,9 @@ static int ptm_stop(struct net_device *);
static unsigned int ptm_poll(int, unsigned int);
static int ptm_napi_poll(struct napi_struct *, int);
static int ptm_hard_start_xmit(struct sk_buff *, struct net_device *);
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0))
static int ptm_change_mtu(struct net_device *, int);
#endif
static int ptm_ioctl(struct net_device *, struct ifreq *, int);
static void ptm_tx_timeout(struct net_device *);
@ -115,7 +117,9 @@ static struct net_device_ops g_ptm_netdev_ops = {
.ndo_start_xmit = ptm_hard_start_xmit,
.ndo_validate_addr = eth_validate_addr,
.ndo_set_mac_address = eth_mac_addr,
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0))
.ndo_change_mtu = ptm_change_mtu,
#endif
.ndo_do_ioctl = ptm_ioctl,
.ndo_tx_timeout = ptm_tx_timeout,
};
@ -141,6 +145,10 @@ static void ptm_setup(struct net_device *dev, int ndev)
netif_carrier_off(dev);
dev->netdev_ops = &g_ptm_netdev_ops;
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0))
/* Allow up to 1508 bytes, for RFC4638 */
dev->max_mtu = ETH_DATA_LEN + 8;
#endif
netif_napi_add(dev, &g_ptm_priv_data.itf[ndev].napi, ptm_napi_poll, 16);
dev->watchdog_timeo = ETH_WATCHDOG_TIMEOUT;
@ -218,7 +226,9 @@ static unsigned int ptm_poll(int ndev, unsigned int work_to_do)
skb->dev = g_net_dev[0];
skb->protocol = eth_type_trans(skb, skb->dev);
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,11,0))
g_net_dev[0]->last_rx = jiffies;
#endif
netif_receive_skb(skb);
@ -367,6 +377,7 @@ PTM_HARD_START_XMIT_FAIL:
return 0;
}
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0))
static int ptm_change_mtu(struct net_device *dev, int mtu)
{
/* Allow up to 1508 bytes, for RFC4638 */
@ -375,6 +386,7 @@ static int ptm_change_mtu(struct net_device *dev, int mtu)
dev->mtu = mtu;
return 0;
}
#endif
static int ptm_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
{

View File

@ -10,14 +10,14 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=drv_tapi
PKG_VERSION:=3.13.0
PKG_RELEASE:=3
PKG_RELEASE:=4
PKG_SOURCE:=drv_tapi-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
PKG_HASH:=109374d52872716570fca3fef3b93c9a93159a804dfd42484b19152b825af5c0
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_USE_MIPS16:=0
PKG_ASLR_PIE:=0
PKG_CHECK_FORMAT_SECURITY:=0
PKG_FIXUP:=autoreconf

View File

@ -0,0 +1,22 @@
--- a/src/drv_tapi_linux.c
+++ b/src/drv_tapi_linux.c
@@ -54,6 +54,10 @@
#include <linux/workqueue.h> /* LINUX 2.6 We need work_struct */
#include <linux/device.h>
#include <linux/sched.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0))
+ #include <linux/sched/signal.h>
+ #include <linux/sched/types.h>
+#endif
#undef CONFIG_DEVFS_FS
#ifndef UTS_RELEASE
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33))
@@ -184,7 +188,7 @@ MODULE_PARM_DESC(block_egress_tasklet, "
MODULE_PARM_DESC(block_ingress_tasklet, "block the execution of the ingress tasklet, i.e. force to use the RT kernel thread");
/** The driver callbacks which will be registered with the kernel*/
-static struct file_operations tapi_fops = {0};
+static struct file_operations tapi_fops;
/* ============================= */
/* Global function definition */

View File

@ -0,0 +1,27 @@
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -122,13 +122,9 @@ endif
## flags for the driver
if USE_MODULE
-drv_tapi_CFLAGS = -DLINUX -D__KERNEL__ -DMODULE -Wno-format -DEXPORT_SYMTAB $(AM_CFLAGS)
+drv_tapi_CFLAGS = -DLINUX -D__KERNEL__ -DMODULE -DEXPORT_SYMTAB $(AM_CFLAGS)
else
-drv_tapi_CFLAGS = -DLINUX -D__KERNEL__ -Wno-format -DEXPORT_SYMTAB $(AM_CFLAGS)
-endif
-
-if KERNEL_2_6
-drv_tapi_CFLAGS += -fno-common
+drv_tapi_CFLAGS = -DLINUX -D__KERNEL__ -DEXPORT_SYMTAB $(AM_CFLAGS)
endif
@@ -165,7 +161,7 @@ drv_tapi.ko: $(drv_tapi_SOURCES) $(EXTRA
@echo "# drv_tapi: Generated to build Linux 2.6.x kernel object" > $(PWD)/Kbuild
@echo "obj-m := $(subst .ko,.o,$@)" >> $(PWD)/Kbuild
@echo "$(subst .ko,,$@)-y := $(drv_tapi_OBJS)" >> $(PWD)/Kbuild
- @echo "EXTRA_CFLAGS := -DHAVE_CONFIG_H $(CFLAGS) $(drv_tapi_CFLAGS) $(INCLUDES)" >> $(PWD)/Kbuild
+ @echo "EXTRA_CFLAGS := -DHAVE_CONFIG_H $(drv_tapi_CFLAGS) $(INCLUDES)" >> $(PWD)/Kbuild
$(MAKE) ARCH=@KERNEL_ARCH@ -C @KERNEL_BUILD_PATH@ O=@KERNEL_BUILD_PATH@ M=$(PWD) modules
clean-generic:

View File

@ -1,6 +1,6 @@
--- a/src/drv_tapi_linux.c
+++ b/src/drv_tapi_linux.c
@@ -552,7 +552,7 @@ static ssize_t ifx_tapi_write (struct fi
@@ -556,7 +556,7 @@ static ssize_t ifx_tapi_write (struct fi
IFX_uint8_t *pData;
IFX_size_t buf_size;
#endif /* TAPI_PACKET */

View File

@ -10,7 +10,7 @@
#include <asm/io.h>
#ifdef LINUX_2_6
@@ -65,7 +67,9 @@
@@ -69,7 +71,9 @@
#else
#include <linux/tqueue.h>
#include <linux/sched.h>
@ -20,7 +20,7 @@
#endif /* LINUX_2_6 */
#include "drv_tapi.h"
@@ -133,8 +137,13 @@
@@ -137,8 +141,13 @@ static ssize_t ifx_tapi_write(struct fil
size_t count, loff_t * ppos);
static ssize_t ifx_tapi_read(struct file * filp, char *buf,
size_t length, loff_t * ppos);
@ -34,7 +34,7 @@
static unsigned int ifx_tapi_poll (struct file *filp, poll_table *table);
#ifdef CONFIG_PROC_FS
@@ -218,7 +227,11 @@
@@ -222,7 +231,11 @@ IFX_return_t TAPI_OS_RegisterLLDrv (IFX_
IFX_char_t *pRegDrvName = IFX_NULL;
IFX_int32_t ret = 0;
@ -46,7 +46,7 @@
{
#ifdef MODULE
tapi_fops.owner = THIS_MODULE;
@@ -226,7 +239,11 @@
@@ -230,7 +243,11 @@ IFX_return_t TAPI_OS_RegisterLLDrv (IFX_
tapi_fops.read = ifx_tapi_read;
tapi_fops.write = ifx_tapi_write;
tapi_fops.poll = ifx_tapi_poll;
@ -58,7 +58,7 @@
tapi_fops.open = ifx_tapi_open;
tapi_fops.release = ifx_tapi_release;
}
@@ -881,8 +898,13 @@
@@ -885,8 +902,13 @@ static IFX_uint32_t ifx_tapi_poll (struc
- 0 and positive values - success
- negative value - ioctl failed
*/
@ -72,7 +72,7 @@
{
TAPI_FD_PRIV_DATA_t *pTapiPriv;
IFX_TAPI_ioctlCtx_t ctx;
@@ -3721,7 +3743,9 @@
@@ -3725,7 +3747,9 @@ IFX_void_t TAPI_OS_ThreadKill(IFXOS_Thre
kernel lock (lock_kernel()). The lock must be
grabbed before changing the terminate
flag and released after the down() call. */
@ -83,7 +83,7 @@
mb();
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28)
kill_proc(pThrCntrl->tid, SIGKILL, 1);
@@ -3729,8 +3753,10 @@
@@ -3733,8 +3757,10 @@ IFX_void_t TAPI_OS_ThreadKill(IFXOS_Thre
kill_pid(find_vpid(pThrCntrl->tid), SIGKILL, 1);
#endif
/* release the big kernel lock */

View File

@ -1,8 +1,6 @@
Index: drv_tapi-3.13.0/src/drv_tapi_linux.c
===================================================================
--- drv_tapi-3.13.0.orig/src/drv_tapi_linux.c 2013-09-05 22:28:16.868419283 +0200
+++ drv_tapi-3.13.0/src/drv_tapi_linux.c 2013-09-05 22:32:37.396425814 +0200
@@ -93,6 +93,8 @@
--- a/src/drv_tapi_linux.c
+++ b/src/drv_tapi_linux.c
@@ -97,6 +97,8 @@
#include "drv_tapi_announcements.h"
#endif /* TAPI_ANNOUNCEMENTS */

View File

@ -9,7 +9,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=ltq-vdsl-vr9-mei
PKG_VERSION:=1.5.17.6
PKG_RELEASE:=3
PKG_RELEASE:=4
PKG_BASE_NAME:=drv_mei_cpe
PKG_SOURCE:=$(PKG_BASE_NAME)-$(PKG_VERSION).tar.gz
@ -19,10 +19,10 @@ PKG_HASH:=94f6904364348b7f74087e721968abc28b2564fb9bd8899aa930d36490387662
PKG_FIXUP:=autoreconf
PKG_FLAGS:=nonshared
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_USE_MIPS16:=0
PKG_LICENSE:=GPL-2.0 BSD-2-Clause
PKG_LICENSE_FILES:=LICENSE
PKG_ASLR_PIE:=0
include $(INCLUDE_DIR)/package.mk
@ -65,7 +65,7 @@ CONFIGURE_ARGS += \
--enable-error_print \
--enable-ifxos-include="-I$(STAGING_DIR)/usr/include/ifxos/" \
--enable-ifxos-library="-L$(STAGING_DIR)/usr/lib" \
--enable-add_drv_cflags="-DMEI_DRV_ATM_PTM_INTERFACE_ENABLE=1 -fno-pic -mlong-calls -O2 -g0" \
--enable-add_drv_cflags="-DMEI_DRV_ATM_PTM_INTERFACE_ENABLE=1" \
--enable-linux-26 \
--enable-kernelbuild="$(LINUX_DIR)" \
--enable-drv_test_appl=yes \

View File

@ -0,0 +1,44 @@
--- a/src/drv_mei_cpe_linux.h
+++ b/src/drv_mei_cpe_linux.h
@@ -31,6 +31,9 @@
#include <linux/module.h>
#include <linux/sched.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0))
+#include <linux/sched/signal.h>
+#endif
#include <linux/interrupt.h>
#include <linux/version.h>
#include <linux/crc32.h>
@@ -121,7 +124,11 @@ typedef int (*MEI_RequestIrq_WrapLinux_t
/**
Function typedef for the Linux free_irq()
*/
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,12,0))
+typedef const void *(*MEI_FreeIrq_WrapLinux_t)( unsigned int usedIrq,
+#else
typedef void (*MEI_FreeIrq_WrapLinux_t)( unsigned int usedIrq,
+#endif
void *usedDevId );
--- a/src/drv_mei_cpe_linux.c
+++ b/src/drv_mei_cpe_linux.c
@@ -129,7 +129,7 @@ static int MEI_module_init(void);
#endif
#if (MEI_DRV_LKM_ENABLE == 1) && (MEI_SUPPORT_DEVICE_VR10_320 != 1)
-static void __exit MEI_module_exit(void);
+static void MEI_module_exit(void);
#else
static void MEI_module_exit(void);
#endif
@@ -2188,7 +2188,7 @@ static int MEI_module_init (void)
Called by the kernel.
*/
#if (MEI_DRV_LKM_ENABLE == 1) && (MEI_SUPPORT_DEVICE_VR10_320 != 1)
-static void __exit MEI_module_exit (void)
+static void MEI_module_exit (void)
#else
static void MEI_module_exit (void)
#endif

View File

@ -0,0 +1,21 @@
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -213,8 +213,7 @@ drv_mei_cpe_common_cflags = $(AM_CFLAGS)
else
drv_mei_cpe_common_cflags = \
- $(AM_CFLAGS) -D__KERNEL__ -DLINUX -D__linux__ -DMODULE -DEXPORT_SYMTAB \
- -pipe -Wimplicit -Wunused -Wuninitialized -Wsign-compare -Wstrict-aliasing
+ -D__KERNEL__ -DLINUX -D__linux__ -DMODULE -DEXPORT_SYMTAB
endif
@@ -354,7 +353,7 @@ drv_mei_cpe.ko: $(drv_mei_cpe_SOURCES)
@echo -e "# drv_mei_cpe: Generated to build Linux 2.6.x kernel object" > $(PWD)/Kbuild
@echo -e "obj-m := $(subst .ko,.o,$@)" >> $(PWD)/Kbuild
@echo -e "$(subst .ko,,$@)-y := $(drv_mei_cpe_OBJS)" >> $(PWD)/Kbuild
- @echo -e "EXTRA_CFLAGS := $(CFLAGS) $(drv_mei_cpe_CFLAGS) -I@abs_srcdir@ -I@abs_srcdir@/auto_header $(IFXOS_INCLUDE_PATH)" >> $(PWD)/Kbuild
+ @echo -e "EXTRA_CFLAGS := $(drv_mei_cpe_CFLAGS) -I@abs_srcdir@ -I@abs_srcdir@/auto_header $(IFXOS_INCLUDE_PATH)" >> $(PWD)/Kbuild
$(MAKE) ARCH=@KERNEL_ARCH@ -C @KERNEL_BUILD_PATH@ O=@KERNEL_BUILD_PATH@ M=$(PWD) modules
clean-generic:

View File

@ -10,7 +10,7 @@
--- a/src/drv_mei_cpe_linux.h
+++ b/src/drv_mei_cpe_linux.h
@@ -57,12 +57,6 @@
@@ -60,12 +60,6 @@
#include <linux/poll.h>
#include <linux/types.h>

View File

@ -9,7 +9,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=ltq-vdsl-vr9
PKG_VERSION:=4.17.18.6
PKG_RELEASE:=2
PKG_RELEASE:=3
PKG_BASE_NAME:=drv_dsl_cpe_api
PKG_SOURCE:=$(PKG_BASE_NAME)_vrx-$(PKG_VERSION).tar.gz
@ -19,8 +19,8 @@ PKG_HASH:=b4966a60653acc49254b168c6cc9c49eb36c54548e763617788aa4f252a29f21
PKG_LICENSE:=GPL-2.0 BSD-2-Clause
PKG_LICENSE_FILES:=LICENSE
PKG_USE_MIPS16:=0
PKG_ASLR_PIE:=0
PKG_FIXUP:=autoreconf
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
@ -42,8 +42,6 @@ define Package/ltq-vdsl-vr9/description
- VRX200 Family
endef
EXTRA_CFLAGS = -fno-pic -mno-abicalls -mlong-calls -G 0
MAKE_FLAGS += \
SHELL="$(BASH)"

View File

@ -0,0 +1,12 @@
--- a/src/include/drv_dsl_cpe_os_linux.h
+++ b/src/include/drv_dsl_cpe_os_linux.h
@@ -33,6 +33,9 @@
#endif
#include <linux/sched.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0))
+#include <linux/sched/signal.h>
+#endif
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33))
#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,17))

View File

@ -0,0 +1,32 @@
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -244,10 +244,7 @@ else
drv_dsl_cpe_api_common_mod_cflags =
endif
-drv_dsl_cpe_api_common_cflags = -DLINUX -D__LINUX__ -D__KERNEL__ -DEXPORT_SYMTAB \
- -pipe -Wall -Wformat -Wimplicit -Wunused -Wswitch -Wcomment -Winline \
- -Wuninitialized -Wparentheses -Wsign-compare -Wreturn-type \
- -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common
+drv_dsl_cpe_api_common_cflags = -DLINUX -D__LINUX__ -D__KERNEL__ -DEXPORT_SYMTAB
if DSL_DBG_MAX_LEVEL_SET
drv_dsl_cpe_api_common_cflags += -DDSL_DBG_MAX_LEVEL=$(DSL_DBG_MAX_LEVEL_PRE)
@@ -257,7 +254,7 @@ endif
drv_dsl_cpe_api_target_cflags = $(ADD_DRV_CFLAGS)
# compile cflags
-drv_dsl_cpe_api_compile_cflags = $(EXTRA_DRV_CFLAGS)
+drv_dsl_cpe_api_compile_cflags =
if !KERNEL_2_6
# the headerfile of linux kernels 2.6.x contain to much arithmetic
@@ -311,7 +308,7 @@ drv_dsl_cpe_api.ko: $(drv_dsl_cpe_api_SO
@echo -e "# drv_dsl_cpe_api: Generated to build Linux 2.6.x kernel object" > $(PWD)/Kbuild
@echo -e "obj-m := $(subst .ko,.o,$@)" >> $(PWD)/Kbuild
@echo -e "$(subst .ko,,$@)-y := $(drv_dsl_cpe_api_OBJS)" >> $(PWD)/Kbuild
- @echo -e "EXTRA_CFLAGS := $(CFLAGS) -DHAVE_CONFIG_H $(drv_dsl_cpe_api_CFLAGS) $(DSL_DRIVER_INCL_PATH) $(IFXOS_INCLUDE_PATH) -I@abs_srcdir@/include -I$(PWD)/include" >> $(PWD)/Kbuild
+ @echo -e "EXTRA_CFLAGS := -DHAVE_CONFIG_H $(drv_dsl_cpe_api_CFLAGS) $(DSL_DRIVER_INCL_PATH) $(IFXOS_INCLUDE_PATH) -I@abs_srcdir@/include -I$(PWD)/include" >> $(PWD)/Kbuild
$(MAKE) ARCH=@KERNEL_ARCH@ -C @KERNEL_BUILD_PATH@ O=@KERNEL_BUILD_PATH@ M=$(PWD) modules
clean-generic:

View File

@ -10,14 +10,14 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=drv_vmmc
PKG_VERSION:=1.9.0
PKG_RELEASE:=2
PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_HASH:=707f515eb727c032418c4da67d7e86884bb56cdc2a606e8f6ded6057d8767e57
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_USE_MIPS16:=0
PKG_ASLR_PIE:=0
PKG_CHECK_FORMAT_SECURITY:=0
PKG_FIXUP:=autoreconf

View File

@ -0,0 +1,19 @@
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -224,7 +224,6 @@ install-exec-hook: $(bin_PROGRAMS)
# Extra rule for linux-2.6 kernel object
if KERNEL_2_6
-drv_vmmc_CFLAGS += -fno-common
drv_vmmc_OBJS = "$(subst .c,.o, $(drv_vmmc_SOURCES) $(nodist_drv_vmmc_SOURCES))"
drv_vmmc.ko: $(drv_vmmc_SOURCES) $(EXTRA_DIST)
@@ -239,7 +238,7 @@ drv_vmmc.ko: $(drv_vmmc_SOURCES) $(EXTRA
@echo "# drv_vmmc: Generated to build Linux 2.6.x kernel object" > $(PWD)/Kbuild
@echo "obj-m := $(subst .ko,.o,$@)" >> $(PWD)/Kbuild
@echo "$(subst .ko,,$@)-y := $(drv_vmmc_OBJS)" >> $(PWD)/Kbuild
- @echo "EXTRA_CFLAGS := -DHAVE_CONFIG_H $(CFLAGS) $(drv_vmmc_CFLAGS) $(INCLUDES)" >> $(PWD)/Kbuild
+ @echo "EXTRA_CFLAGS := -DHAVE_CONFIG_H $(drv_vmmc_CFLAGS) $(INCLUDES)" >> $(PWD)/Kbuild
$(MAKE) ARCH=@KERNEL_ARCH@ -C @KERNEL_BUILD_PATH@ O=@KERNEL_BUILD_PATH@ M=$(PWD) modules
clean-generic:

View File

@ -335,7 +335,10 @@ static int __init gpio_apu2_init (void)
if (!board_name \
|| !board_vendor \
|| strcasecmp(board_vendor, "PC Engines") \
|| (strcasecmp(board_name, "apu2") && strcasecmp(board_name, "apu3"))) {
|| (strcasecmp(board_name, "apu2") \
&& strcasecmp(board_name, "apu3") \
&& strcasecmp(board_name, "PC Engines apu2") \
&& strcasecmp(board_name, "PC Engines apu3"))) {
err = -ENODEV;
goto exit;
}

View File

@ -47,22 +47,6 @@ define AddDepends/can
endef
define KernelPackage/can-raw
TITLE:=Raw CAN Protcol
KCONFIG:=CONFIG_CAN_RAW
FILES:=$(LINUX_DIR)/net/can/can-raw.ko
AUTOLOAD:=$(call AutoProbe,can-raw)
$(call AddDepends/can)
endef
define KernelPackage/can-raw/description
The raw CAN protocol option offers access to the CAN bus via
the BSD socket API.
endef
$(eval $(call KernelPackage,can-raw))
define KernelPackage/can-bcm
TITLE:=Broadcast Manager CAN Protcol
KCONFIG:=CONFIG_CAN_BCM
@ -80,6 +64,74 @@ endef
$(eval $(call KernelPackage,can-bcm))
define KernelPackage/can-c-can
TITLE:=BOSCH C_CAN/D_CAN drivers
KCONFIG:=CONFIG_CAN_C_CAN
FILES:=$(LINUX_DIR)/drivers/net/can/c_can/c_can.ko
AUTOLOAD:=$(call AutoProbe,c_can)
$(call AddDepends/can)
endef
define KernelPackage/can-c-can/description
This driver adds generic support for the C_CAN/D_CAN chips.
endef
$(eval $(call KernelPackage,can-c-can))
define KernelPackage/can-c-can-pci
TITLE:=PCI Bus based BOSCH C_CAN/D_CAN driver
KCONFIG:=CONFIG_CAN_C_CAN_PCI
DEPENDS:=kmod-can-c-can @PCI_SUPPORT
FILES:=$(LINUX_DIR)/drivers/net/can/c_can/c_can_pci.ko
AUTOLOAD:=$(call AutoProbe,c_can_pci)
$(call AddDepends/can)
endef
define KernelPackage/can-c-can-pci/description
This driver adds support for the C_CAN/D_CAN chips connected
to the PCI bus.
endef
$(eval $(call KernelPackage,can-c-can-pci))
define KernelPackage/can-c-can-platform
TITLE:=Platform Bus based BOSCH C_CAN/D_CAN driver
KCONFIG:=CONFIG_CAN_C_CAN_PLATFORM
DEPENDS:=kmod-can-c-can +!LINUX_3_18:kmod-regmap
FILES:=$(LINUX_DIR)/drivers/net/can/c_can/c_can_platform.ko
AUTOLOAD:=$(call AutoProbe,c_can_platform)
$(call AddDepends/can)
endef
define KernelPackage/can-c-can-platform/description
This driver adds support for the C_CAN/D_CAN chips connected
to the "platform bus" (Linux abstraction for directly to the
processor attached devices) which can be found on various
boards from ST Microelectronics (http://www.st.com) like the
SPEAr1310 and SPEAr320 evaluation boards & TI (www.ti.com)
boards like am335x, dm814x, dm813x and dm811x.
endef
$(eval $(call KernelPackage,can-c-can-platform))
define KernelPackage/can-flexcan
TITLE:=Support for Freescale FLEXCAN based chips
KCONFIG:=CONFIG_CAN_FLEXCAN
FILES:=$(LINUX_DIR)/drivers/net/can/flexcan.ko
AUTOLOAD:=$(call AutoProbe,flexcan)
$(call AddDepends/can,@TARGET_imx6)
endef
define KernelPackage/can-flexcan/description
Freescale FLEXCAN CAN bus controller implementation.
endef
$(eval $(call KernelPackage,can-flexcan))
define KernelPackage/can-gw
TITLE:=CAN Gateway/Router
KCONFIG:=CONFIG_CAN_GW
@ -95,20 +147,20 @@ endef
$(eval $(call KernelPackage,can-gw))
define KernelPackage/can-vcan
TITLE:=Virtual Local CAN Interface (vcan)
KCONFIG:=CONFIG_CAN_VCAN
FILES:=$(LINUX_DIR)/drivers/net/can/vcan.ko
AUTOLOAD:=$(call AutoProbe,vcan)
define KernelPackage/can-raw
TITLE:=Raw CAN Protcol
KCONFIG:=CONFIG_CAN_RAW
FILES:=$(LINUX_DIR)/net/can/can-raw.ko
AUTOLOAD:=$(call AutoProbe,can-raw)
$(call AddDepends/can)
endef
define KernelPackage/can-vcan/description
Similar to the network loopback devices, vcan offers a
virtual local CAN interface.
define KernelPackage/can-raw/description
The raw CAN protocol option offers access to the CAN bus via
the BSD socket API.
endef
$(eval $(call KernelPackage,can-vcan))
$(eval $(call KernelPackage,can-raw))
define KernelPackage/can-slcan
@ -128,19 +180,20 @@ endef
$(eval $(call KernelPackage,can-slcan))
define KernelPackage/can-flexcan
TITLE:=Support for Freescale FLEXCAN based chips
KCONFIG:=CONFIG_CAN_FLEXCAN
FILES:=$(LINUX_DIR)/drivers/net/can/flexcan.ko
AUTOLOAD:=$(call AutoProbe,flexcan)
$(call AddDepends/can,@TARGET_imx6)
define KernelPackage/can-usb-8dev
TITLE:=8 devices USB2CAN interface
KCONFIG:=CONFIG_CAN_8DEV_USB
FILES:=$(LINUX_DIR)/drivers/net/can/usb/usb_8dev.ko
AUTOLOAD:=$(call AutoProbe,usb_8dev)
$(call AddDepends/can,+kmod-usb-core)
endef
define KernelPackage/can-flexcan/description
Freescale FLEXCAN CAN bus controller implementation.
define KernelPackage/can-usb-8dev/description
This driver supports the USB2CAN interface
from 8 devices (http://www.8devices.com).
endef
$(eval $(call KernelPackage,can-flexcan))
$(eval $(call KernelPackage,can-usb-8dev))
define KernelPackage/can-usb-ems
@ -207,71 +260,19 @@ endef
$(eval $(call KernelPackage,can-usb-peak))
define KernelPackage/can-usb-8dev
TITLE:=8 devices USB2CAN interface
KCONFIG:=CONFIG_CAN_8DEV_USB
FILES:=$(LINUX_DIR)/drivers/net/can/usb/usb_8dev.ko
AUTOLOAD:=$(call AutoProbe,usb_8dev)
$(call AddDepends/can,+kmod-usb-core)
endef
define KernelPackage/can-usb-8dev/description
This driver supports the USB2CAN interface
from 8 devices (http://www.8devices.com).
endef
$(eval $(call KernelPackage,can-usb-8dev))
define KernelPackage/can-c-can
TITLE:=BOSCH C_CAN/D_CAN drivers
KCONFIG:=CONFIG_CAN_C_CAN
FILES:=$(LINUX_DIR)/drivers/net/can/c_can/c_can.ko
AUTOLOAD:=$(call AutoProbe,c_can)
define KernelPackage/can-vcan
TITLE:=Virtual Local CAN Interface (vcan)
KCONFIG:=CONFIG_CAN_VCAN
FILES:=$(LINUX_DIR)/drivers/net/can/vcan.ko
AUTOLOAD:=$(call AutoProbe,vcan)
$(call AddDepends/can)
endef
define KernelPackage/can-c-can/description
This driver adds generic support for the C_CAN/D_CAN chips.
define KernelPackage/can-vcan/description
Similar to the network loopback devices, vcan offers a
virtual local CAN interface.
endef
$(eval $(call KernelPackage,can-c-can))
$(eval $(call KernelPackage,can-vcan))
define KernelPackage/can-c-can-platform
TITLE:=Platform Bus based BOSCH C_CAN/D_CAN driver
KCONFIG:=CONFIG_CAN_C_CAN_PLATFORM
DEPENDS:=kmod-can-c-can +!LINUX_3_18:kmod-regmap
FILES:=$(LINUX_DIR)/drivers/net/can/c_can/c_can_platform.ko
AUTOLOAD:=$(call AutoProbe,c_can_platform)
$(call AddDepends/can)
endef
define KernelPackage/can-c-can-platform/description
This driver adds support for the C_CAN/D_CAN chips connected
to the "platform bus" (Linux abstraction for directly to the
processor attached devices) which can be found on various
boards from ST Microelectronics (http://www.st.com) like the
SPEAr1310 and SPEAr320 evaluation boards & TI (www.ti.com)
boards like am335x, dm814x, dm813x and dm811x.
endef
$(eval $(call KernelPackage,can-c-can-platform))
define KernelPackage/can-c-can-pci
TITLE:=PCI Bus based BOSCH C_CAN/D_CAN driver
KCONFIG:=CONFIG_CAN_C_CAN_PCI
DEPENDS:=kmod-can-c-can @PCI_SUPPORT
FILES:=$(LINUX_DIR)/drivers/net/can/c_can/c_can_pci.ko
AUTOLOAD:=$(call AutoProbe,c_can_pci)
$(call AddDepends/can)
endef
define KernelPackage/can-c-can-pci/description
This driver adds support for the C_CAN/D_CAN chips connected
to the PCI bus.
endef
$(eval $(call KernelPackage,can-c-can-pci))

View File

@ -20,6 +20,19 @@ define AddDepends/crypto
DEPENDS+= $(1)
endef
define KernelPackage/crypto-acompress
TITLE:=Asynchronous Compression operations
HIDDEN:=1
KCONFIG:=CONFIG_CRYPTO_ACOMP2
FILES:=$(LINUX_DIR)/crypto/crypto_acompress.ko
AUTOLOAD:=$(call AutoLoad,09,crypto_acompress)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-acompress))
define KernelPackage/crypto-aead
TITLE:=CryptoAPI AEAD support
KCONFIG:= \
@ -33,108 +46,136 @@ endef
$(eval $(call KernelPackage,crypto-aead))
define KernelPackage/crypto-hash
TITLE:=CryptoAPI hash support
KCONFIG:=CONFIG_CRYPTO_HASH
FILES:=$(LINUX_DIR)/crypto/crypto_hash.ko
AUTOLOAD:=$(call AutoLoad,02,crypto_hash,1)
define KernelPackage/crypto-authenc
TITLE:=Combined mode wrapper for IPsec
DEPENDS:=+kmod-crypto-manager +!LINUX_3_18:kmod-crypto-null
KCONFIG:=CONFIG_CRYPTO_AUTHENC
FILES:=$(LINUX_DIR)/crypto/authenc.ko
AUTOLOAD:=$(call AutoLoad,09,authenc)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-hash))
$(eval $(call KernelPackage,crypto-authenc))
define KernelPackage/crypto-manager
TITLE:=CryptoAPI algorithm manager
DEPENDS:=+kmod-crypto-aead +kmod-crypto-hash +kmod-crypto-pcompress
KCONFIG:= \
CONFIG_CRYPTO_MANAGER \
CONFIG_CRYPTO_MANAGER2
FILES:=$(LINUX_DIR)/crypto/cryptomgr.ko
AUTOLOAD:=$(call AutoLoad,09,cryptomgr,1)
define KernelPackage/crypto-cbc
TITLE:=Cipher Block Chaining CryptoAPI module
DEPENDS:=+kmod-crypto-manager
KCONFIG:=CONFIG_CRYPTO_CBC
FILES:=$(LINUX_DIR)/crypto/cbc.ko
AUTOLOAD:=$(call AutoLoad,09,cbc)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-manager))
$(eval $(call KernelPackage,crypto-cbc))
define KernelPackage/crypto-pcompress
TITLE:=CryptoAPI Partial (de)compression operations
KCONFIG:= \
CONFIG_CRYPTO_PCOMP=y \
CONFIG_CRYPTO_PCOMP2
FILES:=$(LINUX_DIR)/crypto/pcompress.ko
AUTOLOAD:=$(call AutoLoad,09,pcompress)
define KernelPackage/crypto-ccm
TITLE:=Support for Counter with CBC MAC (CCM)
DEPENDS:=+kmod-crypto-ctr +kmod-crypto-aead
KCONFIG:=CONFIG_CRYPTO_CCM
FILES:=$(LINUX_DIR)/crypto/ccm.ko
AUTOLOAD:=$(call AutoLoad,09,ccm)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-ccm))
define KernelPackage/crypto-cmac
TITLE:=Support for Cipher-based Message Authentication Code (CMAC)
DEPENDS:=+kmod-crypto-hash
KCONFIG:=CONFIG_CRYPTO_CMAC
FILES:=$(LINUX_DIR)/crypto/cmac.ko
AUTOLOAD:=$(call AutoLoad,09,cmac)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-pcompress))
$(eval $(call KernelPackage,crypto-cmac))
define KernelPackage/crypto-user
TITLE:=CryptoAPI userspace interface
DEPENDS:=+kmod-crypto-hash +kmod-crypto-manager
KCONFIG:= \
CONFIG_CRYPTO_USER_API \
CONFIG_CRYPTO_USER_API_HASH \
CONFIG_CRYPTO_USER_API_SKCIPHER
FILES:= \
$(LINUX_DIR)/crypto/af_alg.ko \
$(LINUX_DIR)/crypto/algif_hash.ko \
$(LINUX_DIR)/crypto/algif_skcipher.ko
AUTOLOAD:=$(call AutoLoad,09,af_alg algif_hash algif_skcipher)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-user))
define KernelPackage/crypto-wq
TITLE:=CryptoAPI work queue handling
KCONFIG:=CONFIG_CRYPTO_WORKQUEUE
FILES:=$(LINUX_DIR)/crypto/crypto_wq.ko
AUTOLOAD:=$(call AutoLoad,09,crypto_wq)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-wq))
define KernelPackage/crypto-rng
TITLE:=CryptoAPI random number generation
DEPENDS:=+kmod-crypto-hash +kmod-crypto-hmac +kmod-crypto-sha256
KCONFIG:= \
CONFIG_CRYPTO_DRBG \
CONFIG_CRYPTO_DRBG_HMAC=y \
CONFIG_CRYPTO_DRBG_HASH=n \
CONFIG_CRYPTO_DRBG_MENU \
CONFIG_CRYPTO_JITTERENTROPY \
CONFIG_CRYPTO_RNG2
FILES:= \
$(LINUX_DIR)/crypto/drbg.ko@ge4.2 \
$(LINUX_DIR)/crypto/jitterentropy_rng.ko@ge4.2 \
$(LINUX_DIR)/crypto/krng.ko@lt4.2 \
$(LINUX_DIR)/crypto/rng.ko
AUTOLOAD:=$(call AutoLoad,09,drbg@ge4.2 jitterentropy_rng@ge4.2 krng@lt4.2 rng)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-rng))
define KernelPackage/crypto-rsa
TITLE:=RSA algorithm
DEPENDS:=@!LINUX_3_18 +kmod-crypto-manager
KCONFIG:= CONFIG_CRYPTO_RSA
define KernelPackage/crypto-crc32
TITLE:=CRC32 CRC module
DEPENDS:=+kmod-crypto-hash
KCONFIG:=CONFIG_CRYPTO_CRC32
HIDDEN:=1
FILES:= \
$(LINUX_DIR)/lib/asn1_decoder.ko \
$(LINUX_DIR)/lib/mpi/mpi.ko \
$(LINUX_DIR)/crypto/akcipher.ko \
$(LINUX_DIR)/crypto/rsa_generic.ko
AUTOLOAD:=$(call AutoLoad,10,rsa_generic)
FILES:=$(LINUX_DIR)/crypto/crc32_generic.ko@ge4.9
AUTOLOAD:=$(call AutoLoad,04,crc32_generic@ge4.9,1)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-rsa))
$(eval $(call KernelPackage,crypto-crc32))
define KernelPackage/crypto-crc32c
TITLE:=CRC32c CRC module
DEPENDS:=+kmod-crypto-hash
KCONFIG:=CONFIG_CRYPTO_CRC32C
FILES:=$(LINUX_DIR)/crypto/crc32c_generic.ko
AUTOLOAD:=$(call AutoLoad,04,crc32c_generic,1)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-crc32c))
define KernelPackage/crypto-ctr
TITLE:=Counter Mode CryptoAPI module
DEPENDS:=+kmod-crypto-manager +kmod-crypto-seqiv +kmod-crypto-iv
KCONFIG:=CONFIG_CRYPTO_CTR
FILES:=$(LINUX_DIR)/crypto/ctr.ko
AUTOLOAD:=$(call AutoLoad,09,ctr)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-ctr))
define KernelPackage/crypto-cts
TITLE:=Cipher Text Stealing CryptoAPI module
DEPENDS:=+kmod-crypto-manager
KCONFIG:=CONFIG_CRYPTO_CTS
FILES:=$(LINUX_DIR)/crypto/cts.ko
AUTOLOAD:=$(call AutoLoad,09,cts)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-cts))
define KernelPackage/crypto-deflate
TITLE:=Deflate compression CryptoAPI module
DEPENDS:=+kmod-lib-zlib-inflate +kmod-lib-zlib-deflate +LINUX_4_14:kmod-crypto-acompress
KCONFIG:=CONFIG_CRYPTO_DEFLATE
FILES:=$(LINUX_DIR)/crypto/deflate.ko
AUTOLOAD:=$(call AutoLoad,09,deflate)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-deflate))
define KernelPackage/crypto-des
TITLE:=DES/3DES cipher CryptoAPI module
KCONFIG:=CONFIG_CRYPTO_DES
FILES:=$(LINUX_DIR)/crypto/des_generic.ko
AUTOLOAD:=$(call AutoLoad,09,des_generic)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-des))
define KernelPackage/crypto-ecb
TITLE:=Electronic CodeBook CryptoAPI module
DEPENDS:=+kmod-crypto-manager
KCONFIG:=CONFIG_CRYPTO_ECB
FILES:=$(LINUX_DIR)/crypto/ecb.ko
AUTOLOAD:=$(call AutoLoad,09,ecb)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-ecb))
define KernelPackage/crypto-ecdh
@ -150,21 +191,6 @@ endef
$(eval $(call KernelPackage,crypto-ecdh))
define KernelPackage/crypto-iv
TITLE:=CryptoAPI initialization vectors
DEPENDS:=+kmod-crypto-manager +kmod-crypto-rng +kmod-crypto-wq
KCONFIG:= CONFIG_CRYPTO_BLKCIPHER2
HIDDEN:=1
FILES:= \
$(LINUX_DIR)/crypto/eseqiv.ko@lt4.9 \
$(LINUX_DIR)/crypto/chainiv.ko@lt4.9
AUTOLOAD:=$(call AutoLoad,10,eseqiv chainiv)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-iv))
define KernelPackage/crypto-echainiv
TITLE:=Encrypted Chain IV Generator
DEPENDS:=+kmod-crypto-aead
@ -177,51 +203,73 @@ endef
$(eval $(call KernelPackage,crypto-echainiv))
define KernelPackage/crypto-seqiv
TITLE:=CryptoAPI Sequence Number IV Generator
DEPENDS:=+kmod-crypto-aead +kmod-crypto-rng
KCONFIG:=CONFIG_CRYPTO_SEQIV
FILES:=$(LINUX_DIR)/crypto/seqiv.ko
AUTOLOAD:=$(call AutoLoad,09,seqiv)
define KernelPackage/crypto-fcrypt
TITLE:=FCRYPT cipher CryptoAPI module
KCONFIG:=CONFIG_CRYPTO_FCRYPT
FILES:=$(LINUX_DIR)/crypto/fcrypt.ko
AUTOLOAD:=$(call AutoLoad,09,fcrypt)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-seqiv))
$(eval $(call KernelPackage,crypto-fcrypt))
define KernelPackage/crypto-hw-talitos
TITLE:=Freescale integrated security engine (SEC) driver
DEPENDS:=+kmod-crypto-manager +kmod-crypto-hash +kmod-random-core +kmod-crypto-authenc +kmod-crypto-des
KCONFIG:= \
CONFIG_CRYPTO_HW=y \
CONFIG_CRYPTO_DEV_TALITOS \
CONFIG_CRYPTO_DEV_TALITOS1=y \
CONFIG_CRYPTO_DEV_TALITOS2=y
FILES:= \
$(LINUX_DIR)/drivers/crypto/talitos.ko
AUTOLOAD:=$(call AutoLoad,09,talitos)
define KernelPackage/crypto-gcm
TITLE:=GCM/GMAC CryptoAPI module
DEPENDS:=+kmod-crypto-ctr +kmod-crypto-ghash +kmod-crypto-null
KCONFIG:=CONFIG_CRYPTO_GCM
FILES:=$(LINUX_DIR)/crypto/gcm.ko
AUTOLOAD:=$(call AutoLoad,09,gcm)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-hw-talitos))
$(eval $(call KernelPackage,crypto-gcm))
define KernelPackage/crypto-hw-padlock
TITLE:=VIA PadLock ACE with AES/SHA hw crypto module
DEPENDS:=+kmod-crypto-manager
KCONFIG:= \
CONFIG_CRYPTO_HW=y \
CONFIG_CRYPTO_DEV_PADLOCK \
CONFIG_CRYPTO_DEV_PADLOCK_AES \
CONFIG_CRYPTO_DEV_PADLOCK_SHA
FILES:= \
$(LINUX_DIR)/drivers/crypto/padlock-aes.ko \
$(LINUX_DIR)/drivers/crypto/padlock-sha.ko
AUTOLOAD:=$(call AutoLoad,09,padlock-aes padlock-sha)
define KernelPackage/crypto-gf128
TITLE:=GF(2^128) multiplication functions CryptoAPI module
KCONFIG:=CONFIG_CRYPTO_GF128MUL
FILES:=$(LINUX_DIR)/crypto/gf128mul.ko
AUTOLOAD:=$(call AutoLoad,09,gf128mul)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-hw-padlock))
$(eval $(call KernelPackage,crypto-gf128))
define KernelPackage/crypto-ghash
TITLE:=GHASH digest CryptoAPI module
DEPENDS:=+kmod-crypto-gf128 +kmod-crypto-hash
KCONFIG:=CONFIG_CRYPTO_GHASH
FILES:=$(LINUX_DIR)/crypto/ghash-generic.ko
AUTOLOAD:=$(call AutoLoad,09,ghash-generic)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-ghash))
define KernelPackage/crypto-hash
TITLE:=CryptoAPI hash support
KCONFIG:=CONFIG_CRYPTO_HASH
FILES:=$(LINUX_DIR)/crypto/crypto_hash.ko
AUTOLOAD:=$(call AutoLoad,02,crypto_hash,1)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-hash))
define KernelPackage/crypto-hmac
TITLE:=HMAC digest CryptoAPI module
DEPENDS:=+kmod-crypto-hash +kmod-crypto-manager
KCONFIG:=CONFIG_CRYPTO_HMAC
FILES:=$(LINUX_DIR)/crypto/hmac.ko
AUTOLOAD:=$(call AutoLoad,09,hmac)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-hmac))
define KernelPackage/crypto-hw-ccp
@ -272,93 +320,54 @@ endef
$(eval $(call KernelPackage,crypto-hw-hifn-795x))
define KernelPackage/crypto-authenc
TITLE:=Combined mode wrapper for IPsec
DEPENDS:=+kmod-crypto-manager +!LINUX_3_18:kmod-crypto-null
KCONFIG:=CONFIG_CRYPTO_AUTHENC
FILES:=$(LINUX_DIR)/crypto/authenc.ko
AUTOLOAD:=$(call AutoLoad,09,authenc)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-authenc))
define KernelPackage/crypto-cbc
TITLE:=Cipher Block Chaining CryptoAPI module
define KernelPackage/crypto-hw-padlock
TITLE:=VIA PadLock ACE with AES/SHA hw crypto module
DEPENDS:=+kmod-crypto-manager
KCONFIG:=CONFIG_CRYPTO_CBC
FILES:=$(LINUX_DIR)/crypto/cbc.ko
AUTOLOAD:=$(call AutoLoad,09,cbc)
KCONFIG:= \
CONFIG_CRYPTO_HW=y \
CONFIG_CRYPTO_DEV_PADLOCK \
CONFIG_CRYPTO_DEV_PADLOCK_AES \
CONFIG_CRYPTO_DEV_PADLOCK_SHA
FILES:= \
$(LINUX_DIR)/drivers/crypto/padlock-aes.ko \
$(LINUX_DIR)/drivers/crypto/padlock-sha.ko
AUTOLOAD:=$(call AutoLoad,09,padlock-aes padlock-sha)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-cbc))
$(eval $(call KernelPackage,crypto-hw-padlock))
define KernelPackage/crypto-ctr
TITLE:=Counter Mode CryptoAPI module
DEPENDS:=+kmod-crypto-manager +kmod-crypto-seqiv +kmod-crypto-iv
KCONFIG:=CONFIG_CRYPTO_CTR
FILES:=$(LINUX_DIR)/crypto/ctr.ko
AUTOLOAD:=$(call AutoLoad,09,ctr)
define KernelPackage/crypto-hw-talitos
TITLE:=Freescale integrated security engine (SEC) driver
DEPENDS:=+kmod-crypto-manager +kmod-crypto-hash +kmod-random-core +kmod-crypto-authenc +kmod-crypto-des
KCONFIG:= \
CONFIG_CRYPTO_HW=y \
CONFIG_CRYPTO_DEV_TALITOS \
CONFIG_CRYPTO_DEV_TALITOS1=y \
CONFIG_CRYPTO_DEV_TALITOS2=y
FILES:= \
$(LINUX_DIR)/drivers/crypto/talitos.ko
AUTOLOAD:=$(call AutoLoad,09,talitos)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-ctr))
$(eval $(call KernelPackage,crypto-hw-talitos))
define KernelPackage/crypto-ccm
TITLE:=Support for Counter with CBC MAC (CCM)
DEPENDS:=+kmod-crypto-ctr +kmod-crypto-aead
KCONFIG:=CONFIG_CRYPTO_CCM
FILES:=$(LINUX_DIR)/crypto/ccm.ko
AUTOLOAD:=$(call AutoLoad,09,ccm)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-ccm))
define KernelPackage/crypto-pcbc
TITLE:=Propagating Cipher Block Chaining CryptoAPI module
DEPENDS:=+kmod-crypto-manager
KCONFIG:=CONFIG_CRYPTO_PCBC
FILES:=$(LINUX_DIR)/crypto/pcbc.ko
AUTOLOAD:=$(call AutoLoad,09,pcbc)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-pcbc))
define KernelPackage/crypto-crc32c
TITLE:=CRC32c CRC module
DEPENDS:=+kmod-crypto-hash
KCONFIG:=CONFIG_CRYPTO_CRC32C
FILES:=$(LINUX_DIR)/crypto/crc32c_generic.ko
AUTOLOAD:=$(call AutoLoad,04,crc32c_generic,1)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-crc32c))
define KernelPackage/crypto-crc32
TITLE:=CRC32 CRC module
DEPENDS:=+kmod-crypto-hash
KCONFIG:=CONFIG_CRYPTO_CRC32
define KernelPackage/crypto-iv
TITLE:=CryptoAPI initialization vectors
DEPENDS:=+kmod-crypto-manager +kmod-crypto-rng +kmod-crypto-wq
KCONFIG:= CONFIG_CRYPTO_BLKCIPHER2
HIDDEN:=1
FILES:=$(LINUX_DIR)/crypto/crc32_generic.ko@ge4.9
AUTOLOAD:=$(call AutoLoad,04,crc32_generic@ge4.9,1)
FILES:= \
$(LINUX_DIR)/crypto/eseqiv.ko@lt4.9 \
$(LINUX_DIR)/crypto/chainiv.ko@lt4.9
AUTOLOAD:=$(call AutoLoad,10,eseqiv chainiv)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-crc32))
define KernelPackage/crypto-des
TITLE:=DES/3DES cipher CryptoAPI module
KCONFIG:=CONFIG_CRYPTO_DES
FILES:=$(LINUX_DIR)/crypto/des_generic.ko
AUTOLOAD:=$(call AutoLoad,09,des_generic)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-des))
$(eval $(call KernelPackage,crypto-iv))
define KernelPackage/crypto-kpp
@ -373,120 +382,18 @@ endef
$(eval $(call KernelPackage,crypto-kpp))
define KernelPackage/crypto-acompress
TITLE:=Asynchronous Compression operations
HIDDEN:=1
KCONFIG:=CONFIG_CRYPTO_ACOMP2
FILES:=$(LINUX_DIR)/crypto/crypto_acompress.ko
AUTOLOAD:=$(call AutoLoad,09,crypto_acompress)
define KernelPackage/crypto-manager
TITLE:=CryptoAPI algorithm manager
DEPENDS:=+kmod-crypto-aead +kmod-crypto-hash +kmod-crypto-pcompress
KCONFIG:= \
CONFIG_CRYPTO_MANAGER \
CONFIG_CRYPTO_MANAGER2
FILES:=$(LINUX_DIR)/crypto/cryptomgr.ko
AUTOLOAD:=$(call AutoLoad,09,cryptomgr,1)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-acompress))
define KernelPackage/crypto-deflate
TITLE:=Deflate compression CryptoAPI module
DEPENDS:=+kmod-lib-zlib-inflate +kmod-lib-zlib-deflate +LINUX_4_14:kmod-crypto-acompress
KCONFIG:=CONFIG_CRYPTO_DEFLATE
FILES:=$(LINUX_DIR)/crypto/deflate.ko
AUTOLOAD:=$(call AutoLoad,09,deflate)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-deflate))
define KernelPackage/crypto-fcrypt
TITLE:=FCRYPT cipher CryptoAPI module
KCONFIG:=CONFIG_CRYPTO_FCRYPT
FILES:=$(LINUX_DIR)/crypto/fcrypt.ko
AUTOLOAD:=$(call AutoLoad,09,fcrypt)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-fcrypt))
define KernelPackage/crypto-ecb
TITLE:=Electronic CodeBook CryptoAPI module
DEPENDS:=+kmod-crypto-manager
KCONFIG:=CONFIG_CRYPTO_ECB
FILES:=$(LINUX_DIR)/crypto/ecb.ko
AUTOLOAD:=$(call AutoLoad,09,ecb)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-ecb))
define KernelPackage/crypto-cts
TITLE:=Cipher Text Stealing CryptoAPI module
DEPENDS:=+kmod-crypto-manager
KCONFIG:=CONFIG_CRYPTO_CTS
FILES:=$(LINUX_DIR)/crypto/cts.ko
AUTOLOAD:=$(call AutoLoad,09,cts)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-cts))
define KernelPackage/crypto-hmac
TITLE:=HMAC digest CryptoAPI module
DEPENDS:=+kmod-crypto-hash +kmod-crypto-manager
KCONFIG:=CONFIG_CRYPTO_HMAC
FILES:=$(LINUX_DIR)/crypto/hmac.ko
AUTOLOAD:=$(call AutoLoad,09,hmac)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-hmac))
define KernelPackage/crypto-cmac
TITLE:=Support for Cipher-based Message Authentication Code (CMAC)
DEPENDS:=+kmod-crypto-hash
KCONFIG:=CONFIG_CRYPTO_CMAC
FILES:=$(LINUX_DIR)/crypto/cmac.ko
AUTOLOAD:=$(call AutoLoad,09,cmac)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-cmac))
define KernelPackage/crypto-gcm
TITLE:=GCM/GMAC CryptoAPI module
DEPENDS:=+kmod-crypto-ctr +kmod-crypto-ghash +kmod-crypto-null
KCONFIG:=CONFIG_CRYPTO_GCM
FILES:=$(LINUX_DIR)/crypto/gcm.ko
AUTOLOAD:=$(call AutoLoad,09,gcm)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-gcm))
define KernelPackage/crypto-gf128
TITLE:=GF(2^128) multiplication functions CryptoAPI module
KCONFIG:=CONFIG_CRYPTO_GF128MUL
FILES:=$(LINUX_DIR)/crypto/gf128mul.ko
AUTOLOAD:=$(call AutoLoad,09,gf128mul)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-gf128))
define KernelPackage/crypto-ghash
TITLE:=GHASH digest CryptoAPI module
DEPENDS:=+kmod-crypto-gf128 +kmod-crypto-hash
KCONFIG:=CONFIG_CRYPTO_GHASH
FILES:=$(LINUX_DIR)/crypto/ghash-generic.ko
AUTOLOAD:=$(call AutoLoad,09,ghash-generic)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-ghash))
$(eval $(call KernelPackage,crypto-manager))
define KernelPackage/crypto-md4
@ -532,6 +439,138 @@ endef
$(eval $(call KernelPackage,crypto-michael-mic))
define KernelPackage/crypto-misc
TITLE:=Other CryptoAPI modules
DEPENDS:=+kmod-crypto-manager
KCONFIG:= \
CONFIG_CRYPTO_ANUBIS \
CONFIG_CRYPTO_BLOWFISH \
CONFIG_CRYPTO_CAMELLIA \
CONFIG_CRYPTO_CAST5 \
CONFIG_CRYPTO_CAST6 \
CONFIG_CRYPTO_FCRYPT \
CONFIG_CRYPTO_KHAZAD \
CONFIG_CRYPTO_SERPENT \
CONFIG_CRYPTO_TEA \
CONFIG_CRYPTO_TGR192 \
CONFIG_CRYPTO_TWOFISH \
CONFIG_CRYPTO_TWOFISH_COMMON \
CONFIG_CRYPTO_TWOFISH_586 \
CONFIG_CRYPTO_WP512
FILES:= \
$(LINUX_DIR)/crypto/anubis.ko \
$(LINUX_DIR)/crypto/camellia_generic.ko \
$(LINUX_DIR)/crypto/cast_common.ko \
$(LINUX_DIR)/crypto/cast5_generic.ko \
$(LINUX_DIR)/crypto/cast6_generic.ko \
$(LINUX_DIR)/crypto/khazad.ko \
$(LINUX_DIR)/crypto/tea.ko \
$(LINUX_DIR)/crypto/tgr192.ko \
$(LINUX_DIR)/crypto/twofish_common.ko \
$(LINUX_DIR)/crypto/wp512.ko \
$(LINUX_DIR)/crypto/twofish_generic.ko \
$(LINUX_DIR)/crypto/blowfish_common.ko \
$(LINUX_DIR)/crypto/blowfish_generic.ko \
$(LINUX_DIR)/crypto/serpent_generic.ko
$(call AddDepends/crypto)
endef
ifndef CONFIG_TARGET_x86_64
define KernelPackage/crypto-misc/x86
FILES+=$(LINUX_DIR)/arch/x86/crypto/twofish-i586.ko
endef
endif
$(eval $(call KernelPackage,crypto-misc))
define KernelPackage/crypto-null
TITLE:=Null CryptoAPI module
KCONFIG:=CONFIG_CRYPTO_NULL
FILES:=$(LINUX_DIR)/crypto/crypto_null.ko
AUTOLOAD:=$(call AutoLoad,09,crypto_null)
$(call AddDepends/crypto, +kmod-crypto-hash)
endef
$(eval $(call KernelPackage,crypto-null))
define KernelPackage/crypto-pcbc
TITLE:=Propagating Cipher Block Chaining CryptoAPI module
DEPENDS:=+kmod-crypto-manager
KCONFIG:=CONFIG_CRYPTO_PCBC
FILES:=$(LINUX_DIR)/crypto/pcbc.ko
AUTOLOAD:=$(call AutoLoad,09,pcbc)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-pcbc))
define KernelPackage/crypto-pcompress
TITLE:=CryptoAPI Partial (de)compression operations
KCONFIG:= \
CONFIG_CRYPTO_PCOMP=y \
CONFIG_CRYPTO_PCOMP2
FILES:=$(LINUX_DIR)/crypto/pcompress.ko
AUTOLOAD:=$(call AutoLoad,09,pcompress)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-pcompress))
define KernelPackage/crypto-rsa
TITLE:=RSA algorithm
DEPENDS:=@!LINUX_3_18 +kmod-crypto-manager
KCONFIG:= CONFIG_CRYPTO_RSA
HIDDEN:=1
FILES:= \
$(LINUX_DIR)/lib/asn1_decoder.ko \
$(LINUX_DIR)/lib/mpi/mpi.ko \
$(LINUX_DIR)/crypto/akcipher.ko \
$(LINUX_DIR)/crypto/rsa_generic.ko
AUTOLOAD:=$(call AutoLoad,10,rsa_generic)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-rsa))
define KernelPackage/crypto-rng
TITLE:=CryptoAPI random number generation
DEPENDS:=+kmod-crypto-hash +kmod-crypto-hmac +kmod-crypto-sha256
KCONFIG:= \
CONFIG_CRYPTO_DRBG \
CONFIG_CRYPTO_DRBG_HMAC=y \
CONFIG_CRYPTO_DRBG_HASH=n \
CONFIG_CRYPTO_DRBG_MENU \
CONFIG_CRYPTO_JITTERENTROPY \
CONFIG_CRYPTO_RNG2
FILES:= \
$(LINUX_DIR)/crypto/drbg.ko@ge4.2 \
$(LINUX_DIR)/crypto/jitterentropy_rng.ko@ge4.2 \
$(LINUX_DIR)/crypto/krng.ko@lt4.2 \
$(LINUX_DIR)/crypto/rng.ko
AUTOLOAD:=$(call AutoLoad,09,drbg@ge4.2 jitterentropy_rng@ge4.2 krng@lt4.2 rng)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-rng))
define KernelPackage/crypto-seqiv
TITLE:=CryptoAPI Sequence Number IV Generator
DEPENDS:=+kmod-crypto-aead +kmod-crypto-rng
KCONFIG:=CONFIG_CRYPTO_SEQIV
FILES:=$(LINUX_DIR)/crypto/seqiv.ko
AUTOLOAD:=$(call AutoLoad,09,seqiv)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-seqiv))
define KernelPackage/crypto-sha1
TITLE:=SHA1 digest CryptoAPI module
DEPENDS:=+kmod-crypto-hash
@ -607,62 +646,6 @@ endef
$(eval $(call KernelPackage,crypto-sha512))
define KernelPackage/crypto-misc
TITLE:=Other CryptoAPI modules
DEPENDS:=+kmod-crypto-manager
KCONFIG:= \
CONFIG_CRYPTO_ANUBIS \
CONFIG_CRYPTO_BLOWFISH \
CONFIG_CRYPTO_CAMELLIA \
CONFIG_CRYPTO_CAST5 \
CONFIG_CRYPTO_CAST6 \
CONFIG_CRYPTO_FCRYPT \
CONFIG_CRYPTO_KHAZAD \
CONFIG_CRYPTO_SERPENT \
CONFIG_CRYPTO_TEA \
CONFIG_CRYPTO_TGR192 \
CONFIG_CRYPTO_TWOFISH \
CONFIG_CRYPTO_TWOFISH_COMMON \
CONFIG_CRYPTO_TWOFISH_586 \
CONFIG_CRYPTO_WP512
FILES:= \
$(LINUX_DIR)/crypto/anubis.ko \
$(LINUX_DIR)/crypto/camellia_generic.ko \
$(LINUX_DIR)/crypto/cast_common.ko \
$(LINUX_DIR)/crypto/cast5_generic.ko \
$(LINUX_DIR)/crypto/cast6_generic.ko \
$(LINUX_DIR)/crypto/khazad.ko \
$(LINUX_DIR)/crypto/tea.ko \
$(LINUX_DIR)/crypto/tgr192.ko \
$(LINUX_DIR)/crypto/twofish_common.ko \
$(LINUX_DIR)/crypto/wp512.ko \
$(LINUX_DIR)/crypto/twofish_generic.ko \
$(LINUX_DIR)/crypto/blowfish_common.ko \
$(LINUX_DIR)/crypto/blowfish_generic.ko \
$(LINUX_DIR)/crypto/serpent_generic.ko
$(call AddDepends/crypto)
endef
ifndef CONFIG_TARGET_x86_64
define KernelPackage/crypto-misc/x86
FILES+=$(LINUX_DIR)/arch/x86/crypto/twofish-i586.ko
endef
endif
$(eval $(call KernelPackage,crypto-misc))
define KernelPackage/crypto-null
TITLE:=Null CryptoAPI module
KCONFIG:=CONFIG_CRYPTO_NULL
FILES:=$(LINUX_DIR)/crypto/crypto_null.ko
AUTOLOAD:=$(call AutoLoad,09,crypto_null)
$(call AddDepends/crypto, +kmod-crypto-hash)
endef
$(eval $(call KernelPackage,crypto-null))
define KernelPackage/crypto-test
TITLE:=Test CryptoAPI module
KCONFIG:=CONFIG_CRYPTO_TEST
@ -673,6 +656,34 @@ endef
$(eval $(call KernelPackage,crypto-test))
define KernelPackage/crypto-user
TITLE:=CryptoAPI userspace interface
DEPENDS:=+kmod-crypto-hash +kmod-crypto-manager
KCONFIG:= \
CONFIG_CRYPTO_USER_API \
CONFIG_CRYPTO_USER_API_HASH \
CONFIG_CRYPTO_USER_API_SKCIPHER
FILES:= \
$(LINUX_DIR)/crypto/af_alg.ko \
$(LINUX_DIR)/crypto/algif_hash.ko \
$(LINUX_DIR)/crypto/algif_skcipher.ko
AUTOLOAD:=$(call AutoLoad,09,af_alg algif_hash algif_skcipher)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-user))
define KernelPackage/crypto-wq
TITLE:=CryptoAPI work queue handling
KCONFIG:=CONFIG_CRYPTO_WORKQUEUE
FILES:=$(LINUX_DIR)/crypto/crypto_wq.ko
AUTOLOAD:=$(call AutoLoad,09,crypto_wq)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-wq))
define KernelPackage/crypto-xts
TITLE:=XTS cipher CryptoAPI module
DEPENDS:=+kmod-crypto-gf128 +kmod-crypto-manager
@ -683,3 +694,4 @@ define KernelPackage/crypto-xts
endef
$(eval $(call KernelPackage,crypto-xts))

View File

@ -22,6 +22,22 @@ endef
$(eval $(call KernelPackage,firewire))
define KernelPackage/firewire-net
SUBMENU:=$(FIREWIRE_MENU)
TITLE:=Support for IP networking over FireWire
DEPENDS:=kmod-firewire
KCONFIG:=CONFIG_FIREWIRE_NET
FILES:=$(LINUX_DIR)/drivers/firewire/firewire-net.ko
AUTOLOAD:=$(call AutoProbe,firewire-net)
endef
define KernelPackage/firewire-net/description
Kernel support for IPv4 over FireWire
endef
$(eval $(call KernelPackage,firewire-net))
define KernelPackage/firewire-ohci
SUBMENU:=$(FIREWIRE_MENU)
TITLE:=Support for OHCI-1394 controllers
@ -58,17 +74,3 @@ endef
$(eval $(call KernelPackage,firewire-sbp2))
define KernelPackage/firewire-net
SUBMENU:=$(FIREWIRE_MENU)
TITLE:=Support for IP networking over FireWire
DEPENDS:=kmod-firewire
KCONFIG:=CONFIG_FIREWIRE_NET
FILES:=$(LINUX_DIR)/drivers/firewire/firewire-net.ko
AUTOLOAD:=$(call AutoProbe,firewire-net)
endef
define KernelPackage/firewire-net/description
Kernel support for IPv4 over FireWire
endef
$(eval $(call KernelPackage,firewire-net))

View File

@ -7,25 +7,6 @@
FS_MENU:=Filesystems
define KernelPackage/fs-fscache
SUBMENU:=$(FS_MENU)
TITLE:=General filesystem local cache manager
DEPENDS:=
KCONFIG:=\
CONFIG_FSCACHE=m \
CONFIG_FSCACHE_STATS=y \
CONFIG_FSCACHE_HISTOGRAM=n \
CONFIG_FSCACHE_DEBUG=n \
CONFIG_FSCACHE_OBJECT_LIST=n \
CONFIG_CACHEFILES=y \
CONFIG_CACHEFILES_DEBUG=n \
CONFIG_CACHEFILES_HISTOGRAM=n
FILES:=$(LINUX_DIR)/fs/fscache/fscache.ko
AUTOLOAD:=$(call AutoLoad,29,fscache)
endef
$(eval $(call KernelPackage,fs-fscache))
define KernelPackage/fs-9p
SUBMENU:=$(FS_MENU)
TITLE:=Plan 9 Resource Sharing Support
@ -45,6 +26,7 @@ endef
$(eval $(call KernelPackage,fs-9p))
define KernelPackage/fs-afs
SUBMENU:=$(FS_MENU)
TITLE:=Andrew FileSystem client
@ -142,6 +124,7 @@ endef
$(eval $(call KernelPackage,fs-configfs))
define KernelPackage/fs-cramfs
SUBMENU:=$(FS_MENU)
TITLE:=Compressed RAM/ROM filesystem support
@ -158,6 +141,23 @@ endef
$(eval $(call KernelPackage,fs-cramfs))
define KernelPackage/fs-efivarfs
SUBMENU:=$(FS_MENU)
TITLE:=efivar filesystem support
KCONFIG:=CONFIG_EFIVAR_FS
FILES:=$(LINUX_DIR)/fs/efivarfs/efivarfs.ko
DEPENDS:=@(x86_64||x86)
AUTOLOAD:=$(call Autoload,90,efivarfs)
endef
define KernelPackage/fs-efivarfs/description
Kernel module to support efivarfs file system mountpoint.
endef
$(eval $(call KernelPackage,fs-efivarfs))
define KernelPackage/fs-exportfs
SUBMENU:=$(FS_MENU)
TITLE:=exportfs kernel server support
@ -220,19 +220,24 @@ endef
$(eval $(call KernelPackage,fs-f2fs))
define KernelPackage/fuse
define KernelPackage/fs-fscache
SUBMENU:=$(FS_MENU)
TITLE:=FUSE (Filesystem in Userspace) support
KCONFIG:= CONFIG_FUSE_FS
FILES:=$(LINUX_DIR)/fs/fuse/fuse.ko
AUTOLOAD:=$(call AutoLoad,80,fuse)
TITLE:=General filesystem local cache manager
DEPENDS:=
KCONFIG:=\
CONFIG_FSCACHE=m \
CONFIG_FSCACHE_STATS=y \
CONFIG_FSCACHE_HISTOGRAM=n \
CONFIG_FSCACHE_DEBUG=n \
CONFIG_FSCACHE_OBJECT_LIST=n \
CONFIG_CACHEFILES=y \
CONFIG_CACHEFILES_DEBUG=n \
CONFIG_CACHEFILES_HISTOGRAM=n
FILES:=$(LINUX_DIR)/fs/fscache/fscache.ko
AUTOLOAD:=$(call AutoLoad,29,fscache)
endef
define KernelPackage/fuse/description
Kernel module for userspace filesystem support
endef
$(eval $(call KernelPackage,fuse))
$(eval $(call KernelPackage,fs-fscache))
define KernelPackage/fs-hfs
@ -284,6 +289,21 @@ endef
$(eval $(call KernelPackage,fs-isofs))
define KernelPackage/fs-jfs
SUBMENU:=$(FS_MENU)
TITLE:=JFS filesystem support
KCONFIG:=CONFIG_JFS_FS
FILES:=$(LINUX_DIR)/fs/jfs/jfs.ko
AUTOLOAD:=$(call AutoLoad,30,jfs,1)
$(call AddDepends/nls)
endef
define KernelPackage/fs-jfs/description
Kernel module for JFS support
endef
$(eval $(call KernelPackage,fs-jfs))
define KernelPackage/fs-minix
SUBMENU:=$(FS_MENU)
TITLE:=Minix filesystem support
@ -335,37 +355,6 @@ endef
$(eval $(call KernelPackage,fs-nfs))
define KernelPackage/fs-nfs-v3
SUBMENU:=$(FS_MENU)
TITLE:=NFS3 filesystem client support
DEPENDS:=+kmod-fs-nfs
FILES:= \
$(LINUX_DIR)/fs/nfs/nfsv3.ko
AUTOLOAD:=$(call AutoLoad,41,nfsv3)
endef
define KernelPackage/fs-nfs-v3/description
Kernel module for NFS v3 client support
endef
$(eval $(call KernelPackage,fs-nfs-v3))
define KernelPackage/fs-nfs-v4
SUBMENU:=$(FS_MENU)
TITLE:=NFS4 filesystem client support
DEPENDS:=+kmod-fs-nfs
KCONFIG:= \
CONFIG_NFS_V4=y
FILES:= \
$(LINUX_DIR)/fs/nfs/nfsv4.ko
AUTOLOAD:=$(call AutoLoad,41,nfsv4)
endef
define KernelPackage/fs-nfs-v4/description
Kernel module for NFS v4 support
endef
$(eval $(call KernelPackage,fs-nfs-v4))
define KernelPackage/fs-nfs-common
SUBMENU:=$(FS_MENU)
@ -413,6 +402,40 @@ endef
$(eval $(call KernelPackage,fs-nfs-common-rpcsec))
define KernelPackage/fs-nfs-v3
SUBMENU:=$(FS_MENU)
TITLE:=NFS3 filesystem client support
DEPENDS:=+kmod-fs-nfs
FILES:= \
$(LINUX_DIR)/fs/nfs/nfsv3.ko
AUTOLOAD:=$(call AutoLoad,41,nfsv3)
endef
define KernelPackage/fs-nfs-v3/description
Kernel module for NFS v3 client support
endef
$(eval $(call KernelPackage,fs-nfs-v3))
define KernelPackage/fs-nfs-v4
SUBMENU:=$(FS_MENU)
TITLE:=NFS4 filesystem client support
DEPENDS:=+kmod-fs-nfs
KCONFIG:= \
CONFIG_NFS_V4=y
FILES:= \
$(LINUX_DIR)/fs/nfs/nfsv4.ko
AUTOLOAD:=$(call AutoLoad,41,nfsv4)
endef
define KernelPackage/fs-nfs-v4/description
Kernel module for NFS v4 support
endef
$(eval $(call KernelPackage,fs-nfs-v4))
define KernelPackage/fs-nfsd
SUBMENU:=$(FS_MENU)
TITLE:=NFS kernel server support
@ -532,17 +555,18 @@ endef
$(eval $(call KernelPackage,fs-xfs))
define KernelPackage/fs-jfs
define KernelPackage/fuse
SUBMENU:=$(FS_MENU)
TITLE:=JFS filesystem support
KCONFIG:=CONFIG_JFS_FS
FILES:=$(LINUX_DIR)/fs/jfs/jfs.ko
AUTOLOAD:=$(call AutoLoad,30,jfs,1)
$(call AddDepends/nls)
TITLE:=FUSE (Filesystem in Userspace) support
KCONFIG:= CONFIG_FUSE_FS
FILES:=$(LINUX_DIR)/fs/fuse/fuse.ko
AUTOLOAD:=$(call AutoLoad,80,fuse)
endef
define KernelPackage/fs-jfs/description
Kernel module for JFS support
define KernelPackage/fuse/description
Kernel module for userspace filesystem support
endef
$(eval $(call KernelPackage,fs-jfs))
$(eval $(call KernelPackage,fuse))

View File

@ -29,21 +29,6 @@ define AddDepends/hwmon
DEPENDS:=kmod-hwmon-core $(1)
endef
define KernelPackage/hwmon-vid
TITLE:=VID/VRM/VRD voltage conversion module.
KCONFIG:=CONFIG_HWMON_VID
FILES:=$(LINUX_DIR)/drivers/hwmon/hwmon-vid.ko
AUTOLOAD:=$(call AutoLoad,41,hwmon-vid)
$(call AddDepends/hwmon,)
endef
define KernelPackage/hwmon-vid/description
VID/VRM/VRD voltage conversion module for hardware monitoring
endef
$(eval $(call KernelPackage,hwmon-vid))
define KernelPackage/hwmon-adt7410
TITLE:=ADT7410 monitoring support
KCONFIG:= \
@ -78,6 +63,21 @@ endef
$(eval $(call KernelPackage,hwmon-adt7475))
define KernelPackage/hwmon-gpiofan
TITLE:=Generic GPIO FAN support
KCONFIG:=CONFIG_SENSORS_GPIO_FAN
FILES:=$(LINUX_DIR)/drivers/hwmon/gpio-fan.ko
AUTOLOAD:=$(call AutoLoad,60,gpio-fan)
$(call AddDepends/hwmon,+kmod-i2c-core +PACKAGE_kmod-thermal:kmod-thermal)
endef
define KernelPackage/hwmon-gpiofan/description
Kernel module for GPIO controlled FANs
endef
$(eval $(call KernelPackage,hwmon-gpiofan))
define KernelPackage/hwmon-ina209
TITLE:=INA209 monitoring support
KCONFIG:=CONFIG_SENSORS_INA209
@ -93,21 +93,6 @@ endef
$(eval $(call KernelPackage,hwmon-ina209))
define KernelPackage/hwmon-nct6775
TITLE:=NCT6106D/6775F/6776F/6779D/6791D/6792D/6793D and compatibles monitoring support
KCONFIG:=CONFIG_SENSORS_NCT6775
FILES:=$(LINUX_DIR)/drivers/hwmon/nct6775.ko
AUTOLOAD:=$(call AutoProbe,nct6775)
$(call AddDepends/hwmon,@PCI_SUPPORT @TARGET_x86 +kmod-hwmon-vid)
endef
define KernelPackage/hwmon-nct6775/description
Kernel module for NCT6106D/6775F/6776F/6779D/6791D/6792D/6793D thermal monitor chip
endef
$(eval $(call KernelPackage,hwmon-nct6775))
define KernelPackage/hwmon-ina2xx
TITLE:=INA2XX monitoring support
KCONFIG:=CONFIG_SENSORS_INA2XX
@ -137,6 +122,7 @@ endef
$(eval $(call KernelPackage,hwmon-it87))
define KernelPackage/hwmon-lm63
TITLE:=LM63/64 monitoring support
KCONFIG:=CONFIG_SENSORS_LM63
@ -211,6 +197,7 @@ endef
$(eval $(call KernelPackage,hwmon-lm90))
define KernelPackage/hwmon-lm92
TITLE:=LM92 monitoring support
KCONFIG:=CONFIG_SENSORS_LM92
@ -225,6 +212,7 @@ endef
$(eval $(call KernelPackage,hwmon-lm92))
define KernelPackage/hwmon-lm95241
TITLE:=LM95241 monitoring support
KCONFIG:=CONFIG_SENSORS_LM95241
@ -239,6 +227,7 @@ endef
$(eval $(call KernelPackage,hwmon-lm95241))
define KernelPackage/hwmon-ltc4151
TITLE:=LTC4151 monitoring support
KCONFIG:=CONFIG_SENSORS_LTC4151
@ -253,19 +242,51 @@ endef
$(eval $(call KernelPackage,hwmon-ltc4151))
define KernelPackage/hwmon-sht21
TITLE:=Sensiron SHT21 and compat. monitoring support
KCONFIG:=CONFIG_SENSORS_SHT21
FILES:=$(LINUX_DIR)/drivers/hwmon/sht21.ko
AUTOLOAD:=$(call AutoProbe,sht21)
$(call AddDepends/hwmon,+kmod-i2c-core)
define KernelPackage/hwmon-nct6775
TITLE:=NCT6106D/6775F/6776F/6779D/6791D/6792D/6793D and compatibles monitoring support
KCONFIG:=CONFIG_SENSORS_NCT6775
FILES:=$(LINUX_DIR)/drivers/hwmon/nct6775.ko
AUTOLOAD:=$(call AutoProbe,nct6775)
$(call AddDepends/hwmon,@PCI_SUPPORT @TARGET_x86 +kmod-hwmon-vid)
endef
define KernelPackage/hwmon-sht21/description
Kernel module for Sensirion SHT21 and SHT25 temperature and humidity sensors chip
define KernelPackage/hwmon-nct6775/description
Kernel module for NCT6106D/6775F/6776F/6779D/6791D/6792D/6793D thermal monitor chip
endef
$(eval $(call KernelPackage,hwmon-sht21))
$(eval $(call KernelPackage,hwmon-nct6775))
define KernelPackage/hwmon-pc87360
TITLE:=PC87360 monitoring support
KCONFIG:=CONFIG_SENSORS_PC87360
FILES:=$(LINUX_DIR)/drivers/hwmon/pc87360.ko
AUTOLOAD:=$(call AutoProbe,pc87360)
$(call AddDepends/hwmon,@TARGET_x86 +kmod-hwmon-vid)
endef
define KernelPackage/hwmon-pc87360/description
Kernel modules for PC87360 chips
endef
$(eval $(call KernelPackage,hwmon-pc87360))
define KernelPackage/hwmon-pwmfan
TITLE:=Generic PWM FAN support
KCONFIG:=CONFIG_SENSORS_PWM_FAN
FILES:=$(LINUX_DIR)/drivers/hwmon/pwm-fan.ko
AUTOLOAD:=$(call AutoLoad,60,pwm-fan)
$(call AddDepends/hwmon, +PACKAGE_kmod-thermal:kmod-thermal)
endef
define KernelPackage/hwmon-pwmfan/description
Kernel module for PWM controlled FANs
endef
$(eval $(call KernelPackage,hwmon-pwmfan))
define KernelPackage/hwmon-sch5627
TITLE:=SMSC SCH5627 monitoring support
@ -283,66 +304,20 @@ endef
$(eval $(call KernelPackage,hwmon-sch5627))
define KernelPackage/hwmon-pc87360
TITLE:=PC87360 monitoring support
KCONFIG:=CONFIG_SENSORS_PC87360
FILES:=$(LINUX_DIR)/drivers/hwmon/pc87360.ko
AUTOLOAD:=$(call AutoProbe,pc87360)
$(call AddDepends/hwmon,@TARGET_x86 +kmod-hwmon-vid)
define KernelPackage/hwmon-sht21
TITLE:=Sensiron SHT21 and compat. monitoring support
KCONFIG:=CONFIG_SENSORS_SHT21
FILES:=$(LINUX_DIR)/drivers/hwmon/sht21.ko
AUTOLOAD:=$(call AutoProbe,sht21)
$(call AddDepends/hwmon,+kmod-i2c-core)
endef
define KernelPackage/hwmon-pc87360/description
Kernel modules for PC87360 chips
define KernelPackage/hwmon-sht21/description
Kernel module for Sensirion SHT21 and SHT25 temperature and humidity sensors chip
endef
$(eval $(call KernelPackage,hwmon-pc87360))
define KernelPackage/hwmon-w83627hf
TITLE:=Winbond W83627HF monitoring support
KCONFIG:=CONFIG_SENSORS_W83627HF
FILES:=$(LINUX_DIR)/drivers/hwmon/w83627hf.ko
AUTOLOAD:=$(call AutoLoad,50,w83627hf)
$(call AddDepends/hwmon,@TARGET_x86 +kmod-hwmon-vid)
endef
define KernelPackage/hwmon-w83627hf/description
Kernel module for the Winbond W83627HF chips.
endef
$(eval $(call KernelPackage,hwmon-w83627hf))
define KernelPackage/hwmon-w83627ehf
TITLE:=Winbond W83627EHF/EHG/DHG/UHG, W83667HG monitoring support
KCONFIG:=CONFIG_SENSORS_W83627EHF
FILES:=$(LINUX_DIR)/drivers/hwmon/w83627ehf.ko
AUTOLOAD:=$(call AutoProbe,w83627ehf)
$(call AddDepends/hwmon,@TARGET_x86 +kmod-hwmon-vid)
endef
define KernelPackage/hwmon-w83627ehf/description
Kernel module for Winbond W83627EHF/EHG/DHG/UHG and W83667HG thermal monitor chip
Support for NCT6775F and NCT6776F has been removed from this driver in favour of
using the nct6775 driver to handle those chips.
endef
$(eval $(call KernelPackage,hwmon-w83627ehf))
define KernelPackage/hwmon-w83793
TITLE:=Winbond W83793G/R monitoring support
KCONFIG:=CONFIG_SENSORS_W83793
FILES:=$(LINUX_DIR)/drivers/hwmon/w83793.ko
AUTOLOAD:=$(call AutoProbe,w83793)
$(call AddDepends/hwmon,+kmod-i2c-core +kmod-hwmon-vid)
endef
define KernelPackage/hwmon-w83793/description
Kernel module for the Winbond W83793G and W83793R chips.
endef
$(eval $(call KernelPackage,hwmon-w83793))
$(eval $(call KernelPackage,hwmon-sht21))
define KernelPackage/hwmon-tmp102
@ -390,31 +365,65 @@ endef
$(eval $(call KernelPackage,hwmon-tmp421))
define KernelPackage/hwmon-gpiofan
TITLE:=Generic GPIO FAN support
KCONFIG:=CONFIG_SENSORS_GPIO_FAN
FILES:=$(LINUX_DIR)/drivers/hwmon/gpio-fan.ko
AUTOLOAD:=$(call AutoLoad,60,gpio-fan)
$(call AddDepends/hwmon,+kmod-i2c-core +PACKAGE_kmod-thermal:kmod-thermal)
define KernelPackage/hwmon-vid
TITLE:=VID/VRM/VRD voltage conversion module.
KCONFIG:=CONFIG_HWMON_VID
FILES:=$(LINUX_DIR)/drivers/hwmon/hwmon-vid.ko
AUTOLOAD:=$(call AutoLoad,41,hwmon-vid)
$(call AddDepends/hwmon,)
endef
define KernelPackage/hwmon-gpiofan/description
Kernel module for GPIO controlled FANs
define KernelPackage/hwmon-vid/description
VID/VRM/VRD voltage conversion module for hardware monitoring
endef
$(eval $(call KernelPackage,hwmon-gpiofan))
$(eval $(call KernelPackage,hwmon-vid))
define KernelPackage/hwmon-pwmfan
TITLE:=Generic PWM FAN support
KCONFIG:=CONFIG_SENSORS_PWM_FAN
FILES:=$(LINUX_DIR)/drivers/hwmon/pwm-fan.ko
AUTOLOAD:=$(call AutoLoad,60,pwm-fan)
$(call AddDepends/hwmon, +PACKAGE_kmod-thermal:kmod-thermal)
define KernelPackage/hwmon-w83627ehf
TITLE:=Winbond W83627EHF/EHG/DHG/UHG, W83667HG monitoring support
KCONFIG:=CONFIG_SENSORS_W83627EHF
FILES:=$(LINUX_DIR)/drivers/hwmon/w83627ehf.ko
AUTOLOAD:=$(call AutoProbe,w83627ehf)
$(call AddDepends/hwmon,@TARGET_x86 +kmod-hwmon-vid)
endef
define KernelPackage/hwmon-pwmfan/description
Kernel module for PWM controlled FANs
define KernelPackage/hwmon-w83627ehf/description
Kernel module for Winbond W83627EHF/EHG/DHG/UHG and W83667HG thermal monitor chip
Support for NCT6775F and NCT6776F has been removed from this driver in favour of
using the nct6775 driver to handle those chips.
endef
$(eval $(call KernelPackage,hwmon-pwmfan))
$(eval $(call KernelPackage,hwmon-w83627ehf))
define KernelPackage/hwmon-w83627hf
TITLE:=Winbond W83627HF monitoring support
KCONFIG:=CONFIG_SENSORS_W83627HF
FILES:=$(LINUX_DIR)/drivers/hwmon/w83627hf.ko
AUTOLOAD:=$(call AutoLoad,50,w83627hf)
$(call AddDepends/hwmon,@TARGET_x86 +kmod-hwmon-vid)
endef
define KernelPackage/hwmon-w83627hf/description
Kernel module for the Winbond W83627HF chips.
endef
$(eval $(call KernelPackage,hwmon-w83627hf))
define KernelPackage/hwmon-w83793
TITLE:=Winbond W83793G/R monitoring support
KCONFIG:=CONFIG_SENSORS_W83793
FILES:=$(LINUX_DIR)/drivers/hwmon/w83793.ko
AUTOLOAD:=$(call AutoProbe,w83793)
$(call AddDepends/hwmon,+kmod-i2c-core +kmod-hwmon-vid)
endef
define KernelPackage/hwmon-w83793/description
Kernel module for the Winbond W83793G and W83793R chips.
endef
$(eval $(call KernelPackage,hwmon-w83793))

View File

@ -24,10 +24,6 @@ I2C_CORE_MODULES:= \
CONFIG_I2C:drivers/i2c/i2c-core \
CONFIG_I2C_CHARDEV:drivers/i2c/i2c-dev
ifeq ($(CONFIG_OF),y)
I2C_CORE_MODULES+=CONFIG_OF_I2C:drivers/of/of_i2c@lt3.12
endif
define KernelPackage/i2c-core
$(call i2c_defaults,$(I2C_CORE_MODULES),51)
TITLE:=I2C support
@ -104,43 +100,6 @@ endef
$(eval $(call KernelPackage,i2c-gpio))
I2C_TINY_USB_MODULES:= \
CONFIG_I2C_TINY_USB:drivers/i2c/busses/i2c-tiny-usb
define KernelPackage/i2c-tiny-usb
$(call i2c_defaults,$(I2C_TINY_USB_MODULES),59)
TITLE:=I2C Tiny USB adaptor
DEPENDS:=@USB_SUPPORT kmod-i2c-core +kmod-usb-core
endef
define KernelPackage/i2c-tiny-usb/description
Kernel module for the I2C Tiny USB adaptor developed
by Till Harbaum (http://www.harbaum.org/till/i2c_tiny_usb)
endef
$(eval $(call KernelPackage,i2c-tiny-usb))
I2C_PIIX4_MODULES:= \
CONFIG_I2C_PIIX4:drivers/i2c/busses/i2c-piix4
define KernelPackage/i2c-piix4
$(call i2c_defaults,$(I2C_PIIX4_MODULES),59)
TITLE:=Intel PIIX4 and compatible I2C interfaces
DEPENDS:=@PCI_SUPPORT @TARGET_x86 kmod-i2c-core
endef
define KernelPackage/i2c-piix4/description
Support for the Intel PIIX4 family of mainboard I2C interfaces,
specifically Intel PIIX4, Intel 440MX, ATI IXP200, ATI IXP300,
ATI IXP400, ATI SB600, ATI SB700/SP5100, ATI SB800, AMD Hudson-2,
AMD ML, AMD CZ, Serverworks OSB4, Serverworks CSB5,
Serverworks CSB6, Serverworks HT-1000, Serverworks HT-1100 and
SMSC Victory66.
endef
$(eval $(call KernelPackage,i2c-piix4))
I2C_I801_MODULES:= \
CONFIG_I2C_I801:drivers/i2c/busses/i2c-i801
@ -167,22 +126,6 @@ endef
$(eval $(call KernelPackage,i2c-i801))
I2C_SMBUS_MODULES:= \
CONFIG_I2C_SMBUS:drivers/i2c/i2c-smbus
define KernelPackage/i2c-smbus
$(call i2c_defaults,$(I2C_SMBUS_MODULES),58)
TITLE:=SMBus-specific protocols helper
DEPENDS:=kmod-i2c-core
endef
define KernelPackage/i2c-smbus/description
Support for the SMBus extensions to the I2C specification.
endef
$(eval $(call KernelPackage,i2c-smbus))
I2C_MUX_MODULES:= \
CONFIG_I2C_MUX:drivers/i2c/i2c-mux
@ -213,6 +156,22 @@ endef
$(eval $(call KernelPackage,i2c-mux-gpio))
I2C_MUX_PCA9541_MODULES:= \
CONFIG_I2C_MUX_PCA9541:drivers/i2c/muxes/i2c-mux-pca9541
define KernelPackage/i2c-mux-pca9541
$(call i2c_defaults,$(I2C_MUX_PCA9541_MODULES),51)
TITLE:=Philips PCA9541 I2C mux/switches
DEPENDS:=kmod-i2c-mux
endef
define KernelPackage/i2c-mux-pca9541/description
Kernel modules for PCA9541 I2C bus mux/switching devices
endef
$(eval $(call KernelPackage,i2c-mux-pca9541))
I2C_MUX_PCA954x_MODULES:= \
CONFIG_I2C_MUX_PCA954x:drivers/i2c/muxes/i2c-mux-pca954x
@ -229,17 +188,58 @@ endef
$(eval $(call KernelPackage,i2c-mux-pca954x))
I2C_MUX_PCA9541_MODULES:= \
CONFIG_I2C_MUX_PCA9541:drivers/i2c/muxes/i2c-mux-pca9541
I2C_PIIX4_MODULES:= \
CONFIG_I2C_PIIX4:drivers/i2c/busses/i2c-piix4
define KernelPackage/i2c-mux-pca9541
$(call i2c_defaults,$(I2C_MUX_PCA9541_MODULES),51)
TITLE:=Philips PCA9541 I2C mux/switches
DEPENDS:=kmod-i2c-mux
define KernelPackage/i2c-piix4
$(call i2c_defaults,$(I2C_PIIX4_MODULES),59)
TITLE:=Intel PIIX4 and compatible I2C interfaces
DEPENDS:=@PCI_SUPPORT @TARGET_x86 kmod-i2c-core
endef
define KernelPackage/i2c-mux-pca9541/description
Kernel modules for PCA9541 I2C bus mux/switching devices
define KernelPackage/i2c-piix4/description
Support for the Intel PIIX4 family of mainboard I2C interfaces,
specifically Intel PIIX4, Intel 440MX, ATI IXP200, ATI IXP300,
ATI IXP400, ATI SB600, ATI SB700/SP5100, ATI SB800, AMD Hudson-2,
AMD ML, AMD CZ, Serverworks OSB4, Serverworks CSB5,
Serverworks CSB6, Serverworks HT-1000, Serverworks HT-1100 and
SMSC Victory66.
endef
$(eval $(call KernelPackage,i2c-mux-pca9541))
$(eval $(call KernelPackage,i2c-piix4))
I2C_SMBUS_MODULES:= \
CONFIG_I2C_SMBUS:drivers/i2c/i2c-smbus
define KernelPackage/i2c-smbus
$(call i2c_defaults,$(I2C_SMBUS_MODULES),58)
TITLE:=SMBus-specific protocols helper
DEPENDS:=kmod-i2c-core
endef
define KernelPackage/i2c-smbus/description
Support for the SMBus extensions to the I2C specification.
endef
$(eval $(call KernelPackage,i2c-smbus))
I2C_TINY_USB_MODULES:= \
CONFIG_I2C_TINY_USB:drivers/i2c/busses/i2c-tiny-usb
define KernelPackage/i2c-tiny-usb
$(call i2c_defaults,$(I2C_TINY_USB_MODULES),59)
TITLE:=I2C Tiny USB adaptor
DEPENDS:=@USB_SUPPORT kmod-i2c-core +kmod-usb-core
endef
define KernelPackage/i2c-tiny-usb/description
Kernel module for the I2C Tiny USB adaptor developed
by Till Harbaum (http://www.harbaum.org/till/i2c_tiny_usb)
endef
$(eval $(call KernelPackage,i2c-tiny-usb))

View File

@ -52,6 +52,21 @@ endef
$(eval $(call KernelPackage,iio-ad799x))
define KernelPackage/iio-mxs-lradc
SUBMENU:=$(IIO_MENU)
DEPENDS:=@TARGET_mxs +kmod-iio-core
TITLE:=Freescale i.MX23/i.MX28 LRADC ADC driver
KCONFIG:= \
CONFIG_MXS_LRADC_ADC
FILES:=$(LINUX_DIR)/drivers/iio/adc/mxs-lradc-adc.ko
AUTOLOAD:=$(call AutoLoad,56,mxs-lradc-adc)
endef
define KernelPackage/iio-mxs-lradc/description
Support for Freescale's i.MX23/i.MX28 SoC internal Low-Resolution ADC
endef
$(eval $(call KernelPackage,iio-mxs-lradc))
define KernelPackage/iio-dht11
SUBMENU:=$(IIO_MENU)

View File

@ -32,7 +32,7 @@ define KernelPackage/ledtrig-heartbeat
AUTOLOAD:=$(call AutoLoad,50,ledtrig-heartbeat)
endef
define KernelPackage/ledtrig-gpio/description
define KernelPackage/ledtrig-heartbeat/description
Kernel module that allows LEDs to blink like heart beat
endef

View File

@ -519,9 +519,9 @@ $(eval $(call KernelPackage,e1000e))
define KernelPackage/igb
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Intel(R) 82575/82576 PCI-Express Gigabit Ethernet support
DEPENDS:=@PCI_SUPPORT +kmod-i2c-core +kmod-i2c-algo-bit +kmod-ptp
DEPENDS:=@PCI_SUPPORT +kmod-i2c-core +kmod-i2c-algo-bit +kmod-ptp +kmod-hwmon-core
KCONFIG:=CONFIG_IGB \
CONFIG_IGB_HWMON=n \
CONFIG_IGB_HWMON=y \
CONFIG_IGB_DCA=n
FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/igb/igb.ko
AUTOLOAD:=$(call AutoLoad,35,igb)
@ -539,7 +539,7 @@ define KernelPackage/igbvf
TITLE:=Intel(R) 82576 Virtual Function Ethernet support
DEPENDS:=@PCI_SUPPORT @TARGET_x86 +kmod-i2c-core +kmod-i2c-algo-bit +kmod-ptp
KCONFIG:=CONFIG_IGBVF \
CONFIG_IGB_HWMON=n \
CONFIG_IGB_HWMON=y \
CONFIG_IGB_DCA=n
FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/igbvf/igbvf.ko
AUTOLOAD:=$(call AutoLoad,35,igbvf)
@ -555,10 +555,10 @@ $(eval $(call KernelPackage,igbvf))
define KernelPackage/ixgbe
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Intel(R) 82598/82599 PCI-Express 10 Gigabit Ethernet support
DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-ptp
DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-ptp +kmod-hwmon-core
KCONFIG:=CONFIG_IXGBE \
CONFIG_IXGBE_VXLAN=n \
CONFIG_IXGBE_HWMON=n \
CONFIG_IXGBE_HWMON=y \
CONFIG_IXGBE_DCA=n
FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/ixgbe/ixgbe.ko
AUTOLOAD:=$(call AutoLoad,35,ixgbe)
@ -577,7 +577,7 @@ define KernelPackage/ixgbevf
DEPENDS:=@PCI_SUPPORT +kmod-ixgbe
KCONFIG:=CONFIG_IXGBEVF \
CONFIG_IXGBE_VXLAN=n \
CONFIG_IXGBE_HWMON=n \
CONFIG_IXGBE_HWMON=y \
CONFIG_IXGBE_DCA=n
FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/ixgbevf/ixgbevf.ko
AUTOLOAD:=$(call AutoLoad,35,ixgbevf)

View File

@ -11,13 +11,39 @@ NF_KMOD:=1
include $(INCLUDE_DIR)/netfilter.mk
define KernelPackage/nf-reject
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter IPv4 reject support
KCONFIG:= \
CONFIG_NETFILTER=y \
CONFIG_NETFILTER_ADVANCED=y \
$(KCONFIG_NF_REJECT)
FILES:=$(foreach mod,$(NF_REJECT-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_REJECT-m)))
endef
$(eval $(call KernelPackage,nf-reject))
define KernelPackage/nf-reject6
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter IPv6 reject support
KCONFIG:= \
CONFIG_NETFILTER=y \
CONFIG_NETFILTER_ADVANCED=y \
$(KCONFIG_NF_REJECT6)
DEPENDS:=@IPV6
FILES:=$(foreach mod,$(NF_REJECT6-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_REJECT6-m)))
endef
$(eval $(call KernelPackage,nf-reject6))
define KernelPackage/nf-ipt
SUBMENU:=$(NF_MENU)
TITLE:=Iptables core
KCONFIG:= \
CONFIG_NETFILTER=y \
CONFIG_NETFILTER_ADVANCED=y \
$(KCONFIG_NF_IPT)
KCONFIG:=$(KCONFIG_NF_IPT)
FILES:=$(foreach mod,$(NF_IPT-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_IPT-m)))
endef
@ -31,7 +57,7 @@ define KernelPackage/nf-ipt6
KCONFIG:=$(KCONFIG_NF_IPT6)
FILES:=$(foreach mod,$(NF_IPT6-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_IPT6-m)))
DEPENDS:=+kmod-nf-ipt +kmod-nf-conntrack6
DEPENDS:=+kmod-nf-ipt
endef
$(eval $(call KernelPackage,nf-ipt6))
@ -44,7 +70,7 @@ define KernelPackage/ipt-core
KCONFIG:=$(KCONFIG_IPT_CORE)
FILES:=$(foreach mod,$(IPT_CORE-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CORE-m)))
DEPENDS:=+kmod-nf-ipt
DEPENDS:=+kmod-nf-reject +kmod-nf-ipt
endef
define KernelPackage/ipt-core/description
@ -68,6 +94,7 @@ define KernelPackage/nf-conntrack
KCONFIG:= \
CONFIG_NETFILTER=y \
CONFIG_NETFILTER_ADVANCED=y \
CONFIG_NF_CONNTRACK_MARK=y \
CONFIG_NF_CONNTRACK_ZONES=y \
$(KCONFIG_NF_CONNTRACK)
FILES:=$(foreach mod,$(NF_CONNTRACK-m),$(LINUX_DIR)/net/$(mod).ko)
@ -93,7 +120,7 @@ define KernelPackage/nf-nat
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter NAT
KCONFIG:=$(KCONFIG_NF_NAT)
DEPENDS:=+kmod-nf-conntrack +kmod-nf-ipt
DEPENDS:=+kmod-nf-conntrack
FILES:=$(foreach mod,$(NF_NAT-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NAT-m)))
endef
@ -105,7 +132,7 @@ define KernelPackage/nf-nat6
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter IPV6-NAT
KCONFIG:=$(KCONFIG_NF_NAT6)
DEPENDS:=+kmod-nf-conntrack6 +kmod-nf-ipt6 +kmod-nf-nat
DEPENDS:=+kmod-nf-conntrack6 +kmod-nf-nat
FILES:=$(foreach mod,$(NF_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NAT6-m)))
endef
@ -113,6 +140,23 @@ endef
$(eval $(call KernelPackage,nf-nat6))
define KernelPackage/nf-flow
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter flowtable support
KCONFIG:= \
CONFIG_NETFILTER_INGRESS=y \
CONFIG_NF_FLOW_TABLE \
CONFIG_NF_FLOW_TABLE_HW
DEPENDS:=+kmod-nf-conntrack @!LINUX_3_18 @!LINUX_4_4 @!LINUX_4_9
FILES:= \
$(LINUX_DIR)/net/netfilter/nf_flow_table.ko \
$(LINUX_DIR)/net/netfilter/nf_flow_table_hw.ko
AUTOLOAD:=$(call AutoProbe,nf_flow_table nf_flow_table_hw)
endef
$(eval $(call KernelPackage,nf-flow))
define AddDepends/ipt
SUBMENU:=$(NF_MENU)
DEPENDS+= +kmod-ipt-core $(1)
@ -160,6 +204,21 @@ endef
$(eval $(call KernelPackage,ipt-conntrack-extra))
define KernelPackage/ipt-conntrack-label
TITLE:=Module for handling connection tracking labels
KCONFIG:=$(KCONFIG_IPT_CONNTRACK_LABEL)
FILES:=$(foreach mod,$(IPT_CONNTRACK_LABEL-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CONNTRACK_LABEL-m)))
$(call AddDepends/ipt,+kmod-ipt-conntrack)
endef
define KernelPackage/ipt-conntrack-label/description
Netfilter (IPv4) module for handling connection tracking labels
Includes:
- connlabel
endef
$(eval $(call KernelPackage,ipt-conntrack-label))
define KernelPackage/ipt-filter
TITLE:=Modules for packet content inspection
@ -178,6 +237,17 @@ endef
$(eval $(call KernelPackage,ipt-filter))
define KernelPackage/ipt-offload
TITLE:=Netfilter routing/NAT offload support
KCONFIG:=CONFIG_NETFILTER_XT_TARGET_FLOWOFFLOAD
FILES:=$(foreach mod,$(IPT_FLOW-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_FLOW-m)))
$(call AddDepends/ipt,+kmod-nf-flow)
endef
$(eval $(call KernelPackage,ipt-offload))
define KernelPackage/ipt-ipopt
TITLE:=Modules for matching/changing IP packet options
KCONFIG:=$(KCONFIG_IPT_IPOPT)
@ -446,10 +516,9 @@ $(eval $(call KernelPackage,ipt-nfqueue))
define KernelPackage/ipt-debug
TITLE:=Module for debugging/development
KCONFIG:=$(KCONFIG_IPT_DEBUG)
DEFAULT:=n
FILES:=$(foreach mod,$(IPT_DEBUG-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_DEBUG-m)))
$(call AddDepends/ipt)
$(call AddDepends/ipt,+kmod-ipt-raw +IPV6:kmod-ipt-raw6)
endef
define KernelPackage/ipt-debug/description
@ -477,7 +546,7 @@ $(eval $(call KernelPackage,ipt-led))
define KernelPackage/ipt-tproxy
TITLE:=Transparent proxying support
DEPENDS+=+kmod-ipt-conntrack +IPV6:kmod-ip6tables
DEPENDS+=+kmod-ipt-conntrack +IPV6:kmod-nf-conntrack6 +IPV6:kmod-ip6tables
KCONFIG:= \
CONFIG_NETFILTER_XT_MATCH_SOCKET \
CONFIG_NETFILTER_XT_TARGET_TPROXY
@ -636,7 +705,7 @@ $(eval $(call KernelPackage,ipt-extra))
define KernelPackage/ip6tables
SUBMENU:=$(NF_MENU)
TITLE:=IPv6 modules
DEPENDS:=+kmod-nf-ipt6 +kmod-ipt-core +kmod-ipt-conntrack
DEPENDS:=+kmod-nf-reject6 +kmod-nf-ipt6 +kmod-ipt-core
KCONFIG:=$(KCONFIG_IPT_IPV6)
FILES:=$(foreach mod,$(IPT_IPV6-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoLoad,42,$(notdir $(IPT_IPV6-m)))
@ -875,16 +944,12 @@ $(eval $(call KernelPackage,ipt-rpfilter))
define KernelPackage/nft-core
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables support
DEPENDS:=+kmod-nfnetlink +kmod-nf-conntrack6 +kmod-nf-ipt +kmod-nf-ipt6
DEPENDS:=+kmod-nfnetlink +kmod-nf-reject +kmod-nf-reject6 +kmod-nf-conntrack6
FILES:=$(foreach mod,$(NFT_CORE-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_CORE-m)))
KCONFIG:= \
CONFIG_NETFILTER=y \
CONFIG_NETFILTER_ADVANCED=y \
CONFIG_NFT_COMPAT=n \
CONFIG_NFT_QUEUE=n \
CONFIG_NF_TABLES_ARP=n \
CONFIG_NF_TABLES_BRIDGE=n \
$(KCONFIG_NFT_CORE)
endef
@ -895,10 +960,36 @@ endef
$(eval $(call KernelPackage,nft-core))
define KernelPackage/nft-arp
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables ARP table support
DEPENDS:=+kmod-nft-core
FILES:=$(foreach mod,$(NFT_ARP-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_ARP-m)))
KCONFIG:=$(KCONFIG_NFT_ARP)
endef
$(eval $(call KernelPackage,nft-arp))
define KernelPackage/nft-bridge
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables bridge table support
DEPENDS:=+kmod-nft-core
FILES:=$(foreach mod,$(NFT_BRIDGE-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_BRIDGE-m)))
KCONFIG:= \
CONFIG_NF_LOG_BRIDGE=n \
$(KCONFIG_NFT_BRIDGE)
endef
$(eval $(call KernelPackage,nft-bridge))
define KernelPackage/nft-nat
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables NAT support
DEPENDS:=+kmod-nft-core +kmod-nf-nat +kmod-nf-nat6
DEPENDS:=+kmod-nft-core +kmod-nf-nat
FILES:=$(foreach mod,$(NFT_NAT-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT-m)))
KCONFIG:=$(KCONFIG_NFT_NAT)
@ -907,14 +998,33 @@ endef
$(eval $(call KernelPackage,nft-nat))
define KernelPackage/nft-offload
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables routing/NAT offload support
DEPENDS:=+kmod-nf-flow +kmod-nft-nat
KCONFIG:= \
CONFIG_NF_FLOW_TABLE_INET \
CONFIG_NF_FLOW_TABLE_IPV4 \
CONFIG_NF_FLOW_TABLE_IPV6 \
CONFIG_NFT_FLOW_OFFLOAD
FILES:= \
$(LINUX_DIR)/net/netfilter/nf_flow_table_inet.ko \
$(LINUX_DIR)/net/ipv4/netfilter/nf_flow_table_ipv4.ko \
$(LINUX_DIR)/net/ipv6/netfilter/nf_flow_table_ipv6.ko \
$(LINUX_DIR)/net/netfilter/nft_flow_offload.ko
AUTOLOAD:=$(call AutoProbe,nf_flow_table_inet nf_flow_table_ipv4 nf_flow_table_ipv6 nft_flow_offload)
endef
$(eval $(call KernelPackage,nft-offload))
define KernelPackage/nft-nat6
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables IPv6-NAT support
DEPENDS:=+kmod-nft-core +kmod-nf-nat6
DEPENDS:=+kmod-nft-nat +kmod-nf-nat6
FILES:=$(foreach mod,$(NFT_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT6-m)))
KCONFIG:=$(KCONFIG_NFT_NAT6)
endef
$(eval $(call KernelPackage,nft-nat6))

View File

@ -42,28 +42,6 @@ endef
$(eval $(call KernelPackage,atmtcp))
define KernelPackage/appletalk
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Appletalk protocol support
KCONFIG:= \
CONFIG_ATALK \
CONFIG_DEV_APPLETALK \
CONFIG_IPDDP \
CONFIG_IPDDP_ENCAP=y \
CONFIG_IPDDP_DECAP=y
FILES:= \
$(LINUX_DIR)/net/appletalk/appletalk.ko \
$(LINUX_DIR)/drivers/net/appletalk/ipddp.ko
AUTOLOAD:=$(call AutoLoad,40,appletalk ipddp)
endef
define KernelPackage/appletalk/description
Kernel module for AppleTalk protocol.
endef
$(eval $(call KernelPackage,appletalk))
define KernelPackage/bonding
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Ethernet bonding driver
@ -127,6 +105,29 @@ endef
$(eval $(call KernelPackage,vxlan))
define KernelPackage/geneve
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Generic Network Virtualization Encapsulation (Geneve) support
DEPENDS:= \
+kmod-iptunnel \
+kmod-udptunnel4 \
+IPV6:kmod-udptunnel6
KCONFIG:=CONFIG_GENEVE
FILES:= \
$(LINUX_DIR)/net/ipv4/geneve.ko@le4.1 \
$(LINUX_DIR)/drivers/net/geneve.ko@ge4.2
AUTOLOAD:=$(call AutoLoad,13,geneve)
endef
define KernelPackage/geneve/description
Kernel module for supporting Geneve in the Kernel.
Requires Kernel 3.18 or newer.
endef
$(eval $(call KernelPackage,geneve))
define KernelPackage/capi
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=CAPI (ISDN) Support
@ -434,6 +435,28 @@ endef
$(eval $(call KernelPackage,sit))
define KernelPackage/fou
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=FOU and GUE decapsulation
DEPENDS:= \
+kmod-iptunnel \
+kmod-udptunnel4 \
+IPV6:kmod-udptunnel6
KCONFIG:= \
CONFIG_NET_FOU \
CONFIG_NET_FOU_IP_TUNNELS=y
FILES:=$(LINUX_DIR)/net/ipv4/fou.ko
AUTOLOAD:=$(call AutoProbe,fou)
endef
define KernelPackage/fou/description
Kernel module for FOU (Foo over UDP) and GUE (Generic UDP Encapsulation) tunnelling.
Requires Kernel 3.18 or newer.
endef
$(eval $(call KernelPackage,fou))
define KernelPackage/ip6-tunnel
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=IP-in-IPv6 tunnelling
@ -729,6 +752,7 @@ define KernelPackage/sched
CONFIG_NET_SCH_DSMARK \
CONFIG_NET_SCH_FIFO \
CONFIG_NET_SCH_GRED \
CONFIG_NET_SCH_MULTIQ \
CONFIG_NET_SCH_PRIO \
CONFIG_NET_SCH_RED \
CONFIG_NET_SCH_SFQ \

View File

@ -55,6 +55,7 @@ define KernelPackage/bluetooth
CONFIG_BT_HCIUART_BCM=n \
CONFIG_BT_HCIUART_INTEL=n \
CONFIG_BT_HCIUART_H4 \
CONFIG_BT_HCIUART_NOKIA=n \
CONFIG_BT_HIDP \
CONFIG_HID_SUPPORT=y
$(call AddDepends/rfkill)
@ -226,7 +227,7 @@ $(eval $(call KernelPackage,gpio-dev))
define KernelPackage/gpio-mcp23s08
SUBMENU:=$(OTHER_MENU)
TITLE:=Microchip MCP23xxx I/O expander
DEPENDS:=@GPIO_SUPPORT +PACKAGE_kmod-i2c-core:kmod-i2c-core
DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
KCONFIG:=CONFIG_GPIO_MCP23S08
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-mcp23s08.ko
AUTOLOAD:=$(call AutoLoad,40,gpio-mcp23s08)
@ -285,18 +286,53 @@ endef
$(eval $(call KernelPackage,gpio-pcf857x))
define KernelPackage/lp
define KernelPackage/ppdev
SUBMENU:=$(OTHER_MENU)
TITLE:=Parallel port and line printer support
TITLE:=Parallel port support
KCONFIG:= \
CONFIG_PARPORT \
CONFIG_PRINTER \
CONFIG_PPDEV
FILES:= \
$(LINUX_DIR)/drivers/parport/parport.ko \
$(LINUX_DIR)/drivers/char/lp.ko \
$(LINUX_DIR)/drivers/char/ppdev.ko
AUTOLOAD:=$(call AutoLoad,50,parport lp ppdev)
AUTOLOAD:=$(call AutoLoad,50,parport ppdev)
endef
$(eval $(call KernelPackage,ppdev))
define KernelPackage/parport-pc
SUBMENU:=$(OTHER_MENU)
TITLE:=Parallel port interface (PC-style) support
DEPENDS:=+kmod-ppdev
KCONFIG:= \
CONFIG_KS0108=n \
CONFIG_PARPORT_PC \
CONFIG_PARPORT_1284=y \
CONFIG_PARPORT_PC_FIFO=y \
CONFIG_PARPORT_PC_PCMCIA=n \
CONFIG_PARPORT_PC_SUPERIO=y \
CONFIG_PARPORT_SERIAL=n \
CONFIG_PARIDE=n \
CONFIG_SCSI_IMM=n \
CONFIG_SCSI_PPA=n
FILES:= \
$(LINUX_DIR)/drivers/parport/parport_pc.ko
AUTOLOAD:=$(call AutoLoad,51,parport_pc)
endef
$(eval $(call KernelPackage,parport-pc))
define KernelPackage/lp
SUBMENU:=$(OTHER_MENU)
TITLE:=Parallel port line printer device support
DEPENDS:=+kmod-ppdev
KCONFIG:= \
CONFIG_PRINTER
FILES:= \
$(LINUX_DIR)/drivers/char/lp.ko
AUTOLOAD:=$(call AutoLoad,52,lp)
endef
$(eval $(call KernelPackage,lp))
@ -619,6 +655,22 @@ endef
$(eval $(call KernelPackage,mtdoops))
define KernelPackage/mtdram
SUBMENU:=$(OTHER_MENU)
TITLE:=Test MTD driver using RAM
KCONFIG:=CONFIG_MTD_MTDRAM \
CONFIG_MTDRAM_TOTAL_SIZE=4096 \
CONFIG_MTDRAM_ERASE_SIZE=128
FILES:=$(LINUX_DIR)/drivers/mtd/devices/mtdram.ko
endef
define KernelPackage/mtdram/description
Test MTD driver using RAM
endef
$(eval $(call KernelPackage,mtdram))
define KernelPackage/serial-8250
SUBMENU:=$(OTHER_MENU)
TITLE:=8250 UARTs

View File

@ -135,6 +135,22 @@ endef
$(eval $(call KernelPackage,sound-seq))
define KernelPackage/sound-ens1371
TITLE:=(Creative) Ensoniq AudioPCI 1371
KCONFIG:=CONFIG_SND_ENS1371
DEPENDS:=@PCI_SUPPORT +kmod-ac97
FILES:=$(LINUX_DIR)/sound/pci/snd-ens1371.ko
AUTOLOAD:=$(call AutoLoad,36,snd-ens1371)
$(call AddDepends/sound)
endef
define KernelPackage/sound-ens1371/description
support for (Creative) Ensoniq AudioPCI 1371 chips
endef
$(eval $(call KernelPackage,sound-ens1371))
define KernelPackage/sound-i8x0
TITLE:=Intel/SiS/nVidia/AMD/ALi AC97 Controller
DEPENDS:=+kmod-ac97

View File

@ -43,22 +43,6 @@ endef
$(eval $(call KernelPackage,spi-bitbang))
define KernelPackage/spi-gpio-old
SUBMENU:=$(SPI_MENU)
TITLE:=Old GPIO based bitbanging SPI controller (DEPRECATED)
DEPENDS:=@GPIO_SUPPORT +kmod-spi-bitbang
KCONFIG:=CONFIG_SPI_GPIO_OLD
FILES:=$(LINUX_DIR)/drivers/spi/spi_gpio_old.ko
AUTOLOAD:=$(call AutoProbe,spi_gpio_old)
endef
define KernelPackage/spi-gpio-old/description
This package contains the GPIO based bitbanging SPI controller driver
endef
$(eval $(call KernelPackage,spi-gpio-old))
define KernelPackage/spi-gpio
SUBMENU:=$(SPI_MENU)
TITLE:=GPIO-based bitbanging SPI Master

View File

@ -71,6 +71,25 @@ endef
$(eval $(call KernelPackage,usb-phy-nop))
define KernelPackage/usb-phy-qcom-dwc3
TITLE:=DWC3 USB QCOM PHY driver
DEPENDS:=@TARGET_ipq40xx||@TARGET_ipq806x +kmod-usb-dwc3-of-simple
KCONFIG:= CONFIG_PHY_QCOM_DWC3
FILES:= \
$(LINUX_DIR)/drivers/phy/phy-qcom-dwc3.ko@lt4.13 \
$(LINUX_DIR)/drivers/phy/qualcomm/phy-qcom-dwc3.ko@ge4.13
AUTOLOAD:=$(call AutoLoad,45,phy-qcom-dwc3,1)
$(call AddDepends/usb)
endef
define KernelPackage/usb-phy-qcom-dwc3/description
This driver provides support for the integrated DesignWare
USB3 IP Core within the QCOM SoCs.
endef
$(eval $(call KernelPackage,usb-phy-qcom-dwc3))
define KernelPackage/usb-gadget
TITLE:=USB Gadget support
KCONFIG:=CONFIG_USB_GADGET
@ -187,6 +206,7 @@ $(eval $(call KernelPackage,usb-gadget-mass-storage))
define KernelPackage/usb-uhci
TITLE:=Support for UHCI controllers
KCONFIG:= \
CONFIG_USB_PCI=y \
CONFIG_USB_UHCI_ALT \
CONFIG_USB_UHCI_HCD
FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
@ -236,7 +256,9 @@ $(eval $(call KernelPackage,usb-ohci,1))
define KernelPackage/usb-ohci-pci
TITLE:=Support for PCI OHCI controllers
DEPENDS:=@PCI_SUPPORT +kmod-usb-ohci
KCONFIG:=CONFIG_USB_OHCI_HCD_PCI
KCONFIG:= \
CONFIG_USB_PCI=y \
CONFIG_USB_OHCI_HCD_PCI
FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-pci.ko
AUTOLOAD:=$(call AutoLoad,51,ohci-pci,1)
$(call AddDepends/usb)
@ -324,7 +346,9 @@ $(eval $(call KernelPackage,usb2))
define KernelPackage/usb2-pci
TITLE:=Support for PCI USB2 controllers
DEPENDS:=@PCI_SUPPORT +kmod-usb2
KCONFIG:=CONFIG_USB_EHCI_PCI
KCONFIG:= \
CONFIG_USB_PCI=y \
CONFIG_USB_EHCI_PCI
FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-pci.ko
AUTOLOAD:=$(call AutoLoad,42,ehci-pci,1)
$(call AddDepends/usb)
@ -341,6 +365,7 @@ define KernelPackage/usb-dwc2
TITLE:=DWC2 USB controller driver
DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget
KCONFIG:= \
CONFIG_USB_PCI=y \
CONFIG_USB_DWC2 \
CONFIG_USB_DWC2_PCI \
CONFIG_USB_DWC2_PLATFORM \
@ -385,6 +410,23 @@ endef
$(eval $(call KernelPackage,usb-dwc3))
define KernelPackage/usb-dwc3-of-simple
TITLE:=DWC3 USB simple OF driver
DEPENDS:=@TARGET_ipq40xx||@TARGET_ipq806x +kmod-usb-dwc3
KCONFIG:= CONFIG_USB_DWC3_OF_SIMPLE
FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3-of-simple.ko
AUTOLOAD:=$(call AutoLoad,53,dwc3-of-simple,1)
$(call AddDepends/usb)
endef
define KernelPackage/usb-dwc3-of-simple/description
This driver provides generic platform glue for the integrated DesignWare
USB3 IP Core.
endef
$(eval $(call KernelPackage,usb-dwc3-of-simple))
define KernelPackage/usb-acm
TITLE:=Support for modems/isdn controllers
KCONFIG:=CONFIG_USB_ACM
@ -1499,6 +1541,7 @@ define KernelPackage/usb3
+TARGET_bcm53xx:kmod-usb-bcma \
+TARGET_bcm53xx:kmod-phy-bcm-ns-usb3
KCONFIG:= \
CONFIG_USB_PCI=y \
CONFIG_USB_XHCI_HCD \
CONFIG_USB_XHCI_PCI \
CONFIG_USB_XHCI_PLATFORM \
@ -1520,7 +1563,9 @@ $(eval $(call KernelPackage,usb3))
define KernelPackage/usb-net2280
TITLE:=Support for NetChip 228x PCI USB peripheral controller
KCONFIG:= CONFIG_USB_NET2280
KCONFIG:= \
CONFIG_USB_PCI=y \
CONFIG_USB_NET2280
DEPENDS:=@PCI_SUPPORT +kmod-usb-gadget
FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc/net2280.ko
AUTOLOAD:=$(call AutoLoad,46,net2280)

View File

@ -204,6 +204,7 @@ define KernelPackage/drm-imx
DEPENDS:=@TARGET_imx6 +kmod-drm +kmod-fb +kmod-fb-cfb-copyarea +kmod-fb-cfb-imgblt +kmod-fb-cfb-fillrect +kmod-fb-sys-fops
KCONFIG:=CONFIG_DRM_IMX \
CONFIG_DRM_FBDEV_EMULATION=y \
CONFIG_DRM_FBDEV_OVERALLOC=100 \
CONFIG_IMX_IPUV3_CORE \
CONFIG_RESET_CONTROLLER=y \
CONFIG_DRM_IMX_IPUV3 \
@ -223,7 +224,6 @@ define KernelPackage/drm-imx
FILES:= \
$(LINUX_DIR)/drivers/gpu/drm/imx/imxdrm.ko \
$(LINUX_DIR)/drivers/gpu/ipu-v3/imx-ipu-v3.ko \
$(LINUX_DIR)/drivers/gpu/drm/imx/imx-ipuv3-crtc.ko \
$(LINUX_DIR)/drivers/video/fbdev/core/syscopyarea.ko \
$(LINUX_DIR)/drivers/video/fbdev/core/sysfillrect.ko \
$(LINUX_DIR)/drivers/video/fbdev/core/sysimgblt.ko \
@ -242,10 +242,11 @@ define KernelPackage/drm-imx-hdmi
TITLE:=Freescale i.MX HDMI DRM support
DEPENDS:=+kmod-sound-core kmod-drm-imx
KCONFIG:=CONFIG_DRM_IMX_HDMI \
CONFIG_DRM_DW_HDMI_AHB_AUDIO
CONFIG_DRM_DW_HDMI_AHB_AUDIO \
CONFIG_DRM_DW_HDMI_I2S_AUDIO
FILES:= \
$(LINUX_DIR)/drivers/gpu/drm/bridge/dw-hdmi.ko \
$(LINUX_DIR)/drivers/gpu/drm/bridge/dw-hdmi-ahb-audio.ko \
$(LINUX_DIR)/drivers/gpu/drm/bridge/synopsys/dw-hdmi.ko \
$(LINUX_DIR)/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.ko \
$(LINUX_DIR)/drivers/gpu/drm/imx/dw_hdmi-imx.ko
AUTOLOAD:=$(call AutoLoad,05,dw-hdmi dw-hdmi-ahb-audio.ko dw_hdmi-imx)
endef
@ -267,7 +268,9 @@ define KernelPackage/drm-imx-ldb
CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=n \
CONFIG_DRM_PANEL_LG_LG4573=n \
CONFIG_DRM_PANEL_LD9040=n \
CONFIG_DRM_PANEL_S6E8AA0=n
CONFIG_DRM_PANEL_LVDS=n \
CONFIG_DRM_PANEL_S6E8AA0=n \
CONFIG_DRM_PANEL_SITRONIX_ST7789V=n
FILES:=$(LINUX_DIR)/drivers/gpu/drm/imx/imx-ldb.ko \
$(LINUX_DIR)/drivers/gpu/drm/panel/panel-simple.ko
AUTOLOAD:=$(call AutoLoad,05,imx-ldb)

View File

@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=mac80211
PKG_VERSION:=2017-11-01
PKG_RELEASE:=2
PKG_RELEASE:=4
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
PKG_HASH:=8437ab7886b988c8152e7a4db30b7f41009e49a3b2cb863edd05da1ecd7eb05a
@ -1584,7 +1584,7 @@ config-$(CONFIG_PACKAGE_ATH_SPECTRAL) += ATH9K_COMMON_SPECTRAL ATH10K_SPECTRAL
config-$(call config_package,ath9k) += ATH9K
config-$(call config_package,ath9k-common) += ATH9K_COMMON
config-$(CONFIG_TARGET_ar71xx) += ATH9K_AHB
config-$(CONFIG_TARGET_ipq806x) += ATH10K_AHB
config-$(CONFIG_TARGET_ipq40xx) += ATH10K_AHB
config-$(CONFIG_PCI) += ATH9K_PCI
config-$(CONFIG_ATH_USER_REGD) += ATH_USER_REGD
config-$(CONFIG_ATH9K_SUPPORT_PCOEM) += ATH9K_PCOEM
@ -1821,7 +1821,7 @@ define KernelPackage/cfg80211/install
$(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
$(INSTALL_BIN) ./files/lib/netifd/wireless/mac80211.sh $(1)/lib/netifd/wireless
$(INSTALL_DIR) $(1)/etc/hotplug.d/ieee80211
$(INSTALL_DATA) ./files/mac80211.hotplug $(1)/etc/hotplug.d/ieee80211/00-wifi-detect
$(INSTALL_DATA) ./files/mac80211.hotplug $(1)/etc/hotplug.d/ieee80211/10-wifi-detect
endef
define KernelPackage/ipw2100/install

View File

@ -629,17 +629,11 @@ mac80211_setup_vif() {
case "$mode" in
mesh)
# authsae or wpa_supplicant
json_get_vars key
if [ -n "$key" ]; then
if [ -e "/lib/wifi/authsae.sh" ]; then
. /lib/wifi/authsae.sh
authsae_start_interface || failed=1
else
wireless_vif_parse_encryption
freq="$(get_freq "$phy" "$channel")"
mac80211_setup_supplicant_noctl || failed=1
fi
wireless_vif_parse_encryption
freq="$(get_freq "$phy" "$channel")"
mac80211_setup_supplicant_noctl || failed=1
else
json_get_vars mesh_id mcast_rate

View File

@ -0,0 +1,141 @@
#!/bin/sh
append DRIVERS "mac80211"
lookup_phy() {
[ -n "$phy" ] && {
[ -d /sys/class/ieee80211/$phy ] && return
}
local devpath
config_get devpath "$device" path
[ -n "$devpath" ] && {
for phy in $(ls /sys/class/ieee80211 2>/dev/null); do
case "$(readlink -f /sys/class/ieee80211/$phy/device)" in
*$devpath) return;;
esac
done
}
local macaddr="$(config_get "$device" macaddr | tr 'A-Z' 'a-z')"
[ -n "$macaddr" ] && {
for _phy in /sys/class/ieee80211/*; do
[ -e "$_phy" ] || continue
[ "$macaddr" = "$(cat ${_phy}/macaddress)" ] || continue
phy="${_phy##*/}"
return
done
}
phy=
return
}
find_mac80211_phy() {
local device="$1"
config_get phy "$device" phy
lookup_phy
[ -n "$phy" -a -d "/sys/class/ieee80211/$phy" ] || {
echo "PHY for wifi device $1 not found"
return 1
}
config_set "$device" phy "$phy"
config_get macaddr "$device" macaddr
[ -z "$macaddr" ] && {
config_set "$device" macaddr "$(cat /sys/class/ieee80211/${phy}/macaddress)"
}
return 0
}
check_mac80211_device() {
config_get phy "$1" phy
[ -z "$phy" ] && {
find_mac80211_phy "$1" >/dev/null || return 0
config_get phy "$1" phy
}
[ "$phy" = "$dev" ] && found=1
}
detect_mac80211() {
devidx=0
config_load wireless
while :; do
config_get type "radio$devidx" type
[ -n "$type" ] || break
devidx=$(($devidx + 1))
done
for _dev in /sys/class/ieee80211/*; do
[ -e "$_dev" ] || continue
dev="${_dev##*/}"
found=0
config_foreach check_mac80211_device wifi-device
[ "$found" -gt 0 ] && continue
mode_band="g"
channel="11"
htmode=""
ht_capab=""
iw phy "$dev" info | grep -q 'Capabilities:' && htmode=HT20
iw phy "$dev" info | grep -q '2412 MHz' || { mode_band="a"; channel="36"; }
vht_cap=$(iw phy "$dev" info | grep -c 'VHT Capabilities')
cap_5ghz=$(iw phy "$dev" info | grep -c "Band 2")
[ "$vht_cap" -gt 0 -a "$cap_5ghz" -gt 0 ] && {
mode_band="a";
channel="36"
htmode="VHT80"
}
[ -n "$htmode" ] && ht_capab="set wireless.radio${devidx}.htmode=$htmode"
if [ -x /usr/bin/readlink -a -h /sys/class/ieee80211/${dev} ]; then
path="$(readlink -f /sys/class/ieee80211/${dev}/device)"
else
path=""
fi
if [ -n "$path" ]; then
path="${path##/sys/devices/}"
case "$path" in
platform*/pci*) path="${path##platform/}";;
esac
dev_id="set wireless.radio${devidx}.path='$path'"
else
dev_id="set wireless.radio${devidx}.macaddr=$(cat /sys/class/ieee80211/${dev}/macaddress)"
fi
if [ $mode_band == "a" ]; then
ssid_5g="_5G"
else
ssid_5g="_2.4G"
fi
[ -f /lib/03_set_wifi_mac ] && ./lib/03_set_wifi_mac
Mac=`cat /sys/class/ieee80211/${dev}/macaddress|awk -F ":" '{print $4""$5""$6 }'| tr a-z A-Z`
Wifi_name="OpenWrt${ssid_5g}_${Mac}"
uci -q batch <<-EOF
set wireless.radio${devidx}=wifi-device
set wireless.radio${devidx}.type=mac80211
set wireless.radio${devidx}.channel=${channel}
set wireless.radio${devidx}.hwmode=11${mode_band}
${dev_id}
${ht_capab}
set wireless.radio${devidx}.noscan=1
set wireless.radio${devidx}.disabled=0
set wireless.default_radio${devidx}=wifi-iface
set wireless.default_radio${devidx}.device=radio${devidx}
set wireless.default_radio${devidx}.network=lan
set wireless.default_radio${devidx}.mode=ap
set wireless.default_radio${devidx}.ssid=${Wifi_name}
set wireless.default_radio${devidx}.encryption=none
EOF
uci -q commit wireless
devidx=$(($devidx + 1))
done
}

View File

@ -0,0 +1,237 @@
From: Thomas Hebb <tommyhebb@gmail.com>
Subject: [PATCH] ath10k: search all IEs for variant before falling back
Date: Wed, 21 Feb 2018 11:43:39 -0500
commit f2593cb1b291 ("ath10k: Search SMBIOS for OEM board file
extension") added a feature to ath10k that allows Board Data File
(BDF) conflicts between multiple devices that use the same device IDs
but have different calibration requirements to be resolved by allowing
a "variant" string to be stored in SMBIOS [and later device tree, added
by commit d06f26c5c8a4 ("ath10k: search DT for qcom,ath10k-calibration-
variant")] that gets appended to the ID stored in board-2.bin.
This original patch had a regression, however. Namely that devices with
a variant present in SMBIOS that didn't need custom BDFs could no longer
find the default BDF, which has no variant appended. The patch was
reverted and re-applied with a fix for this issue in commit 1657b8f84ed9
("search SMBIOS for OEM board file extension").
But the fix to fall back to a default BDF introduced another issue: the
driver currently parses IEs in board-2.bin one by one, and for each one
it first checks to see if it matches the ID with the variant appended.
If it doesn't, it checks to see if it matches the "fallback" ID with no
variant. If a matching BDF is found at any point during this search, the
search is terminated and that BDF is used. The issue is that it's very
possible (and is currently the case for board-2.bin files present in the
ath10k-firmware repository) for the default BDF to occur in an earlier
IE than the variant-specific BDF. In this case, the current code will
happily choose the default BDF even though a better-matching BDF is
present later in the file.
This patch fixes the issue by first searching the entire file for the ID
with variant, and searching for the fallback ID only if that search
fails. It also includes some code cleanup in the area, as
ath10k_core_fetch_board_data_api_n() no longer does its own string
mangling to remove the variant from an ID, instead leaving that job to a
new flag passed to ath10k_core_create_board_name().
I've tested this patch on a QCA4019 and verified that the driver behaves
correctly for 1) both fallback and variant BDFs present, 2) only fallback
BDF present, and 3) no matching BDFs present.
Fixes: 1657b8f84ed9 ("ath10k: search SMBIOS for OEM board file extension")
Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
---
drivers/net/wireless/ath/ath10k/core.c | 134 ++++++++++++++++++---------------
1 file changed, 72 insertions(+), 62 deletions(-)
--- a/drivers/net/wireless/ath/ath10k/core.c
+++ b/drivers/net/wireless/ath/ath10k/core.c
@@ -1129,14 +1129,61 @@ out:
return ret;
}
+static int ath10k_core_search_bd(struct ath10k *ar,
+ const char *boardname,
+ const u8 *data,
+ size_t len)
+{
+ size_t ie_len;
+ struct ath10k_fw_ie *hdr;
+ int ret = -ENOENT, ie_id;
+
+ while (len > sizeof(struct ath10k_fw_ie)) {
+ hdr = (struct ath10k_fw_ie *)data;
+ ie_id = le32_to_cpu(hdr->id);
+ ie_len = le32_to_cpu(hdr->len);
+
+ len -= sizeof(*hdr);
+ data = hdr->data;
+
+ if (len < ALIGN(ie_len, 4)) {
+ ath10k_err(ar, "invalid length for board ie_id %d ie_len %zu len %zu\n",
+ ie_id, ie_len, len);
+ return -EINVAL;
+ }
+
+ switch (ie_id) {
+ case ATH10K_BD_IE_BOARD:
+ ret = ath10k_core_parse_bd_ie_board(ar, data, ie_len,
+ boardname);
+ if (ret == -ENOENT)
+ /* no match found, continue */
+ break;
+
+ /* either found or error, so stop searching */
+ goto out;
+ }
+
+ /* jump over the padding */
+ ie_len = ALIGN(ie_len, 4);
+
+ len -= ie_len;
+ data += ie_len;
+ }
+
+out:
+ /* return result of parse_bd_ie_board() or -ENOENT */
+ return ret;
+}
+
static int ath10k_core_fetch_board_data_api_n(struct ath10k *ar,
const char *boardname,
+ const char *fallback_boardname,
const char *filename)
{
- size_t len, magic_len, ie_len;
- struct ath10k_fw_ie *hdr;
+ size_t len, magic_len;
const u8 *data;
- int ret, ie_id;
+ int ret;
ar->normal_mode_fw.board = ath10k_fetch_fw_file(ar,
ar->hw_params.fw.dir,
@@ -1174,69 +1221,23 @@ static int ath10k_core_fetch_board_data_
data += magic_len;
len -= magic_len;
- while (len > sizeof(struct ath10k_fw_ie)) {
- hdr = (struct ath10k_fw_ie *)data;
- ie_id = le32_to_cpu(hdr->id);
- ie_len = le32_to_cpu(hdr->len);
-
- len -= sizeof(*hdr);
- data = hdr->data;
-
- if (len < ALIGN(ie_len, 4)) {
- ath10k_err(ar, "invalid length for board ie_id %d ie_len %zu len %zu\n",
- ie_id, ie_len, len);
- ret = -EINVAL;
- goto err;
- }
+ /* attempt to find boardname in the IE list */
+ ret = ath10k_core_search_bd(ar, boardname, data, len);
- switch (ie_id) {
- case ATH10K_BD_IE_BOARD:
- ret = ath10k_core_parse_bd_ie_board(ar, data, ie_len,
- boardname);
- if (ret == -ENOENT && ar->id.bdf_ext[0] != '\0') {
- /* try default bdf if variant was not found */
- char *s, *v = ",variant=";
- char boardname2[100];
-
- strlcpy(boardname2, boardname,
- sizeof(boardname2));
-
- s = strstr(boardname2, v);
- if (s)
- *s = '\0'; /* strip ",variant=%s" */
-
- ret = ath10k_core_parse_bd_ie_board(ar, data,
- ie_len,
- boardname2);
- }
+ /* if we didn't find it and have a fallback name, try that */
+ if (ret == -ENOENT && fallback_boardname)
+ ret = ath10k_core_search_bd(ar, fallback_boardname, data, len);
- if (ret == -ENOENT)
- /* no match found, continue */
- break;
- else if (ret)
- /* there was an error, bail out */
- goto err;
-
- /* board data found */
- goto out;
- }
-
- /* jump over the padding */
- ie_len = ALIGN(ie_len, 4);
-
- len -= ie_len;
- data += ie_len;
- }
-
-out:
- if (!ar->normal_mode_fw.board_data || !ar->normal_mode_fw.board_len) {
+ if (ret == -ENOENT) {
ath10k_err(ar,
"failed to fetch board data for %s from %s/%s\n",
boardname, ar->hw_params.fw.dir, filename);
ret = -ENODATA;
- goto err;
}
+ if (ret)
+ goto err;
+
return 0;
err:
@@ -1245,12 +1246,12 @@ err:
}
static int ath10k_core_create_board_name(struct ath10k *ar, char *name,
- size_t name_len)
+ size_t name_len, bool with_variant)
{
/* strlen(',variant=') + strlen(ar->id.bdf_ext) */
char variant[9 + ATH10K_SMBIOS_BDF_EXT_STR_LENGTH] = { 0 };
- if (ar->id.bdf_ext[0] != '\0')
+ if (with_variant && ar->id.bdf_ext[0] != '\0')
scnprintf(variant, sizeof(variant), ",variant=%s",
ar->id.bdf_ext);
@@ -1276,17 +1277,26 @@ out:
static int ath10k_core_fetch_board_file(struct ath10k *ar)
{
- char boardname[100];
+ char boardname[100], fallback_boardname[100];
int ret;
- ret = ath10k_core_create_board_name(ar, boardname, sizeof(boardname));
+ ret = ath10k_core_create_board_name(ar, boardname,
+ sizeof(boardname), true);
if (ret) {
ath10k_err(ar, "failed to create board name: %d", ret);
return ret;
}
+ ret = ath10k_core_create_board_name(ar, fallback_boardname,
+ sizeof(boardname), false);
+ if (ret) {
+ ath10k_err(ar, "failed to create fallback board name: %d", ret);
+ return ret;
+ }
+
ar->bd_api = 2;
ret = ath10k_core_fetch_board_data_api_n(ar, boardname,
+ fallback_boardname,
ATH10K_BOARD_API2_FILE);
if (!ret)
goto success;

View File

@ -0,0 +1,25 @@
From: Johannes Berg <johannes.berg@intel.com>
Date: Thu, 4 Jan 2018 15:51:53 +0100
Subject: [PATCH] mac80211: mesh: drop frames appearing to be from us
If there are multiple mesh stations with the same MAC address,
they will both get confused and start throwing warnings.
Obviously in this case nothing can actually work anyway, so just
drop frames that look like they're from ourselves early on.
Reported-by: Gui Iribarren <gui@altermundi.net>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -3632,6 +3632,8 @@ static bool ieee80211_accept_frame(struc
}
return true;
case NL80211_IFTYPE_MESH_POINT:
+ if (ether_addr_equal(sdata->vif.addr, hdr->addr2))
+ return false;
if (multicast)
return true;
return ether_addr_equal(sdata->vif.addr, hdr->addr1);

View File

@ -0,0 +1,60 @@
From 2fd3877b5bb7d39782c3205a1dcda02023b8514a Mon Sep 17 00:00:00 2001
From: Arend Van Spriel <arend.vanspriel@broadcom.com>
Date: Wed, 8 Nov 2017 14:36:31 +0100
Subject: [PATCH] brcmfmac: handle FWHALT mailbox indication
The firmware uses a mailbox to communicate to the host what is going
on. In the driver we validate the bit received. Various people seen
the following message:
brcmfmac: brcmf_sdio_hostmail: Unknown mailbox data content: 0x40012
Bit 4 is cause of this message, but this actually indicates the firmware
has halted. Handle this bit by giving a more meaningful error message.
Reviewed-by: Hante Meuleman <hante.meuleman@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieter-paul.giesberts@broadcom.com>
Reviewed-by: Franky Lin <franky.lin@broadcom.com>
Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
---
drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
@@ -260,10 +260,11 @@ struct rte_console {
#define I_HMB_HOST_INT I_HMB_SW3 /* Miscellaneous Interrupt */
/* tohostmailboxdata */
-#define HMB_DATA_NAKHANDLED 1 /* retransmit NAK'd frame */
-#define HMB_DATA_DEVREADY 2 /* talk to host after enable */
-#define HMB_DATA_FC 4 /* per prio flowcontrol update flag */
-#define HMB_DATA_FWREADY 8 /* fw ready for protocol activity */
+#define HMB_DATA_NAKHANDLED 0x0001 /* retransmit NAK'd frame */
+#define HMB_DATA_DEVREADY 0x0002 /* talk to host after enable */
+#define HMB_DATA_FC 0x0004 /* per prio flowcontrol update flag */
+#define HMB_DATA_FWREADY 0x0008 /* fw ready for protocol activity */
+#define HMB_DATA_FWHALT 0x0010 /* firmware halted */
#define HMB_DATA_FCDATA_MASK 0xff000000
#define HMB_DATA_FCDATA_SHIFT 24
@@ -1094,6 +1095,10 @@ static u32 brcmf_sdio_hostmail(struct br
offsetof(struct sdpcmd_regs, tosbmailbox));
bus->sdcnt.f1regdata += 2;
+ /* dongle indicates the firmware has halted/crashed */
+ if (hmb_data & HMB_DATA_FWHALT)
+ brcmf_err("mailbox indicates firmware halted\n");
+
/* Dongle recomposed rx frames, accept them again */
if (hmb_data & HMB_DATA_NAKHANDLED) {
brcmf_dbg(SDIO, "Dongle reports NAK handled, expect rtx of %d\n",
@@ -1151,6 +1156,7 @@ static u32 brcmf_sdio_hostmail(struct br
HMB_DATA_NAKHANDLED |
HMB_DATA_FC |
HMB_DATA_FWREADY |
+ HMB_DATA_FWHALT |
HMB_DATA_FCDATA_MASK | HMB_DATA_VERSION_MASK))
brcmf_err("Unknown mailbox data content: 0x%02x\n",
hmb_data);

Some files were not shown because too many files have changed in this diff Show More