Hi Oliver,
Thanks a lot for your time and the answer.

> Right, you turn on the MMU and the next time printk() is called the
> console driver tries to write to 0xFF00_0000. That's not a valid
> virtual address so it explodes. To make an address usable in both real
> mode (i.e. pre-mmu) and virtual mode you need to have the page tables
> setup so that virtual address maps to the same physical address.
> Setting up that mapping is what early_ioremap() does. That's why
> there's a warning telling you to use it.
> 
> Based on the in-tree DTS files earlycon doesn't seem to be used on any
> powerpc systems. My guess would be that most ppc platform use udbg
> (very old, powerpc specific thing) rather than earlycon for this kind
> of super-early debug output. Considering you're getting console output
> via udbg I'd say just removing earlycon from your kernel command line
> will probably fix your issue.

Well, I disabled all the early logs (now bootargs = “” in dts) and modified 
.config
so that no earlycon.c gets compiled at all. The followings are the only compiled
files within the `/derivers/tty/serial`:

serial_base_bus.o, serial_core.o, serial_ctrl.o, serial_port.o, xilinx_uartps.o

Now, I get no outputs during booting procedure which sounds normal, I guess.
But still no luck getting to the rootfs or anywhere which actually initializes 
the
`xilinx_uartps` driver and print something.

Also please check shenki’s blogpost’s logs, if you have enough time:

https://shenki.github.io/boot-linux-on-microwatt 
<https://shenki.github.io/boot-linux-on-microwatt>

Based on the blog post, I think there should be no problem to get the early
booting logs.

Bests,
Manili

Reply via email to