]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
net: phy: improve struct phy_device member interrupts handling
authorHeiner Kallweit <hkallweit1@gmail.com>
Fri, 9 Nov 2018 17:35:52 +0000 (18:35 +0100)
committerDavid S. Miller <davem@davemloft.net>
Sat, 10 Nov 2018 04:11:56 +0000 (20:11 -0800)
As a heritage from the very early days of phylib member interrupts is
defined as u32 even though it's just a flag whether interrupts are
enabled. So we can change it to a bitfield member. In addition change
the code dealing with this member in a way that it's clear we're
dealing with a bool value.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/phy.c
include/linux/phy.h

index dd5bff95512804077e4cafc15b6fb2e1042367fe..8dac890f32bfd37ae75b8d88420b2c9ece1afb02 100644 (file)
@@ -115,9 +115,9 @@ static int phy_clear_interrupt(struct phy_device *phydev)
  *
  * Returns 0 on success or < 0 on error.
  */
-static int phy_config_interrupt(struct phy_device *phydev, u32 interrupts)
+static int phy_config_interrupt(struct phy_device *phydev, bool interrupts)
 {
-       phydev->interrupts = interrupts;
+       phydev->interrupts = interrupts ? 1 : 0;
        if (phydev->drv->config_intr)
                return phydev->drv->config_intr(phydev);
 
index 2090277eac4f91389f23b32d050c7f9d3cc9839e..3299ec6e69f36b9a5e0f2fed9a85f67d09cbd67c 100644 (file)
@@ -263,8 +263,8 @@ static inline struct mii_bus *devm_mdiobus_alloc(struct device *dev)
 void devm_mdiobus_free(struct device *dev, struct mii_bus *bus);
 struct phy_device *mdiobus_scan(struct mii_bus *bus, int addr);
 
-#define PHY_INTERRUPT_DISABLED 0x0
-#define PHY_INTERRUPT_ENABLED  0x80000000
+#define PHY_INTERRUPT_DISABLED false
+#define PHY_INTERRUPT_ENABLED  true
 
 /* PHY state machine states:
  *
@@ -410,6 +410,9 @@ struct phy_device {
        /* The most recently read link state */
        unsigned link:1;
 
+       /* Interrupts are enabled */
+       unsigned interrupts:1;
+
        enum phy_state state;
 
        u32 dev_flags;
@@ -425,9 +428,6 @@ struct phy_device {
        int pause;
        int asym_pause;
 
-       /* Enabled Interrupts */
-       u32 interrupts;
-
        /* Union of PHY and Attached devices' supported modes */
        /* See mii.h for more info */
        u32 supported;