Linux kernel 是';早期印刷';和';早期会议';与特定DT或板def相关?
背景很复杂: 我用一个MIPS32r1内核实现了一个完整的FPGA SOC,它们都是由VerilogHDL编写的,所以从技术上讲,这是一个独特的“软板”。我保证,它运行得很愉快,没有任何问题 最近,我尝试在其上调整一个5.2 Linux内核,问题来了: 编写的UART串行接口与8250/16550型号兼容,并且它成功地在U-Boot上打印“hello world”,这意味着U-Boot的串行驱动程序工作得非常好。但当我后来处理Linux内核5.2时,我启用了带有“8250/16550和兼容串行支持”的early-con和带有专家集的early-printf,但不幸的是,它们都没有“说”什么 接下来,我尝试定义一个DT:Linux kernel 是';早期印刷';和';早期会议';与特定DT或板def相关?,linux-kernel,mips,embedded-linux,Linux Kernel,Mips,Embedded Linux,背景很复杂: 我用一个MIPS32r1内核实现了一个完整的FPGA SOC,它们都是由VerilogHDL编写的,所以从技术上讲,这是一个独特的“软板”。我保证,它运行得很愉快,没有任何问题 最近,我尝试在其上调整一个5.2 Linux内核,问题来了: 编写的UART串行接口与8250/16550型号兼容,并且它成功地在U-Boot上打印“hello world”,这意味着U-Boot的串行驱动程序工作得非常好。但当我后来处理Linux内核5.2时,我启用了带有“8250/16550和兼容串行支
1 /dts-v1/;
2
3 #include "./xilfpga/microAptiv.dtsi"
4
5 / {
6 compatible = "generic";
7
8 aliases {
9 console = &uart_dev;
10 };
11
12 uart_dev: serial@bfe40000 {
13 compatible = "serial8250";
14 reg = <0xbfe40000 0x3fff>;
15 interrupts = <3 0>;
16 reg-shift = <0>;
17 clock-frequency = <66000000>;
18 };
19
20 };
虽然已成功编译并附加了该命令,但在使用下面的cmdline启动内核时,我仍然无法获得任何打印消息:
console=ttyS0,115200 initcall_debug=1 loglevel=20
或
我希望早期的消息会像在定义了DT之后调整U-Boot一样打印出来,但它不起作用。所以我想知道early_con或early_printk是否需要替代的板级def或其他东西,或者我做得不好。。。
如果您能提供任何帮助,我们将不胜感激 研究它是倾斜的手臂,但仍有信息。研究它是倾斜的手臂,但仍有信息。
console=ttyS0,115200 initcall_debug=1 loglevel=20
earlycon console=ttyS0,115200 initcall_debug=1 loglevel=11