mirror of
https://github.com/openwrt/openwrt.git
synced 2026-10-12 06:57:57 +04:00
qualcommbe: add Bluetooth support for Linksys LN6001
Enable the Bluetooth UART and pin configuration for Linksys Velop WRT Pro 7 (LN6001/MBE70). Describe the ISP and reset outputs through the existing named GPIO export mechanism, holding both high at boot. Select the generic bluetooth-uart package in DEVICE_PACKAGES so images include kmod-hci-uart and BlueZ btattach through its dependencies. Initialize the LN6001 UCI defaults to attach /dev/ttyMSM1 using H4 at 115200 baud. Preserve already configured UARTs, including disabled ones. The generic package remains disabled until a board or user configures it. The combined series passed cold-start controller initialization, LE discovery, connection and service discovery without a userspace reset pulse. Keep Bluetooth support separate from Wi-Fi enablement. Signed-off-by: Satoshi Ikeuchi <satosan.ikm@gmail.com> Link: https://github.com/openwrt/openwrt/pull/25594 Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
1 parent
2f7f5b0c49
commit
a1743ae5cc
3 files changed
+54
-1
No files matched your search
@@ -14,6 +14,7 @@
|
||||
|
||||
aliases {
|
||||
serial0 = &blsp1_uart2;
|
||||
serial1 = &blsp1_uart4;
|
||||
led-boot = &led_blue;
|
||||
led-failsafe = &led_red;
|
||||
led-running = &led_blue;
|
||||
@@ -24,6 +25,22 @@
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
gpio-export {
|
||||
compatible = "gpio-export";
|
||||
|
||||
bluetooth-isp {
|
||||
gpio-export,name = "bluetooth-isp";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&tlmm 57 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
bluetooth-reset {
|
||||
gpio-export,name = "bluetooth-reset";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&tlmm 31 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys";
|
||||
pinctrl-0 = <&keys_pins>;
|
||||
@@ -81,6 +98,12 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&blsp1_uart4 {
|
||||
pinctrl-0 = <&uart4_pins>, <&bluetooth_pta_pins>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&mdio {
|
||||
clock-frequency = <6250000>;
|
||||
pinctrl-0 = <&mdio_pins>;
|
||||
@@ -291,6 +314,13 @@
|
||||
};
|
||||
|
||||
&tlmm {
|
||||
bluetooth_pta_pins: bluetooth-pta-state {
|
||||
pins = "gpio54", "gpio55", "gpio56";
|
||||
function = "pta";
|
||||
drive-strength = <8>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
keys_pins: keys-state {
|
||||
pins = "gpio37", "gpio40";
|
||||
function = "gpio";
|
||||
@@ -354,6 +384,13 @@
|
||||
bias-pull-down;
|
||||
};
|
||||
};
|
||||
|
||||
uart4_pins: uart4-state {
|
||||
pins = "gpio50", "gpio51", "gpio52", "gpio53";
|
||||
function = "blsp4_uart";
|
||||
drive-strength = <8>;
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
|
||||
@@ -37,7 +37,7 @@ define Device/linksys_ln6001
|
||||
DEVICE_MODEL := LN6001
|
||||
DEVICE_DTS := ipq9554-linksys-ln6001
|
||||
SOC := ipq9554
|
||||
DEVICE_PACKAGES += kmod-leds-pwm kmod-fs-f2fs mkf2fs f2fsck
|
||||
DEVICE_PACKAGES += bluetooth-uart kmod-leds-pwm kmod-fs-f2fs mkf2fs f2fsck
|
||||
IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-to 64k | \
|
||||
check-size 128m | sysupgrade-tar rootfs=$$$$@ | append-metadata
|
||||
endef
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /lib/functions.sh
|
||||
|
||||
[ "$(board_name)" = "linksys,ln6001" ] || exit 0
|
||||
[ "$(uci -q get bluetooth-uart.main)" = "uart" ] || exit 0
|
||||
|
||||
# Preserve an already configured UART, including a disabled one.
|
||||
[ -z "$(uci -q get bluetooth-uart.main.device)" ] || exit 0
|
||||
|
||||
uci -q batch <<-EOF
|
||||
set bluetooth-uart.main.device='/dev/ttyMSM1'
|
||||
set bluetooth-uart.main.protocol='h4'
|
||||
set bluetooth-uart.main.speed='115200'
|
||||
set bluetooth-uart.main.enabled='1'
|
||||
EOF
|
||||
Reference in new issue
Block a user