Odd-looking serial console prompt on RPI2

Karl Denninger karl at denninger.net
Sat Mar 11 19:19:37 UTC 2017


On 3/11/2017 13:17, Ian Lepore wrote:
> On Sat, 2017-03-11 at 13:09 -0500, Shawn Webb wrote:
>> On Sat, Mar 11, 2017 at 11:04:04AM -0700, Ian Lepore wrote:
>>> On Sat, 2017-03-11 at 12:49 -0500, Shawn Webb wrote:
>>>> On Tue, Mar 07, 2017 at 02:29:18PM -0500, Shawn Webb wrote:
>>>>>
>>>>> On Tue, Mar 07, 2017 at 02:09:37PM -0500, Shawn Webb wrote:
>>>>>>
>>>>>> On Sat, Mar 04, 2017 at 03:02:45PM -0700, Ian Lepore wrote:
>>>>>>>
>>>>>>> The bugs should be fixed as of r314682. ?It looks like the
>>>>>>> bugs
>>>>>>> have
>>>>>>> long been in the pl011 driver, but were masked by having a
>>>>>>> fifo
>>>>>>> depth
>>>>>>> of 1 byte -- it all sorta worked by accident previously.
>>>>>> Thanks for the fix! But it looks to be only partial. When I
>>>>>> connect to
>>>>>> the serial console via either cu or screen, I don't get
>>>>>> corrupted
>>>>>> text,
>>>>>> but no keypresses are registered. Hitting enter at the login
>>>>>> prompt does
>>>>>> absolutely nothing. I'm at the latest commit of
>>>>>> hardened/current/master
>>>>>> on HardenedBSD for both the RPI3 and my laptop.
>>>>>>
>>>>>> I'm using this serial cable from Adafruit:
>>>>>> https://www.adafruit.com/product/954
>>>>> It looks like I had a bad cable. Sorry for the line noise.
>>>>> Switching to
>>>>> a different cable worked.
>>>> Looks like the problem is back, but manifest in a different way.
>>>> Screenshot:
>>>>
>>>> https://goo.gl/photos/XYx6v1jCTVCGrnhd6
>>>>
>>>> Thanks,
>>>>
>>> I wonder if rpi3 needs the same smaller-fifo fix as a 32-bit rpi.
>>> ?Just
>>> to test that theory, can you see if the attached patch fixes
>>> problem?
>>> ?If it does, I'll figure out how to detect rpi3 at runtime and set
>>> the
>>> sizes properly.
>>>
>>> -- Ian
>>>
>>> Index: sys/dev/uart/uart_dev_pl011.c
>>> ===================================================================
>>> --- sys/dev/uart/uart_dev_pl011.c	(revision 314917)
>>> +++ sys/dev/uart/uart_dev_pl011.c	(working copy)
>>> @@ -464,7 +464,7 @@ uart_pl011_bus_probe(struct uart_softc *sc)
>>>  	is_bcm2835 = ofw_bus_is_compatible(sc->sc_dev,
>>> "brcm,bcm2835-pl011") ||
>>>  	    ofw_bus_is_compatible(sc->sc_dev, "broadcom,bcm2835-
>>> uart");
>>>  #else
>>> -	is_bcm2835 = false;
>>> +	is_bcm2835 = true;
>>>  #endif
>>>  	hwrev = __uart_getreg(&sc->sc_bas, UART_PIDREG_2) >> 4;
>>>  	if (hwrev <= 2 || is_bcm2835) {
>> Sure. I'll report back either tonight or tomorrow.
>>
>> Thanks,
>>
> Actually, I think a proper solution will be something like the attached
> patch.  After some spelunking on the web I think the rpi3 fifos are the
> smaller size because the fdt data contains the linux-style workaround
> (which overrides the primecell periphid value with fdt data).  This
> patch looks for that in addition to looking for the rpi compatible
> strings (still required to handle old-style freebsd fdt data).
>
> -- Ian
>
>
> _______________________________________________
> freebsd-arm at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-arm
> To unsubscribe, send any mail to "freebsd-arm-unsubscribe at freebsd.org"
I can build for and test both the RPI2 and 3 if you'd like on serial
console; I have both sitting here on my workbench.  Just tell me which
rev to check out and what to patch on it.

-- 
Karl Denninger
karl at denninger.net <mailto:karl at denninger.net>
/The Market Ticker/
/[S/MIME encrypted email preferred]/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2993 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.freebsd.org/pipermail/freebsd-arm/attachments/20170311/309fde20/attachment.bin>


More information about the freebsd-arm mailing list