Linux >= 4.18-rc1 changed the compat string for armada uart to a
different value in b7639b0b15ddd1a4686b0142e70dfb122eefc88f.
Only compile tested for lack of hardware.
Index: com_fdt.c
===================================================================
RCS file: /cvs/src/sys/dev/fdt/com_fdt.c,v
retrieving revision 1.1
diff -u -p -r1.1 com_fdt.c
--- com_fdt.c 31 May 2018 20:03:18 -0000 1.1
+++ com_fdt.c 19 Jul 2018 09:07:21 -0000
@@ -56,6 +56,7 @@ com_fdt_init_cons(void)
if ((node = fdt_find_cons("brcm,bcm2835-aux-uart")) == NULL &&
(node = fdt_find_cons("snps,dw-apb-uart")) == NULL &&
+ (node = fdt_find_cons("marvell,armada-38x-uart")) == NULL &&
(node = fdt_find_cons("ti,omap3-uart")) == NULL &&
(node = fdt_find_cons("ti,omap4-uart")) == NULL)
return;
@@ -87,6 +88,7 @@ com_fdt_match(struct device *parent, voi
return (OF_is_compatible(faa->fa_node, "brcm,bcm2835-aux-uart") ||
OF_is_compatible(faa->fa_node, "snps,dw-apb-uart") ||
+ OF_is_compatible(faa->fa_node, "marvell,armada-38x-uart") ||
OF_is_compatible(faa->fa_node, "ti,omap3-uart") ||
OF_is_compatible(faa->fa_node, "ti,omap4-uart"));
}
@@ -121,7 +123,8 @@ com_fdt_attach(struct device *parent, st
sc->sc_reg_width = OF_getpropint(faa->fa_node, "reg-io-width", 4);
sc->sc_reg_shift = OF_getpropint(faa->fa_node, "reg-shift", 2);
- if (OF_is_compatible(faa->fa_node, "snps,dw-apb-uart"))
+ if (OF_is_compatible(faa->fa_node, "snps,dw-apb-uart") ||
+ OF_is_compatible(faa->fa_node, "marvell,armada-38x-uart"))
intr = com_fdt_intr_designware;
if (OF_is_compatible(faa->fa_node, "ti,omap3-uart") ||