Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

net: hisilicon: hns: Replace mdelay() with msleep()

hns_ppe_common_init_hw() and hns_xgmac_init() are never
called in atomic context.
They call mdelay() to busily wait, which is not necessary.
mdelay() can be replaced with msleep().

This is found by a static analysis tool named DCNS written by myself.

Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Jia-Ju Bai and committed by
David S. Miller
89036f23 2bcd619e

+4 -4
+2 -2
drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.c
··· 204 204 enum dsaf_mode dsaf_mode = dsaf_dev->dsaf_mode; 205 205 206 206 dsaf_dev->misc_op->ppe_comm_srst(dsaf_dev, 0); 207 - mdelay(100); 207 + msleep(100); 208 208 dsaf_dev->misc_op->ppe_comm_srst(dsaf_dev, 1); 209 - mdelay(100); 209 + msleep(100); 210 210 211 211 if (ppe_common->ppe_mode == PPE_COMMON_MODE_SERVICE) { 212 212 switch (dsaf_mode) {
+2 -2
drivers/net/ethernet/hisilicon/hns/hns_dsaf_xgmac.c
··· 215 215 u32 port = drv->mac_id; 216 216 217 217 dsaf_dev->misc_op->xge_srst(dsaf_dev, port, 0); 218 - mdelay(100); 218 + msleep(100); 219 219 dsaf_dev->misc_op->xge_srst(dsaf_dev, port, 1); 220 220 221 - mdelay(100); 221 + msleep(100); 222 222 hns_xgmac_lf_rf_control_init(drv); 223 223 hns_xgmac_exc_irq_en(drv, 0); 224 224