diff --git a/helium/radio-helium.h b/helium/radio-helium.h
index eb6ea9b..d3dae68 100644
--- a/helium/radio-helium.h
+++ b/helium/radio-helium.h
@@ -134,6 +134,7 @@
 #define FM_AFJUMP_CONFG_MODE 0x42
 #define FM_SRCH_CNFG_LEN    0x08
 #define FM_AFJUMP_CNFG_LEN  0x06
+#define STD_BUF_SIZE  256
 
 /* HCI timeouts */
 #define RADIO_HCI_TIMEOUT   (10000) /* 10 seconds */
@@ -513,6 +514,10 @@
 #define HCI_EV_RADIO_TEXT_PLUS_TAG      0x19
 #define HCI_EV_HW_ERR_EVENT             0x1A
 
+/*HCI event opcode for fm driver RDS support*/
+#define HCI_EV_DRIVER_RDS_EVENT         0x1B
+#define HCI_EV_E_RADIO_TEXT             0x1C
+
 #define HCI_REQ_DONE      0
 #define HCI_REQ_PEND      1
 #define HCI_REQ_CANCELED  2
diff --git a/helium/radio_helium_hal.c b/helium/radio_helium_hal.c
index 79e69f5..e258bff 100644
--- a/helium/radio_helium_hal.c
+++ b/helium/radio_helium_hal.c
@@ -862,6 +862,50 @@
     }
 }
 
+static void hci_ev_driver_rds_event(uint8_t buff[])
+{
+    uint8_t rds_type;
+    char *rds_data = NULL;
+    rds_type = buff[0];
+
+    ALOGD("%s:%s:rds type = 0x%x", LOG_TAG, __func__, rds_type);
+    rds_data = malloc(STD_BUF_SIZE);
+    if (rds_data == NULL) {
+        ALOGE("%s:memory allocation failed\n", LOG_TAG);
+        return;
+    } else {
+        memcpy(rds_data, &buff[1],STD_BUF_SIZE);
+    }
+
+    switch (rds_type) {
+        case HCI_EV_RADIO_TEXT:
+            hal->jni_cb->rt_update_cb(rds_data);
+            break;
+
+        case HCI_EV_PROGRAM_SERVICE:
+            hal->jni_cb->ps_update_cb(rds_data);
+            break;
+
+        case HCI_EV_FM_AF_LIST:
+            hal->jni_cb->af_list_update_cb((uint16_t *)&rds_data);
+            break;
+
+        case HCI_EV_RADIO_TEXT_PLUS_TAG:
+            hal->jni_cb->rt_plus_update_cb(rds_data);
+            break;
+
+        case HCI_EV_E_RADIO_TEXT:
+            hal->jni_cb->ert_update_cb(rds_data);
+            break;
+
+        default:
+            ALOGD("%s: Unknown RDS event", __func__);
+            break;
+        }
+
+    free(rds_data);
+}
+
 static void hci_ev_ert()
 {
     char *data = NULL;
@@ -1075,6 +1119,9 @@
     case HCI_EV_EXT_COUNTRY_CODE:
         hci_ev_ext_country_code(((struct fm_event_header_t *)evt_buf)->params);
         break;
+    case HCI_EV_DRIVER_RDS_EVENT:
+        hci_ev_driver_rds_event(((struct fm_event_header_t *)evt_buf)->params);
+        break;
     case HCI_EV_HW_ERR_EVENT:
         hci_ev_hw_error();
         break;
