[PATCH] dt: assign uart0 to BT and uart1 to pin headers

Stephen Warren swarren at wwwdotorg.org
Wed Aug 31 09:38:38 PDT 2016

On 08/31/2016 10:15 AM, Fabian Vogt wrote:
> Am Mittwoch, 31. August 2016, 09:47:32 CEST schrieb Stephen Warren:
>> On 08/31/2016 07:49 AM, Fabian Vogt wrote:
>>> This maps uart0 to the on-board BT module and uart1 to the header.
>>> Both are tested and work fine.
>> Shouldn't we leave the UART pinmux set up the same way as the firmware
>> left them? That way, the standard FW UART configuration options continue
>> to work, which will provide less user-confusion.
> Without this patch, the mini uart can send but not receive over
> the pin headers and the pl011 is not connected to anything.
> This sets the same configuration as the default raspbian installation,
> which is AFAICS what a user would expect.

Do you have "enable_uart=1" in your config.txt? That tells the FW that 
you want to use a UART on the GPIO header. That should cause the FW to 
set up the pin mux for the mini UART, hence solving the receive problem. 
Without that config.txt option, the UART on the Pi 3 won't work reliably 
even if you make the kernel force the pinmux, since the UART's clock 
source can vary, which will vary the baud rate that the UART operates 
at, and cause communication failures.

Configuring the pinmux for the PL011 UART for the connection to the BT 
module might be legitimate.

More information about the linux-rpi-kernel mailing list