forked from luck/tmp_suning_uos_patched
ieee802154: cc2520: check for return values in cc2520_filter()
neither ram nor register write return values have been checked here. Checking both now. Assign ret with 0 as all other assignments are inside if blocks and might not happen before we return ret. CID: 1230469 Signed-off-by: Stefan Schmidt <stefan@osg.samsung.com> Acked-by: Varka Bhadram <varkabhadram@gmail.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
parent
fe8de008ec
commit
c9d442038e
|
@ -590,22 +590,23 @@ cc2520_filter(struct ieee802154_hw *hw,
|
|||
struct ieee802154_hw_addr_filt *filt, unsigned long changed)
|
||||
{
|
||||
struct cc2520_private *priv = hw->priv;
|
||||
int ret = 0;
|
||||
|
||||
if (changed & IEEE802154_AFILT_PANID_CHANGED) {
|
||||
u16 panid = le16_to_cpu(filt->pan_id);
|
||||
|
||||
dev_vdbg(&priv->spi->dev,
|
||||
"cc2520_filter called for pan id\n");
|
||||
cc2520_write_ram(priv, CC2520RAM_PANID,
|
||||
sizeof(panid), (u8 *)&panid);
|
||||
ret = cc2520_write_ram(priv, CC2520RAM_PANID,
|
||||
sizeof(panid), (u8 *)&panid);
|
||||
}
|
||||
|
||||
if (changed & IEEE802154_AFILT_IEEEADDR_CHANGED) {
|
||||
dev_vdbg(&priv->spi->dev,
|
||||
"cc2520_filter called for IEEE addr\n");
|
||||
cc2520_write_ram(priv, CC2520RAM_IEEEADDR,
|
||||
sizeof(filt->ieee_addr),
|
||||
(u8 *)&filt->ieee_addr);
|
||||
ret = cc2520_write_ram(priv, CC2520RAM_IEEEADDR,
|
||||
sizeof(filt->ieee_addr),
|
||||
(u8 *)&filt->ieee_addr);
|
||||
}
|
||||
|
||||
if (changed & IEEE802154_AFILT_SADDR_CHANGED) {
|
||||
|
@ -613,20 +614,22 @@ cc2520_filter(struct ieee802154_hw *hw,
|
|||
|
||||
dev_vdbg(&priv->spi->dev,
|
||||
"cc2520_filter called for saddr\n");
|
||||
cc2520_write_ram(priv, CC2520RAM_SHORTADDR,
|
||||
sizeof(addr), (u8 *)&addr);
|
||||
ret = cc2520_write_ram(priv, CC2520RAM_SHORTADDR,
|
||||
sizeof(addr), (u8 *)&addr);
|
||||
}
|
||||
|
||||
if (changed & IEEE802154_AFILT_PANC_CHANGED) {
|
||||
dev_vdbg(&priv->spi->dev,
|
||||
"cc2520_filter called for panc change\n");
|
||||
if (filt->pan_coord)
|
||||
cc2520_write_register(priv, CC2520_FRMFILT0, 0x02);
|
||||
ret = cc2520_write_register(priv, CC2520_FRMFILT0,
|
||||
0x02);
|
||||
else
|
||||
cc2520_write_register(priv, CC2520_FRMFILT0, 0x00);
|
||||
ret = cc2520_write_register(priv, CC2520_FRMFILT0,
|
||||
0x00);
|
||||
}
|
||||
|
||||
return 0;
|
||||
return ret;
|
||||
}
|
||||
|
||||
static inline int cc2520_set_tx_power(struct cc2520_private *priv, s32 mbm)
|
||||
|
|
Loading…
Reference in New Issue
Block a user