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 this per package by adding PKG_CHECK_FORMAT_SECURITY:=0 in the package
Makefile. 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 choice
prompt "User space Stack-Smashing Protection" prompt "User space Stack-Smashing Protection"
depends on USE_MUSL depends on USE_MUSL
@ -194,11 +210,11 @@ menu "Global build settings"
bool "None" bool "None"
config PKG_CC_STACKPROTECTOR_REGULAR config PKG_CC_STACKPROTECTOR_REGULAR
bool "Regular" bool "Regular"
select SSP_SUPPORT if !USE_MUSL select GCC_LIBSSP if !USE_MUSL
depends on KERNEL_CC_STACKPROTECTOR_REGULAR depends on KERNEL_CC_STACKPROTECTOR_REGULAR
config PKG_CC_STACKPROTECTOR_STRONG config PKG_CC_STACKPROTECTOR_STRONG
bool "Strong" bool "Strong"
select SSP_SUPPORT if !USE_MUSL select GCC_LIBSSP if !USE_MUSL
depends on !GCC_VERSION_4_8 depends on !GCC_VERSION_4_8
depends on KERNEL_CC_STACKPROTECTOR_STRONG depends on KERNEL_CC_STACKPROTECTOR_STRONG
endchoice 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_ramips
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_apm821xx default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_apm821xx
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_mpc85xx default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_mpc85xx
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ipq40xx
default TARGET_INITRAMFS_COMPRESSION_NONE default TARGET_INITRAMFS_COMPRESSION_NONE
depends on TARGET_ROOTFS_INITRAMFS depends on TARGET_ROOTFS_INITRAMFS
help help
@ -62,7 +63,7 @@ menu "Target Images"
config TARGET_ROOTFS_TARGZ config TARGET_ROOTFS_TARGZ
bool "tar.gz" bool "tar.gz"
default y if USES_TARGZ default n
help help
Build a compressed tar archive of the root filesystem. Build a compressed tar archive of the root filesystem.
@ -70,7 +71,7 @@ menu "Target Images"
menuconfig TARGET_ROOTFS_EXT4FS menuconfig TARGET_ROOTFS_EXT4FS
bool "ext4" bool "ext4"
default y if USES_EXT4 default n
help help
Build an ext4 root filesystem. Build an ext4 root filesystem.
@ -115,7 +116,7 @@ menu "Target Images"
config TARGET_ROOTFS_ISO config TARGET_ROOTFS_ISO
bool "iso" bool "iso"
default n default n
depends on TARGET_x86_generic depends on TARGET_x86
help help
Create a bootable ISO image. Create a bootable ISO image.
@ -185,22 +186,30 @@ menu "Target Images"
depends on TARGET_ROOTFS_EXT4FS || TARGET_ROOTFS_ISO || TARGET_ROOTFS_JFFS2 || TARGET_ROOTFS_SQUASHFS depends on TARGET_ROOTFS_EXT4FS || TARGET_ROOTFS_ISO || TARGET_ROOTFS_JFFS2 || TARGET_ROOTFS_SQUASHFS
select PACKAGE_grub2 select PACKAGE_grub2
default y 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 config GRUB_CONSOLE
bool "Use Console Terminal (in addition to Serial)" 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 n if (TARGET_x86_generic_Soekris45xx || TARGET_x86_generic_Soekris48xx || TARGET_x86_net5501 || TARGET_x86_geos || TARGET_x86_alix2)
default y default y
config GRUB_SERIAL config GRUB_SERIAL
string "Serial port device" string "Serial port device"
depends on GRUB_IMAGES depends on GRUB_IMAGES || EFI_IMAGES
default "hvc0" if TARGET_x86_xen_domu default "hvc0" if TARGET_x86_xen_domu
default "ttyS0" if ! TARGET_x86_xen_domu default "ttyS0" if ! TARGET_x86_xen_domu
config GRUB_BAUDRATE config GRUB_BAUDRATE
int "Serial port baud rate" int "Serial port baud rate"
depends on GRUB_IMAGES depends on GRUB_IMAGES || EFI_IMAGES
default 38400 if TARGET_x86_generic default 38400 if TARGET_x86_generic
default 115200 default 115200
@ -211,14 +220,14 @@ menu "Target Images"
config GRUB_BOOTOPTS config GRUB_BOOTOPTS
string "Extra kernel boot options" string "Extra kernel boot options"
depends on GRUB_IMAGES depends on GRUB_IMAGES || EFI_IMAGES
default "xencons=hvc" if TARGET_x86_xen_domu default "xencons=hvc" if TARGET_x86_xen_domu
help help
If you don't know, just leave it blank. If you don't know, just leave it blank.
config GRUB_TIMEOUT config GRUB_TIMEOUT
string "Seconds to wait before booting the default entry" string "Seconds to wait before booting the default entry"
depends on GRUB_IMAGES depends on GRUB_IMAGES || EFI_IMAGES
default "0" default "0"
help help
If you don't know, 5 seconds is a reasonable default. If you don't know, 5 seconds is a reasonable default.
@ -226,7 +235,7 @@ menu "Target Images"
config VDI_IMAGES config VDI_IMAGES
bool "Build VirtualBox image files (VDI)" bool "Build VirtualBox image files (VDI)"
depends on TARGET_x86 || TARGET_x86_64 depends on TARGET_x86 || TARGET_x86_64
select GRUB_IMAGES depends on GRUB_IMAGES || EFI_IMAGES
select TARGET_IMAGES_PAD select TARGET_IMAGES_PAD
select PACKAGE_kmod-e1000 select PACKAGE_kmod-e1000
@ -234,13 +243,21 @@ menu "Target Images"
bool "Build VMware image files (VMDK)" bool "Build VMware image files (VMDK)"
depends on TARGET_x86 || TARGET_x86_64 depends on TARGET_x86 || TARGET_x86_64
default y default y
select GRUB_IMAGES depends on GRUB_IMAGES || EFI_IMAGES
select TARGET_IMAGES_PAD select TARGET_IMAGES_PAD
select PACKAGE_kmod-e1000 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 config TARGET_IMAGES_PAD
bool "Pad images to filesystem size (for JFFS2)" bool "Pad images to filesystem size (for JFFS2)"
depends on GRUB_IMAGES depends on GRUB_IMAGES || EFI_IMAGES
config TARGET_IMAGES_GZIP config TARGET_IMAGES_GZIP
bool "GZip images" bool "GZip images"
@ -253,19 +270,19 @@ menu "Target Images"
config TARGET_KERNEL_PARTSIZE config TARGET_KERNEL_PARTSIZE
int "Kernel partition size (in MB)" int "Kernel partition size (in MB)"
depends on GRUB_IMAGES depends on GRUB_IMAGES || EFI_IMAGES
default 16 default 16
config TARGET_ROOTFS_PARTSIZE config TARGET_ROOTFS_PARTSIZE
int "Root filesystem partition size (in MB)" 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 default 90
help help
Select the root filesystem partition size. Select the root filesystem partition size.
config TARGET_ROOTFS_PARTNAME config TARGET_ROOTFS_PARTNAME
string "Root partition on target device" string "Root partition on target device"
depends on GRUB_IMAGES depends on GRUB_IMAGES || EFI_IMAGES
help help
Override the root partition on the final device. If left empty, Override the root partition on the final device. If left empty,
it will be mounted by PARTUUID which makes the kernel find the 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 packages https://git.openwrt.org/feed/packages.git
src-git luci https://git.openwrt.org/project/luci.git src-git luci https://git.openwrt.org/project/luci.git
src-git routing https://git.openwrt.org/feed/routing.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 video https://github.com/openwrt/video.git
#src-git targets https://github.com/openwrt/targets.git #src-git targets https://github.com/openwrt/targets.git
#src-git management https://github.com/openwrt-management/packages.git #src-git management https://github.com/openwrt-management/packages.git

View File

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

View File

@ -30,9 +30,10 @@ endef
# core # core
# kernel only # 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_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_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_NETFILTER_XTABLES, $(P_XT)xt_tcpudp),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_CORE,CONFIG_IP_NF_FILTER, $(P_V4)iptable_filter),)) $(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))) $(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 # extra
$(eval $(call nf_add,IPT_EXTRA,CONFIG_NETFILTER_XT_MATCH_ADDRTYPE, $(if $(NF_KMOD),$(P_XT)xt_addrtype,$(P_XT)ipt_addrtype))) $(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_ESP, $(P_XT)xt_esp))
$(eval $(call nf_add,IPT_IPSEC,CONFIG_NETFILTER_XT_MATCH_POLICY, $(P_XT)xt_policy)) $(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 # IPv6
# kernel only # 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_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_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),)) $(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_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_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_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_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_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, $(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_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 # userland only
IPT_BUILTIN += $(NF_IPT-y) $(NF_IPT-m) 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_CONNTRACK_EXTRA-y)
IPT_BUILTIN += $(IPT_EXTRA-y) IPT_BUILTIN += $(IPT_EXTRA-y)
IPT_BUILTIN += $(IPT_FILTER-y) IPT_BUILTIN += $(IPT_FILTER-y)
IPT_BUILTIN += $(IPT_FLOW-y) $(IPT_FLOW-m)
IPT_BUILTIN += $(IPT_IPOPT-y) IPT_BUILTIN += $(IPT_IPOPT-y)
IPT_BUILTIN += $(IPT_IPRANGE-y) IPT_BUILTIN += $(IPT_IPRANGE-y)
IPT_BUILTIN += $(IPT_CLUSTER-y) IPT_BUILTIN += $(IPT_CLUSTER-y)

View File

@ -5,7 +5,7 @@
# See /LICENSE for more information. # 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) ifneq ($(PKG_NAME),toolchain)
PKG_FIXUP_DEPENDS = $(if $(filter kmod-%,$(1)),$(2),$(PKG_DEFAULT_DEPENDS) $(filter-out $(PKG_DEFAULT_DEPENDS),$(2))) 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 # For nas targets
DEFAULT_PACKAGES.nas:=block-mount fdisk lsblk mdadm DEFAULT_PACKAGES.nas:=block-mount fdisk lsblk mdadm
# For router targets # 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:= DEFAULT_PACKAGES.bootloader:=
ifneq ($(DUMP),) ifneq ($(DUMP),)
@ -55,6 +55,10 @@ else
endif endif
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) # Add device specific packages (here below to allow device type set from subtarget)
DEFAULT_PACKAGES += $(DEFAULT_PACKAGES.$(DEVICE_TYPE)) DEFAULT_PACKAGES += $(DEFAULT_PACKAGES.$(DEVICE_TYPE))

View File

@ -117,6 +117,24 @@ export_bootdevice() {
esac esac
case "$disk" in 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) 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="${disk#PARTUUID=}"
uuid="${uuid%-02}" 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_VERSION:=2.02
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE:=grub-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNU/grub PKG_SOURCE_URL:=@GNU/grub
PKG_HASH:=810b3798d316394f94096ec2797909dbf23c858e48f7b3830826b8daa06b7b0f PKG_HASH:=810b3798d316394f94096ec2797909dbf23c858e48f7b3830826b8daa06b7b0f
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
HOST_BUILD_PARALLEL:=1 HOST_BUILD_PARALLEL:=1
PKG_BUILD_DEPENDS:=grub2/host
PKG_SSP:=0 PKG_SSP:=0
PKG_FLAGS:=nonshared PKG_FLAGS:=nonshared
PATCH_DIR := ../patches
HOST_PATCH_DIR := ../patches
include $(INCLUDE_DIR)/host-build.mk include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
define Package/grub2 define Package/grub2/Default
CATEGORY:=Boot Loaders CATEGORY:=Boot Loaders
SECTION:=boot SECTION:=boot
TITLE:=GRand Unified Bootloader TITLE:=GRand Unified Bootloader
@ -36,19 +26,6 @@ define Package/grub2
DEPENDS:=@TARGET_x86||TARGET_x86_64 DEPENDS:=@TARGET_x86||TARGET_x86_64
endef 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) HOST_BUILD_PREFIX := $(STAGING_DIR_HOST)
CONFIGURE_VARS += \ CONFIGURE_VARS += \
@ -82,11 +59,3 @@ define Host/Configure
$(Host/Configure/Default) $(Host/Configure/Default)
endef 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 include $(TOPDIR)/rules.mk
PKG_NAME:=ath10k-firmware PKG_NAME:=ath10k-firmware
PKG_SOURCE_DATE:=2017-10-30 PKG_SOURCE_DATE:=2018-02-09
PKG_SOURCE_VERSION:=476a2850b1e8582d51187799d7de209daf1a57b2 PKG_SOURCE_VERSION:=8f4bafdd400d21a65966004d0ce6e0686ef4d9bc
PKG_MIRROR_HASH:=77ba59f75c5897c842c5c525945de019fd23f1e2d8bea6239924857e500bf73a PKG_MIRROR_HASH:=4f4f0678b9d07c0282f18c69bd63a5e2a2ae015b9ce7298cedb88a60be87ed3a
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
@ -50,6 +50,7 @@ $(Package/ath10k-firmware-default)
endef endef
CT_FIRMWARE_FILE = $(1)-$($(1)_FIRMWARE_FILE_CT) CT_FIRMWARE_FILE = $(1)-$($(1)_FIRMWARE_FILE_CT)
CT_FIRMWARE_FILE_HTT = $(1)-$($(1)_FIRMWARE_FILE_CT_HTT)
define Download/ct-firmware define Download/ct-firmware
URL:=https://www.candelatech.com/downloads/$(2) URL:=https://www.candelatech.com/downloads/$(2)
@ -57,41 +58,102 @@ define Download/ct-firmware
URL_FILE:=$($(1)_FIRMWARE_FILE_CT) URL_FILE:=$($(1)_FIRMWARE_FILE_CT)
endef 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 define Download/ath10k-firmware-qca988x-ct
$(call Download/ct-firmware,QCA988X,) $(call Download/ct-firmware,QCA988X,)
HASH:=bff98f028062dae9fc638c7596aec3c79bf9eddaff65cfacba067f6d72f217cd HASH:=b28ff3eb10f15033be68bbedc91abcf40f7369cc44da4273e3c0df285c74a4f8
endef endef
$(eval $(call Download,ath10k-firmware-qca988x-ct)) $(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 define Download/ath10k-firmware-qca9887-ct
$(call Download/ct-firmware,QCA9887,ath10k-9887) $(call Download/ct-firmware,QCA9887,ath10k-9887)
HASH:=95dc106f98672bd9c7d3fe6881ed79ab079cb49b0a995650991b1beaff2b0101 HASH:=8d3fd2fb62479efa955e0d0487ca8971409e68b395f3a2df28569ec243bd937d
endef endef
$(eval $(call Download,ath10k-firmware-qca9887-ct)) $(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 define Download/ath10k-firmware-qca99x0-ct
$(call Download/ct-firmware,QCA99X0,ath10k-10-4) $(call Download/ct-firmware,QCA99X0,ath10k-10-4)
HASH:=993c29fd64bb2a59b86d34f58601a1a48b83b541750bc511f78cc17152829b4d HASH:=1aa21acab7974651af6c0a2698891fc8792edb5124824fac1587123d3b48df67
endef endef
$(eval $(call Download,ath10k-firmware-qca99x0-ct)) $(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 define Download/ath10k-firmware-qca9984-ct
$(call Download/ct-firmware,QCA9984,ath10k-9984-10-4) $(call Download/ct-firmware,QCA9984,ath10k-9984-10-4)
HASH:=d997eed9a8bc6809c01d367759ba8545c10e3be93ea1f33d6d753127ef0f7c5e HASH:=f9700cafb4e2cebe8364eb6fe1754eb2c37b1b02a7408ded908ecc78954380a3
endef endef
$(eval $(call Download,ath10k-firmware-qca9984-ct)) $(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 define Download/ath10k-firmware-qca9888-ct
$(call Download/ct-firmware,QCA9888,ath10k-9888-10-4) $(call Download/ct-firmware,QCA9888,ath10k-9888-10-4)
HASH:=bbaa71bc7dcaa264c5875e86639f174908fed09fbace975e325959d42f3754ff HASH:=9bd38e80ec52484bae5edc785df09cf9acdad3e28ee5080a8105ba786118193a
endef endef
$(eval $(call Download,ath10k-firmware-qca9888-ct)) $(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 define Package/ath10k-firmware-qca99x0
$(Package/ath10k-firmware-default) $(Package/ath10k-firmware-default)
TITLE:=ath10k firmware for QCA99x0 devices TITLE:=ath10k firmware for QCA99x0 devices
@ -104,6 +166,15 @@ $(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.1 firmware for QCA988x devices TITLE:=ath10k CT 10.1 firmware for QCA988x devices
SECTION:=firmware SECTION:=firmware
CATEGORY:=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 endef
define Package/ath10k-firmware-qca9887-ct define Package/ath10k-firmware-qca9887-ct
@ -111,6 +182,15 @@ $(Package/ath10k-firmware-default)
TITLE:=ath10k CT 10.1 firmware for QCA9887 devices TITLE:=ath10k CT 10.1 firmware for QCA9887 devices
SECTION:=firmware SECTION:=firmware
CATEGORY:=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 endef
define Package/ath10k-firmware-qca988x-ct/description 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 is un-selected since the driver will try to load firmware-5.bin before
firmware-2.bin firmware-2.bin
endef 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 define Package/ath10k-firmware-qca9887-ct/description
Alternative ath10k firmware for QCA9887 from Candela Technologies. 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 This firmware conflicts with the standard 9887 firmware, so select only
one. one.
endef 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 define Package/ath10k-firmware-qca99x0-ct/description
Alternative ath10k firmware for QCA99x0 from Candela Technologies. 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 This firmware conflicts with the standard 99x0 firmware, so select only
one. one.
endef 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 define Package/ath10k-firmware-qca9984-ct/description
Alternative ath10k firmware for QCA9984 from Candela Technologies. 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 This firmware conflicts with the standard 9984 firmware, so select only
one. one.
endef 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 define Package/ath10k-firmware-qca9888-ct/description
Alternative ath10k firmware for QCA9886 and QCA9888 from Candela Technologies. 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 This firmware conflicts with the standard 9886 and 9888 firmware, so select only
one. one.
endef 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 define Package/ath10k-firmware-qca99x0/description
Standard ath10k firmware for QCA99x0 from QCA Standard ath10k firmware for QCA99x0 from QCA
@ -162,24 +297,69 @@ endef
define Package/ath10k-firmware-qca99x0-ct define Package/ath10k-firmware-qca99x0-ct
$(Package/ath10k-firmware-default) $(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 SECTION:=firmware
CATEGORY:=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 endef
define Package/ath10k-firmware-qca9984-ct define Package/ath10k-firmware-qca9984-ct
$(Package/ath10k-firmware-default) $(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 SECTION:=firmware
CATEGORY:=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 endef
define Package/ath10k-firmware-qca9888-ct define Package/ath10k-firmware-qca9888-ct
$(Package/ath10k-firmware-default) $(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 SECTION:=firmware
CATEGORY:=Firmware CATEGORY:=Firmware
PROVIDES:=ath10k-firmware-qca9888
endef 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 define Package/ath10k-firmware-qca9984
$(Package/ath10k-firmware-default) $(Package/ath10k-firmware-default)
@ -223,14 +403,14 @@ define Package/ath10k-firmware-qca4019/install
$(PKG_BUILD_DIR)/QCA4019/hw1.0/board-2.bin \ $(PKG_BUILD_DIR)/QCA4019/hw1.0/board-2.bin \
$(1)/lib/firmware/ath10k/QCA4019/hw1.0/ $(1)/lib/firmware/ath10k/QCA4019/hw1.0/
$(INSTALL_DATA) \ $(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 $(1)/lib/firmware/ath10k/QCA4019/hw1.0/firmware-5.bin
endef endef
define Package/ath10k-firmware-qca9887/install define Package/ath10k-firmware-qca9887/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9887/hw1.0 $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9887/hw1.0
$(INSTALL_DATA) \ $(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 $(1)/lib/firmware/ath10k/QCA9887/hw1.0/firmware-5.bin
$(INSTALL_DATA) \ $(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9887/hw1.0/board.bin \ $(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 \ $(PKG_BUILD_DIR)/QCA9888/hw2.0/board-2.bin \
$(1)/lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin $(1)/lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin
$(INSTALL_DATA) \ $(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 $(1)/lib/firmware/ath10k/QCA9888/hw2.0/firmware-5.bin
endef endef
@ -253,30 +433,10 @@ define Package/ath10k-firmware-qca988x/install
$(PKG_BUILD_DIR)/QCA988X/hw2.0/board.bin \ $(PKG_BUILD_DIR)/QCA988X/hw2.0/board.bin \
$(1)/lib/firmware/ath10k/QCA988X/hw2.0/ $(1)/lib/firmware/ath10k/QCA988X/hw2.0/
$(INSTALL_DATA) \ $(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 $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-5.bin
endef 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 define Package/ath10k-firmware-qca6174/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k $(INSTALL_DIR) $(1)/lib/firmware/ath10k
$(CP) $(PKG_BUILD_DIR)/QCA6174 $(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 $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/firmware-5.bin
endef 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 define Package/ath10k-firmware-qca99x0-ct/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA99X0/hw2.0 $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA99X0/hw2.0
$(INSTALL_DATA) \ $(INSTALL_DATA) \
@ -307,15 +518,17 @@ define Package/ath10k-firmware-qca99x0-ct/install
$(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA99X0) \ $(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA99X0) \
$(1)/lib/firmware/ath10k/QCA99X0/hw2.0/firmware-5.bin $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/firmware-5.bin
endef endef
define Package/ath10k-firmware-qca99x0-ct-htt/install
define Package/ath10k-firmware-qca9984/install $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA99X0/hw2.0
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9984/hw1.0
$(INSTALL_DATA) \ $(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9984/hw1.0/board-2.bin \ $(DL_DIR)/$(QCA99X0_BOARD_FILE) \
$(1)/lib/firmware/ath10k/QCA9984/hw1.0/board-2.bin $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/board-2.bin
$(INSTALL_DATA) \ $(INSTALL_DATA) \
$(PKG_BUILD_DIR)/QCA9984/hw1.0/3.4/firmware-5.bin_10.4-3.4-00082 \ $(PKG_BUILD_DIR)/QCA99X0/hw2.0/boardData_AR900B_CUS239_5G_v2_001.bin \
$(1)/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.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 endef
define Package/ath10k-firmware-qca9984-ct/install 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) \ $(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA9984) \
$(1)/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin $(1)/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin
endef 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 define Package/ath10k-firmware-qca9888-ct/install
$(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9888/hw2.0 $(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) \ $(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA9888) \
$(1)/lib/firmware/ath10k/QCA9888/hw2.0/firmware-5.bin $(1)/lib/firmware/ath10k/QCA9888/hw2.0/firmware-5.bin
endef 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-qca9887))
$(eval $(call BuildPackage,ath10k-firmware-qca9888)) $(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-qca4019))
$(eval $(call BuildPackage,ath10k-firmware-qca9887-ct)) $(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))
$(eval $(call BuildPackage,ath10k-firmware-qca988x-ct-htt))
$(eval $(call BuildPackage,ath10k-firmware-qca99x0-ct)) $(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))
$(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))
$(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 define Build/Compile
endef endef
ALLWIFIBOARDS:=fritz4040 openmesh_a42 ALLWIFIBOARDS:=asus_rt-ac58u avm_fritzbox-4040 glinet_gl-b1300 meraki_mr33
ALLWIFIPACKAGES:=$(foreach BOARD,$(ALLWIFIBOARDS),ipq-wifi-$(BOARD)) ALLWIFIPACKAGES:=$(foreach BOARD,$(ALLWIFIBOARDS),ipq-wifi-$(BOARD))
define Package/ipq-wifi-default define Package/ipq-wifi-default
SUBMENU:=ath10k IPQ4019 Boarddata SUBMENU:=ath10k IPQ4019 Boarddata
SECTION:=firmware SECTION:=firmware
CATEGORY:=Firmware CATEGORY:=Firmware
DEPENDS:=@TARGET_ipq806x +ath10k-firmware-qca4019 DEPENDS:=@TARGET_ipq40xx +ath10k-firmware-qca4019
TITLE:=Custom Board TITLE:=Custom Board
endef endef
@ -47,7 +47,9 @@ Don't install it for any other device!
PREV_BOARD+=ipq-wifi-$(1) PREV_BOARD+=ipq-wifi-$(1)
endef endef
$(eval $(call generate-ipq-wifi-package,fritz4040,board-fritz4040.bin,AVM FRITZBox 4040)) $(eval $(call generate-ipq-wifi-package,asus_rt-ac58u,board-asus_rt-ac58u.bin,ASUS RT-AC58U))
$(eval $(call generate-ipq-wifi-package,openmesh_a42,board-openmesh_a42.bin,OpenMesh A42)) $(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)))) $(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_RELEASE:=1
PKG_SOURCE_PROTO:=git 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_SOURCE_VERSION:=c275e91392e2adab1ed22f3867b8269ca3c54014
PKG_MIRROR_HASH:=1a4611d528f67f3acfa88aefdec9a9a67d96a3139ac5fe1089f599272e6c4a52 PKG_MIRROR_HASH:=1a4611d528f67f3acfa88aefdec9a9a67d96a3139ac5fe1089f599272e6c4a52

View File

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

View File

@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk include $(INCLUDE_DIR)/image.mk
PKG_NAME:=ls-ppa PKG_NAME:=ls-ppa
PKG_SOURCE_DATE:=2017-10-26 PKG_SOURCE_DATE:=2018-01-18
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/yangbolu1991/ppa-binary.git PKG_SOURCE_URL:=https://github.com/yangbolu1991/ppa-binary.git
PKG_SOURCE_VERSION:=76a80ca988affbee67bb17096aefb82ba6d91be7 PKG_SOURCE_VERSION:=cd295be24cadae51741154f3b1c935c7b9064230
PKG_MIRROR_HASH:=55e6cfa0f03f2db667ed4270e5aaf43ab830343af3b9724f92e830a1e3a3a25f PKG_MIRROR_HASH:=743ca493f640d5fb2e99ad7b1da030f9088546f1ad70b5d1e61eb98a969c00c5
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) 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 include $(INCLUDE_DIR)/image.mk
PKG_NAME:=ls-rcw PKG_NAME:=ls-rcw
PKG_SOURCE_DATE:=2017-09-26 PKG_SOURCE_DATE:=2017-12-01
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/qoriq-open-source/rcw.git PKG_SOURCE_URL:=https://github.com/qoriq-open-source/rcw.git
PKG_SOURCE_VERSION:=6719b046ee87b04026fe163e6c8fbbebba2186aa PKG_SOURCE_VERSION:=cbd5e66fcb850e821c8632578410ceba5733a49e
PKG_MIRROR_HASH:=9645ecf148640ec7d1029bce65950f2a0b0e6b351a25ef60c8a839c42c6ed56d PKG_MIRROR_HASH:=4caad5e0ae2018a0a594f36e46e4a96698420956c64bb73656f380fd46733c3d
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) 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 CONFIG=ls1046ardb/RR_FFSSPPPH_1133_5559/rcw_1800_qspiboot.bin.swap
endef 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 := \ RCWS := \
ls1043ardb \ ls1043ardb \
ls1046ardb \ ls1046ardb
ls1012ardb \
ls1088ardb \
ls2088ardb \
ls1012afrdm
define Package/rcw/template define Package/rcw/template
define Package/rcw-layerscape-$(1) define Package/rcw-layerscape-$(1)

View File

@ -8,13 +8,13 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=ppfe PKG_NAME:=ppfe
PKG_SOURCE_DATE:=2017-10-13 PKG_SOURCE_DATE:=2017-12-05
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/qoriq-open-source/engine-pfe-bin.git PKG_SOURCE_URL:=https://github.com/NXP/qoriq-engine-pfe-bin.git
PKG_SOURCE_VERSION:=97cd13d3070d7199e62881bc495b332194b67edd PKG_SOURCE_VERSION:=848002fe4e0e3efb8d13a813e5c123bbc87aa95b
PKG_MIRROR_HASH:=3457bfe7201a8410443f34d4bb5fa67d4ff19e2d0f3957e84e3f20e2ae3fa34a PKG_MIRROR_HASH:=b6867be2f5826e807db15256996e11303ca7bbe06ac18448cbf68827d9a59ae2
PKG_FLAGS:=nonshared PKG_FLAGS:=nonshared
@ -31,7 +31,7 @@ define Package/layerscape-ppfe
CONFIG_FW:=ls1012a/u-boot/pfe_fw_sbl.itb CONFIG_FW:=ls1012a/u-boot/pfe_fw_sbl.itb
CONFIG_BIN1:=ls1012a/slow_path/ppfe_class_ls1012a.elf CONFIG_BIN1:=ls1012a/slow_path/ppfe_class_ls1012a.elf
CONFIG_BIN2:=ls1012a/slow_path/ppfe_tmu_ls1012a.elf CONFIG_BIN2:=ls1012a/slow_path/ppfe_tmu_ls1012a.elf
CONFIG_LIC:=Freescale-Binary-EULA CONFIG_LIC:=NXP-Binary-EULA.txt
endef endef
define Build/Compile 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) Package/iwlwifi-firmware-iwl8260c = $(call Package/firmware-default,Intel Wireless 8260 and 4165 firmware)
define Package/iwlwifi-firmware-iwl8260c/install define Package/iwlwifi-firmware-iwl8260c/install
$(INSTALL_DIR) $(1)/lib/firmware $(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 endef
$(eval $(call BuildPackage,iwlwifi-firmware-iwl8260c)) $(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_URL:=https://github.com/greearb/ath10k-ct.git
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_DATE:=2017-06-13 PKG_SOURCE_DATE:=2018-03-16
PKG_SOURCE_VERSION:=bded1823912549017d819d1796273b3134c3de20 PKG_SOURCE_VERSION:=30827f7d5b9841905c4efe918da2d95fc518c921
PKG_MIRROR_HASH:=616174650e12a82edb6b6bd18ac186e2c6a48fdad0082df9d2011ab20940814b PKG_MIRROR_HASH:=aac023d7f9b09becf27058b1d09ae6d068b14bb6f10c5b5a248c7ee5ecff04dc
PKG_MAINTAINER:=Ben Greear <greearb@candelatech.com>
PKG_BUILD_PARALLEL:=1
PKG_EXTMOD_SUBDIRS:=ath10k
# Build the 4.13 ath10k-ct driver version. Other options are "-4.9", or # 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 # leave un-defined for 4.7 kernel. Probably this should match as closely as
# possible to whatever mac80211 backports version is being used. # possible to whatever mac80211 backports version is being used.
CT_KVER="-4.13" 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 STAMP_CONFIGURED_DEPENDS := $(STAGING_DIR)/usr/include/mac80211-backport/backport/autoconf.h
include $(INCLUDE_DIR)/kernel.mk include $(INCLUDE_DIR)/kernel.mk
@ -29,11 +29,12 @@ include $(INCLUDE_DIR)/package.mk
define KernelPackage/ath10k-ct define KernelPackage/ath10k-ct
SUBMENU:=Wireless Drivers SUBMENU:=Wireless Drivers
TITLE:=ath10k-ct driver optimized for CT ath10k firmware 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:=\ FILES:=\
$(PKG_BUILD_DIR)/ath10k$(CT_KVER)/ath10k_pci.ko \ $(PKG_BUILD_DIR)/ath10k$(CT_KVER)/ath10k_pci.ko \
$(PKG_BUILD_DIR)/ath10k$(CT_KVER)/ath10k_core.ko $(PKG_BUILD_DIR)/ath10k$(CT_KVER)/ath10k_core.ko
AUTOLOAD:=$(call AutoProbe,ath10k_pci) AUTOLOAD:=$(call AutoProbe,ath10k_pci)
PROVIDES:=kmod-ath10k
endef endef
NOSTDINC_FLAGS = \ NOSTDINC_FLAGS = \
@ -50,9 +51,11 @@ ifdef CONFIG_PACKAGE_MAC80211_MESH
endif endif
CT_MAKEDEFS += CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m 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 # This AHB logic is needed for IPQ4019 radios
#NOSTDINC_FLAGS += -DCONFIG_ATH10K_AHB CT_MAKEDEFS += CONFIG_ATH10K_AHB=m
NOSTDINC_FLAGS += -DCONFIG_ATH10K_AHB
NOSTDINC_FLAGS += -DSTANDALONE_CT NOSTDINC_FLAGS += -DSTANDALONE_CT
ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS 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_LOCK_KEY 0xAA /* Key to disable Super-I/O */
#define SIO_NCT5104D_ID 0x1061 /* Chip ID */ #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 }; enum chips { nct5104d };
@ -350,7 +351,8 @@ static int __init nct5104d_find(int addr, struct nct5104d_sio *sio)
devid = superio_inw(addr, SIO_CHIPID); devid = superio_inw(addr, SIO_CHIPID);
switch (devid) { switch (devid) {
case SIO_NCT5104D_ID: 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; sio->type = nct5104d;
/* enable GPIO0 and GPIO1 */ /* enable GPIO0 and GPIO1 */
superio_select(addr, SIO_LD_GPIO); superio_select(addr, SIO_LD_GPIO);

View File

@ -13,9 +13,9 @@ PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/dtaht/sch_cake.git PKG_SOURCE_URL:=https://github.com/dtaht/sch_cake.git
PKG_SOURCE_DATE:=2018-01-07 PKG_SOURCE_DATE:=2018-03-19
PKG_SOURCE_VERSION:=568ed96467f41aad37556b0db11fc008e05941e9 PKG_SOURCE_VERSION:=0afc1bee4e9fc5d75668cb10254ab5d2d02f0098
PKG_MIRROR_HASH:=8f3f962824826d07b1029379d91e01bf97fe0bfce1233af5cfa7a54cb1c3632c PKG_MIRROR_HASH:=b8ac95753d05ff602282ed5a799f9c953f60decebc5720ee8f0101344a5acfc4
include $(INCLUDE_DIR)/package.mk 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) ugly_hack_sleep_on_timeout(wait_queue_head_t *q, long timeout)
{ {
unsigned long flags; unsigned long flags;
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
wait_queue_entry_t wait;
#else
wait_queue_t wait; wait_queue_t wait;
#endif
init_waitqueue_entry(&wait, current); init_waitqueue_entry(&wait, current);

View File

@ -10,15 +10,15 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=ltq-adsl PKG_NAME:=ltq-adsl
PKG_VERSION:=3.24.4.4 PKG_VERSION:=3.24.4.4
PKG_RELEASE:=1 PKG_RELEASE:=2
PKG_SOURCE:=drv_dsl_cpe_api_danube-$(PKG_VERSION).tar.gz 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_BUILD_DIR:=$(KERNEL_BUILD_DIR)/ltq-dsl-$(BUILD_VARIANT)/drv_dsl_cpe_api-$(PKG_VERSION)
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources/ PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources/
PKG_HASH:=eb2ed59715d3bf4e8a1460bbbe2f1660039e0a9f9d72afb1b2b16590094eb33c PKG_HASH:=eb2ed59715d3bf4e8a1460bbbe2f1660039e0a9f9d72afb1b2b16590094eb33c
PKG_MAINTAINER:=John Crispin <john@phrozen.org> PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_USE_MIPS16:=0
PKG_CHECK_FORMAT_SECURITY:=0 PKG_CHECK_FORMAT_SECURITY:=0
PKG_ASLR_PIE:=0
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
@ -83,8 +83,6 @@ CONFIGURE_ARGS += \
EXTRA_CFLAGS += -DDEBUG EXTRA_CFLAGS += -DDEBUG
endif endif
EXTRA_CFLAGS = -fno-pic -mno-abicalls -mlong-calls -G 0
define Build/InstallDev define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include/adsl $(INSTALL_DIR) $(1)/usr/include/adsl
$(CP) $(PKG_BUILD_DIR)/src/include/drv_dsl_cpe_*.h $(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 --- a/src/include/drv_dsl_cpe_device_danube.h
=================================================================== +++ b/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
@@ -24,7 +24,7 @@ @@ -24,7 +24,7 @@
#include "drv_dsl_cpe_simulator_danube.h" #include "drv_dsl_cpe_simulator_danube.h"
#else #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)*/ #endif /* defined(DSL_CPE_SIMULATOR_DRIVER) && defined(WIN32)*/
#define DSL_MAX_LINE_NUMBER 1 #define DSL_MAX_LINE_NUMBER 1
Index: drv_dsl_cpe_api-3.24.4.4/src/common/drv_dsl_cpe_os_linux.c --- a/src/common/drv_dsl_cpe_os_linux.c
=================================================================== +++ b/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
@@ -11,6 +11,7 @@ @@ -11,6 +11,7 @@
#ifdef __LINUX__ #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.h"
#include "drv_dsl_cpe_api_ioctl.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, 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); 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_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); 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, open: DSL_DRV_Open,
release: DSL_DRV_Release, release: DSL_DRV_Release,
write: DSL_DRV_Write, 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 poll: DSL_DRV_Poll
}; };
#else #else
@@ -168,10 +177,17 @@ @@ -168,10 +177,17 @@ static DSL_ssize_t DSL_DRV_Write(DSL_DRV
\return Success or failure. \return Success or failure.
\ingroup Internal \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_int_t nErr=0;
DSL_boolean_t bIsInKernel; 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) || 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_G997) ||
(_IOC_TYPE(nCommand) == DSL_IOC_MAGIC_CPE_API_PM) || (_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 */ /* Entry point of driver */
int __init DSL_ModuleInit(void) 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; DSL_int_t i;
printk(DSL_DRV_CRLF DSL_DRV_CRLF "Infineon CPE API Driver version: %s" DSL_DRV_CRLF, 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(); 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; return 0;
} }
Index: drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_os_linux.h --- a/src/include/drv_dsl_cpe_os_linux.h
=================================================================== +++ b/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 @@ -16,18 +16,18 @@
+++ drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_os_linux.h 2012-11-29 19:47:23.092210377 +0100 extern "C" {
@@ -17,17 +17,17 @@
#endif #endif
#include <asm/ioctl.h> -#include <asm/ioctl.h>
-#include <linux/autoconf.h> -#include <linux/autoconf.h>
+#include <generated/autoconf.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/ctype.h> #include <linux/ctype.h>
#include <linux/version.h> #include <linux/version.h>
#include <linux/spinlock.h> #include <linux/spinlock.h>
-
+#include <linux/sched.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 <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 #endif
#include <linux/types.h> #include <linux/types.h>
Index: drv_dsl_cpe_api-3.24.4.4/src/ifxmips_mei_interface.h @@ -39,7 +39,8 @@
=================================================================== #include <linux/delay.h>
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 #include <linux/poll.h>
+++ drv_dsl_cpe_api-3.24.4.4/src/ifxmips_mei_interface.h 2012-11-29 19:47:54.972211177 +0100 #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 @@ @@ -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 +#endif //IFXMIPS_MEI_H
--- a/configure.in --- a/configure.in
+++ b/configure.in +++ b/configure.in
@@ -310,7 +310,7 @@ @@ -310,7 +310,7 @@ dnl Set kernel build path
AC_ARG_ENABLE(kernelbuild, AC_ARG_ENABLE(kernelbuild,
AC_HELP_STRING(--enable-kernel-build=x,Set the target kernel build path), 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]) AC_SUBST([KERNEL_BUILD_PATH],[$enableval])
else else
AC_MSG_ERROR([The kernel build directory is not valid or not configured!]) 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 echo Set the lib_ifxos include path $enableval
AC_SUBST([IFXOS_INCLUDE_PATH],[$enableval]) AC_SUBST([IFXOS_INCLUDE_PATH],[$enableval])
else 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]) 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_SUBST([DISTCHECK_CONFIGURE_PARAMS],[$CONFIGURE_OPTIONS])
AC_CONFIG_COMMANDS_PRE([ 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]) AC_CONFIG_FILES([Makefile src/Makefile])
--- a/src/Makefile.am --- a/src/Makefile.am
+++ b/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_OBJS = "$(subst .c,.o,$(filter %.c,$(drv_dsl_cpe_api_SOURCES)))"
drv_dsl_cpe_api.ko: $(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 \ if test ! -e common/drv_dsl_cpe_api.c ; then \
echo "copy source files (as links only!)"; \ echo "copy source files (as links only!)"; \
for f in $(filter %.c,$(drv_dsl_cpe_api_SOURCES)); do \ 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`/ ; \ cp -s $(addprefix @abs_srcdir@/,$$f) $(PWD)/`dirname $$f`/ ; \
done \ done \
fi fi
- @echo -e "# drv_dsl_cpe_api: Generated to build Linux 2.6.x kernel object" > $(PWD)/Kbuild - @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 "obj-m := $(subst .ko,.o,$@)" >> $(PWD)/Kbuild
- @echo -e "$(subst .ko,,$@)-y := $(drv_dsl_cpe_api_OBJS)" >> $(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 "# drv_dsl_cpe_api: Generated to build Linux 2.6.x kernel object" > $(PWD)/Kbuild
+ @echo "obj-m := $(subst .ko,.o,$@)" >> $(PWD)/Kbuild + @echo "obj-m := $(subst .ko,.o,$@)" >> $(PWD)/Kbuild
+ @echo "$(subst .ko,,$@)-y := $(drv_dsl_cpe_api_OBJS)" >> $(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 $(MAKE) ARCH=@KERNEL_ARCH@ -C @KERNEL_BUILD_PATH@ O=@KERNEL_BUILD_PATH@ M=$(PWD) modules
clean-generic: 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 --- a/src/common/drv_dsl_cpe_os_linux.c
=================================================================== +++ b/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
@@ -12,6 +12,7 @@ @@ -12,6 +12,7 @@
#define DSL_INTERN #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.h"
#include "drv_dsl_cpe_api_ioctl.h" #include "drv_dsl_cpe_api_ioctl.h"
@@ -1063,7 +1064,7 @@ @@ -1063,7 +1064,7 @@ static void DSL_DRV_DebugInit(void)
#endif #endif
/* Entry point of driver */ /* 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; struct class *dsl_class;
DSL_int_t i; DSL_int_t i;
@@ -1117,7 +1118,7 @@ @@ -1117,7 +1118,7 @@ int __init DSL_ModuleInit(void)
return 0; 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); 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); (DSL_uint8_t**)&g_BndFpgaBase);
#endif /* defined(INCLUDE_DSL_CPE_API_VINAX) && defined(INCLUDE_DSL_BONDING)*/ #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 #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"); MODULE_PARM_DESC(debug_level, "set to get more (1) or fewer (4) debug outputs");
#endif /* #ifndef DSL_DEBUG_DISABLE*/ #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 --- a/src/common/drv_dsl_cpe_os_linux.c
=================================================================== +++ b/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
@@ -11,6 +11,7 @@ @@ -11,6 +11,7 @@
#ifdef __LINUX__ #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/device.h>
#include <linux/platform_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, static DSL_int_t DSL_DRV_Ioctls(DSL_DRV_inode_t * pINode, DSL_DRV_file_t * pFile,
DSL_uint_t nCommand, unsigned long nArg); DSL_uint_t nCommand, unsigned long nArg);
#else #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); DSL_uint_t nCommand, unsigned long nArg);
#endif #endif
static int DSL_DRV_Open(DSL_DRV_inode_t * ino, DSL_DRV_file_t * fil); 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, DSL_uint_t nCommand,
unsigned long nArg) unsigned long nArg)
#else #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_DRV_file_t * pFile,
DSL_uint_t nCommand, DSL_uint_t nCommand,
unsigned long nArg) unsigned long nArg)
@@ -521,9 +522,9 @@ @@ -521,9 +522,9 @@ DSL_void_t* DSL_IoctlMemCpyTo(
- IFX_SUCCESS on success - IFX_SUCCESS on success
- IFX_ERROR on error - 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; DSL_int32_t retVal = -1;
#ifndef _lint #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, (DSL_NULL, "ENTER - Kernel Thread Startup <%s>" DSL_DRV_CRLF,
pThrCntrl->thrParams.pName)); 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);*/ /*DSL_DRV_ThreadPriorityModify(pThrCntrl->nPriority);*/
pThrCntrl->thrParams.bRunning = 1; pThrCntrl->thrParams.bRunning = 1;
@@ -639,9 +616,7 @@ @@ -639,9 +616,7 @@ DSL_int32_t DSL_DRV_ThreadInit(
init_completion(&pThrCntrl->thrCompletion); init_completion(&pThrCntrl->thrCompletion);
/* start kernel thread via the wrapper function */ /* 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; pThrCntrl->bValid = DSL_TRUE;
@@ -1064,12 +1039,12 @@ @@ -1064,12 +1039,12 @@ static void DSL_DRV_DebugInit(void)
#endif #endif
/* Entry point of driver */ /* 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_cpe_api_version[4]));
DSL_DRV_MemSet( ifxDevices, 0, sizeof(DSL_devCtx_t) * DSL_DRV_MAX_DEVICE_NUMBER ); 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; 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); 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 = { static struct platform_driver ltq_adsl_driver = {
.probe = ltq_adsl_probe, .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 = { .driver = {
.name = "adsl", .name = "adsl",
.owner = THIS_MODULE, .owner = THIS_MODULE,
Index: drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_os_lint_map.h --- a/src/include/drv_dsl_cpe_os_lint_map.h
=================================================================== +++ b/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 @@ -247,7 +247,7 @@ typedef struct
+++ 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 @@
DSL_DRV_ThreadFunction_t pThrFct; DSL_DRV_ThreadFunction_t pThrFct;
/** Kernel thread process ID */ /** 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 */ /** requested kernel thread priority */
DSL_int32_t nPriority; DSL_int32_t nPriority;
Index: drv_dsl_cpe_api-3.24.4.4/src/include/drv_dsl_cpe_os_linux.h --- a/src/include/drv_dsl_cpe_os_linux.h
=================================================================== +++ b/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 @@ -288,7 +288,7 @@ typedef struct
+++ 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 @@
DSL_DRV_ThreadFunction_t pThrFct; DSL_DRV_ThreadFunction_t pThrFct;
/** Kernel thread process ID */ /** Kernel thread process ID */

View File

@ -1,6 +1,6 @@
--- a/src/include/drv_dsl_cpe_os_linux.h --- a/src/include/drv_dsl_cpe_os_linux.h
+++ b/src/include/drv_dsl_cpe_os_linux.h +++ b/src/include/drv_dsl_cpe_os_linux.h
@@ -214,12 +214,25 @@ static inline int dsl_mutex_lock(struct @@ -214,12 +214,25 @@ static inline int dsl_mutex_lock(struct
#define DSL_DRV_MUTEX_LOCK(id) down_interruptible(&(id)) #define DSL_DRV_MUTEX_LOCK(id) down_interruptible(&(id))
#define DSL_DRV_MUTEX_UNLOCK(id) up(&(id)) #define DSL_DRV_MUTEX_UNLOCK(id) up(&(id))
#endif #endif

View File

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

View File

@ -19,6 +19,8 @@
** HISTORY ** HISTORY
** $Date $Author $Comment ** $Date $Author $Comment
** 07 JUL 2009 Xu Liang Init Version ** 07 JUL 2009 Xu Liang Init Version
**
** Copyright 2017 Alexander Couzens <lynxis@fe80.eu>
*******************************************************************************/ *******************************************************************************/
#define IFX_ATM_VER_MAJOR 1 #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 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 struct sk_buff *get_skb_rx_pointer(unsigned int);
static inline int get_tx_desc(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 * mailbox handler and signal function
@ -444,6 +444,9 @@ static int ppe_open(struct atm_vcc *vcc)
/* set htu entry */ /* set htu entry */
set_htu_entry(vpi, vci, conn, vcc->qos.aal == ATM_AAL5 ? 1 : 0, 0); 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; ret = 0;
PPE_OPEN_EXIT: PPE_OPEN_EXIT:
@ -511,14 +514,17 @@ static int ppe_send(struct atm_vcc *vcc, struct sk_buff *skb)
int ret; int ret;
int conn; int conn;
int desc_base; 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 tx_descriptor reg_desc = {0};
struct sk_buff *new_skb; struct tx_inband_header *header;
if ( vcc == NULL || skb == NULL ) if ( vcc == NULL || skb == NULL )
return -EINVAL; return -EINVAL;
skb_get(skb);
atm_free_tx_skb_vcc(skb, vcc);
conn = find_vcc(vcc); conn = find_vcc(vcc);
if ( conn < 0 ) { if ( conn < 0 ) {
@ -532,31 +538,28 @@ static int ppe_send(struct atm_vcc *vcc, struct sk_buff *skb)
goto PPE_SEND_FAIL; goto PPE_SEND_FAIL;
} }
if ( vcc->qos.aal == ATM_AAL5 ) { byteoff = (unsigned int)skb->data & (DATA_BUFFER_ALIGNMENT - 1);
int byteoff; required = sizeof(*header) + byteoff;
int datalen; if (!skb_clone_writable(skb, required)) {
struct tx_inband_header *header; int expand_by = 0;
int ret;
byteoff = (unsigned int)skb->data & (DATA_BUFFER_ALIGNMENT - 1); if (skb_headroom(skb) < required)
if ( skb_headroom(skb) < byteoff + TX_INBAND_HEADER_LENGTH ) expand_by = required - skb_headroom(skb);
new_skb = skb_duplicate(skb);
else ret = pskb_expand_head(skb, expand_by, 0, GFP_ATOMIC);
new_skb = skb_break_away_from_protocol(skb); if (ret) {
if ( new_skb == NULL ) { printk("pskb_expand_head failed.\n");
pr_err("either skb_duplicate or skb_break_away_from_protocol fail\n"); atm_free_tx_skb_vcc(skb, vcc);
ret = -ENOMEM; return ret;
goto PPE_SEND_FAIL;
} }
dev_kfree_skb_any(skb); }
skb = new_skb;
datalen = skb->len; datalen = skb->len;
byteoff = (unsigned int)skb->data & (DATA_BUFFER_ALIGNMENT - 1); 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 */ /* setup inband trailer */
header->uu = 0; header->uu = 0;
header->cpi = 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.byteoff = byteoff;
reg_desc.iscell = 0; reg_desc.iscell = 0;
} else { } 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.dataptr = (unsigned int)skb->data >> 2;
reg_desc.datalen = skb->len; reg_desc.datalen = skb->len;
reg_desc.byteoff = 0; reg_desc.byteoff = byteoff;
reg_desc.iscell = 1; 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.c = 1;
reg_desc.sop = reg_desc.eop = 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); desc_base = get_tx_desc(conn);
if ( desc_base < 0 ) { if ( desc_base < 0 ) {
spin_unlock_irqrestore(&g_atm_priv_data.conn[conn].lock, flags);
pr_debug("ALLOC_TX_CONNECTION_FAIL\n"); pr_debug("ALLOC_TX_CONNECTION_FAIL\n");
ret = -EIO; ret = -EIO;
goto PPE_SEND_FAIL; 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 */ /* update descriptor send pointer */
if ( g_atm_priv_data.conn[conn].tx_skb[desc_base] != NULL ) 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]); 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; 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 */ /* write discriptor to memory and write back cache */
g_atm_priv_data.conn[conn].tx_desc[desc_base] = reg_desc; g_atm_priv_data.conn[conn].tx_desc[desc_base] = reg_desc;
dma_cache_wback((unsigned long)skb->data, skb->len); 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; 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); atomic_add(skb->truesize, &sk_atm(vcc)->sk_wmem_alloc);
#endif
return skb; return skb;
} }
@ -862,42 +857,40 @@ static inline int get_tx_desc(unsigned int conn)
return desc_base; 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 (!conn)
if ( new_skb == NULL ) return;
return NULL;
skb_put(new_skb, skb->len); spin_lock_irqsave(&conn->lock, flags);
memcpy(new_skb->data, skb->data, skb->len);
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) ) { /* only get valid queues */
new_skb = skb_clone(skb, GFP_ATOMIC); queue_bitmap &= g_atm_priv_data.conn_table;
if ( new_skb == NULL )
return NULL;
} else
new_skb = skb_get(skb);
skb_dst_drop(new_skb); for ( i = 0, bit = 1; i < MAX_PVC_NUMBER; i++, bit <<= 1 ) {
#if defined(CONFIG_NF_CONNTRACK) || defined(CONFIG_NF_CONNTRACK_MODULE) if (queue_bitmap & bit)
nf_conntrack_put(new_skb->nfct); free_tx_ring(i);
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;
} }
static inline void mailbox_oam_rx_handler(void) 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) static void do_ppe_tasklet(unsigned long data)
{ {
unsigned int irqs = *MBOX_IGU1_ISR;
*MBOX_IGU1_ISRC = *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) if ((*MBOX_IGU1_ISR & ((1 << RX_DMA_CH_AAL) | (1 << RX_DMA_CH_OAM))) != 0)
tasklet_schedule(&g_dma_tasklet); tasklet_schedule(&g_dma_tasklet);
else if (*MBOX_IGU1_ISR >> (FIRST_QSB_QID + 16)) /* TX queue */
tasklet_schedule(&g_dma_tasklet);
else else
enable_irq(PPE_MAILBOX_IGU1_INT); 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); 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); ppskb = (struct sk_buff **)(((unsigned int)g_atm_priv_data.tx_skb_base + 3) & ~3);
for ( i = 0; i < MAX_PVC_NUMBER; i++ ) { 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_desc = &p_tx_desc[i * dma_tx_descriptor_length];
g_atm_priv_data.conn[i].tx_skb = &ppskb[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 ret;
int port_num; int port_num;
struct port_cell_info port_cell = {0}; struct port_cell_info port_cell = {0};
int i, j;
char ver_str[256]; char ver_str[256];
match = of_match_device(ltq_atm_match, &pdev->dev); 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 * \ingroup IFX_AES_FUNCTIONS
* \brief function to initialize AES driver * \brief function to initialize AES driver
* \return ret * \return ret
*/ */
int __init ifxdeu_init_aes (void) int ifxdeu_init_aes (void)
{ {
int ret = -ENOSYS; int ret = -ENOSYS;
@ -952,11 +952,11 @@ aes_err:
return ret; return ret;
} }
/*! \fn void __exit ifxdeu_fini_aes (void) /*! \fn void ifxdeu_fini_aes (void)
* \ingroup IFX_AES_FUNCTIONS * \ingroup IFX_AES_FUNCTIONS
* \brief unregister aes driver * \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_aes_alg);
crypto_unregister_alg (&ifxdeu_ecb_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 \ingroup IFX_ARC4_FUNCTIONS
\brief initialize arc4 driver \brief initialize arc4 driver
*/ */
int __init ifxdeu_init_arc4(void) int ifxdeu_init_arc4(void)
{ {
int ret = -ENOSYS; 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 \ingroup IFX_ARC4_FUNCTIONS
\brief unregister arc4 driver \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_arc4_alg);
crypto_unregister_alg (&ifxdeu_ecb_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 * \ingroup IFX_DES_FUNCTIONS
* \brief initialize des driver * \brief initialize des driver
*/ */
int __init ifxdeu_init_des (void) int ifxdeu_init_des (void)
{ {
int ret = -ENOSYS; 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 * \ingroup IFX_DES_FUNCTIONS
* \brief unregister des driver * \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_des_alg);
crypto_unregister_alg (&ifxdeu_ecb_des_alg); crypto_unregister_alg (&ifxdeu_ecb_des_alg);

View File

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

View File

@ -39,6 +39,7 @@
#include <asm/byteorder.h> #include <asm/byteorder.h>
#include <linux/skbuff.h> #include <linux/skbuff.h>
#include <linux/netdevice.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 // must match the size of memory block allocated for g_dma_block and g_dma_block2
#define DEU_MAX_PACKET_SIZE (PAGE_SIZE >> 1) #define DEU_MAX_PACKET_SIZE (PAGE_SIZE >> 1)
@ -53,7 +54,11 @@ typedef struct ifx_deu_device {
int recv_count; int recv_count;
int packet_size; int packet_size;
int packet_num; int packet_num;
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
wait_queue_entry_t wait;
#else
wait_queue_t wait; wait_queue_t wait;
#endif
} _ifx_deu_device; } _ifx_deu_device;
extern _ifx_deu_device ifx_deu[1]; 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 * \ingroup IFX_MD5_FUNCTIONS
* \brief initialize md5 driver * \brief initialize md5 driver
*/ */
int __init ifxdeu_init_md5 (void) int ifxdeu_init_md5 (void)
{ {
int ret = -ENOSYS; int ret = -ENOSYS;
@ -298,12 +298,12 @@ md5_err:
return ret; return ret;
} }
/*! \fn void __exit ifxdeu_fini_md5 (void) /*! \fn void ifxdeu_fini_md5 (void)
* \ingroup IFX_MD5_FUNCTIONS * \ingroup IFX_MD5_FUNCTIONS
* \brief unregister md5 driver * \brief unregister md5 driver
*/ */
void __exit ifxdeu_fini_md5 (void) void ifxdeu_fini_md5 (void)
{ {
crypto_unregister_shash(&ifxdeu_md5_alg); 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 * \ingroup IFX_MD5_HMAC_FUNCTIONS
* \brief initialize md5 hmac driver * \brief initialize md5 hmac driver
*/ */
int __init ifxdeu_init_md5_hmac (void) int ifxdeu_init_md5_hmac (void)
{ {
int ret = -ENOSYS; int ret = -ENOSYS;
@ -375,11 +375,11 @@ md5_hmac_err:
return ret; return ret;
} }
/** \fn void __exit ifxdeu_fini_md5_hmac (void) /** \fn void ifxdeu_fini_md5_hmac (void)
* \ingroup IFX_MD5_HMAC_FUNCTIONS * \ingroup IFX_MD5_HMAC_FUNCTIONS
* \brief unregister md5 hmac driver * \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); 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 * \ingroup IFX_SHA1_FUNCTIONS
* \brief initialize sha1 driver * \brief initialize sha1 driver
*/ */
int __init ifxdeu_init_sha1 (void) int ifxdeu_init_sha1 (void)
{ {
int ret = -ENOSYS; int ret = -ENOSYS;
@ -288,11 +288,11 @@ sha1_err:
return ret; return ret;
} }
/*! \fn void __exit ifxdeu_fini_sha1 (void) /*! \fn void ifxdeu_fini_sha1 (void)
* \ingroup IFX_SHA1_FUNCTIONS * \ingroup IFX_SHA1_FUNCTIONS
* \brief unregister sha1 driver * \brief unregister sha1 driver
*/ */
void __exit ifxdeu_fini_sha1 (void) void ifxdeu_fini_sha1 (void)
{ {
crypto_unregister_shash(&ifxdeu_sha1_alg); 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 * \ingroup IFX_SHA1_HMAC_FUNCTIONS
* \brief initialize sha1 hmac driver * \brief initialize sha1 hmac driver
*/ */
int __init ifxdeu_init_sha1_hmac (void) int ifxdeu_init_sha1_hmac (void)
{ {
int ret = -ENOSYS; int ret = -ENOSYS;
@ -365,11 +365,11 @@ sha1_err:
return ret; return ret;
} }
/*! \fn void __exit ifxdeu_fini_sha1_hmac (void) /*! \fn void ifxdeu_fini_sha1_hmac (void)
* \ingroup IFX_SHA1_HMAC_FUNCTIONS * \ingroup IFX_SHA1_HMAC_FUNCTIONS
* \brief unregister sha1 hmac driver * \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); crypto_unregister_shash(&ifxdeu_sha1_hmac_alg);

View File

@ -8,7 +8,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=lib_ifxos PKG_NAME:=lib_ifxos
PKG_VERSION:=1.5.19 PKG_VERSION:=1.5.19
PKG_RELEASE:=3 PKG_RELEASE:=4
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_URL:=https://github.com/xdarklight/$(PKG_NAME)/archive/v$(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:=GPL-2.0 BSD-2-Clause
PKG_LICENSE_FILES:=LICENSE PKG_LICENSE_FILES:=LICENSE
PKG_ASLR_PIE:=0
PKG_USE_MIPS16:=0
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
include $(INCLUDE_DIR)/package.mk 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 +----- src/Makefile.am | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-) 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 --- a/src/Makefile.am
+++ b/src/Makefile.am +++ b/src/Makefile.am
@@ -14,11 +14,7 @@ lib_LIBRARIES = libifxos.a @@ -14,11 +14,7 @@ lib_LIBRARIES = libifxos.a
@ -54,6 +52,3 @@ index f95668f..d232e7f 100644
if HAVE_GCC 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 unsigned int ptm_poll(int, unsigned int);
static int ptm_napi_poll(struct napi_struct *, int); static int ptm_napi_poll(struct napi_struct *, int);
static int ptm_hard_start_xmit(struct sk_buff *, struct net_device *); 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); static int ptm_change_mtu(struct net_device *, int);
#endif
static int ptm_ioctl(struct net_device *, struct ifreq *, int); static int ptm_ioctl(struct net_device *, struct ifreq *, int);
static void ptm_tx_timeout(struct net_device *); 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_start_xmit = ptm_hard_start_xmit,
.ndo_validate_addr = eth_validate_addr, .ndo_validate_addr = eth_validate_addr,
.ndo_set_mac_address = eth_mac_addr, .ndo_set_mac_address = eth_mac_addr,
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0))
.ndo_change_mtu = ptm_change_mtu, .ndo_change_mtu = ptm_change_mtu,
#endif
.ndo_do_ioctl = ptm_ioctl, .ndo_do_ioctl = ptm_ioctl,
.ndo_tx_timeout = ptm_tx_timeout, .ndo_tx_timeout = ptm_tx_timeout,
}; };
@ -285,6 +289,10 @@ static void ptm_setup(struct net_device *dev, int ndev)
/* hook network operations */ /* hook network operations */
dev->netdev_ops = &g_ptm_netdev_ops; 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); netif_napi_add(dev, &g_ptm_priv_data.itf[ndev].napi, ptm_napi_poll, 25);
dev->watchdog_timeo = ETH_WATCHDOG_TIMEOUT; dev->watchdog_timeo = ETH_WATCHDOG_TIMEOUT;
@ -459,7 +467,7 @@ PTM_HARD_START_XMIT_FAIL:
g_ptm_priv_data.itf[ndev].stats.tx_dropped++; g_ptm_priv_data.itf[ndev].stats.tx_dropped++;
return NETDEV_TX_OK; return NETDEV_TX_OK;
} }
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0))
static int ptm_change_mtu(struct net_device *dev, int mtu) static int ptm_change_mtu(struct net_device *dev, int mtu)
{ {
/* Allow up to 1508 bytes, for RFC4638 */ /* 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; dev->mtu = mtu;
return 0; return 0;
} }
#endif
static int ptm_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) 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->dev = g_net_dev[ndev];
skb->protocol = eth_type_trans(skb, skb->dev); skb->protocol = eth_type_trans(skb, skb->dev);
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,11,0))
g_net_dev[ndev]->last_rx = jiffies; g_net_dev[ndev]->last_rx = jiffies;
#endif
netif_rx_ret = netif_receive_skb(skb); 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 unsigned int ptm_poll(int, unsigned int);
static int ptm_napi_poll(struct napi_struct *, int); static int ptm_napi_poll(struct napi_struct *, int);
static int ptm_hard_start_xmit(struct sk_buff *, struct net_device *); 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); static int ptm_change_mtu(struct net_device *, int);
#endif
static int ptm_ioctl(struct net_device *, struct ifreq *, int); static int ptm_ioctl(struct net_device *, struct ifreq *, int);
static void ptm_tx_timeout(struct net_device *); 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_start_xmit = ptm_hard_start_xmit,
.ndo_validate_addr = eth_validate_addr, .ndo_validate_addr = eth_validate_addr,
.ndo_set_mac_address = eth_mac_addr, .ndo_set_mac_address = eth_mac_addr,
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0))
.ndo_change_mtu = ptm_change_mtu, .ndo_change_mtu = ptm_change_mtu,
#endif
.ndo_do_ioctl = ptm_ioctl, .ndo_do_ioctl = ptm_ioctl,
.ndo_tx_timeout = ptm_tx_timeout, .ndo_tx_timeout = ptm_tx_timeout,
}; };
@ -141,6 +145,10 @@ static void ptm_setup(struct net_device *dev, int ndev)
netif_carrier_off(dev); netif_carrier_off(dev);
dev->netdev_ops = &g_ptm_netdev_ops; 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); netif_napi_add(dev, &g_ptm_priv_data.itf[ndev].napi, ptm_napi_poll, 16);
dev->watchdog_timeo = ETH_WATCHDOG_TIMEOUT; 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->dev = g_net_dev[0];
skb->protocol = eth_type_trans(skb, skb->dev); skb->protocol = eth_type_trans(skb, skb->dev);
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,11,0))
g_net_dev[0]->last_rx = jiffies; g_net_dev[0]->last_rx = jiffies;
#endif
netif_receive_skb(skb); netif_receive_skb(skb);
@ -367,6 +377,7 @@ PTM_HARD_START_XMIT_FAIL:
return 0; return 0;
} }
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0))
static int ptm_change_mtu(struct net_device *dev, int mtu) static int ptm_change_mtu(struct net_device *dev, int mtu)
{ {
/* Allow up to 1508 bytes, for RFC4638 */ /* 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; dev->mtu = mtu;
return 0; return 0;
} }
#endif
static int ptm_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) 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_NAME:=drv_tapi
PKG_VERSION:=3.13.0 PKG_VERSION:=3.13.0
PKG_RELEASE:=3 PKG_RELEASE:=4
PKG_SOURCE:=drv_tapi-$(PKG_VERSION).tar.bz2 PKG_SOURCE:=drv_tapi-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
PKG_HASH:=109374d52872716570fca3fef3b93c9a93159a804dfd42484b19152b825af5c0 PKG_HASH:=109374d52872716570fca3fef3b93c9a93159a804dfd42484b19152b825af5c0
PKG_MAINTAINER:=John Crispin <john@phrozen.org> PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_USE_MIPS16:=0 PKG_ASLR_PIE:=0
PKG_CHECK_FORMAT_SECURITY:=0 PKG_CHECK_FORMAT_SECURITY:=0
PKG_FIXUP:=autoreconf 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 --- a/src/drv_tapi_linux.c
+++ b/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_uint8_t *pData;
IFX_size_t buf_size; IFX_size_t buf_size;
#endif /* TAPI_PACKET */ #endif /* TAPI_PACKET */

View File

@ -10,7 +10,7 @@
#include <asm/io.h> #include <asm/io.h>
#ifdef LINUX_2_6 #ifdef LINUX_2_6
@@ -65,7 +67,9 @@ @@ -69,7 +71,9 @@
#else #else
#include <linux/tqueue.h> #include <linux/tqueue.h>
#include <linux/sched.h> #include <linux/sched.h>
@ -20,7 +20,7 @@
#endif /* LINUX_2_6 */ #endif /* LINUX_2_6 */
#include "drv_tapi.h" #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); size_t count, loff_t * ppos);
static ssize_t ifx_tapi_read(struct file * filp, char *buf, static ssize_t ifx_tapi_read(struct file * filp, char *buf,
size_t length, loff_t * ppos); size_t length, loff_t * ppos);
@ -34,7 +34,7 @@
static unsigned int ifx_tapi_poll (struct file *filp, poll_table *table); static unsigned int ifx_tapi_poll (struct file *filp, poll_table *table);
#ifdef CONFIG_PROC_FS #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_char_t *pRegDrvName = IFX_NULL;
IFX_int32_t ret = 0; IFX_int32_t ret = 0;
@ -46,7 +46,7 @@
{ {
#ifdef MODULE #ifdef MODULE
tapi_fops.owner = THIS_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.read = ifx_tapi_read;
tapi_fops.write = ifx_tapi_write; tapi_fops.write = ifx_tapi_write;
tapi_fops.poll = ifx_tapi_poll; tapi_fops.poll = ifx_tapi_poll;
@ -58,7 +58,7 @@
tapi_fops.open = ifx_tapi_open; tapi_fops.open = ifx_tapi_open;
tapi_fops.release = ifx_tapi_release; 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 - 0 and positive values - success
- negative value - ioctl failed - negative value - ioctl failed
*/ */
@ -72,7 +72,7 @@
{ {
TAPI_FD_PRIV_DATA_t *pTapiPriv; TAPI_FD_PRIV_DATA_t *pTapiPriv;
IFX_TAPI_ioctlCtx_t ctx; 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 kernel lock (lock_kernel()). The lock must be
grabbed before changing the terminate grabbed before changing the terminate
flag and released after the down() call. */ flag and released after the down() call. */
@ -83,7 +83,7 @@
mb(); mb();
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28) #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28)
kill_proc(pThrCntrl->tid, SIGKILL, 1); 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); kill_pid(find_vpid(pThrCntrl->tid), SIGKILL, 1);
#endif #endif
/* release the big kernel lock */ /* release the big kernel lock */

View File

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

View File

@ -9,7 +9,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=ltq-vdsl-vr9-mei PKG_NAME:=ltq-vdsl-vr9-mei
PKG_VERSION:=1.5.17.6 PKG_VERSION:=1.5.17.6
PKG_RELEASE:=3 PKG_RELEASE:=4
PKG_BASE_NAME:=drv_mei_cpe PKG_BASE_NAME:=drv_mei_cpe
PKG_SOURCE:=$(PKG_BASE_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_BASE_NAME)-$(PKG_VERSION).tar.gz
@ -19,10 +19,10 @@ PKG_HASH:=94f6904364348b7f74087e721968abc28b2564fb9bd8899aa930d36490387662
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
PKG_FLAGS:=nonshared PKG_FLAGS:=nonshared
PKG_MAINTAINER:=John Crispin <john@phrozen.org> PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_USE_MIPS16:=0
PKG_LICENSE:=GPL-2.0 BSD-2-Clause PKG_LICENSE:=GPL-2.0 BSD-2-Clause
PKG_LICENSE_FILES:=LICENSE PKG_LICENSE_FILES:=LICENSE
PKG_ASLR_PIE:=0
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
@ -65,7 +65,7 @@ CONFIGURE_ARGS += \
--enable-error_print \ --enable-error_print \
--enable-ifxos-include="-I$(STAGING_DIR)/usr/include/ifxos/" \ --enable-ifxos-include="-I$(STAGING_DIR)/usr/include/ifxos/" \
--enable-ifxos-library="-L$(STAGING_DIR)/usr/lib" \ --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-linux-26 \
--enable-kernelbuild="$(LINUX_DIR)" \ --enable-kernelbuild="$(LINUX_DIR)" \
--enable-drv_test_appl=yes \ --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 --- a/src/drv_mei_cpe_linux.h
+++ b/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/poll.h>
#include <linux/types.h> #include <linux/types.h>

View File

@ -9,7 +9,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=ltq-vdsl-vr9 PKG_NAME:=ltq-vdsl-vr9
PKG_VERSION:=4.17.18.6 PKG_VERSION:=4.17.18.6
PKG_RELEASE:=2 PKG_RELEASE:=3
PKG_BASE_NAME:=drv_dsl_cpe_api PKG_BASE_NAME:=drv_dsl_cpe_api
PKG_SOURCE:=$(PKG_BASE_NAME)_vrx-$(PKG_VERSION).tar.gz 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:=GPL-2.0 BSD-2-Clause
PKG_LICENSE_FILES:=LICENSE PKG_LICENSE_FILES:=LICENSE
PKG_ASLR_PIE:=0
PKG_USE_MIPS16:=0 PKG_FIXUP:=autoreconf
PKG_MAINTAINER:=John Crispin <john@phrozen.org> PKG_MAINTAINER:=John Crispin <john@phrozen.org>
@ -42,8 +42,6 @@ define Package/ltq-vdsl-vr9/description
- VRX200 Family - VRX200 Family
endef endef
EXTRA_CFLAGS = -fno-pic -mno-abicalls -mlong-calls -G 0
MAKE_FLAGS += \ MAKE_FLAGS += \
SHELL="$(BASH)" 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_NAME:=drv_vmmc
PKG_VERSION:=1.9.0 PKG_VERSION:=1.9.0
PKG_RELEASE:=2 PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_HASH:=707f515eb727c032418c4da67d7e86884bb56cdc2a606e8f6ded6057d8767e57 PKG_HASH:=707f515eb727c032418c4da67d7e86884bb56cdc2a606e8f6ded6057d8767e57
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
PKG_MAINTAINER:=John Crispin <john@phrozen.org> PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_USE_MIPS16:=0 PKG_ASLR_PIE:=0
PKG_CHECK_FORMAT_SECURITY:=0 PKG_CHECK_FORMAT_SECURITY:=0
PKG_FIXUP:=autoreconf 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 \ if (!board_name \
|| !board_vendor \ || !board_vendor \
|| strcasecmp(board_vendor, "PC Engines") \ || 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; err = -ENODEV;
goto exit; goto exit;
} }

View File

@ -47,22 +47,6 @@ define AddDepends/can
endef 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 define KernelPackage/can-bcm
TITLE:=Broadcast Manager CAN Protcol TITLE:=Broadcast Manager CAN Protcol
KCONFIG:=CONFIG_CAN_BCM KCONFIG:=CONFIG_CAN_BCM
@ -80,6 +64,74 @@ endef
$(eval $(call KernelPackage,can-bcm)) $(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 define KernelPackage/can-gw
TITLE:=CAN Gateway/Router TITLE:=CAN Gateway/Router
KCONFIG:=CONFIG_CAN_GW KCONFIG:=CONFIG_CAN_GW
@ -95,20 +147,20 @@ endef
$(eval $(call KernelPackage,can-gw)) $(eval $(call KernelPackage,can-gw))
define KernelPackage/can-vcan define KernelPackage/can-raw
TITLE:=Virtual Local CAN Interface (vcan) TITLE:=Raw CAN Protcol
KCONFIG:=CONFIG_CAN_VCAN KCONFIG:=CONFIG_CAN_RAW
FILES:=$(LINUX_DIR)/drivers/net/can/vcan.ko FILES:=$(LINUX_DIR)/net/can/can-raw.ko
AUTOLOAD:=$(call AutoProbe,vcan) AUTOLOAD:=$(call AutoProbe,can-raw)
$(call AddDepends/can) $(call AddDepends/can)
endef endef
define KernelPackage/can-vcan/description define KernelPackage/can-raw/description
Similar to the network loopback devices, vcan offers a The raw CAN protocol option offers access to the CAN bus via
virtual local CAN interface. the BSD socket API.
endef endef
$(eval $(call KernelPackage,can-vcan)) $(eval $(call KernelPackage,can-raw))
define KernelPackage/can-slcan define KernelPackage/can-slcan
@ -128,19 +180,20 @@ endef
$(eval $(call KernelPackage,can-slcan)) $(eval $(call KernelPackage,can-slcan))
define KernelPackage/can-flexcan define KernelPackage/can-usb-8dev
TITLE:=Support for Freescale FLEXCAN based chips TITLE:=8 devices USB2CAN interface
KCONFIG:=CONFIG_CAN_FLEXCAN KCONFIG:=CONFIG_CAN_8DEV_USB
FILES:=$(LINUX_DIR)/drivers/net/can/flexcan.ko FILES:=$(LINUX_DIR)/drivers/net/can/usb/usb_8dev.ko
AUTOLOAD:=$(call AutoProbe,flexcan) AUTOLOAD:=$(call AutoProbe,usb_8dev)
$(call AddDepends/can,@TARGET_imx6) $(call AddDepends/can,+kmod-usb-core)
endef endef
define KernelPackage/can-flexcan/description define KernelPackage/can-usb-8dev/description
Freescale FLEXCAN CAN bus controller implementation. This driver supports the USB2CAN interface
from 8 devices (http://www.8devices.com).
endef endef
$(eval $(call KernelPackage,can-flexcan)) $(eval $(call KernelPackage,can-usb-8dev))
define KernelPackage/can-usb-ems define KernelPackage/can-usb-ems
@ -207,71 +260,19 @@ endef
$(eval $(call KernelPackage,can-usb-peak)) $(eval $(call KernelPackage,can-usb-peak))
define KernelPackage/can-usb-8dev define KernelPackage/can-vcan
TITLE:=8 devices USB2CAN interface TITLE:=Virtual Local CAN Interface (vcan)
KCONFIG:=CONFIG_CAN_8DEV_USB KCONFIG:=CONFIG_CAN_VCAN
FILES:=$(LINUX_DIR)/drivers/net/can/usb/usb_8dev.ko FILES:=$(LINUX_DIR)/drivers/net/can/vcan.ko
AUTOLOAD:=$(call AutoProbe,usb_8dev) AUTOLOAD:=$(call AutoProbe,vcan)
$(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)
$(call AddDepends/can) $(call AddDepends/can)
endef endef
define KernelPackage/can-c-can/description define KernelPackage/can-vcan/description
This driver adds generic support for the C_CAN/D_CAN chips. Similar to the network loopback devices, vcan offers a
virtual local CAN interface.
endef 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) DEPENDS+= $(1)
endef 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 define KernelPackage/crypto-aead
TITLE:=CryptoAPI AEAD support TITLE:=CryptoAPI AEAD support
KCONFIG:= \ KCONFIG:= \
@ -33,108 +46,136 @@ endef
$(eval $(call KernelPackage,crypto-aead)) $(eval $(call KernelPackage,crypto-aead))
define KernelPackage/crypto-hash define KernelPackage/crypto-authenc
TITLE:=CryptoAPI hash support TITLE:=Combined mode wrapper for IPsec
KCONFIG:=CONFIG_CRYPTO_HASH DEPENDS:=+kmod-crypto-manager +!LINUX_3_18:kmod-crypto-null
FILES:=$(LINUX_DIR)/crypto/crypto_hash.ko KCONFIG:=CONFIG_CRYPTO_AUTHENC
AUTOLOAD:=$(call AutoLoad,02,crypto_hash,1) FILES:=$(LINUX_DIR)/crypto/authenc.ko
AUTOLOAD:=$(call AutoLoad,09,authenc)
$(call AddDepends/crypto) $(call AddDepends/crypto)
endef endef
$(eval $(call KernelPackage,crypto-hash)) $(eval $(call KernelPackage,crypto-authenc))
define KernelPackage/crypto-manager define KernelPackage/crypto-cbc
TITLE:=CryptoAPI algorithm manager TITLE:=Cipher Block Chaining CryptoAPI module
DEPENDS:=+kmod-crypto-aead +kmod-crypto-hash +kmod-crypto-pcompress DEPENDS:=+kmod-crypto-manager
KCONFIG:= \ KCONFIG:=CONFIG_CRYPTO_CBC
CONFIG_CRYPTO_MANAGER \ FILES:=$(LINUX_DIR)/crypto/cbc.ko
CONFIG_CRYPTO_MANAGER2 AUTOLOAD:=$(call AutoLoad,09,cbc)
FILES:=$(LINUX_DIR)/crypto/cryptomgr.ko
AUTOLOAD:=$(call AutoLoad,09,cryptomgr,1)
$(call AddDepends/crypto) $(call AddDepends/crypto)
endef endef
$(eval $(call KernelPackage,crypto-manager)) $(eval $(call KernelPackage,crypto-cbc))
define KernelPackage/crypto-pcompress define KernelPackage/crypto-ccm
TITLE:=CryptoAPI Partial (de)compression operations TITLE:=Support for Counter with CBC MAC (CCM)
KCONFIG:= \ DEPENDS:=+kmod-crypto-ctr +kmod-crypto-aead
CONFIG_CRYPTO_PCOMP=y \ KCONFIG:=CONFIG_CRYPTO_CCM
CONFIG_CRYPTO_PCOMP2 FILES:=$(LINUX_DIR)/crypto/ccm.ko
FILES:=$(LINUX_DIR)/crypto/pcompress.ko AUTOLOAD:=$(call AutoLoad,09,ccm)
AUTOLOAD:=$(call AutoLoad,09,pcompress) $(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) $(call AddDepends/crypto)
endef endef
$(eval $(call KernelPackage,crypto-pcompress)) $(eval $(call KernelPackage,crypto-cmac))
define KernelPackage/crypto-user define KernelPackage/crypto-crc32
TITLE:=CryptoAPI userspace interface TITLE:=CRC32 CRC module
DEPENDS:=+kmod-crypto-hash +kmod-crypto-manager DEPENDS:=+kmod-crypto-hash
KCONFIG:= \ KCONFIG:=CONFIG_CRYPTO_CRC32
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
HIDDEN:=1 HIDDEN:=1
FILES:= \ FILES:=$(LINUX_DIR)/crypto/crc32_generic.ko@ge4.9
$(LINUX_DIR)/lib/asn1_decoder.ko \ AUTOLOAD:=$(call AutoLoad,04,crc32_generic@ge4.9,1)
$(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) $(call AddDepends/crypto)
endef 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 define KernelPackage/crypto-ecdh
@ -150,21 +191,6 @@ endef
$(eval $(call KernelPackage,crypto-ecdh)) $(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 define KernelPackage/crypto-echainiv
TITLE:=Encrypted Chain IV Generator TITLE:=Encrypted Chain IV Generator
DEPENDS:=+kmod-crypto-aead DEPENDS:=+kmod-crypto-aead
@ -177,51 +203,73 @@ endef
$(eval $(call KernelPackage,crypto-echainiv)) $(eval $(call KernelPackage,crypto-echainiv))
define KernelPackage/crypto-seqiv define KernelPackage/crypto-fcrypt
TITLE:=CryptoAPI Sequence Number IV Generator TITLE:=FCRYPT cipher CryptoAPI module
DEPENDS:=+kmod-crypto-aead +kmod-crypto-rng KCONFIG:=CONFIG_CRYPTO_FCRYPT
KCONFIG:=CONFIG_CRYPTO_SEQIV FILES:=$(LINUX_DIR)/crypto/fcrypt.ko
FILES:=$(LINUX_DIR)/crypto/seqiv.ko AUTOLOAD:=$(call AutoLoad,09,fcrypt)
AUTOLOAD:=$(call AutoLoad,09,seqiv)
$(call AddDepends/crypto) $(call AddDepends/crypto)
endef endef
$(eval $(call KernelPackage,crypto-seqiv)) $(eval $(call KernelPackage,crypto-fcrypt))
define KernelPackage/crypto-hw-talitos define KernelPackage/crypto-gcm
TITLE:=Freescale integrated security engine (SEC) driver TITLE:=GCM/GMAC CryptoAPI module
DEPENDS:=+kmod-crypto-manager +kmod-crypto-hash +kmod-random-core +kmod-crypto-authenc +kmod-crypto-des DEPENDS:=+kmod-crypto-ctr +kmod-crypto-ghash +kmod-crypto-null
KCONFIG:= \ KCONFIG:=CONFIG_CRYPTO_GCM
CONFIG_CRYPTO_HW=y \ FILES:=$(LINUX_DIR)/crypto/gcm.ko
CONFIG_CRYPTO_DEV_TALITOS \ AUTOLOAD:=$(call AutoLoad,09,gcm)
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) $(call AddDepends/crypto)
endef endef
$(eval $(call KernelPackage,crypto-hw-talitos)) $(eval $(call KernelPackage,crypto-gcm))
define KernelPackage/crypto-hw-padlock define KernelPackage/crypto-gf128
TITLE:=VIA PadLock ACE with AES/SHA hw crypto module TITLE:=GF(2^128) multiplication functions CryptoAPI module
DEPENDS:=+kmod-crypto-manager KCONFIG:=CONFIG_CRYPTO_GF128MUL
KCONFIG:= \ FILES:=$(LINUX_DIR)/crypto/gf128mul.ko
CONFIG_CRYPTO_HW=y \ AUTOLOAD:=$(call AutoLoad,09,gf128mul)
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) $(call AddDepends/crypto)
endef 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 define KernelPackage/crypto-hw-ccp
@ -272,93 +320,54 @@ endef
$(eval $(call KernelPackage,crypto-hw-hifn-795x)) $(eval $(call KernelPackage,crypto-hw-hifn-795x))
define KernelPackage/crypto-authenc define KernelPackage/crypto-hw-padlock
TITLE:=Combined mode wrapper for IPsec TITLE:=VIA PadLock ACE with AES/SHA hw crypto module
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
DEPENDS:=+kmod-crypto-manager DEPENDS:=+kmod-crypto-manager
KCONFIG:=CONFIG_CRYPTO_CBC KCONFIG:= \
FILES:=$(LINUX_DIR)/crypto/cbc.ko CONFIG_CRYPTO_HW=y \
AUTOLOAD:=$(call AutoLoad,09,cbc) 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) $(call AddDepends/crypto)
endef endef
$(eval $(call KernelPackage,crypto-cbc)) $(eval $(call KernelPackage,crypto-hw-padlock))
define KernelPackage/crypto-ctr
TITLE:=Counter Mode CryptoAPI module define KernelPackage/crypto-hw-talitos
DEPENDS:=+kmod-crypto-manager +kmod-crypto-seqiv +kmod-crypto-iv TITLE:=Freescale integrated security engine (SEC) driver
KCONFIG:=CONFIG_CRYPTO_CTR DEPENDS:=+kmod-crypto-manager +kmod-crypto-hash +kmod-random-core +kmod-crypto-authenc +kmod-crypto-des
FILES:=$(LINUX_DIR)/crypto/ctr.ko KCONFIG:= \
AUTOLOAD:=$(call AutoLoad,09,ctr) 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) $(call AddDepends/crypto)
endef 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-iv
TITLE:=CryptoAPI initialization vectors
define KernelPackage/crypto-pcbc DEPENDS:=+kmod-crypto-manager +kmod-crypto-rng +kmod-crypto-wq
TITLE:=Propagating Cipher Block Chaining CryptoAPI module KCONFIG:= CONFIG_CRYPTO_BLKCIPHER2
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
HIDDEN:=1 HIDDEN:=1
FILES:=$(LINUX_DIR)/crypto/crc32_generic.ko@ge4.9 FILES:= \
AUTOLOAD:=$(call AutoLoad,04,crc32_generic@ge4.9,1) $(LINUX_DIR)/crypto/eseqiv.ko@lt4.9 \
$(LINUX_DIR)/crypto/chainiv.ko@lt4.9
AUTOLOAD:=$(call AutoLoad,10,eseqiv chainiv)
$(call AddDepends/crypto) $(call AddDepends/crypto)
endef endef
$(eval $(call KernelPackage,crypto-crc32)) $(eval $(call KernelPackage,crypto-iv))
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-kpp define KernelPackage/crypto-kpp
@ -373,120 +382,18 @@ endef
$(eval $(call KernelPackage,crypto-kpp)) $(eval $(call KernelPackage,crypto-kpp))
define KernelPackage/crypto-acompress define KernelPackage/crypto-manager
TITLE:=Asynchronous Compression operations TITLE:=CryptoAPI algorithm manager
HIDDEN:=1 DEPENDS:=+kmod-crypto-aead +kmod-crypto-hash +kmod-crypto-pcompress
KCONFIG:=CONFIG_CRYPTO_ACOMP2 KCONFIG:= \
FILES:=$(LINUX_DIR)/crypto/crypto_acompress.ko CONFIG_CRYPTO_MANAGER \
AUTOLOAD:=$(call AutoLoad,09,crypto_acompress) CONFIG_CRYPTO_MANAGER2
FILES:=$(LINUX_DIR)/crypto/cryptomgr.ko
AUTOLOAD:=$(call AutoLoad,09,cryptomgr,1)
$(call AddDepends/crypto) $(call AddDepends/crypto)
endef endef
$(eval $(call KernelPackage,crypto-acompress)) $(eval $(call KernelPackage,crypto-manager))
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))
define KernelPackage/crypto-md4 define KernelPackage/crypto-md4
@ -532,6 +439,138 @@ endef
$(eval $(call KernelPackage,crypto-michael-mic)) $(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 define KernelPackage/crypto-sha1
TITLE:=SHA1 digest CryptoAPI module TITLE:=SHA1 digest CryptoAPI module
DEPENDS:=+kmod-crypto-hash DEPENDS:=+kmod-crypto-hash
@ -607,62 +646,6 @@ endef
$(eval $(call KernelPackage,crypto-sha512)) $(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 define KernelPackage/crypto-test
TITLE:=Test CryptoAPI module TITLE:=Test CryptoAPI module
KCONFIG:=CONFIG_CRYPTO_TEST KCONFIG:=CONFIG_CRYPTO_TEST
@ -673,6 +656,34 @@ endef
$(eval $(call KernelPackage,crypto-test)) $(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 define KernelPackage/crypto-xts
TITLE:=XTS cipher CryptoAPI module TITLE:=XTS cipher CryptoAPI module
DEPENDS:=+kmod-crypto-gf128 +kmod-crypto-manager DEPENDS:=+kmod-crypto-gf128 +kmod-crypto-manager
@ -683,3 +694,4 @@ define KernelPackage/crypto-xts
endef endef
$(eval $(call KernelPackage,crypto-xts)) $(eval $(call KernelPackage,crypto-xts))

View File

@ -22,6 +22,22 @@ endef
$(eval $(call KernelPackage,firewire)) $(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 define KernelPackage/firewire-ohci
SUBMENU:=$(FIREWIRE_MENU) SUBMENU:=$(FIREWIRE_MENU)
TITLE:=Support for OHCI-1394 controllers TITLE:=Support for OHCI-1394 controllers
@ -58,17 +74,3 @@ endef
$(eval $(call KernelPackage,firewire-sbp2)) $(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 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 define KernelPackage/fs-9p
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=Plan 9 Resource Sharing Support TITLE:=Plan 9 Resource Sharing Support
@ -45,6 +26,7 @@ endef
$(eval $(call KernelPackage,fs-9p)) $(eval $(call KernelPackage,fs-9p))
define KernelPackage/fs-afs define KernelPackage/fs-afs
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=Andrew FileSystem client TITLE:=Andrew FileSystem client
@ -142,6 +124,7 @@ endef
$(eval $(call KernelPackage,fs-configfs)) $(eval $(call KernelPackage,fs-configfs))
define KernelPackage/fs-cramfs define KernelPackage/fs-cramfs
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=Compressed RAM/ROM filesystem support TITLE:=Compressed RAM/ROM filesystem support
@ -158,6 +141,23 @@ endef
$(eval $(call KernelPackage,fs-cramfs)) $(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 define KernelPackage/fs-exportfs
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=exportfs kernel server support TITLE:=exportfs kernel server support
@ -220,19 +220,24 @@ endef
$(eval $(call KernelPackage,fs-f2fs)) $(eval $(call KernelPackage,fs-f2fs))
define KernelPackage/fuse define KernelPackage/fs-fscache
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=FUSE (Filesystem in Userspace) support TITLE:=General filesystem local cache manager
KCONFIG:= CONFIG_FUSE_FS DEPENDS:=
FILES:=$(LINUX_DIR)/fs/fuse/fuse.ko KCONFIG:=\
AUTOLOAD:=$(call AutoLoad,80,fuse) 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 endef
define KernelPackage/fuse/description $(eval $(call KernelPackage,fs-fscache))
Kernel module for userspace filesystem support
endef
$(eval $(call KernelPackage,fuse))
define KernelPackage/fs-hfs define KernelPackage/fs-hfs
@ -284,6 +289,21 @@ endef
$(eval $(call KernelPackage,fs-isofs)) $(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 define KernelPackage/fs-minix
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=Minix filesystem support TITLE:=Minix filesystem support
@ -335,37 +355,6 @@ endef
$(eval $(call KernelPackage,fs-nfs)) $(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 define KernelPackage/fs-nfs-common
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
@ -413,6 +402,40 @@ endef
$(eval $(call KernelPackage,fs-nfs-common-rpcsec)) $(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 define KernelPackage/fs-nfsd
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=NFS kernel server support TITLE:=NFS kernel server support
@ -532,17 +555,18 @@ endef
$(eval $(call KernelPackage,fs-xfs)) $(eval $(call KernelPackage,fs-xfs))
define KernelPackage/fs-jfs define KernelPackage/fuse
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=JFS filesystem support TITLE:=FUSE (Filesystem in Userspace) support
KCONFIG:=CONFIG_JFS_FS KCONFIG:= CONFIG_FUSE_FS
FILES:=$(LINUX_DIR)/fs/jfs/jfs.ko FILES:=$(LINUX_DIR)/fs/fuse/fuse.ko
AUTOLOAD:=$(call AutoLoad,30,jfs,1) AUTOLOAD:=$(call AutoLoad,80,fuse)
$(call AddDepends/nls)
endef endef
define KernelPackage/fs-jfs/description define KernelPackage/fuse/description
Kernel module for JFS support Kernel module for userspace filesystem support
endef endef
$(eval $(call KernelPackage,fs-jfs)) $(eval $(call KernelPackage,fuse))

View File

@ -29,21 +29,6 @@ define AddDepends/hwmon
DEPENDS:=kmod-hwmon-core $(1) DEPENDS:=kmod-hwmon-core $(1)
endef 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 define KernelPackage/hwmon-adt7410
TITLE:=ADT7410 monitoring support TITLE:=ADT7410 monitoring support
KCONFIG:= \ KCONFIG:= \
@ -78,6 +63,21 @@ endef
$(eval $(call KernelPackage,hwmon-adt7475)) $(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 define KernelPackage/hwmon-ina209
TITLE:=INA209 monitoring support TITLE:=INA209 monitoring support
KCONFIG:=CONFIG_SENSORS_INA209 KCONFIG:=CONFIG_SENSORS_INA209
@ -93,21 +93,6 @@ endef
$(eval $(call KernelPackage,hwmon-ina209)) $(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 define KernelPackage/hwmon-ina2xx
TITLE:=INA2XX monitoring support TITLE:=INA2XX monitoring support
KCONFIG:=CONFIG_SENSORS_INA2XX KCONFIG:=CONFIG_SENSORS_INA2XX
@ -137,6 +122,7 @@ endef
$(eval $(call KernelPackage,hwmon-it87)) $(eval $(call KernelPackage,hwmon-it87))
define KernelPackage/hwmon-lm63 define KernelPackage/hwmon-lm63
TITLE:=LM63/64 monitoring support TITLE:=LM63/64 monitoring support
KCONFIG:=CONFIG_SENSORS_LM63 KCONFIG:=CONFIG_SENSORS_LM63
@ -211,6 +197,7 @@ endef
$(eval $(call KernelPackage,hwmon-lm90)) $(eval $(call KernelPackage,hwmon-lm90))
define KernelPackage/hwmon-lm92 define KernelPackage/hwmon-lm92
TITLE:=LM92 monitoring support TITLE:=LM92 monitoring support
KCONFIG:=CONFIG_SENSORS_LM92 KCONFIG:=CONFIG_SENSORS_LM92
@ -225,6 +212,7 @@ endef
$(eval $(call KernelPackage,hwmon-lm92)) $(eval $(call KernelPackage,hwmon-lm92))
define KernelPackage/hwmon-lm95241 define KernelPackage/hwmon-lm95241
TITLE:=LM95241 monitoring support TITLE:=LM95241 monitoring support
KCONFIG:=CONFIG_SENSORS_LM95241 KCONFIG:=CONFIG_SENSORS_LM95241
@ -239,6 +227,7 @@ endef
$(eval $(call KernelPackage,hwmon-lm95241)) $(eval $(call KernelPackage,hwmon-lm95241))
define KernelPackage/hwmon-ltc4151 define KernelPackage/hwmon-ltc4151
TITLE:=LTC4151 monitoring support TITLE:=LTC4151 monitoring support
KCONFIG:=CONFIG_SENSORS_LTC4151 KCONFIG:=CONFIG_SENSORS_LTC4151
@ -253,19 +242,51 @@ endef
$(eval $(call KernelPackage,hwmon-ltc4151)) $(eval $(call KernelPackage,hwmon-ltc4151))
define KernelPackage/hwmon-sht21
TITLE:=Sensiron SHT21 and compat. monitoring support define KernelPackage/hwmon-nct6775
KCONFIG:=CONFIG_SENSORS_SHT21 TITLE:=NCT6106D/6775F/6776F/6779D/6791D/6792D/6793D and compatibles monitoring support
FILES:=$(LINUX_DIR)/drivers/hwmon/sht21.ko KCONFIG:=CONFIG_SENSORS_NCT6775
AUTOLOAD:=$(call AutoProbe,sht21) FILES:=$(LINUX_DIR)/drivers/hwmon/nct6775.ko
$(call AddDepends/hwmon,+kmod-i2c-core) AUTOLOAD:=$(call AutoProbe,nct6775)
$(call AddDepends/hwmon,@PCI_SUPPORT @TARGET_x86 +kmod-hwmon-vid)
endef endef
define KernelPackage/hwmon-sht21/description define KernelPackage/hwmon-nct6775/description
Kernel module for Sensirion SHT21 and SHT25 temperature and humidity sensors chip Kernel module for NCT6106D/6775F/6776F/6779D/6791D/6792D/6793D thermal monitor chip
endef 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 define KernelPackage/hwmon-sch5627
TITLE:=SMSC SCH5627 monitoring support TITLE:=SMSC SCH5627 monitoring support
@ -283,66 +304,20 @@ endef
$(eval $(call KernelPackage,hwmon-sch5627)) $(eval $(call KernelPackage,hwmon-sch5627))
define KernelPackage/hwmon-pc87360
TITLE:=PC87360 monitoring support define KernelPackage/hwmon-sht21
KCONFIG:=CONFIG_SENSORS_PC87360 TITLE:=Sensiron SHT21 and compat. monitoring support
FILES:=$(LINUX_DIR)/drivers/hwmon/pc87360.ko KCONFIG:=CONFIG_SENSORS_SHT21
AUTOLOAD:=$(call AutoProbe,pc87360) FILES:=$(LINUX_DIR)/drivers/hwmon/sht21.ko
$(call AddDepends/hwmon,@TARGET_x86 +kmod-hwmon-vid) AUTOLOAD:=$(call AutoProbe,sht21)
$(call AddDepends/hwmon,+kmod-i2c-core)
endef endef
define KernelPackage/hwmon-pc87360/description define KernelPackage/hwmon-sht21/description
Kernel modules for PC87360 chips Kernel module for Sensirion SHT21 and SHT25 temperature and humidity sensors chip
endef endef
$(eval $(call KernelPackage,hwmon-pc87360)) $(eval $(call KernelPackage,hwmon-sht21))
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))
define KernelPackage/hwmon-tmp102 define KernelPackage/hwmon-tmp102
@ -390,31 +365,65 @@ endef
$(eval $(call KernelPackage,hwmon-tmp421)) $(eval $(call KernelPackage,hwmon-tmp421))
define KernelPackage/hwmon-gpiofan define KernelPackage/hwmon-vid
TITLE:=Generic GPIO FAN support TITLE:=VID/VRM/VRD voltage conversion module.
KCONFIG:=CONFIG_SENSORS_GPIO_FAN KCONFIG:=CONFIG_HWMON_VID
FILES:=$(LINUX_DIR)/drivers/hwmon/gpio-fan.ko FILES:=$(LINUX_DIR)/drivers/hwmon/hwmon-vid.ko
AUTOLOAD:=$(call AutoLoad,60,gpio-fan) AUTOLOAD:=$(call AutoLoad,41,hwmon-vid)
$(call AddDepends/hwmon,+kmod-i2c-core +PACKAGE_kmod-thermal:kmod-thermal) $(call AddDepends/hwmon,)
endef endef
define KernelPackage/hwmon-gpiofan/description define KernelPackage/hwmon-vid/description
Kernel module for GPIO controlled FANs VID/VRM/VRD voltage conversion module for hardware monitoring
endef endef
$(eval $(call KernelPackage,hwmon-gpiofan)) $(eval $(call KernelPackage,hwmon-vid))
define KernelPackage/hwmon-pwmfan define KernelPackage/hwmon-w83627ehf
TITLE:=Generic PWM FAN support TITLE:=Winbond W83627EHF/EHG/DHG/UHG, W83667HG monitoring support
KCONFIG:=CONFIG_SENSORS_PWM_FAN KCONFIG:=CONFIG_SENSORS_W83627EHF
FILES:=$(LINUX_DIR)/drivers/hwmon/pwm-fan.ko FILES:=$(LINUX_DIR)/drivers/hwmon/w83627ehf.ko
AUTOLOAD:=$(call AutoLoad,60,pwm-fan) AUTOLOAD:=$(call AutoProbe,w83627ehf)
$(call AddDepends/hwmon, +PACKAGE_kmod-thermal:kmod-thermal) $(call AddDepends/hwmon,@TARGET_x86 +kmod-hwmon-vid)
endef endef
define KernelPackage/hwmon-pwmfan/description define KernelPackage/hwmon-w83627ehf/description
Kernel module for PWM controlled FANs 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 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:drivers/i2c/i2c-core \
CONFIG_I2C_CHARDEV:drivers/i2c/i2c-dev 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 define KernelPackage/i2c-core
$(call i2c_defaults,$(I2C_CORE_MODULES),51) $(call i2c_defaults,$(I2C_CORE_MODULES),51)
TITLE:=I2C support TITLE:=I2C support
@ -104,43 +100,6 @@ endef
$(eval $(call KernelPackage,i2c-gpio)) $(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:= \ I2C_I801_MODULES:= \
CONFIG_I2C_I801:drivers/i2c/busses/i2c-i801 CONFIG_I2C_I801:drivers/i2c/busses/i2c-i801
@ -167,22 +126,6 @@ endef
$(eval $(call KernelPackage,i2c-i801)) $(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:= \ I2C_MUX_MODULES:= \
CONFIG_I2C_MUX:drivers/i2c/i2c-mux CONFIG_I2C_MUX:drivers/i2c/i2c-mux
@ -213,6 +156,22 @@ endef
$(eval $(call KernelPackage,i2c-mux-gpio)) $(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:= \ I2C_MUX_PCA954x_MODULES:= \
CONFIG_I2C_MUX_PCA954x:drivers/i2c/muxes/i2c-mux-pca954x CONFIG_I2C_MUX_PCA954x:drivers/i2c/muxes/i2c-mux-pca954x
@ -229,17 +188,58 @@ endef
$(eval $(call KernelPackage,i2c-mux-pca954x)) $(eval $(call KernelPackage,i2c-mux-pca954x))
I2C_MUX_PCA9541_MODULES:= \ I2C_PIIX4_MODULES:= \
CONFIG_I2C_MUX_PCA9541:drivers/i2c/muxes/i2c-mux-pca9541 CONFIG_I2C_PIIX4:drivers/i2c/busses/i2c-piix4
define KernelPackage/i2c-mux-pca9541 define KernelPackage/i2c-piix4
$(call i2c_defaults,$(I2C_MUX_PCA9541_MODULES),51) $(call i2c_defaults,$(I2C_PIIX4_MODULES),59)
TITLE:=Philips PCA9541 I2C mux/switches TITLE:=Intel PIIX4 and compatible I2C interfaces
DEPENDS:=kmod-i2c-mux DEPENDS:=@PCI_SUPPORT @TARGET_x86 kmod-i2c-core
endef endef
define KernelPackage/i2c-mux-pca9541/description define KernelPackage/i2c-piix4/description
Kernel modules for PCA9541 I2C bus mux/switching devices 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 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)) $(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 define KernelPackage/iio-dht11
SUBMENU:=$(IIO_MENU) SUBMENU:=$(IIO_MENU)

View File

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

View File

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

View File

@ -11,13 +11,39 @@ NF_KMOD:=1
include $(INCLUDE_DIR)/netfilter.mk 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 define KernelPackage/nf-ipt
SUBMENU:=$(NF_MENU) SUBMENU:=$(NF_MENU)
TITLE:=Iptables core TITLE:=Iptables core
KCONFIG:= \ KCONFIG:=$(KCONFIG_NF_IPT)
CONFIG_NETFILTER=y \
CONFIG_NETFILTER_ADVANCED=y \
$(KCONFIG_NF_IPT)
FILES:=$(foreach mod,$(NF_IPT-m),$(LINUX_DIR)/net/$(mod).ko) FILES:=$(foreach mod,$(NF_IPT-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_IPT-m))) AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_IPT-m)))
endef endef
@ -31,7 +57,7 @@ define KernelPackage/nf-ipt6
KCONFIG:=$(KCONFIG_NF_IPT6) KCONFIG:=$(KCONFIG_NF_IPT6)
FILES:=$(foreach mod,$(NF_IPT6-m),$(LINUX_DIR)/net/$(mod).ko) FILES:=$(foreach mod,$(NF_IPT6-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_IPT6-m))) AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_IPT6-m)))
DEPENDS:=+kmod-nf-ipt +kmod-nf-conntrack6 DEPENDS:=+kmod-nf-ipt
endef endef
$(eval $(call KernelPackage,nf-ipt6)) $(eval $(call KernelPackage,nf-ipt6))
@ -44,7 +70,7 @@ define KernelPackage/ipt-core
KCONFIG:=$(KCONFIG_IPT_CORE) KCONFIG:=$(KCONFIG_IPT_CORE)
FILES:=$(foreach mod,$(IPT_CORE-m),$(LINUX_DIR)/net/$(mod).ko) FILES:=$(foreach mod,$(IPT_CORE-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CORE-m))) AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CORE-m)))
DEPENDS:=+kmod-nf-ipt DEPENDS:=+kmod-nf-reject +kmod-nf-ipt
endef endef
define KernelPackage/ipt-core/description define KernelPackage/ipt-core/description
@ -68,6 +94,7 @@ define KernelPackage/nf-conntrack
KCONFIG:= \ KCONFIG:= \
CONFIG_NETFILTER=y \ CONFIG_NETFILTER=y \
CONFIG_NETFILTER_ADVANCED=y \ CONFIG_NETFILTER_ADVANCED=y \
CONFIG_NF_CONNTRACK_MARK=y \
CONFIG_NF_CONNTRACK_ZONES=y \ CONFIG_NF_CONNTRACK_ZONES=y \
$(KCONFIG_NF_CONNTRACK) $(KCONFIG_NF_CONNTRACK)
FILES:=$(foreach mod,$(NF_CONNTRACK-m),$(LINUX_DIR)/net/$(mod).ko) FILES:=$(foreach mod,$(NF_CONNTRACK-m),$(LINUX_DIR)/net/$(mod).ko)
@ -93,7 +120,7 @@ define KernelPackage/nf-nat
SUBMENU:=$(NF_MENU) SUBMENU:=$(NF_MENU)
TITLE:=Netfilter NAT TITLE:=Netfilter NAT
KCONFIG:=$(KCONFIG_NF_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) FILES:=$(foreach mod,$(NF_NAT-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NAT-m))) AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NAT-m)))
endef endef
@ -105,7 +132,7 @@ define KernelPackage/nf-nat6
SUBMENU:=$(NF_MENU) SUBMENU:=$(NF_MENU)
TITLE:=Netfilter IPV6-NAT TITLE:=Netfilter IPV6-NAT
KCONFIG:=$(KCONFIG_NF_NAT6) 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) FILES:=$(foreach mod,$(NF_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NAT6-m))) AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_NAT6-m)))
endef endef
@ -113,6 +140,23 @@ endef
$(eval $(call KernelPackage,nf-nat6)) $(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 define AddDepends/ipt
SUBMENU:=$(NF_MENU) SUBMENU:=$(NF_MENU)
DEPENDS+= +kmod-ipt-core $(1) DEPENDS+= +kmod-ipt-core $(1)
@ -160,6 +204,21 @@ endef
$(eval $(call KernelPackage,ipt-conntrack-extra)) $(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 define KernelPackage/ipt-filter
TITLE:=Modules for packet content inspection TITLE:=Modules for packet content inspection
@ -178,6 +237,17 @@ endef
$(eval $(call KernelPackage,ipt-filter)) $(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 define KernelPackage/ipt-ipopt
TITLE:=Modules for matching/changing IP packet options TITLE:=Modules for matching/changing IP packet options
KCONFIG:=$(KCONFIG_IPT_IPOPT) KCONFIG:=$(KCONFIG_IPT_IPOPT)
@ -446,10 +516,9 @@ $(eval $(call KernelPackage,ipt-nfqueue))
define KernelPackage/ipt-debug define KernelPackage/ipt-debug
TITLE:=Module for debugging/development TITLE:=Module for debugging/development
KCONFIG:=$(KCONFIG_IPT_DEBUG) KCONFIG:=$(KCONFIG_IPT_DEBUG)
DEFAULT:=n
FILES:=$(foreach mod,$(IPT_DEBUG-m),$(LINUX_DIR)/net/$(mod).ko) FILES:=$(foreach mod,$(IPT_DEBUG-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_DEBUG-m))) AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_DEBUG-m)))
$(call AddDepends/ipt) $(call AddDepends/ipt,+kmod-ipt-raw +IPV6:kmod-ipt-raw6)
endef endef
define KernelPackage/ipt-debug/description define KernelPackage/ipt-debug/description
@ -477,7 +546,7 @@ $(eval $(call KernelPackage,ipt-led))
define KernelPackage/ipt-tproxy define KernelPackage/ipt-tproxy
TITLE:=Transparent proxying support TITLE:=Transparent proxying support
DEPENDS+=+kmod-ipt-conntrack +IPV6:kmod-ip6tables DEPENDS+=+kmod-ipt-conntrack +IPV6:kmod-nf-conntrack6 +IPV6:kmod-ip6tables
KCONFIG:= \ KCONFIG:= \
CONFIG_NETFILTER_XT_MATCH_SOCKET \ CONFIG_NETFILTER_XT_MATCH_SOCKET \
CONFIG_NETFILTER_XT_TARGET_TPROXY CONFIG_NETFILTER_XT_TARGET_TPROXY
@ -636,7 +705,7 @@ $(eval $(call KernelPackage,ipt-extra))
define KernelPackage/ip6tables define KernelPackage/ip6tables
SUBMENU:=$(NF_MENU) SUBMENU:=$(NF_MENU)
TITLE:=IPv6 modules 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) KCONFIG:=$(KCONFIG_IPT_IPV6)
FILES:=$(foreach mod,$(IPT_IPV6-m),$(LINUX_DIR)/net/$(mod).ko) FILES:=$(foreach mod,$(IPT_IPV6-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoLoad,42,$(notdir $(IPT_IPV6-m))) AUTOLOAD:=$(call AutoLoad,42,$(notdir $(IPT_IPV6-m)))
@ -875,16 +944,12 @@ $(eval $(call KernelPackage,ipt-rpfilter))
define KernelPackage/nft-core define KernelPackage/nft-core
SUBMENU:=$(NF_MENU) SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables support 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) FILES:=$(foreach mod,$(NFT_CORE-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_CORE-m))) AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_CORE-m)))
KCONFIG:= \ KCONFIG:= \
CONFIG_NETFILTER=y \
CONFIG_NETFILTER_ADVANCED=y \
CONFIG_NFT_COMPAT=n \ CONFIG_NFT_COMPAT=n \
CONFIG_NFT_QUEUE=n \ CONFIG_NFT_QUEUE=n \
CONFIG_NF_TABLES_ARP=n \
CONFIG_NF_TABLES_BRIDGE=n \
$(KCONFIG_NFT_CORE) $(KCONFIG_NFT_CORE)
endef endef
@ -895,10 +960,36 @@ endef
$(eval $(call KernelPackage,nft-core)) $(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 define KernelPackage/nft-nat
SUBMENU:=$(NF_MENU) SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables NAT support 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) FILES:=$(foreach mod,$(NFT_NAT-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT-m))) AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT-m)))
KCONFIG:=$(KCONFIG_NFT_NAT) KCONFIG:=$(KCONFIG_NFT_NAT)
@ -907,14 +998,33 @@ endef
$(eval $(call KernelPackage,nft-nat)) $(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 define KernelPackage/nft-nat6
SUBMENU:=$(NF_MENU) SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables IPv6-NAT support 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) FILES:=$(foreach mod,$(NFT_NAT6-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT6-m))) AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_NAT6-m)))
KCONFIG:=$(KCONFIG_NFT_NAT6) KCONFIG:=$(KCONFIG_NFT_NAT6)
endef endef
$(eval $(call KernelPackage,nft-nat6)) $(eval $(call KernelPackage,nft-nat6))

View File

@ -42,28 +42,6 @@ endef
$(eval $(call KernelPackage,atmtcp)) $(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 define KernelPackage/bonding
SUBMENU:=$(NETWORK_SUPPORT_MENU) SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Ethernet bonding driver TITLE:=Ethernet bonding driver
@ -127,6 +105,29 @@ endef
$(eval $(call KernelPackage,vxlan)) $(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 define KernelPackage/capi
SUBMENU:=$(NETWORK_SUPPORT_MENU) SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=CAPI (ISDN) Support TITLE:=CAPI (ISDN) Support
@ -434,6 +435,28 @@ endef
$(eval $(call KernelPackage,sit)) $(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 define KernelPackage/ip6-tunnel
SUBMENU:=$(NETWORK_SUPPORT_MENU) SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=IP-in-IPv6 tunnelling TITLE:=IP-in-IPv6 tunnelling
@ -729,6 +752,7 @@ define KernelPackage/sched
CONFIG_NET_SCH_DSMARK \ CONFIG_NET_SCH_DSMARK \
CONFIG_NET_SCH_FIFO \ CONFIG_NET_SCH_FIFO \
CONFIG_NET_SCH_GRED \ CONFIG_NET_SCH_GRED \
CONFIG_NET_SCH_MULTIQ \
CONFIG_NET_SCH_PRIO \ CONFIG_NET_SCH_PRIO \
CONFIG_NET_SCH_RED \ CONFIG_NET_SCH_RED \
CONFIG_NET_SCH_SFQ \ CONFIG_NET_SCH_SFQ \

View File

@ -55,6 +55,7 @@ define KernelPackage/bluetooth
CONFIG_BT_HCIUART_BCM=n \ CONFIG_BT_HCIUART_BCM=n \
CONFIG_BT_HCIUART_INTEL=n \ CONFIG_BT_HCIUART_INTEL=n \
CONFIG_BT_HCIUART_H4 \ CONFIG_BT_HCIUART_H4 \
CONFIG_BT_HCIUART_NOKIA=n \
CONFIG_BT_HIDP \ CONFIG_BT_HIDP \
CONFIG_HID_SUPPORT=y CONFIG_HID_SUPPORT=y
$(call AddDepends/rfkill) $(call AddDepends/rfkill)
@ -226,7 +227,7 @@ $(eval $(call KernelPackage,gpio-dev))
define KernelPackage/gpio-mcp23s08 define KernelPackage/gpio-mcp23s08
SUBMENU:=$(OTHER_MENU) SUBMENU:=$(OTHER_MENU)
TITLE:=Microchip MCP23xxx I/O expander 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 KCONFIG:=CONFIG_GPIO_MCP23S08
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-mcp23s08.ko FILES:=$(LINUX_DIR)/drivers/gpio/gpio-mcp23s08.ko
AUTOLOAD:=$(call AutoLoad,40,gpio-mcp23s08) AUTOLOAD:=$(call AutoLoad,40,gpio-mcp23s08)
@ -285,18 +286,53 @@ endef
$(eval $(call KernelPackage,gpio-pcf857x)) $(eval $(call KernelPackage,gpio-pcf857x))
define KernelPackage/lp define KernelPackage/ppdev
SUBMENU:=$(OTHER_MENU) SUBMENU:=$(OTHER_MENU)
TITLE:=Parallel port and line printer support TITLE:=Parallel port support
KCONFIG:= \ KCONFIG:= \
CONFIG_PARPORT \ CONFIG_PARPORT \
CONFIG_PRINTER \
CONFIG_PPDEV CONFIG_PPDEV
FILES:= \ FILES:= \
$(LINUX_DIR)/drivers/parport/parport.ko \ $(LINUX_DIR)/drivers/parport/parport.ko \
$(LINUX_DIR)/drivers/char/lp.ko \
$(LINUX_DIR)/drivers/char/ppdev.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 endef
$(eval $(call KernelPackage,lp)) $(eval $(call KernelPackage,lp))
@ -619,6 +655,22 @@ endef
$(eval $(call KernelPackage,mtdoops)) $(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 define KernelPackage/serial-8250
SUBMENU:=$(OTHER_MENU) SUBMENU:=$(OTHER_MENU)
TITLE:=8250 UARTs TITLE:=8250 UARTs

View File

@ -135,6 +135,22 @@ endef
$(eval $(call KernelPackage,sound-seq)) $(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 define KernelPackage/sound-i8x0
TITLE:=Intel/SiS/nVidia/AMD/ALi AC97 Controller TITLE:=Intel/SiS/nVidia/AMD/ALi AC97 Controller
DEPENDS:=+kmod-ac97 DEPENDS:=+kmod-ac97

View File

@ -43,22 +43,6 @@ endef
$(eval $(call KernelPackage,spi-bitbang)) $(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 define KernelPackage/spi-gpio
SUBMENU:=$(SPI_MENU) SUBMENU:=$(SPI_MENU)
TITLE:=GPIO-based bitbanging SPI Master TITLE:=GPIO-based bitbanging SPI Master

View File

@ -71,6 +71,25 @@ endef
$(eval $(call KernelPackage,usb-phy-nop)) $(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 define KernelPackage/usb-gadget
TITLE:=USB Gadget support TITLE:=USB Gadget support
KCONFIG:=CONFIG_USB_GADGET KCONFIG:=CONFIG_USB_GADGET
@ -187,6 +206,7 @@ $(eval $(call KernelPackage,usb-gadget-mass-storage))
define KernelPackage/usb-uhci define KernelPackage/usb-uhci
TITLE:=Support for UHCI controllers TITLE:=Support for UHCI controllers
KCONFIG:= \ KCONFIG:= \
CONFIG_USB_PCI=y \
CONFIG_USB_UHCI_ALT \ CONFIG_USB_UHCI_ALT \
CONFIG_USB_UHCI_HCD CONFIG_USB_UHCI_HCD
FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
@ -236,7 +256,9 @@ $(eval $(call KernelPackage,usb-ohci,1))
define KernelPackage/usb-ohci-pci define KernelPackage/usb-ohci-pci
TITLE:=Support for PCI OHCI controllers TITLE:=Support for PCI OHCI controllers
DEPENDS:=@PCI_SUPPORT +kmod-usb-ohci 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 FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-pci.ko
AUTOLOAD:=$(call AutoLoad,51,ohci-pci,1) AUTOLOAD:=$(call AutoLoad,51,ohci-pci,1)
$(call AddDepends/usb) $(call AddDepends/usb)
@ -324,7 +346,9 @@ $(eval $(call KernelPackage,usb2))
define KernelPackage/usb2-pci define KernelPackage/usb2-pci
TITLE:=Support for PCI USB2 controllers TITLE:=Support for PCI USB2 controllers
DEPENDS:=@PCI_SUPPORT +kmod-usb2 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 FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-pci.ko
AUTOLOAD:=$(call AutoLoad,42,ehci-pci,1) AUTOLOAD:=$(call AutoLoad,42,ehci-pci,1)
$(call AddDepends/usb) $(call AddDepends/usb)
@ -341,6 +365,7 @@ define KernelPackage/usb-dwc2
TITLE:=DWC2 USB controller driver TITLE:=DWC2 USB controller driver
DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget
KCONFIG:= \ KCONFIG:= \
CONFIG_USB_PCI=y \
CONFIG_USB_DWC2 \ CONFIG_USB_DWC2 \
CONFIG_USB_DWC2_PCI \ CONFIG_USB_DWC2_PCI \
CONFIG_USB_DWC2_PLATFORM \ CONFIG_USB_DWC2_PLATFORM \
@ -385,6 +410,23 @@ endef
$(eval $(call KernelPackage,usb-dwc3)) $(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 define KernelPackage/usb-acm
TITLE:=Support for modems/isdn controllers TITLE:=Support for modems/isdn controllers
KCONFIG:=CONFIG_USB_ACM KCONFIG:=CONFIG_USB_ACM
@ -1499,6 +1541,7 @@ define KernelPackage/usb3
+TARGET_bcm53xx:kmod-usb-bcma \ +TARGET_bcm53xx:kmod-usb-bcma \
+TARGET_bcm53xx:kmod-phy-bcm-ns-usb3 +TARGET_bcm53xx:kmod-phy-bcm-ns-usb3
KCONFIG:= \ KCONFIG:= \
CONFIG_USB_PCI=y \
CONFIG_USB_XHCI_HCD \ CONFIG_USB_XHCI_HCD \
CONFIG_USB_XHCI_PCI \ CONFIG_USB_XHCI_PCI \
CONFIG_USB_XHCI_PLATFORM \ CONFIG_USB_XHCI_PLATFORM \
@ -1520,7 +1563,9 @@ $(eval $(call KernelPackage,usb3))
define KernelPackage/usb-net2280 define KernelPackage/usb-net2280
TITLE:=Support for NetChip 228x PCI USB peripheral controller 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 DEPENDS:=@PCI_SUPPORT +kmod-usb-gadget
FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc/net2280.ko FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc/net2280.ko
AUTOLOAD:=$(call AutoLoad,46,net2280) 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 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 \ KCONFIG:=CONFIG_DRM_IMX \
CONFIG_DRM_FBDEV_EMULATION=y \ CONFIG_DRM_FBDEV_EMULATION=y \
CONFIG_DRM_FBDEV_OVERALLOC=100 \
CONFIG_IMX_IPUV3_CORE \ CONFIG_IMX_IPUV3_CORE \
CONFIG_RESET_CONTROLLER=y \ CONFIG_RESET_CONTROLLER=y \
CONFIG_DRM_IMX_IPUV3 \ CONFIG_DRM_IMX_IPUV3 \
@ -223,7 +224,6 @@ define KernelPackage/drm-imx
FILES:= \ FILES:= \
$(LINUX_DIR)/drivers/gpu/drm/imx/imxdrm.ko \ $(LINUX_DIR)/drivers/gpu/drm/imx/imxdrm.ko \
$(LINUX_DIR)/drivers/gpu/ipu-v3/imx-ipu-v3.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/syscopyarea.ko \
$(LINUX_DIR)/drivers/video/fbdev/core/sysfillrect.ko \ $(LINUX_DIR)/drivers/video/fbdev/core/sysfillrect.ko \
$(LINUX_DIR)/drivers/video/fbdev/core/sysimgblt.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 TITLE:=Freescale i.MX HDMI DRM support
DEPENDS:=+kmod-sound-core kmod-drm-imx DEPENDS:=+kmod-sound-core kmod-drm-imx
KCONFIG:=CONFIG_DRM_IMX_HDMI \ KCONFIG:=CONFIG_DRM_IMX_HDMI \
CONFIG_DRM_DW_HDMI_AHB_AUDIO CONFIG_DRM_DW_HDMI_AHB_AUDIO \
CONFIG_DRM_DW_HDMI_I2S_AUDIO
FILES:= \ FILES:= \
$(LINUX_DIR)/drivers/gpu/drm/bridge/dw-hdmi.ko \ $(LINUX_DIR)/drivers/gpu/drm/bridge/synopsys/dw-hdmi.ko \
$(LINUX_DIR)/drivers/gpu/drm/bridge/dw-hdmi-ahb-audio.ko \ $(LINUX_DIR)/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.ko \
$(LINUX_DIR)/drivers/gpu/drm/imx/dw_hdmi-imx.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) AUTOLOAD:=$(call AutoLoad,05,dw-hdmi dw-hdmi-ahb-audio.ko dw_hdmi-imx)
endef endef
@ -267,7 +268,9 @@ define KernelPackage/drm-imx-ldb
CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=n \ CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=n \
CONFIG_DRM_PANEL_LG_LG4573=n \ CONFIG_DRM_PANEL_LG_LG4573=n \
CONFIG_DRM_PANEL_LD9040=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 \ FILES:=$(LINUX_DIR)/drivers/gpu/drm/imx/imx-ldb.ko \
$(LINUX_DIR)/drivers/gpu/drm/panel/panel-simple.ko $(LINUX_DIR)/drivers/gpu/drm/panel/panel-simple.ko
AUTOLOAD:=$(call AutoLoad,05,imx-ldb) AUTOLOAD:=$(call AutoLoad,05,imx-ldb)

View File

@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=mac80211 PKG_NAME:=mac80211
PKG_VERSION:=2017-11-01 PKG_VERSION:=2017-11-01
PKG_RELEASE:=2 PKG_RELEASE:=4
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
PKG_HASH:=8437ab7886b988c8152e7a4db30b7f41009e49a3b2cb863edd05da1ecd7eb05a 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) += ATH9K
config-$(call config_package,ath9k-common) += ATH9K_COMMON config-$(call config_package,ath9k-common) += ATH9K_COMMON
config-$(CONFIG_TARGET_ar71xx) += ATH9K_AHB 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_PCI) += ATH9K_PCI
config-$(CONFIG_ATH_USER_REGD) += ATH_USER_REGD config-$(CONFIG_ATH_USER_REGD) += ATH_USER_REGD
config-$(CONFIG_ATH9K_SUPPORT_PCOEM) += ATH9K_PCOEM 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_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
$(INSTALL_BIN) ./files/lib/netifd/wireless/mac80211.sh $(1)/lib/netifd/wireless $(INSTALL_BIN) ./files/lib/netifd/wireless/mac80211.sh $(1)/lib/netifd/wireless
$(INSTALL_DIR) $(1)/etc/hotplug.d/ieee80211 $(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 endef
define KernelPackage/ipw2100/install define KernelPackage/ipw2100/install

View File

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

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