Compare commits
10 commits
4218ce9996
...
8086b4e7c0
Author | SHA1 | Date | |
---|---|---|---|
8086b4e7c0 | |||
386815debe | |||
aaf36b2803 | |||
a4195b3e8b | |||
b3cfd33cd4 | |||
6059e0c826 | |||
a1e16881b9 | |||
a5699f57b3 | |||
5824aa28ce | |||
437ee1b02a |
|
@ -4,12 +4,12 @@
|
|||
#
|
||||
|
||||
#
|
||||
# Compiler: Android (6443078 based on r383902) clang version 11.0.1 (https://android.googlesource.com/toolchain/llvm-project b397f81060ce6d701042b782172ed13bee898b79)
|
||||
# Compiler: Android (10087095, +pgo, +bolt, +lto, -mlgo, based on r487747c) clang version 17.0.2 (https://android.googlesource.com/toolchain/llvm-project d9f89f4d16663d5012e5c09495f3b30ece3d2362)
|
||||
#
|
||||
CONFIG_GCC_VERSION=0
|
||||
CONFIG_CC_IS_CLANG=y
|
||||
CONFIG_LD_IS_LLD=y
|
||||
CONFIG_CLANG_VERSION=110001
|
||||
CONFIG_CLANG_VERSION=170002
|
||||
CONFIG_CC_HAS_ASM_GOTO=y
|
||||
CONFIG_TOOLS_SUPPORT_RELR=y
|
||||
CONFIG_IRQ_WORK=y
|
||||
|
@ -448,12 +448,7 @@ CONFIG_KUSER_HELPERS=y
|
|||
#
|
||||
# Hypervisor
|
||||
#
|
||||
CONFIG_UH=y
|
||||
CONFIG_UH_DEBUG=y
|
||||
CONFIG_RKP=y
|
||||
CONFIG_KDP=y
|
||||
CONFIG_KDP_CRED=y
|
||||
CONFIG_KDP_NS=y
|
||||
# CONFIG_UH is not set
|
||||
|
||||
#
|
||||
# Power management options
|
||||
|
@ -1887,9 +1882,9 @@ CONFIG_MTK_COMBO_CHIP_CONSYS_6877=y
|
|||
CONFIG_MTK_COMBO_CHIP="CONSYS_6877"
|
||||
CONFIG_MTK_COMBO_PLAT_PATH=""
|
||||
# CONFIG_MTK_COMBO_COMM is not set
|
||||
# CONFIG_MTK_COMBO_BT is not set
|
||||
CONFIG_MTK_COMBO_BT=y
|
||||
# CONFIG_MTK_COMBO_ANT is not set
|
||||
# CONFIG_MTK_COMBO_BT_HCI is not set
|
||||
CONFIG_MTK_COMBO_BT_HCI=y
|
||||
CONFIG_MTK_COMBO_GPS=y
|
||||
CONFIG_MTK_COMBO_WIFI=y
|
||||
# CONFIG_MTK_PASSPOINT_R1_SUPPORT is not set
|
||||
|
@ -1905,8 +1900,10 @@ CONFIG_MTK_FMRADIO=y
|
|||
CONFIG_MTK_FM_CHIP="MT6635_FM"
|
||||
# CONFIG_MTK_FM_50KHZ_SUPPORT is not set
|
||||
# CONFIG_MTK_MERGE_INTERFACE_SUPPORT is not set
|
||||
CONFIG_MTK_CONNFEM=y
|
||||
# CONFIG_MTK_CONN_MT3337_CHIP_SUPPORT is not set
|
||||
CONFIG_MTK_CONNSYS_DEDICATED_LOG_PATH=y
|
||||
CONFIG_WLAN_DRV_BUILD_IN=y
|
||||
CONFIG_MTK_CONN_MD=y
|
||||
# CONFIG_NFC_CHIP_SUPPORT is not set
|
||||
CONFIG_MTK_NFC_CLKBUF_ENABLE=y
|
||||
|
@ -5310,7 +5307,6 @@ CONFIG_SEC_VIBRATOR=y
|
|||
# Samsung STI Options
|
||||
#
|
||||
CONFIG_SEC_STI=y
|
||||
CONFIG_SEC_AUTO_INPUT=y
|
||||
CONFIG_SEC_INPUT_BOOSTER=y
|
||||
# CONFIG_SEC_INPUT_BOOSTER_MODE is not set
|
||||
# CONFIG_SEC_INPUT_BOOSTER_QC is not set
|
||||
|
@ -5758,6 +5754,8 @@ CONFIG_SECURITY_SELINUX=y
|
|||
# CONFIG_SECURITY_SELINUX_BOOTPARAM is not set
|
||||
# CONFIG_SECURITY_SELINUX_DISABLE is not set
|
||||
CONFIG_SECURITY_SELINUX_DEVELOP=y
|
||||
# CONFIG_SECURITY_SELINUX_ALWAYS_ENFORCE is not set
|
||||
CONFIG_SECURITY_SELINUX_ALWAYS_PERMISSIVE=y
|
||||
CONFIG_SECURITY_SELINUX_AVC_STATS=y
|
||||
CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=0
|
||||
CONFIG_SECURITY_SELINUX_SIDTAB_HASH_BITS=9
|
||||
|
@ -5785,34 +5783,14 @@ CONFIG_DEFAULT_SECURITY="selinux"
|
|||
# Memory initialization
|
||||
#
|
||||
CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
|
||||
CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
|
||||
CONFIG_INIT_STACK_NONE=y
|
||||
# CONFIG_INIT_STACK_ALL_PATTERN is not set
|
||||
# CONFIG_INIT_STACK_ALL_ZERO is not set
|
||||
# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
|
||||
# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
|
||||
CONFIG_SECURITY_DEFEX=y
|
||||
# CONFIG_DEFEX_KERNEL_ONLY is not set
|
||||
# CONFIG_SECURITY_DEFEX_USER is not set
|
||||
CONFIG_PROCA=y
|
||||
# CONFIG_PROCA_GKI_10 is not set
|
||||
CONFIG_PROCA_S_OS=y
|
||||
CONFIG_GAF=y
|
||||
# CONFIG_GAF_V3 is not set
|
||||
# CONFIG_GAF_V4 is not set
|
||||
# CONFIG_GAF_V5 is not set
|
||||
CONFIG_GAF_V6=y
|
||||
CONFIG_SECURITY_DSMS=y
|
||||
CONFIG_FIVE=y
|
||||
# CONFIG_FIVE_GKI_10 is not set
|
||||
# CONFIG_FIVE_GKI_20 is not set
|
||||
# CONFIG_FIVE_DEBUG is not set
|
||||
CONFIG_FIVE_CERT_USER="x509_five_user.der"
|
||||
CONFIG_FIVE_DEFAULT_HASH_SHA1=y
|
||||
# CONFIG_FIVE_DEFAULT_HASH_SHA256 is not set
|
||||
# CONFIG_FIVE_DEFAULT_HASH_SHA512 is not set
|
||||
CONFIG_FIVE_DEFAULT_HASH="sha1"
|
||||
CONFIG_FIVE_TRUSTED_KEYRING=y
|
||||
# CONFIG_SECURITY_DEFEX is not set
|
||||
# CONFIG_GAF is not set
|
||||
# CONFIG_SECURITY_DSMS is not set
|
||||
# CONFIG_FIVE is not set
|
||||
CONFIG_CRYPTO=y
|
||||
|
||||
#
|
||||
|
|
10
build_kernel.sh
Normal file → Executable file
10
build_kernel.sh
Normal file → Executable file
|
@ -1,11 +1,13 @@
|
|||
#!/bin/bash
|
||||
|
||||
export PATH=$(pwd)/toolchain/clang/host/linux-x86/clang-r383902/bin:$PATH
|
||||
export CROSS_COMPILE=$(pwd)/toolchain/clang/host/linux-x86/clang-r383902/bin/aarch64-linux-gnu-
|
||||
export CC=$(pwd)/toolchain/clang/host/linux-x86/clang-r383902/bin/clang
|
||||
export PATH=$(pwd)/toolchain/clang/host/linux-x86/clang-r487747c/bin:$PATH
|
||||
export CROSS_COMPILE=$(pwd)/toolchain/clang/host/linux-x86/clang-r487747c/bin/aarch64-linux-gnu-
|
||||
export CC=$(pwd)/toolchain/clang/host/linux-x86/clang-r487747c/bin/clang
|
||||
export CLANG_TRIPLE=aarch64-linux-gnu-
|
||||
export ARCH=arm64
|
||||
export PLATFORM_VERSION=12
|
||||
export PLATFORM_VERSION=14
|
||||
export TARGET_SOC=mt6877
|
||||
export TARGET_BUILD_VARIANT=user
|
||||
|
||||
export KCFLAGS=-w
|
||||
export CONFIG_SECTION_MISMATCH_WARN_ONLY=y
|
||||
|
|
|
@ -457,3 +457,11 @@ config MTK_CONNSYS_DEDICATED_LOG_PATH
|
|||
from connsys (by EMI or other specific path)
|
||||
2. The scope may include (but not limited) Wi-Fi firmware log,
|
||||
BT firmware log, GPS firmware log etc.
|
||||
|
||||
config WLAN_DRV_BUILD_IN
|
||||
bool "Build Wlan module in kernel"
|
||||
help
|
||||
This will build the wlan driver and the corresponding componenets
|
||||
into the kernel.
|
||||
If unsure say n
|
||||
|
||||
|
|
|
@ -129,7 +129,7 @@ ccflags-y += -Werror
|
|||
|
||||
$(MOD_NAME)-objs := $(CFILES:.c=.o)
|
||||
|
||||
obj-m += $(MOD_NAME).o
|
||||
obj-y += $(MOD_NAME).o
|
||||
|
||||
ifneq ($(TARGET_BUILD_VARIANT), user)
|
||||
ccflags-y += -DBTMTK_DEBUG_SOP
|
||||
|
|
|
@ -71,7 +71,7 @@ ccflags-y += -I$(src)/include/ -I$(src)/
|
|||
|
||||
$(MOD_NAME)-objs := $(CFILES:.c=.o)
|
||||
|
||||
obj-m += $(MOD_NAME).o
|
||||
obj-y += $(MOD_NAME).o
|
||||
|
||||
|
||||
#VPATH = /opt/toolchains/gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux
|
||||
|
|
|
@ -18,16 +18,6 @@ endif
|
|||
# Force build fail on modpost warning
|
||||
KBUILD_MODPOST_FAIL_ON_WARNINGS := y
|
||||
|
||||
# platform
|
||||
|
||||
ifeq ($(CONFIG_WLAN_DRV_BUILD_IN),y)
|
||||
$(info build-in mode!)
|
||||
$(info _MTK_BT_CHIP = $(_MTK_BT_CHIP))
|
||||
# _MTK_BT_CHIP comes from conninfra setting
|
||||
BT_PLATFORM = $(patsubst MTK_CONSYS_MT%,%,$(strip $(_MTK_BT_CHIP)))
|
||||
endif
|
||||
|
||||
|
||||
$(info $(LOG_TAG) TARGET_BUILD_VARIANT = $(TARGET_BUILD_VARIANT))
|
||||
ifeq ("$(TARGET_BUILD_VARIANT)","user")
|
||||
ccflags-y += -D FW_LOG_DEFAULT_ON=0
|
||||
|
|
|
@ -4137,8 +4137,10 @@ void __exit main_driver_exit(void)
|
|||
main_exit();
|
||||
}
|
||||
|
||||
#ifndef MTK_WCN_REMOVE_KERNEL_MODULE
|
||||
module_init(main_driver_init);
|
||||
module_exit(main_driver_exit);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Module Common Information
|
||||
|
|
|
@ -42,7 +42,7 @@ ccflags-y += -I$(KO_CODE_PATH)/include
|
|||
# ConnFem Module
|
||||
###############################################################################
|
||||
MODULE_NAME := connfem
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
$(MODULE_NAME)-objs += connfem_module.o
|
||||
$(MODULE_NAME)-objs += connfem_api.o
|
||||
|
|
|
@ -40,7 +40,7 @@ ccflags-y += -I$(src)/include
|
|||
# ConnFem Module
|
||||
###############################################################################
|
||||
MODULE_NAME := connfem
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
$(MODULE_NAME)-objs += connfem_module.o
|
||||
$(MODULE_NAME)-objs += connfem_api.o
|
||||
|
|
|
@ -74,7 +74,7 @@
|
|||
*/
|
||||
|
||||
struct work_struct rst_worker;
|
||||
struct msg_thread_ctx g_ctx;
|
||||
struct msg_thread_ctx g_evt_ctx;
|
||||
|
||||
typedef enum {
|
||||
INFRA_TEST_OPID_1 = 0,
|
||||
|
@ -108,10 +108,10 @@ int opfunc_test_2(struct msg_op_data *op)
|
|||
|
||||
static void msg_thrd_handler(struct work_struct *work)
|
||||
{
|
||||
msg_thread_send_1(&g_ctx, INFRA_TEST_OPID_2, 2011);
|
||||
msg_thread_send_1(&g_evt_ctx, INFRA_TEST_OPID_2, 2011);
|
||||
osal_sleep_ms(5);
|
||||
msg_thread_send_wait_1(&g_ctx, INFRA_TEST_OPID_2, 0, 2022);
|
||||
msg_thread_send_wait_1(&g_ctx, INFRA_TEST_OPID_2, 0, 2033);
|
||||
msg_thread_send_wait_1(&g_evt_ctx, INFRA_TEST_OPID_2, 0, 2022);
|
||||
msg_thread_send_wait_1(&g_evt_ctx, INFRA_TEST_OPID_2, 0, 2033);
|
||||
}
|
||||
|
||||
int msg_evt_test(void)
|
||||
|
@ -120,7 +120,7 @@ int msg_evt_test(void)
|
|||
|
||||
INIT_WORK(&rst_worker, msg_thrd_handler);
|
||||
|
||||
ret = msg_thread_init(&g_ctx, "TestThread",
|
||||
ret = msg_thread_init(&g_evt_ctx, "TestThread",
|
||||
test_op_func, INFRA_TEST_OPID_MAX);
|
||||
if (ret) {
|
||||
pr_err("inti msg_thread fail ret=[%d]\n", ret);
|
||||
|
@ -129,20 +129,20 @@ int msg_evt_test(void)
|
|||
|
||||
schedule_work(&rst_worker);
|
||||
|
||||
msg_thread_send_wait_1(&g_ctx, INFRA_TEST_OPID_2, 0, 1011);
|
||||
msg_thread_send_wait_1(&g_evt_ctx, INFRA_TEST_OPID_2, 0, 1011);
|
||||
//osal_sleep_ms(10);
|
||||
msg_thread_send_1(&g_ctx, INFRA_TEST_OPID_2, 1022);
|
||||
msg_thread_send_1(&g_evt_ctx, INFRA_TEST_OPID_2, 1022);
|
||||
osal_sleep_ms(10);
|
||||
msg_thread_send_wait_1(&g_ctx, INFRA_TEST_OPID_2, 0, 1033);
|
||||
msg_thread_send_wait_1(&g_evt_ctx, INFRA_TEST_OPID_2, 0, 1033);
|
||||
|
||||
osal_sleep_ms(1000);
|
||||
|
||||
pr_info("<<<<<>>>>>>> freeOpq=[%u][%u] ActiveQ=[%u][%u]",
|
||||
g_ctx.free_op_q.write, g_ctx.free_op_q.read,
|
||||
g_ctx.active_op_q.write, g_ctx.active_op_q.read);
|
||||
g_evt_ctx.free_op_q.write, g_evt_ctx.free_op_q.read,
|
||||
g_evt_ctx.active_op_q.write, g_evt_ctx.active_op_q.read);
|
||||
osal_sleep_ms(500);
|
||||
|
||||
ret = msg_thread_deinit(&g_ctx);
|
||||
ret = msg_thread_deinit(&g_evt_ctx);
|
||||
pr_info("[%s] msg_thread_deinit\n", __func__);
|
||||
|
||||
pr_info("[%s] test PASS\n", __func__);
|
||||
|
|
|
@ -52,7 +52,7 @@ endif
|
|||
# Makefile generated by Mediatek
|
||||
# fm support
|
||||
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
ifeq ($(CFG_FM_CHIP),)
|
||||
FM_CHIP := mt6631_6635
|
||||
|
|
|
@ -66,7 +66,7 @@ ccflags-y += -I$(srctree)/drivers/devfreq
|
|||
###############################################################################
|
||||
|
||||
MODULE_NAME := gps_drv
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-o += $(MODULE_NAME).o
|
||||
|
||||
GPS_DRV_CONTROL_LNA := n
|
||||
GPS_DL_SUPPORT := n
|
||||
|
|
|
@ -14,11 +14,6 @@
|
|||
$(warning build in gps_dl)
|
||||
ifeq ($(CONFIG_MTK_GPS_SUPPORT), y)
|
||||
|
||||
ifeq ($(AUTOCONF_H),)
|
||||
$(error AUTOCONF_H is not defined)
|
||||
endif
|
||||
|
||||
ccflags-y += -imacros $(AUTOCONF_H)
|
||||
ifndef TOP
|
||||
TOP := $(srctree)/..
|
||||
endif
|
||||
|
@ -62,7 +57,7 @@ KBUILD_MODPOST_FAIL_ON_WARNINGS := y
|
|||
###############################################################################
|
||||
|
||||
MODULE_NAME := gps_drv_dl_$(GPS_PLATFORM)
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
GPS_DRV_CONTROL_LNA := n
|
||||
GPS_DL_HAS_MOCK := n
|
||||
|
|
|
@ -14,11 +14,6 @@
|
|||
$(warning build in gps_dl)
|
||||
ifeq ($(CONFIG_MTK_GPS_SUPPORT), y)
|
||||
|
||||
ifeq ($(AUTOCONF_H),)
|
||||
$(error AUTOCONF_H is not defined)
|
||||
endif
|
||||
|
||||
ccflags-y += -imacros $(AUTOCONF_H)
|
||||
ifndef TOP
|
||||
TOP := $(srctree)/..
|
||||
endif
|
||||
|
@ -62,7 +57,7 @@ KBUILD_MODPOST_FAIL_ON_WARNINGS := y
|
|||
###############################################################################
|
||||
GPS_PLATFORM := v010
|
||||
MODULE_NAME := gps_drv_dl_$(GPS_PLATFORM)
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
GPS_DRV_CONTROL_LNA := n
|
||||
GPS_DL_HAS_MOCK := n
|
||||
|
|
|
@ -14,11 +14,6 @@
|
|||
$(warning build in gps_dl)
|
||||
ifeq ($(CONFIG_MTK_GPS_SUPPORT), y)
|
||||
|
||||
ifeq ($(AUTOCONF_H),)
|
||||
$(error AUTOCONF_H is not defined)
|
||||
endif
|
||||
|
||||
ccflags-y += -imacros $(AUTOCONF_H)
|
||||
ifndef TOP
|
||||
TOP := $(srctree)/..
|
||||
endif
|
||||
|
@ -62,7 +57,7 @@ KBUILD_MODPOST_FAIL_ON_WARNINGS := y
|
|||
###############################################################################
|
||||
export GPS_PLATFORM := v030
|
||||
MODULE_NAME := gps_drv_dl_$(GPS_PLATFORM)
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
GPS_DRV_CONTROL_LNA := n
|
||||
GPS_DL_HAS_MOCK := n
|
||||
|
|
|
@ -14,11 +14,6 @@
|
|||
$(warning build in gps_dl)
|
||||
ifeq ($(CONFIG_MTK_GPS_SUPPORT), y)
|
||||
|
||||
ifeq ($(AUTOCONF_H),)
|
||||
$(error AUTOCONF_H is not defined)
|
||||
endif
|
||||
|
||||
ccflags-y += -imacros $(AUTOCONF_H)
|
||||
ifndef TOP
|
||||
TOP := $(srctree)/..
|
||||
endif
|
||||
|
@ -62,7 +57,7 @@ KBUILD_MODPOST_FAIL_ON_WARNINGS := y
|
|||
###############################################################################
|
||||
export GPS_PLATFORM := v050
|
||||
MODULE_NAME := gps_drv_dl_$(GPS_PLATFORM)
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
GPS_DRV_CONTROL_LNA := n
|
||||
GPS_DL_HAS_MOCK := n
|
||||
|
|
|
@ -33,7 +33,7 @@ ccflags-y += -I$(srctree)/drivers/misc/mediatek/connectivity/power_throttling
|
|||
###############################################################################
|
||||
GPS_PWR_TEST_SUPPORT :=n
|
||||
MODULE_NAME := gps_pwr
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
$(MODULE_NAME)-objs += gps_pwr.o
|
||||
ifeq ($(GPS_PWR_TEST_SUPPORT),y)
|
||||
|
|
|
@ -33,7 +33,7 @@ ccflags-y += -I$(srctree)/drivers/misc/mediatek/connectivity/power_throttling
|
|||
###############################################################################
|
||||
GPS_PWR_TEST_SUPPORT :=n
|
||||
MODULE_NAME := gps_pwr
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
$(MODULE_NAME)-objs += gps_pwr.o
|
||||
ifeq ($(GPS_PWR_TEST_SUPPORT),y)
|
||||
|
|
|
@ -33,7 +33,7 @@ ccflags-y += -I$(srctree)/drivers/misc/mediatek/conn_scp/conap_scp
|
|||
###############################################################################
|
||||
GPS2SCP_TEST_SUPPORT :=n
|
||||
MODULE_NAME := gps_scp
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
$(MODULE_NAME)-objs += gps2scp.o
|
||||
ifeq ($(GPS2SCP_TEST_SUPPORT),y)
|
||||
|
|
|
@ -33,7 +33,7 @@ ccflags-y += -I$(srctree)/drivers/misc/mediatek/conn_scp/conap_scp
|
|||
###############################################################################
|
||||
GPS2SCP_TEST_SUPPORT :=n
|
||||
MODULE_NAME := gps_scp
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
$(MODULE_NAME)-objs += gps2scp.o
|
||||
ifeq ($(GPS2SCP_TEST_SUPPORT),y)
|
||||
|
|
|
@ -13,11 +13,6 @@
|
|||
# Necessary Check
|
||||
ifeq ($(CONFIG_MTK_GPS_SUPPORT), y)
|
||||
|
||||
ifeq ($(AUTOCONF_H),)
|
||||
$(error AUTOCONF_H is not defined)
|
||||
endif
|
||||
|
||||
ccflags-y += -imacros $(AUTOCONF_H)
|
||||
ifndef TOP
|
||||
TOP := $(srctree)/..
|
||||
endif
|
||||
|
@ -62,7 +57,7 @@ ccflags-y += -I$(srctree)/drivers/misc/mediatek/connectivity/common
|
|||
###############################################################################
|
||||
|
||||
MODULE_NAME := gps_drv_stp
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
GPS_DRV_CONTROL_LNA := y
|
||||
GPS_SRC_FOLDER := $(srctree)/drivers/misc/mediatek/connectivity/gps/gps_stp
|
||||
|
|
|
@ -61,7 +61,7 @@ ccflags-y += -I$(srctree)/drivers/misc/mediatek/connectivity/common
|
|||
###############################################################################
|
||||
|
||||
MODULE_NAME := gps_drv_stp
|
||||
obj-m += $(MODULE_NAME).o
|
||||
obj-y += $(MODULE_NAME).o
|
||||
|
||||
GPS_DRV_CONTROL_LNA := y
|
||||
GPS_SRC_FOLDER := $(TOP)/vendor/mediatek/kernel_modules/connectivity/gps/gps_stp
|
||||
|
|
|
@ -70,7 +70,6 @@ $(MODULE_NAME)-objs += wmt_cdev_wifi.o
|
|||
ifneq ($(CONFIG_MTK_CONNSYS_DEDICATED_LOG_PATH),)
|
||||
$(MODULE_NAME)-objs += fw_log_wifi.o
|
||||
$(MODULE_NAME)-objs += fw_log_ics.o
|
||||
$(MODULE_NAME)-objs += wlan_ring.o
|
||||
endif
|
||||
ifeq ($(CONNAC_VER), 2_0)
|
||||
$(MODULE_NAME)-objs += wifi_pwr_on.o
|
||||
|
|
|
@ -1,143 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2021 MediaTek Inc.
|
||||
*/
|
||||
|
||||
#include "ring.h"
|
||||
#include <linux/string.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/bug.h>
|
||||
|
||||
void wlan_ring_init(void *base, unsigned int max_size, unsigned int read,
|
||||
unsigned int write, struct ring *ring)
|
||||
{
|
||||
WARN_ON(!base);
|
||||
|
||||
/* making sure max_size is power of 2 */
|
||||
WARN_ON(!max_size || (max_size & (max_size - 1)));
|
||||
|
||||
/* making sure write largger than read */
|
||||
WARN_ON(read > write);
|
||||
|
||||
ring->base = base;
|
||||
ring->read = read;
|
||||
ring->write = write;
|
||||
ring->max_size = max_size;
|
||||
}
|
||||
|
||||
void wlan_ring_dump(const char *title, struct ring *ring)
|
||||
{
|
||||
pr_info("[%s] ring:{write=%d, read=%d, max_size=%d}\n",
|
||||
title, ring->write, ring->read, ring->max_size);
|
||||
}
|
||||
|
||||
void wlan_ring_dump_segment(const char *title, struct ring_segment *seg)
|
||||
{
|
||||
pr_info("[%s] seg:{ring_pt=0x%p, data_pos=%d, sz=%d, remain=%d}\n",
|
||||
title, seg->ring_pt, seg->data_pos,
|
||||
seg->sz, seg->remain);
|
||||
}
|
||||
|
||||
/*
|
||||
* Function prepares the ring_segment and
|
||||
* returns the number of valid bytes for read.
|
||||
*/
|
||||
unsigned int wlan_ring_read_prepare(unsigned int sz,
|
||||
struct ring_segment *seg,
|
||||
struct ring *ring)
|
||||
{
|
||||
unsigned int wt = ring->write;
|
||||
unsigned int rd = ring->read;
|
||||
|
||||
memset(seg, 0, sizeof(struct ring_segment));
|
||||
if (sz > wt - rd)
|
||||
sz = wt - rd;
|
||||
seg->remain = sz;
|
||||
/* wlan_ring_dump(__func__, ring); */
|
||||
/* wlan_ring_dump_segment(__func__, seg); */
|
||||
return seg->remain;
|
||||
}
|
||||
|
||||
/*
|
||||
* Function prepares the ring_segment and
|
||||
* returns the number of bytes available for write.
|
||||
*/
|
||||
unsigned int wlan_ring_write_prepare(unsigned int sz,
|
||||
struct ring_segment *seg,
|
||||
struct ring *ring)
|
||||
{
|
||||
unsigned int wt = ring->write;
|
||||
unsigned int rd = ring->read;
|
||||
|
||||
memset(seg, 0, sizeof(struct ring_segment));
|
||||
if (sz > ring->max_size - (wt - rd))
|
||||
sz = ring->max_size - (wt - rd);
|
||||
seg->remain = sz;
|
||||
/* wlan_ring_dump(__func__, ring); */
|
||||
/* wlan_ring_dump_segment(__func__, seg); */
|
||||
return seg->remain;
|
||||
}
|
||||
|
||||
unsigned int wlan_ring_overwrite_prepare(unsigned int sz, struct ring_segment *seg,
|
||||
struct ring *ring)
|
||||
{
|
||||
unsigned int wt = ring->write;
|
||||
unsigned int rd = ring->read;
|
||||
|
||||
memset(seg, 0, sizeof(struct ring_segment));
|
||||
if (sz > ring->max_size - (wt - rd))
|
||||
ring->read += sz - (ring->max_size - (wt - rd));
|
||||
seg->remain = sz;
|
||||
/* wlan_ring_dump(__func__, ring); */
|
||||
/* wlan_ring_dump_segment(__func__, seg); */
|
||||
return seg->remain;
|
||||
}
|
||||
|
||||
void __wlan_ring_segment_prepare(unsigned int from, unsigned int sz,
|
||||
struct ring_segment *seg,
|
||||
struct ring *ring)
|
||||
{
|
||||
unsigned int ring_pos = from & (ring->max_size - 1);
|
||||
|
||||
seg->ring_pt = ring->base + ring_pos;
|
||||
seg->data_pos = (seg->sz ? seg->data_pos + seg->sz : 0);
|
||||
if (ring_pos + sz <= ring->max_size)
|
||||
seg->sz = sz;
|
||||
else
|
||||
seg->sz = ring->max_size - ring_pos;
|
||||
seg->remain -= seg->sz;
|
||||
/* wlan_ring_dump(__func__, ring); */
|
||||
/* wlan_ring_dump_segment(__func__, seg); */
|
||||
}
|
||||
|
||||
void _wlan_ring_segment_prepare(unsigned int from,
|
||||
struct ring_segment *seg,
|
||||
struct ring *ring)
|
||||
{
|
||||
__wlan_ring_segment_prepare(from, seg->remain, seg, ring);
|
||||
}
|
||||
|
||||
void _wlan_ring_segment_prepare_item(unsigned int from,
|
||||
struct ring_segment *seg,
|
||||
struct ring *ring)
|
||||
{
|
||||
unsigned int size;
|
||||
|
||||
size = (seg->remain ? 1 : 0);
|
||||
__wlan_ring_segment_prepare(from, size, seg, ring);
|
||||
}
|
||||
|
||||
void _wlan_ring_read_commit(struct ring_segment *seg, struct ring *ring)
|
||||
{
|
||||
ring->read += seg->sz;
|
||||
/* wlan_ring_dump(__func__, ring); */
|
||||
/* wlan_ring_dump_segment(__func__, seg); */
|
||||
}
|
||||
void _wlan_ring_write_commit(struct ring_segment *seg, struct ring *ring)
|
||||
{
|
||||
ring->write += seg->sz;
|
||||
/* wlan_ring_dump(__func__, ring); */
|
||||
/* wlan_ring_dump_segment(__func__, seg); */
|
||||
}
|
||||
|
|
@ -403,7 +403,7 @@ else
|
|||
ccflags-y += -DCFG_WIFI_IP_SET=1
|
||||
endif
|
||||
|
||||
ifneq ($(filter MTK_WCN_REMOVE_KERNEL_MODULE,$(KBUILD_SUBDIR_CCFLAGS)),)
|
||||
ifeq ($(CONFIG_WLAN_DRV_BUILD_IN),y)
|
||||
ccflags-y += -DCFG_BUILT_IN_DRIVER=1
|
||||
else
|
||||
ccflags-y += -DCFG_BUILT_IN_DRIVER=0
|
||||
|
|
|
@ -110,14 +110,14 @@ extern uint32_t get_wifi_standalone_log_mode(void);
|
|||
#define DBG_CLASS_MASK BITS(0, 7)
|
||||
|
||||
#define DBG_LOG_LEVEL_DEFAULT \
|
||||
(DBG_CLASS_ERROR | \
|
||||
(DBG_CLASS_ERROR)
|
||||
#define DBG_LOG_LEVEL_MORE \
|
||||
(DBG_LOG_LEVEL_DEFAULT | \
|
||||
DBG_CLASS_TRACE | \
|
||||
DBG_CLASS_WARN | \
|
||||
DBG_CLASS_STATE | \
|
||||
DBG_CLASS_EVENT | \
|
||||
DBG_CLASS_INFO)
|
||||
#define DBG_LOG_LEVEL_MORE \
|
||||
(DBG_LOG_LEVEL_DEFAULT | \
|
||||
DBG_CLASS_TRACE)
|
||||
#define DBG_LOG_LEVEL_EXTREME \
|
||||
(DBG_LOG_LEVEL_MORE | \
|
||||
DBG_CLASS_LOUD)
|
||||
|
|
|
@ -1921,7 +1921,7 @@ static void wlanSetMulticastList(struct net_device *prDev)
|
|||
DBGLOG(INIT, TRACE, "flags: 0x%x\n", prDev->flags);
|
||||
prDev->flags |= (IFF_MULTICAST | IFF_ALLMULTI);
|
||||
gPrDev = prDev;
|
||||
schedule_delayed_work(&workq, 0);
|
||||
queue_delayed_work(system_power_efficient_wq, &workq, 0);
|
||||
}
|
||||
|
||||
/* FIXME: Since we cannot sleep in the wlanSetMulticastList, we arrange
|
||||
|
|
|
@ -132,7 +132,7 @@ hmac_sha256_vector(const u8 *key, size_t key_len, size_t num_elem,
|
|||
* Returns: 0 on success, -1 on failure
|
||||
*/
|
||||
int
|
||||
hmac_sha256(const u8 *key, size_t key_len, const u8 *data, size_t data_len,
|
||||
hmac_sha256_sm(const u8 *key, size_t key_len, const u8 *data, size_t data_len,
|
||||
u8 *mac) {
|
||||
return hmac_sha256_vector(key, key_len, 1, &data, &data_len, mac);
|
||||
}
|
||||
|
@ -172,7 +172,7 @@ void caculate_pmkid(u8 *key, u8 *IMAC, u8 *RMAC, u8 *serviceName, u8 *pmkid)
|
|||
os_memcpy(pmkIdSrc+post, RMAC, 6);
|
||||
post += 6;
|
||||
os_memcpy(pmkIdSrc+post, aucServiceID, 6);
|
||||
hmac_sha256(key, 32, pmkIdSrc, pmkIdSrcLen, pmkid);
|
||||
hmac_sha256_sm(key, 32, pmkIdSrc, pmkIdSrcLen, pmkid);
|
||||
os_free(pmkIdSrc);
|
||||
|
||||
}
|
||||
|
|
|
@ -71,6 +71,20 @@ config SECURITY_SELINUX_DEVELOP
|
|||
can interactively toggle the kernel between enforcing mode and
|
||||
permissive mode (if permitted by the policy) via /selinux/enforce.
|
||||
|
||||
config SECURITY_SELINUX_ALWAYS_ENFORCE
|
||||
bool "NSA SELinux Always Enforcing"
|
||||
depends on SECURITY_SELINUX_DEVELOP
|
||||
default n
|
||||
help
|
||||
This option will prevent anything from setting SELinux to permissive.
|
||||
|
||||
config SECURITY_SELINUX_ALWAYS_PERMISSIVE
|
||||
bool "NSA SELinux Always Permissive"
|
||||
depends on SECURITY_SELINUX_DEVELOP
|
||||
default n
|
||||
help
|
||||
This option will prevent anything from setting SELinux to enforcing.
|
||||
|
||||
config SECURITY_SELINUX_AVC_STATS
|
||||
bool "NSA SELinux AVC Statistics"
|
||||
depends on SECURITY_SELINUX
|
||||
|
|
|
@ -160,27 +160,16 @@ static ssize_t sel_write_enforce(struct file *file, const char __user *buf,
|
|||
new_value = !!new_value;
|
||||
|
||||
old_value = enforcing_enabled(state);
|
||||
// [ SEC_SELINUX_PORTING_COMMON
|
||||
#ifdef CONFIG_ALWAYS_ENFORCE
|
||||
// If build is user build and enforce option is set, selinux is always enforcing
|
||||
|
||||
#ifdef CONFIG_SECURITY_SELINUX_ALWAYS_ENFORCE
|
||||
// If always enforce option is set, selinux is always enforcing
|
||||
new_value = 1;
|
||||
length = avc_has_perm(&selinux_state,
|
||||
current_sid(), SECINITSID_SECURITY,
|
||||
SECCLASS_SECURITY, SECURITY__SETENFORCE,
|
||||
NULL);
|
||||
audit_log(audit_context(), GFP_KERNEL, AUDIT_MAC_STATUS,
|
||||
"enforcing=%d old_enforcing=%d auid=%u ses=%u"
|
||||
" enabled=%d old-enabled=%d lsm=selinux res=1",
|
||||
new_value, selinux_enforcing,
|
||||
from_kuid(&init_user_ns, audit_get_loginuid(current)),
|
||||
audit_get_sessionid(current),
|
||||
selinux_enabled, selinux_enabled);
|
||||
enforcing_set(state, new_value);
|
||||
avc_ss_reset(state->avc, 0);
|
||||
selnl_notify_setenforce(new_value);
|
||||
selinux_status_update_setenforce(state, new_value);
|
||||
#else
|
||||
if (new_value != selinux_enforcing) { // SEC_SELINUX_PORTING_COMMON Change to use RKP
|
||||
#elif defined(CONFIG_SECURITY_SELINUX_ALWAYS_PERMISSIVE)
|
||||
// If always permissive option is set, selinux is always permissive
|
||||
new_value = 0;
|
||||
#endif
|
||||
if (new_value != old_value) {
|
||||
|
||||
length = avc_has_perm(&selinux_state,
|
||||
current_sid(), SECINITSID_SECURITY,
|
||||
SECCLASS_SECURITY, SECURITY__SETENFORCE,
|
||||
|
|
Loading…
Reference in a new issue