Commit 89b872e2 authored by Lennert Buytenhek's avatar Lennert Buytenhek Committed by John W. Linville

mwl8k: increase firmware loading timeouts

The time between loading the helper image and starting to upload the
main firmware image should be at least 5 ms or so.  We were doing an
msleep(1) before, and 1 ms appears to not be enough in almost all
cases, but building with HZ=100 has always masked this so far.  Bumping
the msleep argument to 5 fixes firmware loading e.g. when HZ=1000.

Some firmware images need more than 200ms to initialize.  Bump the
ready code timeout to 500ms to accommodate for this.
Signed-off-by: default avatarLennert Buytenhek <buytenh@marvell.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 7e1112d3
...@@ -571,7 +571,7 @@ static int mwl8k_load_firmware(struct ieee80211_hw *hw) ...@@ -571,7 +571,7 @@ static int mwl8k_load_firmware(struct ieee80211_hw *hw)
"helper image\n", pci_name(priv->pdev)); "helper image\n", pci_name(priv->pdev));
return rc; return rc;
} }
msleep(1); msleep(5);
rc = mwl8k_feed_fw_image(priv, fw->data, fw->size); rc = mwl8k_feed_fw_image(priv, fw->data, fw->size);
} else { } else {
...@@ -588,9 +588,8 @@ static int mwl8k_load_firmware(struct ieee80211_hw *hw) ...@@ -588,9 +588,8 @@ static int mwl8k_load_firmware(struct ieee80211_hw *hw)
iowrite32(MWL8K_MODE_AP, priv->regs + MWL8K_HIU_GEN_PTR); iowrite32(MWL8K_MODE_AP, priv->regs + MWL8K_HIU_GEN_PTR);
else else
iowrite32(MWL8K_MODE_STA, priv->regs + MWL8K_HIU_GEN_PTR); iowrite32(MWL8K_MODE_STA, priv->regs + MWL8K_HIU_GEN_PTR);
msleep(1);
loops = 200000; loops = 500000;
do { do {
u32 ready_code; u32 ready_code;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment