Hum.. ok. Running "git grep lowsetup" I just found it on UART peripheral code. And in the case of ESP32, for example, although there is a comment mentioning "esp32_lowsetup()" it was not actually implemented.
Em qui., 11 de mar. de 2021 às 13:13, Gregory Nutt <spudan...@gmail.com> escreveu: > No, xyz_earlyearlyinit() initializes the serial driver to support a > serial console device (stdin, stdout, stderr). xyz_lowsetup() may > initialize any hardware, not necessarily UART. It has nothing to do > with the serial driver. It initializes whatever hardware in necessary to > start the system. That normally includes the hardware UART that will be > used later for the console. > > On 3/11/2021 8:59 AM, Sara da Cunha Monteiro de Souza wrote: > > Hi Mr Nutt, > > > > I am so sorry for delaying my answer. > > I went into vacation and missed this conversation. > > > > So, I came up to the conclusion that the *<chip>_lowsetup *function that > > I've seen in many chips > > is a standard deviation and it is actually playing the role of the > > *xyz_earlyserialinit().* > > Am I right? > > > > Thanks too much for the detailed explanation. > > > > Em qua., 10 de fev. de 2021 às 12:33, Gregory Nutt <spudan...@gmail.com> > > escreveu: > > > >> As I said, the early serial initialization is needed for boot-up debug > >> output. Here is a little more detail: > >> > >> If the serial is not initialized, then up_putc will not work. In fact, > >> any calls to up_putc() could hang. If the serial console is the syslog > >> debug channel, then up_putc is called from syslog under certain > conditions: > >> > >> * Syslog output from an interrupt handler > >> * Syslog() is called with LOG_EMERG > >> * Syslog() is called early in the initialization (while using the > >> g_default_channel) > >> > >> up_putc is also used in most very low level startup logic in the > >> PROGRESS macro that outputs the ABCDEF that you see when booting most > >> NuttX systems. > >> > >> What happens if the serial device used by up_putc is not initialized? > >> It will certainly fail to ouput anything but could also hang on a busy > >> wait polling an uninitialized device. > >> > >> > >> > >