summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuanyuan Liu <yuanliu@codeaurora.org>2016-09-20 12:11:27 -0700
committerYuanyuan Liu <yuanliu@codeaurora.org>2016-09-20 12:18:34 -0700
commit2d44f9a775acc3ba5f478e336b93e73c3bfb33a2 (patch)
treeb795a50c01951386b21d78105153e966e9ec658c
parent4b91c1a0f78b6b4071e66c9a5879a784cedd6693 (diff)
icnss: Provide ICNSS support of reading SOC serial number
Provide support of reading SOC serial number. This will be used for auto-generate WLAN MAC address. CRs-Fixed: 1069005 Change-Id: Ie2072768b2fab3bcbdc70798897ca66614ee8a06 Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
-rw-r--r--drivers/soc/qcom/icnss.c7
-rw-r--r--include/soc/qcom/icnss.h1
2 files changed, 8 insertions, 0 deletions
diff --git a/drivers/soc/qcom/icnss.c b/drivers/soc/qcom/icnss.c
index 232ee28318e7..32b1d26d187b 100644
--- a/drivers/soc/qcom/icnss.c
+++ b/drivers/soc/qcom/icnss.c
@@ -43,6 +43,7 @@
#include <soc/qcom/subsystem_notif.h>
#include <soc/qcom/service-locator.h>
#include <soc/qcom/service-notifier.h>
+#include <soc/qcom/socinfo.h>
#include "wlan_firmware_service_v01.h"
@@ -3284,6 +3285,12 @@ int icnss_smmu_map(struct device *dev,
}
EXPORT_SYMBOL(icnss_smmu_map);
+unsigned int icnss_socinfo_get_serial_number(struct device *dev)
+{
+ return socinfo_get_serial_number();
+}
+EXPORT_SYMBOL(icnss_socinfo_get_serial_number);
+
static int icnss_bw_vote(struct icnss_priv *priv, int index)
{
int ret = 0;
diff --git a/include/soc/qcom/icnss.h b/include/soc/qcom/icnss.h
index efc5425cf17d..8704b2e7cfbc 100644
--- a/include/soc/qcom/icnss.h
+++ b/include/soc/qcom/icnss.h
@@ -119,6 +119,7 @@ extern int icnss_power_off(struct device *dev);
extern struct dma_iommu_mapping *icnss_smmu_get_mapping(struct device *dev);
extern int icnss_smmu_map(struct device *dev, phys_addr_t paddr,
uint32_t *iova_addr, size_t size);
+extern unsigned int icnss_socinfo_get_serial_number(struct device *dev);
extern int icnss_set_wlan_unsafe_channel(u16 *unsafe_ch_list, u16 ch_count);
extern int icnss_get_wlan_unsafe_channel(u16 *unsafe_ch_list, u16 *ch_count,
u16 buf_len);