kernel: b53: look for NVRAM's "robo_reset" entry on every platform
authorRafał Miłecki <rafal@milecki.pl>
Tue, 13 Mar 2018 11:09:20 +0000 (12:09 +0100)
committerRafał Miłecki <rafal@milecki.pl>
Wed, 21 Mar 2018 05:56:43 +0000 (06:56 +0100)
Since kernel 4.1 bcm47xx_nvram_gpio_pin() is now defined in a global
header and can be safely called even on non-Broadcom platforms.

This change makes b53 look for "robo_reset" on ARCH_BCM_5301X and
slightly simplifies the code.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
target/linux/generic/files/drivers/net/phy/b53/b53_priv.h

index 0c0358206ddaf1ea76a1079dedd9894b3373e6b8..d148c03349927525abd82eb92c987793406c73dd 100644 (file)
@@ -311,6 +311,7 @@ static inline int b53_write64(struct b53_device *dev, u8 page, u8 reg,
 
 #ifdef CONFIG_BCM47XX
 #include <bcm47xx_board.h>
+#endif
 
 #include <linux/version.h>
 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0))
@@ -318,20 +319,21 @@ static inline int b53_write64(struct b53_device *dev, u8 page, u8 reg,
 #endif
 static inline int b53_switch_get_reset_gpio(struct b53_device *dev)
 {
+#ifdef CONFIG_BCM47XX
        enum bcm47xx_board board = bcm47xx_board_get();
 
        switch (board) {
        case BCM47XX_BOARD_LINKSYS_WRT300NV11:
        case BCM47XX_BOARD_LINKSYS_WRT310NV1:
                return 8;
-       default:
-               return bcm47xx_nvram_gpio_pin("robo_reset");
        }
-}
+#endif
+
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0))
+       return bcm47xx_nvram_gpio_pin("robo_reset");
 #else
-static inline int b53_switch_get_reset_gpio(struct b53_device *dev)
-{
        return -ENOENT;
-}
 #endif
+}
+
 #endif