[yocto] [meta-raspberrypi][PATCH] bluez5: add functions for raspberrypi0-wifi

Paul Barker pbarker at toganlabs.com
Fri Aug 25 01:51:05 PDT 2017


On Thu, Aug 24, 2017 at 1:05 PM, Yusuke Mitsuki
<mickey.happygolucky at gmail.com> wrote:
> hciattach on raspberrypi0-wifi failed because BCM43430A1.hcd is not found.
>
> Paches that in order to use bluetooth with BCM43430 are not enabled.
> Functions are only enabled with raspberrypi3 in bluez5_%.bbappend like as follows:
>
> - SRC_URI_append_raspberrypi3
> - do_install_append_raspberrypi3()
> - FILES_${PN}_append_raspberrypi3
> - SYSTEMD_SERVICE_${PN}_append_raspberrypi3
>
> These should be enabled with raspberrypi0-wifi too.
>
> Signed-off-by: Yusuke Mitsuki <mickey.happygolucky at gmail.com>
> ---
>  recipes-connectivity/bluez5/bluez5_%.bbappend | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/recipes-connectivity/bluez5/bluez5_%.bbappend b/recipes-connectivity/bluez5/bluez5_%.bbappend
> index 956d776..075dc2b 100644
> --- a/recipes-connectivity/bluez5/bluez5_%.bbappend
> +++ b/recipes-connectivity/bluez5/bluez5_%.bbappend
> @@ -24,3 +24,28 @@ FILES_${PN}_append_raspberrypi3 = " \
>      "
>
>  SYSTEMD_SERVICE_${PN}_append_raspberrypi3 = " brcm43438.service"
> +
> +SRC_URI_append_raspberrypi0-wifi = " \
> +    file://BCM43430A1.hcd \
> +    file://0001-bcm43xx-Add-bcm43xx-3wire-variant.patch \
> +    file://0002-bcm43xx-The-UART-speed-must-be-reset-after-the-firmw.patch \
> +    file://0003-Increase-firmware-load-timeout-to-30s.patch \
> +    file://0004-Move-the-43xx-firmware-into-lib-firmware.patch \
> +    file://brcm43438.service \
> +    "
> +
> +do_install_append_raspberrypi0-wifi() {
> +    install -d ${D}/lib/firmware/brcm/
> +    install -m 0644 ${WORKDIR}/BCM43430A1.hcd ${D}/lib/firmware/brcm/BCM43430A1.hcd
> +
> +    if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
> +        install -d ${D}${systemd_unitdir}/system
> +        install -m 0644 ${WORKDIR}/brcm43438.service ${D}${systemd_unitdir}/system
> +    fi
> +}
> +
> +FILES_${PN}_append_raspberrypi0-wifi = " \
> +    /lib/firmware/brcm/BCM43430A1.hcd \
> +    "
> +
> +SYSTEMD_SERVICE_${PN}_append_raspberrypi0-wifi = " brcm43438.service"

I don't like the amount of duplication here. Could you define some
common variables and use those in the appends? This will make it
easier to change/upgrade in the future and avoid risk of the
duplicates falling out of sync with each other.

Eg.

    RPI_WIFI_SOURCES = "...."

    SRC_URI_append_raspberrypi3 = "${RPI_WIFI_SOURCES}"
    SRC_URI_append_raspberrypi0-wifi = "${RPI_WIFI_SOURCES}"

-- 
Paul Barker
Togán Labs Ltd



More information about the yocto mailing list