summaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/image
Commit message (Collapse)AuthorAgeFilesLines
* bcm27xx: drop kernel 6.1 supportÁlvaro Fernández Rojas2024-06-191-17/+1
| | | | | | kernel 6.1 can be dropped since 6.6 is the default kernel. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm27xx: add support for RPI A, A+, 3A+, Zero2 and Zero2WDave Brand2024-06-191-10/+23
| | | | | | | | | | | | | | | | | These devices were already supported. I merely added missing entries to: 1. make them easier to locate in firmware selector 2. allow firmware upgrades to proceed without dire warnings Sample dire warning contains: upgrade: Device raspberrypi,model-zero-2-w not supported by this image upgrade: Supported devices: rpi-3-b rpi-3-b-plus rpi-zero-2 \ raspberrypi,2-model-b-rev2 raspberrypi,3-model-b \ raspberrypi,3-model-b-plus raspberrypi,3-compute-module \ raspberrypi,compute-module-3 raspberrypi,model-zero-2 With this patch, the firmware upgrade proceeds normally. Signed-off-by: Dave Brand <dbrand666@users.noreply.github.com>
* bcm27xx: enable 6.6 testing kernelÁlvaro Fernández Rojas2024-06-181-0/+16
| | | | | | The bcm27xx now supports 6.6 kernel as testing. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm27xx: correct cmdline.txt consoles for procdElbert Mai2024-05-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Commit [ca8c30208d5e][1] updates procd to handle muliple "console=" on the kernel command line. This affects Raspberry Pi builds because cmdline.txt specifies a UART console and a virtual console on HDMI, in that order. When procd finds multiple consoles on the command line, it attempts to open /dev/console. Linux uses the [last console][2] for /dev/console, so procd opens the virtual console on Raspberry Pi. This completely disables the UART console and causes [strange behavior][3] on the virtual console. Prior to ca8c30208d5e, procd would always open the first console, which is the UART console. The simplest fix without reverting ca8c30208d5e is to swap the order of console options in cmdline.txt. By putting the UART console last, procd handles the serial console correctly as before. [1]: https://git.openwrt.org/?p=project/procd.git;a=commit;h=ca8c30208d5e1aaa2c0e3f732c4c9944735e9850 [2]: https://www.kernel.org/doc/html/latest/admin-guide/serial-console.html [3]: https://forum.openwrt.org/t/rasberry-pi-4-model-b-keyboards-gone-wild/195594 Signed-off-by: Elbert Mai <code@elbertmai.com>
* bcm27xx: use PARTUUID for root in cmdlineÁlvaro Fernández Rojas2024-03-042-2/+8
| | | | | | This allows booting from USB/NVME while keeping SD compatibility. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm27xx: pass signature to partition generationÁlvaro Fernández Rojas2024-03-042-1/+2
| | | | | | | Passes IMG_PART_SIGNATURE to ptgen instead of using the default "OWRT" signature. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm27xx: bcm2712: remove boot-2711 image filesÁlvaro Fernández Rojas2024-02-011-2/+2
| | | | | | | | | | According to Raspberry Pi documentation, the RPi 5 First Stage Bootloader loads the linux kernel instead of loading the Second Stage Bootloader (start.elf): https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#differences-on-raspberry-pi-5 Fixes: 8b63d9a ("bcm27xx: add new bcm2712 subtarget") Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm27xx: improve image generation scriptÁlvaro Fernández Rojas2024-02-011-9/+8
| | | | | | | | | | - Exit immediately on a non-zero status. - Remove empty lines. - Remove unused variables. - Add missing ptgen variables for readability. - Refactor SYNTAX if block. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm27xx: bcm2712: enable USB symbols and drop packagesÁlvaro Fernández Rojas2024-01-291-2/+1
| | | | | | | This allows booting from USB. Fixes: 8b63d9ac4ae9 ("bcm27xx: add new bcm2712 subtarget") Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm27xx: add new bcm2712 subtargetMarty Jones2024-01-251-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for Raspberry Pi 5. Instead of using 16K pages like Raspberry Pi OS, OpenWrt uses 4K pages due to incompatibilities with F2FS and other applications. There are multiple RPi forum posts with different cases and users are forcing kernel8.img to workaround them, which is the 64 bit kernel of the RPi 4. However, this isn't possible in OpenWrt because we only ship one kernel and we would have to add RPi 5 support to bcm2711 subtarget (RPi 4) for that workaround to work in OpenWrt. Specification: - Processor Broadcom BCM2712 2.4GHz quad-core 64-bit Arm Cortex-A76 CPU, with cryptographic extension, 512KB L2 caches per core, 2048KB L3 cache Features: - VideoCore VII GPU, supports OpenGL ES 3.1, Vulkan 1.2 - Dual 4Kp60 HDMI display output with HDR support 4Kp60 HEVC decoder - LPDDR4X-4267 SDRAM 4GB and 8GB - Dual-band 802.11ac Wi-Fi - Bluetooth 5.0 / Bluetooth Low Energy - microSD card slot, with support for SDR104 high-speed mode - 2 x USB 3.0 ports - 2 x USB 2.0 ports - Gigabit Ethernet - 2 x 4 lane MIPI camera/display - PCIe 2.0 x1 - 5V/5A power via USB-C - Raspberry Pi standard 40-pin header - Real-time clock RTC - Power button Build system: x86_64 Build-tested: bcm2712 Run-tested: bcm2712/RPi5 Signed-off-by: Marty Jones <mj8263788@gmail.com> [Remove device variant, improve description] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm27xx: config: update documentation linksÁlvaro Fernández Rojas2024-01-182-2/+2
| | | | | | The documentation links have changed and are no longer valid. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* treewide: replace wpad-basic-wolfssl defaultRosen Penev2023-02-041-4/+4
| | | | | | | The newly merged mbedtls backend is smaller and has fewer ABI related issues than the wolfSSL one. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* bcm27xx: bcm2711: add kmod-r8169Johannes Heimansberg2022-12-151-1/+2
| | | | | | | | | | | | | | | | | | Some carrier boards [1][2] for the Raspberry Pi CM4 that are specifically designed to be used as routers come with secondary NICs using a Realtek RTL8111 Gigabit Ethernet chip. When using such a board as a router with OpenWrt, it is very helpful when both NICs are working by default. Since the Raspberry Pi 4 and the CM4 have plenty of disk space, it should cause no harm to include the kmod-r8169. [1] https://wiki.dfrobot.com/Compute_Module_4_IoT_Router_Board_Mini_SKU_DFR0767 [2] https://www.waveshare.com/wiki/CM4-DUAL-ETH-MINI Signed-off-by: Johannes Heimansberg <git@jhe.dedyn.io> (r8169 should pull in the necessary dependencies.) Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* linux-firmware: broadcom: consolidate NVRAM packagesKuan-Yi Li2022-11-161-9/+6
| | | | | | | NVRAM packages for the same wireless chip are consolidated into one as they contain only small text files and symlinks. Signed-off-by: Kuan-Yi Li <kyli@abysm.org>
* bcm27xx: switch to linux-firmware SDIO NVRAMKuan-Yi Li2022-11-151-9/+9
| | | | | | | | | Package `cypress-nvram` was added because back then the files for newer RPi models on `linux-firmware` didn't have the proper values. It is the other way around nowadays, so switch back to `linux-firmware`. Signed-off-by: Kuan-Yi Li <kyli@abysm.org>
* cypress-nvram: use symlink to provide NVRAM for some RPisKuan-Yi Li2022-11-151-5/+8
| | | | | | | | | | This is to align the implementation with upstream `linux-firmware`. Some Raspberry Pi boards do not have dedicated NVRAM in `linux-firmware` source repository, their NVRAM is provided through a symbolic link to NVRAM of another board with an identical wireless design. Signed-off-by: Kuan-Yi Li <kyli@abysm.org>
* bcm27xx: add support for Raspberry Pi Zero 2Stijn Tintel2022-07-011-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to licensing uncertainty, we do not include the firmwares for the wireless chips used in the Raspberry Pi Zero 2 W. To have working wireless, follow the instructions below. For people building their own images: mkdir -p files/lib/firmware/brcm wget -P files/lib/firmware/brcm/ https://github.com/RPi-Distro/firmware-nonfree/raw/bullseye/debian/config/brcm80211/brcm/brcmfmac43436-sdio.bin wget -P files/lib/firmware/brcm/ https://github.com/RPi-Distro/firmware-nonfree/raw/bullseye/debian/config/brcm80211/brcm/brcmfmac43436-sdio.txt wget -P files/lib/firmware/brcm/ https://github.com/RPi-Distro/firmware-nonfree/raw/bullseye/debian/config/brcm80211/brcm/brcmfmac43436s-sdio.bin wget -P files/lib/firmware/brcm/ https://github.com/RPi-Distro/firmware-nonfree/raw/bullseye/debian/config/brcm80211/brcm/brcmfmac43436s-sdio.txt Now build the OpenWrt image as usual, and it will include the firmware files in the correct location. For people using ext4 images: Write the ext4 image to the sdcard, then mount the 2nd partition and put the firmware files from the links above in /lib/firmware/brcm relative from the mount point where the partition is mounted. For people using squashfs images: Write the squashfs image to the sdcard, place it in the Raspberry Pi Zero 2 W, boot it and wait for the overlay filesystem to be created. Find the offset of the overlay filesystem in sysfs: # cat /sys/devices/virtual/block/loop0/loop/offset 25755648 Shut down the device, unplug the power and move the SD card to a Linux computer. Mount the 2nd partition of the sdcard as a loop device with the offset found earlier. sudo mount /dev/sdh2 -o loop,offset=25755648 /mnt/temp Put the firmware files from the links above in /upper/lib/firmware/brcm relative to the mount point where the loop device is mounted. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be> Tested-by: Peter van Dijk <peter@7bits.nl>
* bcm27xx: bcm2711: add kmod-usb-net-lan78xxJosef Schlehofer2022-03-191-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some vendors like Seeedstudio in their product [1] with Raspberry Pi Compute Module 4 uses Microchip LAN7800 (USB 3.0 to Gigabit Ethernet Bridge) - USB 3.0 extended from PCIe of CM4. lsusb output: ``` Bus 002 Device 002: ID 0424:7800 Microchip LAN7800 ``` Raspberry Pi 4 and even Compute Module 4 has many resources available and for just one kernel module it is not necessary to add additional specific CM4 profiles. Let's include it by default, so the both Ethernet ports will be usable to have better user-experience. Because previous generation of Raspberry Pi included LAN7800 Gigabit Ethernet by default and it is enabled there [2] in kernel without additional kernel module, which was added recently [3]. After this commit in dmesg can be found this: ``` root@OpenWrt:~# dmesg | grep lan [ 7.038889] lan78xx 2-3:1.0 (unnamed net_device) (uninitialized): int urb period 64 [ 7.090484] usbcore: registered new interface driver lan78xx ``` Tested and works with sysupgrade image. [1] https://www.seeedstudio.com/Dual-GbE-Carrier-Board-with-4GB-RAM-32GB-eMMC-RPi-CM4-Case-p-5029.html [2] https://github.com/openwrt/openwrt/blob/32c74552b2310531af593ee0f859a3935a3a7cbd/target/linux/bcm27xx/bcm2709/config-5.4#L437 [3] https://github.com/openwrt/openwrt/commit/31647d8be8c60bfb6690c87c739b8abe6dc03950 Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
* bcm27xx: update distroconfig.txt for faster RPi4John Audia2022-02-051-0/+2
| | | | | | | | | | | | | Newer RPi 4 Rev 6 (8 GB models and recent 2 GB / 4 GB models) ship with the so-called C0 processor which can run turbo mode at 1.8 GHz max rather than 1.5 GHz gracefully. Add 'arm_boost=1' to pi4 section of to enable. Note that this setting has no effect on older chips; they continue with their 1.5 GHz max unless users overclock them. Ref: https://www.raspberrypi.com/news/bullseye-bonus-1-8ghz-raspberry-pi-4 Signed-off-by: John Audia <graysky@archlinux.us>
* bcm27xx: bcm2708: add missing RPi B DTS fileÁlvaro Fernández Rojas2021-02-191-1/+1
| | | | | | | | RPI 1B DTS has been splitted into 2 files: - bcm2708-rpi-b.dts: Newest (rev2) RPI 1B - bcm2708-rpi-b-rev1.dts: Old (rev1) RPI 1B Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm27xx: add support for RPI CM4 and RPI 400Álvaro Fernández Rojas2021-02-181-6/+11
| | | | | | Support added to bcm2709 (32 bits) and bcm2711 (64 bits). Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* target: use SPDX license identifiers on MakefilesAdrian Schmutzler2021-02-101-5/+3
| | | | | | Use SPDX license tags to allow machines to check licenses. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm27xx: add bit variant to redundant RaspberryPiPaul Spooren2020-11-151-2/+14
| | | | | | | | | | Both bcm2709 and bcm2710 firmware can run on the same RaspberryPi models, varying however in 32 and 64 Bit architectures. The model name alone does not include the architecture information, which becomes problematic if looking at a overview that only contains the names. By adding a variant it is possible to tell the architecture. Signed-off-by: Paul Spooren <mail@aparcar.org>
* treewide: use wpad-basic-wolfssl as defaultPetr Štetiar2020-08-201-4/+4
| | | | | | | | | | | | | | | In order to support SAE/WPA3-Personal in default images. Replace almost all occurencies of wpad-basic and wpad-mini with wpad-basic-wolfssl for consistency. Keep out ar71xx from the list as it won't be in the next release and would only make backports harder. Build-tested (build-bot settings): ath79: generic, ramips: mt7620/mt76x8/rt305x, lantiq: xrx200/xway, sunxi: a53 Signed-off-by: Petr Štetiar <ynezz@true.cz> [rebase, extend commit message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm27xx: label to boot partitionAndrey Kunitsyn2020-05-101-1/+1
| | | | | | | Get fat partition name allow easy partition identification for user. Signed-off-by: Andrey Kunitsyn <blackicebox@gmail.com>
* brcm2708: rename target to bcm27xxAdrian Schmutzler2020-02-145-0/+212
This change makes the names of Broadcom targets consistent by using the common notation based on SoC/CPU ID (which is used internally anyway), bcmXXXX instead of brcmXXXX. This is even used for target TITLE in make menuconfig already, only the short target name used brcm so far. Despite, since subtargets range from bcm2708 to bcm2711, it seems appropriate to use bcm27xx instead of bcm2708 (again, as already done for BOARDNAME). This also renames the packages brcm2708-userland and brcm2708-gpu-fw. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Acked-by: Álvaro Fernández Rojas <noltari@gmail.com>