support cyw43455 for bpi-m4zero

This commit is contained in:
August 2024-07-04 18:42:39 +08:00
parent db59d1f5c3
commit 671f20bdda
14 changed files with 186 additions and 53 deletions

View File

@ -15,7 +15,7 @@ BOOTSCRIPT="boot-sun50iw9-bpi.cmd:boot.cmd"
OVERLAY_PREFIX="bpi-m4zero"
DEFAULT_OVERLAYS="i2c0 spi1 uart4"
MODULES="aic8800_bsp aic8800_fdrv"
MODULES="bcmdhd"
function image_specific_armbian_env_ready__sun50iw9_bpi_bootscript() {
display_alert "$BOARD" "Updating boot script and env" "info"

View File

@ -39,7 +39,7 @@ fi
# mmc 0 is always mapped to device u-boot (2016.09+) was loaded from
if test "${devtype}" = "mmc"; then part uuid mmc 0:1 partuuid; fi
setenv bootargs "root=${rootdev} rootwait rootfstype=${rootfstype} ${consoleargs} consoleblank=0 loglevel=${verbosity} fsck.mode=force fsck.repair=yes board=${board} ubootpart=${partuuid} disp_reserve=${disp_reserve} ${extraargs} ${extraboardargs}"
setenv bootargs "root=${rootdev} rootwait rootfstype=${rootfstype} ${consoleargs} consoleblank=0 loglevel=${verbosity} fsck.mode=force fsck.repair=yes net.ifnames=0 board=${board} ubootpart=${partuuid} disp_reserve=${disp_reserve} ${extraargs} ${extraboardargs}"
if test "${docker_optimizations}" = "on"; then setenv bootargs "${bootargs} cgroup_enable=memory swapaccount=1"; fi

View File

@ -2382,7 +2382,7 @@ CONFIG_USB_NET_CDCETHER=y
CONFIG_USB_NET_CDC_NCM=y
# CONFIG_USB_NET_HUAWEI_CDC_NCM is not set
# CONFIG_USB_NET_CDC_MBIM is not set
# CONFIG_USB_NET_DM9601 is not set
CONFIG_USB_NET_DM9601=m
# CONFIG_USB_NET_SR9700 is not set
# CONFIG_USB_NET_SR9800 is not set
# CONFIG_USB_NET_SMSC75XX is not set
@ -2766,7 +2766,7 @@ CONFIG_INPUT_MISC=y
CONFIG_INPUT_AXP2101_PEK=y
CONFIG_INPUT_UINPUT=y
# CONFIG_INPUT_PCF8574 is not set
# CONFIG_INPUT_PWM_BEEPER is not set
CONFIG_INPUT_PWM_BEEPER=m
# CONFIG_INPUT_PWM_VIBRA is not set
# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
# CONFIG_INPUT_ADXL34X is not set
@ -2822,6 +2822,7 @@ CONFIG_TRACE_ROUTER=m
CONFIG_TRACE_SINK=m
CONFIG_NULL_TTY=m
CONFIG_LDISC_AUTOLOAD=y
CONFIG_DEVGPIOMEM=y
CONFIG_DEVMEM=y
#
@ -3331,7 +3332,7 @@ CONFIG_HWMON=y
# CONFIG_SENSORS_OCC_P8_I2C is not set
# CONFIG_SENSORS_PCF8591 is not set
# CONFIG_PMBUS is not set
# CONFIG_SENSORS_PWM_FAN is not set
CONFIG_SENSORS_PWM_FAN=m
# CONFIG_SENSORS_SHT15 is not set
# CONFIG_SENSORS_SHT21 is not set
# CONFIG_SENSORS_SHT3x is not set
@ -4588,29 +4589,29 @@ CONFIG_USB_EHCI_HCD=y
# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
CONFIG_USB_EHCI_TT_NEWSCHED=y
# CONFIG_USB_EHCI_FSL is not set
CONFIG_USB_EHCI_HCD_SUNXI=m
CONFIG_USB_EHCI_HCD_SUNXI=y
# CONFIG_USB_EHCI_HCD_PLATFORM is not set
# CONFIG_USB_OXU210HP_HCD is not set
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_FOTG210_HCD is not set
# CONFIG_USB_MAX3421_HCD is not set
CONFIG_USB_OHCI_HCD=y
CONFIG_USB_OHCI_HCD_SUNXI=m
CONFIG_USB_OHCI_HCD_SUNXI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
# CONFIG_USB_U132_HCD is not set
# CONFIG_USB_SL811_HCD is not set
# CONFIG_USB_R8A66597_HCD is not set
# CONFIG_USB_HCD_TEST_MODE is not set
CONFIG_USB_SUNXI_HCD=m
CONFIG_USB_SUNXI_HCI=m
CONFIG_USB_SUNXI_EHCI0=m
CONFIG_USB_SUNXI_EHCI1=m
CONFIG_USB_SUNXI_EHCI2=m
CONFIG_USB_SUNXI_EHCI3=m
CONFIG_USB_SUNXI_OHCI0=m
CONFIG_USB_SUNXI_OHCI1=m
CONFIG_USB_SUNXI_OHCI2=m
CONFIG_USB_SUNXI_OHCI3=m
CONFIG_USB_SUNXI_HCD=y
CONFIG_USB_SUNXI_HCI=y
CONFIG_USB_SUNXI_EHCI0=y
CONFIG_USB_SUNXI_EHCI1=y
CONFIG_USB_SUNXI_EHCI2=y
CONFIG_USB_SUNXI_EHCI3=y
CONFIG_USB_SUNXI_OHCI0=y
CONFIG_USB_SUNXI_OHCI1=y
CONFIG_USB_SUNXI_OHCI2=y
CONFIG_USB_SUNXI_OHCI3=y
#
# USB Device Class drivers
@ -6327,9 +6328,15 @@ CONFIG_ARCH_HAS_KCOV=y
#
# Debug Lockups and Hangs
#
# CONFIG_SOFTLOCKUP_DETECTOR is not set
# CONFIG_DETECT_HUNG_TASK is not set
# CONFIG_WQ_WATCHDOG is not set
CONFIG_LOCKUP_DETECTOR=y
CONFIG_SOFTLOCKUP_DETECTOR=y
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=1
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
CONFIG_BOOTPARAM_HUNG_TASK_PANIC=y
CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=1
CONFIG_WQ_WATCHDOG=y
# end of Debug Lockups and Hangs
# CONFIG_PANIC_ON_OOPS is not set

View File

@ -2216,7 +2216,7 @@ CONFIG_NET_VENDOR_ALACRITECH=y
CONFIG_NET_VENDOR_ALLWINNER=y
# CONFIG_SUN4I_EMAC is not set
CONFIG_SUNXI_GMAC=y
# CONFIG_SUNXI_EXT_PHY is not set
CONFIG_SUNXI_EXT_PHY=y
# CONFIG_ALTERA_TSE is not set
CONFIG_NET_VENDOR_AMAZON=y
CONFIG_NET_VENDOR_AMD=y
@ -2382,7 +2382,7 @@ CONFIG_USB_NET_CDCETHER=y
CONFIG_USB_NET_CDC_NCM=y
# CONFIG_USB_NET_HUAWEI_CDC_NCM is not set
# CONFIG_USB_NET_CDC_MBIM is not set
# CONFIG_USB_NET_DM9601 is not set
CONFIG_USB_NET_DM9601=m
# CONFIG_USB_NET_SR9700 is not set
# CONFIG_USB_NET_SR9800 is not set
# CONFIG_USB_NET_SMSC75XX is not set
@ -2451,11 +2451,7 @@ CONFIG_WCN36XX=m
CONFIG_WCN36XX_DEBUGFS=y
CONFIG_WLAN_VENDOR_ATMEL=y
# CONFIG_AT76C50X_USB is not set
CONFIG_WLAN_VENDOR_BROADCOM=y
# CONFIG_B43 is not set
# CONFIG_B43LEGACY is not set
# CONFIG_BRCMSMAC is not set
# CONFIG_BRCMFMAC is not set
# CONFIG_WLAN_VENDOR_BROADCOM is not set
CONFIG_WLAN_VENDOR_CISCO=y
CONFIG_WLAN_VENDOR_INTEL=y
CONFIG_WLAN_VENDOR_INTERSIL=y
@ -2509,7 +2505,13 @@ CONFIG_WLAN_UWE5622=m
CONFIG_SPRDWL_NG=m
CONFIG_UNISOC_WIFI_PS=y
CONFIG_TTY_OVERY_SDIO=m
# CONFIG_BCMDHD is not set
CONFIG_BCMDHD=m
CONFIG_BCMDHD_FW_PATH="/lib/firmware/infineon/fw_bcmdhd.bin"
CONFIG_BCMDHD_NVRAM_PATH="/lib/firmware/infineon/nvram.txt"
CONFIG_BCMDHD_SDIO=y
# CONFIG_BCMDHD_USB is not set
CONFIG_BCMDHD_OOB=y
# CONFIG_BCMDHD_SDIO_IRQ is not set
CONFIG_AIC_WLAN_SUPPORT=y
CONFIG_AIC8800_WLAN_SUPPORT=m
CONFIG_AIC8800_BTLPM_SUPPORT=m
@ -2766,7 +2768,7 @@ CONFIG_INPUT_MISC=y
CONFIG_INPUT_AXP2101_PEK=y
CONFIG_INPUT_UINPUT=y
# CONFIG_INPUT_PCF8574 is not set
# CONFIG_INPUT_PWM_BEEPER is not set
CONFIG_INPUT_PWM_BEEPER=m
# CONFIG_INPUT_PWM_VIBRA is not set
# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
# CONFIG_INPUT_ADXL34X is not set
@ -2822,6 +2824,7 @@ CONFIG_TRACE_ROUTER=m
CONFIG_TRACE_SINK=m
CONFIG_NULL_TTY=m
CONFIG_LDISC_AUTOLOAD=y
CONFIG_DEVGPIOMEM=y
CONFIG_DEVMEM=y
#
@ -3331,7 +3334,7 @@ CONFIG_HWMON=y
# CONFIG_SENSORS_OCC_P8_I2C is not set
# CONFIG_SENSORS_PCF8591 is not set
# CONFIG_PMBUS is not set
# CONFIG_SENSORS_PWM_FAN is not set
CONFIG_SENSORS_PWM_FAN=m
# CONFIG_SENSORS_SHT15 is not set
# CONFIG_SENSORS_SHT21 is not set
# CONFIG_SENSORS_SHT3x is not set
@ -4588,29 +4591,29 @@ CONFIG_USB_EHCI_HCD=y
# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
CONFIG_USB_EHCI_TT_NEWSCHED=y
# CONFIG_USB_EHCI_FSL is not set
CONFIG_USB_EHCI_HCD_SUNXI=m
CONFIG_USB_EHCI_HCD_SUNXI=y
# CONFIG_USB_EHCI_HCD_PLATFORM is not set
# CONFIG_USB_OXU210HP_HCD is not set
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_FOTG210_HCD is not set
# CONFIG_USB_MAX3421_HCD is not set
CONFIG_USB_OHCI_HCD=y
CONFIG_USB_OHCI_HCD_SUNXI=m
CONFIG_USB_OHCI_HCD_SUNXI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
# CONFIG_USB_U132_HCD is not set
# CONFIG_USB_SL811_HCD is not set
# CONFIG_USB_R8A66597_HCD is not set
# CONFIG_USB_HCD_TEST_MODE is not set
CONFIG_USB_SUNXI_HCD=m
CONFIG_USB_SUNXI_HCI=m
CONFIG_USB_SUNXI_EHCI0=m
CONFIG_USB_SUNXI_EHCI1=m
CONFIG_USB_SUNXI_EHCI2=m
CONFIG_USB_SUNXI_EHCI3=m
CONFIG_USB_SUNXI_OHCI0=m
CONFIG_USB_SUNXI_OHCI1=m
CONFIG_USB_SUNXI_OHCI2=m
CONFIG_USB_SUNXI_OHCI3=m
CONFIG_USB_SUNXI_HCD=y
CONFIG_USB_SUNXI_HCI=y
CONFIG_USB_SUNXI_EHCI0=y
CONFIG_USB_SUNXI_EHCI1=y
CONFIG_USB_SUNXI_EHCI2=y
CONFIG_USB_SUNXI_EHCI3=y
CONFIG_USB_SUNXI_OHCI0=y
CONFIG_USB_SUNXI_OHCI1=y
CONFIG_USB_SUNXI_OHCI2=y
CONFIG_USB_SUNXI_OHCI3=y
#
# USB Device Class drivers
@ -6327,9 +6330,15 @@ CONFIG_ARCH_HAS_KCOV=y
#
# Debug Lockups and Hangs
#
# CONFIG_SOFTLOCKUP_DETECTOR is not set
# CONFIG_DETECT_HUNG_TASK is not set
# CONFIG_WQ_WATCHDOG is not set
CONFIG_LOCKUP_DETECTOR=y
CONFIG_SOFTLOCKUP_DETECTOR=y
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=1
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
CONFIG_BOOTPARAM_HUNG_TASK_PANIC=y
CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=1
CONFIG_WQ_WATCHDOG=y
# end of Debug Lockups and Hangs
# CONFIG_PANIC_ON_OOPS is not set

View File

@ -20,9 +20,9 @@ INITRD_ARCH=arm
# partition offset
OFFSET=20
#function fetch_sources_tools__meson_bpi_fip() {
#fetch_from_repo "https://github.com/Dangku/allwinner-boot-pack" "allwinner-boot-pack" "branch:master"
#}
function fetch_sources_tools__meson_bpi_fip() {
fetch_from_repo "https://github.com/Dangku/allwinner-boot-pack" "allwinner-boot-pack" "branch:master"
}
function add_host_dependencies__meson_bpi_hostdeb() {
display_alert "$BOARD" "adding legacy build host deps" "info"

View File

@ -74,7 +74,7 @@ function uboot_custom_postprocess()
run_host_command_logged rm -rfv ${pack_out}/*.dts sys_config u-boot.dtb
run_host_command_logged cp -rpv ${pack_src}/common/bin/* ${pack_out}/
run_host_command_logged cp -pv ${pack_src}/config/sys_config_${BOARD}.fex ${pack_out}/sys_config.fex
run_host_command_logged cp -pv ${pack_src}/config/u-boot-${BOARD}.dts ${pack_out}/u-boot.dts
run_host_command_logged cp -pv ${pack_src}/config/sun50i-h616-bananapi-${BOARD#bpi-}.dts ${pack_out}/u-boot.dts
run_host_command_logged cp -pv u-boot.bin ${pack_out}/u-boot.fex
# make u-boot dtb
@ -142,7 +142,7 @@ function post_family_tweaks__sun50iw9_bpi_systemd()
display_alert "${BOARD}" "Installing systemd service" "info"
# enable systemd service
[[ -f "${SDCARD}"/lib/systemd/system/aic-hciuart.service ]] && chroot_sdcard systemctl --no-reload enable aic-hciuart.service
[[ -f "${SDCARD}"/lib/systemd/system/bpi-hciuart.service ]] && chroot_sdcard systemctl --no-reload enable bpi-hciuart.service
# disable systemd service
[[ -f "${SDCARD}"/lib/systemd/system/apt-daily.service ]] && disable_systemd_service_sdcard apt-daily.service

View File

@ -0,0 +1,11 @@
#Note default open channel 1-13
#For most country, channel 1-13
ccode=CN
regrev=38
#For North America, channel 1-11
#ccode=US
#regrev=3
#Disable SDIO auto sleep mode
dhd_slpauto=0

View File

@ -0,0 +1,103 @@
##K019-CW43-DW 20211029
NVRAMRev=$Rev: 498373 $
sromrev=11
vendid=0x14e4
devid=0x43ab
manfid=0x2d0
prodid=0x06e4
macaddr=00:90:4c:c5:12:38
nocrc=1
boardtype=0x6e4
boardrev=0x1304
#XTAL 37.4MHz
xtalfreq=37400
ccode=CN
regrev=38
btc_mode=1
#------------------------------------------------------
#boardflags: 5GHz eTR switch by default
# 2.4GHz eTR switch by default
# bit1 for btcoex
boardflags=0x00480201
boardflags2=0x40800000
boardflags3=0x48200100
phycal_tempdelta=15
rxchain=1
txchain=1
aa2g=1
aa5g=1
tssipos5g=1
tssipos2g=1
femctrl=0
AvVmid_c0=1,165,2,100,2,100,2,100,2,100
#pa2ga0=-170,6462,-755
#pa2ga1=-118,4850,-635
pa2ga0=-166,6276,-718
pa5ga0=-157,7145,-832,-157,7139,-829,-156,7130,-827,-152,7206,-832
#pa5ga1=-142,4930,-655,-150,4859,-646,-156,4887,-644,-158,4864,-641
itrsw=1
pdoffset2g40ma0=10
pdoffset40ma0=0xaaaa
pdoffset80ma0=0xaaaa
extpagain5g=2
extpagain2g=2
tworangetssi2g=1
tworangetssi5g=1
# LTECX flags
# WCI2
ltecxmux=0
ltecxpadnum=0x0504
ltecxfnsel=0x22
ltecxgcigpio=0x32
maxp2ga0=80
ofdmlrbw202gpo=0x0022
dot11agofdmhrbw202gpo=0x4442
mcsbw202gpo=0x98444422
mcsbw402gpo=0x98444422
maxp5ga0=82,82,82,82
mcsbw205glpo=0xb9555000
mcsbw205gmpo=0xb9555000
mcsbw205ghpo=0xb9555000
mcsbw405glpo=0xb9555000
mcsbw405gmpo=0xb9555000
mcsbw405ghpo=0xb9555000
mcsbw805glpo=0xb9555000
mcsbw805gmpo=0xb9555000
mcsbw805ghpo=0xb9555000
swctrlmap_2g=0x00000000,0x00000000,0x00000000,0x010000,0x3ff
swctrlmap_5g=0x00100010,0x00200020,0x00200020,0x010000,0x3fe
swctrlmapext_5g=0x00000000,0x00000000,0x00000000,0x000000,0x3
swctrlmapext_2g=0x00000000,0x00000000,0x00000000,0x000000,0x3
vcodivmode=1
deadman_to=481500000
ed_thresh2g=-54
ed_thresh5g=-54
eu_edthresh2g=-54
eu_edthresh5g=-54
ldo1=4
rawtempsense=0x1ff
cckPwrIdxCorr=3
cckTssiDelay=150
ofdmTssiDelay=150
txpwr2gAdcScale=1
txpwr5gAdcScale=1
dot11b_opts=0x3aa85
cbfilttype=2
fdsslevel_ch1=6
fdsslevel_ch11=4
# Remove the radiotap in monitor mode
# no_radiotap=1
# Enable the Hardware OOB with muxenab = 0x10 or 0xf0
muxenab=0x10

View File

@ -7,7 +7,7 @@ After=dev-ttyAS1.device modprobe@.service
[Service]
Type=simple
ExecStartPre=/usr/sbin/rfkill unblock bluetooth
ExecStart=/usr/local/bin/aic-hciuart
ExecStart=/usr/local/bin/bpi-hciuart
ExecStopPost=/usr/sbin/rfkill block bluetooth
[Install]

View File

@ -13,7 +13,10 @@ fi
# Delay
/bin/sleep 1
/usr/bin/hciattach -n -s 115200 /dev/ttyAS1 any 1500000 flow nosleep
#/usr/bin/hciattach -s 1500000 /dev/ttyAS1 any 1500000 flow nosleep
# aic8800
#/usr/bin/hciattach -n -s 115200 /dev/ttyAS1 any 1500000 flow nosleep
# cyw43455
/usr/local/bin/hciattach -n -s 115200 /dev/ttyAS1 bcm43xx 1500000 flow nosleep
/bin/sleep 1

Binary file not shown.