Messages in this thread | | | Subject | unable to open initial console (ENODEV) (WAS: problem w/ kernel init (rootfs vs initial console / init process)) | From | mtx <> | Date | Sun, 10 Sep 2017 17:02:56 +0200 |
| |
On 10.09.2017 11:09, mtx wrote:
> it tries to open the initial console, before even attempt to mount the > root fs, which obviously is doomed to fail. (directly passing root=> via cmdline - no initrd etc) Solved it. For the record: the uart2 node was still disabled, so the kernel did allocate a console for the port, but no tty_driver assigned.
tty_lookup_driver() (tty_io.c) is called on opening tty devices (such as /dev/console). it asks console_device() (in printk.c), which scans the consoles list for one with a tty_driver.
As my DT left the console's uart port disabled, the corresponding device wasn't initialized, thus leaving the console w/o assigned tty_driver.
BTW: maybe we should think about some logic which spits out a warning, or maybe implement an own special tty_driver for /dev/console, which goes to the active console(s), just like printk() does.
--mtx
| |