diff --git a/buildroot-external/configs/rpi0_w_defconfig b/buildroot-external/configs/rpi0_w_defconfig index 041900505..ed42b2045 100644 --- a/buildroot-external/configs/rpi0_w_defconfig +++ b/buildroot-external/configs/rpi0_w_defconfig @@ -21,7 +21,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi0- BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rpi-4.14.y" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="db81c14ce9fbd705c2d3936edecbc6036ace6c05" BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel.config" BR2_LINUX_KERNEL_LZ4=y diff --git a/buildroot-external/configs/rpi2_defconfig b/buildroot-external/configs/rpi2_defconfig index 39925c381..556f1d7f1 100644 --- a/buildroot-external/configs/rpi2_defconfig +++ b/buildroot-external/configs/rpi2_defconfig @@ -21,7 +21,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rpi-4.14.y" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="db81c14ce9fbd705c2d3936edecbc6036ace6c05" BR2_LINUX_KERNEL_DEFCONFIG="bcm2709" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel.config" BR2_LINUX_KERNEL_LZ4=y diff --git a/buildroot-external/configs/rpi3_64_defconfig b/buildroot-external/configs/rpi3_64_defconfig index 283e36fe2..6a6603c14 100644 --- a/buildroot-external/configs/rpi3_64_defconfig +++ b/buildroot-external/configs/rpi3_64_defconfig @@ -21,7 +21,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi3- BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rpi-4.14.y" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="db81c14ce9fbd705c2d3936edecbc6036ace6c05" BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi3" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel.config" BR2_LINUX_KERNEL_LZ4=y diff --git a/buildroot-external/configs/rpi3_defconfig b/buildroot-external/configs/rpi3_defconfig index 3c71b292f..a73b38e8b 100644 --- a/buildroot-external/configs/rpi3_defconfig +++ b/buildroot-external/configs/rpi3_defconfig @@ -21,7 +21,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi3" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rpi-4.14.y" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="db81c14ce9fbd705c2d3936edecbc6036ace6c05" BR2_LINUX_KERNEL_DEFCONFIG="bcm2709" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel.config" BR2_LINUX_KERNEL_LZ4=y diff --git a/buildroot-external/configs/rpi_defconfig b/buildroot-external/configs/rpi_defconfig index ab9c2ccc7..4124f6b32 100644 --- a/buildroot-external/configs/rpi_defconfig +++ b/buildroot-external/configs/rpi_defconfig @@ -21,7 +21,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rpi-4.14.y" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="db81c14ce9fbd705c2d3936edecbc6036ace6c05" BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel.config" BR2_LINUX_KERNEL_LZ4=y diff --git a/buildroot-external/package/bluetooth-bcm43xx/bluetooth-bcm43xx.mk b/buildroot-external/package/bluetooth-bcm43xx/bluetooth-bcm43xx.mk index a6976bca1..4b49c2a25 100644 --- a/buildroot-external/package/bluetooth-bcm43xx/bluetooth-bcm43xx.mk +++ b/buildroot-external/package/bluetooth-bcm43xx/bluetooth-bcm43xx.mk @@ -11,22 +11,21 @@ BLUETOOTH_BCM43XX_SITE = $(BR2_EXTERNAL_HASSOS_PATH)/package/bluetooth-bcm43xx BLUETOOTH_BCM43XX_SITE_METHOD = local define BLUETOOTH_BCM43XX_BUILD_CMDS - curl -o $(@D)/BCM43430A1.hcd https://raw.githubusercontent.com/RPi-Distro/bluez-firmware/master/broadcom/BCM43430A1.hcd - curl -o $(@D)/BCM4345C0.hcd https://raw.githubusercontent.com/RPi-Distro/bluez-firmware/master/broadcom/BCM4345C0.hcd + curl -o $(@D)/BCM43430A1.hcd https://raw.githubusercontent.com/RPi-Distro/bluez-firmware/ade2bae1aaaebede09abb8fb546f767a0e4c7804/broadcom/BCM43430A1.hcd + curl -o $(@D)/BCM4345C0.hcd https://raw.githubusercontent.com/RPi-Distro/bluez-firmware/ade2bae1aaaebede09abb8fb546f767a0e4c7804/broadcom/BCM4345C0.hcd endef define BLUETOOTH_BCM43XX_INSTALL_TARGET_CMDS - mkdir -p $(TARGET_DIR)/etc/systemd/system/hassos-hardware.target.wants - cp -f $(@D)/bluetooth-bcm43xx $(TARGET_DIR)/usr/sbin/ - cp -f $(@D)/bluetooth-bcm43xx.service $(TARGET_DIR)/usr/lib/systemd/system/ + $(INSTALL) -d $(TARGET_DIR)/etc/systemd/system/hassos-hardware.target.wants + $(INSTALL) -m 0755 $(@D)/bluetooth-bcm43xx $(TARGET_DIR)/usr/sbin/ + $(INSTALL) -m 0644 $(@D)/bluetooth-bcm43xx.service $(TARGET_DIR)/usr/lib/systemd/system/ ln -fs /usr/lib/systemd/system/bluetooth-bcm43xx.service $(TARGET_DIR)/etc/systemd/system/hassos-hardware.target.wants/ - mkdir -p $(TARGET_DIR)/lib/firmware/brcm - cp -f $(@D)/BCM43430A1.hcd $(TARGET_DIR)/lib/firmware/brcm/ - cp -f $(@D)/BCM4345C0.hcd $(TARGET_DIR)/lib/firmware/brcm/ + $(INSTALL) -d $(TARGET_DIR)/lib/firmware/brcm + $(INSTALL) -m 0644 $(@D)/*.hcd $(TARGET_DIR)/lib/firmware/brcm/ - mkdir -p $(TARGET_DIR)/etc/udev/rules.d - cp -f $(@D)/bluetooth-bcm43xx.rules $(TARGET_DIR)/etc/udev/rules.d/ + $(INSTALL) -d $(TARGET_DIR)/etc/udev/rules.d + $(INSTALL) -m 0644 $(@D)/bluetooth-bcm43xx.rules $(TARGET_DIR)/etc/udev/rules.d/ endef $(eval $(generic-package)) diff --git a/buildroot-patches/0006-Pump-raspberry-pi-firmware-for-kernel-4.14.patch b/buildroot-patches/0006-Pump-raspberry-pi-firmware-for-kernel-4.14.patch index aafe2f440..d064ed37f 100644 --- a/buildroot-patches/0006-Pump-raspberry-pi-firmware-for-kernel-4.14.patch +++ b/buildroot-patches/0006-Pump-raspberry-pi-firmware-for-kernel-4.14.patch @@ -16,7 +16,7 @@ index 4854deae03..3a9f21e877 100644 @@ -1,2 +1,2 @@ # Locally computed -sha256 ea451834e20136d249661e0ed7d1fdfa309249d233a387f44dd6c3b746a454c6 rpi-firmware-36f991382326907419f64917624427e59fd8e4a0.tar.gz -+sha256 f2b0f8ec8e73f8fa399f2c72c574ea5fe7fa57ab6151b139842a3ba783cd2140 rpi-firmware-a46b1f9521229ec26a1377aab7d013df1ade2791.tar.gz ++sha256 25c04d9e5b0d9dfe3145784c983460b6e47f370c2082ced45392882d55932b8a rpi-firmware-418b77e24476a98aba4ee33942cc5321e6698ce4.tar.gz diff --git a/package/rpi-firmware/rpi-firmware.mk b/package/rpi-firmware/rpi-firmware.mk index eab4c5d307..cb2e9d6cd8 100644 --- a/package/rpi-firmware/rpi-firmware.mk @@ -26,7 +26,7 @@ index eab4c5d307..cb2e9d6cd8 100644 ################################################################################ -RPI_FIRMWARE_VERSION = 36f991382326907419f64917624427e59fd8e4a0 -+RPI_FIRMWARE_VERSION = a46b1f9521229ec26a1377aab7d013df1ade2791 ++RPI_FIRMWARE_VERSION = 418b77e24476a98aba4ee33942cc5321e6698ce4 RPI_FIRMWARE_SITE = $(call github,raspberrypi,firmware,$(RPI_FIRMWARE_VERSION)) RPI_FIRMWARE_LICENSE = BSD-3-Clause RPI_FIRMWARE_LICENSE_FILES = boot/LICENCE.broadcom diff --git a/buildroot-patches/0010-rpi-use-latest-wifi-driver.patch b/buildroot-patches/0010-rpi-use-latest-wifi-driver.patch new file mode 100644 index 000000000..833d989d0 --- /dev/null +++ b/buildroot-patches/0010-rpi-use-latest-wifi-driver.patch @@ -0,0 +1,45 @@ +From 30af519c8cc4b4c46dfb4ee42adda49a81dbc475 Mon Sep 17 00:00:00 2001 +From: Pascal Vizeli +Date: Thu, 12 Jul 2018 21:33:50 +0000 +Subject: [PATCH 1/1] rpi: use latest wifi driver + +Signed-off-by: Pascal Vizeli +--- + package/rpi-wifi-firmware/rpi-wifi-firmware.hash | 2 +- + package/rpi-wifi-firmware/rpi-wifi-firmware.mk | 6 +++--- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/package/rpi-wifi-firmware/rpi-wifi-firmware.hash b/package/rpi-wifi-firmware/rpi-wifi-firmware.hash +index bc0d7c8b02..946a55fac0 100644 +--- a/package/rpi-wifi-firmware/rpi-wifi-firmware.hash ++++ b/package/rpi-wifi-firmware/rpi-wifi-firmware.hash +@@ -1,3 +1,3 @@ + # Locally calculated +-sha256 beade89c5c072158b6cf18cf741d2695980fd6a4533dab3897bebf90c0631a30 rpi-wifi-firmware-18d7c931aff0a8a78360b9b9eaeb15d1224fb907.tar.gz ++sha256 163fc0629d9ddcf7b729fefd3129f8d4f43b8fc912fa487b6d8bc57cf57232a7 rpi-wifi-firmware-86e88fbf0345da49555d0ec34c80b4fbae7d0cd3.tar.gz + sha256 b16056fc91b82a0e3e8de8f86c2dac98201aa9dc3cbd33e8d38f1b087fcec30d LICENCE.broadcom_bcm43xx +diff --git a/package/rpi-wifi-firmware/rpi-wifi-firmware.mk b/package/rpi-wifi-firmware/rpi-wifi-firmware.mk +index 32dd3e519b..248b0a2621 100644 +--- a/package/rpi-wifi-firmware/rpi-wifi-firmware.mk ++++ b/package/rpi-wifi-firmware/rpi-wifi-firmware.mk +@@ -4,14 +4,14 @@ + # + ################################################################################ + +-RPI_WIFI_FIRMWARE_VERSION = 18d7c931aff0a8a78360b9b9eaeb15d1224fb907 +-RPI_WIFI_FIRMWARE_SITE = $(call github,LibreELEC,brcmfmac_sdio-firmware-rpi,$(RPI_WIFI_FIRMWARE_VERSION)) ++RPI_WIFI_FIRMWARE_VERSION = 86e88fbf0345da49555d0ec34c80b4fbae7d0cd3 ++RPI_WIFI_FIRMWARE_SITE = $(call github,RPi-Distro,firmware-nonfree,$(RPI_WIFI_FIRMWARE_VERSION)) + RPI_WIFI_FIRMWARE_LICENSE = PROPRIETARY + RPI_WIFI_FIRMWARE_LICENSE_FILES = LICENCE.broadcom_bcm43xx + + define RPI_WIFI_FIRMWARE_INSTALL_TARGET_CMDS + $(INSTALL) -d $(TARGET_DIR)/lib/firmware/brcm +- $(INSTALL) -m 0644 $(@D)/firmware/brcm/brcmfmac* $(TARGET_DIR)/lib/firmware/brcm ++ $(INSTALL) -m 0644 $(@D)/brcm/brcmfmac434* $(TARGET_DIR)/lib/firmware/brcm + endef + + $(eval $(generic-package)) +-- +2.17.1 + diff --git a/buildroot/package/rpi-firmware/rpi-firmware.hash b/buildroot/package/rpi-firmware/rpi-firmware.hash index 3a9f21e87..b72b71ed7 100644 --- a/buildroot/package/rpi-firmware/rpi-firmware.hash +++ b/buildroot/package/rpi-firmware/rpi-firmware.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 f2b0f8ec8e73f8fa399f2c72c574ea5fe7fa57ab6151b139842a3ba783cd2140 rpi-firmware-a46b1f9521229ec26a1377aab7d013df1ade2791.tar.gz +sha256 25c04d9e5b0d9dfe3145784c983460b6e47f370c2082ced45392882d55932b8a rpi-firmware-418b77e24476a98aba4ee33942cc5321e6698ce4.tar.gz diff --git a/buildroot/package/rpi-firmware/rpi-firmware.mk b/buildroot/package/rpi-firmware/rpi-firmware.mk index cb2e9d6cd..a71570300 100644 --- a/buildroot/package/rpi-firmware/rpi-firmware.mk +++ b/buildroot/package/rpi-firmware/rpi-firmware.mk @@ -4,7 +4,7 @@ # ################################################################################ -RPI_FIRMWARE_VERSION = a46b1f9521229ec26a1377aab7d013df1ade2791 +RPI_FIRMWARE_VERSION = 418b77e24476a98aba4ee33942cc5321e6698ce4 RPI_FIRMWARE_SITE = $(call github,raspberrypi,firmware,$(RPI_FIRMWARE_VERSION)) RPI_FIRMWARE_LICENSE = BSD-3-Clause RPI_FIRMWARE_LICENSE_FILES = boot/LICENCE.broadcom diff --git a/buildroot/package/rpi-wifi-firmware/rpi-wifi-firmware.hash b/buildroot/package/rpi-wifi-firmware/rpi-wifi-firmware.hash index bc0d7c8b0..946a55fac 100644 --- a/buildroot/package/rpi-wifi-firmware/rpi-wifi-firmware.hash +++ b/buildroot/package/rpi-wifi-firmware/rpi-wifi-firmware.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 beade89c5c072158b6cf18cf741d2695980fd6a4533dab3897bebf90c0631a30 rpi-wifi-firmware-18d7c931aff0a8a78360b9b9eaeb15d1224fb907.tar.gz +sha256 163fc0629d9ddcf7b729fefd3129f8d4f43b8fc912fa487b6d8bc57cf57232a7 rpi-wifi-firmware-86e88fbf0345da49555d0ec34c80b4fbae7d0cd3.tar.gz sha256 b16056fc91b82a0e3e8de8f86c2dac98201aa9dc3cbd33e8d38f1b087fcec30d LICENCE.broadcom_bcm43xx diff --git a/buildroot/package/rpi-wifi-firmware/rpi-wifi-firmware.mk b/buildroot/package/rpi-wifi-firmware/rpi-wifi-firmware.mk index 32dd3e519..248b0a262 100644 --- a/buildroot/package/rpi-wifi-firmware/rpi-wifi-firmware.mk +++ b/buildroot/package/rpi-wifi-firmware/rpi-wifi-firmware.mk @@ -4,14 +4,14 @@ # ################################################################################ -RPI_WIFI_FIRMWARE_VERSION = 18d7c931aff0a8a78360b9b9eaeb15d1224fb907 -RPI_WIFI_FIRMWARE_SITE = $(call github,LibreELEC,brcmfmac_sdio-firmware-rpi,$(RPI_WIFI_FIRMWARE_VERSION)) +RPI_WIFI_FIRMWARE_VERSION = 86e88fbf0345da49555d0ec34c80b4fbae7d0cd3 +RPI_WIFI_FIRMWARE_SITE = $(call github,RPi-Distro,firmware-nonfree,$(RPI_WIFI_FIRMWARE_VERSION)) RPI_WIFI_FIRMWARE_LICENSE = PROPRIETARY RPI_WIFI_FIRMWARE_LICENSE_FILES = LICENCE.broadcom_bcm43xx define RPI_WIFI_FIRMWARE_INSTALL_TARGET_CMDS $(INSTALL) -d $(TARGET_DIR)/lib/firmware/brcm - $(INSTALL) -m 0644 $(@D)/firmware/brcm/brcmfmac* $(TARGET_DIR)/lib/firmware/brcm + $(INSTALL) -m 0644 $(@D)/brcm/brcmfmac434* $(TARGET_DIR)/lib/firmware/brcm endef $(eval $(generic-package)) diff --git a/scripts/update-rpi-kernel.sh b/scripts/update-rpi-kernel.sh new file mode 100755 index 000000000..9aeeb0e1a --- /dev/null +++ b/scripts/update-rpi-kernel.sh @@ -0,0 +1,9 @@ +#!/bin/bash +set -e + +if [ -z "$1" ]; then + echo "Need a version!" + exit 1 +fi + +sed -i "s/BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION=\".*\"/BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION=\"$1\"/g" buildroot-external/configs/rpi*