Commit Graph

66 Commits

Author SHA1 Message Date
Álvaro Fernández Rojas
9941edc724 brcm2708: image: stop using mkknlimg script
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-12-28 09:25:50 +01:00
Álvaro Fernández Rojas
922b538cc9 brcm2708: switch to cypress-nvram package
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-12-18 08:44:48 +01:00
Álvaro Fernández Rojas
efe15993d3 brcm2708: switch to cypress-firmware package
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-12-17 19:20:02 +01:00
Álvaro Fernández Rojas
39ddb25fbd brcm2708: add support for Raspberry Pi 2B 1.2
RPi 2B 1.2 has a BCM2710/BCM2837 like RPi 3 devices.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-09-19 17:38:18 +02:00
Álvaro Fernández Rojas
99a5e28588 brcm2708: bcm2711: remove custom config file
Forcing arm_64bit is no longer required with latest firmware.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-09-04 18:11:25 +02:00
Álvaro Fernández Rojas
5287ac2dfb brcm2708: restore UART on RPi 0W, 3B, 3B+ and 4B
Disable Bluetooth and restore UART to GPIOs 14 & 15.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-09-03 19:37:29 +02:00
Álvaro Fernández Rojas
d8c62c4029 brcm2708: bcm2711: remove unneeded boot file
bootcode.bin isn't needed for RPi 4B since it's stored on a SPI-attached EEPROM.
More info: https://www.raspberrypi.org/documentation/hardware/raspberrypi/booteeprom.md

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-08-09 10:21:17 +02:00
Moritz Warning
a8098607af brcm2708: split up DEVICE_TITLE
Splits up DEVICE_TITLE into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT.

Fixes https://github.com/openwrt/openwrt/pull/2245

Signed-off-by: Moritz Warning <moritzwarning@web.de>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-08-04 18:48:53 +02:00
Álvaro Fernández Rojas
32788e685f brcm2708: arm8stub is no longer needed
It's already embedded on latest RPi firmware.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-08-03 09:02:54 +02:00
Álvaro Fernández Rojas
5e928acf22 brcm2708: add bcm2711 subtarget (RPi 4B aarch64)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-08-02 20:39:13 +02:00
Álvaro Fernández Rojas
f781582828 brcm2708: Add Raspberry Pi 4 support
- Support added to bcm2709 subtarget (32 bit).
- 64 bit kernel still requires many hacks on RPi 4B.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-07-14 12:44:14 +02:00
Álvaro Fernández Rojas
9e8932c17f brcm2708: switch to linux-firmware SDIO NVRAM
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-07-14 12:44:14 +02:00
Álvaro Fernández Rojas
4295485719 brcm2708: add linux 4.19 support
Boot tested on Raspberry Pi B+ (BCM2708) and Raspberry Pi 2 (BCM2709)

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2019-07-14 12:44:14 +02:00
Christian Lamparter
1aa00f9d13 brcm2708: boot-part feature integration
This patch adds the boot-part feature which enables the brcm2708
target move from the custom boot partition size config option to
the generic CONFIG_TARGET_KERNEL_PARTSIZE.

Note:
For people using custom images: Just like with
CONFIG_TARGET_ROOTFS_PARTSIZE changing the value
can cause sysupgrade to repartition the device!
Make sure to have a backup in this case.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-24 15:53:02 +01:00
Stijn Tintel
f5919b65d4 brcm2708: add kernel 4.14 support
Patch generation process:
- rebase rpi/rpi-4.14.y on v4.14.89 from linux-stable
- git format-patch v4.14.89

Patches skipped during rebase:
- lan78xx: Read MAC address from DT if present
- lan78xx: Enable LEDs and auto-negotiation
- Revert "softirq: Let ksoftirqd do its job"
- sc16is7xx: Fix for multi-channel stall
- lan78xx: Ignore DT MAC address if already valid
- lan78xx: Simple patch to prevent some crashes
- tcp_write_queue_purge clears all the SKBs in the write queue
- Revert "lan78xx: Simple patch to prevent some crashes"
- lan78xx: Connect phy early
- Arm: mm: ftrace: Only set text back to ro after kernel has been marked ro
- Revert "Revert "softirq: Let ksoftirqd do its job""
- ASoC: cs4265: SOC_SINGLE register value error fix
- Revert "ASoC: cs4265: SOC_SINGLE register value error fix"
- Revert "net: pskb_trim_rcsum() and CHECKSUM_COMPLETE are friends"
- Revert "Revert "net: pskb_trim_rcsum() and CHECKSUM_COMPLETE are friends""

Patches dropped after rebase:
- net: Add non-mainline source for rtl8192cu wlan
- net: Fix rtl8192cu build errors on other platforms
- brcm: adds support for BCM43341 wifi
- brcmfmac: Mute expected startup 'errors'
- ARM64: Fix build break for RTL8187/RTL8192CU wifi
- ARM64: Enable RTL8187/RTL8192CU wifi in build config
- This is the driver for Sony CXD2880 DVB-T2/T tuner + demodulator
- brcmfmac: add CLM download support
- brcmfmac: request_firmware_direct is quieter
- Sets the BCDC priority to constant 0
- brcmfmac: Disable ARP offloading when promiscuous
- brcmfmac: Avoid possible out-of-bounds read
- brcmfmac: Delete redundant length check
- net: rtl8192cu: Normalize indentation
- net: rtl8192cu: Fix implicit fallthrough warnings
- Revert "Sets the BCDC priority to constant 0"
- media: cxd2880: Bump to match 4.18.y version
- media: cxd2880-spi: Bump to match 4.18.y version
- Revert "mm: alloc_contig: re-allow CMA to compact FS pages"
- Revert "Revert "mm: alloc_contig: re-allow CMA to compact FS pages""
- cxd2880: CXD2880_SPI_DRV should select DVB_CXD2880 with
  MEDIA_SUBDRV_AUTOSELECT
- 950-0421-HID-hid-bigbenff-driver-for-BigBen-Interactive-PS3OF.patch
- 950-0453-Add-hid-bigbenff-to-list-of-have_special_driver-for-.patch

Make I2C built-in instead of modular as in upstream defconfig; also the
easiest way to get MFD_ARIZONA enabled, which is required by
kmod-sound-soc-rpi-cirrus.
Add missing compatible strings from
4.9/960-add-rasbperrypi-compatible.patch, using upstream names for
compute modules.
Add extra patch to enable the LEDs on lan78xx.

Compile-tested: bcm2708, bcm2709, bcm2710 (with CONFIG_ALL_KMODS=y)
Runtime-tested: bcm2708, bcm2710

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
e261c8b764 brcm2708-gpu-fw: add fw required for camera module
To be able to use the camera module, start_x=1 has to be set in
config.txt. This will cause the bootloader to load the GPU firmware that
contain the extra video codecs. Install these firmware files.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-05 00:39:53 +02:00
Mathias Kresin
80c61c161a treewide: use wpad-basic for not small flash targets
Add out of the box support for 802.11r and 802.11w to all targets not
suffering from small flash.

Signed-off-by: Mathias Kresin <dev@kresin.me>

Mathias did all the heavy lifting on this, but I'm the one who should
get shouted at for committing.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-16 15:07:41 +01:00
Christian Lamparter
7516a96011 brcm2708: split sdcard.img.gz into a sysupgrade and factory image
@vahid-dan reported a issue with extracting the rpi images with
Gnome's Archive Manager:
"Ubuntu Archive Manager cannot extract the file and it just
throws a general error message: "An error occurred while
extracting files".
<https://forum.lede-project.org/t/corrupted-pre-built-v18-06-0-rc2-image-for-rpi>

@blogic told me to split the single sdcard.img.gz for the RPi
into a sysupgrade and a factory image for all brcm2708 targets.
The factory images will have no metadata attached, this way
these utilities that can't deal with the attached metadata will
not fail for no reason.

Cc: John Crispin <john@phrozen.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-07-30 08:11:36 +02:00
Christo Nedev
48f311a112 brcm2708: Add wifi driver, firmware and NVRAM for Raspberry Pi 3 b
2708 -> 43430 -> pi0w

2709 -> 43430 -> pi3b
2709 -> 43455 -> pi3bplus

2710 -> 43430 -> pi3b
2710 -> 43455 -> pi3bplus

Signed-off-by: Christo Nedev <christo.nedev@gmail.com>
2018-06-20 21:50:14 +02:00
Daniel Golle
969fe206bd brcm2708: Add wifi driver, firmware and NVRAM for RPi1
Apparently there are RPi1 devices with BRCM43430 wifi, such as the
Pi Zero W. Add the necessary packages for that to the image generated
for those boards as well.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-20 11:19:26 +02:00
Daniel Golle
037ef13a16 brcm2708: move wifi calibration EEPROMs out of base-files
Ship EEPROM blobs for specific supported board only and don't have them
lurking around in our source tree but rather download them from
@github/RPi-Distro/firmware-nonfree upstream.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-14 18:15:33 +02:00
Christian Lamparter
707b6c815b brcm2708: add squashfs rootfs image
This patch adds a image with squashfs as the root filesystem.
A rootfs_data partition will be generated on the first boot
and placed inside the rootfs partition (just after the squashfs
image).

advantages:
 - it is possible to migrate from an existing -ext4
   installation and back via sysupgrade.
 - existing partition layout will not be lost.
 - slightly smaller image size.
 - support for attendedsysupgrade

disadvantages:
 - needs f2fs + tools as well. This is because fs-tools decides on the
   blocksize of the sdcard. So either f2fs or ext4 can get choosen as
   the rootfs_data filesystem (depends on the size of the root partition).
 - rootfs_data is placed into the rootfs partition. This makes
   it difficult for tools that expect a /dev/mmc0pX device.
   It also makes it difficult for data recovery tools since they
   might not expect to find a embedded partition or will be
   confused.

For people with existing build configurations: make sure to include mkf2fs
and f2fsck package into the image... Otherwise the new -squashfs image will
boot of a ram-overlay and won't keep the configurations after a reboot.

Cc: Álvaro Fernández Rojas <noltari@gmail.com>
Cc: Paul Spooren <spooren@informatik.uni-leipzig.de>
Cc: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Acked-by: Daniel Golle <daniel@makrotopia.org>
2018-05-18 09:17:49 +02:00
Christo Nedev
50b0919628 brcm2708: Add support for raspberry pi 3 b+.
Signed-off-by: Christo Nedev <christo.nedev@me.com>
2018-04-27 09:59:33 +02:00
Stijn Tintel
858ff4f3e1 Revert "brcm2708: fix sdcard image"
This reverts commit 6c2e1ff80f.

GNU gzip does not fail when the image filename already contains the .gz
extension, this is a problem specific to pigz. Revert the commit, as we
now gzip the image twice.

Reported-by: Martin Schleier <drahemmaps@gmx.net>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-02-19 23:52:45 +01:00
Stijn Tintel
6c2e1ff80f brcm2708: fix sdcard image
The gzip step in the sdcard image build fails because the image filename
already has the gzip extension. This results in an empty image file, to
which the metadata is finally appended.

Remove the .gz extension from the image filename to fix this.

Fixes: e79b096ee1 ("brcm2708: convert to metadata")

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-02-17 21:00:49 +01:00
Christian Lamparter
6f04128892 brcm2708: convert to dt-based board-detection
Use the values populated by the generic board detect function. The
first compatible from the device tree source file will be the board
name in userspace. The model property from the device tree source file
will be the model name.

Change the board name where used in the userspace and drop the target
specific board detect, to use the generic one.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-25 12:19:41 +01:00
Christian Lamparter
e79b096ee1 brcm2708: convert to metadata
This patch converts all the raspberrypi images to utilize
the common metadata-based image verification.

Note: the CM1 and CM3 currently use the same "rpi-cm"
boardname.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-25 12:19:36 +01:00
Álvaro Fernández Rojas
6debeaab45 brcm2708: add support for the new Raspberry Pi Zero W
Support is experimental since I haven't got any device to test.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-03-04 19:41:34 +01:00
Felix Fietkau
9467ce42da build: get rid of host.mk
Defined required host related variables in toplevel.mk instead

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-26 13:31:44 +01:00
Álvaro Fernández Rojas
7ef713c9c4 brcm2708: bcm2710: add 64 bit support for Raspberry Pi 3
64 bit support for Raspberry Pi 3 is experimental. However, bcm2709 subtarget
should serve as a stable and compatible 32 bit support.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-08 00:41:51 +01:00
Álvaro Fernández Rojas
77a00027c3 brcm2708: bcm2709: add support for Raspberry Pi 3
This adds support for Raspberry Pi 3 on the bcm2709 subtarget, in order to
keep 32 bit image support when 64 bit support is added on bcm2710 subtarget.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-08 00:41:48 +01:00
Álvaro Fernández Rojas
e9e52761d3 brcm2708: remove duplicated gzip from image generation
Images are now automatically gziped so remove custom image command

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-07 23:00:24 +01:00
Álvaro Fernández Rojas
611399f1f8 brcm2708: fix image generation with imagebuilder
COPYING is not present in $(LINUX_DIR) on imagebuilder and prevents a
successful image creation.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-10-13 19:01:41 +02:00
Álvaro Fernández Rojas
ba5a9aba5c brcmfmac43430-firmware: rename to brcmfmac-firmware-43430-sdio
This is consistent with the rest of brcmfmac firmwares.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-09-15 20:23:46 +02:00
Álvaro Fernández Rojas
2b1c6b21b5 brcm2708: update linux 4.4 patches to latest version
As usual these patches were extracted and rebased from the raspberry pi repo:
https://github.com/raspberrypi/linux/tree/rpi-4.4.y

Also adds support for Raspberry Pi Compute Module 3 (untested).

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-09-10 14:54:26 +02:00
Felix Fietkau
63b525dd6b image: add a helper variable for getting kernel/rootfs from within image Build/* templates
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-31 12:25:25 +02:00
Felix Fietkau
8e2764ce9b image.mk: clean up redundant code related to DEVICE_DTS
It is used by a core build template, so the variable should be
initialized and added to DEVICE_VARS in the core.
Same for DEVICE_DTS_DIR

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-15 14:14:11 +02:00
Álvaro Fernández Rojas
63cb2fb88d brcm2708: properly detect the Raspberry Pi Zero
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-06-21 20:17:38 +02:00
Álvaro Fernández Rojas
8998dc14a5 brcm2708: fix SUBTARGET checks for bcm2709/bcm2710
This regression was introduced in commit cf58007a

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-05-20 19:07:36 +02:00
Felix Fietkau
cf58007abc bcm2708: explicitly check for SUBTARGET instead of using the device SUBTARGETS variable
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-05-20 14:37:52 +02:00
Álvaro Fernández Rojas
424a94d81a brcm2708: convert to the new building system
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-05-14 13:25:08 +02:00
Álvaro Fernández Rojas
a8d4d71c41 brcm2708: update to latest version
As usual these patches were extracted from the raspberry pi repo:
https://github.com/raspberrypi/linux/commits/rpi-4.4.y

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-04-07 21:25:10 +02:00
Álvaro Fernández Rojas
f233664faa brcm2708-gpu-fw: update to latest version
This update also adds individual download of firmware files instead of fetching
every file on the repository (10-MiB vs 100+MiB).
Also copy Linux license from kernel directory instead of using the rpi-firmware
one.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-04-01 13:37:33 +02:00
John Crispin
993989880a brcm2708: add Raspberry Pi 3 support
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 48967
2016-03-08 18:11:55 +00:00
John Crispin
c7bcdac82e brcm2708: fix multi-device image generation
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 47610
2015-11-24 18:27:43 +00:00
John Crispin
31f9aec7d6 brcm2708: add support for multi-device images
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 47561
2015-11-21 21:25:04 +00:00
John Crispin
a429d6998e brcm2708: rename image device definition
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 47560
2015-11-21 21:24:57 +00:00
John Crispin
edff980107 brcm2708: revert sd image extension to .img
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 47559
2015-11-21 21:24:50 +00:00
John Crispin
223d88f843 brcm2708: simplify gzip image generation
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 47558
2015-11-21 21:24:44 +00:00
John Crispin
f080f2aa8e brcm2708: copy overlays README to boot partition
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 47260
2015-10-26 09:01:21 +00:00