Hi, On Fri, 20 Mar 2020 at 12:26, Tom Rini <tr...@konsulko.com> wrote: > > On Wed, Mar 18, 2020 at 09:48:36AM +0100, Michal Simek wrote: > > Hi, > > > > long time ago I was playing with switching among consoles. > > I have two IPs with the same driver where main console is probed and > > used which is visible via dm tree. > > > > serial 1 [ + ] serial_zynq | |-- serial@ff000000 > > serial 2 [ ] serial_zynq | |-- serial@ff010000 > > > > then I have also dcc which can be also used as a console > > > > serial 0 [ ] arm_dcc |-- dcc > > > > Lastly I have enabled netconsole feature. > > > > I have no problem to switch between serial@ff000000 and nc but I can't > > switch it to dcc or second instance. > > > > dhcp > > setenv ncip 192.168.0.105 > > setenv nc 'setenv stdout nc;setenv stdin nc' > > setenv dcc 'setenv stdout dcc;setenv stdin dcc' > > setenv serial0 'setenv stdout serial@ff000000;setenv stdin serial@ff000000' > > setenv serial1 'setenv stdout serial@ff010000;setenv stdin serial@ff010000' > > run nc > > > > and then via netconsole > > > > run serial0 > > > > works to get back. > > > > > > Console info is showing only available and registered instances. > > > > ZynqMP> con > > List of available devices: > > serial@ff000000 00000007 IO > > serial 00000003 IO stdin stdout stderr > > nulldev 00000003 IO > > nc 00000003 IO > > > > It means the question is how to probe second instance of serial_zynq > > serial@ff010000 and dcc. I expect when probe is done it will show up in > > console list and switch is possible. > > > > I found SERIAL_SEARCH_ALL symbol but it is just search not probe. > > > > I am quite sure that it was working in past but not sure if this was > > before DM but I would like to know how you are doing it/testing it today. > > I think the answer is we don't have any tests for multiple consoles to > start with, so it's not tested. I'd start by grabbing an old platform > and bisect'ing back the years to see when it did last work as the first > thing. Sorry!
Note there is special logic in stdio_get_by_name() for vidconsole (so when you say 'setenv stdout vidconsole' it probes the video). It might need another look, or need to be generalised. Regards, Simon