linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] Add initial support for BQ Aquaris X5
@ 2021-01-24 13:54 Jonathan Albrieux
  2021-01-24 13:54 ` [PATCH 1/3] arm64: dts: qcom: Add device tree for BQ Aquaris X5 (Longcheer L8910) Jonathan Albrieux
                   ` (3 more replies)
  0 siblings, 4 replies; 17+ messages in thread
From: Jonathan Albrieux @ 2021-01-24 13:54 UTC (permalink / raw)
  To: linux-kernel
  Cc: ~postmarketos/upstreaming, stephan, Jonathan Albrieux,
	Andy Gross, Bjorn Andersson, Rob Herring, linux-arm-msm,
	devicetree

Aquaris X5 (Longcheer L8910) is a smartphone released by BQ in 2015.

As part of msm8916-mainline project, this series aims to bring initial
mainline support for it.

Features added:
 - SDHCI (internal and external storage)
 - USB Device Mode
 - UART
 - Regulators
 - WiFi/BT
 - Volume buttons
 - Vibrator
 - Touchkeys backlight
 - Accelerometer and gyroscope sensor
 - Magnetometer sensor

Jonathan Albrieux (3):
  arm64: dts: qcom: Add device tree for BQ Aquaris X5 (Longcheer L8910)
  arm64: dts: qcom: msm8916: Add blsp_i2c3
  arm64: dts: qcom: msm8916-longcheer-l8910: Add imu/magnetometer

 arch/arm64/boot/dts/qcom/Makefile             |   1 +
 .../boot/dts/qcom/msm8916-longcheer-l8910.dts | 267 ++++++++++++++++++
 arch/arm64/boot/dts/qcom/msm8916-pins.dtsi    |  16 ++
 arch/arm64/boot/dts/qcom/msm8916.dtsi         |  15 +
 4 files changed, 299 insertions(+)
 create mode 100644 arch/arm64/boot/dts/qcom/msm8916-longcheer-l8910.dts

-- 
2.17.1


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCH 1/3] arm64: dts: qcom: Add device tree for BQ Aquaris X5 (Longcheer L8910)
  2021-01-24 13:54 [PATCH 0/3] Add initial support for BQ Aquaris X5 Jonathan Albrieux
@ 2021-01-24 13:54 ` Jonathan Albrieux
  2021-01-24 15:12   ` Konrad Dybcio
  2021-01-24 13:54 ` [PATCH 2/3] arm64: dts: qcom: msm8916: Add blsp_i2c3 Jonathan Albrieux
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 17+ messages in thread
From: Jonathan Albrieux @ 2021-01-24 13:54 UTC (permalink / raw)
  To: linux-kernel
  Cc: ~postmarketos/upstreaming, stephan, Jonathan Albrieux,
	Andy Gross, Bjorn Andersson, Rob Herring, linux-arm-msm,
	devicetree

BQ Aquaris X5 (Longcheer L8910) is a smartphone using the MSM8916 SoC.

Add device tree with initial support for:

 - SDHCI (internal and external storage)
 - USB Device Mode
 - UART
 - Regulators
 - WiFi/BT
 - Volume buttons
 - Vibrator
 - Touchkeys backlight

This device tree is based on downstream device tree from BQ and from
Longcheer L8915 device tree.

Co-developed-by: Stephan Gerhold <stephan@gerhold.net>
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Signed-off-by: Jonathan Albrieux <jonathan.albrieux@gmail.com>
---
 arch/arm64/boot/dts/qcom/Makefile             |   1 +
 .../boot/dts/qcom/msm8916-longcheer-l8910.dts | 230 ++++++++++++++++++
 2 files changed, 231 insertions(+)
 create mode 100644 arch/arm64/boot/dts/qcom/msm8916-longcheer-l8910.dts

diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index b5d86739f781..94b76a7ac6ba 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -6,6 +6,7 @@ dtb-$(CONFIG_ARCH_QCOM)	+= ipq6018-cp01-c1.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= ipq8074-hk01.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= msm8916-asus-z00l.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= msm8916-longcheer-l8150.dtb
+dtb-$(CONFIG_ARCH_QCOM)	+= msm8916-longcheer-l8910.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= msm8916-mtp.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= msm8916-samsung-a3u-eur.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= msm8916-samsung-a5u-eur.dtb
diff --git a/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8910.dts b/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8910.dts
new file mode 100644
index 000000000000..7d5eff922f41
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8910.dts
@@ -0,0 +1,230 @@
+// SPDX-License-Identifier: GPL-2.0-only
+
+/dts-v1/;
+
+#include "msm8916-pm8916.dtsi"
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/leds/common.h>
+
+/ {
+	model = "BQ Aquaris X5 (Longcheer L8910)";
+	compatible = "longcheer,l8910", "qcom,msm8916";
+
+	aliases {
+		serial0 = &blsp1_uart2;
+	};
+
+	chosen {
+		stdout-path = "serial0";
+	};
+
+	gpio-keys {
+		compatible = "gpio-keys";
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&gpio_keys_default>;
+
+		label = "GPIO Buttons";
+
+		volume-up {
+			label = "Volume Up";
+			gpios = <&msmgpio 107 GPIO_ACTIVE_LOW>;
+			linux,code = <KEY_VOLUMEUP>;
+		};
+	};
+
+	leds {
+		compatible = "gpio-leds";
+
+		led-0 {
+			gpios = <&msmgpio 17 GPIO_ACTIVE_HIGH>;
+			color = <LED_COLOR_ID_WHITE>;
+			default-state = "off";
+			function = LED_FUNCTION_KBD_BACKLIGHT;
+
+			pinctrl-names = "default";
+			pinctrl-0 = <&button_backlight_default>;
+		};
+	};
+
+	usb_id: usb-id {
+		compatible = "linux,extcon-usb-gpio";
+		id-gpio = <&msmgpio 110 GPIO_ACTIVE_HIGH>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&usb_id_default>;
+	};
+};
+
+&blsp1_uart2 {
+	status = "okay";
+};
+
+&pm8916_resin {
+	status = "okay";
+	linux,code = <KEY_VOLUMEDOWN>;
+};
+
+&pm8916_vib {
+	status = "okay";
+};
+
+&pronto {
+	status = "okay";
+};
+
+&sdhc_1 {
+	status = "okay";
+
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
+	pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
+};
+
+&sdhc_2 {
+	status = "okay";
+
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
+	pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
+
+	cd-gpios = <&msmgpio 38 GPIO_ACTIVE_LOW>;
+};
+
+&usb {
+	status = "okay";
+	extcon = <&usb_id>, <&usb_id>;
+};
+
+&usb_hs_phy {
+	extcon = <&usb_id>;
+};
+
+&smd_rpm_regulators {
+	vdd_l1_l2_l3-supply = <&pm8916_s3>;
+	vdd_l4_l5_l6-supply = <&pm8916_s4>;
+	vdd_l7-supply = <&pm8916_s4>;
+
+	s3 {
+		regulator-min-microvolt = <1200000>;
+		regulator-max-microvolt = <1300000>;
+	};
+
+	s4 {
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <2100000>;
+	};
+
+	l1 {
+		regulator-min-microvolt = <1225000>;
+		regulator-max-microvolt = <1225000>;
+	};
+
+	l2 {
+		regulator-min-microvolt = <1200000>;
+		regulator-max-microvolt = <1200000>;
+	};
+
+	l4 {
+		regulator-min-microvolt = <2050000>;
+		regulator-max-microvolt = <2050000>;
+	};
+
+	l5 {
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+	};
+
+	l6 {
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+	};
+
+	l7 {
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+	};
+
+	l8 {
+		regulator-min-microvolt = <2850000>;
+		regulator-max-microvolt = <2900000>;
+	};
+
+	l9 {
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+	};
+
+	l10 {
+		regulator-min-microvolt = <2700000>;
+		regulator-max-microvolt = <2800000>;
+	};
+
+	l11 {
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <2950000>;
+		regulator-allow-set-load;
+		regulator-system-load = <200000>;
+	};
+
+	l12 {
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <2950000>;
+	};
+
+	l13 {
+		regulator-min-microvolt = <3075000>;
+		regulator-max-microvolt = <3075000>;
+	};
+
+	l14 {
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <3300000>;
+	};
+
+	l15 {
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <3300000>;
+	};
+
+	l16 {
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <3300000>;
+	};
+
+	l17 {
+		regulator-min-microvolt = <2850000>;
+		regulator-max-microvolt = <2850000>;
+	};
+
+	l18 {
+		regulator-min-microvolt = <2700000>;
+		regulator-max-microvolt = <2700000>;
+	};
+};
+
+&msmgpio {
+	button_backlight_default: button-backlight-default {
+		pins = "gpio17";
+		function = "gpio";
+
+		drive-strength = <2>;
+		bias-disable;
+	};
+
+	gpio_keys_default: gpio-keys-default {
+		pins = "gpio107";
+		function = "gpio";
+
+		drive-strength = <2>;
+		bias-pull-up;
+	};
+
+	usb_id_default: usb-id-default {
+		pins = "gpio110";
+		function = "gpio";
+
+		drive-strength = <8>;
+		bias-pull-up;
+	};
+};
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 2/3] arm64: dts: qcom: msm8916: Add blsp_i2c3
  2021-01-24 13:54 [PATCH 0/3] Add initial support for BQ Aquaris X5 Jonathan Albrieux
  2021-01-24 13:54 ` [PATCH 1/3] arm64: dts: qcom: Add device tree for BQ Aquaris X5 (Longcheer L8910) Jonathan Albrieux
@ 2021-01-24 13:54 ` Jonathan Albrieux
  2021-01-24 15:09   ` Konrad Dybcio
  2021-01-24 15:52   ` Stephan Gerhold
  2021-01-24 13:54 ` [PATCH 3/3] arm64: dts: qcom: msm8916-longcheer-l8910: Add imu/magnetometer Jonathan Albrieux
  2021-01-24 21:01 ` [PATCH 0/3] Add initial support for BQ Aquaris X5 Pavel Machek
  3 siblings, 2 replies; 17+ messages in thread
From: Jonathan Albrieux @ 2021-01-24 13:54 UTC (permalink / raw)
  To: linux-kernel
  Cc: ~postmarketos/upstreaming, stephan, Jonathan Albrieux,
	Andy Gross, Bjorn Andersson, Rob Herring, linux-arm-msm,
	devicetree

MSM8916 has another I2C QUP controller that can be enabled on
GPIO 10 and 11.

Add blsp_i2c3 to msm8916.dtsi and disable it by default.

Signed-off-by: Jonathan Albrieux <jonathan.albrieux@gmail.com>
---
 arch/arm64/boot/dts/qcom/msm8916-pins.dtsi | 16 ++++++++++++++++
 arch/arm64/boot/dts/qcom/msm8916.dtsi      | 15 +++++++++++++++
 2 files changed, 31 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi b/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi
index 4dc437f13fa5..7dedb91b9930 100644
--- a/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi
@@ -220,6 +220,22 @@
 		bias-disable;
 	};
 
+	i2c3_default: i2c3-default {
+		pins = "gpio10", "gpio11";
+		function = "blsp_i2c3";
+
+		drive-strength = <2>;
+		bias-disable;
+	};
+
+	i2c3_sleep: i2c3-sleep {
+		pins = "gpio10", "gpio11";
+		function = "gpio";
+
+		drive-strength = <2>;
+		bias-disable;
+	};
+
 	i2c4_default: i2c4-default {
 		pins = "gpio14", "gpio15";
 		function = "blsp_i2c4";
diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi
index 402e891a84ab..1045d7e518f3 100644
--- a/arch/arm64/boot/dts/qcom/msm8916.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi
@@ -1528,6 +1528,21 @@
 			status = "disabled";
 		};
 
+		blsp_i2c3: i2c@78b7000 {
+			compatible = "qcom,i2c-qup-v2.2.1";
+			reg = <0x078b7000 0x500>;
+			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&gcc GCC_BLSP1_AHB_CLK>,
+				 <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>;
+			clock-names = "iface", "core";
+			pinctrl-names = "default", "sleep";
+			pinctrl-0 = <&i2c3_default>;
+			pinctrl-1 = <&i2c3_sleep>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			status = "disabled";
+		};
+
 		blsp_spi3: spi@78b7000 {
 			compatible = "qcom,spi-qup-v2.2.1";
 			reg = <0x078b7000 0x500>;
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 3/3] arm64: dts: qcom: msm8916-longcheer-l8910: Add imu/magnetometer
  2021-01-24 13:54 [PATCH 0/3] Add initial support for BQ Aquaris X5 Jonathan Albrieux
  2021-01-24 13:54 ` [PATCH 1/3] arm64: dts: qcom: Add device tree for BQ Aquaris X5 (Longcheer L8910) Jonathan Albrieux
  2021-01-24 13:54 ` [PATCH 2/3] arm64: dts: qcom: msm8916: Add blsp_i2c3 Jonathan Albrieux
@ 2021-01-24 13:54 ` Jonathan Albrieux
  2021-01-24 15:07   ` Konrad Dybcio
  2021-01-24 21:01 ` [PATCH 0/3] Add initial support for BQ Aquaris X5 Pavel Machek
  3 siblings, 1 reply; 17+ messages in thread
From: Jonathan Albrieux @ 2021-01-24 13:54 UTC (permalink / raw)
  To: linux-kernel
  Cc: ~postmarketos/upstreaming, stephan, Jonathan Albrieux,
	Andy Gross, Bjorn Andersson, Rob Herring, linux-arm-msm,
	devicetree

BQ Aquaris X5 (Longcheer L8910) has:
 - BMI160 accelerometer and gyroscope sensor
 - AK09911 magnetometer sensor
Add them to the device tree.

This patch depends on patch "arm64: dts: qcom: msm8916: Add blsp_i2c3".

Signed-off-by: Jonathan Albrieux <jonathan.albrieux@gmail.com>
---
 .../boot/dts/qcom/msm8916-longcheer-l8910.dts | 37 +++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8910.dts b/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8910.dts
index 7d5eff922f41..c3933ec0f116 100644
--- a/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8910.dts
+++ b/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8910.dts
@@ -56,6 +56,35 @@
 	};
 };
 
+&blsp_i2c3 {
+	status = "okay";
+
+	imu@68 {
+		compatible = "bosch,bmi160";
+		reg = <0x68>;
+
+		vdd-supply = <&pm8916_l17>;
+		vddio-supply = <&pm8916_l6>;
+
+		mount-matrix = "0", "1", "0",
+			      "-1", "0", "0",
+			       "0", "0", "1";
+	};
+
+	magnetometer@d {
+		compatible = "asahi-kasei,ak09911";
+		reg = <0x0d>;
+
+		vdd-supply = <&pm8916_l17>;
+		vid-supply = <&pm8916_l6>;
+
+		reset-gpios = <&msmgpio 111 GPIO_ACTIVE_LOW>;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&mag_reset_default>;
+	};
+};
+
 &blsp1_uart2 {
 	status = "okay";
 };
@@ -220,6 +249,14 @@
 		bias-pull-up;
 	};
 
+	mag_reset_default: mag-reset-default {
+		pins = "gpio111";
+		function = "gpio";
+
+		drive-strength = <2>;
+		bias-disable;
+	};
+
 	usb_id_default: usb-id-default {
 		pins = "gpio110";
 		function = "gpio";
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [PATCH 3/3] arm64: dts: qcom: msm8916-longcheer-l8910: Add imu/magnetometer
  2021-01-24 13:54 ` [PATCH 3/3] arm64: dts: qcom: msm8916-longcheer-l8910: Add imu/magnetometer Jonathan Albrieux
@ 2021-01-24 15:07   ` Konrad Dybcio
  2021-01-24 15:51     ` Stephan Gerhold
  0 siblings, 1 reply; 17+ messages in thread
From: Konrad Dybcio @ 2021-01-24 15:07 UTC (permalink / raw)
  To: Jonathan Albrieux, linux-kernel
  Cc: ~postmarketos/upstreaming, stephan, Andy Gross, Bjorn Andersson,
	Rob Herring, linux-arm-msm, devicetree



> +&blsp_i2c3 {
> +	status = "okay";
> +
> +	imu@68 {
> +		compatible = "bosch,bmi160";
> +		reg = <0x68>;
> +
> +		vdd-supply = <&pm8916_l17>;
> +		vddio-supply = <&pm8916_l6>;
> +
> +		mount-matrix = "0", "1", "0",
> +			      "-1", "0", "0",
> +			       "0", "0", "1";
> +	};
> +
> +	magnetometer@d {
> +		compatible = "asahi-kasei,ak09911";
> +		reg = <0x0d>;
> +
> +		vdd-supply = <&pm8916_l17>;
> +		vid-supply = <&pm8916_l6>;
> +
> +		reset-gpios = <&msmgpio 111 GPIO_ACTIVE_LOW>;
> +
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&mag_reset_default>;
> +	};
> +};

Please sort I2C devices by their address.


>  	};
>  
> +	mag_reset_default: mag-reset-default {
> +		pins = "gpio111";
> +		function = "gpio";
> +
> +		drive-strength = <2>;
> +		bias-disable;
> +	};
> +

Please add this after gpio110 to keep it sorted gpio-number-wise.


Konrad


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 2/3] arm64: dts: qcom: msm8916: Add blsp_i2c3
  2021-01-24 13:54 ` [PATCH 2/3] arm64: dts: qcom: msm8916: Add blsp_i2c3 Jonathan Albrieux
@ 2021-01-24 15:09   ` Konrad Dybcio
  2021-01-24 15:52   ` Stephan Gerhold
  1 sibling, 0 replies; 17+ messages in thread
From: Konrad Dybcio @ 2021-01-24 15:09 UTC (permalink / raw)
  To: Jonathan Albrieux, linux-kernel
  Cc: ~postmarketos/upstreaming, stephan, Andy Gross, Bjorn Andersson,
	Rob Herring, linux-arm-msm, devicetree


On 24.01.2021 14:54, Jonathan Albrieux wrote:
> MSM8916 has another I2C QUP controller that can be enabled on
> GPIO 10 and 11.
>
> Add blsp_i2c3 to msm8916.dtsi and disable it by default.
>
> Signed-off-by: Jonathan Albrieux <jonathan.albrieux@gmail.com>
> ---
>  arch/arm64/boot/dts/qcom/msm8916-pins.dtsi | 16 ++++++++++++++++
>  arch/arm64/boot/dts/qcom/msm8916.dtsi      | 15 +++++++++++++++
>  2 files changed, 31 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi b/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi
> index 4dc437f13fa5..7dedb91b9930 100644
> --- a/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi
> +++ b/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi
> @@ -220,6 +220,22 @@
>  		bias-disable;
>  	};
>  
> +	i2c3_default: i2c3-default {
> +		pins = "gpio10", "gpio11";
> +		function = "blsp_i2c3";
> +
> +		drive-strength = <2>;
> +		bias-disable;
> +	};
> +
> +	i2c3_sleep: i2c3-sleep {
> +		pins = "gpio10", "gpio11";
> +		function = "gpio";
> +
> +		drive-strength = <2>;
> +		bias-disable;
> +	};
> +
>  	i2c4_default: i2c4-default {
>  		pins = "gpio14", "gpio15";
>  		function = "blsp_i2c4";
> diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi
> index 402e891a84ab..1045d7e518f3 100644
> --- a/arch/arm64/boot/dts/qcom/msm8916.dtsi
> +++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi
> @@ -1528,6 +1528,21 @@
>  			status = "disabled";
>  		};
>  
> +		blsp_i2c3: i2c@78b7000 {
> +			compatible = "qcom,i2c-qup-v2.2.1";
> +			reg = <0x078b7000 0x500>;
> +			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
> +			clocks = <&gcc GCC_BLSP1_AHB_CLK>,
> +				 <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>;
> +			clock-names = "iface", "core";
> +			pinctrl-names = "default", "sleep";
> +			pinctrl-0 = <&i2c3_default>;
> +			pinctrl-1 = <&i2c3_sleep>;
> +			#address-cells = <1>;
> +			#size-cells = <0>;
> +			status = "disabled";
> +		};
> +
>  		blsp_spi3: spi@78b7000 {
>  			compatible = "qcom,spi-qup-v2.2.1";
>  			reg = <0x078b7000 0x500>;
>

Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org>


Things to consider for the future:


* DMA on I2C

* Merging in the -pins.dtsi to 8916.dtsi?


Konrad



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 1/3] arm64: dts: qcom: Add device tree for BQ Aquaris X5 (Longcheer L8910)
  2021-01-24 13:54 ` [PATCH 1/3] arm64: dts: qcom: Add device tree for BQ Aquaris X5 (Longcheer L8910) Jonathan Albrieux
@ 2021-01-24 15:12   ` Konrad Dybcio
  2021-01-24 15:45     ` Stephan Gerhold
  0 siblings, 1 reply; 17+ messages in thread
From: Konrad Dybcio @ 2021-01-24 15:12 UTC (permalink / raw)
  To: Jonathan Albrieux, linux-kernel
  Cc: ~postmarketos/upstreaming, stephan, Andy Gross, Bjorn Andersson,
	Rob Herring, linux-arm-msm, devicetree

The sorting on smd_rpm_regulators & msmgpio seems off.. unless it's the new thing to put it at the end?

Also, did you forget the copyright header or is that on purpose?


Otherwise, LGTM


Konrad


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 1/3] arm64: dts: qcom: Add device tree for BQ Aquaris X5 (Longcheer L8910)
  2021-01-24 15:12   ` Konrad Dybcio
@ 2021-01-24 15:45     ` Stephan Gerhold
  0 siblings, 0 replies; 17+ messages in thread
From: Stephan Gerhold @ 2021-01-24 15:45 UTC (permalink / raw)
  To: Konrad Dybcio
  Cc: Jonathan Albrieux, linux-kernel, ~postmarketos/upstreaming,
	Andy Gross, Bjorn Andersson, Rob Herring, linux-arm-msm,
	devicetree

On Sun, Jan 24, 2021 at 04:12:30PM +0100, Konrad Dybcio wrote:
> The sorting on smd_rpm_regulators & msmgpio seems off.. unless it's the new thing to put it at the end?
> 

It's consistent like this for all MSM8916 device trees at least.

Back when I converted them I thought that it's kind of annoying to have
this large list of regulators and pinctrl placed right inbetween all
other device definitions. And it's even worse for apq8016-sbc.dtsi which
has this large list of gpio-line-names. It just makes it harder to see
the actual interesting definitions (new devices etc) in my opinion.

I think I mentioned this in my patch description back then
and Bjorn did not complain. :-)

But I understand this may be somewhat inconsistent with other qcom
device trees at the moment, so I suppose I would be fine with a patch
to order them entirely alphabetically.
(As long as it's consistent for all MSM8916 device trees...)

Thanks,
Stephan

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 3/3] arm64: dts: qcom: msm8916-longcheer-l8910: Add imu/magnetometer
  2021-01-24 15:07   ` Konrad Dybcio
@ 2021-01-24 15:51     ` Stephan Gerhold
  2021-01-24 19:49       ` Jonathan Albrieux
  0 siblings, 1 reply; 17+ messages in thread
From: Stephan Gerhold @ 2021-01-24 15:51 UTC (permalink / raw)
  To: Konrad Dybcio
  Cc: Jonathan Albrieux, linux-kernel, ~postmarketos/upstreaming,
	Andy Gross, Bjorn Andersson, Rob Herring, linux-arm-msm,
	devicetree

On Sun, Jan 24, 2021 at 04:07:19PM +0100, Konrad Dybcio wrote:
> > +&blsp_i2c3 {
> > +	status = "okay";
> > +
> > +	imu@68 {
> > +		compatible = "bosch,bmi160";
> > +		reg = <0x68>;
> > +
> > +		vdd-supply = <&pm8916_l17>;
> > +		vddio-supply = <&pm8916_l6>;
> > +
> > +		mount-matrix = "0", "1", "0",
> > +			      "-1", "0", "0",
> > +			       "0", "0", "1";
> > +	};
> > +
> > +	magnetometer@d {
> > +		compatible = "asahi-kasei,ak09911";
> > +		reg = <0x0d>;
> > +
> > +		vdd-supply = <&pm8916_l17>;
> > +		vid-supply = <&pm8916_l6>;
> > +
> > +		reset-gpios = <&msmgpio 111 GPIO_ACTIVE_LOW>;
> > +
> > +		pinctrl-names = "default";
> > +		pinctrl-0 = <&mag_reset_default>;
> > +	};
> > +};
> 
> Please sort I2C devices by their address.
> 

+1 :)

> 
> >  	};
> >  
> > +	mag_reset_default: mag-reset-default {
> > +		pins = "gpio111";
> > +		function = "gpio";
> > +
> > +		drive-strength = <2>;
> > +		bias-disable;
> > +	};
> > +
> 
> Please add this after gpio110 to keep it sorted gpio-number-wise.
> 

This is ordered alphabetically. I haven't seen gpio-number order
anywhere yet... :)

Thanks,
Stephan

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 2/3] arm64: dts: qcom: msm8916: Add blsp_i2c3
  2021-01-24 13:54 ` [PATCH 2/3] arm64: dts: qcom: msm8916: Add blsp_i2c3 Jonathan Albrieux
  2021-01-24 15:09   ` Konrad Dybcio
@ 2021-01-24 15:52   ` Stephan Gerhold
  1 sibling, 0 replies; 17+ messages in thread
From: Stephan Gerhold @ 2021-01-24 15:52 UTC (permalink / raw)
  To: Jonathan Albrieux
  Cc: linux-kernel, ~postmarketos/upstreaming, Andy Gross,
	Bjorn Andersson, Rob Herring, linux-arm-msm, devicetree

On Sun, Jan 24, 2021 at 02:54:06PM +0100, Jonathan Albrieux wrote:
> MSM8916 has another I2C QUP controller that can be enabled on
> GPIO 10 and 11.
> 
> Add blsp_i2c3 to msm8916.dtsi and disable it by default.
> 
> Signed-off-by: Jonathan Albrieux <jonathan.albrieux@gmail.com>

Reviewed-by: Stephan Gerhold <stephan@gerhold.net>

> ---
>  arch/arm64/boot/dts/qcom/msm8916-pins.dtsi | 16 ++++++++++++++++
>  arch/arm64/boot/dts/qcom/msm8916.dtsi      | 15 +++++++++++++++
>  2 files changed, 31 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi b/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi
> index 4dc437f13fa5..7dedb91b9930 100644
> --- a/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi
> +++ b/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi
> @@ -220,6 +220,22 @@
>  		bias-disable;
>  	};
>  
> +	i2c3_default: i2c3-default {
> +		pins = "gpio10", "gpio11";
> +		function = "blsp_i2c3";
> +
> +		drive-strength = <2>;
> +		bias-disable;
> +	};
> +
> +	i2c3_sleep: i2c3-sleep {
> +		pins = "gpio10", "gpio11";
> +		function = "gpio";
> +
> +		drive-strength = <2>;
> +		bias-disable;
> +	};
> +
>  	i2c4_default: i2c4-default {
>  		pins = "gpio14", "gpio15";
>  		function = "blsp_i2c4";
> diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi
> index 402e891a84ab..1045d7e518f3 100644
> --- a/arch/arm64/boot/dts/qcom/msm8916.dtsi
> +++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi
> @@ -1528,6 +1528,21 @@
>  			status = "disabled";
>  		};
>  
> +		blsp_i2c3: i2c@78b7000 {
> +			compatible = "qcom,i2c-qup-v2.2.1";
> +			reg = <0x078b7000 0x500>;
> +			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
> +			clocks = <&gcc GCC_BLSP1_AHB_CLK>,
> +				 <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>;
> +			clock-names = "iface", "core";
> +			pinctrl-names = "default", "sleep";
> +			pinctrl-0 = <&i2c3_default>;
> +			pinctrl-1 = <&i2c3_sleep>;
> +			#address-cells = <1>;
> +			#size-cells = <0>;
> +			status = "disabled";
> +		};
> +
>  		blsp_spi3: spi@78b7000 {
>  			compatible = "qcom,spi-qup-v2.2.1";
>  			reg = <0x078b7000 0x500>;
> -- 
> 2.17.1
> 

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 3/3] arm64: dts: qcom: msm8916-longcheer-l8910: Add imu/magnetometer
  2021-01-24 15:51     ` Stephan Gerhold
@ 2021-01-24 19:49       ` Jonathan Albrieux
  2021-01-28  4:22         ` Bjorn Andersson
  0 siblings, 1 reply; 17+ messages in thread
From: Jonathan Albrieux @ 2021-01-24 19:49 UTC (permalink / raw)
  To: Stephan Gerhold
  Cc: Konrad Dybcio, linux-kernel, ~postmarketos/upstreaming,
	Andy Gross, Bjorn Andersson, Rob Herring, linux-arm-msm,
	devicetree

On Sun, Jan 24, 2021 at 04:51:31PM +0100, Stephan Gerhold wrote:
> On Sun, Jan 24, 2021 at 04:07:19PM +0100, Konrad Dybcio wrote:
> > > +&blsp_i2c3 {
> > > +	status = "okay";
> > > +
> > > +	imu@68 {
> > > +		compatible = "bosch,bmi160";
> > > +		reg = <0x68>;
> > > +
> > > +		vdd-supply = <&pm8916_l17>;
> > > +		vddio-supply = <&pm8916_l6>;
> > > +
> > > +		mount-matrix = "0", "1", "0",
> > > +			      "-1", "0", "0",
> > > +			       "0", "0", "1";
> > > +	};
> > > +
> > > +	magnetometer@d {
> > > +		compatible = "asahi-kasei,ak09911";
> > > +		reg = <0x0d>;
> > > +
> > > +		vdd-supply = <&pm8916_l17>;
> > > +		vid-supply = <&pm8916_l6>;
> > > +
> > > +		reset-gpios = <&msmgpio 111 GPIO_ACTIVE_LOW>;
> > > +
> > > +		pinctrl-names = "default";
> > > +		pinctrl-0 = <&mag_reset_default>;
> > > +	};
> > > +};
> > 
> > Please sort I2C devices by their address.
> > 
> 
> +1 :)
> 
Thank you Konrad, thank you Stephan, I'll fix the order!

> > 
> > >  	};
> > >  
> > > +	mag_reset_default: mag-reset-default {
> > > +		pins = "gpio111";
> > > +		function = "gpio";
> > > +
> > > +		drive-strength = <2>;
> > > +		bias-disable;
> > > +	};
> > > +
> > 
> > Please add this after gpio110 to keep it sorted gpio-number-wise.
> > 
> 
> This is ordered alphabetically. I haven't seen gpio-number order
> anywhere yet... :)
> 
Let me know if this order has to be changed, meanwhile I'll prepare
a v2 for the i2c device order and will prepare a v3 in case this
order too has to be changed.

Again, thank you,
Jonathan

> Thanks,
> Stephan

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 0/3] Add initial support for BQ Aquaris X5
  2021-01-24 13:54 [PATCH 0/3] Add initial support for BQ Aquaris X5 Jonathan Albrieux
                   ` (2 preceding siblings ...)
  2021-01-24 13:54 ` [PATCH 3/3] arm64: dts: qcom: msm8916-longcheer-l8910: Add imu/magnetometer Jonathan Albrieux
@ 2021-01-24 21:01 ` Pavel Machek
  2021-01-24 21:49   ` Stephan Gerhold
  3 siblings, 1 reply; 17+ messages in thread
From: Pavel Machek @ 2021-01-24 21:01 UTC (permalink / raw)
  To: Jonathan Albrieux
  Cc: linux-kernel, ~postmarketos/upstreaming, stephan, Andy Gross,
	Bjorn Andersson, Rob Herring, linux-arm-msm, devicetree

[-- Attachment #1: Type: text/plain, Size: 686 bytes --]

Hi!

> Aquaris X5 (Longcheer L8910) is a smartphone released by BQ in 2015.
> 
> As part of msm8916-mainline project, this series aims to bring initial
> mainline support for it.

Good to see another phone being supported. Can I ask you to cc:
phone-devel@vger.kernel.org with phone stuff?

> Features added:
>  - SDHCI (internal and external storage)
>  - USB Device Mode
>  - UART
>  - Regulators
>  - WiFi/BT
>  - Volume buttons
>  - Vibrator
>  - Touchkeys backlight
>  - Accelerometer and gyroscope sensor
>  - Magnetometer sensor

How close are you to having useful phone calls?

Best regards,
								Pavel
-- 
http://www.livejournal.com/~pavelmachek

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 0/3] Add initial support for BQ Aquaris X5
  2021-01-24 21:01 ` [PATCH 0/3] Add initial support for BQ Aquaris X5 Pavel Machek
@ 2021-01-24 21:49   ` Stephan Gerhold
  2021-01-27 22:24     ` Pavel Machek
  0 siblings, 1 reply; 17+ messages in thread
From: Stephan Gerhold @ 2021-01-24 21:49 UTC (permalink / raw)
  To: Pavel Machek
  Cc: Jonathan Albrieux, linux-kernel, ~postmarketos/upstreaming,
	Andy Gross, Bjorn Andersson, Rob Herring, linux-arm-msm,
	devicetree, phone-devel

Hi Pavel,

On Sun, Jan 24, 2021 at 10:01:19PM +0100, Pavel Machek wrote:
> Hi!
> 
> > Aquaris X5 (Longcheer L8910) is a smartphone released by BQ in 2015.
> > 
> > As part of msm8916-mainline project, this series aims to bring initial
> > mainline support for it.
> 
> Good to see another phone being supported. Can I ask you to cc:
> phone-devel@vger.kernel.org with phone stuff?
> 
> > Features added:
> >  - SDHCI (internal and external storage)
> >  - USB Device Mode
> >  - UART
> >  - Regulators
> >  - WiFi/BT
> >  - Volume buttons
> >  - Vibrator
> >  - Touchkeys backlight
> >  - Accelerometer and gyroscope sensor
> >  - Magnetometer sensor
> 
> How close are you to having useful phone calls?
> 

You can do phone calls (with audio) and you can use mobile data, if you
have the patches for that. :) I'm trying to find time to finish up the
drivers needed for that, but I've been a bit short on time lately.

Actually we have come pretty far with MSM8916-based smartphones.
Most functionality is (somewhat) working at this point, the primary
open task is optimizing suspend/power consumption. Battery/charging
and camera is also tricky but works somewhat on some of the devices.

Most of the functionality is packaged in postmarketOS [1] and you can
find a list of the devices in the postmarketOS wiki [2]. Especially
the ones in the "community" category are quite similar in terms of
working functionality.

Stephan

[1]: https://postmarketos.org
[2]: https://wiki.postmarketos.org/wiki/Qualcomm_Snapdragon_410/412_(MSM8916)

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 0/3] Add initial support for BQ Aquaris X5
  2021-01-24 21:49   ` Stephan Gerhold
@ 2021-01-27 22:24     ` Pavel Machek
  2021-01-28  9:27       ` Stephan Gerhold
  0 siblings, 1 reply; 17+ messages in thread
From: Pavel Machek @ 2021-01-27 22:24 UTC (permalink / raw)
  To: Stephan Gerhold
  Cc: Jonathan Albrieux, linux-kernel, ~postmarketos/upstreaming,
	Andy Gross, Bjorn Andersson, Rob Herring, linux-arm-msm,
	devicetree, phone-devel

[-- Attachment #1: Type: text/plain, Size: 1882 bytes --]

Hi!

> > > Aquaris X5 (Longcheer L8910) is a smartphone released by BQ in 2015.
> > > 
> > > As part of msm8916-mainline project, this series aims to bring initial
> > > mainline support for it.
> > 
> > Good to see another phone being supported. Can I ask you to cc:
> > phone-devel@vger.kernel.org with phone stuff?
> > 
> > > Features added:
> > >  - SDHCI (internal and external storage)
> > >  - USB Device Mode
> > >  - UART
> > >  - Regulators
> > >  - WiFi/BT
> > >  - Volume buttons
> > >  - Vibrator
> > >  - Touchkeys backlight
> > >  - Accelerometer and gyroscope sensor
> > >  - Magnetometer sensor
> > 
> > How close are you to having useful phone calls?
> 
> You can do phone calls (with audio) and you can use mobile data, if you
> have the patches for that. :) I'm trying to find time to finish up the
> drivers needed for that, but I've been a bit short on time lately.

:-). 

> Actually we have come pretty far with MSM8916-based smartphones.
> Most functionality is (somewhat) working at this point, the primary
> open task is optimizing suspend/power consumption. Battery/charging
> and camera is also tricky but works somewhat on some of the devices.

Yes, power consumption is a lot of fun :-(.

> Most of the functionality is packaged in postmarketOS [1] and you can
> find a list of the devices in the postmarketOS wiki [2]. Especially
> the ones in the "community" category are quite similar in terms of
> working functionality.

I know about postmarketOS (I even contributed a bit some time ago),
and watch it from time to time. Currently I'm using old Nokia 6151 for
phone calls, but would not mind switching. Work is ongoing in Droid 4
land -- phone calls are also "almost there". But the almost seems to
be a lot of work :-(.

Best regards,
								Pavel
-- 
http://www.livejournal.com/~pavelmachek

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 3/3] arm64: dts: qcom: msm8916-longcheer-l8910: Add imu/magnetometer
  2021-01-24 19:49       ` Jonathan Albrieux
@ 2021-01-28  4:22         ` Bjorn Andersson
  0 siblings, 0 replies; 17+ messages in thread
From: Bjorn Andersson @ 2021-01-28  4:22 UTC (permalink / raw)
  To: Jonathan Albrieux
  Cc: Stephan Gerhold, Konrad Dybcio, linux-kernel,
	~postmarketos/upstreaming, Andy Gross, Rob Herring,
	linux-arm-msm, devicetree

On Sun 24 Jan 13:49 CST 2021, Jonathan Albrieux wrote:

> On Sun, Jan 24, 2021 at 04:51:31PM +0100, Stephan Gerhold wrote:
> > On Sun, Jan 24, 2021 at 04:07:19PM +0100, Konrad Dybcio wrote:
> > > > +&blsp_i2c3 {
> > > > +	status = "okay";
> > > > +
> > > > +	imu@68 {
> > > > +		compatible = "bosch,bmi160";
> > > > +		reg = <0x68>;
> > > > +
> > > > +		vdd-supply = <&pm8916_l17>;
> > > > +		vddio-supply = <&pm8916_l6>;
> > > > +
> > > > +		mount-matrix = "0", "1", "0",
> > > > +			      "-1", "0", "0",
> > > > +			       "0", "0", "1";
> > > > +	};
> > > > +
> > > > +	magnetometer@d {
> > > > +		compatible = "asahi-kasei,ak09911";
> > > > +		reg = <0x0d>;
> > > > +
> > > > +		vdd-supply = <&pm8916_l17>;
> > > > +		vid-supply = <&pm8916_l6>;
> > > > +
> > > > +		reset-gpios = <&msmgpio 111 GPIO_ACTIVE_LOW>;
> > > > +
> > > > +		pinctrl-names = "default";
> > > > +		pinctrl-0 = <&mag_reset_default>;
> > > > +	};
> > > > +};
> > > 
> > > Please sort I2C devices by their address.
> > > 
> > 
> > +1 :)
> > 
> Thank you Konrad, thank you Stephan, I'll fix the order!
> 
> > > 
> > > >  	};
> > > >  
> > > > +	mag_reset_default: mag-reset-default {
> > > > +		pins = "gpio111";
> > > > +		function = "gpio";
> > > > +
> > > > +		drive-strength = <2>;
> > > > +		bias-disable;
> > > > +	};
> > > > +
> > > 
> > > Please add this after gpio110 to keep it sorted gpio-number-wise.
> > > 
> > 
> > This is ordered alphabetically. I haven't seen gpio-number order
> > anywhere yet... :)
> > 
> Let me know if this order has to be changed, meanwhile I'll prepare
> a v2 for the i2c device order and will prepare a v3 in case this
> order too has to be changed.
> 

I'm happy with having these sorted alphabetically.

Regards,
Bjorn

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 0/3] Add initial support for BQ Aquaris X5
  2021-01-27 22:24     ` Pavel Machek
@ 2021-01-28  9:27       ` Stephan Gerhold
  2021-02-02 13:13         ` Pavel Machek
  0 siblings, 1 reply; 17+ messages in thread
From: Stephan Gerhold @ 2021-01-28  9:27 UTC (permalink / raw)
  To: Pavel Machek
  Cc: Jonathan Albrieux, linux-kernel, ~postmarketos/upstreaming,
	Andy Gross, Bjorn Andersson, Rob Herring, linux-arm-msm,
	devicetree, phone-devel

On Wed, Jan 27, 2021 at 11:24:07PM +0100, Pavel Machek wrote:
> > > How close are you to having useful phone calls?
> > 
> > You can do phone calls (with audio) and you can use mobile data, if you
> > have the patches for that. :) I'm trying to find time to finish up the
> > drivers needed for that, but I've been a bit short on time lately.
> 
> > Most of the functionality is packaged in postmarketOS [1] and you can
> > find a list of the devices in the postmarketOS wiki [2]. Especially
> > the ones in the "community" category are quite similar in terms of
> > working functionality.
> 
> I know about postmarketOS (I even contributed a bit some time ago),
> and watch it from time to time. Currently I'm using old Nokia 6151 for
> phone calls, but would not mind switching. Work is ongoing in Droid 4
> land -- phone calls are also "almost there". But the almost seems to
> be a lot of work :-(.
> 

It's fairly simple on Qualcomm SoCs once audio DSP and modem are working
(which is not that simple). I basically just tell the audio DSP to
stream voice call audio to the audio ports and then it does that without
involving the kernel.

It seems to work quite well, so far no one complained about quality or
something like that. Not sure if anyone is actively using it already
though :)

The work left is mainly making the driver more generic so it can work on
other Qualcomm SoCs as well (right now I have some things hardcoded).
Also, I still haven't fully figured out what is the best way to
integrate it into ASoC/UCM/..., so that it can be easily activated when
starting a voice call.

Stephan

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 0/3] Add initial support for BQ Aquaris X5
  2021-01-28  9:27       ` Stephan Gerhold
@ 2021-02-02 13:13         ` Pavel Machek
  0 siblings, 0 replies; 17+ messages in thread
From: Pavel Machek @ 2021-02-02 13:13 UTC (permalink / raw)
  To: Stephan Gerhold
  Cc: Jonathan Albrieux, linux-kernel, ~postmarketos/upstreaming,
	Andy Gross, Bjorn Andersson, Rob Herring, linux-arm-msm,
	devicetree, phone-devel

[-- Attachment #1: Type: text/plain, Size: 1926 bytes --]

Hi!

> > > > How close are you to having useful phone calls?
> > > 
> > > You can do phone calls (with audio) and you can use mobile data, if you
> > > have the patches for that. :) I'm trying to find time to finish up the
> > > drivers needed for that, but I've been a bit short on time lately.
> > 
> > > Most of the functionality is packaged in postmarketOS [1] and you can
> > > find a list of the devices in the postmarketOS wiki [2]. Especially
> > > the ones in the "community" category are quite similar in terms of
> > > working functionality.
> > 
> > I know about postmarketOS (I even contributed a bit some time ago),
> > and watch it from time to time. Currently I'm using old Nokia 6151 for
> > phone calls, but would not mind switching. Work is ongoing in Droid 4
> > land -- phone calls are also "almost there". But the almost seems to
> > be a lot of work :-(.
> > 
> 
> It's fairly simple on Qualcomm SoCs once audio DSP and modem are working
> (which is not that simple). I basically just tell the audio DSP to
> stream voice call audio to the audio ports and then it does that without
> involving the kernel.
> 
> It seems to work quite well, so far no one complained about quality or
> something like that. Not sure if anyone is actively using it already
> though :)

Ok, thanks for info :-). 

> The work left is mainly making the driver more generic so it can work on
> other Qualcomm SoCs as well (right now I have some things hardcoded).
> Also, I still haven't fully figured out what is the best way to
> integrate it into ASoC/UCM/..., so that it can be easily activated when
> starting a voice call.

On droid 4, we use mixer settings to configure audio system for a
call. Maemo Leste has some kind of component to automatically adjust
mixers when call is started. We use ofonod.

Best regards,
								Pavel
-- 
http://www.livejournal.com/~pavelmachek

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2021-02-02 13:18 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-24 13:54 [PATCH 0/3] Add initial support for BQ Aquaris X5 Jonathan Albrieux
2021-01-24 13:54 ` [PATCH 1/3] arm64: dts: qcom: Add device tree for BQ Aquaris X5 (Longcheer L8910) Jonathan Albrieux
2021-01-24 15:12   ` Konrad Dybcio
2021-01-24 15:45     ` Stephan Gerhold
2021-01-24 13:54 ` [PATCH 2/3] arm64: dts: qcom: msm8916: Add blsp_i2c3 Jonathan Albrieux
2021-01-24 15:09   ` Konrad Dybcio
2021-01-24 15:52   ` Stephan Gerhold
2021-01-24 13:54 ` [PATCH 3/3] arm64: dts: qcom: msm8916-longcheer-l8910: Add imu/magnetometer Jonathan Albrieux
2021-01-24 15:07   ` Konrad Dybcio
2021-01-24 15:51     ` Stephan Gerhold
2021-01-24 19:49       ` Jonathan Albrieux
2021-01-28  4:22         ` Bjorn Andersson
2021-01-24 21:01 ` [PATCH 0/3] Add initial support for BQ Aquaris X5 Pavel Machek
2021-01-24 21:49   ` Stephan Gerhold
2021-01-27 22:24     ` Pavel Machek
2021-01-28  9:27       ` Stephan Gerhold
2021-02-02 13:13         ` Pavel Machek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).