ionic: clean up sparse complaints
The sparse complaints around the static_asserts were obscuring more useful complaints. So, don't check the static_asserts, and fix the remaining sparse complaints. Signed-off-by: Shannon Nelson <snelson@pensando.io> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Родитель
4f3391ce8f
Коммит
d701ec326a
|
@ -333,7 +333,7 @@ int ionic_set_vf_config(struct ionic *ionic, int vf, u8 attr, u8 *data)
|
||||||
union ionic_dev_cmd cmd = {
|
union ionic_dev_cmd cmd = {
|
||||||
.vf_setattr.opcode = IONIC_CMD_VF_SETATTR,
|
.vf_setattr.opcode = IONIC_CMD_VF_SETATTR,
|
||||||
.vf_setattr.attr = attr,
|
.vf_setattr.attr = attr,
|
||||||
.vf_setattr.vf_index = vf,
|
.vf_setattr.vf_index = cpu_to_le16(vf),
|
||||||
};
|
};
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
|
@ -391,7 +391,7 @@ void ionic_dev_cmd_queue_identify(struct ionic_dev *idev,
|
||||||
{
|
{
|
||||||
union ionic_dev_cmd cmd = {
|
union ionic_dev_cmd cmd = {
|
||||||
.q_identify.opcode = IONIC_CMD_Q_IDENTIFY,
|
.q_identify.opcode = IONIC_CMD_Q_IDENTIFY,
|
||||||
.q_identify.lif_type = lif_type,
|
.q_identify.lif_type = cpu_to_le16(lif_type),
|
||||||
.q_identify.type = qtype,
|
.q_identify.type = qtype,
|
||||||
.q_identify.ver = qver,
|
.q_identify.ver = qver,
|
||||||
};
|
};
|
||||||
|
|
|
@ -29,6 +29,7 @@ struct ionic_dev_bar {
|
||||||
int res_index;
|
int res_index;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#ifndef __CHECKER__
|
||||||
/* Registers */
|
/* Registers */
|
||||||
static_assert(sizeof(struct ionic_intr) == 32);
|
static_assert(sizeof(struct ionic_intr) == 32);
|
||||||
|
|
||||||
|
@ -119,6 +120,7 @@ static_assert(sizeof(struct ionic_vf_setattr_cmd) == 64);
|
||||||
static_assert(sizeof(struct ionic_vf_setattr_comp) == 16);
|
static_assert(sizeof(struct ionic_vf_setattr_comp) == 16);
|
||||||
static_assert(sizeof(struct ionic_vf_getattr_cmd) == 64);
|
static_assert(sizeof(struct ionic_vf_getattr_cmd) == 64);
|
||||||
static_assert(sizeof(struct ionic_vf_getattr_comp) == 16);
|
static_assert(sizeof(struct ionic_vf_getattr_comp) == 16);
|
||||||
|
#endif /* __CHECKER__ */
|
||||||
|
|
||||||
struct ionic_devinfo {
|
struct ionic_devinfo {
|
||||||
u8 asic_type;
|
u8 asic_type;
|
||||||
|
|
|
@ -27,9 +27,9 @@ static void ionic_dev_cmd_firmware_download(struct ionic_dev *idev, u64 addr,
|
||||||
{
|
{
|
||||||
union ionic_dev_cmd cmd = {
|
union ionic_dev_cmd cmd = {
|
||||||
.fw_download.opcode = IONIC_CMD_FW_DOWNLOAD,
|
.fw_download.opcode = IONIC_CMD_FW_DOWNLOAD,
|
||||||
.fw_download.offset = offset,
|
.fw_download.offset = cpu_to_le32(offset),
|
||||||
.fw_download.addr = addr,
|
.fw_download.addr = cpu_to_le64(addr),
|
||||||
.fw_download.length = length
|
.fw_download.length = cpu_to_le32(length),
|
||||||
};
|
};
|
||||||
|
|
||||||
ionic_dev_cmd_go(idev, &cmd);
|
ionic_dev_cmd_go(idev, &cmd);
|
||||||
|
|
|
@ -1915,11 +1915,11 @@ static int ionic_get_vf_config(struct net_device *netdev,
|
||||||
ret = -EINVAL;
|
ret = -EINVAL;
|
||||||
} else {
|
} else {
|
||||||
ivf->vf = vf;
|
ivf->vf = vf;
|
||||||
ivf->vlan = ionic->vfs[vf].vlanid;
|
ivf->vlan = le16_to_cpu(ionic->vfs[vf].vlanid);
|
||||||
ivf->qos = 0;
|
ivf->qos = 0;
|
||||||
ivf->spoofchk = ionic->vfs[vf].spoofchk;
|
ivf->spoofchk = ionic->vfs[vf].spoofchk;
|
||||||
ivf->linkstate = ionic->vfs[vf].linkstate;
|
ivf->linkstate = ionic->vfs[vf].linkstate;
|
||||||
ivf->max_tx_rate = ionic->vfs[vf].maxrate;
|
ivf->max_tx_rate = le32_to_cpu(ionic->vfs[vf].maxrate);
|
||||||
ivf->trusted = ionic->vfs[vf].trusted;
|
ivf->trusted = ionic->vfs[vf].trusted;
|
||||||
ether_addr_copy(ivf->mac, ionic->vfs[vf].macaddr);
|
ether_addr_copy(ivf->mac, ionic->vfs[vf].macaddr);
|
||||||
}
|
}
|
||||||
|
@ -2019,7 +2019,7 @@ static int ionic_set_vf_vlan(struct net_device *netdev, int vf, u16 vlan,
|
||||||
ret = ionic_set_vf_config(ionic, vf,
|
ret = ionic_set_vf_config(ionic, vf,
|
||||||
IONIC_VF_ATTR_VLAN, (u8 *)&vlan);
|
IONIC_VF_ATTR_VLAN, (u8 *)&vlan);
|
||||||
if (!ret)
|
if (!ret)
|
||||||
ionic->vfs[vf].vlanid = vlan;
|
ionic->vfs[vf].vlanid = cpu_to_le16(vlan);
|
||||||
}
|
}
|
||||||
|
|
||||||
up_write(&ionic->vf_op_lock);
|
up_write(&ionic->vf_op_lock);
|
||||||
|
@ -2048,7 +2048,7 @@ static int ionic_set_vf_rate(struct net_device *netdev, int vf,
|
||||||
ret = ionic_set_vf_config(ionic, vf,
|
ret = ionic_set_vf_config(ionic, vf,
|
||||||
IONIC_VF_ATTR_RATE, (u8 *)&tx_max);
|
IONIC_VF_ATTR_RATE, (u8 *)&tx_max);
|
||||||
if (!ret)
|
if (!ret)
|
||||||
lif->ionic->vfs[vf].maxrate = tx_max;
|
lif->ionic->vfs[vf].maxrate = cpu_to_le32(tx_max);
|
||||||
}
|
}
|
||||||
|
|
||||||
up_write(&ionic->vf_op_lock);
|
up_write(&ionic->vf_op_lock);
|
||||||
|
@ -2981,14 +2981,14 @@ void ionic_lif_unregister(struct ionic_lif *lif)
|
||||||
|
|
||||||
static void ionic_lif_queue_identify(struct ionic_lif *lif)
|
static void ionic_lif_queue_identify(struct ionic_lif *lif)
|
||||||
{
|
{
|
||||||
|
union ionic_q_identity __iomem *q_ident;
|
||||||
struct ionic *ionic = lif->ionic;
|
struct ionic *ionic = lif->ionic;
|
||||||
union ionic_q_identity *q_ident;
|
|
||||||
struct ionic_dev *idev;
|
struct ionic_dev *idev;
|
||||||
int qtype;
|
int qtype;
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
idev = &lif->ionic->idev;
|
idev = &lif->ionic->idev;
|
||||||
q_ident = (union ionic_q_identity *)&idev->dev_cmd_regs->data;
|
q_ident = (union ionic_q_identity __iomem *)&idev->dev_cmd_regs->data;
|
||||||
|
|
||||||
for (qtype = 0; qtype < ARRAY_SIZE(ionic_qtype_versions); qtype++) {
|
for (qtype = 0; qtype < ARRAY_SIZE(ionic_qtype_versions); qtype++) {
|
||||||
struct ionic_qtype_info *qti = &lif->qtype_info[qtype];
|
struct ionic_qtype_info *qti = &lif->qtype_info[qtype];
|
||||||
|
@ -3011,14 +3011,14 @@ static void ionic_lif_queue_identify(struct ionic_lif *lif)
|
||||||
ionic_qtype_versions[qtype]);
|
ionic_qtype_versions[qtype]);
|
||||||
err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
|
err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
|
||||||
if (!err) {
|
if (!err) {
|
||||||
qti->version = q_ident->version;
|
qti->version = readb(&q_ident->version);
|
||||||
qti->supported = q_ident->supported;
|
qti->supported = readb(&q_ident->supported);
|
||||||
qti->features = le64_to_cpu(q_ident->features);
|
qti->features = readq(&q_ident->features);
|
||||||
qti->desc_sz = le16_to_cpu(q_ident->desc_sz);
|
qti->desc_sz = readw(&q_ident->desc_sz);
|
||||||
qti->comp_sz = le16_to_cpu(q_ident->comp_sz);
|
qti->comp_sz = readw(&q_ident->comp_sz);
|
||||||
qti->sg_desc_sz = le16_to_cpu(q_ident->sg_desc_sz);
|
qti->sg_desc_sz = readw(&q_ident->sg_desc_sz);
|
||||||
qti->max_sg_elems = le16_to_cpu(q_ident->max_sg_elems);
|
qti->max_sg_elems = readw(&q_ident->max_sg_elems);
|
||||||
qti->sg_desc_stride = le16_to_cpu(q_ident->sg_desc_stride);
|
qti->sg_desc_stride = readw(&q_ident->sg_desc_stride);
|
||||||
}
|
}
|
||||||
mutex_unlock(&ionic->dev_cmd_lock);
|
mutex_unlock(&ionic->dev_cmd_lock);
|
||||||
|
|
||||||
|
|
|
@ -311,7 +311,7 @@ int ionic_adminq_post_wait(struct ionic_lif *lif, struct ionic_admin_ctx *ctx)
|
||||||
|
|
||||||
static void ionic_dev_cmd_clean(struct ionic *ionic)
|
static void ionic_dev_cmd_clean(struct ionic *ionic)
|
||||||
{
|
{
|
||||||
union ionic_dev_cmd_regs *regs = ionic->idev.dev_cmd_regs;
|
union __iomem ionic_dev_cmd_regs *regs = ionic->idev.dev_cmd_regs;
|
||||||
|
|
||||||
iowrite32(0, ®s->doorbell);
|
iowrite32(0, ®s->doorbell);
|
||||||
memset_io(®s->cmd, 0, sizeof(regs->cmd));
|
memset_io(®s->cmd, 0, sizeof(regs->cmd));
|
||||||
|
@ -333,7 +333,7 @@ int ionic_dev_cmd_wait(struct ionic *ionic, unsigned long max_seconds)
|
||||||
*/
|
*/
|
||||||
max_wait = jiffies + (max_seconds * HZ);
|
max_wait = jiffies + (max_seconds * HZ);
|
||||||
try_again:
|
try_again:
|
||||||
opcode = idev->dev_cmd_regs->cmd.cmd.opcode;
|
opcode = readb(&idev->dev_cmd_regs->cmd.cmd.opcode);
|
||||||
start_time = jiffies;
|
start_time = jiffies;
|
||||||
do {
|
do {
|
||||||
done = ionic_dev_cmd_done(idev);
|
done = ionic_dev_cmd_done(idev);
|
||||||
|
|
|
@ -49,7 +49,7 @@ extern const int ionic_num_stats_grps;
|
||||||
(*((u64 *)(((u8 *)(base_ptr)) + (desc_ptr)->offset)))
|
(*((u64 *)(((u8 *)(base_ptr)) + (desc_ptr)->offset)))
|
||||||
|
|
||||||
#define IONIC_READ_STAT_LE64(base_ptr, desc_ptr) \
|
#define IONIC_READ_STAT_LE64(base_ptr, desc_ptr) \
|
||||||
__le64_to_cpu(*((u64 *)(((u8 *)(base_ptr)) + (desc_ptr)->offset)))
|
__le64_to_cpu(*((__le64 *)(((u8 *)(base_ptr)) + (desc_ptr)->offset)))
|
||||||
|
|
||||||
struct ionic_stat_desc {
|
struct ionic_stat_desc {
|
||||||
char name[ETH_GSTRING_LEN];
|
char name[ETH_GSTRING_LEN];
|
||||||
|
|
|
@ -200,7 +200,7 @@ static void ionic_rx_clean(struct ionic_queue *q,
|
||||||
if (likely(netdev->features & NETIF_F_RXCSUM)) {
|
if (likely(netdev->features & NETIF_F_RXCSUM)) {
|
||||||
if (comp->csum_flags & IONIC_RXQ_COMP_CSUM_F_CALC) {
|
if (comp->csum_flags & IONIC_RXQ_COMP_CSUM_F_CALC) {
|
||||||
skb->ip_summed = CHECKSUM_COMPLETE;
|
skb->ip_summed = CHECKSUM_COMPLETE;
|
||||||
skb->csum = (__wsum)le16_to_cpu(comp->csum);
|
skb->csum = (__force __wsum)le16_to_cpu(comp->csum);
|
||||||
stats->csum_complete++;
|
stats->csum_complete++;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -812,6 +812,7 @@ static int ionic_tx_tso(struct ionic_queue *q, struct sk_buff *skb)
|
||||||
skb_frag_t *frag;
|
skb_frag_t *frag;
|
||||||
bool start, done;
|
bool start, done;
|
||||||
bool outer_csum;
|
bool outer_csum;
|
||||||
|
dma_addr_t addr;
|
||||||
bool has_vlan;
|
bool has_vlan;
|
||||||
u16 desc_len;
|
u16 desc_len;
|
||||||
u8 desc_nsge;
|
u8 desc_nsge;
|
||||||
|
@ -893,11 +894,10 @@ static int ionic_tx_tso(struct ionic_queue *q, struct sk_buff *skb)
|
||||||
if (frag_left > 0) {
|
if (frag_left > 0) {
|
||||||
len = min(frag_left, left);
|
len = min(frag_left, left);
|
||||||
frag_left -= len;
|
frag_left -= len;
|
||||||
elem->addr =
|
addr = ionic_tx_map_frag(q, frag, offset, len);
|
||||||
cpu_to_le64(ionic_tx_map_frag(q, frag,
|
if (dma_mapping_error(dev, addr))
|
||||||
offset, len));
|
|
||||||
if (dma_mapping_error(dev, elem->addr))
|
|
||||||
goto err_out_abort;
|
goto err_out_abort;
|
||||||
|
elem->addr = cpu_to_le64(addr);
|
||||||
elem->len = cpu_to_le16(len);
|
elem->len = cpu_to_le16(len);
|
||||||
elem++;
|
elem++;
|
||||||
desc_nsge++;
|
desc_nsge++;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче