usb: musb: sunxi: add support for the F1C100s MUSB controller
authorIcenowy Zheng <uwu@icenowy.me>
Wed, 1 Feb 2023 10:53:47 +0000 (10:53 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 2 Feb 2023 10:13:42 +0000 (11:13 +0100)
The suniv SoC has a MUSB controller like the one in A33, but with a SRAM
region to be claimed.

Add support for it.

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Link: https://lore.kernel.org/r/20230201105348.1815461-3-andre.przywara@arm.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/musb/sunxi.c

index 7f9a999..4b368d1 100644 (file)
@@ -722,14 +722,17 @@ static int sunxi_musb_probe(struct platform_device *pdev)
        INIT_WORK(&glue->work, sunxi_musb_work);
        glue->host_nb.notifier_call = sunxi_musb_host_notifier;
 
-       if (of_device_is_compatible(np, "allwinner,sun4i-a10-musb"))
+       if (of_device_is_compatible(np, "allwinner,sun4i-a10-musb") ||
+           of_device_is_compatible(np, "allwinner,suniv-f1c100s-musb")) {
                set_bit(SUNXI_MUSB_FL_HAS_SRAM, &glue->flags);
+       }
 
        if (of_device_is_compatible(np, "allwinner,sun6i-a31-musb"))
                set_bit(SUNXI_MUSB_FL_HAS_RESET, &glue->flags);
 
        if (of_device_is_compatible(np, "allwinner,sun8i-a33-musb") ||
-           of_device_is_compatible(np, "allwinner,sun8i-h3-musb")) {
+           of_device_is_compatible(np, "allwinner,sun8i-h3-musb") ||
+           of_device_is_compatible(np, "allwinner,suniv-f1c100s-musb")) {
                set_bit(SUNXI_MUSB_FL_HAS_RESET, &glue->flags);
                set_bit(SUNXI_MUSB_FL_NO_CONFIGDATA, &glue->flags);
        }
@@ -815,6 +818,7 @@ static const struct of_device_id sunxi_musb_match[] = {
        { .compatible = "allwinner,sun6i-a31-musb", },
        { .compatible = "allwinner,sun8i-a33-musb", },
        { .compatible = "allwinner,sun8i-h3-musb", },
+       { .compatible = "allwinner,suniv-f1c100s-musb", },
        {}
 };
 MODULE_DEVICE_TABLE(of, sunxi_musb_match);