You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by xi...@apache.org on 2022/06/16 15:02:13 UTC

[incubator-nuttx] branch master updated: wireless/bcm43xxx: replace all busy delay to nxsig_usleep

This is an automated email from the ASF dual-hosted git repository.

xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx.git


The following commit(s) were added to refs/heads/master by this push:
     new 29dd12283c wireless/bcm43xxx: replace all busy delay to nxsig_usleep
29dd12283c is described below

commit 29dd12283c91a22a1f71839233971b8ec64523eb
Author: chao.an <an...@xiaomi.com>
AuthorDate: Thu Jun 16 20:16:32 2022 +0800

    wireless/bcm43xxx: replace all busy delay to nxsig_usleep
    
    Signed-off-by: chao.an <an...@xiaomi.com>
---
 drivers/wireless/ieee80211/bcm43xxx/bcmf_core.c | 11 ++++++-----
 drivers/wireless/ieee80211/bcm43xxx/bcmf_sdio.c | 17 +++++++++--------
 2 files changed, 15 insertions(+), 13 deletions(-)

diff --git a/drivers/wireless/ieee80211/bcm43xxx/bcmf_core.c b/drivers/wireless/ieee80211/bcm43xxx/bcmf_core.c
index 434973b27c..ffcdd844dc 100644
--- a/drivers/wireless/ieee80211/bcm43xxx/bcmf_core.c
+++ b/drivers/wireless/ieee80211/bcm43xxx/bcmf_core.c
@@ -37,6 +37,7 @@
 
 #include <nuttx/arch.h>
 #include <nuttx/kmalloc.h>
+#include <nuttx/signal.h>
 
 #include "bcmf_core.h"
 #include "bcmf_sdio.h"
@@ -567,7 +568,7 @@ int bcmf_core_upload_firmware(FAR struct bcmf_sdio_dev_s *sbus)
         DEBUGASSERT(false);
     }
 
-  up_mdelay(50);
+  nxsig_usleep(50 * 1000);
 
   /* Flash chip firmware */
 
@@ -612,12 +613,12 @@ int bcmf_core_upload_firmware(FAR struct bcmf_sdio_dev_s *sbus)
       case SDIO_DEVICE_ID_BROADCOM_43013:
       case SDIO_DEVICE_ID_BROADCOM_43362:
       case SDIO_DEVICE_ID_BROADCOM_43430:
-        up_mdelay(10);
+        nxsig_usleep(10 * 1000);
         bcmf_core_reset(sbus, WLAN_ARMCM3_CORE_ID, 0, 0, 0);
 
         /* Check ARMCM3 core is running */
 
-        up_mdelay(10);
+        nxsig_usleep(10 * 1000);
         if (!bcmf_core_isup(sbus, WLAN_ARMCM3_CORE_ID))
           {
             wlerr("Cannot start ARMCM3 core\n");
@@ -656,7 +657,7 @@ int bcmf_core_upload_firmware(FAR struct bcmf_sdio_dev_s *sbus)
 
         /* Check ARMCR4 core is running */
 
-        up_mdelay(10);
+        nxsig_usleep(10 * 1000);
         if (!bcmf_core_isup(sbus, WLAN_ARMCR4_CORE_ID))
           {
             wlerr("Cannot start ARMCR4 core\n");
@@ -725,7 +726,7 @@ void bcmf_core_disable(FAR struct bcmf_sdio_dev_s *sbus,
 
       /*  Ensure no backplane operation is pending */
 
-      up_mdelay(10);
+      nxsig_usleep(10 * 1000);
 
       bcmf_write_sbregw(sbus,
                         base + BCMA_IOCTL,
diff --git a/drivers/wireless/ieee80211/bcm43xxx/bcmf_sdio.c b/drivers/wireless/ieee80211/bcm43xxx/bcmf_sdio.c
index bae34b4110..57bfe29058 100644
--- a/drivers/wireless/ieee80211/bcm43xxx/bcmf_sdio.c
+++ b/drivers/wireless/ieee80211/bcm43xxx/bcmf_sdio.c
@@ -38,6 +38,7 @@
 #include <nuttx/kthread.h>
 #include <nuttx/wdog.h>
 #include <nuttx/sdio.h>
+#include <nuttx/signal.h>
 
 #include <nuttx/wireless/ieee80211/bcmf_sdio.h>
 #include <nuttx/wireless/ieee80211/bcmf_board.h>
@@ -179,7 +180,7 @@ int bcmf_sdio_bus_sleep(FAR struct bcmf_sdio_dev_s *sbus, bool sleep)
 
           /* Wait for High Throughput clock */
 
-          up_mdelay(100);
+          nxsig_usleep(100 * 1000);
           ret = bcmf_read_reg(sbus, 1, SBSDIO_FUNC1_CHIPCLKCSR, &value);
 
           if (ret != OK)
@@ -286,7 +287,7 @@ int bcmf_probe(FAR struct bcmf_sdio_dev_s *sbus)
 #endif
 
   SDIO_CLOCK(sbus->sdio_dev, CLOCK_SD_TRANSFER_4BIT);
-  up_mdelay(BCMF_CLOCK_SETUP_DELAY_MS);
+  nxsig_usleep(BCMF_CLOCK_SETUP_DELAY_MS * 1000);
 
   /* Enable bus FN1 */
 
@@ -329,7 +330,7 @@ int bcmf_businitialize(FAR struct bcmf_sdio_dev_s *sbus)
   loops = 10;
   while (--loops > 0)
     {
-      up_mdelay(10);
+      nxsig_usleep(10 * 1000);
       ret = bcmf_read_reg(sbus, 1, SBSDIO_FUNC1_CHIPCLKCSR, &value);
 
       if (ret != OK)
@@ -474,12 +475,12 @@ int bcmf_hwinitialize(FAR struct bcmf_sdio_dev_s *sbus)
 
   bcmf_board_reset(sbus->minor, true);
   bcmf_board_power(sbus->minor, true);
-  up_mdelay(BCMF_DEVICE_RESET_DELAY_MS);
+  nxsig_usleep(BCMF_DEVICE_RESET_DELAY_MS * 1000);
   bcmf_board_reset(sbus->minor, false);
 
   /* Wait for device to start */
 
-  up_mdelay(BCMF_DEVICE_START_DELAY_MS);
+  nxsig_usleep(BCMF_DEVICE_START_DELAY_MS * 1000);
 
   return OK;
 }
@@ -742,7 +743,7 @@ int bcmf_bus_sdio_initialize(FAR struct bcmf_dev_s *priv,
       goto exit_uninit_hw;
     }
 
-  up_mdelay(100);
+  nxsig_usleep(100 * 1000);
 
   sbus->ready = true;
 
@@ -875,7 +876,7 @@ int bcmf_sdio_thread(int argc, char **argv)
 
   /*  FIXME wait for the chip to be ready to receive commands */
 
-  up_mdelay(50);
+  nxsig_usleep(50 * 1000);
 
   while (sbus->ready)
     {
@@ -1008,7 +1009,7 @@ struct bcmf_sdio_frame *bcmf_sdio_allocate_frame(FAR struct bcmf_dev_s *priv,
           /* TODO use signaling semaphore */
 
           wlinfo("alloc failed %d\n", tx);
-          up_mdelay(100);
+          nxsig_usleep(100 * 1000);
           continue;
         }