95 Commits
pyro ... rocko

Author SHA1 Message Date
Andrei Gherzan
8e4c537d84 raspberrypi-cm3.conf: Inherit raspberrypi3 not raspberrypi2
The CM3 module is based Raspberry Pi 3 not 2.

Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2018-09-06 11:25:07 +01:00
Andrei Gherzan
18ab0e981b layer-contents.md: Update documentation
* Raspberry Pi 3B+ support mentioned
* Add info about linux-firmware-raspbian

Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2018-08-17 15:24:49 +01:00
Andrei Gherzan
96ed7489fe linux-firmware: Remove as replaced by linux-firmware-raspbian
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2018-08-17 15:24:49 +01:00
Andrei Gherzan
f1dce2b10a raspberrypi3-64.conf: Use linux-firmware-raspbian packages and add bcm43455
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2018-08-17 15:24:49 +01:00
Andrei Gherzan
064f300928 raspberrypi3.conf: Use linux-firmware-raspbian packages and add bcm43455
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2018-08-17 15:24:49 +01:00
Andrei Gherzan
d9e2a38a1f linux-firmware-raspbian: New recipe which uses RPi-Distro repository
This packages only the firmware needed for the RaspberryPi boards. We use the
RPi-Distro as it's already maintained by the Raspbian guys and we get better
support for the RaspberryPi needed firmwares.

Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2018-08-17 15:24:49 +01:00
Mirza Krak
9e08912bba linux-raspberrypi: update 4.9 recipe to current HEAD
Contains the following changes:

    7f9c648dad64 drm/vc4: Move IRQ enable to PM path
    ffd7bf4085b0 lan78xx: Move enabling of EEE into PHY init code
    4d926e896df0 lan78xx: Don't reset the interface on open
    a782353cc190 lan78xx: Connect phy early
    6f3325193ecf net: lan78xx: Allow for VLAN headers in timeout.
    75f7f0c22544 lan78xx: Ignore DT MAC address if already valid
    d01915873578 lan78xx: Read LED states from Device Tree
    1ad1d52e6cb6 usb: dwc_otg: fix memory corruption in dwc_otg driver

The crucial commit from above is

    7f9c648dad64 drm/vc4: Move IRQ enable to PM path

which fixes an unbalanced IRQ enable warning, which was rapported
in #286

Signed-off-by: Mirza Krak <mirza.krak@northern.tech>
Signed-off-by: Gunnar Andersson <gandersson@genivi.org>
2018-07-20 16:40:19 +01:00
Mirza Krak
4bbb925808 Revert "weston: remove rpi-backend configuration switch"
This reverts commit a1cfeb3324.

This is not ready to be used together with 4.9.y kernel
so simply revert as it seems to work with the rpi-backend.

Signed-off-by: Mirza Krak <mirza.krak@northern.tech>
Signed-off-by: Gunnar Andersson <gandersson@genivi.org>
2018-07-20 16:40:19 +01:00
Paul Barker
acfb857227 Merge pull request #229 from agherzan/pbarker/for-rocko
Rocko Backports
2018-05-02 12:43:26 +01:00
Paul Barker
7e53b1c38c layer-contents.md: Update documentation
* Raspberry Pi 3B+ support mentioned

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2018-04-23 08:59:02 +00:00
Andrei Gherzan
79bf721f64 rpi-base.inc: Add Raspberry Pi 3B+ dtb
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2018-04-23 08:59:02 +00:00
Andrei Gherzan
cc329078a5 firmware: Update to 20180313
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2018-04-23 08:59:02 +00:00
Andrei Gherzan
0bb2038f3d linux-raspberrypi: Update 4.9 recipe to current HEAD
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2018-04-23 08:59:02 +00:00
Peter A. Bigot
d594ecb03c rpi-base.inc: set default wic kickstart file
While wic is not a standard image, adding it to IMAGE_FSTYPES in
local.conf will fail unless a WKS_FILE is provided.

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
2018-04-23 08:59:02 +00:00
Hugo Hromic
bc85503ac4 linux-firmware: fix addition of NVRAM file to image (fixes #184)
Signed-off-by: Hugo Hromic <hhromic@gmail.com>
2018-04-23 08:49:31 +00:00
Martin Kelly
a2d98d9c60 linux-firmware: make rpi fw specific to rpi
Currently, we are installing the rpi custom txt and fw files whenever
the meta-raspberrypi layer is included in bblayers.conf. This breaks
other machines that need to use the bcm43430 drivers but with alternate
txt or fw files.

Install these files only when "rpi" is in MACHINEOVERRIDES.

Signed-off-by: Martin Kelly <mkelly@xevo.com>
2018-04-23 08:49:31 +00:00
Michael Gloff
2be59f293d linux-firmware: Replace /lib with ${nonarch_base_libdir}
Use standard /lib variable name and avoid
QA errors when usermerge DISTRO_FEATURE is enabled.

Signed-off-by: Michael Gloff <mgloff@hotmail.com>
2018-04-23 08:49:31 +00:00
Khem Raj
b23820b4c4 firmware: Use snapshots from master again
This time use the snapshot archives to avoid
repo clone size issues

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-04-23 08:49:31 +00:00
Paul Barker
aee32ad364 firmware: Update to recent commit
There hasn't been a tagged version of the firmware lately, but there have been
several bugfixes listed in the commit history and we're about to move to v4.14.y
as the default kernel so let's get up-to-date.

The actual commit used is the most recent change to the firmware files as of
2018-02-26, the most recent commits which only change the kernel image and other
files we don't use are ignored.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2018-04-23 08:49:31 +00:00
Paul Barker
6de99b9e11 linux-raspberrypi: Update to v4.9.80
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2018-04-23 08:49:31 +00:00
Hugo Hromic
edd29984ae rpi-config: fix config variables with the same initial name being overwritten 2018-04-23 08:49:31 +00:00
Andrei Gherzan
6fb15a9473 linux-raspberrypi: Update 4.9 recipe to 4.9.77
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2018-04-23 08:33:15 +00:00
Paul Barker
0ef0abc4f9 docs: Do not force alabaster theme
Sphinx will use the 'alabaster' theme by default when building locally. However,
Read the Docs will use their own theme by default which suits their site better.

By not specifying html_theme we allow both targets to use the appropriate
default theme.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2018-04-23 08:33:03 +00:00
Paul Barker
a8108a6793 readme: Update quick links
* As we now use GitHub for development we should point users at this repo.

* Layer documentation is now published on Read the Docs.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>

[rocko]: Pointed at rocko documentation instead of latest
2018-04-23 08:32:04 +00:00
Paul Barker
0e5a19dc3d linux-raspberrypi: Update to 4.9.65
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2018-04-23 08:31:25 +00:00
Peter A. Bigot
20358ec57a sdimage-raspberrypi.wks: find /boot partition on mmcblk0
Recently wic was modified to no longer exclude /boot from partitions
added to fstab.  The --on parameter in many kickstart specifications
insufficiently resolved the MMC device, resulting in attempts to mount
/dev/mmcblkp1 as boot when the device should be /dev/mmcblk0p1.

With systemd the mount failure is an error and the system drops into
emergency mode.

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
(cherry picked from commit 0e1e2c6e0a)
Signed-off-by: Phong Tran <tranmanphong@gmail.com>
2018-04-03 14:46:10 +01:00
Paul Barker
b58ccfc696 Merge pull request #203 from benierc/rocko
Backport "rpio: Use pypi.bbclass"
2018-03-05 12:24:11 +00:00
Paul Barker
4bec6c1c17 rpio: Use pypi.bbclass
This should resolve recent issues with the non-https URL in SRC_URI.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2018-03-03 16:17:42 +01:00
Paul Barker
510009f0c8 docs, readme: Update branch references for rocko
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-12-04 17:52:17 +01:00
Khem Raj
f7361bcefe userland: Update to latest revision
Forward port patches as needed

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2017-12-04 17:52:17 +01:00
Andrei Gherzan
1215dca0e0 firmware.inc: Update to 20171029
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2017-12-04 17:52:17 +01:00
Andrei Gherzan
b10c29945c linux-raspberrypi: Update 4.9 recipe to 4.9.59
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2017-12-04 17:52:17 +01:00
Paul Barker
2323140c2a Merge pull request #165 from koenkooi/rocko-backports
Rocko backports
2017-11-30 13:40:44 +00:00
Francesco Giancane
4b13f74d9a userland: RPROVIDES is missing libegl
userland package is the Raspberry Pi provider for the openGL stack.
If selected, it shall provide the gles2 and egl stacks in conjunction
with mesa-gl.

libegl was missing in the RPROVIDES variable, thus some run-time
dependencies were not met when using userland as provider.

Signed-off-by: Francesco Giancane <francescogiancane8@gmail.com>
2017-11-29 11:33:46 +01:00
Andrei Gherzan
4152b2c345 x264: Disable asm for raspberrypi0-wifi
This used to work in the past because this machine was based on raspberrypi
one. Now that they are separate, we need a configuration for it too otherwise:

| common/arm/quant-a.S: Assembler messages:
| common/arm/quant-a.S:362: Error: selected processor does not support `rbit
r1,r1' in ARM mode
| common/arm/quant-a.S:363: Error: selected processor does not support `rbit
r1,r1' in ARM mode

Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2017-11-29 11:32:34 +01:00
Francesco Giancane
a1cfeb3324 weston: remove rpi-backend configuration switch
rpi-backend.so was an attempt to create a specialized
weston backend to be used on raspberry pi like platforms.

At the moment, this backend's support has been dropped in favor
of using the standard drm backend, as the vc4 driver is now mainline
in mesa and in kernel (for kernel support).

As a result, weston on raspberry pi does not require the rpi-backend.so
anymore, nor it is buildable (weston's configure complains about
unrecognized configuration switch).

This patch enables weston to natively run on the DRM backend.

Signed-off-by: Francesco Giancane <francescogiancane8@gmail.com>
2017-10-20 15:54:06 +01:00
Paul Barker
fe99478aa9 docs: Drop comment on broken raspberrypi3-64 HDMI output
Graphical output on raspberrypi3-64 should now be fixed.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-10-12 18:14:20 +01:00
Paul Barker
9d84186870 linux-raspberrypi: Keep framebuffer support when vc4graphics is enabled
Framebuffer support may be required for some monitors and applications.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-10-09 19:31:28 +01:00
Paul Barker
f6fecae825 rpi-config: Do not force HDMI mode for raspberrypi3-64
Forcing hdmi_drive=2 prevents the use of a DVI monitor and a HDMI-DVI converter
cable.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-10-09 19:31:28 +01:00
Andrei Gherzan
c716e0d30c linux-raspberrypi.inc: Define KBUILD_DEFCONFIG for rpi0 WiFi
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2017-10-03 17:09:35 +01:00
Martin Jansa
70b9c3ec57 Revert "qtbase: Enable EGLFS support"
* this reverts commit 04b37dbdb7.
* this makes qtbase and everything which depends on some qt* recipe to
  be effectivelly MACHINE_ARCH

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-10-02 15:30:55 +01:00
Otavio Salvador
04b37dbdb7 qtbase: Enable EGLFS support
Change-Id: Ib96bd995091f6838f7c09cf5daedbf60f18e1a2d
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2017-09-27 11:16:31 +01:00
Otavio Salvador
e2432d3bb4 layer.conf: Add Dynamic Layer mechanism
This allow for bbappend files to be enabled when specific layers are
included.

Change-Id: Iecbcf0de85a64aad71605b60ecd3d9a2586fae85
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2017-09-27 11:16:31 +01:00
Paul Barker
f1e2bf782f omxplayer: Explain inclusion of ffmpeg
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
47da217fda omxplayer: Update Upstream-status tag on patch
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
c26e9d3df5 rpi-base.inc: Set dependencies for creating wic images
We need to ensure that the bootloader and firmware files are present in the
deploy directory before creating wic images.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
37e4e18f4a sdcard_image-rpi: Use un-timestamped link to rootfs partition image
The timestamp in the rootfs partition image filename may not match the current
timestamp if the do_image_rpi_sdimg step is repeated without repeating the
previous do_image_ext3 (or similar) step.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
134e7dd943 sdcard_image-rpi: Drop unnecessary sync commands
These commands are unnecessary and seem to mask failures to find the rootfs.ext3
file when re-running the do_image_rpi_sdimg stage without re-running the
preceeding do_image_ext3 stage.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
e9bb7f0c6d Support using u-boot with Image format for raspberrypi3-64
For raspberrypi3-64 we need to use the Image or Image.gz format with u-boot
instead of the legacy uImage format. We also need to issue the 'booti' command
to boot the kernel instead of 'bootm'.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
43e0169ab7 rpi-base.inc: Simplify setting of IMAGE_BOOT_FILES
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
129107837d linux-raspberrypi-dev: Bump to 4.13.y series
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
49f1a94512 linux-raspberrypi: Move LOADADDR setting to inc file
There is no reason to continue supporting pre-4.8 series kernels so we can move
the setting of LOADADDR to the common inc file.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
e7bac0bed5 linux-raspberrypi: Merge inc files
There is no need to have 2 separate inc files any more and the existing code has
several duplications.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
46f78e37e3 linux-raspberrypi: Drop ineffective code
The code to determine if we need to depend on lzop-native will fail as the local
defconfig file no longer exists.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
cbd2412fb4 linux-raspberrypi-base.bbclass: Drop
The only remaining function in linux-raspberrypi-base was split_overlays() which
is used in the sdcard_image-rpi class. So we can move this function over and
drop the now-empty linux-raspberrypi-base class.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
8311d16e59 linux-raspberrypi: Drop unnecessary code
* The kerneltype variable is not used anywhere after being set.

* The manipulation of KERNEL_DEVICETREE is effectively a no-op, we read the
  current value in get_dts() and store this back into the same variable.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Paul Barker
b00d914e78 omxplayer: Fix build issues
* Update the recipe and patch the Makefile to not require internet access during
  do_compile. Unfortunately, the upstream Makefile wants to access a web service
  hosted on Heroku and to "git clone" ffmpeg with no fixed commit hash.

* Patch Makefile.ffmpeg to avoid a potential race condition between the
  configure & compile stages.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-09-24 20:39:35 +01:00
Andrei Gherzan
acd5869235 linux-firmware: Update brcmfmac43430 to 7.45.41.46
The version of this firmware provided by linux-firmware is 7.45.41.26. This
version seems to have connectivity issues when bonding interfaces. Raspbian
included an updated version (7.45.41.46) which tested, proved to fix this
problem (see https://github.com/resin-os/meta-resin/issues/812).

The version Raspbian is providing is not yet in linux-firmware as they have it
directly from Cypress (see https://github.com/RPi-Distro/repo/issues/88).
Besides the issue described above, it fixes various other issues including a
broadpwn fix.

Hopefully this version, or a newer one, will end up in upstream soon. In order
to catch when that happens and stop overwriting this firmware, a check is added
in the racipe based on the md5sum of the current shipped firmware.

In terms of ditribution license, we got an informal one in the github thread
mentioned above.

Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2017-09-21 23:11:13 +01:00
Khem Raj
f2896b0e5c xserver-xf86-config: Disable glamor for the modesetting driver on pi64
Fixes a xorg server crash with musl see details
https://github.com/voidlinux/void-packages/issues/6091

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2017-09-20 15:50:20 +01:00
Khem Raj
6c4de0b5fe linux-raspberrypi: Build dtbs with dtbs make target for rpi64
OE currently builds dtb files with its own custom targets by
specifying each dtb file as makefile target, this creates bad
dtb for rpi64 bit. This patch calles 'make dtbs' at the end
which regenerates the correct dtb files

This makes the vc4 initialize properly on rpi64

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2017-09-20 15:50:20 +01:00
Khem Raj
bb51049ebe raspberrypi3-64: Use vc4-fkms-v3d overlay for rpi64
Use correct overlay for enabled vc4 accelaration
This enable 3D accelaration over dispmanx on vc4/rpi64
Enable audio over HDMI
Disable overscan to avoid graphics glitches

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2017-09-20 15:50:20 +01:00
Khem Raj
d31377b81a linux-raspberrypi_4.9.bb: Upgrade to 4.9.50
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2017-09-20 15:50:20 +01:00
Andrea Galbusera
5a2b34e56c u-boot: drop now upstreamed patches
oe-core now provides v2017.09 of u-boot which already merged both patches
introduced by commit 94e2929f74 so we can
drop them from meta-raspberrypi.

Signed-off-by: Andrea Galbusera <gizero@gmail.com>
2017-09-18 21:59:02 +01:00
Yusuke Mitsuki
a120ece0e4 bluez5: enable bluetooth on raspberrypi0-wifi
Add functions/variable to enabling bluetooth on raspberrypi0-wifi.

Signed-off-by: Yusuke Mitsuki <mickey.happygolucky@gmail.com>
2017-09-11 13:12:42 +01:00
Yusuke Mitsuki
6abd752bd0 bluez5: add functions/variables to enabling bluetooth on another raspberrypi
functions/variables in this bbappend implemented for only raspberrypi3.
But these must be able to used to enabling bluetooth on another raspberrypi that has bluetooth feature such as raspberrypi0-wifi.

The simple solution is a duplicating these but it is not good ideas for maintainance.

Add functions/variables follows to simplify to enabling bluetooth on another raspberrypi that has bluetooth.
- BCM_BT_SOURCES
- enable_bcm_bluetooth()
- BCM_BT_FIRMWARE
- BCM_BT_SERVICE

Signed-off-by: Yusuke Mitsuki <mickey.happygolucky@gmail.com>
2017-09-11 13:12:42 +01:00
Andrei Gherzan
91f59ae288 userland: Update to current master HEAD
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2017-09-08 18:47:41 +01:00
Andrei Gherzan
aea2129fe3 omxplayer: Update to current master HEAD
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2017-09-08 18:47:41 +01:00
Andrei Gherzan
50cbbb0151 pi-blaster: Update to current master HEAD
License in the README was moved a couple of lines below.

Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2017-09-08 18:47:41 +01:00
Andrei Gherzan
b6b6ecb6cb python-sense-hat: Update to 2.2.0
As well integrate with meta-oe bbclass pypi.

Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2017-09-08 18:47:41 +01:00
Andrei Gherzan
fa82321af2 rpi-gpio: Update to 0.6.3
As well integrate with meta-oe bbclass pypi.

Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2017-09-08 18:47:41 +01:00
Khem Raj
d2acb3ffda extra-apps.md: Document limitations of raspberrypi3-64
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2017-09-08 18:43:53 +01:00
Khem Raj
b934304e43 linux-raspberrypi: Disable DRBD lkm
This comes from drbd-utils in meta-oe

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2017-09-08 18:43:53 +01:00
Aurelian Zanoschi
e59132bdcc wiringpi: Fix linking problem
[github issue #105: wiringpi library is not linked correctly]

Incorrect order of compiler flags causing the libwiringpi.so library
to not have the required linking dependencies. The cross-compilation
patch needed to be reworked in order to fix this problem.

Fixes #105

Signed-off-by: Aurelian Zanoschi <aurelian17@gmail.com>
2017-09-01 13:59:51 +01:00
Zdzisław Krajewski
7a7d871cc1 linux-raspberrypi: Add option for disabling rpi boot logo.
Signed-off-by Zdzisław Krajewski <zdzichucb@gmail.com>
2017-09-01 11:14:19 +01:00
Andrea Ghittino
88478c3874 linux-raspberrypi: fix kernel configuration using cfg files
In tree configurations are now used to build the kernel and
it is possible to extend the config via bbappend and cfg fragments

Fix issue 14

Signed-off-by: Andrea Ghittino <aghittino@gmail.com>
2017-08-31 15:12:11 +01:00
Andrea Galbusera
f70b24b1f1 sdcard_image-rpi: fix absolute path in vfat symlink
Fix bitbake complaining with:

ERROR: core-image-minimal-1.0-r0 do_image_complete: sstate found an absolute
path symlink [...].vfat pointing at [...].vfat. Please replace this with a
relative link.

This patch redefines SDIMG_VFAT as a file name instead of a full absolute path,
then fixing the symlink creation by pointing to a relative target. The cp
command that deploys the artifact is changed accordingly to include the
destination path.

Signed-off-by: Andrea Galbusera <gizero@gmail.com>
2017-08-29 16:27:05 +01:00
Paul Barker
2aa08e4f97 firmware: Update to tag '1.20170811'
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-08-29 15:36:13 +01:00
Paul Barker
c098439ac1 linux-raspberrypi: Update to tag 'raspberrypi-kernel_1.20170811-1'
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-08-29 15:36:13 +01:00
Paul Barker
94e2929f74 u-boot: Fix boot and keyboard for rpi devices
u-boot v2017.07 was not able to boot a Linux kernel or handle keyboard input.
This is fixed by reverting a config change to re-enable CONFIG_OF_EMBED and
backporting another config change to enable CONFIG_DM_KEYBOARD.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-08-28 22:20:02 +01:00
Khem Raj
1a06502656 gstreamer1.0-omx: Match with oe-core 1.12.x gstreamer
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2017-08-25 08:19:30 +01:00
Paul Barker
1b589998f4 Merge pull request #102 from shr-project/jansa/master
Fixes for bitbake world
2017-08-13 09:25:54 +01:00
Martin Jansa
ff02bf92e6 packagegroup-rpi-test, rpi-test-image: restrict to ^rpi$ and include omxplayer only for 32bit rpi
* omxplayer has:
  COMPATIBLE_MACHINE_rpi_aarch64 = null

  so it cannot be inclued for raspberrypi3-64
* components used by this packagegroup are also restricted to ^rpi$ so
  the packagegroup and the image using it cannot be built for anything else
* fixes couple errors when trying to build world with meta-raspberrypi included

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-07-27 10:56:34 +02:00
Martin Jansa
56d0bdb5fe recipe: anchor regexps in COMPATIBLE_MACHINE
* bitbake is using re.match, so raspberrypi actually matches with anything
  ^raspberrypi.* which currently works, but it will also match with hypothetical
  raspberrypi-is-no-more-this-is-banana-now MACHINE which isn't intended by
  this COMPATIBLE_MACHINE.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-07-27 10:56:34 +02:00
Martin Jansa
ab4006bb2e weston: use just one append and one bb.utils.contains
* drop duplicated --enable-rpi-compositor and WESTON_NATIVE_BACKEND=rpi-backend.so
* use rpi override, adding --enable-rpi-compositor unconditionally breaks other MACHINEs with:
  configure: WARNING: unrecognized options: --enable-rpi-compositor
* use just one append and one bb.utils.contains to save some bitbake cycles while parsing

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-07-27 10:56:34 +02:00
Thomas Thorne
f6a2ca21c7 rpio: Add RDEPENDS For python-logging & python-threading
[GitHub Ticket #98 - rpio requires the logging and threading Python
packages but does not RDEPENDS them in recipie]

The rpio tool needs the Python logging and threading pacakges installed
on the target system for it to work.  The pacakges are not included when
doing a rpi-basci-image.  This change updates the recipe so that all the
required dependencies of the prio script are identified by the recipie.

Fixes #98

Signed-off-by: Thomas A F Thorne <TafThorne@GoogleMail.com>
2017-07-26 17:09:06 +01:00
Andrea Galbusera
1e1b50c55d userland: Add missing EGL_CAST defines
Needed by libepoxy

Signed-off-by: Andrea Galbusera <gizero@gmail.com>
2017-07-14 14:35:59 +01:00
Paul Barker
4cff21e243 linux-raspberrypi-dev: Switch to rpi-4.12.y
Linux v4.12 is now released.

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-07-05 15:45:33 +01:00
Paul Barker
16a8384a9a linux-rasbperrypi: Update to 4.9.35
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
2017-07-02 11:37:13 +01:00
Andrea Galbusera
04a33eadfb rpi-base: wic: generate entries for u-boot
This commit allow wic generated images to work when we want u-boot to
load the kernel image.

Augment IMAGE_BOOT_FILES with the proper entries when KERNEL_IMAGETYPE
is "uImage". More specifically add u-boot image and boot.scr to deployed files
and give the proper name to the kernel image accordingly.

Signed-off-by: Andrea Galbusera <gizero@gmail.com>
2017-06-30 11:46:21 +01:00
Andreas Müller
fc17cd7419 sdcard_image-rpi: replace IMAGE_DEPENDS_rpi-sdimg by do_image_rpi-sdimg[depends]
* oe-core removed IMAGE_DEPENDS -> parsing fails with hint how to fix
* add required task for each recipe

Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
2017-06-29 23:00:36 +01:00
Michal Mazurek
d9dbfe6536 raspberrypi3-64.conf: Don't use raspberrypi as MACHINEOVERRIDES
The current setup broke the build for rpi3-64 when we wanted to port
some changes from rpi3 to rpi0.

Signed-off-by: Michal Mazurek <michal@resin.io>
2017-06-26 14:51:06 +01:00
Andrei Gherzan
ca77a583c3 Merge pull request #86 from mattsm/master
sdcard_image-rpi.bbclass: deploy vfat partition
2017-06-26 13:37:05 +01:00
Matthew McClintock
a6bb80c935 sdcard_image-rpi.bbclass: deploy vfat partition
This is useful to update the bootloader/vfat partition from u-boot when
you don't want to update everything:

U-Boot> tftpboot 0x1000000 tmp/0VXje
Waiting for Ethernet connection... done.
Using sms0 device
TFTP from server 192.168.0.1; our IP address is 192.168.0.26
Filename 'image.vfat'.
Load address: 0x1000000
Loading: ##################################################  40 MiB
	 2.1 MiB/s
done
Bytes transferred = 41943040 (2800000 hex)
U-Boot> mmc part

Partition Map for MMC device 0  --   Partition Type: DOS

Part	Start Sector	Num Sectors	UUID		Type
  1	8192      	81920     	a63a4fbc-01	0c Boot
  2	90112     	163840    	a63a4fbc-02	83
U-Boot> mmc erase 0x2000 0x14000

MMC erase: dev # 0, block # 8192, count 81920 ... 81920 blocks erased:
OK
U-Boot> mmc write 0x1000000 0x2000 0x14000

MMC write: dev # 0, block # 8192, count 81920 ... 81920 blocks written:
OK
U-Boot>

Signed-off-by: Matthew McClintock <msm-oss@mcclintock.net>
2017-06-21 10:54:32 -05:00
Andrei Gherzan
11fec46133 Merge pull request #83 from Technux/update-pi-blaster
pi-blaster: update to include proper rpi3 support
2017-06-09 12:22:05 +01:00
Petter Mabäcker
df901c2915 pi-blaster: update to include proper rpi3 support
Update to latest available revision, in order to include proper rpi3
support as well as latest fixes.

LIC_FILES_CHKSUM for the license text in README.md is changed to handle
fixes of whitespace and newlines in the license text, introduced by the
pi-blaster commit: '0e1a1df Cleaning up the README'.

Signed-off-by: Petter Mabäcker <petter@technux.se>
2017-06-08 16:28:23 +02:00
70 changed files with 696 additions and 511 deletions

View File

@@ -10,10 +10,11 @@ Yocto BSP layer for the Raspberry Pi boards - <http://www.raspberrypi.org/>.
## Quick links ## Quick links
* Git repository web frontend: * Git repository web frontend:
<http://git.yoctoproject.org/cgit/cgit.cgi/meta-raspberrypi/> <https://github.com/agherzan/meta-raspberrypi>
* Mailing list (yocto mailing list): <yocto@yoctoproject.org> * Mailing list (yocto mailing list): <yocto@yoctoproject.org>
* Issues management (Github Issues): * Issues management (Github Issues):
<https://github.com/agherzan/meta-raspberrypi/issues> <https://github.com/agherzan/meta-raspberrypi/issues>
* Documentation: <http://meta-raspberrypi.readthedocs.io/en/rocko/>
## Description ## Description
@@ -33,12 +34,12 @@ OpenEmbedded/Yocto distributions and layer stacks, such as:
This layer depends on: This layer depends on:
* URI: git://git.yoctoproject.org/poky * URI: git://git.yoctoproject.org/poky
* branch: master * branch: rocko
* revision: HEAD * revision: HEAD
* URI: git://git.openembedded.org/meta-openembedded * URI: git://git.openembedded.org/meta-openembedded
* layers: meta-oe, meta-multimedia, meta-networking, meta-python * layers: meta-oe, meta-multimedia, meta-networking, meta-python
* branch: master * branch: rocko
* revision: HEAD * revision: HEAD
## Quick Start ## Quick Start

View File

@@ -1,29 +0,0 @@
inherit linux-kernel-base
def get_dts(d, ver=None):
import re
staging_dir = d.getVar("STAGING_KERNEL_BUILDDIR")
dts = d.getVar("KERNEL_DEVICETREE")
# d.getVar() might return 'None' as a normal string
# leading to 'is None' check isn't enough.
# TODO: Investigate if this is a bug in bitbake
if ver is None or ver == "None":
''' if 'ver' isn't set try to grab the kernel version
from the kernel staging '''
ver = get_kernelversion_file(staging_dir)
return dts
def split_overlays(d, out, ver=None):
dts = get_dts(d, ver)
if out:
overlays = oe.utils.str_filter_out('\S+\-overlay\.dtb$', dts, d)
overlays = oe.utils.str_filter_out('\S+\.dtbo$', overlays, d)
else:
overlays = oe.utils.str_filter('\S+\-overlay\.dtb$', dts, d) + \
" " + oe.utils.str_filter('\S+\.dtbo$', dts, d)
return overlays

View File

@@ -1,5 +1,4 @@
inherit image_types inherit image_types
inherit linux-raspberrypi-base
# #
# Create an image that can by written onto a SD card using dd. # Create an image that can by written onto a SD card using dd.
@@ -48,15 +47,15 @@ IMAGE_ROOTFS_ALIGNMENT = "4096"
# Use an uncompressed ext3 by default as rootfs # Use an uncompressed ext3 by default as rootfs
SDIMG_ROOTFS_TYPE ?= "ext3" SDIMG_ROOTFS_TYPE ?= "ext3"
SDIMG_ROOTFS = "${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.${SDIMG_ROOTFS_TYPE}" SDIMG_ROOTFS = "${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.${SDIMG_ROOTFS_TYPE}"
IMAGE_DEPENDS_rpi-sdimg = " \ do_image_rpi_sdimg[depends] = " \
parted-native \ parted-native:do_populate_sysroot \
mtools-native \ mtools-native:do_populate_sysroot \
dosfstools-native \ dosfstools-native:do_populate_sysroot \
virtual/kernel:do_deploy \ virtual/kernel:do_deploy \
${IMAGE_BOOTLOADER} \ ${IMAGE_BOOTLOADER}:do_deploy \
${@bb.utils.contains('KERNEL_IMAGETYPE', 'uImage', 'u-boot', '',d)} \ ${@bb.utils.contains('RPI_USE_U_BOOT', '1', 'u-boot:do_deploy', '',d)} \
" "
# SD card image name # SD card image name
@@ -72,6 +71,21 @@ SDIMG = "${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.rpi-sdimg"
# Additional files and/or directories to be copied into the vfat partition from the IMAGE_ROOTFS. # Additional files and/or directories to be copied into the vfat partition from the IMAGE_ROOTFS.
FATPAYLOAD ?= "" FATPAYLOAD ?= ""
# SD card vfat partition image name
SDIMG_VFAT = "${IMAGE_NAME}.vfat"
SDIMG_LINK_VFAT = "${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.vfat"
def split_overlays(d, out, ver=None):
dts = d.getVar("KERNEL_DEVICETREE")
if out:
overlays = oe.utils.str_filter_out('\S+\-overlay\.dtb$', dts, d)
overlays = oe.utils.str_filter_out('\S+\.dtbo$', overlays, d)
else:
overlays = oe.utils.str_filter('\S+\-overlay\.dtb$', dts, d) + \
" " + oe.utils.str_filter('\S+\.dtbo$', dts, d)
return overlays
IMAGE_CMD_rpi-sdimg () { IMAGE_CMD_rpi-sdimg () {
# Align partitions # Align partitions
@@ -82,7 +96,7 @@ IMAGE_CMD_rpi-sdimg () {
echo "Creating filesystem with Boot partition ${BOOT_SPACE_ALIGNED} KiB and RootFS $ROOTFS_SIZE KiB" echo "Creating filesystem with Boot partition ${BOOT_SPACE_ALIGNED} KiB and RootFS $ROOTFS_SIZE KiB"
# Check if we are building with device tree support # Check if we are building with device tree support
DTS="${@get_dts(d)}" DTS="${KERNEL_DEVICETREE}"
# Initialize sdcard image file # Initialize sdcard image file
dd if=/dev/zero of=${SDIMG} bs=1024 count=0 seek=${SDIMG_SIZE} dd if=/dev/zero of=${SDIMG} bs=1024 count=0 seek=${SDIMG_SIZE}
@@ -122,16 +136,13 @@ IMAGE_CMD_rpi-sdimg () {
mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${DTB_BASE_NAME}.${DTB_EXT} ::overlays/${DTB_BASE_NAME}.${DTB_EXT} mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${DTB_BASE_NAME}.${DTB_EXT} ::overlays/${DTB_BASE_NAME}.${DTB_EXT}
done done
fi fi
case "${KERNEL_IMAGETYPE}" in if [ "${RPI_USE_U_BOOT}" = "1" ]; then
"uImage")
mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/u-boot.bin ::${SDIMG_KERNELIMAGE} mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/u-boot.bin ::${SDIMG_KERNELIMAGE}
mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}${KERNEL_INITRAMFS}-${MACHINE}.bin ::uImage mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}${KERNEL_INITRAMFS}-${MACHINE}.bin ::${KERNEL_IMAGETYPE}
mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/boot.scr ::boot.scr mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/boot.scr ::boot.scr
;; else
*)
mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}${KERNEL_INITRAMFS}-${MACHINE}.bin ::${SDIMG_KERNELIMAGE} mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}${KERNEL_INITRAMFS}-${MACHINE}.bin ::${SDIMG_KERNELIMAGE}
;; fi
esac
if [ -n ${FATPAYLOAD} ] ; then if [ -n ${FATPAYLOAD} ] ; then
echo "Copying payload into VFAT" echo "Copying payload into VFAT"
@@ -145,14 +156,20 @@ IMAGE_CMD_rpi-sdimg () {
echo "${IMAGE_NAME}" > ${WORKDIR}/image-version-info echo "${IMAGE_NAME}" > ${WORKDIR}/image-version-info
mcopy -i ${WORKDIR}/boot.img -v ${WORKDIR}/image-version-info :: mcopy -i ${WORKDIR}/boot.img -v ${WORKDIR}/image-version-info ::
# Deploy vfat partition (for u-boot case only)
if [ "${RPI_USE_U_BOOT}" = "1" ]; then
cp ${WORKDIR}/boot.img ${IMGDEPLOYDIR}/${SDIMG_VFAT}
ln -sf ${SDIMG_VFAT} ${SDIMG_LINK_VFAT}
fi
# Burn Partitions # Burn Partitions
dd if=${WORKDIR}/boot.img of=${SDIMG} conv=notrunc seek=1 bs=$(expr ${IMAGE_ROOTFS_ALIGNMENT} \* 1024) && sync && sync dd if=${WORKDIR}/boot.img of=${SDIMG} conv=notrunc seek=1 bs=$(expr ${IMAGE_ROOTFS_ALIGNMENT} \* 1024)
# If SDIMG_ROOTFS_TYPE is a .xz file use xzcat # If SDIMG_ROOTFS_TYPE is a .xz file use xzcat
if echo "${SDIMG_ROOTFS_TYPE}" | egrep -q "*\.xz" if echo "${SDIMG_ROOTFS_TYPE}" | egrep -q "*\.xz"
then then
xzcat ${SDIMG_ROOTFS} | dd of=${SDIMG} conv=notrunc seek=1 bs=$(expr 1024 \* ${BOOT_SPACE_ALIGNED} + ${IMAGE_ROOTFS_ALIGNMENT} \* 1024) && sync && sync xzcat ${SDIMG_ROOTFS} | dd of=${SDIMG} conv=notrunc seek=1 bs=$(expr 1024 \* ${BOOT_SPACE_ALIGNED} + ${IMAGE_ROOTFS_ALIGNMENT} \* 1024)
else else
dd if=${SDIMG_ROOTFS} of=${SDIMG} conv=notrunc seek=1 bs=$(expr 1024 \* ${BOOT_SPACE_ALIGNED} + ${IMAGE_ROOTFS_ALIGNMENT} \* 1024) && sync && sync dd if=${SDIMG_ROOTFS} of=${SDIMG} conv=notrunc seek=1 bs=$(expr 1024 \* ${BOOT_SPACE_ALIGNED} + ${IMAGE_ROOTFS_ALIGNMENT} \* 1024)
fi fi
# Optionally apply compression # Optionally apply compression

View File

@@ -12,3 +12,12 @@ BBFILE_PRIORITY_raspberrypi = "9"
# Additional license directories. # Additional license directories.
LICENSE_PATH += "${LAYERDIR}/files/custom-licenses" LICENSE_PATH += "${LAYERDIR}/files/custom-licenses"
# The dynamic-layers directory hosts the extensions and layer specific
# modifications.
#
# The .bbappend and .bb files are included if the respective layer
# collection is available.
BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bbappend' % layer \
for layer in BBFILE_COLLECTIONS.split())}"
BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bb' % layer \
for layer in BBFILE_COLLECTIONS.split())}"

View File

@@ -6,6 +6,7 @@ SOC_FAMILY = "rpi"
include conf/machine/include/soc-family.inc include conf/machine/include/soc-family.inc
IMAGE_FSTYPES ?= "tar.bz2 ext3 rpi-sdimg" IMAGE_FSTYPES ?= "tar.bz2 ext3 rpi-sdimg"
WKS_FILE ?= "sdimage-raspberrypi.wks"
XSERVER = " \ XSERVER = " \
xserver-xorg \ xserver-xorg \
@@ -19,6 +20,7 @@ KERNEL_DEVICETREE ?= " \
bcm2708-rpi-b-plus.dtb \ bcm2708-rpi-b-plus.dtb \
bcm2709-rpi-2-b.dtb \ bcm2709-rpi-2-b.dtb \
bcm2710-rpi-3-b.dtb \ bcm2710-rpi-3-b.dtb \
bcm2710-rpi-3-b-plus.dtb \
bcm2708-rpi-cm.dtb \ bcm2708-rpi-cm.dtb \
bcm2710-rpi-cm3.dtb \ bcm2710-rpi-cm3.dtb \
\ \
@@ -41,7 +43,17 @@ KERNEL_DEVICETREE ?= " \
overlays/pi3-miniuart-bt.dtbo \ overlays/pi3-miniuart-bt.dtbo \
overlays/vc4-kms-v3d.dtbo \ overlays/vc4-kms-v3d.dtbo \
" "
KERNEL_IMAGETYPE ?= "Image"
# By default:
#
# * When u-boot is disabled use the "Image" format which can be directly loaded
# by the rpi firmware.
#
# * When u-boot is enabled use the "uImage" format and the "bootm" command
# within u-boot to load the kernel.
KERNEL_BOOTCMD ??= "bootm"
KERNEL_IMAGETYPE_UBOOT ??= "uImage"
KERNEL_IMAGETYPE ?= "${@bb.utils.contains('RPI_USE_U_BOOT', '1', '${KERNEL_IMAGETYPE_UBOOT}', 'Image', d)}"
MACHINE_FEATURES += "apm usbhost keyboard vfat ext2 screen touchscreen alsa bluetooth wifi sdio" MACHINE_FEATURES += "apm usbhost keyboard vfat ext2 screen touchscreen alsa bluetooth wifi sdio"
@@ -83,7 +95,13 @@ def make_dtb_boot_files(d):
IMAGE_BOOT_FILES ?= "bcm2835-bootfiles/* \ IMAGE_BOOT_FILES ?= "bcm2835-bootfiles/* \
${@make_dtb_boot_files(d)} \ ${@make_dtb_boot_files(d)} \
${KERNEL_IMAGETYPE};${SDIMG_KERNELIMAGE} \ ${@bb.utils.contains('RPI_USE_U_BOOT', '1', \
'${KERNEL_IMAGETYPE} u-boot.bin;${SDIMG_KERNELIMAGE} boot.scr', \
'${KERNEL_IMAGETYPE};${SDIMG_KERNELIMAGE}', d)} \
"
do_image_wic[depends] += " \
bcm2835-bootfiles:do_deploy \
${@bb.utils.contains('RPI_USE_U_BOOT', '1', 'u-boot:do_deploy', '',d)} \
" "
# The kernel image is installed into the FAT32 boot partition and does not need # The kernel image is installed into the FAT32 boot partition and does not need

View File

@@ -2,5 +2,5 @@
#@NAME: RaspberryPi Compute Module 3 (CM3) #@NAME: RaspberryPi Compute Module 3 (CM3)
#@DESCRIPTION: Machine configuration for the RaspberryPi Compute Module 3 (CM3) #@DESCRIPTION: Machine configuration for the RaspberryPi Compute Module 3 (CM3)
MACHINEOVERRIDES = "raspberrypi2:${MACHINE}" MACHINEOVERRIDES = "raspberrypi3:${MACHINE}"
include conf/machine/raspberrypi2.conf include conf/machine/raspberrypi3.conf

View File

@@ -2,9 +2,9 @@
#@NAME: RaspberryPi 3 Development Board #@NAME: RaspberryPi 3 Development Board
#@DESCRIPTION: Machine configuration for the RaspberryPi 3 in 64 bits mode #@DESCRIPTION: Machine configuration for the RaspberryPi 3 in 64 bits mode
MACHINEOVERRIDES = "raspberrypi3:raspberrypi:${MACHINE}" MACHINEOVERRIDES = "raspberrypi3:${MACHINE}"
MACHINE_EXTRA_RRECOMMENDS += "linux-firmware-bcm43430" MACHINE_EXTRA_RRECOMMENDS += "linux-firmware-raspbian-bcm43430 linux-firmware-raspbian-bcm43455"
require conf/machine/include/arm/arch-armv8.inc require conf/machine/include/arm/arch-armv8.inc
include conf/machine/include/rpi-base.inc include conf/machine/include/rpi-base.inc
@@ -31,6 +31,7 @@ KERNEL_DEVICETREE = " \
overlays/pi3-disable-bt.dtbo \ overlays/pi3-disable-bt.dtbo \
overlays/pi3-miniuart-bt.dtbo \ overlays/pi3-miniuart-bt.dtbo \
overlays/vc4-kms-v3d.dtbo \ overlays/vc4-kms-v3d.dtbo \
overlays/vc4-fkms-v3d.dtbo \
" "
SERIAL_CONSOLE ?= "115200 ttyS0" SERIAL_CONSOLE ?= "115200 ttyS0"
@@ -38,3 +39,8 @@ VC4_CMA_SIZE ?= "cma-256"
UBOOT_MACHINE = "rpi_3_config" UBOOT_MACHINE = "rpi_3_config"
MACHINE_FEATURES_append = " vc4graphics" MACHINE_FEATURES_append = " vc4graphics"
# When u-boot is enabled we need to use the "Image" format and the "booti"
# command to load the kernel
KERNEL_IMAGETYPE_UBOOT ?= "Image"
KERNEL_BOOTCMD ?= "booti"

View File

@@ -6,7 +6,7 @@ DEFAULTTUNE ?= "cortexa7thf-neon-vfpv4"
require conf/machine/include/tune-cortexa7.inc require conf/machine/include/tune-cortexa7.inc
include conf/machine/include/rpi-base.inc include conf/machine/include/rpi-base.inc
MACHINE_EXTRA_RRECOMMENDS += "linux-firmware-bcm43430" MACHINE_EXTRA_RRECOMMENDS += "linux-firmware-raspbian-bcm43430 linux-firmware-raspbian-bcm43455"
SDIMG_KERNELIMAGE ?= "kernel7.img" SDIMG_KERNELIMAGE ?= "kernel7.img"
KERNEL_DEFCONFIG ?= "bcm2709_defconfig" KERNEL_DEFCONFIG ?= "bcm2709_defconfig"

View File

@@ -58,9 +58,9 @@ author = 'meta-raspberrypi contributors'
# built documents. # built documents.
# #
# The short X.Y version. # The short X.Y version.
version = 'master' version = 'rocko'
# The full version, including alpha/beta/rc tags. # The full version, including alpha/beta/rc tags.
release = 'master' release = 'rocko'
# The language for content autogenerated by Sphinx. Refer to documentation # The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages. # for a list of supported languages.
@@ -120,7 +120,7 @@ todo_include_todos = False
# The theme to use for HTML and HTML Help pages. See the documentation for # The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes. # a list of builtin themes.
# #
html_theme = 'alabaster' # html_theme = 'alabaster'
# Theme options are theme-specific and customize the look and feel of a theme # Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the # further. For a list of options available for each theme, see the

View File

@@ -95,14 +95,22 @@ this variable in local.conf:
ENABLE_KGDB = "1" ENABLE_KGDB = "1"
## Disable rpi boot logo
To disable rpi boot logo, set this variable in local.conf:
DISABLE_RPI_BOOT_LOGO = "1"
## Boot to U-Boot ## Boot to U-Boot
To have u-boot load kernel image, set in your local.conf: To have u-boot load kernel image, set in your local.conf:
KERNEL_IMAGETYPE = "uImage" RPI_USE_U_BOOT = "1"
This will make kernel.img be u-boot image which will load uImage. By default, This will select the appropriate image format for use with u-boot automatically.
kernel.img is the actual kernel image (ex. Image). For further customisation the KERNEL_IMAGETYPE and KERNEL_BOOTCMD variables can
be overridden to select the exact kernel image type (eg. zImage) and u-boot
command (eg. bootz) to be used.
## Image with Initramfs ## Image with Initramfs

View File

@@ -11,6 +11,8 @@
* raspberrypi-cm (dummy alias for raspberrypi) * raspberrypi-cm (dummy alias for raspberrypi)
* raspberrypi-cm3 (dummy alias for raspberrypi2) * raspberrypi-cm3 (dummy alias for raspberrypi2)
Note: The raspberrypi3 machines include support for Raspberry Pi 3B+.
## Images ## Images
* rpi-hwup-image * rpi-hwup-image
@@ -22,3 +24,17 @@
* rpi-test-image * rpi-test-image
* Image based on rpi-basic-image which includes most of the packages in this * Image based on rpi-basic-image which includes most of the packages in this
layer and some media samples. layer and some media samples.
For other uses it's recommended to base images on `core-image-minimal` or
`core-image-base` as appropriate. The old image names (`rpi-hwup-image` and
`rpi-basic-image`) are deprecated.
## WiFi firmware blobs
Be aware that the WiFi firmwares for the supported boards are not provided by
`linux-firmware` but by a custom recipe which only packages the needed blobs
for these boards. This is because the upstream `linux-firmware` doesn't support
or has outdated files for the blobs we need. The recipe
`linux-firmware-raspbian` is based on a fork of `linux-firmware` which
includes everything we need in order to fully support the WiFi hardware. All
machines define `MACHINE_EXTRA_RRECOMMENDS` accordingly.

View File

@@ -9,7 +9,7 @@ include recipes-bsp/common/firmware.inc
RDEPENDS_${PN} = "rpi-config" RDEPENDS_${PN} = "rpi-config"
COMPATIBLE_MACHINE = "raspberrypi" COMPATIBLE_MACHINE = "^rpi$"
S = "${RPIFW_S}/boot" S = "${RPIFW_S}/boot"

View File

@@ -5,7 +5,7 @@ DESCRIPTION = "Commented config.txt file for the Raspberry Pi. \
LICENSE = "MIT" LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
COMPATIBLE_MACHINE = "raspberrypi" COMPATIBLE_MACHINE = "^rpi$"
SRCREV = "648ffc470824c43eb0d16c485f4c24816b32cd6f" SRCREV = "648ffc470824c43eb0d16c485f4c24816b32cd6f"
SRC_URI = "git://github.com/Evilpaul/RPi-config.git;protocol=git;branch=master \ SRC_URI = "git://github.com/Evilpaul/RPi-config.git;protocol=git;branch=master \
@@ -21,7 +21,8 @@ PITFT28r="${@bb.utils.contains("MACHINE_FEATURES", "pitft28r", "1", "0", d)}"
PITFT35r="${@bb.utils.contains("MACHINE_FEATURES", "pitft35r", "1", "0", d)}" PITFT35r="${@bb.utils.contains("MACHINE_FEATURES", "pitft35r", "1", "0", d)}"
VC4GRAPHICS="${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "1", "0", d)}" VC4GRAPHICS="${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "1", "0", d)}"
VC4DTBO_raspberrypi3-64 = "vc4-fkms-v3d"
VC4DTBO ?= "vc4-kms-v3d"
inherit deploy inherit deploy
do_deploy() { do_deploy() {
@@ -30,25 +31,25 @@ do_deploy() {
cp ${S}/config.txt ${DEPLOYDIR}/bcm2835-bootfiles/ cp ${S}/config.txt ${DEPLOYDIR}/bcm2835-bootfiles/
if [ -n "${KEY_DECODE_MPG2}" ]; then if [ -n "${KEY_DECODE_MPG2}" ]; then
sed -i '/#decode_MPG2/ c\decode_MPG2=${KEY_DECODE_MPG2}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt sed -i '/#decode_MPG2=/ c\decode_MPG2=${KEY_DECODE_MPG2}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
fi fi
if [ -n "${KEY_DECODE_WVC1}" ]; then if [ -n "${KEY_DECODE_WVC1}" ]; then
sed -i '/#decode_WVC1/ c\decode_WVC1=${KEY_DECODE_WVC1}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt sed -i '/#decode_WVC1=/ c\decode_WVC1=${KEY_DECODE_WVC1}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
fi fi
if [ -n "${DISABLE_OVERSCAN}" ]; then if [ -n "${DISABLE_OVERSCAN}" ]; then
sed -i '/#disable_overscan/ c\disable_overscan=${DISABLE_OVERSCAN}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt sed -i '/#disable_overscan=/ c\disable_overscan=${DISABLE_OVERSCAN}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
fi fi
if [ -n "${ARM_FREQ}" ]; then if [ -n "${ARM_FREQ}" ]; then
sed -i '/#arm_freq/ c\arm_freq=${ARM_FREQ}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt sed -i '/#arm_freq=/ c\arm_freq=${ARM_FREQ}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
fi fi
if [ -n "${CORE_FREQ}" ]; then if [ -n "${CORE_FREQ}" ]; then
sed -i '/#core_freq/ c\core_freq=${CORE_FREQ}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt sed -i '/#core_freq=/ c\core_freq=${CORE_FREQ}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
fi fi
if [ -n "${SDRAM_FREQ}" ]; then if [ -n "${SDRAM_FREQ}" ]; then
sed -i '/#sdram_freq/ c\sdram_freq=${SDRAM_FREQ}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt sed -i '/#sdram_freq=/ c\sdram_freq=${SDRAM_FREQ}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
fi fi
if [ -n "${OVER_VOLTAGE}" ]; then if [ -n "${OVER_VOLTAGE}" ]; then
sed -i '/#over_voltage/ c\over_voltage=${OVER_VOLTAGE}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt sed -i '/#over_voltage=/ c\over_voltage=${OVER_VOLTAGE}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
fi fi
# GPU memory # GPU memory
@@ -56,13 +57,13 @@ do_deploy() {
sed -i '/#gpu_mem=/ c\gpu_mem=${GPU_MEM}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt sed -i '/#gpu_mem=/ c\gpu_mem=${GPU_MEM}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
fi fi
if [ -n "${GPU_MEM_256}" ]; then if [ -n "${GPU_MEM_256}" ]; then
sed -i '/#gpu_mem_256/ c\gpu_mem_256=${GPU_MEM_256}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt sed -i '/#gpu_mem_256=/ c\gpu_mem_256=${GPU_MEM_256}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
fi fi
if [ -n "${GPU_MEM_512}" ]; then if [ -n "${GPU_MEM_512}" ]; then
sed -i '/#gpu_mem_512/ c\gpu_mem_512=${GPU_MEM_512}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt sed -i '/#gpu_mem_512=/ c\gpu_mem_512=${GPU_MEM_512}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
fi fi
if [ -n "${GPU_MEM_1024}" ]; then if [ -n "${GPU_MEM_1024}" ]; then
sed -i '/#gpu_mem_1024/ c\gpu_mem_1024=${GPU_MEM_1024}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt sed -i '/#gpu_mem_1024=/ c\gpu_mem_1024=${GPU_MEM_1024}' ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
fi fi
# Video camera support # Video camera support
@@ -114,7 +115,7 @@ do_deploy() {
# VC4 Graphics support # VC4 Graphics support
if [ "${VC4GRAPHICS}" = "1" ]; then if [ "${VC4GRAPHICS}" = "1" ]; then
echo "# Enable VC4 Graphics" >> ${DEPLOYDIR}/bcm2835-bootfiles/config.txt echo "# Enable VC4 Graphics" >> ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
echo "dtoverlay=vc4-kms-v3d,${VC4_CMA_SIZE}" >> ${DEPLOYDIR}/bcm2835-bootfiles/config.txt echo "dtoverlay=${VC4DTBO},${VC4_CMA_SIZE}" >> ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
fi fi
# Waveshare "C" 1024x600 7" Rev2.1 IPS capacitive touch (http://www.waveshare.com/7inch-HDMI-LCD-C.htm) # Waveshare "C" 1024x600 7" Rev2.1 IPS capacitive touch (http://www.waveshare.com/7inch-HDMI-LCD-C.htm)
@@ -129,6 +130,12 @@ do_deploy() {
} }
do_deploy_append_raspberrypi3-64() { do_deploy_append_raspberrypi3-64() {
echo "# have a properly sized image" >> ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
echo "disable_overscan=1" >> ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
echo "# Enable audio (loads snd_bcm2835)" >> ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
echo "dtparam=audio=on" >> ${DEPLOYDIR}/bcm2835-bootfiles/config.txt
# Device Tree support # Device Tree support
echo "# Load correct Device Tree for Aarch64" >>${DEPLOYDIR}/bcm2835-bootfiles/config.txt echo "# Load correct Device Tree for Aarch64" >>${DEPLOYDIR}/bcm2835-bootfiles/config.txt
echo "device_tree=bcm2710-rpi-3-b.dtb" >>${DEPLOYDIR}/bcm2835-bootfiles/config.txt echo "device_tree=bcm2710-rpi-3-b.dtb" >>${DEPLOYDIR}/bcm2835-bootfiles/config.txt

View File

@@ -1,10 +1,10 @@
RPIFW_DATE ?= "20170405" RPIFW_DATE ?= "20180313"
RPIFW_SRC_URI ?= "https://github.com/raspberrypi/firmware/archive/1.${RPIFW_DATE}.tar.gz" SRCREV ?= "af994023ab491420598bfd5648b9dcab956f7e11"
RPIFW_S ?= "${WORKDIR}/firmware-1.${RPIFW_DATE}" RPIFW_SRC_URI ?= "https://github.com/raspberrypi/firmware/archive/${SRCREV}.tar.gz"
RPIFW_S ?= "${WORKDIR}/firmware-${SRCREV}"
SRC_URI = "${RPIFW_SRC_URI}" SRC_URI = "${RPIFW_SRC_URI}"
SRC_URI[md5sum] = "ea82d14a7cd8cfae9b78e00d4e56bc71" SRC_URI[md5sum] = "0c388f3631093368ac92a15a262d0f7c"
SRC_URI[sha256sum] = "2f4e5bddbac1372590db203002c35cbba3fb9d6172a93c314ee27bf05ae13bff" SRC_URI[sha256sum] = "e2afa23886de586856a1d604da2a85e4559715816dccbd70ae828b840beafc21"
PV = "${RPIFW_DATE}" PV = "${RPIFW_DATE}"

View File

@@ -1,3 +0,0 @@
fdt addr ${fdt_addr} && fdt get value bootargs /chosen bootargs
fatload mmc 0:1 ${kernel_addr_r} uImage
bootm ${kernel_addr_r} - ${fdt_addr}

View File

@@ -0,0 +1,3 @@
fdt addr ${fdt_addr} && fdt get value bootargs /chosen bootargs
fatload mmc 0:1 ${kernel_addr_r} @@KERNEL_IMAGETYPE@@
@@KERNEL_BOOTCMD@@ ${kernel_addr_r} - ${fdt_addr}

View File

@@ -1,13 +1,16 @@
SUMMARY = "U-boot boot scripts for Raspberry Pi" SUMMARY = "U-boot boot scripts for Raspberry Pi"
LICENSE = "MIT" LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
COMPATIBLE_MACHINE = "rpi" COMPATIBLE_MACHINE = "^rpi$"
DEPENDS = "u-boot-mkimage-native" DEPENDS = "u-boot-mkimage-native"
SRC_URI = "file://boot.cmd" SRC_URI = "file://boot.cmd.in"
do_compile() { do_compile() {
sed -e 's/@@KERNEL_IMAGETYPE@@/${KERNEL_IMAGETYPE}/' \
-e 's/@@KERNEL_BOOTCMD@@/${KERNEL_BOOTCMD}/' \
"${WORKDIR}/boot.cmd.in" > "${WORKDIR}/boot.cmd"
mkimage -A arm -T script -C none -n "Boot script" -d "${WORKDIR}/boot.cmd" boot.scr mkimage -A arm -T script -C none -n "Boot script" -d "${WORKDIR}/boot.cmd" boot.scr
} }

View File

@@ -1,6 +1,6 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
SRC_URI_append_raspberrypi3 = " \ BCM_BT_SOURCES = " \
file://BCM43430A1.hcd \ file://BCM43430A1.hcd \
file://0001-bcm43xx-Add-bcm43xx-3wire-variant.patch \ file://0001-bcm43xx-Add-bcm43xx-3wire-variant.patch \
file://0002-bcm43xx-The-UART-speed-must-be-reset-after-the-firmw.patch \ file://0002-bcm43xx-The-UART-speed-must-be-reset-after-the-firmw.patch \
@@ -9,7 +9,7 @@ SRC_URI_append_raspberrypi3 = " \
file://brcm43438.service \ file://brcm43438.service \
" "
do_install_append_raspberrypi3() { enable_bcm_bluetooth() {
install -d ${D}/lib/firmware/brcm/ install -d ${D}/lib/firmware/brcm/
install -m 0644 ${WORKDIR}/BCM43430A1.hcd ${D}/lib/firmware/brcm/BCM43430A1.hcd install -m 0644 ${WORKDIR}/BCM43430A1.hcd ${D}/lib/firmware/brcm/BCM43430A1.hcd
@@ -19,8 +19,30 @@ do_install_append_raspberrypi3() {
fi fi
} }
FILES_${PN}_append_raspberrypi3 = " \ BCM_BT_FIRMWARE = " \
/lib/firmware/brcm/BCM43430A1.hcd \ /lib/firmware/brcm/BCM43430A1.hcd \
" "
SYSTEMD_SERVICE_${PN}_append_raspberrypi3 = " brcm43438.service" BCM_BT_SERVICE = " brcm43438.service"
# for raspberrypi3
SRC_URI_append_raspberrypi3 = " ${BCM_BT_SOURCES}"
do_install_append_raspberrypi3() {
enable_bcm_bluetooth
}
FILES_${PN}_append_raspberrypi3 = " ${BCM_BT_FIRMWARE}"
SYSTEMD_SERVICE_${PN}_append_raspberrypi3 = " ${BCM_BT_SERVICE}"
# for raspberrypi0-wifi
SRC_URI_append_raspberrypi0-wifi = " ${BCM_BT_SOURCES}"
do_install_append_raspberrypi0-wifi() {
enable_bcm_bluetooth
}
FILES_${PN}_append_raspberrypi0-wifi = " ${BCM_BT_FIRMWARE}"
SYSTEMD_SERVICE_${PN}_append_raspberrypi0-wifi = " ${BCM_BT_SERVICE}"

View File

@@ -1,4 +1,6 @@
# Base this image on rpi-basic-image # Base this image on rpi-basic-image
include rpi-basic-image.bb include rpi-basic-image.bb
COMPATIBLE_MACHINE = "^rpi$"
IMAGE_INSTALL_append = " packagegroup-rpi-test" IMAGE_INSTALL_append = " packagegroup-rpi-test"

View File

@@ -4,8 +4,13 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384
inherit packagegroup inherit packagegroup
COMPATIBLE_MACHINE = "^rpi$"
OMXPLAYER_rpi = "omxplayer"
OMXPLAYER_rpi_aarch64 = ""
RDEPENDS_${PN} = "\ RDEPENDS_${PN} = "\
omxplayer \ ${OMXPLAYER} \
bcm2835-tests \ bcm2835-tests \
wiringpi \ wiringpi \
rpio \ rpio \

View File

@@ -8,7 +8,7 @@ AUTHOR = "Mike McCauley (mikem@open.com.au)"
LICENSE = "GPLv2" LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
COMPATIBLE_MACHINE = "raspberrypi" COMPATIBLE_MACHINE = "^rpi$"
SRC_URI = "http://www.airspayce.com/mikem/bcm2835/bcm2835-${PV}.tar.gz" SRC_URI = "http://www.airspayce.com/mikem/bcm2835/bcm2835-${PV}.tar.gz"

View File

@@ -1,13 +1,28 @@
Remove dependencies on LSB functions From 1338f98a279616f4e5e9ea30a25d1dfa0c7df5d6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petter=20Mab=C3=A4cker?= <petter@technux.se>
Date: Sun, 4 Jun 2017 12:22:40 +0200
Subject: [PATCH] Remove dependencies on LSB functions
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
See this as a rebase of the previous 'Remove dependencies on LSB
functions patch' with only minor modifications from the original version,
based on the work done by Alex Lennon <ajlennon@dynamicdevices.co.uk> in
'25fd817 pi-blaster: Added recipe'.
Upstream-Status: Inappropriate [configuration] Upstream-Status: Inappropriate [configuration]
Signed-off-by: Alex Lennon <ajlennon@dynamicdevices.co.uk> Signed-off-by: Petter Mabäcker <petter@technux.se>
---
debian/pi-blaster.init | 38 +++++++-------------------------------
1 file changed, 7 insertions(+), 31 deletions(-)
diff -ur git.org/pi-blaster.boot.sh git/pi-blaster.boot.sh diff --git a/debian/pi-blaster.init b/debian/pi-blaster.init
--- git.org/pi-blaster.boot.sh 2014-05-20 14:49:44.378582168 +0100 index b142d70..01a686c 100644
+++ git/pi-blaster.boot.sh 2014-05-20 14:51:08.330582386 +0100 --- a/debian/pi-blaster.init
@@ -28,12 +28,12 @@ +++ b/debian/pi-blaster.init
@@ -28,12 +28,12 @@ SCRIPTNAME=/etc/init.d/$NAME
[ -r /etc/default/$NAME ] && . /etc/default/$NAME [ -r /etc/default/$NAME ] && . /etc/default/$NAME
# Load the VERBOSE setting and other rcS variables # Load the VERBOSE setting and other rcS variables
@@ -22,7 +37,7 @@ diff -ur git.org/pi-blaster.boot.sh git/pi-blaster.boot.sh
# #
# Function that starts the daemon/service # Function that starts the daemon/service
@@ -77,48 +77,23 @@ @@ -77,48 +77,24 @@ do_stop()
case "$1" in case "$1" in
start) start)
@@ -52,6 +67,7 @@ diff -ur git.org/pi-blaster.boot.sh git/pi-blaster.boot.sh
# 'force-reload' alias # 'force-reload' alias
# #
- log_daemon_msg "Restarting $DESC" "$NAME" - log_daemon_msg "Restarting $DESC" "$NAME"
+ echo "Restarting $DESC" "$NAME"
do_stop do_stop
- case "$?" in - case "$?" in
- 0|1) - 0|1)
@@ -71,7 +87,10 @@ diff -ur git.org/pi-blaster.boot.sh git/pi-blaster.boot.sh
;; ;;
*) *)
- echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 - echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
+ echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2 + echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3 exit 3
;; ;;
esac esac
--
1.9.1

View File

@@ -2,7 +2,7 @@ DESCRIPTION = "This project enables PWM on the GPIO pins you request of a Raspbe
HOMEPAGE = "https://github.com/sarfata/pi-blaster/" HOMEPAGE = "https://github.com/sarfata/pi-blaster/"
SECTION = "devel/libs" SECTION = "devel/libs"
LICENSE = "MIT" LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://README.md;beginline=157;endline=170;md5=f20832f31126609af5a7bf2340014540" LIC_FILES_CHKSUM = "file://README.md;beginline=225;endline=252;md5=a012868ef5f83b9f257af253d7cb07a3"
SRC_URI = "git://github.com/sarfata/pi-blaster \ SRC_URI = "git://github.com/sarfata/pi-blaster \
file://remove-initscript-lsb-dependency.patch \ file://remove-initscript-lsb-dependency.patch \
@@ -16,6 +16,6 @@ INITSCRIPT_PACKAGES = "${PN}"
INITSCRIPT_NAME_${PN} = "${PN}.boot.sh" INITSCRIPT_NAME_${PN} = "${PN}.boot.sh"
INITSCRIPT_PARAMS_${PN} = "defaults 15 85" INITSCRIPT_PARAMS_${PN} = "defaults 15 85"
COMPATIBLE_MACHINE = "raspberrypi" COMPATIBLE_MACHINE = "^rpi$"
PACKAGE_ARCH = "${MACHINE_ARCH}" PACKAGE_ARCH = "${MACHINE_ARCH}"

View File

@@ -1,3 +1,3 @@
require pi-blaster.inc require pi-blaster.inc
SRCREV = "ec5e1b4c6191d8f9a538497dbbb86f9cf0de7016" SRCREV = "1035ad7dffb270c40eec1bb3a654171a755fba98"

View File

@@ -4,16 +4,12 @@ SECTION = "devel/python"
LICENSE = "BSD" LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENCE.txt;md5=d80fe312e1ff5fbd97369b093bf21cda" LIC_FILES_CHKSUM = "file://LICENCE.txt;md5=d80fe312e1ff5fbd97369b093bf21cda"
SRCNAME = "sense-hat" inherit setuptools pypi
SRC_URI = "https://pypi.python.org/packages/source/s/${SRCNAME}/${SRCNAME}-${PV}.tar.gz" PYPI_PACKAGE = "sense-hat"
SRC_URI[md5sum] = "71217f15ea963040f06e2f50722186ca" SRC_URI[md5sum] = "69929250cb72349a8a82edf2584b1d83"
SRC_URI[sha256sum] = "c6c76707c0ea514e4b0f1f96f1b5b79755875891aae037df7434b6aad7b9dbca" SRC_URI[sha256sum] = "f000998d042d96ed722d459312e1bebd0107f9f3015cd34b3e4fabcab9c800af"
S = "${WORKDIR}/${SRCNAME}-${PV}"
inherit setuptools
DEPENDS += " \ DEPENDS += " \
jpeg \ jpeg \

View File

@@ -1,21 +0,0 @@
DESCRIPTION = "A module to control Raspberry Pi GPIO channels"
HOMEPAGE = "http://code.google.com/p/raspberry-gpio-python/"
SECTION = "devel/python"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENCE.txt;md5=9b95630a648966b142f1a0dcea001cb7"
SRCNAME = "RPi.GPIO"
SRC_URI = "\
http://pypi.python.org/packages/source/R/RPi.GPIO/${SRCNAME}-${PV}.tar.gz \
file://0001-Remove-nested-functions.patch \
"
SRC_URI[md5sum] = "9db86fd5f3bae872de9dbb068ee0b096"
SRC_URI[sha256sum] = "82acff0ef6bbe3cdf6f4dbdd73d96add5294bb94baf7f51c1d901861af3c2392"
S = "${WORKDIR}/${SRCNAME}-${PV}"
inherit distutils
COMPATIBLE_MACHINE = "raspberrypi"

View File

@@ -0,0 +1,14 @@
DESCRIPTION = "A module to control Raspberry Pi GPIO channels"
HOMEPAGE = "http://code.google.com/p/raspberry-gpio-python/"
SECTION = "devel/python"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENCE.txt;md5=9b95630a648966b142f1a0dcea001cb7"
PYPI_PACKAGE = "RPi.GPIO"
inherit pypi distutils
SRC_URI += "file://0001-Remove-nested-functions.patch"
SRC_URI[md5sum] = "e4abe1cfb5eacebe53078032256eb837"
SRC_URI[sha256sum] = "a5fc0eb5e401963b6c0a03650da6b42c4005f02d962b81241d96c98d0a578516"
COMPATIBLE_MACHINE = "^rpi$"

View File

@@ -5,16 +5,19 @@ SECTION = "devel/python"
LICENSE = "LGPLv3+" LICENSE = "LGPLv3+"
LIC_FILES_CHKSUM = "file://README.rst;beginline=41;endline=53;md5=d5d95d7486a4d98c999675c23196b25a" LIC_FILES_CHKSUM = "file://README.rst;beginline=41;endline=53;md5=d5d95d7486a4d98c999675c23196b25a"
SRCNAME = "RPIO" PYPI_PACKAGE = "RPIO"
inherit pypi
SRC_URI = "http://pypi.python.org/packages/source/R/RPIO/${SRCNAME}-${PV}.tar.gz \ SRC_URI += "file://0001-include-sys-types.h-explicitly-for-getting-caddr_t-d.patch"
file://0001-include-sys-types.h-explicitly-for-getting-caddr_t-d.patch \
"
S = "${WORKDIR}/${SRCNAME}-${PV}"
inherit setuptools inherit setuptools
COMPATIBLE_MACHINE = "raspberrypi" COMPATIBLE_MACHINE = "^rpi$"
RDEPENDS_${PN} = "\
python-logging \
python-threading \
"
SRC_URI[md5sum] = "cefc45422833dcafcd59b78dffc540f4" SRC_URI[md5sum] = "cefc45422833dcafcd59b78dffc540f4"
SRC_URI[sha256sum] = "b89f75dec9de354681209ebfaedfe22b7c178aacd91a604a7bd6d92024e4cf7e" SRC_URI[sha256sum] = "b89f75dec9de354681209ebfaedfe22b7c178aacd91a604a7bd6d92024e4cf7e"

View File

@@ -1,23 +1,18 @@
From 4ed727aa9e528f130fdc8798df771037a1f22fc9 Mon Sep 17 00:00:00 2001 From ca25788e2563bad0d554deb9f4300d1e7d062825 Mon Sep 17 00:00:00 2001
From: Andrea Galbusera <gizero@gmail.com> From: Aurelian Zanoschi <aurelian17@gmail.com>
Date: Mon, 3 Apr 2017 14:48:14 +0200 Date: Mon, 31 Jul 2017 20:25:15 +0300
Subject: [PATCH] =?UTF-8?q?Add=20initial=20cross=20compile=20support=20(re?= Subject: [PATCH] Add initial cross compile support
=?UTF-8?q?base=20from=20Petter=20Mab=C3=A4cker=20<petter@technux.se>=20ve?=
=?UTF-8?q?rsion)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
--- ---
devLib/Makefile | 54 +++++++++++++++++++++++++-------------------- devLib/Makefile | 54 +++++++++++++++++++++++++--------------------
examples/Gertboard/Makefile | 20 +++++++++++------ examples/Gertboard/Makefile | 22 +++++++++++-------
examples/Makefile | 20 +++++++++++------ examples/Makefile | 22 +++++++++++-------
examples/PiFace/Makefile | 20 +++++++++++------ examples/PiFace/Makefile | 22 +++++++++++-------
examples/PiGlow/Makefile | 4 ++-- examples/PiGlow/Makefile | 4 ++--
examples/q2w/Makefile | 4 ++-- examples/q2w/Makefile | 4 ++--
gpio/Makefile | 29 ++++++++++++------------ gpio/Makefile | 29 ++++++++++++------------
wiringPi/Makefile | 50 +++++++++++++++++++++++------------------ wiringPi/Makefile | 52 ++++++++++++++++++++++++-------------------
8 files changed, 116 insertions(+), 85 deletions(-) 8 files changed, 120 insertions(+), 89 deletions(-)
diff --git a/devLib/Makefile b/devLib/Makefile diff --git a/devLib/Makefile b/devLib/Makefile
index cf665d6..040c03a 100644 index cf665d6..040c03a 100644
@@ -132,11 +127,12 @@ index 1939ad6..98d1415 100644
-CC = gcc -CC = gcc
-INCLUDE = -I/usr/local/include -INCLUDE = -I/usr/local/include
-CFLAGS = $(DEBUG) -Wall $(INCLUDE) -Winline -pipe -CFLAGS = $(DEBUG) -Wall $(INCLUDE) -Winline -pipe
+DESTDIR?=/usr -
+PREFIX?=/local
-LDFLAGS = -L/usr/local/lib -LDFLAGS = -L/usr/local/lib
-LDLIBS = -lwiringPi -lwiringPiDev -lpthread -lm -LDLIBS = -lwiringPi -lwiringPiDev -lpthread -lm
+DESTDIR?=/usr
+PREFIX?=/local
+
+INCLUDE_DIR?=$(DESTDIR)$(PREFIX)/include +INCLUDE_DIR?=$(DESTDIR)$(PREFIX)/include
+LIB_DIR?=$(DESTDIR)$(PREFIX)/lib +LIB_DIR?=$(DESTDIR)$(PREFIX)/lib
+ +
@@ -164,11 +160,12 @@ index 6d87885..8623816 100644
-CC = gcc -CC = gcc
-INCLUDE = -I/usr/local/include -INCLUDE = -I/usr/local/include
-CFLAGS = $(DEBUG) -Wall $(INCLUDE) -Winline -pipe -CFLAGS = $(DEBUG) -Wall $(INCLUDE) -Winline -pipe
+DESTDIR?=/usr -
+PREFIX?=/local
-LDFLAGS = -L/usr/local/lib -LDFLAGS = -L/usr/local/lib
-LDLIBS = -lwiringPi -lwiringPiDev -lpthread -lm -lcrypt -lrt -LDLIBS = -lwiringPi -lwiringPiDev -lpthread -lm -lcrypt -lrt
+DESTDIR?=/usr
+PREFIX?=/local
+
+INCLUDE_DIR?=$(DESTDIR)$(PREFIX)/include +INCLUDE_DIR?=$(DESTDIR)$(PREFIX)/include
+LIB_DIR?=$(DESTDIR)$(PREFIX)/lib +LIB_DIR?=$(DESTDIR)$(PREFIX)/lib
+ +
@@ -196,11 +193,12 @@ index f937c14..ad030b3 100644
-CC = gcc -CC = gcc
-INCLUDE = -I/usr/local/include -INCLUDE = -I/usr/local/include
-CFLAGS = $(DEBUG) -Wall $(INCLUDE) -Winline -pipe -CFLAGS = $(DEBUG) -Wall $(INCLUDE) -Winline -pipe
+DESTDIR?=/usr -
+PREFIX?=/local
-LDFLAGS = -L/usr/local/lib -LDFLAGS = -L/usr/local/lib
-LDLIBS = -lwiringPi -lwiringPiDev -lpthread -lm -LDLIBS = -lwiringPi -lwiringPiDev -lpthread -lm
+DESTDIR?=/usr
+PREFIX?=/local
+
+INCLUDE_DIR?=$(DESTDIR)$(PREFIX)/include +INCLUDE_DIR?=$(DESTDIR)$(PREFIX)/include
+LIB_DIR?=$(DESTDIR)$(PREFIX)/lib +LIB_DIR?=$(DESTDIR)$(PREFIX)/lib
+ +
@@ -305,10 +303,10 @@ index f41a005..22753ee 100644
.PHONY: depend .PHONY: depend
diff --git a/wiringPi/Makefile b/wiringPi/Makefile diff --git a/wiringPi/Makefile b/wiringPi/Makefile
index e1868b9..e39f75a 100644 index e1868b9..750d290 100644
--- a/wiringPi/Makefile --- a/wiringPi/Makefile
+++ b/wiringPi/Makefile +++ b/wiringPi/Makefile
@@ -25,19 +25,23 @@ VERSION=$(shell cat ../VERSION) @@ -25,21 +25,25 @@ VERSION=$(shell cat ../VERSION)
DESTDIR?=/usr DESTDIR?=/usr
PREFIX?=/local PREFIX?=/local
@@ -336,19 +334,22 @@ index e1868b9..e39f75a 100644
+CC ?= gcc +CC ?= gcc
+INCLUDE ?= -I. +INCLUDE ?= -I.
DEFS = -D_GNU_SOURCE DEFS = -D_GNU_SOURCE
CFLAGS = $(DEBUG) $(DEFS) -Wformat=2 -Wall -Wextra -Winline $(INCLUDE) -pipe -fPIC -CFLAGS = $(DEBUG) $(DEFS) -Wformat=2 -Wall -Wextra -Winline $(INCLUDE) -pipe -fPIC
+CFLAGS = $(DEBUG) $(DEFS) $(INCLUDE) -Wformat=2 -Wall -Wextra -Winline -pipe -fPIC
LIBS = -lm -lpthread -lrt -lcrypt
@@ -78,17 +82,17 @@ $(STATIC): $(OBJ) @@ -78,17 +82,17 @@ $(STATIC): $(OBJ)
$(DYNAMIC): $(OBJ) $(DYNAMIC): $(OBJ)
$Q echo "[Link (Dynamic)]" $Q echo "[Link (Dynamic)]"
- $Q $(CC) -shared -Wl,-soname,libwiringPi.so$(WIRINGPI_SONAME_SUFFIX) -o libwiringPi.so.$(VERSION) $(LIBS) $(OBJ) - $Q $(CC) -shared -Wl,-soname,libwiringPi.so$(WIRINGPI_SONAME_SUFFIX) -o libwiringPi.so.$(VERSION) $(LIBS) $(OBJ)
+ $Q $(CC) $(LDFLAGS) -shared -Wl,-soname,$(BASE_NAME).so.$(DYN_VERS_MAJ) -o $(BASE_NAME).so $(LIBS) $(OBJ) + $Q $(CC) $(LDFLAGS) -shared -Wl,-soname,$(BASE_NAME).so.$(DYN_VERS_MAJ) -o $(BASE_NAME).so $(OBJ) $(LIBS)
.c.o: .c.o:
$Q echo [Compile] $< $Q echo [Compile] $<
- $Q $(CC) -c $(CFLAGS) $< -o $@ - $Q $(CC) -c $(CFLAGS) $< -o $@
+ $Q $(CC) -c $(CFLAGS) -fPIC $< -o $@ + $Q $(CC) $(CFLAGS) $(LIBS) -c $< -o $@
.PHONY: clean .PHONY: clean

View File

@@ -13,7 +13,7 @@ SRC_URI = "git://git.drogon.net/wiringPi \
file://0001-Add-initial-cross-compile-support.patch \ file://0001-Add-initial-cross-compile-support.patch \
" "
COMPATIBLE_MACHINE = "raspberrypi" COMPATIBLE_MACHINE = "^rpi$"
CFLAGS_prepend = "-I${S}/wiringPi -I${S}/devLib " CFLAGS_prepend = "-I${S}/wiringPi -I${S}/devLib "

View File

@@ -1,7 +1,7 @@
From f6540119d5b064361ffcb370373794932f97bfdd Mon Sep 17 00:00:00 2001 From e45bc677368d0f8d42720aad242f33f6e2687fb1 Mon Sep 17 00:00:00 2001
From: Dom Cobley <dc4@broadcom.com> From: Dom Cobley <dc4@broadcom.com>
Date: Tue, 9 Jul 2013 09:26:26 -0400 Date: Tue, 9 Jul 2013 09:26:26 -0400
Subject: [PATCH 01/13] Allow applications to set next resource handle Subject: [PATCH 01/15] Allow applications to set next resource handle
This patch adds provisions in userland to This patch adds provisions in userland to
let apps callers set the next rendereing dispmanx resource. let apps callers set the next rendereing dispmanx resource.
@@ -204,5 +204,5 @@ index 8a5734c..51b3580 100644
FN(void, eglIntGetColorData_impl, (EGL_SURFACE_ID_T s, KHRN_IMAGE_FORMAT_T format, uint32_t width, uint32_t height, int32_t stride, uint32_t y_offset, void *data)) FN(void, eglIntGetColorData_impl, (EGL_SURFACE_ID_T s, KHRN_IMAGE_FORMAT_T format, uint32_t width, uint32_t height, int32_t stride, uint32_t y_offset, void *data))
-- --
2.12.0 2.15.0

View File

@@ -1,7 +1,7 @@
From 61a9d792ed774af43e592aa8fdb2a18488696d0f Mon Sep 17 00:00:00 2001 From 15fb270f438f4ef1413192b5ce1e0dc784b45d9e Mon Sep 17 00:00:00 2001
From: Tomeu Vizoso <tomeu.vizoso@collabora.com> From: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Date: Tue, 1 Oct 2013 13:19:20 +0200 Date: Tue, 1 Oct 2013 13:19:20 +0200
Subject: [PATCH 02/13] wayland: Add support for the Wayland winsys Subject: [PATCH 02/15] wayland: Add support for the Wayland winsys
* Adds EGL_WL_bind_wayland_display extension * Adds EGL_WL_bind_wayland_display extension
* Adds wayland-egl library * Adds wayland-egl library
@@ -17,7 +17,7 @@ TODO: wl_dispmanx_server_buffer should probably be defined in a
private header that can be included from EGL and vc_* instead of in private header that can be included from EGL and vc_* instead of in
vc_vchi_dispmanx.h vc_vchi_dispmanx.h
--- ---
.gitignore | 2 + .gitignore | 1 +
CMakeLists.txt | 11 + CMakeLists.txt | 11 +
README.md | 4 + README.md | 4 +
buildme | 10 +- buildme | 10 +-
@@ -47,7 +47,7 @@ vc_vchi_dispmanx.h
interface/vmcs_host/vc_vchi_dispmanx.h | 15 ++ interface/vmcs_host/vc_vchi_dispmanx.h | 15 ++
interface/wayland/dispmanx.xml | 123 +++++++++++ interface/wayland/dispmanx.xml | 123 +++++++++++
makefiles/cmake/Wayland.cmake | 72 ++++++ makefiles/cmake/Wayland.cmake | 72 ++++++
30 files changed, 1258 insertions(+), 98 deletions(-) 30 files changed, 1257 insertions(+), 98 deletions(-)
create mode 100644 interface/khronos/common/linux/khrn_wayland.c create mode 100644 interface/khronos/common/linux/khrn_wayland.c
copy interface/{vmcs_host/vc_vchi_dispmanx.h => khronos/common/linux/khrn_wayland.h} (56%) copy interface/{vmcs_host/vc_vchi_dispmanx.h => khronos/common/linux/khrn_wayland.h} (56%)
create mode 100644 interface/khronos/ext/egl_wayland.c create mode 100644 interface/khronos/ext/egl_wayland.c
@@ -58,14 +58,13 @@ vc_vchi_dispmanx.h
create mode 100644 makefiles/cmake/Wayland.cmake create mode 100644 makefiles/cmake/Wayland.cmake
diff --git a/.gitignore b/.gitignore diff --git a/.gitignore b/.gitignore
index 4a88665..5da71a9 100644 index 63570f1..1459436 100644
--- a/.gitignore --- a/.gitignore
+++ b/.gitignore +++ b/.gitignore
@@ -13,3 +13,5 @@ build/ @@ -30,3 +30,4 @@ build/
*.lai *.pts
*.la *.ppm
*.a *.mkv
+
+*~ +*~
diff --git a/CMakeLists.txt b/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt
index cfc8ae5..673a5ad 100644 index cfc8ae5..673a5ad 100644
@@ -808,16 +807,16 @@ index b8bb374..03fe67b 100644
/* /*
TODO: do an RPC call to make sure the Khronos vll is loaded (and that it stays loaded until eglTerminate) TODO: do an RPC call to make sure the Khronos vll is loaded (and that it stays loaded until eglTerminate)
Also affects global image (and possibly others?) Also affects global image (and possibly others?)
@@ -451,6 +444,9 @@ EGLAPI const char EGLAPIENTRY * eglQueryString(EGLDisplay dpy, EGLint name) @@ -450,6 +443,9 @@ EGLAPI const char EGLAPIENTRY * eglQueryString(EGLDisplay dpy, EGLint name)
#ifdef EGL_KHR_fence_sync
"EGL_KHR_fence_sync " "EGL_KHR_fence_sync "
#endif #endif
#endif +#endif
+#if EGL_WL_bind_wayland_display +#if EGL_WL_bind_wayland_display
+ "EGL_WL_bind_wayland_display " + "EGL_WL_bind_wayland_display "
+#endif #endif
; ;
break; break;
case EGL_VENDOR:
@@ -655,8 +651,7 @@ EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface(EGLDisplay dpy, EGLConfig c @@ -655,8 +651,7 @@ EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface(EGLDisplay dpy, EGLConfig c
false, false,
EGL_NO_TEXTURE, EGL_NO_TEXTURE,
@@ -1885,5 +1884,5 @@ index 0000000..ad90d30
+ set(${_sources} ${${_sources}} PARENT_SCOPE) + set(${_sources} ${${_sources}} PARENT_SCOPE)
+endfunction() +endfunction()
-- --
2.12.2 2.15.0

View File

@@ -1,7 +1,7 @@
From 08679675740d92f022e0fd46207a42589c9f6c51 Mon Sep 17 00:00:00 2001 From b0437cf318a26c62119ad60649430903f58bbab4 Mon Sep 17 00:00:00 2001
From: Tomeu Vizoso <tomeu.vizoso@collabora.com> From: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Date: Tue, 1 Oct 2013 13:19:20 +0200 Date: Tue, 1 Oct 2013 13:19:20 +0200
Subject: [PATCH 03/13] wayland: Add Wayland example Subject: [PATCH 03/15] wayland: Add Wayland example
--- ---
.../linux/apps/hello_pi/CMakeLists.txt | 1 + .../linux/apps/hello_pi/CMakeLists.txt | 1 +
@@ -862,5 +862,5 @@ index 8225dd5..0be6ce7 100755
make -C libs/ilclient make -C libs/ilclient
make -C libs/vgfont make -C libs/vgfont
@@ -31,4 +32,4 @@ make -C hello_videocube @@ -31,4 +32,4 @@ make -C hello_videocube
make -C hello_teapot make -C hello_teapot
make -C hello_fft make -C hello_fft

View File

@@ -1,7 +1,7 @@
From eb9d0eb386b9b3df519a299887b45962c03e732c Mon Sep 17 00:00:00 2001 From cae4ff834eef23c8f23126ba4d630db395f13aee Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com> From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 10 Aug 2015 02:38:27 -0700 Date: Mon, 10 Aug 2015 02:38:27 -0700
Subject: [PATCH 04/13] wayland-egl: Add bcm_host to dependencies Subject: [PATCH 04/15] wayland-egl: Add bcm_host to dependencies
It uses headers like vcos_platform_types.h but does not It uses headers like vcos_platform_types.h but does not
depend on module which should add the required include paths depend on module which should add the required include paths
@@ -24,5 +24,5 @@ index 8bafc15..fd259c9 100644
Libs: -L${libdir} -lwayland-egl Libs: -L${libdir} -lwayland-egl
Cflags: -I${includedir} Cflags: -I${includedir}
-- --
2.12.0 2.15.0

View File

@@ -1,7 +1,7 @@
From ef3162e061a3231fbf836208f98c38c7c5581a9e Mon Sep 17 00:00:00 2001 From 8ee4f6eedb81e9bfe0e603a21606c52f9501e609 Mon Sep 17 00:00:00 2001
From: "Yann E. MORIN" <yann.morin.1998@free.fr> From: "Yann E. MORIN" <yann.morin.1998@free.fr>
Date: Sat, 24 Jan 2015 22:07:19 +0100 Date: Sat, 24 Jan 2015 22:07:19 +0100
Subject: [PATCH 05/13] interface: remove faulty assert() to make weston happy Subject: [PATCH 05/15] interface: remove faulty assert() to make weston happy
at runtime at runtime
This was removed after a discussion on IRC with the weston guys This was removed after a discussion on IRC with the weston guys
@@ -13,7 +13,7 @@ Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
1 file changed, 1 deletion(-) 1 file changed, 1 deletion(-)
diff --git a/interface/vmcs_host/vc_vchi_dispmanx.c b/interface/vmcs_host/vc_vchi_dispmanx.c diff --git a/interface/vmcs_host/vc_vchi_dispmanx.c b/interface/vmcs_host/vc_vchi_dispmanx.c
index 45f4cff..5d0368c 100755 index eab146e..29e0dee 100755
--- a/interface/vmcs_host/vc_vchi_dispmanx.c --- a/interface/vmcs_host/vc_vchi_dispmanx.c
+++ b/interface/vmcs_host/vc_vchi_dispmanx.c +++ b/interface/vmcs_host/vc_vchi_dispmanx.c
@@ -1306,7 +1306,6 @@ static void *dispmanx_notify_func( void *arg ) { @@ -1306,7 +1306,6 @@ static void *dispmanx_notify_func( void *arg ) {
@@ -25,5 +25,5 @@ index 45f4cff..5d0368c 100755
} }
} else { } else {
-- --
2.12.0 2.15.0

View File

@@ -1,7 +1,7 @@
From 846e9271cf6a264e7e1f4e33be64df990ff39a74 Mon Sep 17 00:00:00 2001 From 789b0b0c04b741c21dd573b78eded970721d14c2 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com> From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 6 Feb 2016 11:10:47 -0800 Date: Sat, 6 Feb 2016 11:10:47 -0800
Subject: [PATCH 06/13] zero-out wl buffers in egl_surface_free Subject: [PATCH 06/15] zero-out wl buffers in egl_surface_free
origins from buildroot origins from buildroot
@@ -29,5 +29,5 @@ index 42350bf..1f923d9 100644
#endif #endif
} }
-- --
2.12.0 2.15.0

View File

@@ -1,7 +1,7 @@
From 15510fdf1c753c967b509046616b1e1a11b5b772 Mon Sep 17 00:00:00 2001 From 762dd3156775f167ff0dfd44322dbb19a85822a7 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com> From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 6 Feb 2016 11:11:41 -0800 Date: Sat, 6 Feb 2016 11:11:41 -0800
Subject: [PATCH 07/13] initialize front back wayland buffers Subject: [PATCH 07/15] initialize front back wayland buffers
origins from metrological wayland support origins from metrological wayland support
@@ -30,5 +30,5 @@ index 1f923d9..9a9582c 100644
} }
#endif #endif
-- --
2.12.0 2.15.0

View File

@@ -1,7 +1,7 @@
From 1df080ab9528b82321cf87d71927314294ef7121 Mon Sep 17 00:00:00 2001 From f8929adbf95ad3d44491cf6fc8a84a686b71193e Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com> From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 6 Feb 2016 11:09:18 -0800 Date: Sat, 6 Feb 2016 11:09:18 -0800
Subject: [PATCH 08/13] Remove RPC_FLUSH Subject: [PATCH 08/15] Remove RPC_FLUSH
Origins from buildroot Origins from buildroot
@@ -23,5 +23,5 @@ index f9b7287..b04ffef 100644
} }
#endif #endif
-- --
2.12.0 2.15.0

View File

@@ -1,7 +1,7 @@
From 11842307cc0e32bac6ef7622e7791ca7a0e9fa61 Mon Sep 17 00:00:00 2001 From f53e028f33f261f85883c9168977dd5486e9b47c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com> From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 6 Feb 2016 13:12:47 -0800 Date: Sat, 6 Feb 2016 13:12:47 -0800
Subject: [PATCH 09/13] fix cmake dependency race Subject: [PATCH 09/15] fix cmake dependency race
Fixes errors like Fixes errors like
@@ -74,5 +74,5 @@ index f0bae30..8c44c58 100644
struct wl_resource *resource; struct wl_resource *resource;
struct wl_dispmanx *dispmanx; struct wl_dispmanx *dispmanx;
-- --
2.12.0 2.15.0

View File

@@ -1,7 +1,7 @@
From 532dc7dc11877a9dae0f3d101c9bfdacc50840ca Mon Sep 17 00:00:00 2001 From 6559a57c66c5f55571a1aa29cf14d9130a9ef2c9 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com> From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 29 Mar 2016 20:38:30 -0700 Date: Tue, 29 Mar 2016 20:38:30 -0700
Subject: [PATCH 10/13] Fix for framerate with nested composition Subject: [PATCH 10/15] Fix for framerate with nested composition
frame rate appears irregular and lower than expected when using nested composition. frame rate appears irregular and lower than expected when using nested composition.
@@ -56,5 +56,5 @@ index 03fe67b..13a110c 100644
#ifdef ANDROID #ifdef ANDROID
CLIENT_UNLOCK(); CLIENT_UNLOCK();
-- --
2.12.0 2.15.0

View File

@@ -1,7 +1,7 @@
From 37ff90075102407d3abb3899b8c6ef64f6230207 Mon Sep 17 00:00:00 2001 From 3e396f0b514f3acf90c02f5d55b3816028367a55 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com> From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 2 Apr 2016 10:37:24 -0700 Date: Sat, 2 Apr 2016 10:37:24 -0700
Subject: [PATCH 11/13] build shared library for vchostif Subject: [PATCH 11/15] build shared library for vchostif
Fixes #149 Fixes #149
@@ -24,5 +24,5 @@ index c415176..d0cca1a 100755
#add_library(bufman vc_vchi_bufman.c ) #add_library(bufman vc_vchi_bufman.c )
-- --
2.12.0 2.15.0

View File

@@ -1,7 +1,7 @@
From ce130bff946c3b78fc4dbbf98d9b16b5152f2e85 Mon Sep 17 00:00:00 2001 From f5b2263c8d65e307cb085414e08118cbbe00a94c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com> From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 2 Apr 2016 10:54:59 -0700 Date: Sat, 2 Apr 2016 10:54:59 -0700
Subject: [PATCH 12/13] implement buffer wrapping interface for dispmanx Subject: [PATCH 12/15] implement buffer wrapping interface for dispmanx
Courtesy: Zan Dobersek Courtesy: Zan Dobersek
@@ -88,5 +88,5 @@ index c18626d..11ed1ef 100644
</protocol> </protocol>
-- --
2.12.0 2.15.0

View File

@@ -1,7 +1,7 @@
From 14d915a63a4e69290966543ce12edd615bfa9a25 Mon Sep 17 00:00:00 2001 From 10ba55489002c2ccdf96d221301ec059c4574811 Mon Sep 17 00:00:00 2001
From: Jeff Wannamaker <jeff_wannamaker@cable.comcast.com> From: Jeff Wannamaker <jeff_wannamaker@cable.comcast.com>
Date: Thu, 19 Jan 2017 18:56:07 +0000 Date: Thu, 19 Jan 2017 18:56:07 +0000
Subject: [PATCH 13/13] Implement triple buffering for wayland Subject: [PATCH 13/15] Implement triple buffering for wayland
Change from double to triple buffering for wayland. Change from double to triple buffering for wayland.
This enables higher frame rates without tearing artifacts This enables higher frame rates without tearing artifacts
@@ -67,10 +67,11 @@ diff --git a/interface/khronos/egl/egl_client_surface.h b/interface/khronos/egl/
index e328b77..58a3184 100644 index e328b77..58a3184 100644
--- a/interface/khronos/egl/egl_client_surface.h --- a/interface/khronos/egl/egl_client_surface.h
+++ b/interface/khronos/egl/egl_client_surface.h +++ b/interface/khronos/egl/egl_client_surface.h
@@ -313,6 +313,17 @@ typedef struct { @@ -312,6 +312,17 @@ typedef struct {
*/
struct wl_dispmanx_client_buffer *front_wl_buffer; struct wl_dispmanx_client_buffer *front_wl_buffer;
/* + /*
+ middle_wl_buffer + middle_wl_buffer
+ +
+ Validity: + Validity:
@@ -81,10 +82,9 @@ index e328b77..58a3184 100644
+ */ + */
+ struct wl_dispmanx_client_buffer *middle_wl_buffer; + struct wl_dispmanx_client_buffer *middle_wl_buffer;
+ +
+ /* /*
back_wl_buffer back_wl_buffer
Validity:
-- --
2.12.0 2.15.0

View File

@@ -1,7 +1,7 @@
From 55a66f56a14eb8c3ae8294860e49efc9c9598c46 Mon Sep 17 00:00:00 2001 From d750c738b5c23bba24531cb713292e4ab3f2ec56 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com> From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 10 May 2017 06:39:34 +0000 Date: Wed, 10 May 2017 06:39:34 +0000
Subject: [PATCH] GLES2/gl2ext.h: Define GL_R8_EXT and GL_RG8_EXT Subject: [PATCH 14/15] GLES2/gl2ext.h: Define GL_R8_EXT and GL_RG8_EXT
weston code uses these defines weston code uses these defines
Upstream-Status: Pending Upstream-Status: Pending
@@ -26,5 +26,5 @@ index 4eacf7f..283e3e1 100644
#ifndef GL_EXT_texture_type_2_10_10_10_REV #ifndef GL_EXT_texture_type_2_10_10_10_REV
#define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368 #define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368
-- --
1.9.1 2.15.0

View File

@@ -0,0 +1,32 @@
From 827907f2223df93918e680101a1ac6228ba0f07e Mon Sep 17 00:00:00 2001
From: Andrea Galbusera <gizero@gmail.com>
Date: Fri, 14 Jul 2017 09:52:54 +0200
Subject: [PATCH 15/15] EGL/glplatform.h: define EGL_CAST
C++ / C typecast macros for special EGL handle values: used by libepoxy code
The definition comes from the updated version of this header in mesa.
Upstream-Status: Pending
---
interface/khronos/include/EGL/eglplatform.h | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/interface/khronos/include/EGL/eglplatform.h b/interface/khronos/include/EGL/eglplatform.h
index 1f7c930..c39d425 100644
--- a/interface/khronos/include/EGL/eglplatform.h
+++ b/interface/khronos/include/EGL/eglplatform.h
@@ -202,4 +202,11 @@ EGLAPI void EGLAPIENTRY BEGL_GetDefaultDriverInterfaces(BEGL_DriverInterfaces *i
#include "interface/khronos/common/khrn_client_mangle.h"
#endif
+/* C++ / C typecast macros for special EGL handle values */
+#if defined(__cplusplus)
+#define EGL_CAST(type, value) (static_cast<type>(value))
+#else
+#define EGL_CAST(type, value) ((type) (value))
+#endif
+
#endif /* __eglplatform_h */
--
2.15.0

View File

@@ -10,13 +10,13 @@ PR = "r5"
PROVIDES = "virtual/libgles2 \ PROVIDES = "virtual/libgles2 \
virtual/egl" virtual/egl"
RPROVIDES_${PN} += "libgles2 egl" RPROVIDES_${PN} += "libgles2 egl libegl"
COMPATIBLE_MACHINE = "raspberrypi" COMPATIBLE_MACHINE = "^rpi$"
SRCBRANCH = "master" SRCBRANCH = "master"
SRCFORK = "raspberrypi" SRCFORK = "raspberrypi"
SRCREV = "50d3cb5f4ee95a9513bb9f94d661947e9e6ac085" SRCREV = "bc3c52a51315399a9f31ed24049eb4bc81fd1c60"
SRC_URI = "\ SRC_URI = "\
git://github.com/${SRCFORK}/userland.git;protocol=git;branch=${SRCBRANCH} \ git://github.com/${SRCFORK}/userland.git;protocol=git;branch=${SRCBRANCH} \
@@ -34,6 +34,7 @@ SRC_URI = "\
file://0012-implement-buffer-wrapping-interface-for-dispmanx.patch \ file://0012-implement-buffer-wrapping-interface-for-dispmanx.patch \
file://0013-Implement-triple-buffering-for-wayland.patch \ file://0013-Implement-triple-buffering-for-wayland.patch \
file://0014-GLES2-gl2ext.h-Define-GL_R8_EXT-and-GL_RG8_EXT.patch \ file://0014-GLES2-gl2ext.h-Define-GL_R8_EXT-and-GL_RG8_EXT.patch \
file://0015-EGL-glplatform.h-define-EGL_CAST.patch \
" "
S = "${WORKDIR}/git" S = "${WORKDIR}/git"

View File

@@ -4,7 +4,7 @@ LICENSE = "Proprietary"
LIC_FILES_CHKSUM = "file://LICENCE;md5=86e53f5f5909ee66900418028de11780" LIC_FILES_CHKSUM = "file://LICENCE;md5=86e53f5f5909ee66900418028de11780"
PROVIDES = "virtual/libgles2 virtual/egl" PROVIDES = "virtual/libgles2 virtual/egl"
COMPATIBLE_MACHINE = "raspberrypi" COMPATIBLE_MACHINE = "^rpi$"
include recipes-bsp/common/firmware.inc include recipes-bsp/common/firmware.inc

View File

@@ -1,12 +1,12 @@
EXTRA_OECONF_append_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', ' --enable-rpi-compositor WESTON_NATIVE_BACKEND=rpi-backend.so', d)}"
PACKAGECONFIG_remove_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', 'fbdev', '', d)}" PACKAGECONFIG_remove_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', 'fbdev', '', d)}"
EXTRA_OECONF += "--disable-xwayland-test \ EXTRA_OECONF_append_rpi = " \
--disable-xwayland-test \
--disable-simple-egl-clients \ --disable-simple-egl-clients \
${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', ' \
--enable-rpi-compositor \
--disable-resize-optimization \
--disable-setuid-install \
WESTON_NATIVE_BACKEND=rpi-backend.so \
', d)} \
" "
EXTRA_OECONF += "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', '--enable-rpi-compositor', d)}"
EXTRA_OECONF += "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', '--disable-resize-optimization', d)}"
EXTRA_OECONF += "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', '--disable-setuid-install', d)}"
EXTRA_OECONF += "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', 'WESTON_NATIVE_BACKEND=rpi-backend.so', d)}"

View File

@@ -0,0 +1,6 @@
#
Section "Device"
Identifier "modeset"
Driver "modesetting"
Option "AccelMethod" "None"
EndSection

View File

@@ -4,7 +4,9 @@ SRC_URI_append_rpi = " \
file://xorg.conf.d/98-pitft.conf \ file://xorg.conf.d/98-pitft.conf \
file://xorg.conf.d/99-calibration.conf \ file://xorg.conf.d/99-calibration.conf \
" "
SRC_URI_append_libc-musl_raspberrypi3-64 = " \
file://xorg.conf.d/10-noglamor.conf \
"
do_install_append_rpi () { do_install_append_rpi () {
PITFT="${@bb.utils.contains("MACHINE_FEATURES", "pitft", "1", "0", d)}" PITFT="${@bb.utils.contains("MACHINE_FEATURES", "pitft", "1", "0", d)}"
if [ "${PITFT}" = "1" ]; then if [ "${PITFT}" = "1" ]; then
@@ -13,5 +15,8 @@ do_install_append_rpi () {
install -m 0644 ${WORKDIR}/xorg.conf.d/99-calibration.conf ${D}/${sysconfdir}/X11/xorg.conf.d/ install -m 0644 ${WORKDIR}/xorg.conf.d/99-calibration.conf ${D}/${sysconfdir}/X11/xorg.conf.d/
fi fi
} }
do_install_append_libc-musl_raspberrypi3-64 () {
install -d ${D}/${sysconfdir}/X11/xorg.conf.d/
install -m 0644 ${WORKDIR}/xorg.conf.d/10-noglamor.conf ${D}/${sysconfdir}/X11/xorg.conf.d/
}
FILES_${PN}_rpi += "${sysconfdir}/X11/xorg.conf ${sysconfdir}/X11/xorg.conf.d/*" FILES_${PN}_rpi += "${sysconfdir}/X11/xorg.conf ${sysconfdir}/X11/xorg.conf.d/*"

View File

@@ -1,66 +0,0 @@
# NVRAM file for BCM943430WLPTH
# 2.4 GHz, 20 MHz BW mode
# The following parameter values are just placeholders, need to be updated.
manfid=0x2d0
prodid=0x0727
vendid=0x14e4
devid=0x43e2
boardtype=0x0727
boardrev=0x1101
boardnum=22
macaddr=00:90:4c:c5:12:38
sromrev=11
boardflags=0x00404201
boardflags3=0x08000000
xtalfreq=37400
nocrc=1
ag0=255
aa2g=1
ccode=ALL
pa0itssit=0x20
extpagain2g=0
#PA parameters for 2.4GHz, measured at CHIP OUTPUT
pa2ga0=-168,7161,-820
AvVmid_c0=0x0,0xc8
cckpwroffset0=5
# PPR params
maxp2ga0=84
txpwrbckof=6
cckbw202gpo=0
legofdmbw202gpo=0x66111111
mcsbw202gpo=0x77711111
propbw202gpo=0xdd
# OFDM IIR :
ofdmdigfilttype=18
ofdmdigfilttypebe=18
# PAPD mode:
papdmode=1
papdvalidtest=1
pacalidx2g=42
papdepsoffset=-22
papdendidx=58
# LTECX flags
ltecxmux=0
ltecxpadnum=0x0102
ltecxfnsel=0x44
ltecxgcigpio=0x01
il0macaddr=00:90:4c:c5:12:38
wl0id=0x431b
deadman_to=0xffffffff
# muxenab: 0x1 for UART enable, 0x2 for GPIOs, 0x8 for JTAG
muxenab=0x1
# CLDO PWM voltage settings - 0x4 - 1.1 volt
#cldo_pwm=0x4
#VCO freq 326.4MHz
spurconfig=0x3
edonthd20l=-75
edoffthd20ul=-80

View File

@@ -0,0 +1,53 @@
SUMMARY = "Firmware files for use with Linux kernel"
SECTION = "kernel"
LICENSE = "Firmware-broadcom_bcm43xx"
LIC_FILES_CHKSUM = "file://LICENCE.broadcom_bcm43xx;md5=3160c14df7228891b868060e1951dfbc"
# These are not common licenses, set NO_GENERIC_LICENSE for them
# so that the license files will be copied from fetched source
NO_GENERIC_LICENSE[Firmware-broadcom_bcm43xx] = "LICENCE.broadcom_bcm43xx"
SRCREV = "86e88fbf0345da49555d0ec34c80b4fbae7d0cd3"
PV = "0.0+git${SRCPV}"
SRC_URI = "git://github.com/RPi-Distro/firmware-nonfree"
UPSTREAM_VERSION_UNKNOWN = "1"
S = "${WORKDIR}/git"
inherit allarch
CLEANBROKEN = "1"
do_compile() {
:
}
do_install() {
install -d ${D}${nonarch_base_libdir}/firmware/brcm
cp ./LICENCE.broadcom_bcm43xx ${D}${nonarch_base_libdir}/firmware
cp -r ./brcm/brcmfmac43430* ${D}${nonarch_base_libdir}/firmware/brcm
cp -r ./brcm/brcmfmac43455* ${D}${nonarch_base_libdir}/firmware/brcm
}
PACKAGES = " \
${PN}-broadcom-license \
${PN}-bcm43430 \
${PN}-bcm43455 \
"
LICENSE_${PN}-bcm43430 = "Firmware-broadcom_bcm43xx"
LICENSE_${PN}-bcm43455 = "Firmware-broadcom_bcm43xx"
LICENSE_${PN}-broadcom-license = "Firmware-broadcom_bcm43xx"
FILES_${PN}-broadcom-license = "${nonarch_base_libdir}/firmware/LICENCE.broadcom_bcm43xx"
FILES_${PN}-bcm43430 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430*"
FILES_${PN}-bcm43455 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43455*"
RDEPENDS_${PN}-bcm43430 += "${PN}-broadcom-license"
RDEPENDS_${PN}-bcm43455 += "${PN}-broadcom-license"
# Firmware files are generally not ran on the CPU, so they can be
# allarch despite being architecture specific
INSANE_SKIP = "arch"

View File

@@ -1,12 +0,0 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
SRC_URI += "file://brcmfmac43430-sdio.txt"
do_install_append() {
install -D -m 0644 ${WORKDIR}/brcmfmac43430-sdio.txt ${D}/lib/firmware/brcm/brcmfmac43430-sdio.txt
}
FILES_${PN}-bcm43430 += " \
/lib/firmware/brcm/brcmfmac43430-sdio.txt \
"

View File

@@ -7,8 +7,8 @@ python __anonymous() {
FILESEXTRAPATHS_prepend := "${THISDIR}/linux-raspberrypi:" FILESEXTRAPATHS_prepend := "${THISDIR}/linux-raspberrypi:"
LINUX_VERSION ?= "4.11" LINUX_VERSION ?= "4.13"
LINUX_RPI_DEV_BRANCH ?= "rpi-4.11.y" LINUX_RPI_DEV_BRANCH ?= "rpi-4.13.y"
SRCREV = "${AUTOREV}" SRCREV = "${AUTOREV}"
SRC_URI = "git://github.com/raspberrypi/linux.git;protocol=git;branch=${LINUX_RPI_DEV_BRANCH} \ SRC_URI = "git://github.com/raspberrypi/linux.git;protocol=git;branch=${LINUX_RPI_DEV_BRANCH} \
@@ -16,11 +16,6 @@ SRC_URI = "git://github.com/raspberrypi/linux.git;protocol=git;branch=${LINUX_RP
" "
require linux-raspberrypi.inc require linux-raspberrypi.inc
# A LOADADDR is needed when building a uImage format kernel. This value is not
# set by default in rpi-4.8.y and later branches so we need to provide it
# manually. This value unused if KERNEL_IMAGETYPE is not uImage.
KERNEL_EXTRA_ARGS += "LOADADDR=0x00008000"
# Disable version check so that we don't have to edit this recipe every time # Disable version check so that we don't have to edit this recipe every time
# upstream bumps the version # upstream bumps the version
KERNEL_VERSION_SANITY_SKIP = "1" KERNEL_VERSION_SANITY_SKIP = "1"

View File

@@ -1,24 +1,22 @@
require linux-rpi.inc
inherit linux-raspberrypi-base
DESCRIPTION = "Linux Kernel for Raspberry Pi" DESCRIPTION = "Linux Kernel for Raspberry Pi"
SECTION = "kernel" SECTION = "kernel"
LICENSE = "GPLv2" LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7" LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
SRC_URI += " \ COMPATIBLE_MACHINE = "^rpi$"
file://defconfig \
"
COMPATIBLE_MACHINE = "raspberrypi"
PE = "1" PE = "1"
PV = "${LINUX_VERSION}+git${SRCPV}" PV = "${LINUX_VERSION}+git${SRCPV}"
# NOTE: For now we pull in the default config from the RPi kernel GIT tree. inherit kernel siteinfo
KERNEL_DEFCONFIG_raspberrypi ?= "bcmrpi_defconfig" require recipes-kernel/linux/linux-yocto.inc
KERNEL_DEFCONFIG_raspberrypi2 ?= "bcm2709_defconfig"
KERNEL_DEFCONFIG_raspberrypi3-64 ?= "bcmrpi3_defconfig" KCONFIG_MODE = "--alldefconfig"
KBUILD_DEFCONFIG_raspberrypi0-wifi ?= "bcmrpi_defconfig"
KBUILD_DEFCONFIG_raspberrypi ?= "bcmrpi_defconfig"
KBUILD_DEFCONFIG_raspberrypi2 ?= "bcm2709_defconfig"
KBUILD_DEFCONFIG_raspberrypi3 ?= "bcm2709_defconfig"
KBUILD_DEFCONFIG_raspberrypi3-64 ?= "bcmrpi3_defconfig"
# CMDLINE for raspberrypi # CMDLINE for raspberrypi
CMDLINE ?= "dwc_otg.lpm_enable=0 console=serial0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait" CMDLINE ?= "dwc_otg.lpm_enable=0 console=serial0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait"
@@ -26,20 +24,141 @@ CMDLINE ?= "dwc_otg.lpm_enable=0 console=serial0,115200 root=/dev/mmcblk0p2 root
# Add the kernel debugger over console kernel command line option if enabled # Add the kernel debugger over console kernel command line option if enabled
CMDLINE_append = ' ${@base_conditional("ENABLE_KGDB", "1", "kgdboc=serial0,115200", "", d)}' CMDLINE_append = ' ${@base_conditional("ENABLE_KGDB", "1", "kgdboc=serial0,115200", "", d)}'
# Disable rpi logo on boot
CMDLINE_append += ' ${@base_conditional("DISABLE_RPI_BOOT_LOGO", "1", "logo.nologo", "", d)}'
# You can define CMDLINE_DEBUG as "debug" in your local.conf or distro.conf
# to enable kernel debugging.
CMDLINE_DEBUG ?= ""
CMDLINE_append = " ${CMDLINE_DEBUG}"
# Quirk for udev greater or equal 141
UDEV_GE_141 ?= "1" UDEV_GE_141 ?= "1"
# Enable OABI compat for people stuck with obsolete userspace
ARM_KEEP_OABI ?= "1"
KERNEL_INITRAMFS ?= '${@base_conditional("INITRAMFS_IMAGE_BUNDLE", "1", "1", "", d)}'
KERNEL_MODULE_AUTOLOAD += "${@bb.utils.contains("MACHINE_FEATURES", "pitft28r", "stmpe-ts", "", d)}" KERNEL_MODULE_AUTOLOAD += "${@bb.utils.contains("MACHINE_FEATURES", "pitft28r", "stmpe-ts", "", d)}"
# Set programmatically some variables during recipe parsing # A LOADADDR is needed when building a uImage format kernel. This value is not
# See http://www.yoctoproject.org/docs/current/bitbake-user-manual/bitbake-user-manual.html#anonymous-python-functions # set by default in rpi-4.8.y and later branches so we need to provide it
python __anonymous () { # manually. This value unused if KERNEL_IMAGETYPE is not uImage.
kerneltype = d.getVar('KERNEL_IMAGETYPE') KERNEL_EXTRA_ARGS += "LOADADDR=0x00008000"
kerneldt = get_dts(d, d.getVar('LINUX_VERSION'))
d.setVar("KERNEL_DEVICETREE", kerneldt) # Set a variable in .configure
# $1 - Configure variable to be set
# $2 - value [n/y/value]
kernel_configure_variable() {
# Remove the config
CONF_SED_SCRIPT="$CONF_SED_SCRIPT /CONFIG_$1[ =]/d;"
if test "$2" = "n"
then
echo "# CONFIG_$1 is not set" >> ${B}/.config
else
echo "CONFIG_$1=$2" >> ${B}/.config
fi
} }
do_kernel_configme_prepend() { do_configure_prepend() {
install -m 0644 ${S}/arch/${ARCH}/configs/${KERNEL_DEFCONFIG} ${WORKDIR}/defconfig || die "No default configuration for ${MACHINE} / ${KERNEL_DEFCONFIG} available." mv -f ${B}/.config ${B}/.config.patched
CONF_SED_SCRIPT=""
# oabi / eabi support
kernel_configure_variable AEABI y
if [ "${ARM_KEEP_OABI}" = "1" ] ; then
kernel_configure_variable OABI_COMPAT y
else
kernel_configure_variable OABI_COMPAT n
fi
# Set cmdline
kernel_configure_variable CMDLINE "\"${CMDLINE}\""
# Localversion
kernel_configure_variable LOCALVERSION "\"\""
kernel_configure_variable LOCALVERSION_AUTO n
# Udev quirks
# Newer versions of udev mandate that sysfs doesn't have deprecated entries
if [ "${UDEV_GE_141}" = "1" ] ; then
kernel_configure_variable SYSFS_DEPRECATED n
kernel_configure_variable SYSFS_DEPRECATED_V2 n
kernel_configure_variable HOTPLUG y
kernel_configure_variable UEVENT_HELPER_PATH "\"\""
kernel_configure_variable UNIX y
kernel_configure_variable SYSFS y
kernel_configure_variable PROC_FS y
kernel_configure_variable TMPFS y
kernel_configure_variable INOTIFY_USER y
kernel_configure_variable SIGNALFD y
kernel_configure_variable TMPFS_POSIX_ACL y
kernel_configure_variable BLK_DEV_BSG y
kernel_configure_variable DEVTMPFS y
kernel_configure_variable DEVTMPFS_MOUNT y
fi
# Newer inits like systemd need cgroup support
if [ "${KERNEL_ENABLE_CGROUPS}" = "1" ] ; then
kernel_configure_variable CGROUP_SCHED y
kernel_configure_variable CGROUPS y
kernel_configure_variable CGROUP_NS y
kernel_configure_variable CGROUP_FREEZER y
kernel_configure_variable CGROUP_DEVICE y
kernel_configure_variable CPUSETS y
kernel_configure_variable PROC_PID_CPUSET y
kernel_configure_variable CGROUP_CPUACCT y
kernel_configure_variable RESOURCE_COUNTERS y
fi
# root-over-nfs-over-usb-eth support. Limited, but should cover some cases
# Enable this by setting a proper CMDLINE_NFSROOT_USB.
if [ ! -z "${CMDLINE_NFSROOT_USB}" ]; then
oenote "Configuring the kernel for root-over-nfs-over-usb-eth with CMDLINE ${CMDLINE_NFSROOT_USB}"
kernel_configure_variable INET y
kernel_configure_variable IP_PNP y
kernel_configure_variable USB_GADGET y
kernel_configure_variable USB_GADGET_SELECTED y
kernel_configure_variable USB_ETH y
kernel_configure_variable NFS_FS y
kernel_configure_variable ROOT_NFS y
kernel_configure_variable ROOT_NFS y
kernel_configure_variable CMDLINE "\"${CMDLINE_NFSROOT_USB}\""
fi
if [ ! -z "${KERNEL_INITRAMFS}" ]; then
kernel_configure_variable BLK_DEV_INITRD y
kernel_configure_variable INITRAMFS_SOURCE ""
kernel_configure_variable RD_GZIP y
kernel_configure_variable OVERLAY_FS y
kernel_configure_variable SQUASHFS y
kernel_configure_variable UBIFS_FS y
fi
# Activate CONFIG_LEGACY_PTYS
kernel_configure_variable LEGACY_PTYS y
# this module is built externally via drbd-utils
kernel_configure_variable BLK_DEV_DRBD n
# Activate the configuration options for VC4
VC4GRAPHICS="${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "1", "0", d)}"
if [ ${VC4GRAPHICS} = "1" ]; then
kernel_configure_variable I2C_BCM2835 y
kernel_configure_variable DRM y
kernel_configure_variable DRM_FBDEV_EMULATION y
kernel_configure_variable DRM_VC4 y
fi
# Keep this the last line
# Remove all modified configs and add the rest to .config
sed -e "${CONF_SED_SCRIPT}" < '${B}/.config.patched' >> '${B}/.config'
rm -f ${B}/.config.patched
yes '' | oe_runmake oldconfig
}
do_compile_append_raspberrypi3-64() {
cc_extra=$(get_cc_option)
oe_runmake dtbs CC="${KERNEL_CC} $cc_extra " LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS}
} }
do_install_prepend() { do_install_prepend() {

View File

@@ -1 +0,0 @@
# Dummy file to get through do_kernel_configme.

View File

@@ -1,13 +1,8 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-${PV}:" FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-${PV}:"
LINUX_VERSION ?= "4.9.27" LINUX_VERSION ?= "4.9.80"
SRCREV = "9a5f215eda12bad29b35040dff00d0346fe517e2" SRCREV = "7f9c648dad6473469b4133898fa6bb8d818ecff9"
SRC_URI = "git://github.com/raspberrypi/linux.git;branch=rpi-4.9.y" SRC_URI = "git://github.com/raspberrypi/linux.git;branch=rpi-4.9.y"
require linux-raspberrypi.inc require linux-raspberrypi.inc
# A LOADADDR is needed when building a uImage format kernel. This value is not
# set by default in rpi-4.8.y and later branches so we need to provide it
# manually. This value unused if KERNEL_IMAGETYPE is not uImage.
KERNEL_EXTRA_ARGS += "LOADADDR=0x00008000"

View File

@@ -1,148 +0,0 @@
DESCRIPTION = "Linux Kernel"
SECTION = "kernel"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
inherit kernel siteinfo
require recipes-kernel/linux/linux-yocto.inc
# Enable OABI compat for people stuck with obsolete userspace
ARM_KEEP_OABI ?= "1"
# Quirk for udev greater or equal 141
UDEV_GE_141 ?= "1"
# You can define CMDLINE_DEBUG as "debug" in your local.conf or distro.conf
# to enable kernel debugging.
CMDLINE_DEBUG ?= ""
CMDLINE_append = " ${CMDLINE_DEBUG}"
KERNEL_INITRAMFS ?= '${@base_conditional("INITRAMFS_IMAGE_BUNDLE", "1", "1", "", d)}'
# Set a variable in .configure
# $1 - Configure variable to be set
# $2 - value [n/y/value]
kernel_configure_variable() {
# Remove the config
CONF_SED_SCRIPT="$CONF_SED_SCRIPT /CONFIG_$1[ =]/d;"
if test "$2" = "n"
then
echo "# CONFIG_$1 is not set" >> ${B}/.config
else
echo "CONFIG_$1=$2" >> ${B}/.config
fi
}
do_configure_prepend() {
# Clean .config
echo "" > ${B}/.config
CONF_SED_SCRIPT=""
# oabi / eabi support
kernel_configure_variable AEABI y
if [ "${ARM_KEEP_OABI}" = "1" ] ; then
kernel_configure_variable OABI_COMPAT y
else
kernel_configure_variable OABI_COMPAT n
fi
# Set cmdline
kernel_configure_variable CMDLINE "\"${CMDLINE}\""
# Localversion
kernel_configure_variable LOCALVERSION "\"\""
kernel_configure_variable LOCALVERSION_AUTO n
# Udev quirks
# Newer versions of udev mandate that sysfs doesn't have deprecated entries
if [ "${UDEV_GE_141}" = "1" ] ; then
kernel_configure_variable SYSFS_DEPRECATED n
kernel_configure_variable SYSFS_DEPRECATED_V2 n
kernel_configure_variable HOTPLUG y
kernel_configure_variable UEVENT_HELPER_PATH "\"\""
kernel_configure_variable UNIX y
kernel_configure_variable SYSFS y
kernel_configure_variable PROC_FS y
kernel_configure_variable TMPFS y
kernel_configure_variable INOTIFY_USER y
kernel_configure_variable SIGNALFD y
kernel_configure_variable TMPFS_POSIX_ACL y
kernel_configure_variable BLK_DEV_BSG y
kernel_configure_variable DEVTMPFS y
kernel_configure_variable DEVTMPFS_MOUNT y
fi
# Newer inits like systemd need cgroup support
if [ "${KERNEL_ENABLE_CGROUPS}" = "1" ] ; then
kernel_configure_variable CGROUP_SCHED y
kernel_configure_variable CGROUPS y
kernel_configure_variable CGROUP_NS y
kernel_configure_variable CGROUP_FREEZER y
kernel_configure_variable CGROUP_DEVICE y
kernel_configure_variable CPUSETS y
kernel_configure_variable PROC_PID_CPUSET y
kernel_configure_variable CGROUP_CPUACCT y
kernel_configure_variable RESOURCE_COUNTERS y
fi
# root-over-nfs-over-usb-eth support. Limited, but should cover some cases
# Enable this by setting a proper CMDLINE_NFSROOT_USB.
if [ ! -z "${CMDLINE_NFSROOT_USB}" ]; then
oenote "Configuring the kernel for root-over-nfs-over-usb-eth with CMDLINE ${CMDLINE_NFSROOT_USB}"
kernel_configure_variable INET y
kernel_configure_variable IP_PNP y
kernel_configure_variable USB_GADGET y
kernel_configure_variable USB_GADGET_SELECTED y
kernel_configure_variable USB_ETH y
kernel_configure_variable NFS_FS y
kernel_configure_variable ROOT_NFS y
kernel_configure_variable ROOT_NFS y
kernel_configure_variable CMDLINE "\"${CMDLINE_NFSROOT_USB}\""
fi
if [ ! -z "${KERNEL_INITRAMFS}" ]; then
kernel_configure_variable BLK_DEV_INITRD y
kernel_configure_variable INITRAMFS_SOURCE ""
kernel_configure_variable RD_GZIP y
kernel_configure_variable OVERLAY_FS y
kernel_configure_variable SQUASHFS y
kernel_configure_variable UBIFS_FS y
fi
# Activate CONFIG_LEGACY_PTYS
kernel_configure_variable LEGACY_PTYS y
# Activate the configuration options for VC4
VC4GRAPHICS="${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "1", "0", d)}"
if [ ${VC4GRAPHICS} = "1" ]; then
kernel_configure_variable I2C_BCM2835 y
kernel_configure_variable DRM y
kernel_configure_variable DRM_FBDEV_EMULATION y
kernel_configure_variable DRM_VC4 y
kernel_configure_variable FB_BCM2708 n
fi
# Keep this the last line
# Remove all modified configs and add the rest to .config
sed -e "${CONF_SED_SCRIPT}" < '${WORKDIR}/defconfig' >> '${B}/.config'
yes '' | oe_runmake oldconfig
}
# Automatically depend on lzop-native if CONFIG_KERNEL_LZO is enabled
python () {
try:
defconfig = bb.fetch2.localpath('file://defconfig', d)
except bb.fetch2.FetchError:
return
try:
configfile = open(defconfig)
except IOError:
return
if 'CONFIG_KERNEL_LZO=y\n' in configfile.readlines():
depends = d.getVar('DEPENDS', False)
d.setVar('DEPENDS', depends + ' lzop-native')
configfile.close()
}

View File

@@ -10,4 +10,4 @@ SRC_URI_append_rpi = " \
file://0005-Don-t-abort-gst_omx_video_dec_set_format-if-there-s-.patch \ file://0005-Don-t-abort-gst_omx_video_dec_set_format-if-there-s-.patch \
" "
FILESEXTRAPATHS_prepend := "${THISDIR}/gstreamer1.0-omx-1.10:" FILESEXTRAPATHS_prepend := "${THISDIR}/gstreamer1.0-omx-1.12:"

View File

@@ -0,0 +1,56 @@
From 97cb9405f281f54d4083f3126d441c8b44eafb89 Mon Sep 17 00:00:00 2001
From: Paul Barker <pbarker@toganlabs.com>
Date: Thu, 7 Sep 2017 19:14:20 +0000
Subject: [PATCH] Don't require internet connection during build
The following issues break offline builds:
* Building the man page uses a web service hosted on heroku.
* Makefile.ffmpeg explicitly does a "git clone" from the internet.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
Upstream-status: Inappropriate
---
Makefile | 6 ++----
Makefile.ffmpeg | 2 +-
2 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/Makefile b/Makefile
index 60501b1..6471f0f 100644
--- a/Makefile
+++ b/Makefile
@@ -79,14 +79,12 @@ ffmpeg:
make -f Makefile.ffmpeg
make -f Makefile.ffmpeg install
-dist: omxplayer.bin omxplayer.1
+dist: omxplayer.bin
mkdir -p $(DIST)/usr/lib/omxplayer
mkdir -p $(DIST)/usr/bin
mkdir -p $(DIST)/usr/share/doc/omxplayer
- mkdir -p $(DIST)/usr/share/man/man1
cp omxplayer omxplayer.bin $(DIST)/usr/bin
cp COPYING $(DIST)/usr/share/doc/omxplayer
cp README.md $(DIST)/usr/share/doc/omxplayer/README
- cp omxplayer.1 $(DIST)/usr/share/man/man1
cp -P ffmpeg_compiled/usr/lib/*.so* $(DIST)/usr/lib/omxplayer/
- tar -czf omxplayer-dist.tar.gz $(DIST)
\ No newline at end of file
+ tar -czf omxplayer-dist.tar.gz $(DIST)
diff --git a/Makefile.ffmpeg b/Makefile.ffmpeg
index 22d495c..8651724 100644
--- a/Makefile.ffmpeg
+++ b/Makefile.ffmpeg
@@ -6,7 +6,7 @@ FFMPEG_EXTRA_CFLAGS?=-mfpu=vfp -mfloat-abi=$(FLOAT) -mno-apcs-stack-check -mstru
WORK=$(PWD)
.PHONY : all
-all: checkout configure compile
+all: configure compile
.PHONY : copy
copy:
--
2.7.4

View File

@@ -0,0 +1,39 @@
From 4a13419e3805b541fc58e57f1f27c4a388609ef5 Mon Sep 17 00:00:00 2001
From: Paul Barker <pbarker@toganlabs.com>
Date: Thu, 7 Sep 2017 20:02:15 +0000
Subject: [PATCH] Prevent ffmpeg configure/compile race condition
Additional dependency information is needed in Makefile.ffmpeg to ensure that
the configure stage is finished before the compile stage starts.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
Upstream-status: Pending
---
Makefile.ffmpeg | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Makefile.ffmpeg b/Makefile.ffmpeg
index 8651724..619c49a 100644
--- a/Makefile.ffmpeg
+++ b/Makefile.ffmpeg
@@ -6,7 +6,7 @@ FFMPEG_EXTRA_CFLAGS?=-mfpu=vfp -mfloat-abi=$(FLOAT) -mno-apcs-stack-check -mstru
WORK=$(PWD)
.PHONY : all
-all: configure compile
+all: compile
.PHONY : copy
copy:
@@ -14,7 +14,7 @@ copy:
$(HOST)-strip *.so*
.PHONY : compile
-compile:
+compile: configure
+$(MAKE) -C ffmpeg
.PHONY : configure
--
2.7.4

View File

@@ -10,14 +10,27 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
DEPENDS = "libpcre libav virtual/egl boost freetype dbus openssl samba libssh libomxil coreutils-native curl-native" DEPENDS = "libpcre libav virtual/egl boost freetype dbus openssl samba libssh libomxil coreutils-native curl-native"
PR = "r4" PR = "r4"
SRCREV = "061425a5eabf6e9ee43229911c073a863d144038" SRCREV_default = "b8ff59dccd9307f10dad71bec2525a95bd6c603b"
# omxplayer builds its own copy of ffmpeg from source instead of using the
# system's ffmpeg library. This isn't ideal but it's ok for now. We do however
# want to keep control of the exact version of ffmpeg used instead of just
# fetching the latest commit on a release branch (which is what the checkout job
# in Makefile.ffmpeg in the omxplayer source tree does).
#
# This SRCREV corresponds to the v3.1.10 release of ffmpeg.
SRCREV_ffmpeg = "afa34cb36edca0ff809b7e58474bbce12271ecba"
SRC_URI = "git://github.com/popcornmix/omxplayer.git;protocol=git;branch=master \ SRC_URI = "git://github.com/popcornmix/omxplayer.git;protocol=git;branch=master \
git://source.ffmpeg.org/ffmpeg;branch=release/3.1;protocol=git;depth=1;name=ffmpeg;destsuffix=git/ffmpeg \
file://0001-Remove-Makefile.include-which-includes-hardcoded.patch \ file://0001-Remove-Makefile.include-which-includes-hardcoded.patch \
file://0002-Libraries-and-headers-from-ffmpeg-are-installed-in-u.patch \ file://0002-Libraries-and-headers-from-ffmpeg-are-installed-in-u.patch \
file://0003-Remove-strip-step-in-Makefile.patch \ file://0003-Remove-strip-step-in-Makefile.patch \
file://0004-Add-FFMPEG_EXTRA_CFLAGS-and-FFMPEG_EXTRA_LDFLAGS.patch \ file://0004-Add-FFMPEG_EXTRA_CFLAGS-and-FFMPEG_EXTRA_LDFLAGS.patch \
file://fix-tar-command-with-DIST.patch \ file://fix-tar-command-with-DIST.patch \
file://use-native-pkg-config.patch \ file://use-native-pkg-config.patch \
file://0005-Don-t-require-internet-connection-during-build.patch \
file://0006-Prevent-ffmpeg-configure-compile-race-condition.patch \
" "
S = "${WORKDIR}/git" S = "${WORKDIR}/git"
@@ -53,7 +66,8 @@ do_compile() {
# Needed for compiler test in ffmpeg's configure # Needed for compiler test in ffmpeg's configure
mkdir -p tmp mkdir -p tmp
oe_runmake ffmpeg oe_runmake -f Makefile.ffmpeg
oe_runmake -f Makefile.ffmpeg install
oe_runmake oe_runmake
} }

View File

@@ -1 +1,2 @@
EXTRA_OECONF_append_raspberrypi = " --disable-asm" EXTRA_OECONF_append_raspberrypi = " --disable-asm"
EXTRA_OECONF_append_raspberrypi0-wifi = " --disable-asm"

View File

@@ -2,5 +2,5 @@
# long-description: Creates a partitioned SD card image for use with # long-description: Creates a partitioned SD card image for use with
# Raspberry Pi. Boot files are located in the first vfat partition. # Raspberry Pi. Boot files are located in the first vfat partition.
part /boot --source bootimg-partition --ondisk mmcblk --fstype=vfat --label boot --active --align 4096 --size 20 part /boot --source bootimg-partition --ondisk mmcblk0 --fstype=vfat --label boot --active --align 4096 --size 20
part / --source rootfs --ondisk mmcblk --fstype=ext4 --label root --align 4096 part / --source rootfs --ondisk mmcblk0 --fstype=ext4 --label root --align 4096