diff options
Diffstat (limited to 'package/kernel/bpf-headers')
| -rw-r--r-- | package/kernel/bpf-headers/Makefile | 113 | ||||
| -rw-r--r-- | package/kernel/bpf-headers/files/stdarg.h | 19 | ||||
| -rw-r--r-- | package/kernel/bpf-headers/patches/100-support_hz_300.patch | 20 | ||||
| -rw-r--r-- | package/kernel/bpf-headers/src/include/generated/bounds.h | 14 |
4 files changed, 166 insertions, 0 deletions
diff --git a/package/kernel/bpf-headers/Makefile b/package/kernel/bpf-headers/Makefile new file mode 100644 index 00000000000..5efd2e1cf0f --- /dev/null +++ b/package/kernel/bpf-headers/Makefile @@ -0,0 +1,113 @@ +# +# Copyright (C) 2006-2009 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +include $(TOPDIR)/rules.mk + +override QUILT:= +override HOST_QUILT:= + +include $(INCLUDE_DIR)/kernel.mk + + +PKG_NAME:=linux +PKG_PATCHVER:=5.15 +# Manually include kernel version and hash from kernel details file +include $(INCLUDE_DIR)/kernel-$(PKG_PATCHVER) + +PKG_VERSION:=$(PKG_PATCHVER)$(strip $(LINUX_VERSION-$(PKG_PATCHVER))) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_URL:=@KERNEL/linux/kernel/v$(word 1,$(subst ., ,$(PKG_PATCHVER))).x +PKG_HASH:=$(LINUX_KERNEL_HASH-$(strip $(PKG_VERSION))) +PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/bpf-headers/$(PKG_NAME)-$(PKG_VERSION) + +GENERIC_PLATFORM_DIR := $(CURDIR)/../../../target/linux/generic +GENERIC_BACKPORT_DIR := $(GENERIC_PLATFORM_DIR)/backport$(if $(wildcard $(GENERIC_PLATFORM_DIR)/backport-$(PKG_PATCHVER)),-$(PKG_PATCHVER)) +GENERIC_PATCH_DIR := $(GENERIC_PLATFORM_DIR)/pending$(if $(wildcard $(GENERIC_PLATFORM_DIR)/pending-$(PKG_PATCHVER)),-$(PKG_PATCHVER)) +GENERIC_HACK_DIR := $(GENERIC_PLATFORM_DIR)/hack$(if $(wildcard $(GENERIC_PLATFORM_DIR)/hack-$(PKG_PATCHVER)),-$(PKG_PATCHVER)) +GENERIC_FILES_DIR := $(foreach dir,$(wildcard $(GENERIC_PLATFORM_DIR)/files $(GENERIC_PLATFORM_DIR)/files-$(PKG_PATCHVER)),"$(dir)") +PATCH_DIR := $(CURDIR)/patches +FILES_DIR := + +REAL_LINUX_DIR := $(LINUX_DIR) +LINUX_DIR := $(PKG_BUILD_DIR) + +include $(INCLUDE_DIR)/bpf.mk +include $(INCLUDE_DIR)/package.mk + +define Package/bpf-headers + SECTION:=kernel + CATEGORY:=Kernel modules + TITLE:=eBPF kernel headers + BUILDONLY:=1 + HIDDEN:=1 +endef + +PKG_CONFIG_PATH:= + +export HOST_EXTRACFLAGS=-I$(STAGING_DIR_HOST)/include + +KERNEL_MAKE := \ + $(MAKE) -C $(PKG_BUILD_DIR) \ + ARCH=$(BPF_KARCH) \ + CROSS_COMPILE=$(BPF_ARCH)-linux- \ + LLVM=1 CC="$(CLANG)" LD="$(TARGET_CROSS)ld" \ + HOSTCC="$(HOSTCC)" \ + HOSTCXX="$(HOSTCXX)" \ + KBUILD_HOSTLDLIBS="-L$(STAGING_DIR_HOST)/lib" \ + CONFIG_SHELL="$(BASH)" \ + INSTALL_HDR_PATH="$(PKG_BUILD_DIR)/user_headers" + +define Build/Patch + $(Kernel/Patch/Default) +endef + +BPF_DOC = $(PKG_BUILD_DIR)/scripts/bpf_doc.py + +define Build/Configure/64 + echo 'CONFIG_CPU_MIPS64_R2=y' >> $(PKG_BUILD_DIR)/.config + echo 'CONFIG_64BIT=y' >> $(PKG_BUILD_DIR)/.config +endef + +define Build/Configure + grep -vE 'CONFIG_(CPU_.*ENDIAN|HZ)' $(PKG_BUILD_DIR)/arch/mips/configs/generic_defconfig > $(PKG_BUILD_DIR)/.config + echo 'CONFIG_CPU_$(if $(CONFIG_BIG_ENDIAN),BIG,LITTLE)_ENDIAN=y' >> $(PKG_BUILD_DIR)/.config + $(if $(CONFIG_ARCH_64BIT),$(Build/Configure/64)) + grep CONFIG_HZ $(REAL_LINUX_DIR)/.config >> $(PKG_BUILD_DIR)/.config + yes '' | $(KERNEL_MAKE) oldconfig + grep 'CONFIG_HZ=' $(REAL_LINUX_DIR)/.config | \ + cut -d= -f2 | \ + bc -q $(LINUX_DIR)/kernel/time/timeconst.bc \ + > $(LINUX_DIR)/include/generated/timeconst.h + $(BPF_DOC) --header \ + --file $(LINUX_DIR)/tools/include/uapi/linux/bpf.h \ + > $(PKG_BUILD_DIR)/tools/lib/bpf/bpf_helper_defs.h +endef + +define Build/Compile + $(KERNEL_MAKE) archprepare headers_install +endef + +define Build/InstallDev + mkdir -p $(1)/bpf-headers/arch $(1)/bpf-headers/tools + $(CP) \ + $(PKG_BUILD_DIR)/arch/$(BPF_KARCH) \ + $(1)/bpf-headers/arch/ + $(CP) \ + $(PKG_BUILD_DIR)/tools/lib \ + $(PKG_BUILD_DIR)/tools/testing \ + $(1)/bpf-headers/tools/ + $(CP) \ + $(PKG_BUILD_DIR)/include \ + $(PKG_BUILD_DIR)/samples \ + $(PKG_BUILD_DIR)/scripts \ + $(PKG_BUILD_DIR)/user_headers \ + $(1)/bpf-headers + $(CP) \ + $(CURDIR)/files/stdarg.h \ + $(1)/bpf-headers/include +endef + +$(eval $(call BuildPackage,bpf-headers)) diff --git a/package/kernel/bpf-headers/files/stdarg.h b/package/kernel/bpf-headers/files/stdarg.h new file mode 100644 index 00000000000..603057f6e75 --- /dev/null +++ b/package/kernel/bpf-headers/files/stdarg.h @@ -0,0 +1,19 @@ +#ifndef _STDARG_H +#define _STDARG_H + +#ifdef __cplusplus +extern "C" { +#endif + +typedef __builtin_va_list va_list; + +#define va_start(v,l) __builtin_va_start(v,l) +#define va_end(v) __builtin_va_end(v) +#define va_arg(v,l) __builtin_va_arg(v,l) +#define va_copy(d,s) __builtin_va_copy(d,s) + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/package/kernel/bpf-headers/patches/100-support_hz_300.patch b/package/kernel/bpf-headers/patches/100-support_hz_300.patch new file mode 100644 index 00000000000..9629958598e --- /dev/null +++ b/package/kernel/bpf-headers/patches/100-support_hz_300.patch @@ -0,0 +1,20 @@ +--- a/arch/mips/Kconfig ++++ b/arch/mips/Kconfig +@@ -2988,6 +2988,9 @@ choice + config HZ_256 + bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ + ++ config HZ_300 ++ bool "300 HZ" if SYS_SUPPORTS_ARBIT_HZ ++ + config HZ_1000 + bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ + +@@ -3039,6 +3042,7 @@ config HZ + default 128 if HZ_128 + default 250 if HZ_250 + default 256 if HZ_256 ++ default 300 if HZ_300 + default 1000 if HZ_1000 + default 1024 if HZ_1024 + diff --git a/package/kernel/bpf-headers/src/include/generated/bounds.h b/package/kernel/bpf-headers/src/include/generated/bounds.h new file mode 100644 index 00000000000..82ff01043c7 --- /dev/null +++ b/package/kernel/bpf-headers/src/include/generated/bounds.h @@ -0,0 +1,14 @@ +#ifndef __LINUX_BOUNDS_H__ +#define __LINUX_BOUNDS_H__ +/* + * DO NOT MODIFY. + * + * This file was generated by Kbuild + */ + +#define NR_PAGEFLAGS 23 /* __NR_PAGEFLAGS */ +#define MAX_NR_ZONES 4 /* __MAX_NR_ZONES */ +#define NR_CPUS_BITS 1 /* ilog2(CONFIG_NR_CPUS) */ +#define SPINLOCK_SIZE 64 /* sizeof(spinlock_t) */ + +#endif |
