Message ID | 1334397568-8444-5-git-send-email-xiong@qca.qualcomm.com |
---|---|
State | Changes Requested, archived |
Delegated to: | David Miller |
Headers | show |
From: xiong <xiong@qca.qualcomm.com> Date: Sat, 14 Apr 2012 17:59:20 +0800 > VPD register is only used for L1(devid=PCI_DEVICE_ID_ATTANSIC_L1) to > access external NV-memory. > l1c & later chip doesn't use it any more. > no special userspace tool interpret the dumpped registers. > dumpping them via ethtool is just for debug. > > Signed-off-by: xiong <xiong@qca.qualcomm.com> > Tested-by: Liu David <dwliu@qca.qualcomm.com> I'm really disappointed that you're posting this patch again and completely ignoring our feedback. You're making this code buggy, and you're make me extremely irritated. What's the point of our feedback if you just completely ignore it? You can't crap up the register dump like this, you have to make several modifications if you want to change the layout in any way: 1) You have to adjust AT_REGS_LEN, because you're reporting one less register. 2) You have to adjust the offsets at the end of atl1c_get_regs(), the ones that explicitly use regs_buff[73] and regs_buf[74], otherwise you're leaving a gap between that area that's filled in using those p++ pointer increments and the entries filled in with these explicit offsets into reg_buff[]. 3) You have to increment the register dump version, via the struct ethtool_regs 'version' field, so that userland programs can know that you've changed it. So, tell me, are you going to completely ignore our feedback on this issue again? -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/ethernet/atheros/atl1c/atl1c_ethtool.c b/drivers/net/ethernet/atheros/atl1c/atl1c_ethtool.c index 0a9326a..ce63615 100644 --- a/drivers/net/ethernet/atheros/atl1c/atl1c_ethtool.c +++ b/drivers/net/ethernet/atheros/atl1c/atl1c_ethtool.c @@ -142,7 +142,6 @@ static void atl1c_get_regs(struct net_device *netdev, memset(p, 0, AT_REGS_LEN); regs->version = 0; - AT_READ_REG(hw, REG_VPD_CAP, p++); AT_READ_REG(hw, REG_PM_CTRL, p++); AT_READ_REG(hw, REG_MAC_HALF_DUPLX_CTRL, p++); AT_READ_REG(hw, REG_TWSI_CTRL, p++); diff --git a/drivers/net/ethernet/atheros/atl1c/atl1c_hw.h b/drivers/net/ethernet/atheros/atl1c/atl1c_hw.h index c22d698..f5c7473 100644 --- a/drivers/net/ethernet/atheros/atl1c/atl1c_hw.h +++ b/drivers/net/ethernet/atheros/atl1c/atl1c_hw.h @@ -59,17 +59,6 @@ int atl1c_phy_power_saving(struct atl1c_hw *hw); #define LINK_CTRL_L1_EN 0x02 #define LINK_CTRL_EXT_SYNC 0x80 -#define REG_VPD_CAP 0x6C -#define VPD_CAP_ID_MASK 0xff -#define VPD_CAP_ID_SHIFT 0 -#define VPD_CAP_NEXT_PTR_MASK 0xFF -#define VPD_CAP_NEXT_PTR_SHIFT 8 -#define VPD_CAP_VPD_ADDR_MASK 0x7FFF -#define VPD_CAP_VPD_ADDR_SHIFT 16 -#define VPD_CAP_VPD_FLAG 0x80000000 - -#define REG_VPD_DATA 0x70 - #define REG_PCIE_UC_SEVERITY 0x10C #define PCIE_UC_SERVRITY_TRN 0x00000001 #define PCIE_UC_SERVRITY_DLP 0x00000010