<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
span.gmaildefault
        {mso-style-name:gmail_default;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body lang=EN-US link=blue vlink="#954F72" style='word-wrap:break-word'><div class=WordSection1><p class=MsoNormal>Hi Niteesh,</p><p class=MsoNormal>I was hoping to try this out as soon as I get some time. No later than weekend. So if nobody else is able to check it out, I will be able to provide some feedback soon.</p><p class=MsoNormal>I should be able to bring up the console on a RPi Zero W and RPi3, correct?</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Thanks,</p><p class=MsoNormal>Alan</p><p class=MsoNormal><o:p> </o:p></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'><b>From: </b><a href="mailto:niteesh.gs@gmail.com">Niteesh G. S.</a><br><b>Sent: </b>Thursday, May 6, 2021 4:29 AM<br><b>To: </b><a href="mailto:joel@rtems.org">Joel Sherrill</a>; <a href="mailto:christian.mauderer@embedded-brains.de">Christian Mauderer</a><br><b>Cc: </b><a href="mailto:devel@rtems.org">rtems-devel@rtems.org</a><br><b>Subject: </b>Re: [PATCH] bsps/raspberrypi/console: Fix default console device</p></div><p class=MsoNormal><o:p> </o:p></p><div><div><p class=MsoNormal><span style='font-size:12.0pt'>ping.<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p> </o:p></p><div><div><p class=MsoNormal>On Sat, May 1, 2021 at 9:47 PM Niteesh G. S. <<a href="mailto:niteesh.gs@gmail.com">niteesh.gs@gmail.com</a>> wrote:</p></div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><div><div><div><p class=MsoNormal><span style='font-size:12.0pt'>On Sat, May 1, 2021 at 8:31 PM Joel Sherrill <<a href="mailto:joel@rtems.org">joel@rtems.org</a>> wrote:<o:p></o:p></span></p></div></div><div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><div><div><p class=MsoNormal style='margin-bottom:12.0pt'><o:p> </o:p></p><div><div><p class=MsoNormal>On Sat, May 1, 2021, 8:53 AM Niteesh G. S. <<a href="mailto:niteesh.gs@gmail.com">niteesh.gs@gmail.com</a>> wrote:</p></div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><div><div><p class=MsoNormal><span style='font-size:12.0pt'>Just to provide more context,<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt'>When the CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER option is used<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt'>and no --console option is provided, the console driver defaults to PL011.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt'>In raspberry pi 3 and other models whose primary UART is not PL011, we get no output.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt'>This patch fixes that by linking the primary UART to the console device.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt'>Thanks,<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt'>Niteesh<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p> </o:p></p><div><div><p class=MsoNormal>On Sat, May 1, 2021 at 7:05 PM G S Niteesh Babu <<a href="mailto:niteesh.gs@gmail.com">niteesh.gs@gmail.com</a>> wrote:</p></div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><p class=MsoNormal>When no console argument is given, the driver defaults to pl011<br>this results in no output in case of Rpi3 whose primary uart is<br>miniuart.<br>This patch fixes that by defaulting to the primary uart when no<br>console option is provided.</p></blockquote></div></blockquote></div></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Does the default need to vary by model?</p></div></div></blockquote><div><p class=MsoNormal><span class=gmaildefault><span style='font-size:12.0pt'>Yes, the primary UART is different across models.</span></span></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal><span class=gmaildefault><span style='font-size:12.0pt'>Rpi's have two UARTs PL011 and miniuart, on models which have Bluetooth</span></span></p></div><div><p class=MsoNormal><span class=gmaildefault><span style='font-size:12.0pt'>the PL011 is used to talk to the Bluetooth and miniuart acts as the primary UART.</span></span></p></div><div><p class=MsoNormal><span class=gmaildefault><span style='font-size:12.0pt'>Now we can change this by adding miniuart-bt to config.txt but the miniuart is</span></span></p></div><div><div><p class=MsoNormal><span style='font-size:12.0pt'>based on the VPU core and requires to add another option which sets the core to<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt'>a fixed freq.<o:p></o:p></span></p></div></div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><div><div><p class=MsoNormal><o:p> </o:p></p></div><div><div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><p class=MsoNormal style='margin-bottom:12.0pt'>---<br> bsps/arm/raspberrypi/console/console-config.c | 12 +++++++++---<br> 1 file changed, 9 insertions(+), 3 deletions(-)<br><br>diff --git a/bsps/arm/raspberrypi/console/console-config.c b/bsps/arm/raspberrypi/console/console-config.c<br>index 6b8eb80aa4..bd3a8d34c2 100644<br>--- a/bsps/arm/raspberrypi/console/console-config.c<br>+++ b/bsps/arm/raspberrypi/console/console-config.c<br>@@ -165,10 +165,16 @@ static void console_select( void )<br>     }<br>   }else {<br>     /**<br>-     * If no command line option was given, default to PL011.<br>+     * If no console option was given we default to the primary uarts.<br>+     * The initialization of the uart's and BSP_output_char is already done<br>+     * in the uart_probe function called before this. So now we can safely<br>+     * compare BSP_output_char.<br>      */<br>-    BSP_output_char = output_char_pl011;<br>-    link(PL011, CONSOLE_DEVICE_NAME);<br>+    if (BSP_output_char == output_char_pl011) {<br>+      link(PL011, CONSOLE_DEVICE_NAME);<br>+    }else {<br>+      link(MINIUART, CONSOLE_DEVICE_NAME);<br>+    }<br>   }<br> }<br><br>-- <br>2.17.1</p></blockquote></div></blockquote></div></div></div></blockquote></div></div></blockquote></div><p class=MsoNormal style='margin-left:.2in'>_______________________________________________<br>devel mailing list<br><a href="mailto:devel@rtems.org">devel@rtems.org</a><br><a href="http://lists.rtems.org/mailman/listinfo/devel">http://lists.rtems.org/mailman/listinfo/devel</a></p><p class=MsoNormal><o:p> </o:p></p></div></body></html>