aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* firmware-utils: ptgen: add SiFive-related GUID typesZoltan HERPAI2023-06-141-0/+38
| | | | | | | | | | | | | | | | | | | Add patch until it gets accepted in firmware-utils upstream. The SiFive RISC-V SoCs use two special partition types in the boot process. As a first step, the ZSBL (zero-stage bootloader) in the CPU looks for a partition with a GUID of 5B193300-FC78-40CD-8002-E86C45580B47 to load the first-stage bootloader - which in OpenWrt's case is an SPL image. The FSBL (SPL) then looks for a partition with a GUID of 2E54B353-1271-4842-806F-E436D6AF6985 to load the SSBL which is usually an u-boot. With ptgen already supporting GPT partition creation, add the required GUID types and name them accordingly to be invoked with the '-T <GPT partition type>' parameter. Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu> (cherry picked from commit 18238c442866a6ae93533e2421a6f44bc9e57ac6)
* openssl: add linux-riscv64 into the targets listZoltan HERPAI2023-06-141-1/+5
| | | | | | | | Add "linux-riscv64-openwrt" into openssl configurations to enable building on riscv64. Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu> (cherry picked from commit a0840ecd5309921b62fcf5f563180ef8f955509e)
* opensbi: add package for RISC-VZoltan HERPAI2023-06-141-0/+63
| | | | | | | | | | | | | | | OpenSBI is a form of a first-stage bootloader, which initializes certain parts of an SoC and then passes on control to the second stage bootloader i.e. an u-boot image. We're introducing the package with release v1.2, which provides SBI v0.3 and the SBI SRST extensions which helps to gracefully reboot/shutdown various HiFive-U SoCs. Tested on SiFive Unleashed and Unmatched boards. Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu> (cherry picked from commit 944b13b3ee1d89e11a0121fbeeaa465ab1e25c3c)
* generic: groundwork for RISC-VZoltan HERPAI2023-06-144-0/+41
| | | | | | | Add build infrastructure for RISC-V. Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu> (cherry picked from commit 50c05f6cd721130701cbbc77a75d2e090259c4e5)
* uboot-armsr: add support for QEMU armv7/armv8Petr Štetiar2023-06-134-6/+104
| | | | | | | | | | | | Add new package so we can use self-compiled bootloader during QEMU based testing and development. Backported fix[1] is needed for EFI boot from virtio devices. 1. https://patchwork.ozlabs.org/project/uboot/patch/20230424134946.v10.7.Ia5f5e39c882ac22b5f71c4d576941b34e868eeba@changeid/ Signed-off-by: Petr Štetiar <ynezz@true.cz> (cherry picked from commit b8e3fa2d1205213c71bc356744e9bed6cd8e69f9)
* u-boot.mk: add support for config customizationPetr Štetiar2023-06-131-0/+3
| | | | | | | | | | | | | | | | | | | | | | Make it possible to easily customize U-Boot config options via new `UBOOT_CUSTOMIZE_CONFIG` variable, so we don't need to patch config files or override config step with shell hackery. This generic approach uses `config` CLI to tweak the .config as needed, for example: UBOOT_CUSTOMIZE_CONFIG := \ --enable CMD_EFIDEBUG \ --enable CMD_BOOTMENU \ --enable AUTOBOOT \ --enable AUTOBOOT_MENU_SHOW \ --disable AUTOBOOT_KEYED \ --disable AUTOBOOT_USE_MENUKEY \ --disable BOOTMENU_DISABLE_UBOOT_CONSOLE \ --set-val BOOTDELAY 2 Signed-off-by: Petr Štetiar <ynezz@true.cz> (cherry picked from commit 186b97590b9b2f47abc535c9df0687e00e60f78e)
* CI: change armvirt reference to armsrMathew McBride2023-06-131-2/+2
| | | | | | | The armvirt target has been renamed to armsr. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 3df01b1aa40a8e783dbbebdbe6088a49aed186f8)
* scripts: qemustart: change armvirt references to armsrMathew McBride2023-06-131-9/+9
| | | | | | | | | The armvirt target has been renamed to 'armsr' (Arm SystemReady) after inclusion of EFI support. Change references (including subtargets) accordingly. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 36bf9d861082d30fdb1cf1d00f819e60b8bb84a7)
* wolfssl: change armvirt reference to armsrMathew McBride2023-06-131-2/+2
| | | | | | | armvirt target has been renamed to armsr (Arm SystemReady). Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 203deef82cdcb2c4deb01e2a4cee62a600723320)
* kernel: netdevices: change armvirt references to armsrMathew McBride2023-06-131-4/+4
| | | | | | | armvirt target has been renamed to armsr (Arm SystemReady) Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit c0bcfde58e751d674adfac51944df9e20ab978e4)
* grub2: change armvirt reference to armsrMathew McBride2023-06-131-1/+1
| | | | | | | | The armvirt target has been renamed to armsr (Arm SystemReady), so the GRUB configuration also needs to change. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 4ce7d6c8885a0e1873011f8f48b67e2ecd18e43d)
* 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)
* armsr: rename from armvirtMathew McBride2023-06-1319-34/+38
| | | | | | | | | | | | | | | | | | | Now that the armvirt target supports real hardware, not just VMs, thanks to the addition of EFI, rename it to something more appropriate. 'armsr' (Arm SystemReady) was chosen after the name of the Arm standards program. The 32 and 64 bit targets have also been renamed armv7 and armv8 respectively, to allow future profiles where required (such as armv9). See https://developer.arm.com/documentation/102858/0100/Introduction for more information. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05 version of commit 40b02a230167626def69389452f19b7109aaeac1)
* kernel: kmod-amazon-ena: move to top level netdevicesMathew McBride2023-06-132-18/+15
| | | | | | | | | The Amazon ENA network devices are also used on the AWS Arm (Graviton) instance types, so move it from the x86-only module file to the top level netdevices. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 3a7c8fd15e89237c8c9db62393d057f3a47429d2)
* armvirt: 64: disable CONFIG_SMC91XMathew McBride2023-06-131-1/+1
| | | | | | | | | | The SMC91X family is a ISA-age Ethernet controller. I'm not particularly sure what it's doing in armvirt/64, as it's unlikely there is a QEMU or real hardware configuration that exists with it. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version of commit 214e94cddf1bfd4e6141f79a70f532267fe1bea0)
* armvirt: base-files: add tty0 to inittabMathew McBride2023-06-131-0/+1
| | | | | | | tty0 is the default console for devices with screens/framebuffers. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit e41b82f619ca02f427f34ae439d4584ab441e245)
* armvirt: config changes required for framebuffer consoleMathew McBride2023-06-131-0/+13
| | | | | | | | | | These Kconfig options are required to get a screen console working with the VMware Fusion ARM (Apple Silicon) preview. They are likely to be the same for other Arm standard "desktop" hardware that may emerge. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version of 83f564f7464c34c7713b20b61007b24b217f0b88)
* armvirt: package and select Rockchip DWMAC Ethernet driverMathew McBride2023-06-132-2/+13
| | | | | | | | | | | | | For devices that implement the "rockchip,*-gmac" compatible controller, including: - RK3328 - RK3399 - RK3568 - RK3588 - PX30 Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit abbffe55ddded36d2a4d0eee6e96c742eaffbbd2)
* armvirt: 64: add Allwinner A3/A83T/A64 (sun8i family) EthernetMathew McBride2023-06-132-1/+12
| | | | | | | | Add support for the dwmac (stmmac) variant used by Allwinner Arm64 boards. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 847467a5729995a98aa34329f6fa0ed4cb79d210)
* kernel: modules: fix mdio-bus-mux descriptionLuiz Angelo Daros de Luca2023-06-131-1/+1
| | | | | | | | Simple error during copy/paste Fixes: 2dbeb607251b ("kernel: add mdio-bus-mux support") Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com> (cherry picked from commit 1e4bc13eaa3fdba897ca1721b2bfe9f2dbb30770)
* armvirt: 64: add Marvell (formerly Cavium) ThunderX series network driverMathew McBride2023-06-132-2/+20
| | | | | | | Based on working configuration supplied by Anton Antonov. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 5d2a5f739840caa6e72b5c907d355f6aaca227d4)
* armvirt: 64: Add storage support for qemu-sbsa platformAnton Antonov2023-06-131-0/+4
| | | | | | | | | | | Enable SATA support, which is used by the Server Base System Architecture reference board[1]. Signed-off-by: Anton Antonov <Anton.Antonov@arm.com> Signed-off-by: Mathew McBride <matt@traverse.com.au> [1] - https://qemu.readthedocs.io/en/latest/system/arm/sbsa.html (23.05/5.15 version of 26905c96124af10a795167509116252e9357baea)
* armvirt: 64: Add NXP i.MX 8M Mini/Nano/Quad/Plus EVK supportAnton Antonov2023-06-134-3/+155
| | | | | | | | | Also includes Advantech RSB-3720 (iMX8 Plus) support. Signed-off-by: Anton Antonov <Anton.Antonov@arm.com> Signed-off-by: Mathew McBride <matt@traverse.com.au> [Re-sort into kernel config, move network into modules] (23.05/5.15 version of commit 3efb3b801bb1393897ff58b9af3753157f28f441)
* armvirt: 64: add support for other SystemReady-compatible vendorsMathew McBride2023-06-134-3/+308
| | | | | | | | | | | | | | | | | | | | | | | | | | | These changes are to support other vendors that have SystemReady/EFI support, including: * Marvell Armada ** (This is speculative as I don't have a machine of my own to test) * Amazon Graviton (tested bare-metal and virtualized instances) * VMware (Fusion for ARM Mac preview) * NXP/Freescale (Layerscape series not already selected) * HiSilicon * Allwinner/sunxi * Rockchip (untested, options taken from arm64 defconfig) To give an idea of the hardware certified for SystemReady, see https://www.arm.com/architecture/system-architectures/systemready-certification-program/ir and https://www.arm.com/architecture/system-architectures/systemready-certification-program/es Other vendors that _should_ work include Marvell Octeon 10 and Ampere. I understand these systems should work "out of the box" in ACPI mode but may require other drivers (e.g PCIe NICs and storage controllers). Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version of c3151b6f04579a937b7cb166bbeff0d0ee539946)
* armvirt: add options and driver modules for NXP Layerscape DPAA2 platformMathew McBride2023-06-134-5/+157
| | | | | | | Tested with a Traverse Technologies Ten64 (LS1088A) board. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version of commit 54bb95f879aaa62c4253d30390e77bc8180f4ed7)
* armvirt: add 5.15 patches for NXP DPAA2 platformMathew McBride2023-06-132-0/+108
| | | | | | | | | | | | This fixes an issue with NXP's DPAA2 platforms (LS1088/2088/LX2160) * A deadlock issue when attempting to detach the SFP management from a PHY interface (e.g when trying to reboot). These issues were fixed in kernel 6.2[1], but it's version does not cleanly apply onto 5.15. Signed-off-by: Mathew McBride <matt@traverse.com.au> [1] - see patch series "Fix rtnl_mutex deadlock with DPAA2 and SFP modules", https://patchwork.kernel.org/project/netdevbpf/cover/20221129141221.872653-1-vladimir.oltean@nxp.com/
* armvirt: add ACPI supportMathew McBride2023-06-132-1/+140
| | | | | | | | | | | ACPI support is required for Arm 'SystemReady' server and workstation systems (and as an option on embedded platforms). These config changes allow OpenWrt to boot in a QEMU virtual machine with a UEFI/EDKII 'BIOS', but with no other hardware enabled yet. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version of cb3bbbf00cfb465de3333e4b84e8da9138985595)
* build: enable vmdk/vmware images for arm64 targetMathew McBride2023-06-132-2/+2
| | | | | | | 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)
* armvirt: remove model name overrideMathew McBride2023-06-131-13/+0
| | | | | | | | Now that armvirt has been expanded to boot on more generic ARM machines, remove the board and model name override. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 3d99314569a059a1d5e015086e534b3e04ff2097)
* armvirt: set kernel partition as the EFI system partitionMathew McBride2023-06-131-1/+1
| | | | | | | | U-Boot with EFI boot manager functionality will store EFI boot order data on the ESP in the ubootefi.var file. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 9a76b99c1bd781248c18d69abe570f35932db8a3)
* scripts: gen_image_generic: allow the partition types to be setMathew McBride2023-06-131-1/+3
| | | | | | | | | | The use case for this is to set the kernel partition as the EFI system partition. Versions of U-Boot with the EFI boot manager (eficonfig and efidebug commands) will store their boot order data on the ESP. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 701d774f54aef2f9fe3c584700773dcb260dd03c)
* grub2: enable EFI for armvirtMathew McBride2023-06-133-10/+41
| | | | | | | | | | | | 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)
* armvirt: update README with new image namesMathew McBride2023-06-131-8/+40
| | | | | | | | | The introduction of EFI support has changed how armvirt images are generated. The kernel and filesystem binaries can still be used as before with QEMU directly. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 97c5d317f59e071c9f691add5748a74a75665038)
* armvirt: disable LD dead code elimination on ARM32Mathew McBride2023-06-131-0/+23
| | | | | | | | | This interferes with the generation of the EFI stub section for ARM32. As this target is not size constrained, disable the dead code data elimination hack. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05 version of eb0e61285d4da910317e082de559337a305fa1dc)
* armvirt: add EFI supportMathew McBride2023-06-1311-19/+393
| | | | | | | | | | | | | | EFI booting is used on newer machines compatible with the Arm SystemReady specifications. This commit restructures armvirt into a more 'generic' target similar to x86. See https://github.com/openwrt/openwrt/pull/4956 for a history of this port. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05 version of e0f06ddc23b2503a1791ae7e97b02e2647e8a70d)
* ipq807x: image: fix eMMC flashing/recovery from within initramfsPetr Štetiar2023-06-122-2/+2
| | | | | | | | | | | | | | | | | | | | | | Having initramfs image built with same config as on buildbots: CONFIG_TARGET_MULTI_PROFILE=y CONFIG_TARGET_ALL_PROFILES=y CONFIG_TARGET_PER_DEVICE_ROOTFS=y Its currently impossible to flash/recover the device using that image as losetup is missing: root@OpenWrt:/# sysupgrade -v /tmp/openwrt-ipq807x-generic-prpl_haze-squashfs-sysupgrade.bin ... /lib/upgrade/do_stage2: line 38: losetup: not found Failed to detach all loop devices. Skip this try. So lets fix it by including the needed utils for sysupgrade in DEFAULT_PACKAGES set. Signed-off-by: Petr Štetiar <ynezz@true.cz> (cherry picked from commit 07fe8bc62a866e78e131c3f63a08554a94e931f8)
* ipq807x: add initial support for prpl Foundation Haze boardPetr Štetiar2023-06-126-1/+336
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Haze is prpl Foundation's reference board (WNC LVRP). Board info: - IPQ8072A SoC - 2 GiB RAM - 4 GiB eMMC - 8MiB SPI NOR (MX25U6435F) - 3x 1GigE ports (QCA8075) - 1x 10GigE port (AQR113C) - 1x SFP cage - WiFi 6GHz 160MHz (QCN9074) - WiFi 5GHz 80+80MHz (QCN5054) - WiFi 2.4G (QCN5024) - ARM Standard 20-pin 2.54mm/0.1" JTAG (1V8 !!!) - Bluetooth v5.0 + EDR with integrated Class 1 PA (CYW20704) - 1x M.2 B-key socket with PCIe 3.0 - 1x USB 3.0 port - UART marked J6 is 4-pin 2.54mm/0.1" connector 3V3(arrow),RX,TX,GND (115200 8N1) - Reset and WPS buttons Flashing instructions: 1. From U-Boot boot OpenWrt using initramfs image: IPQ807x# tftpboot openwrt-ipq807x-generic-prpl_haze-initramfs-uImage.itb && bootm 2. In OpenWrt running from initramfs execute sysupgrade: root@OpenWrt:/# sysupgrade -n /tmp/openwrt-ipq807x-generic-prpl_haze-squashfs-sysupgrade.bin Work in progress/known issues: * SFP feature not implemented/tested * M.2 feature not implemented/tested * Bluetooth feature not implemented/tested * 6GHz wireless should be working, but not tested * MAC address assigments for LAN interfaces Signed-off-by: Petr Štetiar <ynezz@true.cz> (cherry picked from commit 2e910039dd7170fd28641e7686c376dba6f0d8a5)
* ipq-wifi: update to version 2023-06-03Petr Štetiar2023-06-121-3/+5
| | | | | | | | | | | | | | Contains following updates: * ipq8074: update RegDB in new submitted BDF * Revert "ipq8074: update RegDB in new submitted BDF" * qcn9074: update RegDB in new submitted BDF * ipq8074: update RegDB in new submitted BDF * qca-wireless: ipq40xx: add BDFs for ZTE MF287+ * Add BDFs for prpl Foundation Haze board Signed-off-by: Petr Štetiar <ynezz@true.cz> (cherry picked from commit c2bb9f055b252f167d58540bddb9e5e9586fa986)
* ipq-wifi: bump to latest git HEADAntti Nykänen2023-06-121-3/+5
| | | | | | | | | | | 0f73d32 ipq8074: update RegDB in new submitted BDF a4cd21f ipq8074: add Compex WPQ873 BDF c888dd0 qca-wireless: ipq40xx: Add BDFs for Eero Cento 6388ba9 ipq8074: update regdb for Netgear SXK80 BDF 77775d2 ipq8074: add Netgear SXK80 Signed-off-by: Antti Nykänen <antti.nykanen@nokia.com> (cherry picked from commit 86e7614e0deb5e97083103600b045833c6517c6b)
* ipq807x: image: cleanup unused variablesPetr Štetiar2023-06-121-3/+0
| | | | | | | | BLOCKSIZE and PAGESIZE seems to be unused on qnap_301w and zyxel_nbg7815 device which use eMMC storage. Signed-off-by: Petr Štetiar <ynezz@true.cz> (cherry picked from commit fdea7cb61776192ddb808a639af0a585d5b01b5b)
* tools/coreutils: rename list of installed programsMichael Pratt2023-06-121-6/+4
| | | | | | | | | | | | Rename the list of programs installed by coreutils to PKG_PROGRAMS, which will create a stampfile for each through a new feature in host-build.mk. Also, cleanup a bit to save lines regarding the usage of this list. Signed-off-by: Michael Pratt <mcpratt@pm.me> (cherry picked from commit 14a85d929b4a0a728dc4390ad34dcf8d69ac3475)
* tools/findutils: define list of installed programsMichael Pratt2023-06-121-0/+2
| | | | | | | | | | Define the variable PKG_PROGRAMS for the list of programs installed by findutils, which will create a stampfile for each through a new feature in host-build.mk. Signed-off-by: Michael Pratt <mcpratt@pm.me> (cherry picked from commit 04053e3f2050b6ea2cdb83c0956034e5fd368d10)
* host-build: add support for a stampfile per installed binaryMichael Pratt2023-06-121-3/+4
| | | | | | | | | | | | | | | Some individual build items install a group of programs instead of a program matching the name of the build item. Add support for installing stampfiles for each of the programs installed by that build item, which will allow more control and awareness of what is installed by the rest of the build system, if, for example, prereq symlink checks are looking for the same program which is built already. Signed-off-by: Michael Pratt <mcpratt@pm.me> (cherry picked from commit 84f7a45e9e83339d84bcc15f06259b1064cb961a)
* prereq-build: replace relative symlinks only if brokenMichael Pratt2023-06-121-0/+5
| | | | | | | | | | | | | | | | | | | | | | | Some programs installed to staging_dir/host/bin also install some symlinks to itself for an alternative name. Some of those new symlinks are overwriting symlinks that were installed by prereq stage. If prereq stage were to somehow be run again, it should not be overwriting symlinks that point to programs that are already built. To filter that out, catch all symlinks after first catching all symlinks that have an absolute target after all other cases in the case statement, make sure it is not broken, and if so exit successfully. Suggested-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> Signed-off-by: Michael Pratt <mcpratt@pm.me> (cherry picked from commit b890e2fbf9211648ad4a74f3e8b47bbf04a3cc7a)
* prereq-build: do not replace binaries with symlinksMichael Pratt2023-06-121-0/+4
| | | | | | | | | | | | | | | | | Some programs, like bash and patch, are checked by prereq stage and have a symlink installed, but then is later built from source. Now that the prereq-build checks are not successful just by finding the file alone, it is possible for a new symlink to overwrite the installed binary. If a normal file is found in staging_dir/host/bin, let the check look for the associated stampfile, and if found, skip creation of a symlink and exit successfully. Suggested-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> Signed-off-by: Michael Pratt <mcpratt@pm.me> (cherry picked from commit 729909c07fae4201591e51895833112cb88485e1)
* prereq-build: fix inconsistent value of $PATHMichael Pratt2023-06-121-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the recipe SetupHostCommand for checking and creating symlinks, $PATH was only overridden for one of several commands. This causes the symlinks to be included in the paths to pick a program from when the check was repeated, because staging_dir/host/bin was included in $PATH, but only *sometimes*. When the check ran again, the command succeded with a $PATH including the symlink, (eval "$$$$$$$$cmd") while the path to the program was evaluated with a $PATH NOT including the symlink, (bin=...) causing the symlink to be relinked incorrectly, instead of passing as exactly the same. Coincidentally, this was only a problem if the symlink targeted the alternative program with a different name. By overriding the value of $PATH at the invocation of Make, it will apply to the entire environment of the checks. Signed-off-by: Michael Pratt <mcpratt@pm.me> (cherry picked from commit 665fe2f818300f0b84c8c458fc49ae58ff8853aa)
* treewide: add ORIG_PATH variableMichael Pratt2023-06-127-0/+9
| | | | | | | | | | | | | | Add a variable that stores the original value of $PATH in the host system's shell, before Make alters it. This can be useful for when it is necessary to ignore symlinks and programs made by the build system. Define this new variable before all instances of 'export PATH:=' or similar. Signed-off-by: Michael Pratt <mcpratt@pm.me> (cherry picked from commit d87a8aa148ddf93b199a759deb088fff73787025)
* ipq807x: image: factor out common eMMC bitsPetr Štetiar2023-06-121-9/+12
| | | | | | | For better maintainability and reusability. Signed-off-by: Petr Štetiar <ynezz@true.cz> (cherry picked from commit a9be186466fdb4987c158916781d99329d1c3712)
* qca-nss-dp: fix oops in nss_dp_probePetr Štetiar2023-06-121-2/+3
| | | | | | | | | | | | | | | | | | | | Currently kernel crashes when of_phy_connect has issues: Unable to handle kernel access to user memory outside uaccess routines at virtual address 0000000000000308 ... pc : phy_attached_print+0x28/0x1b0 lr : phy_attached_info+0x14/0x20 ... Call trace: phy_attached_print+0x28/0x1b0 phy_attached_info+0x14/0x20 nss_dp_adjust_link+0x544/0x6c4 [qca_nss_dp] of_phy_connect returns either pointer or NULL, so can't be checked with IS_ERR macro. Signed-off-by: Petr Štetiar <ynezz@true.cz> (cherry picked from commit 38c7cf0e69aeefdec44d513307732e4daf7d9794)