| $ git grep fu540-c000-uart | Documentation/devicetree/bindings/serial/sifive-serial.yaml: - sifive,fu540-c000-uart | Documentation/devicetree/bindings/serial/sifive-serial.yaml: compatible = "sifive,fu540-c000-uart", "sifive,uart0"; | Documentation/devicetree/bindings/sifive/sifive-blocks-ip-versioning.txt:"sifive,fu540-c000-uart". This way, if SoC-specific | Documentation/devicetree/bindings/sifive/sifive-blocks-ip-versioning.txt: compatible = "sifive,fu540-c000-uart", "sifive,uart0"; | arch/riscv/boot/dts/sifive/fu540-c000.dtsi: compatible = "sifive,fu540-c000-uart", "sifive,uart0"; | arch/riscv/boot/dts/sifive/fu540-c000.dtsi: compatible = "sifive,fu540-c000-uart", "sifive,uart0"; | drivers/tty/serial/sifive.c:OF_EARLYCON_DECLARE(sifive, "sifive,fu540-c000-uart0", | drivers/tty/serial/sifive.c: { .compatible = "sifive,fu540-c000-uart0" }, note that the driver has a trailing 0 in the binding while the yaml description and the DT part does not. The 'sifive,uart' has a trailing 0 where the 0 denotes the version UART IP. Was this also intended for the fu540-c000-uart binding? Should the 0 be added everywhere or removed from the driver? Sebastian