Commit Graph

154 Commits

Author SHA1 Message Date
Martin Jansa
17eb1a2f00 rpi-config: use CONFIG shell variable
* instead of repeating //config.txt
  so many times, to make it a bit less error prone (as shown in previous commit)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2021-01-18 15:31:54 +00:00
Martin Jansa
5c9309de87 rpi-config: fix do_deploy
* in https://github.com/agherzan/meta-raspberrypi/pull/678 this line was acidentally changed
  from "${BOOTFILES_DIR_NAME}" to "bcm2835-bootfiles", causing do_deploy to fail finding config.txt

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2021-01-18 15:31:54 +00:00
SCVready
74deec51de rpi-config: Relocated "start_x=1" in config.txt
It seems like "start_x=1" needs to be earlier in the file to work properly on the Rapberry Pi 4 B.

Fixes: #670
Signed-off-by: SCVready <alejandro.solozabal@outlook.com>
2021-01-12 20:57:04 +00:00
Paul Barker
ba3a417fbb rpi-bootfiles: Rename recipe to avoid ambiguity
The name `bootfiles` is too generic, we should use `rpi-bootfiles`
instead.

Signed-off-by: Paul Barker <pbarker@konsulko.com>
2020-11-27 14:29:55 +00:00
Paul Barker
b8440b3d26 bootfiles: Use BOOTFILES_DIR_NAME variable
This variable is set in rpi-base.inc and referenced by other recipes
which need to know the location of the bootfiles. If this is overridden
for any reason we need to ensure that the bootfiles recipe deploys to
the correct path.

Signed-off-by: Paul Barker <pbarker@konsulko.com>
2020-11-27 14:29:55 +00:00
Paul Barker
8827040d9c rpi-cmdline: Move cmdline.txt generation to a separate recipe
Instead of generating cmdline.txt in the kernel recipe, it is generated
in a standalone recipe and pulled in as a dependency of the bootfiles
recipe. This simplifies the process of using a linux-yocto,
linux-mainline or similiar kernel recipe instead of linux-raspberrypi.

In the rpi-cmdline recipe the command line is built from fragments which
can all be easily overridden. The variables `SERIAL` and `CMA` are
renamed to `CMDLINE_SERIAL` and `CMDLINE_CMA` for consistency. The
cmdline.txt file is created in the do_compile step to allow further
customisation via do_compile_append if needed.

Signed-off-by: Paul Barker <pbarker@konsulko.com>
2020-11-27 14:29:55 +00:00
Ming Liu
26a888d669 rpi-u-boot-scr: drop hard-coded 'arm'
Let's inherit kernel-arch and use ${UBOOT_ARCH} to replace the
hard-coded 'arm'.

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
2020-11-27 12:39:12 +00:00
Khem Raj
5db97b41a8 armstubs: Always use gcc compiler
it uses assembly files .S which needs to be processed with gcc alone
until they are made portable use gcc

Fixes
| armstub7.S:175:2: error: instruction requires: thumb
|  cbz r6, 9f @ Skip this section if we are core 0
|  ^

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-11-25 17:57:12 +00:00
Khem Raj
dcdd0e4a20 raspberrypi-tools: Update to latest on master
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-11-25 17:57:12 +00:00
Khem Raj
6a53db2fb6 raspberrypi-firmware: Update to latest to take 5.4.79 prebuilts
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-11-25 17:57:12 +00:00
Madhavan Krishnan
b70c7b9021 libcamera: Enabled camera overlays define based
Added imx219.dtbo file in the overlays, and added dtoverlay in
/boot/config.txt define based.

To enable Sony Raspberry pi camera imx219 sensor, need to set
the variable RASPBERRYPI_CAMERA_V2 as 1.

In future, we can add any camera overlays here to support and
use them with libcamera.

Signed-off-by: Madhavan Krishnan <madhavan.krishnan@linaro.org>
2020-11-14 23:26:39 +00:00
Marek Belisko
a8085558b5 u-boot: Fix booting raspberrypi CM3 module
With stock u-boot v2020.01 which we use from poky CM3 module won't boot.
We need to apply this patch in order to have platform again working.

Add it only for cm3 to not break anything else.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
2020-10-21 17:39:43 +01:00
Khem Raj
4606cf4831 raspberrypi-tools: Update to latest snapshot as of 20200803
Use date in PV, makes is good candidate for always increasing PV

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-10-05 18:39:54 +01:00
Khem Raj
a66e679f00 raspberrypi-firmware: Update to 20201002 snapshot
Brings in fixes for errors seen in kernel boot log
e.g.

https://github.com/raspberrypi/linux/issues/3878

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-10-05 18:39:54 +01:00
Martin Jansa
60b4bcbae5 raspberrypi-{firmware,tools}: set downloadfilename
* otherwise we end with big archives in downloads directory without clear
  indication from where they came
* e.g. in one of my jenkins builds I've noticed:
  -rw-rw-r-- 1 jenkins jenkins 178M Jun 30 15:45 downloads/23548e550a757d368d3d5220373fe829b5961c42.tar.gz
  -rw-rw-r-- 1 jenkins jenkins 152M Sep  5  2019 downloads/7163480fff007dc98978899b556dcf06f8a462c8.tar.gz
  -rw-rw-r-- 1 jenkins jenkins 179M Jul 23 01:34 downloads/7e74bcb4f9706f36f752d1c3d3164628ccf2aae5.tar.gz
  -rw-rw-r-- 1 jenkins jenkins 178M Jun  5 12:34 downloads/7eff9f6774bb43bfd61e749a0b45ffddc98c2311.tar.gz
  -rw-rw-r-- 1 jenkins jenkins 177M Apr 23 14:49 downloads/84523e0b9a9e78aa69fca1f1a8d75b2bdb5155fc.tar.gz
  -rw-rw-r-- 1 jenkins jenkins 178M Jan 13  2020 downloads/9d6be5b07e81bdfb9c4b9a560e90fbc7477fdc6e.tar.gz

  -rw-rw-r-- 1 jenkins jenkins  463 Jul  1 03:58 downloads/23548e550a757d368d3d5220373fe829b5961c42.tar.gz.done
  -rw-rw-r-- 1 jenkins jenkins  141 Jan 16  2020 downloads/7163480fff007dc98978899b556dcf06f8a462c8.tar.gz.done
  -rw-rw-r-- 1 jenkins jenkins  463 Aug  1 15:40 downloads/7e74bcb4f9706f36f752d1c3d3164628ccf2aae5.tar.gz.done
  -rw-rw-r-- 1 jenkins jenkins  463 Jun  6 09:54 downloads/7eff9f6774bb43bfd61e749a0b45ffddc98c2311.tar.gz.done
  -rw-rw-r-- 1 jenkins jenkins  463 May 16 03:35 downloads/84523e0b9a9e78aa69fca1f1a8d75b2bdb5155fc.tar.gz.done
  -rw-rw-r-- 2 jenkins jenkins  141 Aug  7 22:10 downloads/9d6be5b07e81bdfb9c4b9a560e90fbc7477fdc6e.tar.gz.done

* unfortunately using git fetcher is still problematic because of git repo size:
  15G   firmware
  1,6G  tools

  -rw-rw-r-- 1 jenkins jenkins 180M Sep 17 13:59 downloads/raspberrypi-firmware-a490197f0672d948860b2b807884ae65eabc4d4f.tar.gz
  -rw-rw-r-- 1 jenkins jenkins  463 Sep 17 14:09 downloads/raspberrypi-firmware-a490197f0672d948860b2b807884ae65eabc4d4f.tar.gz.done
  -rw-rw-r-- 1 jenkins jenkins 324M Sep 17 14:10 downloads/raspberrypi-tools-b0c869bc929587a7e1d20a98e2dc828a24ca396a.tar.gz
  -rw-rw-r-- 1 jenkins jenkins  463 Sep 17 14:10 downloads/raspberrypi-tools-b0c869bc929587a7e1d20a98e2dc828a24ca396a.tar.gz.done

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2020-09-17 13:14:41 +01:00
Pierre-Jean Texier
16a6e0b4ea raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-09-12 21:38:16 +01:00
Khem Raj
0433b69889 raspberrypi-firmware: Upgrade to 20200819
Includes 5.4.59 bumps

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-08-24 22:59:04 +01:00
Pierre-Jean Texier
42e4b4b889 raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-08-13 17:09:44 +01:00
Jeff Ithier
f046b4128c Generalize the naming of the bootfiles deploy directory
The raspberry pi 4 variant has a BCM2711 chip, however it still
uses the same boot files as the BCM2835 used in previous generations.
This change generalizes the naming of the directory generated in the
$DEPLOY_DIR to avoid the implication that the files are only
meant for the BCM2835.

Signed-off-by: Jeff Ithier <ithijme@gmail.com>
2020-08-06 11:00:29 +01:00
Jakub Luzny
603f3891fe rpi-config: Add CAN_OSCILLATOR variable to set mcp2515 crystal frequency
Current configuration (16MHz) is made for the PiCAN2 board that uses 16MHz crystal. This setting allows for use of Waveshare RS485 CAN HAT that has 8MHz crystal soldered (although according to Waveshare there is also a 12MHz crystal version of the board).

Signed-off-by: Jakub Luzny <jakub@luzny.cz>
2020-07-29 11:52:09 +01:00
Fabio Berton
fc72c06141 u-boot: Move fw_env.config to u-boot append
The u-boot-env is provided by u-boot recipe and not by libubootenv, so
right recipe to append is the u-boot.

Adding the rpi-u-boot-scr in DEPENDS variable is wrong because it is
forcing rpi-u-boot-scr to be a dependency, but it'll fail if I have
another recipe that provides bootscript, once both recipes provide the
same file. The default value of u-boot-default-script is rpi-u-boot-scr,
so right way is to use u-boot-default-script and change the
PREFERRED_PROVIDER_u-boot-default-script if needed.

Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
2020-07-27 15:34:17 +01:00
colin
85d3dd81c5 rpi-config_git: Added ENABLE_DUAL_CAN build configuration
Currently ENABLE_CAN adds mcp2525-can0 to the dtoverlay.

ENABLE_DUAL_CAN was added to also add mcp2515-can1 to the dtoverlay.
This will allow a user to enable dual CAN when using a hat like the
PiCAN 2 Duo board.

Signed-off-by: Colin McAllister <colinmca242@gmail.com>
2020-07-23 13:03:23 +01:00
Pierre-Jean Texier
372dc40ae3 raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-07-14 17:15:50 +01:00
Leon Anavi
27d0016b6b libubootenv_%.bbappend: Add fw_env.config
Add fw_env.config that uses at run-time /boot/uboot.env generated
through the boot scripts (specifically boot.cmd.in) from recipe
rpi-u-boot-scr. This configuration file is required to
successfully run fw_printenv from the user space.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-07-03 20:49:32 +01:00
Leon Anavi
64bd47fe58 rpi-u-boot-scr: Create uboot.env via boot.cmd.in
Modify boot.cmd.in from recipe rpi-u-boot-scr to create uboot.env
in the /boot partition when using U-Boot. This change is required
to successfully run fw_printenv from the user space.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-07-03 20:49:32 +01:00
Leon Anavi
c482e2cc7c rpi-config: Add ENABLE_IR variable for infrared
Users who want infrared device tree overlays gpio-ir and
gpio-ir-tx to be set in config.txt can now easily do it through
variable ENABLE_IR, for example in local.conf:

ENABLE_IR = "1"

By default the GPIO pin for gpio-ir is set to 18 and the pin for
gpio-ir-tx is 17. Both pins can be easily changed by modifying
variables GPIO_IR and GPIO_IR_TX (for example in local.conf).

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-06-24 17:01:17 +01:00
Pierre-Jean Texier
e4ed884688 raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-06-05 13:13:07 +01:00
Pierre-Jean Texier
3cda39cda2 raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-05-09 12:16:52 +01:00
Pierre-Jean Texier
7671f666b2 raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-04-18 15:56:39 +01:00
Fabio Berton
44d7dd0e4a rpi-u-boot-scr: Set u-boot-default-script as provider
Add u-boot-default-script to the PROVIDES variable to make easier to
replace boot script in another layer just by changing
PREFERRED_PROVIDER_u-boot-default-script variable. Set rpi-u-boot-scr as
the default provider for meta-raspberrypi.

Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
2020-04-03 17:32:19 +01:00
Pierre-Jean Texier
5e56eff64f raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-03-27 10:32:29 +00:00
Pierre-Jean Texier
bf15756322 raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-03-08 20:59:57 +00:00
Pierre-Jean Texier
7a8c76f056 raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-02-24 11:47:53 +00:00
Pierre-Jean Texier
06c8537bcc raspberrypi-firmware: bump to version 20200205
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-02-08 14:15:48 +00:00
Erik Botö
e7c856ee7b Add support for PiTFT 2.8" with capacitive touch
Add support for the Adafruit PiTFT Plus 320x240 2.8" TFT with
Capacitive Touchscreen, using the same patterns used for the other
versions of the PiTFT screens.

Signed-off-by: Erik Botö <erik.boto@gmail.com>
2020-01-14 16:17:04 +00:00
Andrei Gherzan
09f35259a2 armstubs: Define the new symbols use in Makefile
The tools repository renamed the CC, LD etc symbols to CC7, LD7 etc.
See:
b0c869bc92

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2020-01-14 16:16:46 +00:00
Andrei Gherzan
a9ecd32ae4 raspberrypi-tools: Update to current HEAD
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2020-01-14 16:16:46 +00:00
Andrei Gherzan
655dbf3de8 raspberrypi-firmware: Update to current HEAD
This RaspberryPi firmware update includes a change in the license file
as well[1]. This change is for supporting customisation program.

[1] dd9e9ebb5d

As a result of this change, we update the hash in the bcm2835-bootfiles
recipe as well.

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2019-12-20 19:08:31 +00:00
Andrei Gherzan
b721933013 raspberrypi-tools: Update to current HEAD
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2019-11-08 11:15:04 +01:00
Andrei Gherzan
7f78604c4c raspberrypi-firmware: Update to current HEAD
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2019-11-08 11:15:04 +01:00
Paul Barker
ae6611ea46 bcm2835-bootfiles: Clarify license conditions
We define a new 'Broadcom-RPi' license and include the full text in our
custom-licenses directory.

Signed-off-by: Paul Barker <paul@betafive.co.uk>
2019-10-24 14:08:16 +01:00
Paul Barker
55d521a888 armstubs: License is BSD-3-Clause
All source files in the armstubs directory have a 3-clause BSD license.
The Makefile doesn't appear to use any files from outside this directory
during the build.

Signed-off-by: Paul Barker <paul@betafive.co.uk>
2019-10-24 14:08:16 +01:00
Martin Jansa
baba59dc28 linux-raspberrypi=4.19.80 bcm2835-bootfiles=20191021
* Upgrade the kernel to latest with corresponding firmware.

* This VC4 firmware is compatible with network boot described here:
  https://github.com/raspberrypi/rpi-eeprom/blob/master/firmware/raspberry_pi4_network_boot_beta.md

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2019-10-24 14:07:52 +01:00
Patrick Vacek
4776ecc532 u-boot: drop patches for RPi4 merged upstream.
Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
2019-10-23 11:35:53 +01:00
Chris Laplante
787bcf3a0b bcm2835-bootfiles: tighten up dep on rpi-config
Intuitively, bcm2835-bootfiles:do_deploy should depend on rpi-config:do_deploy.
This indirectly resolves a missing dep between rpi-config:do_deploy and
do_image_rpi_sdimg (on an image recipe inheriting from sdcard_image-rpi.bbclass).
This manifested as changes to rpi-config (e.g. setting or unsetting
ENABLE_* variables) not triggering a rebuild of the SD card image.

Signed-off-by: Chris Laplante <mostthingsweb@gmail.com>
2019-10-09 17:14:23 +01:00
Martin Jansa
81f79f15c3 u-boot-fw-utils: apply the same rpi4 patches as for u-boot recipe
* otherwise u-boot-fw-utils build for rpi4 fails with:
  scripts/kconfig/conf  --defconfig=arch/../configs/rpi_4_defconfig
  Kconfig
  ***
  *** Can't find default configuration "arch/../configs/rpi_4_defconfig"!
  ***
  scripts/kconfig/Makefile:128: recipe for target 'rpi_4_defconfig' failed

* cannot include/require u-boot_2019.07.bbappend directly in
  u-boot-fw-utils_2019.07.bbappend, because then it fails with:
  "u-boot_2019.01.bbappend: not a BitBake file"

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2019-09-09 12:39:19 +03:00
Martin Jansa
e811912fae raspberrypi-firmware: upgrade to latest to fix vc4-fkms
* with 4.19.66 kernel the vc4-fkms no longer works, because it doesn't
  get any usable modes from firmware

* this behavior was introduced probably in one of following changes:
  38e81f25e6
  https://github.com/raspberrypi/linux/pull/3082
  https://github.com/raspberrypi/linux/pull/3110
  66bafab005

* without this fix:
root@rpijama:~# cat /proc/device-tree/soc/firmwarekms@7e600000/status
okay

root@rpijama:~# modeprint vc4
Starting test
Resources

count_connectors : 1
count_encoders   : 1
count_crtcs      : 1
count_fbs        : 0

Connector: HDMI-A-1
        id             : 51
        encoder id     : 0
        conn           : connected
        size           : 0x0 (mm)
        count_modes    : 0
        count_props    : 9
        props          : 1 2 5 6 52 53 54 55 56
        count_encoders : 1
        encoders       : 50

Encoder: TMDS
        id     :50
        crtc_id   :0
        type   :2
        possible_crtcs  :0x1
        possible_clones :0x0

Crtc
        id             : 49
        x              : 0
        y              : 0
        width          : 0
        height         : 0
        mode           : 0xfec884
        gamma size     : 0

Ok

* with this fix:

martin@jama ~ $ sshc root@rpijama
Warning: Permanently added 'rpijama,192.168.169.37' (ECDSA) to the list of known hosts.
root@rpijama:~# modeprint vc4
Starting test
Resources

count_connectors : 1
count_encoders   : 1
count_crtcs      : 1
count_fbs        : 0

Connector: HDMI-A-1
        id             : 51
        encoder id     : 50
        conn           : connected
        size           : 1600x900 (mm)
        count_modes    : 22
        count_props    : 9
        props          : 1 2 5 6 52 53 54 55 56
        count_encoders : 1
        encoders       : 50
Mode: "1920x1080" 1920x1080 60
Mode: "1920x1080" 1920x1080 60
Mode: "1920x1080" 1920x1080 50
Mode: "1920x1080" 1920x1080 30
Mode: "1920x1080" 1920x1080 30
Mode: "1920x1080" 1920x1080 25
Mode: "1920x1080" 1920x1080 24
Mode: "1920x1080" 1920x1080 24
Mode: "1280x1024" 1280x1024 60
Mode: "1360x768" 1360x768 60
Mode: "1152x864" 1152x864 60
Mode: "1280x720" 1280x720 60
Mode: "1280x720" 1280x720 60
Mode: "1280x720" 1280x720 50
Mode: "1024x768" 1024x768 60
Mode: "800x600" 800x600 60
Mode: "720x576" 720x576 50
Mode: "720x480" 720x480 60
Mode: "720x480" 720x480 60
Mode: "640x480" 640x480 60
Mode: "640x480" 640x480 60
Mode: "720x400" 720x400 70

Encoder: TMDS
        id     :50
        crtc_id   :49
        type   :2
        possible_crtcs  :0x1
        possible_clones :0x0

Crtc
        id             : 49
        x              : 0
        y              : 0
        width          : 1920
        height         : 1080
        mode           : 0x1fcde54
        gamma size     : 0

Ok

* tested on raspberrypi3 B
  weston works fine
  qtbase-examples tested with:
  /usr/share/examples/opengl/cube/cube -platform eglfs

* the same issue is now in warrior, after someone tests on raspberrypi4
  it would be good to backport this to warrior as well

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2019-08-28 20:09:48 +01:00
Andrei Gherzan
42c02d063a raspberrypi-firmware.inc: Update to 20190718
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2019-08-15 16:50:50 +01:00
Andrei Gherzan
c99fe712d6 armstubs: Error out when ARMSTUBS is not defined
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2019-07-19 20:05:53 +01:00
Andrei Gherzan
b4ab8cd5d1 rpi-config: Check for armstub based on machine feature
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2019-07-19 20:05:53 +01:00