diff options
author | Manuel Bachmann <mbc@iot.bzh> | 2015-10-22 09:51:58 +0000 |
---|---|---|
committer | Manuel Bachmann <mbc@iot.bzh> | 2015-10-22 13:04:14 +0000 |
commit | e232b907c1da205da7d603a68c597b70689b0b05 (patch) | |
tree | 95898265888117aa2332780435aff8003986958a | |
parent | 4f7cf459dd3cdec72869cd40f4a1f6b02ba4faaf (diff) |
r-car m2: support Bluetooth hardware
In order to have Bluetooth hardware detection, and to make
BlueZ commands (such as "hciconfig", "hcitool"...) work,
we need to enable kernel functionalities. Some of them are
designed to be run as modules.
We also make sure that all images include them, since it
does not depend on a specific board's hardware.
PS : we will only build them if "bluetooth" has been
specified in DISTRO_FEATURES, hence saving time.
Change-Id: I14e1bdd7e4e63a7484bb1516dda601e3c03fd58f
Signed-off-by: Manuel Bachmann <mbc@iot.bzh>
-rw-r--r-- | meta-rcar-gen2/conf/local.conf.sample | 13 | ||||
-rw-r--r-- | meta-rcar-gen2/recipes-kernel/linux/linux.inc | 17 |
2 files changed, 30 insertions, 0 deletions
diff --git a/meta-rcar-gen2/conf/local.conf.sample b/meta-rcar-gen2/conf/local.conf.sample index 43857ba..76c15e2 100644 --- a/meta-rcar-gen2/conf/local.conf.sample +++ b/meta-rcar-gen2/conf/local.conf.sample @@ -48,6 +48,19 @@ MACHINE = "porter" # alsa-utils alsa-tools \ #" +# For Bluetooth hardware support +BT_KERNEL_MODULES = " \ + kernel-module-btusb \ + kernel-module-bnep \ + kernel-module-rfcomm \ + kernel-module-rfkill \ + " + +# Distribution-specific runtime components +IMAGE_INSTALL_append = " \ + ${@bb.utils.contains("DISTRO_FEATURES", "bluetooth", "${BT_KERNEL_MODULES}", "", d)} \ + " + # TODO: When booting weston, someone try to load 'libgbm_kms.so' then # fail to boot. It should be 'libgbm_kms.so.1'. # Tentatively, it is to install 'libgbm-dev' pkg. diff --git a/meta-rcar-gen2/recipes-kernel/linux/linux.inc b/meta-rcar-gen2/recipes-kernel/linux/linux.inc index 886c2a9..5a55bee 100644 --- a/meta-rcar-gen2/recipes-kernel/linux/linux.inc +++ b/meta-rcar-gen2/recipes-kernel/linux/linux.inc @@ -59,6 +59,11 @@ do_configure_prepend() { kernel_configure_variable LOCALVERSION "\"\"" kernel_configure_variable LOCALVERSION_AUTO n + # Distribution-dependent kernel features + case "${DISTRO_FEATURES}" in + *bluetooth*) do_configure_bluetooth + esac + # Udev quirks # Newer versions of udev mandate that sysfs doesn't have deprecated entries if [ "${UDEV_GE_141}" = "1" ] ; then @@ -129,6 +134,18 @@ do_configure_prepend() { yes '' | oe_runmake oldconfig } +do_configure_bluetooth() { + # Needed for Bluetooth hardware support + kernel_configure_variable BT_HIDP y + kernel_configure_variable BT_HCIBTUSB m + kernel_configure_variable BT_BNEP m + kernel_configure_variable BT_BNEP_MC_FILTER y + kernel_configure_variable BT_BNEP_PROTO_FILTER y + kernel_configure_variable BT_RFCOMM m + kernel_configure_variable BT_RFCOMM_TTY y + kernel_configure_variable RFKILL m +} + do_configure_append_porter() { # Enable CAN kernel_configure_variable CAN y |