调通sina33m下的ap6181版本
大文实验室/大文哥
壹捌陆捌零陆捌捌陆捌贰
wb4916 AT qq.com
完成时间:2017/7/7 18:11
版本:V1.0
SDK:Android6.0.1
开发板:SC3817R
1、关闭“设置”中的“蓝牙”选项:
R:\wyb\ap6181_sina33m_sc3817r\android\device\softwinner\astar-d7\overlay\frameworks\base\core\res\res\values\config.xml
(干掉这里:)
<!-- List of regexpressions describing the interface (if any) that represent tetherable
bluetooth interfaces. If the device doesn't want to support tethering over bluetooth this
should be empty. -->
<!-- default: disable Bluetooth PAN feature -->
<string-array translatable="false" name="config_tether_bluetooth_regexs">
<item>"bt-pan"</item>
</string-array>
2、打开WIFI,关闭BT:
R:\wyb\ap6181_sina33m_sc3817r\android\device\softwinner\astar-d7\astar_d7.mk
PRODUCT_PACKAGES += Launcher3
PRODUCT_PACKAGES += \
ESFileExplorer \
VideoPlayer
#Bluetooth
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.camera.xml:system/etc/permissions/android.hardware.camera.xml \
frameworks/native/data/etc/android.hardware.camera.front.xml:system/etc/permissions/android.hardware.camera.front.xml \
frameworks/native/data/etc/android.hardware.ethernet.xml:system/etc/permissions/android.hardware.ethernet.xml \
frameworks/native/data/etc/android.hardware.wifi.xml:system/etc/permissions/android.hardware.wifi.xml \
frameworks/native/data/etc/android.hardware.wifi.direct.xml:system/etc/permissions/android.hardware.wifi.direct.xml
#frameworks/native/data/etc/android.hardware.bluetooth.xml:system/etc/permissions/android.hardware.bluetooth.xml \
#frameworks/native/data/etc/android.hardware.bluetooth_le.xml:system/etc/permissions/android.hardware.bluetooth_le.xml
#PRODUCT_COPY_FILES += \
# device/softwinner/astar-d7/bluetooth/bt_vendor.conf:system/etc/bluetooth/bt_vendor.conf
# bootanimation
PRODUCT_COPY_FILES += \
device/softwinner/astar-d7/media/bootanimation.zip:system/media/bootanimation.zip
# camera config for camera detector
#PRODUCT_COPY_FILES += \
# device/softwinner/astar-d7/hawkview/sensor_list_cfg.ini:system/etc/hawkview/sensor_list_cfg.ini
# Realtek wifi efuse map
#PRODUCT_COPY_FILES += \
#device/softwinner/astar-d7/wifi_efuse_8723bs-vq0.map:system/etc/wifi/wifi_efuse_8723bs-vq0.map
PRODUCT_PROPERTY_OVERRIDES += \
persist.sys.usb.config=mass_storage,adb \
ro.adb.secure=0 \
ro.sys.mutedrm=true \
rw.logger=0
#$(call inherit-product-if-exists, vendor/google/products/gms_base.mk)
#for 8723bs-vq0,should setmacaddr
#PRODUCT_PACKAGES += setmacaddr
#for 8723bs-vq0,should setbtmacaddr
#PRODUCT_PACKAGES += setbtmacaddr
3、修改WIFI为AP6181:
R:\wyb\ap6181_sina33m_sc3817r\android\device\softwinner\astar-d7\BoardConfig.mk
# 1.2 broadcom wifi support
# BOARD_USR_WIFI:ap6181/ap6210/ap6212/ap6330/ap6335
BOARD_WIFI_VENDOR := broadcom
ifeq ($(BOARD_WIFI_VENDOR), broadcom)
BOARD_WPA_SUPPLICANT_DRIVER := NL80211
WPA_SUPPLICANT_VERSION := VER_0_8_X
BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_bcmdhd
BOARD_HOSTAPD_DRIVER := NL80211
BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_bcmdhd
BOARD_WLAN_DEVICE := bcmdhd
WIFI_DRIVER_FW_PATH_PARAM := "/sys/module/bcmdhd/parameters/firmware_path"
BOARD_USR_WIFI := ap6181
include hardware/broadcom/wlan/bcmdhd/firmware/$(BOARD_USR_WIFI)/device-bcm.mk
endif
# 2. Bluetooth Configuration
# make sure BOARD_HAVE_BLUETOOTH is true for every bt vendor
# BOARD_HAVE_BLUETOOTH_NAME:rtl8723bs/rtl8723bs_vq0/rtl8723cs/ap6210/ap6212/ap6330/ap6335/
#BOARD_HAVE_BLUETOOTH := true
#
#BOARD_HAVE_BLUETOOTH_BCM := true
#BOARD_HAVE_BLUETOOTH_NAME := ap6212
#BOARD_HAVE_BLUETOOTH_RTK_COEX := true
#BOARD_HAVE_BLUETOOTH_RTK := true
#BLUETOOTH_HCI_USE_RTK_H5 := true
#BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := device/softwinner/astar-d7/bluetooth
4、关闭BT:
R:\wyb\ap6181_sina33m_sc3817r\android\device\softwinner\astar-d7\init.sun8i.rc
# tp & sensors
init_dev_detect
# network
insmod /system/vendor/modules/bcmdhd.ko
#insmod /system/vendor/modules/bcm_btlpm.ko
insmod /system/vendor/modules/usbnet.ko
insmod /system/vendor/modules/asix.ko
insmod /system/vendor/modules/qf9700.ko
#insmod /system/vendor/modules/mcs7830.ko
#insmod /system/vendor/modules/smsc95xx.ko
insmod /system/vendor/modules/rtl8152.ko
#insmod /system/vendor/modules/cdc_ether.ko
# GPS
# chmod 777 /system/bin/glgps
# chown root system /system/bin/glgps
# chmod 777 /system/lib/hw/gps.default.so
# chown root system /system/lib/hw/gps.default.so
# mkdir /data/gps
# chmod 770 /data/gps
# chown system net_bt_stack /data/gps
# to observe dnsmasq.leases file for dhcp information of soft ap.
chown dhcp system /data/misc/dhcp
on post-fs-data
mkdir /data/media 0770 media_rw media_rw
# bluetooth MAC address programming
#chown bluetooth net_bt_stack ro.bt.bdaddr_path
#chown bluetooth net_bt_stack /system/etc/bluetooth
#chown bluetooth net_bt_stack /data/misc/bluetooth
#setprop ro.bt.bdaddr_path "/data/misc/bluetooth/bdaddr"
# Set indication (checked by vold) that we have finished this action
setprop vold.post_fs_data_done 1
# to force to start sdcard
# class_start late_start
# This module write data to /data should insmod in post-fs-data
# due to encryption
on boot
chown system system /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chmod 0660 /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chown system system /sys/kernel/autohotplug/enable
chmod 0660 /sys/kernel/autohotplug/enable
chown system system /sys/devices/system/cpu/cpu0/cpufreq/boot_lock
chmod 0660 /sys/devices/system/cpu/cpu0/cpufreq/boot_lock
chown system system /sys/devices/platform/sunxi-budget-cooling/roomage
chmod 0660 /sys/devices/platform/sunxi-budget-cooling/roomage
chown system system /sys/class/devfreq/sunxi-ddrfreq/dsm/scene
chmod 0660 /sys/class/devfreq/sunxi-ddrfreq/dsm/scene
on charger
insmod disp.ko
insmod lcd.ko
class_start charger
write /sys/module/printk/parameters/console_suspend N
write /proc/sys/kernel/printk 0
on fs
# UDISK would be mounted as data partition when multiple user enabled.
#format_userdata /dev/block/by-name/UDISK ASTAR
#bluesleep
#insmod /system/vendor/modules/rtl_bluesleep.ko
## bluetooth
## UART device
#chmod 0660 /dev/ttyS1
#chown bluetooth net_bt_stack /dev/ttyS1
#
## power up/down interface
#chmod 0660 /sys/class/rfkill/rfkill0/state
#chmod 0660 /sys/class/rfkill/rfkill0/type
#chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/state
#chown bluetooth net_bt_stack /sys/class/rfkill/rfkill0/type
#
#
## bluetooth LPM
#chmod 0220 /proc/bluetooth/sleep/lpm
#chmod 0220 /proc/bluetooth/sleep/btwrite
#chown bluetooth net_bt_stack /proc/bluetooth/sleep/lpm
#chown bluetooth net_bt_stack /proc/bluetooth/sleep/btwrite
#write /proc/bluetooth/sleep/lpm 1
5、可选:
R:\wyb\ap6181_sina33m_sc3817r\android\device\softwinner\astar-d7\ueventd.sun8i.rc
#/dev/video1 0777 media media
/dev/snd/pcmC0D0c 0777 media media
/dev/snd/pcmC0D0p 0777 media media
#/dev/ttyS1 0660 bluetooth bluetooth
6、可选:
R:\wyb\ap6181_sina33m_sc3817r\android\frameworks\base\packages\SettingsProvider\res\values\defaults.xml
<integer name="def_screen_off_timeout">1800000</integer>
<bool name="def_lockscreen_disabled">true</bool>
7、请严重注意,全志在这里埋坑了!(坑爹无敌!)
Android里面调入配置文件:nvram.txt,里面里面调入:nvram_ap6181.txt。
R:\wyb\ap6181_sina33m_sc3817r\android\hardware\broadcom\wlan\bcmdhd\firmware\ap6181\config.txt
R:\wyb\ap6181_sina33m_sc3817r\android\hardware\broadcom\wlan\bcmdhd\firmware\ap6181\device-bcm.mk
#
# 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
WIFI_DRIVER_FW_PATH_STA := "/system/vendor/modules/fw_bcm40181a2.bin"
WIFI_DRIVER_FW_PATH_P2P := "/system/vendor/modules/fw_bcm40181a2_p2p.bin"
WIFI_DRIVER_FW_PATH_AP := "/system/vendor/modules/fw_bcm40181a2_apsta.bin"
PRODUCT_COPY_FILES += \
hardware/broadcom/wlan/bcmdhd/firmware/ap6181/fw_bcm40181a2_p2p.bin:system/vendor/modules/fw_bcm40181a2_p2p.bin \
hardware/broadcom/wlan/bcmdhd/firmware/ap6181/fw_bcm40181a2_apsta.bin:system/vendor/modules/fw_bcm40181a2_apsta.bin \
hardware/broadcom/wlan/bcmdhd/firmware/ap6181/fw_bcm40181a2.bin:system/vendor/modules/fw_bcm40181a2.bin \
hardware/broadcom/wlan/bcmdhd/firmware/ap6181/nvram_ap6181.txt:system/vendor/modules/nvram_ap6181.txt \
hardware/broadcom/wlan/bcmdhd/firmware/ap6181/config.txt:system/vendor/modules/config.txt
R:\wyb\ap6181_sina33m_sc3817r\android\hardware\broadcom\wlan\bcmdhd\firmware\ap6181\fw_bcm40181a2.bin
R:\wyb\ap6181_sina33m_sc3817r\android\hardware\broadcom\wlan\bcmdhd\firmware\ap6181\fw_bcm40181a2_apsta.bin
R:\wyb\ap6181_sina33m_sc3817r\android\hardware\broadcom\wlan\bcmdhd\firmware\ap6181\fw_bcm40181a2_p2p.bin
R:\wyb\ap6181_sina33m_sc3817r\android\hardware\broadcom\wlan\bcmdhd\firmware\ap6181\nvram_ap6181.txt
8、可选:
R:\wyb\ap6181_sina33m_sc3817r\android\packages\apps\Camera2\src\com\android\camera\CameraActivity.java
9、可选:
R:\wyb\ap6181_sina33m_sc3817r\lichee\linux-3.4\arch\arm\mach-sunxi\rf\bt_pm.c
static int rfkill_set_power(void *data, bool blocked)
{
unsigned int mod_sel = wifi_pm_get_mod_type();
RF_MSG("rfkill set power %d\n", blocked);
switch (mod_sel)
{
case 2: /* ap6210 */
if (!blocked) {
wifi_pm_gpio_ctrl("ap6xxx_bt_regon", 1);
} else {
wifi_pm_gpio_ctrl("ap6xxx_bt_regon", 0);
}
break;
case 4: /* realtek rtl8723au */
if (!blocked) {
wifi_pm_gpio_ctrl("rtl8723au_bt", 1);
} else {
wifi_pm_gpio_ctrl("rtl8723au_bt", 0);
}
break;
case 5: /* realtek rtl8723bs */
if (!blocked) {
wifi_pm_gpio_ctrl("rtl8723bs_bt_regon", 1);
} else {
wifi_pm_gpio_ctrl("rtl8723bs_bt_regon", 0);
}
break;
case 7: /* ap6476 */
if (!blocked) {
wifi_pm_gpio_ctrl("ap6xxx_bt_regon", 1);
} else {
wifi_pm_gpio_ctrl("ap6xxx_bt_regon", 0);
}
break;
case 9: /* ap6212 */
if (!blocked) {
wifi_pm_gpio_ctrl("ap6xxx_bt_regon", 1);
} else {
wifi_pm_gpio_ctrl("ap6xxx_bt_regon", 0);
}
break;
default:
RF_MSG("no bt module matched !!\n");
}
msleep(10);
return 0;
}
10、可选:
R:\wyb\ap6181_sina33m_sc3817r\lichee\linux-3.4\arch\arm\mach-sunxi\rf\wifi_pm.c
struct wifi_pm_ops wifi_select_pm_ops;
static char* wifi_mod[] = {" ",
"ap6181", /* 1 - AP6181*/
"ap6210", /* 2 - AP6210*/
"rtl8188eu", /* 3 - RTL8188EU*/
"rtl8723au", /* 4 - RTL8723AU*/
"rtl8723bs", /* 5 - RTL8723BS*/
"esp8089", /* 6 - ESP8089*/
"ap6476", /* 7 - AP6476*/
"rtl8189es", /* 8 - rtl8189es*/
"ap6212", /* 9 - AP6212*/
"ap6330", /* 10- AP6330*/
"gb9663", /* 11- GB9663*/
};
static int __devinit wifi_pm_probe(struct platform_device *pdev)
{
struct wifi_pm_ops *ops = &wifi_select_pm_ops;
switch (ops->module_sel.val) {
case 1: /* AP6181 */
ap6xxx_gpio_init();
break;
case 2: /* AP6210 */
ap6xxx_gpio_init();
break;
case 3: /* RTL8188EU */
rtl8188eu_gpio_init();
break;
case 4: /* RTL8723AU */
rtl8723au_gpio_init();
break;
case 5: /* RTL8723BS */
rtl8723bs_gpio_init();
break;
case 6: /* ESP8089 */
esp8089_gpio_init();
break;
case 7: /* AP6476 */
ap6xxx_gpio_init();
break;
case 8: /* rtl8189es */
rtl8189es_gpio_init();
break;
case 9: /* AP6212 */
ap6xxx_gpio_init();
break;
default:
wifi_pm_msg("wrong sdio module select %d !\n", ops->module_sel.val);
}
awwifi_procfs_attach();
wifi_pm_msg("wifi gpio init is OK !!\n");
return 0;
}
11、可选:
R:\wyb\ap6181_sina33m_sc3817r\lichee\linux-3.4\drivers\net\wireless\bcmdhd\include\bcmdevs.h
#define BCM4350_CHIP_ID 0x4350
#define BCM43430_CHIP_ID 43430 /* 43430 chipcommon chipid 0xa9a6 */
#define BCM4342_CHIP_ID 4342
R:\wyb\ap6181_sina33m_sc3817r\lichee\linux-3.4\drivers\net\wireless\bcmdhd\dhd_common.c
void
dhd_common_init(osl_t *osh)
{
int select_type = 0;
//aw checkout which wifi had select
//select_type = wifi_pm_get_mod_type();
select_type = 1;
#ifdef CONFIG_BCMDHD_FW_PATH
//select ap6181 or ap6210 or ap6476
if (select_type == 1 || select_type == 2 || select_type == 7) {
bcm_strncpy_s(fw_path, sizeof(fw_path), "/system/vendor/modules/fw_bcm40181a2.bin", MOD_PARAM_PATHLEN-1);
}
#else /* CONFIG_BCMDHD_FW_PATH */
fw_path[0] = '\0';
#endif /* CONFIG_BCMDHD_FW_PATH */
#ifdef CONFIG_BCMDHD_NVRAM_PATH
switch (select_type)
{
//ap6181
case 1:
bcm_strncpy_s(nv_path, sizeof(nv_path), "/system/vendor/modules/nvram_ap6181.txt", MOD_PARAM_PATHLEN-1);
break;
//ap6210
case 2:
bcm_strncpy_s(nv_path, sizeof(nv_path), "/system/vendor/modules/nvram_ap6210.txt", MOD_PARAM_PATHLEN-1);
break;
//ap6476
case 7:
bcm_strncpy_s(nv_path, sizeof(nv_path), "/system/vendor/modules/nvram_ap6476.txt", MOD_PARAM_PATHLEN-1);
break;
//ap6212
case 9:
bcm_strncpy_s(nv_path, sizeof(nv_path), "/system/vendor/modules/nvram.txt", MOD_PARAM_PATHLEN-1);
break;
default:
break;
}
#else /* CONFIG_BCMDHD_NVRAM_PATH */
nv_path[0] = '\0';
#endif /* CONFIG_BCMDHD_NVRAM_PATH */
#ifdef CONFIG_BCMDHD_CONFIG_PATH
bcm_strncpy_s(conf_path, sizeof(conf_path), "/system/vendor/modules/config.txt", MOD_PARAM_PATHLEN-1);
#else /* CONFIG_BCMDHD_CONFIG_PATH */
conf_path[0] = '\0';
#endif /* CONFIG_BCMDHD_CONFIG_PATH */
#ifdef SOFTAP
fw_path2[0] = '\0';
#endif
}
R:\wyb\ap6181_sina33m_sc3817r\lichee\linux-3.4\drivers\net\wireless\bcmdhd\dhd_linux.c
int
dhd_bus_start(dhd_pub_t *dhdp)
{
int ret = -1;
dhd_info_t *dhd = (dhd_info_t*)dhdp->info;
unsigned long flags;
ASSERT(dhd);
DHD_TRACE(("Enter %s:\n", __FUNCTION__));
#ifdef DHDTHREAD
if (dhd->threads_only)
dhd_os_sdlock(dhdp);
#endif /* DHDTHREAD */
/* try to download image and nvram to the dongle */
if ((dhd->pub.busstate == DHD_BUS_DOWN) &&
(fw_path[0] != '\0') && (nv_path[0] != '\0')) {
#ifdef SHOW_NVRAM_TYPE
{ /* Show nvram type in the kernel log */
int i;
for (i = 0; nv_path[i] != '\0'; ++i) {
if (nv_path[i] == '.') {
++i;
break;
}
}
DHD_ERROR(("%s: nvram_type = [%s]\n", __FUNCTION__, &nv_path[i]));
}
#endif /* SHOW_NVRAM_TYPE */
/* wake lock moved to dhdsdio_download_firmware */
if (!(dhd_bus_download_firmware(dhd->pub.bus, dhd->pub.osh,
fw_path, nv_path, conf_path))) {
DHD_ERROR(("%s: dhdsdio_probe_download failed. firmware = %s nvram = %s config = %s\n",
__FUNCTION__, fw_path, nv_path, conf_path));
#ifdef DHDTHREAD
if (dhd->threads_only)
dhd_os_sdunlock(dhdp);
#endif /* DHDTHREAD */
// 2017/6/23 18:40 wenyuanbo download ap6212 fail not return error!!!!
//return -1;
}
}
if (dhd->pub.busstate != DHD_BUS_LOAD) {
#ifdef DHDTHREAD
if (dhd->threads_only)
dhd_os_sdunlock(dhdp);
#endif /* DHDTHREAD */
return -ENETDOWN;
}
/* Start the watchdog timer */
dhd->pub.tickcnt = 0;
dhd_os_wd_timer(&dhd->pub, dhd_watchdog_ms);
/* Bring up the bus */
if ((ret = dhd_bus_init(&dhd->pub, FALSE)) != 0) {
DHD_ERROR(("%s, dhd_bus_init failed %d\n", __FUNCTION__, ret));
#ifdef DHDTHREAD
if (dhd->threads_only)
dhd_os_sdunlock(dhdp);
#endif /* DHDTHREAD */
return ret;
}
bcmsdh_set_drvdata(dhdp); // terence 20130427: fix for null pointer issue
#if defined(OOB_INTR_ONLY)
/* Host registration for OOB interrupt */
if (bcmsdh_register_oob_intr(dhdp)) {
/* deactivate timer and wait for the handler to finish */
flags = dhd_os_spin_lock(&dhd->pub);
dhd->wd_timer_valid = FALSE;
dhd_os_spin_unlock(&dhd->pub, flags);
del_timer_sync(&dhd->timer);
DHD_ERROR(("%s Host failed to register for OOB\n", __FUNCTION__));
#ifdef DHDTHREAD
if (dhd->threads_only)
dhd_os_sdunlock(dhdp);
#endif /* DHDTHREAD */
DHD_OS_WD_WAKE_UNLOCK(&dhd->pub);
return -ENODEV;
}
/* Enable oob at firmware */
dhd_enable_oob_intr(dhd->pub.bus, TRUE);
#endif
/* If bus is not ready, can't come up */
if (dhd->pub.busstate != DHD_BUS_DATA) {
flags = dhd_os_spin_lock(&dhd->pub);
dhd->wd_timer_valid = FALSE;
dhd_os_spin_unlock(&dhd->pub, flags);
del_timer_sync(&dhd->timer);
DHD_ERROR(("%s failed bus is not ready\n", __FUNCTION__));
#ifdef DHDTHREAD
if (dhd->threads_only)
dhd_os_sdunlock(dhdp);
#endif /* DHDTHREAD */
DHD_OS_WD_WAKE_UNLOCK(&dhd->pub);
return -ENODEV;
}
#ifdef DHDTHREAD
if (dhd->threads_only)
dhd_os_sdunlock(dhdp);
#endif /* DHDTHREAD */
dhd_process_cid_mac(dhdp, TRUE);
/* Bus is ready, do any protocol initialization */
if ((ret = dhd_prot_init(&dhd->pub)) < 0)
return ret;
dhd_process_cid_mac(dhdp, FALSE);
#ifdef ARP_OFFLOAD_SUPPORT
if (dhd->pend_ipaddr) {
#ifdef AOE_IP_ALIAS_SUPPORT
aoe_update_host_ipv4_table(&dhd->pub, dhd->pend_ipaddr, TRUE, 0);
#endif /* AOE_IP_ALIAS_SUPPORT */
dhd->pend_ipaddr = 0;
}
#endif /* ARP_OFFLOAD_SUPPORT */
return 0;
}
R:\wyb\ap6181_sina33m_sc3817r\lichee\linux-3.4\drivers\net\wireless\bcmdhd\dhd_sdio.c
static bool
dhdsdio_chipmatch(uint16 chipid)
{
if (chipid == BCM4325_CHIP_ID)
return TRUE;
if (chipid == BCM4329_CHIP_ID)
return TRUE;
if (chipid == BCM4315_CHIP_ID)
return TRUE;
if (chipid == BCM4319_CHIP_ID)
return TRUE;
if (chipid == BCM4336_CHIP_ID)
return TRUE;
if (chipid == BCM4330_CHIP_ID)
return TRUE;
if (chipid == BCM43237_CHIP_ID)
return TRUE;
if (chipid == BCM43362_CHIP_ID)
return TRUE;
if (chipid == BCM4314_CHIP_ID)
return TRUE;
if (chipid == BCM43242_CHIP_ID)
return TRUE;
if (chipid == BCM43340_CHIP_ID)
return TRUE;
if (chipid == BCM43341_CHIP_ID)
return TRUE;
if (chipid == BCM43143_CHIP_ID)
return TRUE;
if (chipid == BCM43342_CHIP_ID)
return TRUE;
if (chipid == BCM4334_CHIP_ID)
return TRUE;
if (chipid == BCM43239_CHIP_ID)
return TRUE;
if (chipid == BCM4324_CHIP_ID)
return TRUE;
if (chipid == BCM4335_CHIP_ID)
return TRUE;
if (chipid == BCM4339_CHIP_ID)
return TRUE;
if (chipid == BCM4350_CHIP_ID)
return TRUE;
if (chipid == BCM43430_CHIP_ID)
return TRUE;
return FALSE;
}
R:\wyb\ap6181_sina33m_sc3817r\lichee\tools\pack\chips\sun8iw5p1\configs\d7\sys_config.fex
[power_sply]
dcdc1_vol = 3000
dcdc2_vol = 1100
dcdc3_vol = 1200
dcdc4_vol = 0
dcdc5_vol = 1500
aldo1_vol = 3300
aldo2_vol = 2500
aldo3_vol = 3000
dldo1_vol = 3300
dldo2_vol = 3300
dldo3_vol = 2800
;gpio0_vol = 2800
ldoio0_vol = 2800
[jtag_para]
jtag_enable = 0
;*****************************************************************************
;sdram configuration
;
;*****************************************************************************
[dram_para]
dram_clk = 552
[wakeup_src_para]
cpu_en = 0
cpu_freq = 48
; (cpu:apb:ahb)
pll_ratio = 0x111
dram_selfresh_en= 1
dram_freq = 36
wakeup_src_wl = port:PL07<4><default><default><0>
;wakeup_src_bt = port:PL09<4><default><default><0>
;bb_wake_ap = port:PL02<4><default><default><0>
[uart0]
uart_used = 1
uart_port = 0
uart_type = 2
uart_tx = port:PF02<3><1><default><default>
uart_rx = port:PF04<3><1><default><default>
;----------------------------------------------------------------------------------
;capacitor tp configuration
;ctp_twi_id : twi controller ID
;ctp_twi_addr : I2C slave address, 7bit
;ctp_screen_max_x/_y : resolution of touch panel
;ctp_revert_x/_y_flag : whether need to revert x/y
;ctp_exchange_x_y_flag: whether need to exchange the value of x and y
;ctp_int_port : port for tp's interrupt signal
;ctp_wakeup : port for wakeup tp
;----------------------------------------------------------------------------------
[ctp_para]
ctp_used = 1
ctp_name = "gt82x"
ctp_twi_id = 0
ctp_twi_addr = 0x5d
ctp_screen_max_x = 1280
ctp_screen_max_y = 800
ctp_revert_x_flag = 1
ctp_revert_y_flag = 1
ctp_exchange_x_y_flag = 1
ctp_int_port = port:PL04<4><default><default><default>
ctp_wakeup = port:PL03<1><default><default><1>
ctp_power_ldo =
ctp_power_ldo_vol =
ctp_power_io =
;--------------------------------------------------------------------------------
; CTP automatic detection configuration
;ctp_detect_used --- Whether startup automatic inspection function. 1:used,0:unused
;Module name postposition 1 said detection, 0 means no detection.
;--------------------------------------------------------------------------------
[ctp_list_para]
ctp_det_used = 1
ft5x_ts = 1
gt82x = 1
gslX680 = 1
gslX680new = 0
gt9xx_ts = 1
gt9xxf_ts = 0
tu_ts = 0
gt818_ts = 1
zet622x = 1
aw5306_ts = 1
icn83xx_ts = 0
[motor_para]
motor_used = 0
;----------------------------------------------------------------------------------
;lcd0 configuration
;lcd_if: 0:hv(sync+de); 1:8080; 2:ttl; 3:lvds; 4:dsi; 5:edp; 6:extend dsi
;lcd_x: lcd horizontal resolution
;lcd_y: lcd vertical resolution
;lcd_width: width of lcd in mm
;lcd_height: height of lcd in mm
;lcd_dclk_freq: in MHZ unit
;lcd_pwm_freq: in HZ unit
;lcd_pwm_pol: lcd backlight PWM polarity
;lcd_pwm_max_limit lcd backlight PWM max limit(<=255)
;lcd_hbp: hsync back porch
;lcd_ht: hsync total cycle
;lcd_vbp: vsync back porch
;lcd_vt: vysnc total cycle
;lcd_hspw: hsync plus width
;lcd_vspw: vysnc plus width
;lcd_lvds_if: 0:single link; 1:dual link
;lcd_lvds_colordepth: 0:8bit; 1:6bit
;lcd_lvds_mode: 0:NS mode; 1:JEIDA mode
;lcd_frm: 0:disable; 1:enable rgb666 dither; 2:enable rgb656 dither
;lcd_io_phase: 0:noraml; 1:intert phase(0~3bit: vsync phase; 4~7bit:hsync phase;
; 8~11bit:dclk phase; 12~15bit:de phase)
;lcd_gamma_en lcd gamma correction enable
;lcd_bright_curve_en lcd bright curve correction enable
;lcd_cmap_en lcd color map function enable
;deu_mode 0:smoll lcd screen; 1:large lcd screen(larger than 10inch)
;lcdgamma4iep: Smart Backlight parameter, lcd gamma vale * 10;
; decrease it while lcd is not bright enough; increase while lcd is too bright
;smart_color 90:normal lcd screen 65:retina lcd screen(9.7inch)
;----------------------------------------------------------------------------------
[lcd0_para]
lcd_used = 1
lcd_driver_name = "default_lcd"
lcd_if = 3
lcd_x = 1280
lcd_y = 800
lcd_width = 150
lcd_height = 94
lcd_dclk_freq = 71
lcd_pwm_used = 1
lcd_pwm_ch = 0
lcd_pwm_freq = 50000
lcd_pwm_pol = 1
lcd_hbp = 20
lcd_ht = 1418
lcd_hspw = 10
lcd_vbp = 10
lcd_vt = 830
lcd_vspw = 5
lcd_lvds_if = 0
lcd_lvds_colordepth = 1
lcd_lvds_mode = 0
lcd_frm = 1
lcd_gamma_en = 0
lcd_bright_curve_en = 0
lcd_cmap_en = 0
deu_mode = 0
lcdgamma4iep = 22
smart_color = 90
lcd_bl_en = port:PD13<1><0><default><1>
;ap6xxx_wl_regon = port:PL06<1><default><default><0>
;lcd_bl_en = port:PL06<1><0><default><1>
lcd_power = "axp22_dc1sw"
lcdd0 = port:PD18<3><0><default><default>
lcdd1 = port:PD19<3><0><default><default>
lcdd2 = port:PD20<3><0><default><default>
lcdd3 = port:PD21<3><0><default><default>
lcdd4 = port:PD22<3><0><default><default>
lcdd5 = port:PD23<3><0><default><default>
lcdd6 = port:PD24<3><0><default><default>
lcdd7 = port:PD25<3><0><default><default>
lcdd8 = port:PD26<3><0><default><default>
lcdd9 = port:PD27<3><0><default><default>
;----------------------------------------------------------------------------------
;pwm config
;----------------------------------------------------------------------------------
[pwm0_para]
pwm_used = 0
pwm_positive = port:PH00<2><0><default><default>
[pwm1_para]
pwm_used = 1
pwm_positive = port:PH01<2><0><default><default>
[usbc0]
usb_used = 1
usb_port_type = 2
usb_detect_type = 1
usb_id_gpio = port:PD10<0><1><default><default>
usb_det_vbus_gpio = "axp_ctrl"
usb_drv_vbus_gpio = port:power4<1><0><default><0>
usb_restrict_gpio =
usb_host_init_state = 0
usb_restric_flag = 0
usb_restric_voltage = 3550000
usb_restric_capacity= 5
usb_regulator_io = "nocare"
usb_regulator_vol = 0
usb_regulator_id_vbus = "axp22_dcdc1"
usb_regulator_id_vbus_vol = 3000000
[usbc1]
usb_used = 1
usb_drv_vbus_gpio = port:PD12<1><0><default><0>
usb_restrict_gpio =
usb_host_init_state = 1
usb_restric_flag = 0
usb_regulator_io = "nocare"
usb_regulator_vol = 0
usb_not_suspend = 0
;--------------------------------------------------------------------------------
;wifi/bt/fm/gps/nfc modules configuration
;module_num:
; 0- none
; 1- ap6181(wifi)
; 2- ap6210(wifi+bt)
; 3- rtl8188eu(wifi)
; 4- rtl8723au(wifi+bt)
; 5- rtl8723bs(wifi+bt)
; 6- esp8089(wifi)
; 7- ap6476(wifi+bt+fm+gps)
; 8- rtl8189es(wifi)
; 9- ap6212(wifi+bt+fm)
; 10- ap6330(wifi+bt+fm)
; 11- gb9663(wifi+bt+fm)
;module_power1: ""- bat, "axp_dldo1"- axp dldo1
;module_power1_vol: power1 voltage, mv; not used for module_power1 is ""
;module_power2: ""- bat, "axp_dldo2"- axp dldo2
;module_power2_vol: power2 voltage, mv; not used for module_power2 is ""
;module_power3: ""- bat, "axp_dldo2"- axp dldo2
;module_power3_vol: power3 voltage, mv; not used for module_power3 is ""
;power_switch: module power switch io when bat supply
;chip_en: enable chip io
;lpo_use_apclk: ""- not use, "losc_out"- a23/33, "ac10032k1"、"ac10032k2"、"ac10032k3"- a80/a83
;--------------------------------------------------------------------------------
[rf_para]
module_num = 1
module_power1 = "axp22_aldo1"
module_power1_vol = 3000000
module_power2 = ""
module_power2_vol = 3000000
module_power3 = ""
module_power3_vol = 3000000
power_switch =
chip_en =
lpo_use_apclk = "losc_out"
;--------------------------------------------------------------------------------
;wifi configuration
;wifi_used: 0-not use, 1- use
;wifi_sdc_id: 0- SDC0, 1- SDC1, 2- SDC2, 3- SDC3
;wifi_usbc_id: 0- USB0, 1- USB1, 2- USB2
;wifi_usbc_type: 1- EHCI(speed 2.0), 2- OHCI(speed 1.0)
;wl_reg_on: wifi function enable io
;wl_host_wake: wifi device wake-up host
;wl_host_wake_invert: whether wl_host_wake use inverter between ap and module
; 0: not used, 1: used
;--------------------------------------------------------------------------------
[wifi_para]
wifi_used = 1
wifi_sdc_id = 1
wifi_usbc_id = 1
wifi_usbc_type = 1
wifi_mod_sel = 1
wifi_power = ""
wifi_power_ext1 = ""
wifi_power_ext2 = ""
; 1 - ap6181 sdio wifi gpio config
;ap6xxx_wl_regon = port:PL06<1><default><default><0>
;ap6xxx_wl_host_wake = port:PL07<4><default><default><0>
;ap6xxx_lpo_use_apclk = 1
; 2 - ap6210 sdio wifi gpio config
ap6xxx_wl_regon = port:PL06<1><default><default><0>
ap6xxx_wl_host_wake = port:PL07<4><default><default><0>
;ap6xxx_bt_regon = port:PL08<1><default><default><0>
;ap6xxx_bt_wake = port:PL10<1><default><default><0>
;ap6xxx_bt_host_wake = port:PL09<4><default><default><0>
ap6xxx_lpo_use_apclk = 1
; 3 - rtl8188eu usb wifi gpio conifg
; 4 - rtl8723au usb wifi + bt
; 5 - rtl8723bs sdio wifi + bt
;rtl8723bs_chip_en = port:PL11<1><default><default><0>
;rtl8723bs_wl_regon = port:PL06<1><default><default><0>
;rtl8723bs_wl_host_wake = port:PL07<4><default><default><0>
;rtl8723bs_bt_regon = port:PL08<1><default><default><0>
;rtl8723bs_bt_wake = port:PL10<1><default><default><0>
;rtl8723bs_bt_host_wake = port:PL09<4><default><default><0>
;rtl8723bs_lpo_use_apclk = 0
; 6 - eagle sdio wifi
;esp_wl_chip_en = port:PL03<1><default><default><0>
;esp_wl_rst = port:PL02<1><default><default><0>
; 7 - ap6476 sdio wifi gpio config
;ap6xxx_wl_regon = port:PL06<1><default><default><0>
;ap6xxx_wl_host_wake = port:PL07<4><default><default><0>
;ap6xxx_bt_regon = port:PL08<1><default><default><0>
;ap6xxx_bt_wake = port:PL10<1><default><default><0>
;ap6xxx_bt_host_wake = port:PL09<4><default><default><0>
;ap6xxx_lpo_use_apclk = 1
; 8 - rtl8189es sdio wifi gpio conifg
;rtl8189es_shdn = port:PL06<1><default><default><0>
;rtl8189es_host_wake = port:PL07<4><default><default><0>
usb_vbus_power_ctrl = port:PL11<1><default><default><1>
usb_eth_power_ctrl = port:PL04<1><default><default><1>
;--------------------------------------------------------------------------------
;bluetooth configuration
;bt_used: 0- no used, 1- used
;bt_uard_id: 0- uart0, 1- uart1, 2- uart2
;bt_rst_n: bt function enable io
;bt_wake: host wake-up bluetooth device
;bt_wak_host: bt device wake-up host
;bt_wake_invert: whether bt_wake use inverter between ap and module
; 0: not used, 1: used
;bt_host_wake_invert: whether bt_host_wake use inverter between ap and module
; 0: not used, 1: used
;--------------------------------------------------------------------------------
[bt_para]
bt_used = 0
bt_uart_id = 1
bt_rst_n = port:PL08<1><default><default><0>
bt_wake = port:PL10<1><default><default><0>
bt_host_wake = port:PL09<4><default><default><0>
bt_wake_invert = 0
bt_host_wake_invert = 0
ls_int = port:PB07<1><default><default><0>
pcm_ch = port:PB05<1><default><default><0>
[gy_list_para]
gy_det_used = 0
[ls_list_para]
ls_det_used = 0
power_start = 3
pmu_temp_enable = 0