if (!ar8xxx_has_mib_counters(priv))
return 0;
- BUG_ON(!priv->chip->mib_decs || !priv->chip->num_mibs);
+ if (WARN_ON(!priv->chip->mib_decs || !priv->chip->num_mibs))
+ return -EINVAL;
len = priv->dev.ports * priv->chip->num_mibs *
sizeof(*priv->mib_stats);
if (priv->page == page)
return;
- BUG_ON(page > RTL8306_NUM_PAGES);
+ if (WARN_ON_ONCE(page > RTL8306_NUM_PAGES))
+ return;
pgsel = bus->read(bus, 0, RTL8306_REG_PAGE);
pgsel &= ~(RTL8306_REG_PAGE_LO | RTL8306_REG_PAGE_HI);
if (page & (1 << 0))
const struct rtl_reg *r = &rtl_regs[s];
u16 val;
- BUG_ON(s >= ARRAY_SIZE(rtl_regs));
+ if (WARN_ON_ONCE(s >= ARRAY_SIZE(rtl_regs)))
+ return 0;
if (r->bits == 0) /* unimplemented */
return 0;
const struct rtl_reg *r = &rtl_regs[s];
u16 mask = 0xffff;
- BUG_ON(s >= ARRAY_SIZE(rtl_regs));
+ if (WARN_ON_ONCE(s >= ARRAY_SIZE(rtl_regs)))
+ return -EINVAL;
if (r->bits == 0) /* unimplemented */
return 0;
u32 phy_id = smi->phy_id;
struct mii_bus *mbus = smi->ext_mbus;
- BUG_ON(in_interrupt());
+ if (WARN_ON(in_interrupt()))
+ return -EPERM;
mutex_lock(&mbus->mdio_lock);
/* Write Start command to register 29 */
mbus->write(mbus, phy_id, MDC_MDIO_CTRL1_REG, MDC_MDIO_READ_OP);
/* Write Start command to register 29 */
- mbus->write(smi->ext_mbus, phy_id, MDC_MDIO_START_REG, MDC_MDIO_START_OP);
+ mbus->write(mbus, phy_id, MDC_MDIO_START_REG, MDC_MDIO_START_OP);
/* Read data from register 25 */
*data = mbus->read(mbus, phy_id, MDC_MDIO_DATA_READ_REG);
u32 phy_id = smi->phy_id;
struct mii_bus *mbus = smi->ext_mbus;
- BUG_ON(in_interrupt());
+ if (WARN_ON(in_interrupt()))
+ return -EPERM;
mutex_lock(&mbus->mdio_lock);
{
struct rtl8366_smi *smi;
- BUG_ON(!parent);
+ if (WARN_ON(!parent))
+ return NULL;
smi = kzalloc(sizeof(*smi), GFP_KERNEL);
if (!smi) {