diff options
Diffstat (limited to 'bcmdhd')
-rw-r--r-- | bcmdhd/dhdutil/Android.mk | 1 | ||||
-rw-r--r-- | bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin | bin | 326786 -> 326978 bytes | |||
-rw-r--r-- | bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin | bin | 298379 -> 298555 bytes | |||
-rw-r--r-- | bcmdhd/firmware/bcm4375/device-bcm.mk | 26 | ||||
-rwxr-xr-x | bcmdhd/firmware/bcm4375/fw_bcm4375.bin | bin | 0 -> 1357249 bytes | |||
-rwxr-xr-x | bcmdhd/firmware/bcm4375/fw_bcm4375_ap.bin | bin | 0 -> 1357249 bytes | |||
-rw-r--r-- | bcmdhd/wifi_hal/Android.mk | 12 | ||||
-rw-r--r-- | bcmdhd/wifi_hal/common.cpp | 18 | ||||
-rw-r--r-- | bcmdhd/wifi_hal/common.h | 19 | ||||
-rw-r--r-- | bcmdhd/wifi_hal/cpp_bindings.cpp | 17 | ||||
-rw-r--r-- | bcmdhd/wifi_hal/cpp_bindings.h | 17 | ||||
-rw-r--r-- | bcmdhd/wifi_hal/gscan.cpp | 19 | ||||
-rw-r--r-- | bcmdhd/wifi_hal/link_layer_stats.cpp | 19 | ||||
-rw-r--r-- | bcmdhd/wifi_hal/rtt.cpp | 20 | ||||
-rw-r--r-- | bcmdhd/wifi_hal/sync.h | 17 | ||||
-rw-r--r-- | bcmdhd/wifi_hal/wifi_hal.cpp | 47 | ||||
-rw-r--r-- | bcmdhd/wifi_hal/wifi_logger.cpp | 18 | ||||
-rw-r--r-- | bcmdhd/wifi_hal/wifi_offload.cpp | 18 | ||||
-rw-r--r-- | bcmdhd/wpa_supplicant_8_lib/Android.mk | 3 |
19 files changed, 265 insertions, 6 deletions
diff --git a/bcmdhd/dhdutil/Android.mk b/bcmdhd/dhdutil/Android.mk index 4294413..c3a5614 100644 --- a/bcmdhd/dhdutil/Android.mk +++ b/bcmdhd/dhdutil/Android.mk @@ -30,6 +30,7 @@ LOCAL_CFLAGS := -DSDTEST -DTARGETENV_android -Dlinux -DLINUX ifeq ($(TARGET_ARCH),arm) LOCAL_CFLAGS += -mabi=aapcs-linux endif +LOCAL_CFLAGS += -Wall -Werror -Wno-unused-parameter LOCAL_C_INCLUDES +=$(LOCAL_PATH)/include LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES) diff --git a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin Binary files differindex 66bb44a..5755dfc 100644 --- a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin +++ b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1.bin diff --git a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin Binary files differindex c41fbb9..df7fe71 100644 --- a/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin +++ b/bcmdhd/firmware/bcm4343/fw_bcm4343_a1_apsta.bin diff --git a/bcmdhd/firmware/bcm4375/device-bcm.mk b/bcmdhd/firmware/bcm4375/device-bcm.mk new file mode 100644 index 0000000..709f3aa --- /dev/null +++ b/bcmdhd/firmware/bcm4375/device-bcm.mk @@ -0,0 +1,26 @@ +# +# Copyright (C) 2008 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +######################## +-include hardware/broadcom/wlan/bcmdhd/config/config-bcm.mk + +BCM_FW_SRC_FILE_STA := fw_bcm4375.bin +BCM_FW_SRC_FILE_AP := fw_bcm4375_ap.bin + +PRODUCT_COPY_FILES += \ + hardware/broadcom/wlan/bcmdhd/firmware/bcm4375/$(BCM_FW_SRC_FILE_STA):$(TARGET_COPY_OUT_VENDOR)/firmware/fw_bcmdhd.bin \ + hardware/broadcom/wlan/bcmdhd/firmware/bcm4375/$(BCM_FW_SRC_FILE_AP):$(TARGET_COPY_OUT_VENDOR)/firmware/fw_bcmdhd_apsta.bin +######################## diff --git a/bcmdhd/firmware/bcm4375/fw_bcm4375.bin b/bcmdhd/firmware/bcm4375/fw_bcm4375.bin Binary files differnew file mode 100755 index 0000000..b1a033d --- /dev/null +++ b/bcmdhd/firmware/bcm4375/fw_bcm4375.bin diff --git a/bcmdhd/firmware/bcm4375/fw_bcm4375_ap.bin b/bcmdhd/firmware/bcm4375/fw_bcm4375_ap.bin Binary files differnew file mode 100755 index 0000000..b1a033d --- /dev/null +++ b/bcmdhd/firmware/bcm4375/fw_bcm4375_ap.bin diff --git a/bcmdhd/wifi_hal/Android.mk b/bcmdhd/wifi_hal/Android.mk index 9e4ed08..b4fe46e 100644 --- a/bcmdhd/wifi_hal/Android.mk +++ b/bcmdhd/wifi_hal/Android.mk @@ -18,13 +18,23 @@ LOCAL_PATH := $(call my-dir) # ============================================================ include $(CLEAR_VARS) -LOCAL_CFLAGS := -Wno-unused-parameter +LOCAL_CFLAGS := \ + -Wall \ + -Werror \ + -Wno-format \ + -Wno-reorder \ + -Wno-unused-function \ + -Wno-unused-parameter \ + -Wno-unused-private-field \ + -Wno-unused-variable \ LOCAL_C_INCLUDES += \ external/libnl/include \ $(call include-path-for, libhardware_legacy)/hardware_legacy \ external/wpa_supplicant_8/src/drivers +LOCAL_HEADER_LIBRARIES := libutils_headers liblog_headers + LOCAL_SRC_FILES := \ wifi_hal.cpp \ rtt.cpp \ diff --git a/bcmdhd/wifi_hal/common.cpp b/bcmdhd/wifi_hal/common.cpp index 69ed256..3540d49 100644 --- a/bcmdhd/wifi_hal/common.cpp +++ b/bcmdhd/wifi_hal/common.cpp @@ -1,3 +1,21 @@ +/* + * Copyright (C) 2017 The Android Open Source Project + * + * Portions copyright (C) 2017 Broadcom Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + #include <stdint.h> #include <fcntl.h> #include <sys/socket.h> diff --git a/bcmdhd/wifi_hal/common.h b/bcmdhd/wifi_hal/common.h index 2967c97..28e2156 100644 --- a/bcmdhd/wifi_hal/common.h +++ b/bcmdhd/wifi_hal/common.h @@ -1,3 +1,20 @@ +/* + * Copyright (C) 2017 The Android Open Source Project + * + * Portions copyright (C) 2017 Broadcom Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ #include "wifi_hal.h" @@ -6,7 +23,7 @@ #define LOG_TAG "WifiHAL" -#include <utils/Log.h> +#include <log/log.h> #include "nl80211_copy.h" #include "sync.h" diff --git a/bcmdhd/wifi_hal/cpp_bindings.cpp b/bcmdhd/wifi_hal/cpp_bindings.cpp index 399199d..0ac4c08 100644 --- a/bcmdhd/wifi_hal/cpp_bindings.cpp +++ b/bcmdhd/wifi_hal/cpp_bindings.cpp @@ -1,3 +1,20 @@ +/* + * Copyright (C) 2017 The Android Open Source Project + * + * Portions copyright (C) 2017 Broadcom Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ #include <stdint.h> #include <fcntl.h> diff --git a/bcmdhd/wifi_hal/cpp_bindings.h b/bcmdhd/wifi_hal/cpp_bindings.h index 250976e..2c1aa05 100644 --- a/bcmdhd/wifi_hal/cpp_bindings.h +++ b/bcmdhd/wifi_hal/cpp_bindings.h @@ -1,3 +1,20 @@ +/* + * Copyright (C) 2017 The Android Open Source Project + * + * Portions copyright (C) 2017 Broadcom Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ #include "wifi_hal.h" #include "common.h" diff --git a/bcmdhd/wifi_hal/gscan.cpp b/bcmdhd/wifi_hal/gscan.cpp index d3dc0e7..1ccaf30 100644 --- a/bcmdhd/wifi_hal/gscan.cpp +++ b/bcmdhd/wifi_hal/gscan.cpp @@ -1,3 +1,20 @@ +/* + * Copyright (C) 2017 The Android Open Source Project + * + * Portions copyright (C) 2017 Broadcom Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ #include <stdint.h> #include <fcntl.h> @@ -21,7 +38,7 @@ #define LOG_TAG "WifiHAL" //#define LOG_NDEBUG 0 //uncomment to enable verbose logging -#include <utils/Log.h> +#include <log/log.h> #include "wifi_hal.h" #include "common.h" diff --git a/bcmdhd/wifi_hal/link_layer_stats.cpp b/bcmdhd/wifi_hal/link_layer_stats.cpp index f6d6ab5..42e3f2f 100644 --- a/bcmdhd/wifi_hal/link_layer_stats.cpp +++ b/bcmdhd/wifi_hal/link_layer_stats.cpp @@ -1,3 +1,20 @@ +/* + * Copyright (C) 2017 The Android Open Source Project + * + * Portions copyright (C) 2017 Broadcom Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ #include <stdint.h> #include <fcntl.h> @@ -20,7 +37,7 @@ #define LOG_TAG "WifiHAL" -#include <utils/Log.h> +#include <log/log.h> #include "wifi_hal.h" #include "common.h" diff --git a/bcmdhd/wifi_hal/rtt.cpp b/bcmdhd/wifi_hal/rtt.cpp index cc46a8d..81eb17f 100644 --- a/bcmdhd/wifi_hal/rtt.cpp +++ b/bcmdhd/wifi_hal/rtt.cpp @@ -1,3 +1,21 @@ +/* + * Copyright (C) 2017 The Android Open Source Project + * + * Portions copyright (C) 2017 Broadcom Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + #include <stdint.h> #include <fcntl.h> #include <sys/socket.h> @@ -22,7 +40,7 @@ #define LOG_TAG "WifiHAL" -#include <utils/Log.h> +#include <log/log.h> #include <utils/String8.h> #include "wifi_hal.h" diff --git a/bcmdhd/wifi_hal/sync.h b/bcmdhd/wifi_hal/sync.h index cea2ea9..64f8d39 100644 --- a/bcmdhd/wifi_hal/sync.h +++ b/bcmdhd/wifi_hal/sync.h @@ -1,3 +1,20 @@ +/* + * Copyright (C) 2017 The Android Open Source Project + * + * Portions copyright (C) 2017 Broadcom Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ #include <pthread.h> diff --git a/bcmdhd/wifi_hal/wifi_hal.cpp b/bcmdhd/wifi_hal/wifi_hal.cpp index db6f87c..81cad8a 100644 --- a/bcmdhd/wifi_hal/wifi_hal.cpp +++ b/bcmdhd/wifi_hal/wifi_hal.cpp @@ -1,3 +1,21 @@ +/* + * Copyright (C) 2017 The Android Open Source Project + * + * Portions copyright (C) 2017 Broadcom Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + #include <stdint.h> #include <fcntl.h> #include <sys/socket.h> @@ -25,7 +43,7 @@ #define LOG_TAG "WifiHAL" -#include <utils/Log.h> +#include <log/log.h> #include "wifi_hal.h" #include "common.h" @@ -42,6 +60,13 @@ #define WIFI_HAL_CMD_SOCK_PORT 644 #define WIFI_HAL_EVENT_SOCK_PORT 645 +/* + * Defines for wifi_wait_for_driver_ready() + * Specify durations between polls and max wait time + */ +#define POLL_DRIVER_DURATION_US (100000) +#define POLL_DRIVER_MAX_TIME_MS (10000) + static void internal_event_handler(wifi_handle handle, int events); static int internal_no_seq_check(nl_msg *msg, void *arg); static int internal_valid_message_handler(nl_msg *msg, void *arg); @@ -133,6 +158,7 @@ wifi_error init_wifi_vendor_hal_func_table(wifi_hal_fn *fn) return WIFI_ERROR_UNKNOWN; } fn->wifi_initialize = wifi_initialize; + fn->wifi_wait_for_driver_ready = wifi_wait_for_driver_ready; fn->wifi_cleanup = wifi_cleanup; fn->wifi_event_loop = wifi_event_loop; fn->wifi_get_supported_feature_set = wifi_get_supported_feature_set; @@ -288,6 +314,25 @@ wifi_error wifi_initialize(wifi_handle *handle) return WIFI_SUCCESS; } +wifi_error wifi_wait_for_driver_ready(void) +{ + // This function will wait to make sure basic client netdev is created + // Function times out after 10 seconds + int count = (POLL_DRIVER_MAX_TIME_MS * 1000) / POLL_DRIVER_DURATION_US; + FILE *fd; + + do { + if ((fd = fopen("/sys/class/net/wlan0", "r")) != NULL) { + fclose(fd); + return WIFI_SUCCESS; + } + usleep(POLL_DRIVER_DURATION_US); + } while(--count > 0); + + ALOGE("Timed out waiting on Driver ready ... "); + return WIFI_ERROR_TIMED_OUT; +} + static int wifi_add_membership(wifi_handle handle, const char *group) { hal_info *info = getHalInfo(handle); diff --git a/bcmdhd/wifi_hal/wifi_logger.cpp b/bcmdhd/wifi_hal/wifi_logger.cpp index 6924017..7a38883 100644 --- a/bcmdhd/wifi_hal/wifi_logger.cpp +++ b/bcmdhd/wifi_hal/wifi_logger.cpp @@ -1,3 +1,21 @@ +/* + * Copyright (C) 2017 The Android Open Source Project + * + * Portions copyright (C) 2017 Broadcom Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + #include <stdint.h> #include <fcntl.h> #include <sys/socket.h> diff --git a/bcmdhd/wifi_hal/wifi_offload.cpp b/bcmdhd/wifi_hal/wifi_offload.cpp index 52891c7..9ef1912 100644 --- a/bcmdhd/wifi_hal/wifi_offload.cpp +++ b/bcmdhd/wifi_hal/wifi_offload.cpp @@ -1,3 +1,21 @@ +/* + * Copyright (C) 2017 The Android Open Source Project + * + * Portions copyright (C) 2017 Broadcom Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + #include <stdint.h> #include <fcntl.h> #include <sys/socket.h> diff --git a/bcmdhd/wpa_supplicant_8_lib/Android.mk b/bcmdhd/wpa_supplicant_8_lib/Android.mk index c1d3c34..518f0ca 100644 --- a/bcmdhd/wpa_supplicant_8_lib/Android.mk +++ b/bcmdhd/wpa_supplicant_8_lib/Android.mk @@ -60,6 +60,8 @@ ifeq ($(TARGET_USES_64_BIT_BCMDHD),true) L_CFLAGS += -DBCMDHD_64_BIT_IPC endif +L_CFLAGS += -Wall -Werror -Wno-unused-parameter -Wno-macro-redefined + ######################## include $(CLEAR_VARS) @@ -68,6 +70,7 @@ LOCAL_SHARED_LIBRARIES := libc libcutils LOCAL_CFLAGS := $(L_CFLAGS) LOCAL_SRC_FILES := $(WPA_SRC_FILE) LOCAL_C_INCLUDES := $(WPA_SUPPL_DIR_INCLUDE) +LOCAL_VENDOR_MODULE := true include $(BUILD_STATIC_LIBRARY) ######################## |