diff --git a/buildroot-external/Config.in b/buildroot-external/Config.in index bf0dc810c..fb7041067 100644 --- a/buildroot-external/Config.in +++ b/buildroot-external/Config.in @@ -1,5 +1,5 @@ source "$BR2_EXTERNAL_HASSOS_PATH/package/hassio/Config.in" -source "$BR2_EXTERNAL_HASSOS_PATH/package/bluetooth-bcm43xx/Config.in" +source "$BR2_EXTERNAL_HASSOS_PATH/package/pi-bluetooth/Config.in" source "$BR2_EXTERNAL_HASSOS_PATH/package/bluetooth-rtl8723/Config.in" source "$BR2_EXTERNAL_HASSOS_PATH/package/hardkernel-boot/Config.in" source "$BR2_EXTERNAL_HASSOS_PATH/package/khadas-boot/Config.in" diff --git a/buildroot-external/busybox.config b/buildroot-external/busybox.config index 93de67544..7a262d841 100644 --- a/buildroot-external/busybox.config +++ b/buildroot-external/busybox.config @@ -1,14 +1,14 @@ # # Automatically generated make config: don't edit -# Busybox version: 1.32.0 -# Thu Dec 3 13:37:18 2020 +# Busybox version: 1.35.0 +# Mon Apr 11 09:59:46 2022 # CONFIG_HAVE_DOT_CONFIG=y # # Settings # -# CONFIG_DESKTOP is not set +CONFIG_DESKTOP=y # CONFIG_EXTRA_COMPAT is not set # CONFIG_FEDORA_COMPAT is not set # CONFIG_INCLUDE_SUSv2 is not set @@ -36,7 +36,6 @@ CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe" # CONFIG_FEATURE_CLEAN_UP is not set # CONFIG_FEATURE_SYSLOG_INFO is not set # CONFIG_FEATURE_SYSLOG is not set -CONFIG_PLATFORM_LINUX=y # # Build Options @@ -55,6 +54,7 @@ CONFIG_EXTRA_LDFLAGS="" CONFIG_EXTRA_LDLIBS="" # CONFIG_USE_PORTABLE_CODE is not set CONFIG_STACK_OPTIMIZATION_386=y +CONFIG_STATIC_LIBGCC=y # # Installation Options ("make install" behavior) @@ -94,9 +94,12 @@ CONFIG_FEATURE_BUFFERS_USE_MALLOC=y CONFIG_PASSWORD_MINLEN=6 CONFIG_MD5_SMALL=1 CONFIG_SHA3_SMALL=1 -CONFIG_FEATURE_FAST_TOP=y -# CONFIG_FEATURE_ETC_NETWORKS is not set -# CONFIG_FEATURE_ETC_SERVICES is not set +CONFIG_FEATURE_NON_POSIX_CP=y +# CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set +CONFIG_FEATURE_USE_SENDFILE=y +CONFIG_FEATURE_COPYBUF_KB=4 +CONFIG_MONOTONIC_SYSCALL=y +CONFIG_IOCTL_HEX2STR_ERROR=y CONFIG_FEATURE_EDITING=y CONFIG_FEATURE_EDITING_MAX_LEN=1024 # CONFIG_FEATURE_EDITING_VI is not set @@ -120,14 +123,6 @@ CONFIG_LAST_SUPPORTED_WCHAR=767 # CONFIG_UNICODE_BIDI_SUPPORT is not set # CONFIG_UNICODE_NEUTRAL_TABLE is not set # CONFIG_UNICODE_PRESERVE_BROKEN is not set -CONFIG_FEATURE_NON_POSIX_CP=y -# CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set -CONFIG_FEATURE_USE_SENDFILE=y -CONFIG_FEATURE_COPYBUF_KB=4 -CONFIG_FEATURE_SKIP_ROOTFS=y -CONFIG_MONOTONIC_SYSCALL=y -CONFIG_IOCTL_HEX2STR_ERROR=y -# CONFIG_FEATURE_HWIB is not set # # Applets @@ -162,6 +157,8 @@ CONFIG_BZIP2_SMALL=0 # CONFIG_CPIO is not set # CONFIG_FEATURE_CPIO_O is not set # CONFIG_FEATURE_CPIO_P is not set +# CONFIG_FEATURE_CPIO_IGNORE_DEVNO is not set +# CONFIG_FEATURE_CPIO_RENUMBER_INODES is not set # CONFIG_DPKG is not set # CONFIG_DPKG_DEB is not set # CONFIG_GZIP is not set @@ -197,6 +194,22 @@ CONFIG_FEATURE_TAR_NOPRESERVE_TIME=y # # Coreutils # +CONFIG_FEATURE_VERBOSE=y + +# +# Common options for date and touch +# +# CONFIG_FEATURE_TIMEZONE is not set + +# +# Common options for cp and mv +# +CONFIG_FEATURE_PRESERVE_HARDLINKS=y + +# +# Common options for df, du, ls +# +CONFIG_FEATURE_HUMAN_READABLE=y CONFIG_BASENAME=y CONFIG_CAT=y CONFIG_FEATURE_CATN=y @@ -207,11 +220,13 @@ CONFIG_CHOWN=y CONFIG_FEATURE_CHOWN_LONG_OPTIONS=y CONFIG_CHROOT=y CONFIG_CKSUM=y +CONFIG_CRC32=y CONFIG_COMM=y CONFIG_CP=y CONFIG_FEATURE_CP_LONG_OPTIONS=y CONFIG_FEATURE_CP_REFLINK=y CONFIG_CUT=y +CONFIG_FEATURE_CUT_REGEX=y CONFIG_DATE=y CONFIG_FEATURE_DATE_ISOFMT=y # CONFIG_FEATURE_DATE_NANO is not set @@ -223,6 +238,7 @@ CONFIG_FEATURE_DD_IBS_OBS=y CONFIG_FEATURE_DD_STATUS=y CONFIG_DF=y CONFIG_FEATURE_DF_FANCY=y +CONFIG_FEATURE_SKIP_ROOTFS=y CONFIG_DIRNAME=y # CONFIG_DOS2UNIX is not set # CONFIG_UNIX2DOS is not set @@ -316,7 +332,6 @@ CONFIG_TEST2=y CONFIG_FEATURE_TEST_64=y CONFIG_TIMEOUT=y CONFIG_TOUCH=y -CONFIG_FEATURE_TOUCH_NODEREF=y CONFIG_FEATURE_TOUCH_SUSV3=y CONFIG_TR=y CONFIG_FEATURE_TR_CLASSES=y @@ -331,6 +346,7 @@ CONFIG_UNIQ=y CONFIG_UNLINK=y CONFIG_USLEEP=y CONFIG_UUDECODE=y +CONFIG_BASE32=y CONFIG_BASE64=y CONFIG_UUENCODE=y CONFIG_WC=y @@ -341,21 +357,6 @@ CONFIG_FEATURE_WC_LARGE=y CONFIG_WHOAMI=y CONFIG_YES=y -# -# Common options -# -CONFIG_FEATURE_VERBOSE=y - -# -# Common options for cp and mv -# -CONFIG_FEATURE_PRESERVE_HARDLINKS=y - -# -# Common options for df, du, ls -# -CONFIG_FEATURE_HUMAN_READABLE=y - # # Console Utilities # @@ -423,6 +424,7 @@ CONFIG_VI=y CONFIG_FEATURE_VI_MAX_LEN=4096 CONFIG_FEATURE_VI_8BIT=y CONFIG_FEATURE_VI_COLON=y +CONFIG_FEATURE_VI_COLON_EXPAND=y CONFIG_FEATURE_VI_YANKMARK=y CONFIG_FEATURE_VI_SEARCH=y # CONFIG_FEATURE_VI_REGEX_SEARCH is not set @@ -436,6 +438,7 @@ CONFIG_FEATURE_VI_ASK_TERMINAL=y CONFIG_FEATURE_VI_UNDO=y CONFIG_FEATURE_VI_UNDO_QUEUE=y CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=256 +CONFIG_FEATURE_VI_VERBOSE_STATUS=y # CONFIG_FEATURE_ALLOW_EXEC is not set # @@ -444,7 +447,11 @@ CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=256 CONFIG_FIND=y CONFIG_FEATURE_FIND_PRINT0=y CONFIG_FEATURE_FIND_MTIME=y +CONFIG_FEATURE_FIND_ATIME=y +CONFIG_FEATURE_FIND_CTIME=y CONFIG_FEATURE_FIND_MMIN=y +CONFIG_FEATURE_FIND_AMIN=y +CONFIG_FEATURE_FIND_CMIN=y CONFIG_FEATURE_FIND_PERM=y CONFIG_FEATURE_FIND_TYPE=y CONFIG_FEATURE_FIND_EXECUTABLE=y @@ -452,6 +459,7 @@ CONFIG_FEATURE_FIND_XDEV=y CONFIG_FEATURE_FIND_MAXDEPTH=y CONFIG_FEATURE_FIND_NEWER=y CONFIG_FEATURE_FIND_INUM=y +CONFIG_FEATURE_FIND_SAMEFILE=y CONFIG_FEATURE_FIND_EXEC=y CONFIG_FEATURE_FIND_EXEC_PLUS=y CONFIG_FEATURE_FIND_USER=y @@ -623,9 +631,8 @@ CONFIG_FREERAMDISK=y # CONFIG_GETOPT is not set # CONFIG_FEATURE_GETOPT_LONG is not set # CONFIG_HEXDUMP is not set -# CONFIG_FEATURE_HEXDUMP_REVERSE is not set # CONFIG_HD is not set -# CONFIG_XXD is not set +CONFIG_XXD=y CONFIG_HWCLOCK=y # CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set CONFIG_IONICE=y @@ -707,6 +714,7 @@ CONFIG_UEVENT=y # CONFIG_FEATURE_VOLUMEID_BCACHE is not set # CONFIG_FEATURE_VOLUMEID_BTRFS is not set # CONFIG_FEATURE_VOLUMEID_CRAMFS is not set +# CONFIG_FEATURE_VOLUMEID_EROFS is not set # CONFIG_FEATURE_VOLUMEID_EXFAT is not set # CONFIG_FEATURE_VOLUMEID_EXT is not set # CONFIG_FEATURE_VOLUMEID_F2FS is not set @@ -734,6 +742,7 @@ CONFIG_UEVENT=y # Miscellaneous Utilities # CONFIG_ADJTIMEX=y +CONFIG_ASCII=y # CONFIG_BBCONFIG is not set # CONFIG_FEATURE_COMPRESS_BBCONFIG is not set CONFIG_BC=y @@ -829,6 +838,7 @@ CONFIG_TTYSIZE=y # CONFIG_UBIRENAME is not set # CONFIG_VOLNAME is not set CONFIG_WATCHDOG=y +# CONFIG_FEATURE_WATCHDOG_OPEN_TWICE is not set # # Networking Utilities @@ -837,6 +847,9 @@ CONFIG_FEATURE_IPV6=y # CONFIG_FEATURE_UNIX_LOCAL is not set CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y # CONFIG_VERBOSE_RESOLUTION_ERRORS is not set +# CONFIG_FEATURE_ETC_NETWORKS is not set +# CONFIG_FEATURE_ETC_SERVICES is not set +# CONFIG_FEATURE_HWIB is not set # CONFIG_FEATURE_TLS_SHA1 is not set # CONFIG_ARP is not set # CONFIG_ARPING is not set @@ -855,6 +868,7 @@ CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y # CONFIG_HOSTNAME is not set # CONFIG_DNSDOMAINNAME is not set # CONFIG_HTTPD is not set +CONFIG_FEATURE_HTTPD_PORT_DEFAULT=0 # CONFIG_FEATURE_HTTPD_RANGES is not set # CONFIG_FEATURE_HTTPD_SETUID is not set # CONFIG_FEATURE_HTTPD_BASIC_AUTH is not set @@ -866,6 +880,10 @@ CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y # CONFIG_FEATURE_HTTPD_ERROR_PAGES is not set # CONFIG_FEATURE_HTTPD_PROXY is not set # CONFIG_FEATURE_HTTPD_GZIP is not set +# CONFIG_FEATURE_HTTPD_ETAG is not set +# CONFIG_FEATURE_HTTPD_LAST_MODIFIED is not set +# CONFIG_FEATURE_HTTPD_DATE is not set +# CONFIG_FEATURE_HTTPD_ACL_IP is not set # CONFIG_IFCONFIG is not set # CONFIG_FEATURE_IFCONFIG_STATUS is not set # CONFIG_FEATURE_IFCONFIG_SLIP is not set @@ -943,6 +961,7 @@ CONFIG_FEATURE_TC_INGRESS=y # CONFIG_FEATURE_TELNET_WIDTH is not set # CONFIG_TELNETD is not set # CONFIG_FEATURE_TELNETD_STANDALONE is not set +CONFIG_FEATURE_TELNETD_PORT_DEFAULT=0 # CONFIG_FEATURE_TELNETD_INETD_WAIT is not set # CONFIG_TFTP is not set # CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set @@ -963,6 +982,7 @@ CONFIG_FEATURE_TC_INGRESS=y # CONFIG_WGET is not set # CONFIG_FEATURE_WGET_LONG_OPTIONS is not set # CONFIG_FEATURE_WGET_STATUSBAR is not set +# CONFIG_FEATURE_WGET_FTP is not set # CONFIG_FEATURE_WGET_AUTHENTICATION is not set # CONFIG_FEATURE_WGET_TIMEOUT is not set # CONFIG_FEATURE_WGET_HTTPS is not set @@ -984,6 +1004,7 @@ CONFIG_UDHCPC_DEFAULT_SCRIPT="" # CONFIG_FEATURE_UDHCPC6_RFC4704 is not set # CONFIG_FEATURE_UDHCPC6_RFC4833 is not set # CONFIG_FEATURE_UDHCPC6_RFC5970 is not set +CONFIG_UDHCPC_DEFAULT_INTERFACE="" # CONFIG_FEATURE_UDHCP_PORT is not set CONFIG_UDHCP_DEBUG=0 CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=0 @@ -1001,17 +1022,19 @@ CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="" # # Mail Utilities # +CONFIG_FEATURE_MIME_CHARSET="" # CONFIG_MAKEMIME is not set # CONFIG_POPMAILDIR is not set # CONFIG_FEATURE_POPMAILDIR_DELIVERY is not set # CONFIG_REFORMIME is not set # CONFIG_FEATURE_REFORMIME_COMPAT is not set # CONFIG_SENDMAIL is not set -CONFIG_FEATURE_MIME_CHARSET="" # # Process Utilities # +CONFIG_FEATURE_FAST_TOP=y +CONFIG_FEATURE_SHOW_THREADS=y # CONFIG_FREE is not set CONFIG_FUSER=y CONFIG_IOSTAT=y @@ -1050,7 +1073,6 @@ CONFIG_SMEMCAP=y # CONFIG_UPTIME is not set # CONFIG_FEATURE_UPTIME_UTMP_SUPPORT is not set # CONFIG_WATCH is not set -CONFIG_FEATURE_SHOW_THREADS=y # # Runit Utilities @@ -1115,8 +1137,8 @@ CONFIG_ASH_CMDCMD=y # CONFIG_SHELL_HUSH is not set # CONFIG_HUSH_BASH_COMPAT is not set # CONFIG_HUSH_BRACE_EXPANSION is not set -# CONFIG_HUSH_LINENO_VAR is not set # CONFIG_HUSH_BASH_SOURCE_CURDIR is not set +# CONFIG_HUSH_LINENO_VAR is not set # CONFIG_HUSH_INTERACTIVE is not set # CONFIG_HUSH_SAVEHISTORY is not set # CONFIG_HUSH_JOB is not set diff --git a/buildroot-external/configs/rpi3_64_defconfig b/buildroot-external/configs/rpi3_64_defconfig index 03337cd6a..467091aa3 100644 --- a/buildroot-external/configs/rpi3_64_defconfig +++ b/buildroot-external/configs/rpi3_64_defconfig @@ -124,7 +124,7 @@ BR2_PACKAGE_HASSIO_MACHINE="raspberrypi3-64" BR2_PACKAGE_APPARMOR=y BR2_PACKAGE_APPARMOR_PROFILES=y BR2_PACKAGE_LIBCURL_CURL=y -BR2_PACKAGE_BLUETOOTH_BCM43XX=y +BR2_PACKAGE_PI_BLUETOOTH=y BR2_PACKAGE_DOSFSTOOLS=y BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y BR2_PACKAGE_RPI_RF_MOD=y diff --git a/buildroot-external/configs/rpi3_defconfig b/buildroot-external/configs/rpi3_defconfig index 7fec3dcb4..e73815841 100644 --- a/buildroot-external/configs/rpi3_defconfig +++ b/buildroot-external/configs/rpi3_defconfig @@ -124,7 +124,7 @@ BR2_PACKAGE_HASSIO_MACHINE="raspberrypi3" BR2_PACKAGE_APPARMOR=y BR2_PACKAGE_APPARMOR_PROFILES=y BR2_PACKAGE_LIBCURL_CURL=y -BR2_PACKAGE_BLUETOOTH_BCM43XX=y +BR2_PACKAGE_PI_BLUETOOTH=y BR2_PACKAGE_DOSFSTOOLS=y BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y BR2_PACKAGE_RPI_RF_MOD=y diff --git a/buildroot-external/configs/rpi4_64_defconfig b/buildroot-external/configs/rpi4_64_defconfig index 59e232ff6..61e087bce 100644 --- a/buildroot-external/configs/rpi4_64_defconfig +++ b/buildroot-external/configs/rpi4_64_defconfig @@ -125,7 +125,7 @@ BR2_PACKAGE_HASSIO_MACHINE="raspberrypi4-64" BR2_PACKAGE_APPARMOR=y BR2_PACKAGE_APPARMOR_PROFILES=y BR2_PACKAGE_LIBCURL_CURL=y -BR2_PACKAGE_BLUETOOTH_BCM43XX=y +BR2_PACKAGE_PI_BLUETOOTH=y BR2_PACKAGE_DOSFSTOOLS=y BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y BR2_PACKAGE_RPI_RF_MOD=y diff --git a/buildroot-external/configs/rpi4_defconfig b/buildroot-external/configs/rpi4_defconfig index 1803caf50..13cc0b8da 100644 --- a/buildroot-external/configs/rpi4_defconfig +++ b/buildroot-external/configs/rpi4_defconfig @@ -123,7 +123,7 @@ BR2_PACKAGE_HASSIO_MACHINE="raspberrypi4" BR2_PACKAGE_APPARMOR=y BR2_PACKAGE_APPARMOR_PROFILES=y BR2_PACKAGE_LIBCURL_CURL=y -BR2_PACKAGE_BLUETOOTH_BCM43XX=y +BR2_PACKAGE_PI_BLUETOOTH=y BR2_PACKAGE_DOSFSTOOLS=y BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y BR2_PACKAGE_RPI_RF_MOD=y diff --git a/buildroot-external/configs/yellow_defconfig b/buildroot-external/configs/yellow_defconfig index 97a7ebb8e..88b9fb81b 100644 --- a/buildroot-external/configs/yellow_defconfig +++ b/buildroot-external/configs/yellow_defconfig @@ -124,7 +124,7 @@ BR2_PACKAGE_HASSIO_MACHINE="raspberrypi4-64" BR2_PACKAGE_APPARMOR=y BR2_PACKAGE_APPARMOR_PROFILES=y BR2_PACKAGE_LIBCURL_CURL=y -BR2_PACKAGE_BLUETOOTH_BCM43XX=y +BR2_PACKAGE_PI_BLUETOOTH=y BR2_PACKAGE_DOSFSTOOLS=y BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y BR2_PACKAGE_RPI_RF_MOD=y diff --git a/buildroot-external/package/bluetooth-bcm43xx/0001-btuart-reduced-baud-rate-rpi3b.patch b/buildroot-external/package/bluetooth-bcm43xx/0001-btuart-reduced-baud-rate-rpi3b.patch deleted file mode 100644 index ce7f42d9e..000000000 --- a/buildroot-external/package/bluetooth-bcm43xx/0001-btuart-reduced-baud-rate-rpi3b.patch +++ /dev/null @@ -1,16 +0,0 @@ -Bluetooth: hci0: Frame reassembly failed (-84) -https://github.com/raspberrypi/firmware/issues/1150 - -Signed-off-by: Luca Giovenzana - ---- btuart.orig 2020-03-25 03:05:24.491176583 +0100 -+++ btuart 2020-03-25 03:05:43.603107833 +0100 -@@ -19,7 +19,7 @@ if [ "$uart0" = "$serial1" ] ; then - if [ "$uart0_pins" = "16" ] ; then - $HCIATTACH /dev/serial1 bcm43xx 3000000 flow - $BDADDR - else -- $HCIATTACH /dev/serial1 bcm43xx 921600 noflow - $BDADDR -+ $HCIATTACH /dev/serial1 bcm43xx 460800 noflow - $BDADDR - fi - else - $HCIATTACH /dev/serial1 bcm43xx 460800 noflow - $BDADDR diff --git a/buildroot-external/package/bluetooth-bcm43xx/Config.in b/buildroot-external/package/bluetooth-bcm43xx/Config.in deleted file mode 100644 index d0895b057..000000000 --- a/buildroot-external/package/bluetooth-bcm43xx/Config.in +++ /dev/null @@ -1,6 +0,0 @@ -config BR2_PACKAGE_BLUETOOTH_BCM43XX - bool "bluetooth bcm43xx" - depends on BR2_PACKAGE_BLUEZ5_UTILS_CLIENT - select BR2_PACKAGE_BLUEZ5_UTILS_DEPRECATED - help - Install bluetooth for bcm43xx. diff --git a/buildroot-external/package/bluetooth-bcm43xx/bluetooth-bcm43xx.mk b/buildroot-external/package/bluetooth-bcm43xx/bluetooth-bcm43xx.mk deleted file mode 100644 index cb5e5994b..000000000 --- a/buildroot-external/package/bluetooth-bcm43xx/bluetooth-bcm43xx.mk +++ /dev/null @@ -1,40 +0,0 @@ -################################################################################ -# -# Bluetooth BCM43xx -# -################################################################################ - -BLUETOOTH_BCM43XX_VERSION = 1.0.0 -BLUETOOTH_BCM43XX_LICENSE = Apache License 2.0 -BLUETOOTH_BCM43XX_LICENSE_FILES = $(BR2_EXTERNAL_HASSOS_PATH)/../LICENSE -BLUETOOTH_BCM43XX_SITE = $(BR2_EXTERNAL_HASSOS_PATH)/package/bluetooth-bcm43xx -BLUETOOTH_BCM43XX_SITE_METHOD = local - -define BLUETOOTH_BCM43XX_BUILD_CMDS - curl -L -o $(@D)/BCM43430A1.hcd https://raw.githubusercontent.com/RPi-Distro/bluez-firmware/e7fd166981ab4bb9a36c2d1500205a078a35714d/broadcom/BCM43430A1.hcd - curl -L -o $(@D)/BCM4345C0.hcd https://raw.githubusercontent.com/RPi-Distro/bluez-firmware/e7fd166981ab4bb9a36c2d1500205a078a35714d/broadcom/BCM4345C0.hcd - curl -L -o $(@D)/BCM4345C5.hcd https://raw.githubusercontent.com/RPi-Distro/bluez-firmware/e7fd166981ab4bb9a36c2d1500205a078a35714d/broadcom/BCM4345C5.hcd - curl -L -o $(@D)/btuart https://raw.githubusercontent.com/RPi-Distro/pi-bluetooth/e1bb75aa83a632c86270e95f92826eb57ee09a77/usr/bin/btuart - curl -L -o $(@D)/bthelper https://raw.githubusercontent.com/RPi-Distro/pi-bluetooth/e1bb75aa83a632c86270e95f92826eb57ee09a77/usr/bin/bthelper - curl -L -o $(@D)/90-pi-bluetooth.rules https://raw.githubusercontent.com/RPi-Distro/pi-bluetooth/e1bb75aa83a632c86270e95f92826eb57ee09a77/lib/udev/rules.d/90-pi-bluetooth.rules - - patch $(@D)/btuart $(@D)/0001-btuart-reduced-baud-rate-rpi3b.patch -endef - -define BLUETOOTH_BCM43XX_INSTALL_TARGET_CMDS - $(INSTALL) -d $(TARGET_DIR)/etc/systemd/system/hassos-hardware.target.wants - $(INSTALL) -m 0644 $(@D)/bluetooth-bcm43xx.service $(TARGET_DIR)/usr/lib/systemd/system/ - $(INSTALL) -m 0644 $(@D)/bthelper@.service $(TARGET_DIR)/usr/lib/systemd/system/ - - $(INSTALL) -d $(TARGET_DIR)/usr/bin - $(INSTALL) -m 0755 $(@D)/btuart $(TARGET_DIR)/usr/bin/ - $(INSTALL) -m 0755 $(@D)/bthelper $(TARGET_DIR)/usr/bin/ - - $(INSTALL) -d $(TARGET_DIR)/lib/firmware/brcm - $(INSTALL) -m 0644 $(@D)/*.hcd $(TARGET_DIR)/lib/firmware/brcm/ - - $(INSTALL) -d $(TARGET_DIR)/usr/lib/udev/rules.d - $(INSTALL) -m 0644 $(@D)/90-pi-bluetooth.rules $(TARGET_DIR)/usr/lib/udev/rules.d/ -endef - -$(eval $(generic-package)) diff --git a/buildroot-external/package/bluetooth-bcm43xx/bthelper@.service b/buildroot-external/package/bluetooth-bcm43xx/bthelper@.service deleted file mode 100644 index c8a16c15f..000000000 --- a/buildroot-external/package/bluetooth-bcm43xx/bthelper@.service +++ /dev/null @@ -1,8 +0,0 @@ -[Unit] -Description=Raspberry Pi bluetooth helper -Requires=bluetooth.service -After=bluetooth.service - -[Service] -Type=simple -ExecStart=/usr/bin/bthelper %I diff --git a/buildroot-external/package/pi-bluetooth/0001-Fix-Bluetooth-hci0-Frame-reassembly-failed-84.patch b/buildroot-external/package/pi-bluetooth/0001-Fix-Bluetooth-hci0-Frame-reassembly-failed-84.patch new file mode 100644 index 000000000..246d5eaa3 --- /dev/null +++ b/buildroot-external/package/pi-bluetooth/0001-Fix-Bluetooth-hci0-Frame-reassembly-failed-84.patch @@ -0,0 +1,30 @@ +From b74ac4e14e4fcbb76b4cea86573cf602f2b28f8b Mon Sep 17 00:00:00 2001 +Message-Id: +From: Luca Giovenzana +Date: Thu, 14 Apr 2022 14:55:56 +0200 +Subject: [PATCH] Fix Bluetooth: hci0: Frame reassembly failed (-84) + +Lower UART baudrate to fix Frame reassembly failed (-84) issues. +https://github.com/raspberrypi/firmware/issues/1150 + +Signed-off-by: Luca Giovenzana +--- + usr/bin/btuart | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/usr/bin/btuart b/usr/bin/btuart +index 493fd86..cb99a4f 100755 +--- a/usr/bin/btuart ++++ b/usr/bin/btuart +@@ -25,7 +25,7 @@ if [ "$uart0" = "$serial1" ] ; then + if [ "$uart0_pins" = "16" ] ; then + $HCIATTACH /dev/serial1 bcm43xx 3000000 flow - $BDADDR + else +- $HCIATTACH /dev/serial1 bcm43xx 921600 noflow - $BDADDR ++ $HCIATTACH /dev/serial1 bcm43xx 460800 noflow - $BDADDR + fi + else + $HCIATTACH /dev/serial1 bcm43xx 460800 noflow - $BDADDR +-- +2.35.1 + diff --git a/buildroot-external/package/pi-bluetooth/0002-Test-if-WiFi-Bluetooth-module-is-fitted-on-Compute-M.patch b/buildroot-external/package/pi-bluetooth/0002-Test-if-WiFi-Bluetooth-module-is-fitted-on-Compute-M.patch new file mode 100644 index 000000000..93c2ba174 --- /dev/null +++ b/buildroot-external/package/pi-bluetooth/0002-Test-if-WiFi-Bluetooth-module-is-fitted-on-Compute-M.patch @@ -0,0 +1,36 @@ +From 2bfc211b1dc619cce4ea500227576ce1d59c404e Mon Sep 17 00:00:00 2001 +Message-Id: <2bfc211b1dc619cce4ea500227576ce1d59c404e.1649951264.git.stefan@agner.ch> +In-Reply-To: +References: +From: Stefan Agner +Date: Thu, 14 Apr 2022 15:29:39 +0200 +Subject: [PATCH] Test if WiFi/Bluetooth module is fitted on Compute Module 4 + +Signed-off-by: Stefan Agner +--- + usr/bin/btuart | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/usr/bin/btuart b/usr/bin/btuart +index cb99a4f..046227c 100755 +--- a/usr/bin/btuart ++++ b/usr/bin/btuart +@@ -11,6 +11,15 @@ else + BDADDR=`printf b8:27:eb:%02x:%02x:%02x $((0x$B1 ^ 0xaa)) $((0x$B2 ^ 0xaa)) $((0x$B3 ^ 0xaa))` + fi + ++if grep -q "raspberrypi,4-compute-module" /proc/device-tree/compatible; then ++ BOARDREV_EXT=$(xxd -p -g4 /proc/device-tree/chosen/rpi-boardrev-ext) ++ # Ceck Bit 30: Whether the Compute Module has a WiFi module fitted ++ if [ $((16#${BOARDREV_EXT} & 16#40000000)) -gt 0 ]; then ++ # No WiFi/Bluetooth ++ exit 0 ++ fi ++fi ++ + # Bail out if the kernel is managing the Bluetooth modem initialisation + if ( dmesg | grep -q -E "hci[0-9]+: BCM: chip" ); then + # On-board bluetooth is already enabled +-- +2.35.1 + diff --git a/buildroot-external/package/pi-bluetooth/Config.in b/buildroot-external/package/pi-bluetooth/Config.in new file mode 100644 index 000000000..898b89588 --- /dev/null +++ b/buildroot-external/package/pi-bluetooth/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PI_BLUETOOTH + bool "Bluetooth scripts for Raspberry Pi" + depends on BR2_PACKAGE_BLUEZ5_UTILS_CLIENT + depends on BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_BT + select BR2_PACKAGE_BLUEZ5_UTILS_DEPRECATED + help + Install Bluetooth scripts for Raspberry Pi diff --git a/buildroot-external/package/pi-bluetooth/bthelper@.service b/buildroot-external/package/pi-bluetooth/bthelper@.service new file mode 100644 index 000000000..a7c278031 --- /dev/null +++ b/buildroot-external/package/pi-bluetooth/bthelper@.service @@ -0,0 +1,10 @@ +[Unit] +Description=Raspberry Pi bluetooth helper +Requires=hciuart.service bluetooth.service +After=hciuart.service +Before=bluetooth.service + +[Service] +Type=oneshot +ExecStart=/usr/bin/bthelper %I +RemainAfterExit=yes diff --git a/buildroot-external/package/bluetooth-bcm43xx/bluetooth-bcm43xx.service b/buildroot-external/package/pi-bluetooth/hciuart.service similarity index 69% rename from buildroot-external/package/bluetooth-bcm43xx/bluetooth-bcm43xx.service rename to buildroot-external/package/pi-bluetooth/hciuart.service index ab006d73e..80a8b538e 100644 --- a/buildroot-external/package/bluetooth-bcm43xx/bluetooth-bcm43xx.service +++ b/buildroot-external/package/pi-bluetooth/hciuart.service @@ -1,9 +1,7 @@ [Unit] -Description=Bluetooth for BCM43xx -Before=bluetooth.service -Requires=dev-serial1.device -After=dev-serial1.device +Description=Configure Bluetooth Modems connected by UART ConditionFileNotEmpty=/proc/device-tree/soc/gpio@7e200000/bt_pins/brcm,pins +After=dev-serial1.device [Service] Type=forking diff --git a/buildroot-external/package/pi-bluetooth/pi-bluetooth.mk b/buildroot-external/package/pi-bluetooth/pi-bluetooth.mk new file mode 100644 index 000000000..5b244be6b --- /dev/null +++ b/buildroot-external/package/pi-bluetooth/pi-bluetooth.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# Pi-Bluetooth +# +################################################################################ + +PI_BLUETOOTH_VERSION = 23af66cff597c80523bf9581d7f75d387227f183 +PI_BLUETOOTH_SITE = $(call github,RPi-Distro,pi-bluetooth,$(PI_BLUETOOTH_VERSION)) +PI_BLUETOOTH_LICENSE = BSD-3-Clause +PI_BLUETOOTH_LICENSE_FILES = debian/copyright + +define PI_BLUETOOTH_INSTALL_TARGET_CMDS + $(INSTALL) -d $(TARGET_DIR)/etc/systemd/system/hassos-hardware.target.wants + $(INSTALL) -m 0644 $(BR2_EXTERNAL_HASSOS_PATH)/package/pi-bluetooth/hciuart.service $(TARGET_DIR)/usr/lib/systemd/system/ + $(INSTALL) -m 0644 $(BR2_EXTERNAL_HASSOS_PATH)/package/pi-bluetooth/bthelper@.service $(TARGET_DIR)/usr/lib/systemd/system/ + + $(INSTALL) -d $(TARGET_DIR)/usr/bin + $(INSTALL) -m 0755 $(@D)/usr/bin/btuart $(TARGET_DIR)/usr/bin/ + $(INSTALL) -m 0755 $(@D)/usr/bin/bthelper $(TARGET_DIR)/usr/bin/ + + $(INSTALL) -d $(TARGET_DIR)/usr/lib/udev/rules.d + $(INSTALL) -m 0644 $(@D)/lib/udev/rules.d/90-pi-bluetooth.rules $(TARGET_DIR)/usr/lib/udev/rules.d/ +endef + +$(eval $(generic-package))