OSDN Git Service

BTM_PM_REG_SET should imply BTM_PM_REG_NOTIF
authorHansong Zhang <hsz@google.com>
Sat, 23 Jan 2021 01:30:40 +0000 (17:30 -0800)
committerHansong Zhang <hsz@google.com>
Mon, 1 Feb 2021 18:57:25 +0000 (10:57 -0800)
From its only use case

Test: cert/run
Tag: #gd-refactor
Bug: 141555841
Change-Id: Ic464f1989b49b8b1be115aba8b62bca8d78c5cc0

bta/dm/bta_dm_pm.cc
stack/acl/btm_pm.cc
stack/include/btm_api_types.h

index ea64994..f9fb7aa 100644 (file)
@@ -87,8 +87,7 @@ void bta_dm_init_pm(void) {
   if (p_bta_dm_pm_cfg[0].app_id != 0) {
     bta_sys_pm_register(bta_dm_pm_cback);
 
-    BTM_PmRegister((BTM_PM_REG_SET | BTM_PM_REG_NOTIF), &bta_dm_cb.pm_id,
-                   bta_dm_pm_btm_cback);
+    BTM_PmRegister((BTM_PM_REG_SET), &bta_dm_cb.pm_id, bta_dm_pm_btm_cback);
   }
 
   /* Need to initialize all PM timer service IDs */
index 0316558..4eff816 100644 (file)
@@ -147,10 +147,8 @@ tBTM_STATUS BTM_PmRegister(uint8_t mask, uint8_t* p_pm_id,
     /* find an unused entry */
     if (pm_reg_db[xx].mask == BTM_PM_REC_NOT_USED) {
       /* if register for notification, should provide callback routine */
-      if (mask & BTM_PM_REG_NOTIF) {
-        if (p_cb == NULL) return BTM_ILLEGAL_VALUE;
-        pm_reg_db[xx].cback = p_cb;
-      }
+      if (p_cb == NULL) return BTM_ILLEGAL_VALUE;
+      pm_reg_db[xx].cback = p_cb;
       pm_reg_db[xx].mask = mask;
       *p_pm_id = xx;
       return BTM_SUCCESS;
@@ -377,7 +375,7 @@ void btm_pm_reset(void) {
 
   /* clear the pending request for application */
   if ((pm_pend_id != BTM_PM_SET_ONLY_ID) &&
-      (pm_reg_db[pm_pend_id].mask & BTM_PM_REG_NOTIF)) {
+      (pm_reg_db[pm_pend_id].mask & BTM_PM_REG_SET)) {
     cb = pm_reg_db[pm_pend_id].cback;
   }
 
@@ -665,7 +663,7 @@ void btm_pm_proc_cmd_status(tHCI_STATUS status) {
 
   /* notify the caller is appropriate */
   if ((pm_pend_id != BTM_PM_SET_ONLY_ID) &&
-      (pm_reg_db[pm_pend_id].mask & BTM_PM_REG_NOTIF)) {
+      (pm_reg_db[pm_pend_id].mask & BTM_PM_REG_SET)) {
     const RawAddress bd_addr = pm_mode_db[pm_pend_link].bda_;
     LOG_DEBUG("Notifying callback that link power mode is complete peer:%s",
               PRIVATE_ADDRESS(bd_addr));
@@ -752,7 +750,7 @@ void btm_pm_proc_mode_change(tHCI_STATUS hci_status, uint16_t hci_handle,
 
   /* notify registered parties */
   for (int yy = 0; yy < BTM_MAX_PM_RECORDS; yy++) {
-    if (pm_reg_db[yy].mask & BTM_PM_REG_NOTIF) {
+    if (pm_reg_db[yy].mask & BTM_PM_REG_SET) {
       (*pm_reg_db[yy].cback)(p_cb->bda_, mode, interval, hci_status);
     }
   }
@@ -792,7 +790,7 @@ void process_ssr_event(tHCI_STATUS status, uint16_t handle,
 
   int cnt = 0;
   for (int yy = 0; yy < BTM_MAX_PM_RECORDS; yy++) {
-    if (pm_reg_db[yy].mask & BTM_PM_REG_NOTIF) {
+    if (pm_reg_db[yy].mask & BTM_PM_REG_SET) {
       (*pm_reg_db[yy].cback)(bd_addr, BTM_PM_STS_SSR, (use_ssr) ? 1 : 0,
                              status);
       cnt++;
index 54ebb19..a9ae91c 100644 (file)
@@ -965,8 +965,6 @@ inline std::string power_mode_text(tBTM_PM_MODE mode) {
 typedef enum : uint8_t {
   /* The module wants to set the desired power mode */
   BTM_PM_REG_SET = (1u << 0),
-  /* The module wants to receive mode change event */
-  BTM_PM_REG_NOTIF = (1u << 1),
   /* The module does not want to involve with PM anymore */
   BTM_PM_DEREG = (1u << 2),
 } tBTM_PM_REGISTER;