bnx2x_upd_rx_prod_fast(struct bnx2x_softc *sc, struct bnx2x_fastpath *fp,
uint16_t rx_bd_prod, uint16_t rx_cq_prod)
{
- struct ustorm_eth_rx_producers rx_prods = { 0 };
- uint32_t *val = NULL;
+ union {
+ struct ustorm_eth_rx_producers rx_prods;
+ uint32_t val;
+ } val = { {0} };
- rx_prods.bd_prod = rx_bd_prod;
- rx_prods.cqe_prod = rx_cq_prod;
+ val.rx_prods.bd_prod = rx_bd_prod;
+ val.rx_prods.cqe_prod = rx_cq_prod;
- val = (uint32_t *)&rx_prods;
- REG_WR(sc, fp->ustorm_rx_prods_offset, val[0]);
+ REG_WR(sc, fp->ustorm_rx_prods_offset, val.val);
}
static uint16_t