aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuK1337 <priv.luk@gmail.com>2018-03-21 15:20:31 +0100
committerLuK1337 <priv.luk@gmail.com>2018-03-21 15:25:42 +0100
commit5f82e113dd69bf3be8f0052ae8675e371c8301d8 (patch)
tree5047bba1d695e8c9e2b226007d72859af93d72df
parent07d59f8b97e972ce0a98d7c6176efe4d61a0a38f (diff)
Add support for mirrored mac addresses
* Some devices got shipped with mirrored BT and WiFi addresses in TA.
-rw-r--r--Android.mk4
-rw-r--r--macaddrsetup.c8
2 files changed, 12 insertions, 0 deletions
diff --git a/Android.mk b/Android.mk
index 87860f8..2b63e38 100644
--- a/Android.mk
+++ b/Android.mk
@@ -11,6 +11,10 @@ ifeq ($(WIFI_DRIVER_BUILT),qca_cld3)
LOCAL_CFLAGS += -DQCA_CLD3_WIFI
endif
+ifeq ($(BOARD_HAS_MIRROR_MACADDRESS),true)
+LOCAL_CFLAGS += -DMIRROR_MAC_ADDRESS
+endif
+
LOCAL_SHARED_LIBRARIES := \
liblog \
libcutils
diff --git a/macaddrsetup.c b/macaddrsetup.c
index ca48c40..31e9278 100644
--- a/macaddrsetup.c
+++ b/macaddrsetup.c
@@ -82,7 +82,11 @@ int main(int argc, char **argv)
exit(1);
}
+#ifdef MIRROR_MAC_ADDRESS
+ ret = fprintf(fpb, "%02x:%02x:%02x:%02x:%02x:%02x\n", buf[0], buf[1], buf[2], buf[3], buf[4], buf[5]);
+#else
ret = fprintf(fpb, "%02x:%02x:%02x:%02x:%02x:%02x\n", buf[5], buf[4], buf[3], buf[2], buf[1], buf[0]);
+#endif
if (ret != 18) {
SLOGE("failed to write BT mac address\n");
ta_close();
@@ -115,7 +119,11 @@ int main(int argc, char **argv)
}
#ifdef QCA_CLD3_WIFI
+#ifdef MIRROR_MAC_ADDRESS
+ ret = fprintf(fpw, "Intf0MacAddress=%02X%02X%02X%02X%02X%02X\nEND\n", buf[0], buf[1], buf[2], buf[3], buf[4], buf[5]);
+#else
ret = fprintf(fpw, "Intf0MacAddress=%02X%02X%02X%02X%02X%02X\nEND\n", buf[5], buf[4], buf[3], buf[2], buf[1], buf[0]);
+#endif
if (ret != 33) {
#else
ret = fprintf(fpw, "%02x:%02x:%02x:%02x:%02x:%02x\n", buf[5], buf[4], buf[3], buf[2], buf[1], buf[0]);