pwm: mediatek: add support for MT7988
authorRafał Miłecki <rafal@milecki.pl>
Wed, 14 Feb 2024 14:04:54 +0000 (15:04 +0100)
committerUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Thu, 15 Feb 2024 11:32:14 +0000 (12:32 +0100)
MT7988 uses new registers layout just like MT7981 but it supports 8 PWM
interfaces.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Reviewed-by: Daniel Golle <daniel@makrotopia.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20240214140454.6438-2-zajec5@gmail.com
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
drivers/pwm/pwm-mediatek.c

index 562102a47ac0445f90595247effe773295ed9db3..292c8bd5b3437af9bf4b9d646e342a0bc6b2766d 100644 (file)
@@ -339,6 +339,13 @@ static const struct pwm_mediatek_of_data mt7986_pwm_data = {
        .reg_offset = mtk_pwm_reg_offset_v1,
 };
 
+static const struct pwm_mediatek_of_data mt7988_pwm_data = {
+       .num_pwms = 8,
+       .pwm45_fixup = false,
+       .has_ck_26m_sel = false,
+       .reg_offset = mtk_pwm_reg_offset_v2,
+};
+
 static const struct pwm_mediatek_of_data mt8183_pwm_data = {
        .num_pwms = 4,
        .pwm45_fixup = false,
@@ -369,6 +376,7 @@ static const struct of_device_id pwm_mediatek_of_match[] = {
        { .compatible = "mediatek,mt7629-pwm", .data = &mt7629_pwm_data },
        { .compatible = "mediatek,mt7981-pwm", .data = &mt7981_pwm_data },
        { .compatible = "mediatek,mt7986-pwm", .data = &mt7986_pwm_data },
+       { .compatible = "mediatek,mt7988-pwm", .data = &mt7988_pwm_data },
        { .compatible = "mediatek,mt8183-pwm", .data = &mt8183_pwm_data },
        { .compatible = "mediatek,mt8365-pwm", .data = &mt8365_pwm_data },
        { .compatible = "mediatek,mt8516-pwm", .data = &mt8516_pwm_data },