mutex_lock(&ps->eeprom_mutex);
 
-       ret = mv88e6xxx_reg_write(ds, REG_GLOBAL2, 0x14,
-                                 0xc000 | (addr & 0xff));
+       ret = mv88e6xxx_reg_write(ds, REG_GLOBAL2, GLOBAL2_EEPROM_OP,
+                                 GLOBAL2_EEPROM_OP_READ |
+                                 (addr & GLOBAL2_EEPROM_OP_ADDR_MASK));
        if (ret < 0)
                goto error;
 
        if (ret < 0)
                goto error;
 
-       ret = mv88e6xxx_reg_read(ds, REG_GLOBAL2, 0x15);
+       ret = mv88e6xxx_reg_read(ds, REG_GLOBAL2, GLOBAL2_EEPROM_DATA);
 error:
        mutex_unlock(&ps->eeprom_mutex);
        return ret;
 {
        int ret;
 
-       ret = mv88e6xxx_reg_read(ds, REG_GLOBAL2, 0x14);
+       ret = mv88e6xxx_reg_read(ds, REG_GLOBAL2, GLOBAL2_EEPROM_OP);
        if (ret < 0)
                return ret;
 
-       if (!(ret & 0x0400))
+       if (!(ret & GLOBAL2_EEPROM_OP_WRITE_EN))
                return -EROFS;
 
        return 0;
 
        mutex_lock(&ps->eeprom_mutex);
 
-       ret = mv88e6xxx_reg_write(ds, REG_GLOBAL2, 0x15, data);
+       ret = mv88e6xxx_reg_write(ds, REG_GLOBAL2, GLOBAL2_EEPROM_DATA, data);
        if (ret < 0)
                goto error;
 
-       ret = mv88e6xxx_reg_write(ds, REG_GLOBAL2, 0x14,
-                                 0xb000 | (addr & 0xff));
+       ret = mv88e6xxx_reg_write(ds, REG_GLOBAL2, GLOBAL2_EEPROM_OP,
+                                 GLOBAL2_EEPROM_OP_WRITE |
+                                 (addr & GLOBAL2_EEPROM_OP_ADDR_MASK));
        if (ret < 0)
                goto error;
 
 
 #define GLOBAL2_PRIO_OVERRIDE_FORCE_ARP                BIT(3)
 #define GLOBAL2_PRIO_OVERRIDE_ARP_SHIFT                0
 #define GLOBAL2_EEPROM_OP      0x14
-#define GLOBAL2_EEPROM_OP_BUSY BIT(15)
-#define GLOBAL2_EEPROM_OP_LOAD BIT(11)
+#define GLOBAL2_EEPROM_OP_BUSY         BIT(15)
+#define GLOBAL2_EEPROM_OP_WRITE                ((3 << 12) | GLOBAL2_EEPROM_OP_BUSY)
+#define GLOBAL2_EEPROM_OP_READ         ((4 << 12) | GLOBAL2_EEPROM_OP_BUSY)
+#define GLOBAL2_EEPROM_OP_LOAD         BIT(11)
+#define GLOBAL2_EEPROM_OP_WRITE_EN     BIT(10)
+#define GLOBAL2_EEPROM_OP_ADDR_MASK    0xff
 #define GLOBAL2_EEPROM_DATA    0x15
 #define GLOBAL2_PTP_AVB_OP     0x16
 #define GLOBAL2_PTP_AVB_DATA   0x17