Commit 4335417d authored by Pali Rohár's avatar Pali Rohár Committed by Bartosz Golaszewski
Browse files

gpio: mvebu: Fix check for pwm support on non-A8K platforms



pwm support incompatible with Armada 80x0/70x0 API is not only in
Armada 370, but also in Armada XP, 38x and 39x. So basically every non-A8K
platform. Fix check for pwm support appropriately.

Fixes: 85b7d8ab ("gpio: mvebu: add pwm support for Armada 8K/7K")
Signed-off-by: default avatarPali Rohár <pali@kernel.org>
Signed-off-by: default avatarBartosz Golaszewski <brgl@bgdev.pl>
parent f76349cf
Loading
Loading
Loading
Loading
+6 −9
Original line number Diff line number Diff line
@@ -790,8 +790,12 @@ static int mvebu_pwm_probe(struct platform_device *pdev,
	u32 offset;
	u32 set;

	if (of_device_is_compatible(mvchip->chip.of_node,
				    "marvell,armada-370-gpio")) {
	if (mvchip->soc_variant == MVEBU_GPIO_SOC_VARIANT_A8K) {
		int ret = of_property_read_u32(dev->of_node,
					       "marvell,pwm-offset", &offset);
		if (ret < 0)
			return 0;
	} else {
		/*
		 * There are only two sets of PWM configuration registers for
		 * all the GPIO lines on those SoCs which this driver reserves
@@ -801,13 +805,6 @@ static int mvebu_pwm_probe(struct platform_device *pdev,
		if (!platform_get_resource_byname(pdev, IORESOURCE_MEM, "pwm"))
			return 0;
		offset = 0;
	} else if (mvchip->soc_variant == MVEBU_GPIO_SOC_VARIANT_A8K) {
		int ret = of_property_read_u32(dev->of_node,
					       "marvell,pwm-offset", &offset);
		if (ret < 0)
			return 0;
	} else {
		return 0;
	}

	if (IS_ERR(mvchip->clk))