Hi!
> + ecmd->phy_address = 0; /* !!! Stole from e1000 */
> + ecmd->speed = 3; /* !!! Stole from e1000 */
Eh?
> +static void vnic_get_regs(struct net_device *netdev,
> + struct ethtool_regs *regs, void *p)
> +{
> + struct vnic_device *vnicdev = netdev->priv;
> + struct vioc_device *viocdev = vnicdev->viocdev;
> + char *regs_buff = p;
> +
> + memset(regs_buff, 0, VNIC_REGS_CNT * VNIC_REGS_LINE_LEN);
> +
> + regs->version = 1;
> +
> + sprintf(regs_buff, "%08Lx = %08x\n",
> + GETRELADDR(VREG_BMC_GLOBAL, VIOC_BMC, 0),
> + VIOC_READ_REG(VREG_BMC_GLOBAL, VIOC_BMC, 0, viocdev));
> + regs_buff += strlen(regs_buff);
> +
> + sprintf(regs_buff, "%08Lx = %08x\n",
> + GETRELADDR(VREG_BMC_DEBUG, VIOC_BMC, 0),
> + VIOC_READ_REG(VREG_BMC_DEBUG, VIOC_BMC, 0, viocdev));
> + regs_buff += strlen(regs_buff);
> +
> + sprintf(regs_buff, "%08Lx = %08x\n",
> + GETRELADDR(VREG_BMC_DEBUGPRIV, VIOC_BMC, 0),
> + VIOC_READ_REG(VREG_BMC_DEBUGPRIV, VIOC_BMC, 0, viocdev));
> + regs_buff += strlen(regs_buff);
> +
> + sprintf(regs_buff, "%08Lx = %08x\n",
> + GETRELADDR(VREG_BMC_FABRIC, VIOC_BMC, 0),
> + VIOC_READ_REG(VREG_BMC_FABRIC, VIOC_BMC, 0, viocdev));
> + regs_buff += strlen(regs_buff);
> +
> + sprintf(regs_buff, "%08Lx = %08x\n",
> + GETRELADDR(VREG_BMC_VNIC_EN, VIOC_BMC, 0),
> + VIOC_READ_REG(VREG_BMC_VNIC_EN, VIOC_BMC, 0, viocdev));
> + regs_buff += strlen(regs_buff);
> +
> + sprintf(regs_buff, "%08Lx = %08x\n",
> + GETRELADDR(VREG_BMC_PORT_EN, VIOC_BMC, 0),
> + VIOC_READ_REG(VREG_BMC_PORT_EN, VIOC_BMC, 0, viocdev));
> + regs_buff += strlen(regs_buff);
> +
> + sprintf(regs_buff, "%08Lx = %08x\n",
> + GETRELADDR(VREG_BMC_VNIC_CFG, VIOC_BMC, 0),
> + VIOC_READ_REG(VREG_BMC_VNIC_CFG, VIOC_BMC, 0, viocdev));
> + regs_buff += strlen(regs_buff);
> +
> + sprintf(regs_buff, "%08Lx = %08x\n",
> + GETRELADDR(VREG_IHCU_RXDQEN, VIOC_IHCU, 0),
> + VIOC_READ_REG(VREG_IHCU_RXDQEN, VIOC_IHCU, 0, viocdev));
> + regs_buff += strlen(regs_buff);
> +
> + sprintf(regs_buff, "%08Lx = %08x\n",
> + GETRELADDR(VREG_VENG_VLANTAG, VIOC_VENG, vnicdev->vnic_id),
> + VIOC_READ_REG(VREG_VENG_VLANTAG, VIOC_VENG, vnicdev->vnic_id,
> + viocdev));
> + regs_buff += strlen(regs_buff);
> +
> + sprintf(regs_buff, "%08Lx = %08x\n",
> + GETRELADDR(VREG_VENG_TXD_CTL, VIOC_VENG, vnicdev->vnic_id),
> + VIOC_READ_REG(VREG_VENG_TXD_CTL, VIOC_VENG, vnicdev->vnic_id,
> + viocdev));
> + regs_buff += strlen(regs_buff);
> +
> +}
This looks ugly. What interface is that?
Pavel
--
Thanks for all the (sleeping) penguins.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]