Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1469669 > unrolled thread

Re: [PATCH 2/2] ARM: dts: sun8i: enable UART1 for iNet D978 Rev2 board

Started byMaxime Ripard <maxime.ripard@free-electrons.com>
First post2016-08-24 21:40 +0200
Last post2016-08-25 23:00 +0200
Articles 6 — 3 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH 2/2] ARM: dts: sun8i: enable UART1 for iNet D978 Rev2  board Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-08-24 21:40 +0200
    Re: [PATCH 2/2] ARM: dts: sun8i: enable UART1 for iNet D978 Rev2 board Chen-Yu Tsai <wens@csie.org> - 2016-08-25 06:50 +0200
      Re: [PATCH 2/2] ARM: dts: sun8i: enable UART1 for iNet D978 Rev2  board Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-08-25 10:20 +0200
        Re: [PATCH 2/2] ARM: dts: sun8i: enable UART1 for iNet D978 Rev2  board Hans de Goede <hdegoede@redhat.com> - 2016-08-25 16:30 +0200
          Re: [PATCH 2/2] ARM: dts: sun8i: enable UART1 for iNet D978 Rev2  board Hans de Goede <hdegoede@redhat.com> - 2016-08-25 17:20 +0200
        Re: [PATCH 2/2] ARM: dts: sun8i: enable UART1 for iNet D978 Rev2  board Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-08-25 23:00 +0200

#1469669 — Re: [PATCH 2/2] ARM: dts: sun8i: enable UART1 for iNet D978 Rev2 board

FromMaxime Ripard <maxime.ripard@free-electrons.com>
Date2016-08-24 21:40 +0200
SubjectRe: [PATCH 2/2] ARM: dts: sun8i: enable UART1 for iNet D978 Rev2 board
Message-ID<s9MbL-6Mm-27@gated-at.bofh.it>

[Multipart message — attachments visible in raw view] — view raw

Hi,

On Tue, Aug 23, 2016 at 02:44:51PM +0800, Icenowy Zheng wrote:
> UART1 is connected to the bluetooth part of RTL8723BS WiFi/BT combo card
> on iNet D978 Rev2 board.
> 
> Enable the UART1 to make it possible to use the modified hciattach by
> Realtek to drive the BT part of RTL8723BS.
> 
> Signed-off-by: Icenowy Zheng <icenowy@aosc.xyz>

I guess you could fold that patch into the previous one.

> ---
>  arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts b/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
> index 78823d8..3ac22d4 100644
> --- a/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
> +++ b/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
> @@ -48,6 +48,10 @@
>  	model = "INet-D978 Rev 02";
>  	compatible = "primux,inet-d978-rev2", "allwinner,sun8i-a33";
>  
> +	aliases {
> +		serial1 = &uart1;
> +	};
> +

Is there any other UART in the system?

The alias is not supposed to be about the controller index, but the
index in the board, meaning that if you only have a single UART, that
would be serial0.

Thanks!
Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

[toc] | [next] | [standalone]


#1469821 — Re: [PATCH 2/2] ARM: dts: sun8i: enable UART1 for iNet D978 Rev2 board

FromChen-Yu Tsai <wens@csie.org>
Date2016-08-25 06:50 +0200
SubjectRe: [PATCH 2/2] ARM: dts: sun8i: enable UART1 for iNet D978 Rev2 board
Message-ID<s9UM2-4BL-15@gated-at.bofh.it>
In reply to#1469669
On Thu, Aug 25, 2016 at 7:58 AM, Icenowy Zheng <icenowy@aosc.xyz> wrote:
>
>
> 25.08.2016, 03:36, "Maxime Ripard" <maxime.ripard@free-electrons.com>:
>> Hi,
>>
>> On Tue, Aug 23, 2016 at 02:44:51PM +0800, Icenowy Zheng wrote:
>>>  UART1 is connected to the bluetooth part of RTL8723BS WiFi/BT combo card
>>>  on iNet D978 Rev2 board.
>>>
>>>  Enable the UART1 to make it possible to use the modified hciattach by
>>>  Realtek to drive the BT part of RTL8723BS.
>>>
>>>  Signed-off-by: Icenowy Zheng <icenowy@aosc.xyz>
>>
>> I guess you could fold that patch into the previous one.
>>
>>>  ---
>>>   arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts | 11 +++++++++++
>>>   1 file changed, 11 insertions(+)
>>>
>>>  diff --git a/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts b/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
>>>  index 78823d8..3ac22d4 100644
>>>  --- a/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
>>>  +++ b/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
>>>  @@ -48,6 +48,10 @@
>>>           model = "INet-D978 Rev 02";
>>>           compatible = "primux,inet-d978-rev2", "allwinner,sun8i-a33";
>>>
>>>  + aliases {
>>>  + serial1 = &uart1;
>>>  + };
>>>  +
>>
>> Is there any other UART in the system?
>
> serial0 is defined in sun8i-reference-design-tablet.dtsi, as r_uart.

If your board does not have r_uart pads, then the right thing to do
would be to disable it. You can then have uart1 as serial0.

AFAIK Linux requires a console, but that console can be simplefb.

ChenYu

>>
>> The alias is not supposed to be about the controller index, but the
>> index in the board, meaning that if you only have a single UART, that
>> would be serial0.
>>
>> Thanks!
>> Maxime
>>
>> --
>> Maxime Ripard, Free Electrons
>> Embedded Linux and Kernel engineering
>> http://free-electrons.com

[toc] | [prev] | [next] | [standalone]


#1469955

FromMaxime Ripard <maxime.ripard@free-electrons.com>
Date2016-08-25 10:20 +0200
Message-ID<s9Y3g-6UN-17@gated-at.bofh.it>
In reply to#1469821

[Multipart message — attachments visible in raw view] — view raw

Hi,

On Thu, Aug 25, 2016 at 02:57:24PM +0800, Icenowy Zheng wrote:
> >>>>   diff --git a/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts b/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
> >>>>   index 78823d8..3ac22d4 100644
> >>>>   --- a/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
> >>>>   +++ b/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
> >>>>   @@ -48,6 +48,10 @@
> >>>>            model = "INet-D978 Rev 02";
> >>>>            compatible = "primux,inet-d978-rev2", "allwinner,sun8i-a33";
> >>>>
> >>>>   + aliases {
> >>>>   + serial1 = &uart1;
> >>>>   + };
> >>>>   +
> >>>
> >>>  Is there any other UART in the system?
> >>
> >>  serial0 is defined in sun8i-reference-design-tablet.dtsi, as r_uart.
> >
> > If your board does not have r_uart pads, then the right thing to do
> > would be to disable it. You can then have uart1 as serial0.
> 
> I don't know it. The RX/TX is wired on PF2/PF4 on the board (UART0 muxed with
> MMC)

Then you don't support it and you need to disable it.

> But many codes will require a ttyS0 as console... So I think the
> bluetooth should be located at ttyS1...

Most of them would use /dev/console anyway. What do you have in mind?

Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

[toc] | [prev] | [next] | [standalone]


#1470180

FromHans de Goede <hdegoede@redhat.com>
Date2016-08-25 16:30 +0200
Message-ID<sa3Po-25H-7@gated-at.bofh.it>
In reply to#1469955
Hi,

On 25-08-16 16:12, Icenowy Zheng wrote:
>
>
> 25.08.2016, 16:03, "Maxime Ripard" <maxime.ripard@free-electrons.com>:
>> Hi,
>>
>> On Thu, Aug 25, 2016 at 02:57:24PM +0800, Icenowy Zheng wrote:
>>>  >>>>   diff --git a/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts b/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
>>>  >>>>   index 78823d8..3ac22d4 100644
>>>  >>>>   --- a/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
>>>  >>>>   +++ b/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
>>>  >>>>   @@ -48,6 +48,10 @@
>>>  >>>>            model = "INet-D978 Rev 02";
>>>  >>>>            compatible = "primux,inet-d978-rev2", "allwinner,sun8i-a33";
>>>  >>>>
>>>  >>>>   + aliases {
>>>  >>>>   + serial1 = &uart1;
>>>  >>>>   + };
>>>  >>>>   +
>>>  >>>
>>>  >>>  Is there any other UART in the system?
>>>  >>
>>>  >>  serial0 is defined in sun8i-reference-design-tablet.dtsi, as r_uart.
>>>  >
>>>  > If your board does not have r_uart pads, then the right thing to do
>>>  > would be to disable it. You can then have uart1 as serial0.
>>>
>>>  I don't know it. The RX/TX is wired on PF2/PF4 on the board (UART0 muxed with
>>>  MMC)
>>
>> Then you don't support it and you need to disable it.
>>
>>>  But many codes will require a ttyS0 as console... So I think the
>>>  bluetooth should be located at ttyS1...
>>
>> Most of them would use /dev/console anyway. What do you have in mind?
>
> As a general configuration, /dev/ttyS0 will be indicated as the default console=
> value... (Otherwise more boards will fail)
>
> Or maybe we can specify uart0 as serial0, and leave it as disabled? (Thus if the
> debug port is needed, we can easily apply a overlay with &mmc0 status as disabled,
> and &uart0 status as okay)
>
> On all my A33 boards, the official boot0, u-boot all uses uart0 as debugging port.

If no uart is available (and being muxed with the mmc counts as not being available)
then you should not have any serial alias in the dts.

In u-boot you need to use:

# CONFIG_REQUIRE_SERIAL_CONSOLE is not set

In the defconfig in this case, otherwise u-boot is going to be unhappy about
not having a serial console.

Regards,

Hans

[toc] | [prev] | [next] | [standalone]


#1470210

FromHans de Goede <hdegoede@redhat.com>
Date2016-08-25 17:20 +0200
Message-ID<sa4BI-2Is-15@gated-at.bofh.it>
In reply to#1470180
HI,

On 25-08-16 16:53, Icenowy Zheng wrote:
>
>
> 25.08.2016, 22:18, "Hans de Goede" <hdegoede@redhat.com>:
>> Hi,
>>
>> On 25-08-16 16:12, Icenowy Zheng wrote:
>>>  25.08.2016, 16:03, "Maxime Ripard" <maxime.ripard@free-electrons.com>:
>>>>  Hi,
>>>>
>>>>  On Thu, Aug 25, 2016 at 02:57:24PM +0800, Icenowy Zheng wrote:
>>>>>   >>>> diff --git a/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts b/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
>>>>>   >>>> index 78823d8..3ac22d4 100644
>>>>>   >>>> --- a/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
>>>>>   >>>> +++ b/arch/arm/boot/dts/sun8i-a33-inet-d978-rev2.dts
>>>>>   >>>> @@ -48,6 +48,10 @@
>>>>>   >>>> model = "INet-D978 Rev 02";
>>>>>   >>>> compatible = "primux,inet-d978-rev2", "allwinner,sun8i-a33";
>>>>>   >>>>
>>>>>   >>>> + aliases {
>>>>>   >>>> + serial1 = &uart1;
>>>>>   >>>> + };
>>>>>   >>>> +
>>>>>   >>>
>>>>>   >>> Is there any other UART in the system?
>>>>>   >>
>>>>>   >> serial0 is defined in sun8i-reference-design-tablet.dtsi, as r_uart.
>>>>>   >
>>>>>   > If your board does not have r_uart pads, then the right thing to do
>>>>>   > would be to disable it. You can then have uart1 as serial0.
>>>>>
>>>>>   I don't know it. The RX/TX is wired on PF2/PF4 on the board (UART0 muxed with
>>>>>   MMC)
>>>>
>>>>  Then you don't support it and you need to disable it.
>>>>
>>>>>   But many codes will require a ttyS0 as console... So I think the
>>>>>   bluetooth should be located at ttyS1...
>>>>
>>>>  Most of them would use /dev/console anyway. What do you have in mind?
>>>
>>>  As a general configuration, /dev/ttyS0 will be indicated as the default console=
>>>  value... (Otherwise more boards will fail)
>>>
>>>  Or maybe we can specify uart0 as serial0, and leave it as disabled? (Thus if the
>>>  debug port is needed, we can easily apply a overlay with &mmc0 status as disabled,
>>>  and &uart0 status as okay)
>>>
>>>  On all my A33 boards, the official boot0, u-boot all uses uart0 as debugging port.
>>
>> If no uart is available (and being muxed with the mmc counts as not being available)
>> then you should not have any serial alias in the dts.
>>
>> In u-boot you need to use:
>>
>> # CONFIG_REQUIRE_SERIAL_CONSOLE is not set
>>
>> In the defconfig in this case, otherwise u-boot is going to be unhappy about
>> not having a serial console.
>
> It's not the problem.
>
> Can I have no ttyS0 and just make bluetooth ttyS1?

Ah, yes having a serial1 alias should do that I believe and I agree that it
is probably better to not use ttyS0 for the bluetooth uart.

Regards,

Hans

[toc] | [prev] | [next] | [standalone]


#1470414

FromMaxime Ripard <maxime.ripard@free-electrons.com>
Date2016-08-25 23:00 +0200
Message-ID<sa9UK-619-17@gated-at.bofh.it>
In reply to#1469955

[Multipart message — attachments visible in raw view] — view raw

On Thu, Aug 25, 2016 at 10:12:35PM +0800, Icenowy Zheng wrote:
> >>  But many codes will require a ttyS0 as console... So I think the
> >>  bluetooth should be located at ttyS1...
> >
> > Most of them would use /dev/console anyway. What do you have in mind?
> 
> As a general configuration, /dev/ttyS0 will be indicated as the default console=
> value... (Otherwise more boards will fail)

There's no reason to make that assumption. The console might be on
another UART entirely (ttyS3, for the sake of the argument), on a
different UART "class" (ttyUSB?, framebuffer console?), or not present
at all.

If you want to use the console, use /dev/console.

I don't what's so special about the UART here. Every single device in
Linux behaves that way.

Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web