mbox series

[0/7] Add bluetooth, gps and accelerometer to TBS A711

Message ID 20190327001843.2420-1-megous@megous.com
Headers show
Series Add bluetooth, gps and accelerometer to TBS A711 | expand

Message

Ondřej Jirman March 27, 2019, 12:18 a.m. UTC
From: Ondrej Jirman <megous@megous.com>

This series enables some peripherals on TBS A711 tablet that already
have mainline drivers:

- GPS u-blox neo-6m (via gnss u-blox driver)
- Bluetooth (via recently added OF support in the Broadcom
  bluetooth driver)
- Accelermomter BMA-250 (hooked to the I2C bus)

It also modifies A83T DTSI and adds missing UART interfaces.

I've added additional compatible to the gnss/u-blox driver for NEO-6M,
because this board uses this module, and I don't think I can use
the existing compatible for u-blox,neo-m8, even as a fallback.

Please take a look, and apply the patches if you have no objections.

Many of the patches will go through the sunxi tree, but I'm not
sure who will want to take the GPS patches.

regards,
  Ondrej Jirman

Ondrej Jirman (7):
  ARM: dts: sun8i: tbs-a711: Enable bluetooth
  ARM: dts: sun8i: tbs-a711: Add node for BMA250 accelerometer
  ARM: dts: sun8i: a83t: Add nodes for UART2-UART4
  ARM: dts: sun8i: a83t: Add UART2 PB pins
  gnss: Add u-blox,neo-6m compatible
  dt-bindings: gnss: Add u-blox,neo-6m compatible
  ARM: dts: sun8i: tbs-a711: Enable UART2 (for NEO-6M GPS module)

 .../devicetree/bindings/gnss/u-blox.txt       |  1 +
 arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts     | 49 +++++++++++++++++++
 arch/arm/boot/dts/sun8i-a83t.dtsi             | 38 ++++++++++++++
 drivers/gnss/ubx.c                            |  1 +
 4 files changed, 89 insertions(+)

Comments

Chen-Yu Tsai March 28, 2019, 8:01 a.m. UTC | #1
On Wed, Mar 27, 2019 at 8:18 AM megous via linux-sunxi
<linux-sunxi@googlegroups.com> wrote:
>
> From: Ondrej Jirman <megous@megous.com>
>
> Add pin definitions for UART2 PB pins. These are used on TBS-A711
> tablet.
>
> Signed-off-by: Ondrej Jirman <megous@megous.com>
> ---
>  arch/arm/boot/dts/sun8i-a83t.dtsi | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/arch/arm/boot/dts/sun8i-a83t.dtsi b/arch/arm/boot/dts/sun8i-a83t.dtsi
> index e5c39eef1c29..921cfb30ab46 100644
> --- a/arch/arm/boot/dts/sun8i-a83t.dtsi
> +++ b/arch/arm/boot/dts/sun8i-a83t.dtsi
> @@ -768,6 +768,11 @@
>                                 pins = "PG8", "PG9";
>                                 function = "uart1";
>                         };
> +

Please add "/omit-if-no-ref/" before the pin definitions.

See

https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git/commit/?h=sunxi/dt-for-5.2&id=73b670023327a014688c2d5309a43604cd553f1e

for such an example. This is a new policy.

ChenYu


> +                       uart2_pb_pins: uart2-pb-pins {
> +                               pins = "PB0", "PB1";
> +                               function = "uart2";
> +                       };
>                 };
>
>                 timer@1c20c00 {
> --
> 2.21.0
>
> --
> You received this message because you are subscribed to the Google Groups "linux-sunxi" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscribe@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
Maxime Ripard April 1, 2019, 6:30 a.m. UTC | #2
Hi,

On Wed, Mar 27, 2019 at 01:18:38AM +0100, megous@megous.com wrote:
> From: Ondrej Jirman <megous@megous.com>
>
> A711 tablet has BMA250 accelerometer connected to I2C1 bus. Enable
> both the I2C1 bus and add the accelerometer device to it.
>
> Signed-off-by: Ondrej Jirman <megous@megous.com>
> ---
>  arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts | 15 +++++++++++++++
>  1 file changed, 15 insertions(+)
>
> diff --git a/arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts b/arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts
> index 6aae70c89a1e..347fc0c31fa4 100644
> --- a/arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts
> +++ b/arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts
> @@ -156,6 +156,21 @@
>  	status = "okay";
>  };
>
> +&i2c1 {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&i2c1_pins>;

It's there already

> +	clock-frequency = <400000>;
> +	status = "okay";
> +
> +	/* Accelerometer */
> +	bma250@18 {

The node name should be the class of the device, not its model, so
something like accelerometer.

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
Maxime Ripard April 1, 2019, 8 a.m. UTC | #3
Hi,

On Wed, Mar 27, 2019 at 01:18:37AM +0100, megous@megous.com wrote:
> From: Ondrej Jirman <megous@megous.com>
>
> TBS A711 tablet has a bcm20702a1 bluetooth chip (part of AP6210 WiFi/BT
> module) connected to UART1. Add node for the blutooth chip.
>
> The driver needs brcm/BCM20702A1.hcd firmware file to run.
>
> Signed-off-by: Ondrej Jirman <megous@megous.com>

Applied, thanks!
Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
Maxime Ripard April 1, 2019, 8 a.m. UTC | #4
On Wed, Mar 27, 2019 at 01:18:39AM +0100, megous@megous.com wrote:
> From: Ondrej Jirman <megous@megous.com>
>
> A83T has 5 UART interfaces, but only the first two have their nodes
> defined in sun8i-a83t.dtsi. Add nodes for the missing interfaces.
>
> Signed-off-by: Ondrej Jirman <megous@megous.com>

Applied, thanks!
Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
Ondřej Jirman April 1, 2019, 11:34 a.m. UTC | #5
Hello Maxime,

On Mon, Apr 01, 2019 at 08:30:49AM +0200, Maxime Ripard wrote:
> Hi,
> 
> On Wed, Mar 27, 2019 at 01:18:38AM +0100, megous@megous.com wrote:
> > From: Ondrej Jirman <megous@megous.com>
> >
> > A711 tablet has BMA250 accelerometer connected to I2C1 bus. Enable
> > both the I2C1 bus and add the accelerometer device to it.
> >
> > Signed-off-by: Ondrej Jirman <megous@megous.com>
> > ---
> >  arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts | 15 +++++++++++++++
> >  1 file changed, 15 insertions(+)
> >
> > diff --git a/arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts b/arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts
> > index 6aae70c89a1e..347fc0c31fa4 100644
> > --- a/arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts
> > +++ b/arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts
> > @@ -156,6 +156,21 @@
> >  	status = "okay";
> >  };
> >
> > +&i2c1 {
> > +	pinctrl-names = "default";
> > +	pinctrl-0 = <&i2c1_pins>;
> 
> It's there already

I see, I'll drop it. Thanks.

> > +	clock-frequency = <400000>;
> > +	status = "okay";
> > +
> > +	/* Accelerometer */
> > +	bma250@18 {
> 
> The node name should be the class of the device, not its model, so
> something like accelerometer.

I'll rename this.

thank you,
  Ondrej

> Maxime
> 
> --
> Maxime Ripard, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com