reset: uniphier: Add NX1 reset support
authorKunihiko Hayashi <hayashi.kunihiko@socionext.com>
Tue, 5 Oct 2021 02:10:42 +0000 (11:10 +0900)
committerPhilipp Zabel <p.zabel@pengutronix.de>
Tue, 5 Oct 2021 09:57:40 +0000 (11:57 +0200)
Add basic reset data for UniPhier NX1 SoC.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
Link: https://lore.kernel.org/r/1633399842-1402-4-git-send-email-hayashi.kunihiko@socionext.com
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
drivers/reset/reset-uniphier-glue.c
drivers/reset/reset-uniphier.c

index 027990b..908c1d5 100644 (file)
@@ -156,6 +156,10 @@ static const struct of_device_id uniphier_glue_reset_match[] = {
                .data = &uniphier_pxs2_data,
        },
        {
+               .compatible = "socionext,uniphier-nx1-usb3-reset",
+               .data = &uniphier_pxs2_data,
+       },
+       {
                .compatible = "socionext,uniphier-pro4-ahci-reset",
                .data = &uniphier_pro4_data,
        },
index 4a6cfd8..ff7580f 100644 (file)
@@ -141,6 +141,19 @@ static const struct uniphier_reset_data uniphier_pxs3_sys_reset_data[] = {
        UNIPHIER_RESET_END,
 };
 
+static const struct uniphier_reset_data uniphier_nx1_sys_reset_data[] = {
+       UNIPHIER_RESETX(4, 0x2008, 8),          /* eMMC */
+       UNIPHIER_RESETX(6, 0x200c, 0),          /* Ether */
+       UNIPHIER_RESETX(12, 0x200c, 16),        /* USB30 link */
+       UNIPHIER_RESETX(16, 0x200c, 24),        /* USB30-PHY0 */
+       UNIPHIER_RESETX(17, 0x200c, 25),        /* USB30-PHY1 */
+       UNIPHIER_RESETX(18, 0x200c, 26),        /* USB30-PHY2 */
+       UNIPHIER_RESETX(24, 0x200c, 8),         /* PCIe */
+       UNIPHIER_RESETX(52, 0x2010, 0),         /* VOC */
+       UNIPHIER_RESETX(58, 0x2010, 8),         /* HDMI-Tx */
+       UNIPHIER_RESET_END,
+};
+
 /* Media I/O reset data */
 #define UNIPHIER_MIO_RESET_SD(id, ch)                  \
        UNIPHIER_RESETX((id), 0x110 + 0x200 * (ch), 0)
@@ -402,6 +415,10 @@ static const struct of_device_id uniphier_reset_match[] = {
                .compatible = "socionext,uniphier-pxs3-reset",
                .data = uniphier_pxs3_sys_reset_data,
        },
+       {
+               .compatible = "socionext,uniphier-nx1-reset",
+               .data = uniphier_nx1_sys_reset_data,
+       },
        /* Media I/O reset, SD reset */
        {
                .compatible = "socionext,uniphier-ld4-mio-reset",
@@ -439,6 +456,10 @@ static const struct of_device_id uniphier_reset_match[] = {
                .compatible = "socionext,uniphier-pxs3-sd-reset",
                .data = uniphier_pro5_sd_reset_data,
        },
+       {
+               .compatible = "socionext,uniphier-nx1-sd-reset",
+               .data = uniphier_pro5_sd_reset_data,
+       },
        /* Peripheral reset */
        {
                .compatible = "socionext,uniphier-ld4-peri-reset",
@@ -472,6 +493,10 @@ static const struct of_device_id uniphier_reset_match[] = {
                .compatible = "socionext,uniphier-pxs3-peri-reset",
                .data = uniphier_pro4_peri_reset_data,
        },
+       {
+               .compatible = "socionext,uniphier-nx1-peri-reset",
+               .data = uniphier_pro4_peri_reset_data,
+       },
        /* Analog signal amplifiers reset */
        {
                .compatible = "socionext,uniphier-ld11-adamv-reset",