aboutsummaryrefslogtreecommitdiffstats
path: root/config
Commit message (Collapse)AuthorAgeFilesLines
* build: add CycloneDX SBOM JSON supportPetr Štetiar2023-11-021-0/+8
| | | | | | | | | | | | | | CycloneDX is an open source standard developed by the OWASP foundation. It supports a wide range of development ecosystems, a comprehensive set of use cases, and focuses on automation, ease of adoption, and progressive enhancement of SBOMs (Software Bill Of Materials) throughout build pipelines. So lets add support for CycloneDX SBOM for packages and images manifests. Signed-off-by: Petr Štetiar <ynezz@true.cz> (cherry picked from commit d604a07225c5c82b942cd3374cc113ad676a2519)
* kernel: default ARM_PMU on for armsr/armv8Mathew McBride2023-08-191-0/+1
| | | | | | | | | CONFIG_ARM_PMU (Arm Performance Monitor Unit) is a requirement to use KVM (virtualization) from Linux 5.11+, as the virtualised guest has virtualized PMU access. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 76d4a7c84a97a5555b1962ddb9fc694b7e1f6ba8)
* kernel: modules: add xdp-sockets-diag supportTianling Shen2023-08-191-0/+6
| | | | | | | Support for PF_XDP sockets monitoring interface used by the ss tool. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org> (cherry picked from commit 06e64f9b364abe15c27bf0a7225fcac740819668)
* config: change references from armvirt to armsrMathew McBride2023-06-131-5/+5
| | | | | | | | armvirt target has been renamed to armsr (Arm SystemReady), so the config defaults need to be changed as well. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 40ce6a7920a8f56d07228795a526576a8762aead)
* build: enable vmdk/vmware images for arm64 targetMathew McBride2023-06-131-1/+1
| | | | | | | This is useful for VMware's ARM64 products, e.g Fusion for M1/ARM Macs. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit f899e0e024825861e129b0e8fbfb31c1d614273a)
* build: use 128MiB as the boot/kernel partition size on armvirt targetMathew McBride2023-06-131-0/+1
| | | | | | | | | | | | | | | | | The nominal partition type for EFI boot partitions is FAT32, which has a minimum size of 32MiB on a 512-byte-sector block device. To ensure that the boot partition is created as FAT32 set a size well above this minimum. A useful discussion about EFI partition sizes can be found here: https://superuser.com/questions/1310927/what-is-the-absolute-minimum-size-a-uefi-system-partition-can-be I have found 128MiB works pretty consistently across both tools (mkfs.fat) and firmwares (EDKII) Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 71e56b2ff1e8aeb3205784c0b5f8ca6ba0fbbf63)
* grub2: enable EFI for armvirtMathew McBride2023-06-131-4/+5
| | | | | | | | | | | | This adds a separate package for EFI on Arm SystemReady compatible machines. 32-bit Arm UEFI is supported as well. It is very similar to x86-64 EFI setup, without the need for BIOS backward compatibility and slightly different default modules. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 8f29b1573ddf3b7ed7c53bee1a7d55e574806205)
* kernel: Set CONFIG_FRAME_WARN depending on targetHauke Mehrtens2023-06-021-0/+11
| | | | | | | | | This set the CONFIG_FRAME_WARN option depending on some target settings. It will use the default from the upstream kernel and not the hard coded value of 1024 now. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit 16a20512d852f6ecebf8c57cd7fa2572a06a9d0b)
* Revert "kernel: add MODULE_ALLOW_BTF_MISMATCH option"Daniel Golle2023-05-241-10/+0
| | | | | | | This reverts commit c07038da27cefa5a93e433909b9aca594386ddc1. MODULE_ALLOW_BTF_MISMATCH is not available in Linux 5.15. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: add MODULE_ALLOW_BTF_MISMATCH optionTianling Shen2023-05-181-0/+10
| | | | | | | | | | | BTF mismatch can occur for a separately-built module even when the ABI is otherwise compatible and nothing else would prevent successfully loading. Add a new config to control how mismatches are handled. By default, preserve the current behavior of refusing to load the module. If MODULE_ALLOW_BTF_MISMATCH is enabled, load the module but ignore its BTF information. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* treewide: cleanup kernel symbol referencesNick Hainke2023-05-121-1/+0
| | | | | | | | | | | | | | | We only use 5.15 kernel. So remove all those unnecessary symbols referencing 5.10 or 5.15 kernel. Can be found with: git grep -E 'LINUX_5_1(0|5)' Note that we remove the dependency from "sound-soc-chipdip-dac" instead of removing the complete kernel package. The 5.15 version bump forgot to delete the "@LINUX_5_10" dependency. The kernel package is still needed in 5.15 kernel. Signed-off-by: Nick Hainke <vincent@systemli.org>
* kernel: improve handling of CONFIG_IO_URINGTony Ambardar2023-05-031-1/+2
| | | | | | | | | | | | | | | | | | | | | | Kernel setting CONFIG_IO_URING supports high-performance I/O for file access and servers, generally for more performant platforms, and adds ~45 KB to kernel sizes. The need for this on less "beefy" devices is questionable, as is the size cost considering many platforms have kernel size limits which require tricky repartitioning if outgrown. The size cost is also large relative to the ~180 KB bump expected between major OpenWRT kernel releases. No OpenWrt packages have hard dependencies on this; samba4 and mariadb can take advantage if available (+KERNEL_IO_URING:liburing) but otherwise build and work fine. Since CONFIG_IO_URING is already managed via the KERNEL_IO_URING setting in Config-kernel.in (default Y), remove it from those target configs which unconditionally enable it, and update the defaults to enable it conditionally only on more powerful 64-bit x86 and arm devices. It may still be manually enabled as needed for high-performance custom builds. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* build: add a config knob to enable LTO for all packagesAndre Heider2023-03-211-0/+7
| | | | | | This enables LTO for all packages which haven't opted-out. Signed-off-by: Andre Heider <a.heider@gmail.com>
* build: add a config knob to enable gc-sections for all packagesAndre Heider2023-03-211-0/+8
| | | | | | | This enables the linker's garbage collection for all packages which haven't opted-out. Signed-off-by: Andre Heider <a.heider@gmail.com>
* kernel: Add CONFIG_KERNEL_HARDLOCKUP_DETECTORHauke Mehrtens2023-03-191-0/+12
| | | | | | | Make it possible to change the kernel configuration option CONFIG_HARDLOCKUP_DETECTOR from OpenWrt. Signed-off-by: Hauke Mehrtens <hmehrtens@maxlinear.com>
* kernel: set default for KERNEL_BPF_KPROBE_OVERRIDEStijn Tintel2023-03-051-0/+1
| | | | | | | | | Without the default value this still causes a missing symbol. Disable by default as it depends on FUNCTION_ERROR_INJECTION, which is disabled in the generic config and we don't have a build symbol to enable that. Fixes: 500c37c56ff6 ("kernel: add missing symbol") Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* build: fix for sourcing targets image config installed via feedsPrasun Maiti2023-02-261-0/+1
| | | | | | | | Sourcing of image/Config.in will not happen When a target is installed from target/linux/feeds/ Signed-off-by: Prasun Maiti <prasunmaiti87@gmail.com> Acked-by: Petr Štetiar <ynezz@true.cz>
* kernel: set default values for ARM low level debugging symbolsRobert Marko2023-02-081-0/+6
| | | | | | | | | | | | | | | | | | | | | Set default values for KERNEL_DEBUG_LL and KERNEL_DEBUG_LL_UART_NONE again as both of these symbols are non visible if KERNEL_EARLY_PRINTK is not selected and KConfig wont write their value to .config. This usually is the intended behaviour, but in OpenWrt we are relying on the KConfig to set these and disable the debug console settings that multiple targets like mvebu have set in their kernel config. This was the behaviour before removing all of the "default n" settings as KConfig by default considers symbols disabled but they are not visible anymore and thus their value is not set in .config and build system then later does not override the values from target kernel config. So, to restore the behaviour to the previous one lets a default value for KERNEL_DEBUG_LL and KERNEL_DEBUG_LL_UART_NONE. Fixes: 8bc72ea7be39 ("treewide: strip useless default n Kconfig lines") Tested-by: Georgi Valkov <gvalkov@gmail.com> Signed-off-by: Robert Marko <robimarko@gmail.com>
* treewide: strip useless `default n` Kconfig linesTony Butler2023-02-034-67/+0
| | | | | | | | | | Kconfig docs say: > The default value deliberately defaults to 'n' in order to avoid > bloating the build. Apply this rule everywhere, to avoid more cloning of bad examples Signed-off-by: Tony Butler <spudz76@gmail.com>
* kernel: make it possible for packages to select page pool supportFelix Fietkau2023-01-291-0/+7
| | | | | | Will be used by the next mt76 update Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: fix incomplete initramfs compression optionsTony Butler2023-01-171-2/+0
| | | | | | | | | | | | Requires: tools/lz4, tools/lzop complete the wiring so that these options work: * `CONFIG_KERNEL_INITRAMFS_COMPRESSION_LZO` * `CONFIG_KERNEL_INITRAMFS_COMPRESSION_LZ4` Signed-off-by: Tony Butler <spudz76@gmail.com> [remove blocking dependencies for separate ramdisk, fix lzop options] Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ipq807x: add Qualcomm Atheros IPQ807x targetRobert Marko2023-01-161-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qualcomm Atheros IPQ807x is a modern WiSoC featuring: * Quad Core ARMv8 Cortex A-53 * @ 2.2 GHz (IPQ8072A/4A/6A/8A) Codename Hawkeye * @ 1.4 GHz (IPQ8070A/1A) Codename Acorn * Dual Band simultaneaous IEEE 802.11ax * 5G: 8x8/80 or 4x4/160MHz (IPQ8074A/8A) * 5G: 4x4/80 or 2x2/160MHz (IPQ8071A/2A/6A) * 5G: 2x2/80MHz (IPQ8070A) * 2G: 4x4/40MHz (IPQ8072A/4A/6A/8A) * 2G: 2x2/40MHz (IPQ8070A/1A) * 1x PSGMII via QCA8072/5 (Max 5x 1GbE ports) * 2x SGMII/USXGMII (1/2.5/5/10 GbE) on Hawkeye * 2x SGMII/USXGMII (1/2.5/5 GbE) on Acorn * DDR3L/4 32/16 bit up to 2400MT/s * SDIO 3.0/SD card 3.0/eMMC 5.1 * Dual USB 3.0 * One PCIe Gen2.1 and one PCIe Gen3.0 port (Single lane) * Parallel NAND (ONFI)/LCD * 6x QUP BLSP SPI/I2C/UART * I2S, PCM, and TDMA * HW PWM * 1.8V configurable GPIO * Companion PMP8074 PMIC via SPMI (GPIOS, RTC etc) Note that only v2 SOC models aka the ones ending with A suffix are supported, v1 models do not comply to the final 802.11ax and have lower clocks, lack the Gen3 PCIe etc. SoC itself has two UBI32 cores for the NSS offloading system, however currently no offloading is supported. Signed-off-by: Robert Marko <robimarko@gmail.com>
* build: images: squashfs: add help, fix descriptionTony Butler2022-12-061-1/+4
| | | | | | | | | | | | | | | add help text for `TARGET_SQUASHFS_BLOCK_SIZE` to match the only valid settings accepted by `mksquashfs4` ("block size not power of two or not between 4096 and 1Mbyte") thus for this setting in "KB", the set: `4, 8, 16, 32, 64, 128, 256, 512, 1024` replace `squashfs-lzma` with `squashfs` in the description for `TARGET_ROOTFS_SQUASHFS` because it has various compressions, and not just lzma as it did in the past cosmetic change with no functional effect Signed-off-by: Tony Butler <spudz76@gmail.com>
* build: config: cleanup impossible dependency logicTony Butler2022-12-032-2/+1
| | | | | | | | | some config `depends on` lines contained outdated kernel version checks that can no longer happen and had become non-operational; clean them up cosmetic change with no functional effect Signed-off-by: Tony Butler <spudz76@gmail.com>
* Revert "build: fix for sourcing target image config a when target is being ↵Christian Marangi2022-11-091-1/+0
| | | | | | | | | | replaced" This reverts commit ce1346a8fc0ce9640a4ecbc37bc1686a25c1165d. Seems to cause buildbot compilation to fail and require more testing. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* build: fix for sourcing target image config a when target is being replacedPrasun Maiti2022-11-091-0/+1
| | | | | | | Sourcing of image/Config.in will not happen When a target is installed from target/linux/feeds/ Signed-off-by: Prasun Maiti <prasunmaiti87@gmail.com>
* scripts/download.pl: make the download tool configurableChristian Marangi2022-10-201-0/+14
| | | | | | | | | | | | | | | | | | | | | | Introduce a new option in the "Advanced configuration options" to configure a custom download tool. By declaring a string in "Use custom download tool" an user can force what command to use to download package. With the string empty the default tool used is curl, with wget as a fallback if not available. download.pl supports 3 tools officially aria2c, curl and wget. If one of the tool is used in this config, download.pl will use the default args to make use of them. If the provided string is different than aria2c, curl or wget, the command is used as is and the download url will be appended at the end of such command. While at it also tweak the tool selection logic and chose the tool only once when the script is called and move aria2c specific variables in the relevant section. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* tools: add option BUILD_ALL_HOST_TOOLS to compile all host toolsChristian Marangi2022-09-301-0/+7
| | | | | | | | Add option to compile all host tools even if not needed. This can be useful to prepare a universal precompiled host tools archive to use in another buildroot and speedup compilation. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* kernel: disable wireless extensions only when neededFelix Fietkau2022-09-221-0/+16
| | | | | | They are only needed by a few very old drivers Signed-off-by: Felix Fietkau <nbd@nbd.name>
* toolchain: Select USE_SSTRIP with external musl toolchainHauke Mehrtens2022-09-121-1/+0
| | | | | | | | | When we use the internal toolchain USE_SSTRIP will be selected by default for musl libc and USE_STRIP when glibc is used. Do the same when an external toolchain is used. USE_GLIBC will also be set for external toolchain builds based on the EXTERNAL_TOOLCHAIN_LIBC_USE_GLIBC setting. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* scripts: always check certificatesJosh Roys2022-09-101-0/+4
| | | | | | | | | | | | | | | Remove flags from wget and curl instructing them to ignore bad server certificates. Although other mechanisms can protect against malicious modifications of downloads, other vectors of attack may be available to an adversary. TLS certificate verification can be disabled by turning oof the "Enable TLS certificate verification during package download" option enabled by default in the "Global build settings" in "make menuconfig" Signed-off-by: Josh Roys <roysjosh@gmail.com> [ add additional info on how to disable this option ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* build: always set CONFIG_IPV6Thibaut VARÈNE2022-08-201-5/+1
| | | | | | | | | | | | | | | Disabling this build tunable breaks build and seems unrealistically likely to be fixed. This patch sets the related CONFIG to always true and removes the config prompt, keeping the change minimal, and, should !CONFIG_IPV6 ever be fixed, easy to revert. Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org> Acked-by: Stijn Tintel <stijn@linux-ipv6.be> Acked-by: Paul Spooren <mail@aparcar.org> Acked-by: Josef.Schlehofer <pepe.schlehofer@gmail.com> Acked-by: Jo-Philipp Wich <jo@mein.io>
* kernel: add KERNEL_DEBUG_VIRTUALFlorian Fainelli2022-07-071-0/+8
| | | | | | | | This option allows turning on CONFIG_DEBUG_VIRTUAL which is useful to debug incorrect uses of the virtual to physical and physical to virtual translations functions. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* bcm53xx: use -falign-functions=32 for kernel compilationRafał Miłecki2022-07-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Northstar SoCs have pretty small CPU caches and their performance is heavily affected by cache hits & misses. It means that all kind of random code changes can affect performance as they often reorganize (change alignment & possibly reorder) kernel symbols. It was discussed in ARM / net mailinglists: 1. ARM router NAT performance affected by random/unrelated commits [1] [2] 2. Optimizing kernel compilation / alignments for network performance [3] [4] It seems that -falign-functions can be used as a partial workaround. It doesn't solve all cases (e.g. documented watchdog one [5]) but it surely helps with many of them. A complete long term solution may be PGO (profile-guided optimization) but it isn't available at this point. [1] https://lkml.org/lkml/2019/5/21/349 [2] https://www.spinics.net/lists/linux-block/msg40624.html [3] https://lore.kernel.org/linux-arm-kernel/066fc320-dc04-11a4-476e-b0d11f3b17e6@gmail.com/T/ [4] https://www.spinics.net/lists/netdev/msg816103.html [5] http://lists.openwrt.org/pipermail/openwrt-devel/2022-July/038989.html Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: support setting extra CFLAGS for kernel compilationRafał Miłecki2022-06-201-0/+4
| | | | | | They may be used e.g. to optimize kernel size or performance. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: add KERNEL_BPF_EVENTS config optionStijn Tintel2022-05-181-1/+11
| | | | | | | | This is required to use BPF maps of type BPF_MAP_TYPE_PERF_EVENT_ARRAY for sending data from BPF programs to user-space for post-processing or logging. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* build: add option KERNEL_DEBUG_INFO_BTFTony Ambardar2022-05-181-0/+14
| | | | | | | | | | | | | | | | | | | | Generate BTF (BPF Type Format) information from DWARF debug info. This is embedded in the kernel and exported via sysfs as /sys/kernel/btf/vmlinux. BTF data enhances kernel portability and introspection for BPF programs. Selecting this also enables the dwarves host package which provides the pahole tool used for BTF encoding. Test using: "bpftool btf dump file /sys/kernel/btf/vmlinux format c" This needs to depend on KERNEL_DEBUG_INFO_REDUCED not being set, otherwise we can enable both KERNEL_DEBUG_INFO_BTF and KERNEL_DEBUG_INFO_REDUCED, which will result in undefined behaviour. Signed-off-by: Tony Ambardar <itugrok@yahoo.com> Signed-off-by: Felix Fietkau <nbd@nbd.name> [split DEBUG_INFO_REDUCED into separate commit, add dependency] Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: add DEBUG_INFO_REDUCED config optionStijn Tintel2022-05-181-0/+14
| | | | | | | | Add DEBUG_INFO_REDUCED as a kernel config option and remove it from the kernel configs. This is in preparation of the upcoming option to enable BTF typeinfo, which is incompatible with DEBUG_INFO_REDUCED. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: add missing dependency to KERNEL_RPI_AXIPERFStijn Tintel2022-05-181-1/+1
| | | | | | | | This symbol is added by the bcm27xx target patches so it should depend on that target. Fixes: efd9463dcfe2 ("kernel: add missing symbol for bcm27xx") Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: add missing symbol for bcm27xxStijn Tintel2022-05-171-0/+5
| | | | | | | | | When KERNEL_PERF_EVENTS is enabled in OpenWrt, the RPI_AXIPERF symbol is exposed. Add a build option for it to fix build failures with KERNEL_PERF_EVENTS enabled. Fixes: 20ea6adbf199 ("bcm27xx: add support for linux v5.15") Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: add missing symbolStijn Tintel2022-04-021-0/+5
| | | | | | | Enabling KERNEL_KPROBES exposes KERNEL_BPF_KPROBE_OVERRIDE. Add a build option for it to fix build failures with KERNEL_KPROBES enabled. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* config: build: cleanup whitespace issuePetr Štetiar2022-02-191-1/+1
| | | | | | In order to have it tidy. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: add kmod-vrfMarek Behún2022-02-011-0/+10
| | | | | | | | | | | Add option to compile kmod-vrf, support for Virtual Routing and Forwarding (Lite). This module depends on NET_L3_MASTER_DEV, which is a boolean kernel option, so we need to create a configuration option also for this, and make kmod-vrf depend on it. Signed-off-by: Marek Behún <kabel@kernel.org>
* uml: make use of 'rootfs-part' featureDaniel Golle2022-01-231-1/+1
| | | | | | | Use 'rootfs-part' feature instead of referencing the TARGET_uml in Config-images.in. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* sunxi: make use of 'rootfs-part' featureDaniel Golle2022-01-231-1/+1
| | | | | | | Use 'rootfs-part' feature instead of referencing the TARGET_sunxi in Config-images.in. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* omap: make use of 'rootfs-part' featureDaniel Golle2022-01-231-1/+1
| | | | | | | Use 'rootfs-part' feature instead of referencing the TARGET_omap in Config-images.in. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: enhance multicast routing supportMatthew Hagan2022-01-081-2/+22
| | | | | | | | | | | | | | Certain utilities, such as smcroute [1], require additional multicast routing options to be enabled, otherwise they will not function correctly. Enable these relevant dependancies when IPv4 and/or IPv6 multicast routing are enabled. [1] https://github.com/troglobit/smcroute/blob/master/README.md#linux-requirements This increases the uncompressed kernel size on MIPS 24kc by 8KBytes and the compressed kernel size by 1.8KBytes. Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
* x86: added support to generate VHDX imagesOldřich Jedlička2021-12-051-0/+6
| | | | | | | Added support to generate dynamic-sized VHDX images for Hyper-V. Compile-tested on x86 and run-tested on Windows 10 21H2 (Hyper-V). Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
* kernel: remove non-existent config symbolsJianhui Zhao2021-11-201-5/+0
| | | | | | | The crashlog patch as not ported to kernel 5.4. Fixes: 4e0c54bc5bc8 ("kernel: add support for kernel 5.4") Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
* kernel: add missing symbolStijn Tintel2021-11-151-0/+13
| | | | | | | Enabling KERNEL_FTRACE exposes the HIST_TRIGGERS triggers symbol. Add a build option for it to fix build failures with KERNEL_FTRACE enabled. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>