Failed to find match for field 'normal_x'.
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
Python内容推荐
python爬虫程序运行结果示例文件
python爬虫程序运行结果示例文件
EI复现基于深度强化学习的微能源网能量管理与优化策略研究(Python代码实现)
内容概要:本文围绕基于深度强化学习的微能源网能量管理与优化策略展开研究,提出了一种结合深度强化学习技术的能量管理系统,旨在应对微能源网中可再生能源出力波动性强、负荷需求不确定等挑战。通过构建包含光伏、风电、储能等多种分布式能源的微电网模型,设计了基于深度Q网络(DQN)或近端策略优化(PPO)等算法的智能决策机制,实现对系统内部能量的高效调度与成本最优控制。研究重点在于优化运行策略以降低综合能耗与运营成本,同时提升系统对新能源的消纳能力和运行稳定性,并通过Python编程实现算法仿真与结果验证,展示了其在典型场景下的优越性能。; 适合人群:具备一定Python编程基础和机器学习基础知识,从事能源系统优化、智能电网、分布式能源等相关领域的科研人员及工程技术人员,尤其适合研究生及以上学历的研究者。; 使用场景及目标:①应用于微能源网的实际运行调度中,实现能源的智能化管理和经济性优化;②为学术研究提供可复现的深度强化学习在能源领域应用的典型案例,促进相关算法的改进与推广;③支持教学演示与课程设计,帮助学生理解强化学习在复杂系统控制中的实际应用。; 阅读建议:建议读者在学习过程中结合提供的Python代码进行实践操作,深入理解深度强化学习模型的构建、训练流程与参数调优方法,同时建议扩展至多智能体强化学习、模型预测控制(MPC)与强化学习融合等前沿方向,以提升系统整体性能。
论文复现风光制氢合成氨系统优化研究(Python代码实现)
内容概要:本文围绕“风光制氢合成氨系统优化研究”展开,通过Python代码实现对该综合能源系统的建模与优化,旨在解决可再生能源(风能、光伏)波动性带来的能源消纳问题,并探索绿色制氢及进一步合成氨的可行性路径。研究涵盖了系统各组件的数学建模、多目标优化问题的构建与求解,重点分析了能量流动、设备容量配置、运行策略等关键因素,以实现经济性、环保性和能效的综合最优。文中提供了完整的代码实现方案,便于读者复现和理解整个优化流程,具有较强的理论深度与工程应用价值。; 适合人群:具备一定Python编程基础和能源系统知识,从事新能源、综合能源系统、电力系统优化等相关领域的研究生、科研人员及工程技术人员。; 使用场景及目标:①学习如何利用Python进行综合能源系统(如风光制氢合成氨)的建模与仿真;②掌握多目标优化问题在能源系统中的应用方法,理解目标函数与约束条件的设计思路;③复现相关学术论文,为自己的科研工作提供代码和技术参考。; 阅读建议:在阅读过程中,建议结合提供的Python代码逐行分析,重点关注系统建模的逻辑、优化模型的构建以及求解器的调用方法。读者可根据自身需求修改参数、优化目标或系统结构,以适应不同的研究场景,从而深入理解综合能源系统优化的核心思想。
Python作业,考题一
Python练习
改进的多目标差分进化算法在电力系统环境经济调度中的应用(Python代码实现)【电气期刊论文复现】
内容概要:本文系统研究了改进的多目标差分进化算法在电力系统环境经济调度中的应用,并基于Python代码实现了电气领域权威期刊论文的完整复现。文章深入剖析了该算法在协同优化电力系统经济性与环保性双重目标时的创新设计,通过引入先进的改进策略,显著增强了算法的全局搜索能力和收敛稳定性,有效克服了传统优化方法易陷入局部最优、难以平衡多目标冲突等技术瓶颈。研究不仅详尽阐述了算法的核心架构、关键操作步骤与技术实现细节,还通过严谨的仿真实验验证了其在降低系统发电成本、减少污染物排放方面的卓越性能与实用价值。; 适合人群:具备电力系统分析基础理论知识和Python编程实践经验的研究生、科研人员,以及从事能源互联网、智能电网优化调度等相关领域的工程技术人员。; 使用场景及目标:①作为电力系统多目标优化调度领域的教学案例与科研参考,支撑相关课题的算法设计与性能验证;②为高比例可再生能源接入背景下,实现发电侧经济效益与生态环境效益协同最优的调度决策提供可复现、可扩展的技术方案与工具支持。; 阅读建议:建议读者结合所提供的完整Python代码进行动手实践,通过调整算法参数、分析中间结果与最终输出,深入掌握其运行机制与优化逻辑,同时可尝试将该方法迁移应用于其他复杂的多目标工程优化问题中,以拓展其应用边界。
8-07-14_MegaCLI for linux_windows
包含如下操作系统版本 FreeBSD Linux Solaris Windows 分别对应如下目录 MegaCLI for DOS MegaCLI for Linux MegaCLI for Solaris MegaCLI for FreeBSD MegaCLI for Windows ********************************************* LSI Corp. MegaRAID MegaCLI Release ********************************************* Release Date: 01/20/14 ======================== Supported Controllers ================== MegaRAID SAS 9270-8i MegaRAID SAS 9271-4i MegaRAID SAS 9271-8i MegaRAID SAS 9271-8iCC MegaRAID SAS 9286-8e MegaRAID SAS 9286CV-8e MegaRAID SAS 9286CV-8eCC MegaRAID SAS 9265-8i MegaRAID SAS 9285-8e MegaRAID SAS 9240-4i MegaRAID SAS 9240-8i MegaRAID SAS 9260-4i MegaRAID SAS 9260CV-4i MegaRAID SAS 9260-8i MegaRAID SAS 9260CV-8i MegaRAID SAS 9260DE-8i MegaRAID SAS 9261-8i MegaRAID SAS 9280-4i4e MegaRAID SAS 9280-8e MegaRAID SAS 9280DE-8e MegaRAID SAS 9280-24i4e MegaRAID SAS 9280-16i4e MegaRAID SAS 9260-16i MegaRAID SAS 9266-4i MegaRAID SAS 9266-8i MegaRAID SAS 9285CV-8e MegaRAID SAS 8704ELP MegaRAID SAS 8704EM2 MegaRAID SAS 8708ELP MegaRAID SAS 8708EM2 MegaRAID SAS 8880EM2 MegaRAID SAS 8888ELP MegaRAID SAS 8308ELP* MegaRAID SAS 8344ELP* MegaRAID SAS 84016E* MegaRAID SAS 8408E* MegaRAID SAS 8480E* MegaRAID SATA 300-8ELP* *These older controllers should work but have not been tested. Component: ========= SAS MegaRAID MegaCLI Release Date: 01/20/14 Version Numbers: MegaCLI =============== =========== Current Version 8.07.14 Previous Version 8.07.07 Contents: ========= This package contains MegaCLI for the following OSes: DOS FreeBSD Linux Solaris Windows Use the MegaCLI components from the folder that matches your OS. Enhancements and Bug Fixes ========================== SCGCQ00393585 (DFCT) - VD creation from MegaCli fails on Solaris Sparc 10u9 operating system. SCGCQ00413883 (DFCT) - "megacli -version -pd -a0" Segmentation Faults if PDs are missing SCGCQ00445356 (CSET) - Megacli crashes after invoking any command in SGI system with one 9280-8e and 2 quad port qlogic FC cards. SCGCQ
gun tar for windows
windows中打包tar文件 GUN tar 和在unix中使用tar命令基本上一样的。可以使用tar --help得到帮助的详细信息。 ------------------------------------------- GNU `tar' saves many files together into a single tape or disk archive, and can restore individual files from the archive. Usage: tar [OPTION]... [FILE]... If a long option shows an argument as mandatory, then it is mandatory for the equivalent short option also. Similarly for optional arguments. Main operation mode: -t, --list list the contents of an archive -x, --extract, --get extract files from an archive -c, --create create a new archive -d, --diff, --compare find differences between archive and file system -r, --append append files to the end of an archive -u, --update only append files newer than copy in archive -A, --catenate append tar files to an archive --concatenate same as -A --delete delete from the archive (not on mag tapes!) Operation modifiers: -W, --verify attempt to verify the archive after writing it --remove-files remove files after adding them to the archive -k, --keep-old-files don't overwrite existing files when extracting -U, --unlink-first remove each file prior to extracting over it --recursive-unlink empty hierarchies prior to extracting directory -S, --sparse handle sparse files efficiently -O, --to-stdout extract files to standard output -G, --incremental handle old GNU-format incremental backup -g, --listed-incremental handle new GNU-format incremental backup --ignore-failed-read do not exit with nonzero on unreadable files Handling of file attributes: --owner=NAME force NAME as owner for added files --group=NAME force NAME as group for added files --mode=CHANGES force (symbolic) mode CHANGES for added files --atime-preserve don't change acces
Linux系统递归生成目录中文件的md5的方法
主要介绍了Linux系统递归生成目录中文件的md5的方法,利用PHP脚本实现,需要的朋友可以参考下
DOS批处理高级教程精选合编
在有DOS基础知识的基础上提高
softap_ap6212a0_tinav2.1_验证通过_旧版本的系统_20170915_1223没有外层目录.7z
旧版本版本的全志R16平台的tinav2.1的系统打开softAP 2017/9/14 17:25 版本:V1.0 1、原始编译: rootroot@cm-System-Product-Name:~$ cd /home/wwt/ rootroot@cm-System-Product-Name:/home/wwt$ tar zxvf tinaV2.1_wyb_20170302_patch_leo_20161102.tar.gz rootroot@cm-System-Product-Name:/home/wwt$ mv tinaV2.1 softap_ap6212a0_tinav2.1 rootroot@cm-System-Product-Name:/home/wwt$ cd softap_ap6212a0_tinav2.1/ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ source build/envsetup.sh including target/allwinner/tulip-d1/vendorsetup.sh including target/allwinner/octopus-sch/vendorsetup.sh including target/allwinner/azalea-perf2/vendorsetup.sh including target/allwinner/azalea-perf3/vendorsetup.sh including target/allwinner/octopus-dev/vendorsetup.sh including target/allwinner/astar-evb/vendorsetup.sh including target/allwinner/generic/vendorsetup.sh including target/allwinner/azalea-perf1/vendorsetup.sh including target/allwinner/astar-parrot/vendorsetup.sh including target/allwinner/astar-spk/vendorsetup.sh including target/allwinner/azalea-evb/vendorsetup.sh rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ lunch You're building on Linux Lunch menu... pick a combo: 1. tulip_d1-tina 2. tulip_d1-dragonboard 3. octopus_sch-tina 4. octopus_sch-dragonboard 5. azalea_perf2-tina 6. azalea_perf2-dragonboard 7. azalea_perf3-tina 8. azalea_perf3-dragonboard 9. octopus_dev-tina 10. octopus_dev-dragonboard 11. astar_evb-tina 12. azalea_perf1-tina 13. azalea_perf1-dragonboard 14. astar_parrot-tina 15. astar_parrot-dragonboard 16. astar_spk-tina 17. astar_spk-dragonboard 18. azalea_evb-tina 19. azalea_evb-dragonboard Which would you like?14 ============================================ PLATFORM_VERSION_CODENAME=Neptune PLATFORM_VERSION=2.0.0 TARGET_PRODUCT=astar_parrot TARGET_BUILD_VARIANT=tina TARGET_BUILD_TYPE=release TARGET_BUILD_APPS= TARGET_ARCH=arm TARGET_ARCH_VARIANT=armv7-a-neon TARGET_CPU_VARIANT=cortex-a7 TARGET_2ND_ARCH= TARGET_2ND_ARCH_VARIANT= TARGET_2ND_CPU_VARIANT= HOST_ARCH=x86_64 HOST_OS=linux HOST_OS_EXTRA=Linux-3.13.0-24-generic-x86_64-with-Ubuntu-14.04-trusty HOST_BUILD_TYPE=release BUILD_ID=57513AA3 OUT_DIR= ============================================ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ make -j12 rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ pack -d 2、 将softap.tar.bz2解压到package/allwinner下。 将dnsmasq.tar.bz2解压并替换package/network/services下的dnsmasq文件夹。 3、配置内核: rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ make kernel_menuconfig [*] Networking support ---> --- Networking support Networking options ---> (在第二屏) [ ] Network packet filtering framework (Netfilter) ---> 修改为: [*] Network packet filtering framework (Netfilter) ---> [ ] Advanced netfilter configuration 修改为: [*] Advanced netfilter configuration Core Netfilter Configuration ---> < > Netfilter NFACCT over NFNETLINK interface < > Netfilter NFQUEUE over NFNETLINK interface < > Netfilter LOG over NFNETLINK interface < > Netfilter connection tracking support < > Netfilter Xtables support (required for ip_tables) 修改为: < > Netfilter NFACCT over NFNETLINK interface < > Netfilter NFQUEUE over NFNETLINK interface < > Netfilter LOG over NFNETLINK interface <*> Netfilter connection tracking support [*] Connection mark tracking support [*] Connection tracking security mark support (NEW) (默认选中) [*] Supply CT list in procfs (OBSOLETE) [*] Connection tracking events [*] Connection tracking timeout (NEW) [*] Connection tracking timestamping < > DCCP protocol connection tracking support (EXPERIMENTAL) < > SCTP protocol connection tracking support (EXPERIMENTAL) < > UDP-Lite protocol connection tracking support < > Amanda backup protocol support < > FTP protocol support < > H.323 protocol support < > IRC protocol support < > NetBIOS name service protocol support < > SNMP service protocol support < > PPtP protocol support < > SANE protocol support (EXPERIMENTAL) < > SIP protocol support < > TFTP protocol support <M> Connection tracking netlink interface <M> Connection tracking timeout tuning via Netlink <*> Netfilter Xtables support (required for ip_tables) *** Xtables combined modules *** (有很多项,在下面!) <*> "conntrack" connection tracking match support <*> "state" match support < > IP virtual server support ---> 修改为: <*> IP virtual server support ---> [ ] Netfilter connection tracking (NEW) 修改为(在最后面): [*] Netfilter connection tracking IP: Netfilter Configuration ---> < > IPv4 connection tracking support (required for NAT) 修改为: <*> IPv4 connection tracking support (required for NAT) < > IP tables support (required for filtering/masq/NAT) 修改为: <*> IP tables support (required for filtering/masq/NAT) <*> Packet filtering < > Full NAT 修改为: <*> Full NAT <*> MASQUERADE target support <*> NETMAP target support <*> REDIRECT target support <*> Packet mangling 4、配置系统: rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ make menuconfig Base system ---> < > dnsmasq.............................................. DNS and DHCP server 修改为: <*> dnsmasq.............................................. DNS and DHCP server Allwinner ---> < > softap............................................... Tina softap manager (NEW) ---- 修改为: <*> softap............................................... Tina softap manager ---> --- softap............................................... Tina softap manager < > softap-demo......................................... Tina softap app demo (NEW) 修改为: <*> softap-demo......................................... Tina softap app demo Network ---> Firewall ---> < > iptables................................. IP firewall administration tool ---- 修改为: (里面不用选中) <*> iptables................................. IP firewall administration tool ---> Network ---> < > hostapd................................. IEEE 802.1x Authenticator (full) < > hostapd-common............... hostapd/wpa_supplicant common support files < > hostapd-common-old 修改为: <*> hostapd................................. IEEE 802.1x Authenticator (full) -*- hostapd-common............... hostapd/wpa_supplicant common support files < > hostapd-common-old Utilities ---> <*> playdemo................................... music play in 3 kinds of mode 修改为: < > playdemo................................... music play in 3 kinds of mode 5、配置编译加载选项: rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ find . -name netfilter.mk ./package/kernel/linux/modules/netfilter.mk ./build/netfilter.mk rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ W:\softap_ap6212a0_tinav2.1\build\netfilter.mk $(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_LOG, $(P_XT)xt_LOG)) $(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_LOG, $(P_XT)nf_log_common)) $(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_LOG, $(P_V4)nf_log_ipv4)) $(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_TCPMSS, $(P_XT)xt_TCPMSS)) $(eval $(call nf_add,IPT_CORE,CONFIG_IP_NF_TARGET_REJECT, $(P_V4)ipt_REJECT)) $(eval $(call nf_add,IPT_CORE,CONFIG_IP_NF_TARGET_REJECT, $(P_V4)nf_reject_ipv4)) $(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_MATCH_TIME, $(P_XT)xt_time)) $(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_MARK, $(P_XT)xt_mark)) $(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_LOG, $(P_XT)xt_LOG)) #$(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_LOG, $(P_XT)nf_log_common)) #$(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_LOG, $(P_V4)nf_log_ipv4)) $(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_TCPMSS, $(P_XT)xt_TCPMSS)) $(eval $(call nf_add,IPT_CORE,CONFIG_IP_NF_TARGET_REJECT, $(P_V4)ipt_REJECT)) #$(eval $(call nf_add,IPT_CORE,CONFIG_IP_NF_TARGET_REJECT, $(P_V4)nf_reject_ipv4)) $(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_MATCH_TIME, $(P_XT)xt_time)) $(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_MARK, $(P_XT)xt_mark)) 不配置这里就会在这里让你选择(选择:N/y都会出错的!) rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ make -j12 make -C /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/compile_dir/target/linux-astar-parrot/linux-3.4.39 HOSTCFLAGS="-O2 -I/home/wwt/softap_ap6212a0_tinav2.1/out/host/include -I/home/wwt/softap_ap6212a0_tinav2.1/out/host/usr/include -Wall -Wmissing-prototypes -Wstrict-prototypes" CROSS_COMPILE="arm-openwrt-linux-muslgnueabi-" ARCH="arm" KBUILD_HAVE_NLS=no KBUILD_BUILD_USER="" KBUILD_BUILD_HOST="" CONFIG_SHELL="bash" V='' CC="arm-openwrt-linux-muslgnueabi-gcc" modules make[5]: Entering directory `/home/wwt/softap_ap6212a0_tinav2.1/lichee/linux-3.4' scripts/kconfig/conf --silentoldconfig Kconfig drivers/net/wireless/bcmdhd/Kconfig:57:warning: defaults for choice values not supported .config:3733:warning: override: TREE_PREEMPT_RCU changes choice state * * Restart config... * * * IP: Netfilter Configuration * IPv4 connection tracking support (required for NAT) (NF_CONNTRACK_IPV4) [Y/n/m/?] y proc/sysctl compatibility with old connection tracking (NF_CONNTRACK_PROC_COMPAT) [N/y/?] n IP Userspace queueing via NETLINK (OBSOLETE) (IP_NF_QUEUE) [N/m/y/?] n IP tables support (required for filtering/masq/NAT) (IP_NF_IPTABLES) [Y/n/m/?] y "ah" match support (IP_NF_MATCH_AH) [N/m/y/?] n "ecn" match support (IP_NF_MATCH_ECN) [N/m/y/?] n "rpfilter" reverse path filter match support (IP_NF_MATCH_RPFILTER) [N/m/y/?] n "ttl" match support (IP_NF_MATCH_TTL) [N/m/y/?] n Packet filtering (IP_NF_FILTER) [Y/n/m/?] y REJECT target support (IP_NF_TARGET_REJECT) [M/n/y/?] m Force socket error when rejecting with icmp* (IP_NF_TARGET_REJECT_SKERR) [N/y/?] (NEW) n 出错: sh /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/compile_dir/target/linux-astar-parrot/strace-4.10/ipkg-sunxi/strace rstrip.sh: /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/compile_dir/target/linux-astar-parrot/strace-4.10/ipkg-sunxi/strace/usr/bin/strace: executable \$0 \$@"; ) > postinst; ( echo "#!/bin/sh"; echo ". \${IPKG_INSTROOT}/lib/functions.sh"; echo "default_prerm \$0 \$@"; ) > prerm; chmod 0755 postinst prerm; ) install -d -m0755 /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/packages/base unxi/strace /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/packages/base av2.1/out/astar-parrot/packages/base/strace_4.10-1_sunxi.ipk rm -rf /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-strace strace install -d -m0755 /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-strace/usr/bin v2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-strace/usr/bin/ me/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/' rm -rf /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-strace touch /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/stamp/.strace_installed /rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo/strace.default.install make[3]: Leaving directory `/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/package/devel/strace' make[2]: Leaving directory `/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1' make[1]: *** [/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/stamp/.package_compile] Error 2 make[1]: Leaving directory `/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1' Build failed - please re-run with -j1 to see the real error message make: *** [world] 错误 1 #### make failed to build some targets (36:27 (mm:ss)) #### rootroot@cm-System-Product-Name:/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1$ make -j1 rm -rf /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-ap6212-firmware touch /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/stamp/.ap6212-firmware_installed ; echo "ap6212-firmware" >> /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo/linux-firmware.default.install make[3]: Leaving directory `/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/package/firmware/linux-firmware' make[3]: Entering directory `/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/package/kernel/linux' rm -rf /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-kernel kernel # nothing to do me/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/' rm -rf /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-kernel touch /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/stamp/.kernel_installed diron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo/linux.default.install rm -rf /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-kmod-input-core kmod-input-core NOTICE: module '/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/compile_dir/target/linux-astar-parrot/linux-3.4.39/drivers/input/input-core.ko' is built-in. ONTROL/postinst-pkg; chmod 0755 /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-kmod-input-core/CONTROL/postinst-pkg; fi ore/. /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/' rm -rf /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-kmod-input-core touch /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/stamp/.kmod-input-core_installed /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo/linux.default.install unxi/kmod-ipt-core/CONTROL /home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo ERROR: module '/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/compile_dir/target/linux-astar-parrot/linux-3.4.39/net/netfilter/nf_log_common.ko' is missing. make[3]: *** [/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/packages/kernel/kmod-ipt-core_3.4.39-1_sunxi.ipk] Error 1 make[3]: Leaving directory `/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/package/kernel/linux' make[2]: *** [package/kernel/linux/compile] Error 2 make[2]: Leaving directory `/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1' make[1]: *** [/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/stamp/.package_compile] Error 2 make[1]: Leaving directory `/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1' make: *** [world] 错误 2 #### make failed to build some targets (16 seconds) #### rootroot@cm-System-Product-Name:/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1$ grep nf_log_common . -R grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/linux-3.4.39/.git/svn: 没有那个文件或目录 grep: ./out/astar-parrot/compile_dir/host/u-boot-2014.10/arch/sandbox/include/asm/arch: 没有那个文件或目录 grep: ./build/.git/svn: 没有那个文件或目录 ./build/netfilter.mk:$(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_LOG, $(P_XT)nf_log_common)) grep: ./package/.git/svn: 没有那个文件或目录 grep: ./target/.git/svn: 没有那个文件或目录 grep: ./.repo/manifests/.git/svn: 没有那个文件或目录 grep: ./tools/.git/svn: 没有那个文件或目录 grep: ./tools/.git/packed-refs: 没有那个文件或目录 grep: ./config/.git/svn: 没有那个文件或目录 grep: ./lichee/linux-3.4/.git/svn: 没有那个文件或目录 grep: ./lichee/brandy/.git/svn: 没有那个文件或目录 grep: ./scripts/.git/svn: 没有那个文件或目录 grep: ./dl/.git/svn: 没有那个文件或目录 grep: ./docs/.git/svn: 没有那个文件或目录 grep: ./prebuilt/.git/svn: 没有那个文件或目录 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux/lib/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux/lib/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux/lib64/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux/lib64/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux-musl/lib/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux-musl/lib/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux-musl/lib64/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux-musl/lib64/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/lib/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/lib/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/lib64/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/lib64/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/lib32/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/lib32/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/arm-openwrt-linux-muslgnueabi/lib/lib: 符号连接的层数过多 grep: ./prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/lib/lib: 符号连接的层数过多 grep: ./prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/lib64/lib: 符号连接的层数过多 grep: ./prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/lib32/lib: 符号连接的层数过多 grep: ./prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/arm-openwrt-linux/lib/lib: 符号连接的层数过多 grep: ./toolchain/.git/svn: 没有那个文件或目录 rootroot@cm-System-Product-Name:/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/rediron/r16_tinav2.1/softap_ap6212a0_tinav2.1$ make -j12 还会出现的错误: rm -rf /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-hostapd-common mkdir -p /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/stamp /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-hostapd-common install -d -m0755 /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-hostapd-common/lib/netifd install -m0644 ./files/netifd.sh /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-hostapd-common/lib/netifd/hostapd.sh SHELL= flock /home/wwt/softap_ap6212a0_tinav2.1/tmp/.root-copy.flock -c 'cp -fpR /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-hostapd-common/. /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/' rm -rf /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-hostapd-common touch /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/stamp/.hostapd-common_installed if [ -f /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo/hostapd.supplicant-full.install.clean ]; then rm -f /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo/hostapd.supplicant-full.install /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo/hostapd.supplicant-full.install.clean; fi; echo "hostapd-common" >> /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo/hostapd.supplicant-full.install make[3]: Leaving directory `/home/wwt/softap_ap6212a0_tinav2.1/package/network/services/hostapd' make[2]: Leaving directory `/home/wwt/softap_ap6212a0_tinav2.1' make[1]: *** [/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/stamp/.package_compile] Error 2 make[1]: Leaving directory `/home/wwt/softap_ap6212a0_tinav2.1' Build failed - please re-run with -j1 to see the real error message make: *** [world] 错误 1 #### make failed to build some targets (01:19 (mm:ss)) #### rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ make -j1 or -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -I/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/compile_dir/target/softap-0.0.1/ipkg-install/usr/include -L/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib -L/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/lib -L/home/wwt/softap_ap6212a0_tinav2.1/prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/usr/lib -L/home/wwt/softap_ap6212a0_tinav2.1/prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/lib -znow -zrelro -L/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/compile_dir/target/softap-0.0.1/ipkg-install/usr/lib -lsoftap -lssl /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `ECDSA_sign' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_POINT_copy' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_set_public_key' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_GROUP_free' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_get0_public_key' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_get0_private_key' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_POINT_oct2point' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_up_ref' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_curve_nist2nid' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_generate_key' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_set_private_key' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_GROUP_new_by_curve_name' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_get0_group' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_GROUP_method_of' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_METHOD_get_field_type' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_POINT_point2oct' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_GROUP_get_curve_name' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_get_conv_form' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_free' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_new' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_GROUP_get_degree' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_set_group' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `ECDSA_verify' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EVP_PKEY_set1_EC_KEY' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_POINT_free' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_POINT_new' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `ECDH_compute_key' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_dup' /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib/libssl.so: undefined reference to `EC_KEY_new_by_curve_name' collect2: error: ld returned 1 exit status make[4]: *** [softap_test] Error 1 make[4]: Leaving directory `/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/compile_dir/target/softap-0.0.1/demo' make[3]: *** [/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/compile_dir/target/softap-0.0.1/.built] Error 2 make[3]: Leaving directory `/home/wwt/softap_ap6212a0_tinav2.1/package/allwinner/softap' make[2]: *** [package/allwinner/softap/compile] Error 2 make[2]: Leaving directory `/home/wwt/softap_ap6212a0_tinav2.1' make[1]: *** [/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/stamp/.package_compile] Error 2 make[1]: Leaving directory `/home/wwt/softap_ap6212a0_tinav2.1' make: *** [world] 错误 2 #### make failed to build some targets (17 seconds) #### rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ find . -name libssl.so ./package/allwinner/liballwinner/LIBRARY/EXTERNAL/lib32/linuxgnueabi/libssl.so ./package/allwinner/liballwinner/LIBRARY/EXTERNAL/lib32/lgnueabihf/libssl.so ./package/allwinner/liballwinner/LIBRARY/EXTERNAL/lib32/uclgnueabi/libssl.so ./package/allwinner/liballwinner/LIBRARY/EXTERNAL/lib32/lgnueabi/libssl.so ./package/allwinner/liballwinner/LIBRARY/EXTERNAL/lib32/muslgnueabi/libssl.so ./out/astar-parrot/compile_dir/target/liballwinner/LIBRARY/install/external/libssl.so ./out/astar-parrot/compile_dir/target/liballwinner/LIBRARY/install/lib/libssl.so ./out/astar-parrot/compile_dir/target/liballwinner/LIBRARY/EXTERNAL/lib32/linuxgnueabi/libssl.so ./out/astar-parrot/compile_dir/target/liballwinner/LIBRARY/EXTERNAL/lib32/lgnueabihf/libssl.so ./out/astar-parrot/compile_dir/target/liballwinner/LIBRARY/EXTERNAL/lib32/uclgnueabi/libssl.so ./out/astar-parrot/compile_dir/target/liballwinner/LIBRARY/EXTERNAL/lib32/lgnueabi/libssl.so ./out/astar-parrot/compile_dir/target/liballwinner/LIBRARY/EXTERNAL/lib32/muslgnueabi/libssl.so ./out/astar-parrot/compile_dir/target/liballwinner/ipkg-install/usr/lib/libssl.so ./out/astar-parrot/compile_dir/target/openssl-1.0.2h/libssl.so ./out/astar-parrot/compile_dir/target/openssl-1.0.2h/ipkg-install/usr/lib/libssl.so ./out/astar-parrot/staging_dir/target/usr/lib/libssl.so rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ 根据经验可以知道全志R16平台的tinav2.1系统的SDK里面自带的库:libssl有问题。(直接删除或者改名) ./package/allwinner/liballwinner/LIBRARY/EXTERNAL/lib32/muslgnueabi/libssl.so rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ cd package/allwinner/liballwinner/LIBRARY/EXTERNAL/lib32/muslgnueabi/ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1/package/allwinner/liballwinner/LIBRARY/EXTERNAL/lib32/muslgnueabi$ ll 总用量 5688 drwxrwxr-x 3 rootroot rootroot 4096 11月 2 2016 ./ drwxrwxr-x 7 rootroot rootroot 4096 11月 2 2016 ../ -rwxrwxr-x 1 rootroot rootroot 135064 11月 2 2016 libaw_aacdec.so* -rwxrwxr-x 1 rootroot rootroot 33844 11月 2 2016 libaw_alacdec.so* -rwxrwxr-x 1 rootroot rootroot 170664 11月 2 2016 libaw_amrdec.so* -rwxrwxr-x 1 rootroot rootroot 76748 11月 2 2016 libaw_apedec.so* -rwxrwxr-x 1 rootroot rootroot 116336 11月 2 2016 libaw_atrcdec.so* -rwxrwxr-x 1 rootroot rootroot 69756 11月 2 2016 libaw_cookdec.so* -rwxrwxr-x 1 rootroot rootroot 55152 11月 2 2016 libaw_flacdec.so* -rwxrwxr-x 1 rootroot rootroot 77500 11月 2 2016 libaw_mp3dec.so* -rwxrwxr-x 1 rootroot rootroot 130672 11月 2 2016 libaw_oggdec.so* -rwxrwxr-x 1 rootroot rootroot 8100 11月 2 2016 libaw_plugin.so* -rwxrwxr-x 1 rootroot rootroot 59284 11月 2 2016 libaw_radec.so* -rwxrwxr-x 1 rootroot rootroot 68296 11月 2 2016 libaw_siprdec.so* -rwxrwxr-x 1 rootroot rootroot 70072 11月 2 2016 libaw_wavdec.so* -rwxrwxr-x 1 rootroot rootroot 87996 11月 2 2016 libcdc_adecoder_debug.so* -rwxrwxr-x 1 rootroot rootroot 35652 11月 2 2016 libcdc_adecoder.so* -rwxrwxr-x 1 rootroot rootroot 166808 11月 2 2016 libcdc_aencoder.so* -rwxrwxr-x 1 rootroot rootroot 1500820 11月 2 2016 libcrypto.so* drwxrwxr-x 2 rootroot rootroot 4096 11月 2 2016 lib_debug/ -rwxrwxr-x 1 rootroot rootroot 1179664 11月 2 2016 liblive555.so* -rwxrwxr-x 1 rootroot rootroot 14464 11月 2 2016 libpostprocess.so* -rwxrwxr-x 1 rootroot rootroot 4672 11月 2 2016 librw_data_api.so* -rwxrwxr-x 1 rootroot rootroot 341764 11月 2 2016 libssl.so* -rwxrwxr-x 1 rootroot rootroot 1282208 11月 2 2016 libxml2.so* -rwxrwxr-x 1 rootroot rootroot 80792 11月 2 2016 libz.so* rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1/package/allwinner/liballwinner/LIBRARY/EXTERNAL/lib32/muslgnueabi$ mv libssl.so libssl.so_bak rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1/package/allwinner/liballwinner/LIBRARY/EXTERNAL/lib32/muslgnueabi$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1/package/allwinner/liballwinner/LIBRARY/EXTERNAL/lib32/muslgnueabi$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1/package/allwinner/liballwinner/LIBRARY/EXTERNAL/lib32/muslgnueabi$ cd - /home/wwt/softap_ap6212a0_tinav2.1 rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ make -j1 rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ pack -d 6、刷机之后,在串口终端中通过softap_test打开softap出错(查明是全志给的patch的路径的问题!) [ 16.536954] dhd_prot_ioctl : bus is down. we have nothing to do [ 16.543761] bcmsdh_oob_intr_unregister: Enter [ 16.548794] bcmsdh_oob_intr_unregister: irq is not registered [ 16.555292] dhd_txglom_enable: enable 0 [ 16.559734] dhd_bus_devreset: WLAN OFF DONE [ 16.564616] wifi_platform_set_power = 0 [ 16.568970] ======== PULL WL_REG_ON LOW! ======== [ 16.574416] [wifi_pm]: wifi power off [ 16.578581] dhdsdio_probe : the lock is released. [ 16.584007] dhd_module_init: Exit err=0 [ 16.591551] xt_time: kernel timezone is -0000 [ 17.648758] [mmc]: sdc2 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 8 timing UHS-DDR50 dt B [ 17.662302] [mmc]: sdc2 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 8 timing UHS-DDR50 dt B [ 17.678544] [mmc]: sdc2 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 8 timing UHS-DDR50 dt B [ 17.850121] android_usb: already disabled [ 17.890241] adb_open [ 17.892807] adb_bind_config [ 17.896040] ep_matches, wrn: endpoint already claimed, ep(0xc068721c, 0xd7a980c0, ep1in-bulk) [ 19.785448] android_usb gadget: high-speed config #1: android BusyBox v1.24.1 () built-in shell (ash) _____ _ __ _ |_ _||_| ___ _ _ | | |_| ___ _ _ _ _ | | _ | || | | |__ | || || | ||_'_| | | | || | || _ | |_____||_||_|_||___||_,_| |_| |_||_|_||_|_| Tina is Based on OpenWrt! ---------------------------------------------- Tina Linux (Neptune, 57513AA3) ---------------------------------------------- root@TinaLinux:/# root@TinaLinux:/# root@TinaLinux:/# so softap_down softap_test softap_up sort root@TinaLinux:/# so softap_down softap_test softap_up sort root@TinaLinux:/# cd /bin/ root@TinaLinux:/bin# ll so* -rwxr-xr-x 1 root root 4095 Sep 14 19:08 softap_down -rwxr-xr-x 1 root root 4095 Sep 14 19:08 softap_test -rwxr-xr-x 1 root root 8191 Sep 14 19:08 softap_up root@TinaLinux:/bin# root@TinaLinux:/bin# root@TinaLinux:/bin# softap_test *************************** Start hostapd test! *************************** Start to reload firmware! Enter: wifi_get_fw_path function, fw_type=1,Eneter: wifi_change_fw_path, fwpath = lib/firmware/fw_bcm43438a0_apsta.bin. Softap fwReload - OkMessage is: OK Reload firmware finished! Start to set softap! Message is: OK Set softap finished! [ 75.613141] dhd_open: Enter d720d000 [ 75.617247] [ 75.617249] Dongle Host Driver, version 1.201.59.3 (r506368) [ 75.617254] Compiled in drivers/net/wireless/bcmdhd on Sep 14 2017 at 11:02:29 [ 75.633597] wl_android_wifi_on in 1 [ 75.637659] wl_android_wifi_on in 2: g_wifi_on=0 [ 75.642896] wifi_platform_set_power = 1 [ 75.647247] ======== PULL WL_REG_ON HIGH! ======== [ 75.652765] [wifi_pm]: wifi power on [ 75.960028] sdio_reset_comm(): [ 75.963526] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 75.976104] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 75.987627] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing LEGACY(SDR12) dt B [ 75.998550] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing LEGACY(SDR12) dt B [ 76.020809] mmc1: queuing unknown CIS tuple 0x80 (2 bytes) [ 76.028967] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 76.037137] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 76.047072] mmc1: queuing unknown CIS tuple 0x80 (7 bytes) [ 76.165734] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 76.176190] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 76.186815] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 76.197594] [ 76.197597] [ 76.197599] dhd_bus_devreset: == WLAN ON == [ 76.206013] F1 signature read @0x18000000=0x1540a9a6 [ 76.213284] F1 signature OK, socitype:0x1 chip:0xa9a6 rev:0x0 pkg:0x4 [ 76.221292] DHD: dongle ram size is set to 524288(orig 524288) at 0x0 [ 76.228727] dhdsdio_probe_init: set use_rxchain 1 from config.txt [ 76.235753] dhd_conf_read_config: Ignore config file /lib/firmware/config.txt [ 76.243796] dhd_conf_set_fw_name_by_chip: firmware_path=lib/firmware/fw_bcm43438a0_apsta.bin [ 76.253368] Final fw_path=lib/firmware/fw_bcm43438a0_apsta.bin [ 76.260041] Final nv_path=/lib/firmware/nvram.txt [ 76.265358] Final conf_path=/lib/firmware/config.txt [ 76.271554] dhdsdio_download_code_file: Open firmware file failed lib/firmware/fw_bcm43438a0_apsta.bin [ 76.282093] _dhdsdio_download_firmware: dongle image file download failed [ 76.289838] dhd_net_bus_devreset: dhd_bus_devreset: -35 [ 76.295753] dhd_prot_ioctl : bus is down. we have nothing to do [ 76.302529] dhd_net_bus_devreset: dhd_bus_devreset: -35 [ 76.308454] wifi_platform_set_power = 0 [ 76.312912] ======== PULL WL_REG_ON LOW! ======== [ 76.318233] [wifi_pm]: wifi power off [ 76.322408] wl_android_wifi_on: Failed [ 76.326758] dhd_open : wl_android_wifi_on failed (-35) [ 76.332573] dhd_stop: Enter d720d000 [ 76.336637] wl_android_wifi_off in 1 [ 76.340800] wl_android_wifi_off in 2: g_wifi_on=0 [ 76.346115] wl_android_wifi_off out [ 76.350093] dhd_stop: Exit [ 76.353290] dhd_open: Exit ret=-1 ifconfig: SIOCSIFFLAGS: Operation not permitted Start to start softap! Configuration file: /etc/wifi/ho[ 80.454347] dhd_open: Enter d720d000 stapd.conf [ 80.458611] [ 80.458613] Dongle Host Driver, version 1.201.59.3 (r506368) [ 80.458618] Compiled in drivers/net/wireless/bcmdhd on Sep 14 2017 at 11:02:29 [ 80.476003] wl_android_wifi_on in 1 [ 80.479971] wl_android_wifi_on in 2: g_wifi_on=0 [ 80.485214] wifi_platform_set_power = 1 [ 80.489657] ======== PULL WL_REG_ON HIGH! ======== [ 80.495082] [wifi_pm]: wifi power on SoftAP started successfullyMessage is: OK Start softap finished! [ 80.800038] sdio_reset_comm(): [ 80.803641] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 80.816148] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 80.827683] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing LEGACY(SDR12) dt B [ 80.838604] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing LEGACY(SDR12) dt B [ 80.860859] mmc1: queuing unknown CIS tuple 0x80 (2 bytes) [ 80.869016] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 80.877280] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 80.887030] mmc1: queuing unknown CIS tuple 0x80 (7 bytes) [ 81.005831] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 81.016222] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 81.026711] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 81.037496] [ 81.037499] [ 81.037502] dhd_bus_devreset: == WLAN ON == [ 81.045875] F1 signature read @0x18000000=0x1540a9a6 [ 81.053157] F1 signature OK, socitype:0x1 chip:0xa9a6 rev:0x0 pkg:0x4 [ 81.061161] DHD: dongle ram size is set to 524288(orig 524288) at 0x0 [ 81.068590] dhdsdio_probe_init: set use_rxchain 1 from config.txt [ 81.075623] dhd_conf_read_config: Ignore config file /lib/firmware/config.txt [ 81.083760] dhd_conf_set_fw_name_by_chip: firmware_path=lib/firmware/fw_bcm43438a0_apsta.bin [ 81.093240] Final fw_path=lib/firmware/fw_bcm43438a0_apsta.bin [ 81.099901] Final nv_path=/lib/firmware/nvram.txt [ 81.105228] Final conf_path=/lib/firmware/config.txt [ 81.111473] dhdsdio_download_code_file: Open firmware file failed lib/firmware/fw_bcm43438a0_apsta.bin [ 81.122017] _dhdsdio_download_firmware: dongle image file download failed [ 81.129672] dhd_net_bus_devreset: dhd_bus_devreset: -35 [ 81.135676] dhd_prot_ioctl : bus is down. we have nothing to do [ 81.142356] dhd_net_bus_devreset: dhd_bus_devreset: -35 [ 81.148373] wifi_platform_set_power = 0 [ 81.152740] ======== PULL WL_REG_ON LOW! ======== [ 81.158059] [wifi_pm]: wifi power off [ 81.162321] wl_android_wifi_on: Failed [ 81.166579] dhd_open : wl_android_wifi_on failed (-35) [ 81.172394] dhd_stop: Enter d720d000 [ 81.176548] wl_android_wifi_off in 1 [ 81.180623] wl_android_wifi_off in 2: g_wifi_on=0 [ 81.185942] wl_android_wifi_off out [ 81.189908] dhd_stop: Exit [ 81.193026] dhd_open: Exit ret=-1 Could not set interface wlan0 fl[ 81.196943] dhd_inetaddr_notifier_call: bus not ready, exit ags (UP): Operation not permitte[ 81.206128] dhd_open: Enter d720d000 d nl80211: Could not set interf[ 81.212702] ace 'wlan0' UP nl80211: deinit [ 81.212706] Dongle Host Driver, version 1.201.59.3 (r506368) ifname=wlan0 disabled_11b_rates=[ 81.212710] Compiled in drivers/net/wireless/bcmdhd on Sep 14 2017 at 11:02:29 0 [ 81.236958] wl_android_wifi_on in 1 [ 81.241176] wl_android_wifi_on in 2: g_wifi_on=0 [ 81.246400] wifi_platform_set_power = 1 [ 81.250760] ======== PULL WL_REG_ON HIGH! ======== [ 81.256266] [wifi_pm]: wifi power on [ 81.570028] sdio_reset_comm(): [ 81.573521] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 81.586092] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 81.597610] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing LEGACY(SDR12) dt B [ 81.608512] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing LEGACY(SDR12) dt B [ 81.630743] mmc1: queuing unknown CIS tuple 0x80 (2 bytes) [ 81.638905] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 81.647165] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 81.656911] mmc1: queuing unknown CIS tuple 0x80 (7 bytes) [ 81.775658] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 81.785943] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 81.796508] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 81.807280] [ 81.807283] [ 81.807285] dhd_bus_devreset: == WLAN ON == [ 81.815693] F1 signature read @0x18000000=0x1540a9a6 [ 81.822936] F1 signature OK, socitype:0x1 chip:0xa9a6 rev:0x0 pkg:0x4 [ 81.830931] DHD: dongle ram size is set to 524288(orig 524288) at 0x0 [ 81.838356] dhdsdio_probe_init: set use_rxchain 1 from config.txt [ 81.845386] dhd_conf_read_config: Ignore config file /lib/firmware/config.txt [ 81.853427] dhd_conf_set_fw_name_by_chip: firmware_path=lib/firmware/fw_bcm43438a0_apsta.bin [ 81.862999] Final fw_path=lib/firmware/fw_bcm43438a0_apsta.bin [ 81.869660] Final nv_path=/lib/firmware/nvram.txt [ 81.874988] Final conf_path=/lib/firmware/config.txt [ 81.881223] dhdsdio_download_code_file: Open firmware file failed lib/firmware/fw_bcm43438a0_apsta.bin [ 81.891670] _dhdsdio_download_firmware: dongle image file download failed [ 81.899411] dhd_net_bus_devreset: dhd_bus_devreset: -35 [ 81.905327] dhd_prot_ioctl : bus is down. we have nothing to do [ 81.912108] dhd_net_bus_devreset: dhd_bus_devreset: -35 [ 81.918034] wifi_platform_set_power = 0 [ 81.922493] ======== PULL WL_REG_ON LOW! ======== [ 81.927810] [wifi_pm]: wifi power off [ 81.932073] wl_android_wifi_on: Failed [ 81.936331] dhd_open : wl_android_wifi_on failed (-35) [ 81.942144] dhd_stop: Enter d720d000 [ 81.946298] wl_android_wifi_off in 1 [ 81.950371] wl_android_wifi_off in 2: g_wifi_on=0 [ 81.955686] wl_android_wifi_off out [ 81.959742] dhd_stop: Exit [ 81.962860] dhd_open: Exit ret=-1 ifconfig: SIOCSIFFLAGS: Operation not permitted nl80211 driver initialization failed. wlan0: interface state UNINITIALIZED->DISABLED wlan0: AP-DISABLED hostapd_free_hapd_data: Interface wlan0 wasn't started *************************** Hostapd test successed! *************************** root@TinaLinux:/bin# 因为softap_test的绝对路径是:/bin/softap_test。那么lib/firmware/fw_bcm43438a0_apsta.bin的路径就应该是:/bin/lib/firmware/fw_bcm43438a0_apsta.bin。 将目录/lib/firmware/fw_bcm43438a0_apsta.bin中的AP6212的库文件全部拷贝到:/bin/lib/firmware/fw_bcm43438a0_apsta.bin就可以通过softap_test正常打开softap了! root@TinaLinux:/bin# root@TinaLinux:/bin# mkdir -p lib/firmware/ root@TinaLinux:/bin# cd lib/firmware/ root@TinaLinux:/bin/lib/firmware# ll drwxr-xr-x 2 root root 1024 Sep 16 03:16 . drwxr-xr-x 3 root root 1024 Sep 16 03:16 .. root@TinaLinux:/bin/lib/firmware# cd /lib/firmware/ root@TinaLinux:/lib/firmware# ll drwxr-xr-x 2 root root 139 Sep 14 19:08 . drwxr-xr-x 10 root root 681 Sep 14 19:02 .. -rw-r--r-- 1 root root 26020 Sep 14 17:31 bcm43438a0.hcd -rw-r--r-- 1 root root 378595 Sep 14 17:31 fw_bcm43438a0.bin -rw-r--r-- 1 root root 309352 Sep 14 17:31 fw_bcm43438a0_apsta.bin -rw-r--r-- 1 root root 336323 Sep 14 17:31 fw_bcm43438a0_p2p.bin -rw-r--r-- 1 root root 902 Sep 14 17:31 nvram.txt root@TinaLinux:/lib/firmware# cp * /bin/lib/firmware/ root@TinaLinux:/lib/firmware# cd /bin/lib/firmware/ root@TinaLinux:/bin/lib/firmware# ll drwxr-xr-x 2 root root 1024 Sep 16 03:17 . drwxr-xr-x 3 root root 1024 Sep 16 03:16 .. -rw-r--r-- 1 root root 26020 Sep 16 03:17 bcm43438a0.hcd -rw-r--r-- 1 root root 378595 Sep 16 03:17 fw_bcm43438a0.bin -rw-r--r-- 1 root root 309352 Sep 16 03:17 fw_bcm43438a0_apsta.bin -rw-r--r-- 1 root root 336323 Sep 16 03:17 fw_bcm43438a0_p2p.bin -rw-r--r-- 1 root root 902 Sep 16 03:17 nvram.txt root@TinaLinux:/bin/lib/firmware# cd /bin/ root@TinaLinux:/bin# root@TinaLinux:/bin# root@TinaLinux:/bin# softap_test *************************** Start hostapd test! *************************** Start to reload firmware! Enter: wifi_get_fw_path function, fw_type=1,Eneter: wifi_change_fw_path, fwpath = lib/firmware/fw_bcm43438a0_apsta.bin. Softap fwReload - OkMessage is: OK Reload firmware finished! Start to set softap! Message is: OK Set softap finished! [ 190.043911] dhd_open: Enter d720d000 [ 190.048003] [ 190.048006] Dongle Host Driver, version 1.201.59.3 (r506368) [ 190.048010] Compiled in drivers/net/wireless/bcmdhd on Sep 14 2017 at 11:02:29 [ 190.064444] wl_android_wifi_on in 1 [ 190.068411] wl_android_wifi_on in 2: g_wifi_on=0 [ 190.073643] wifi_platform_set_power = 1 [ 190.078087] ======== PULL WL_REG_ON HIGH! ======== [ 190.083512] [wifi_pm]: wifi power on [ 190.390029] sdio_reset_comm(): [ 190.393528] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 190.406118] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 190.417559] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing LEGACY(SDR12) dt B [ 190.428484] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing LEGACY(SDR12) dt B [ 190.450739] mmc1: queuing unknown CIS tuple 0x80 (2 bytes) [ 190.458990] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 190.467164] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 190.477004] mmc1: queuing unknown CIS tuple 0x80 (7 bytes) [ 190.595621] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 190.606060] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 190.616684] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 190.627433] [ 190.627436] [ 190.627439] dhd_bus_devreset: == WLAN ON == [ 190.635854] F1 signature read @0x18000000=0x1540a9a6 [ 190.643122] F1 signature OK, socitype:0x1 chip:0xa9a6 rev:0x0 pkg:0x4 [ 190.651026] DHD: dongle ram size is set to 524288(orig 524288) at 0x0 [ 190.658542] dhdsdio_probe_init: set use_rxchain 1 from config.txt [ 190.665481] dhd_conf_read_config: Ignore config file /lib/firmware/config.txt [ 190.673620] dhd_conf_set_fw_name_by_chip: firmware_path=lib/firmware/fw_bcm43438a0_apsta.bin [ 190.683192] Final fw_path=lib/firmware/fw_bcm43438a0_apsta.bin [ 190.689763] Final nv_path=/lib/firmware/nvram.txt [ 190.695090] Final conf_path=/lib/firmware/config.txt [ 190.733434] NVRAM version: AP6212_NVRAM_V1.0_20140603 [ 190.742372] dhdsdio_write_vars: Download, Upload and compare of NVRAM succeeded. [ 190.804325] dhd_bus_init: enable 0x06, ready 0x06 (waited 0us) [ 190.811066] bcmsdh_oob_intr_register: Enter [ 190.815806] bcmsdh_oob_intr_register: HW_OOB enabled [ 190.821429] bcmsdh_oob_intr_register OOB irq=7 flags=414 [ 190.827623] bcmsdh_oob_intr_register: enable_irq_wake [ 190.833345] bcmsdh_oob_intr_register: enable_irq_wake failed with -6 [ 190.841211] dhd_conf_set_band: Set band 0 [ 190.848224] Firmware up: op_mode=0x0002, MAC=02:1a:11:f9:3d:89 [ 190.854908] dhd_conf_set_country: Set country CN, revision 0 [ 190.924854] Country code: CN (CN/0) [ 190.929416] dhd_conf_set_roam: Set roam_off 1 [ 190.940302] dhd_arp_offload_enable: failed to enabe ARP offload to 0, retcode = -23 [ 190.949649] dhd_arp_offload_set: failed to set ARP offload mode to 0x0, retcode = -23 [ 190.959035] Firmware version = wl0: Jun 6 2014 14:57:15 version 7.10.226.49 (r) FWID 01-cf4a5122 [ 190.969088] Driver: 1.201.59.3 (r506368) [ 190.969093] Firmware: wl0: Jun 6 2014 14:57:15 version 7.10.226.49 (r) FWID 01-cf4a5122 [ 190.983566] dhd_txglom_enable: enable 1 [ 190.987919] dhd_conf_set_disable_proptx: set disable_proptx 0 [ 190.996601] dhd_wlfc_init(): successfully enabled bdcv2 tlv signaling, 79 [ 191.004833] dhd_wlfc_init(): wlfc_mode=0x0, ret=-23 [ 191.011090] wl_android_wifi_on: Success [ 191.085709] dhd_open: Exit ret=0 Start to start softap! Configuration file: /etc/wifi/hostapd.conf nl80211: Could not re-add multic[ 195.098274] netdev_ifidx(5), chan_type(1) target channel(6) ast membership for vendor events: -2 (No such file or directory) [ 195.159332] Disconnect STA : ff:ff:ff:ff:ff:ff scb_val.val 3 Using interface wlan0 with hwaddr 02:1a:11:f9:3d:89 and ssid "Smart-AW-HOSTAPD" VLAN: vlan_set_name_type: SET_VLAN_NAME_TYPE_CMD name_type=2 failed: No error information SoftAP started successfullyMessage is: OK Start softap finished! wlan0: interface state UNINITIALIZED->ENABLED wlan0: AP-ENABLED *************************** Hostapd test successed! *************************** root@TinaLinux:/bin# root@TinaLinux:/bin# 7、查找/修改路径lib/firmware/fw_bcm43438a0_apsta.bin的位置,解决问题! rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ grep "lib/firmware/fw_bcm43438a0_apsta.bin" . -R grep: ./target/.git/svn: 没有那个文件或目录 grep: ./dl/.git/svn: 没有那个文件或目录 grep: ./scripts/.git/svn: 没有那个文件或目录 grep: ./toolchain/.git/svn: 没有那个文件或目录 grep: ./lichee/brandy/.git/svn: 没有那个文件或目录 grep: ./lichee/linux-3.4/.git/svn: 没有那个文件或目录 grep: ./.repo/manifests/.git/svn: 没有那个文件或目录 grep: ./tools/.git/packed-refs: 没有那个文件或目录 grep: ./tools/.git/svn: 没有那个文件或目录 ./package/allwinner/softap/src/include/wifi.h:#define WIFI_DRIVER_FW_PATH_AP "lib/firmware/fw_bcm43438a0_apsta.bin" grep: ./package/.git/svn: 没有那个文件或目录 grep: ./config/.git/svn: 没有那个文件或目录 grep: ./prebuilt/.git/svn: 没有那个文件或目录 grep: ./prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/arm-openwrt-linux-muslgnueabi/lib/lib: 符号连接的层数过多 grep: ./prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/lib64/lib: 符号连接的层数过多 grep: ./prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/arm-openwrt-linux/lib/lib: 符号连接的层数过多 grep: ./prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/lib/lib: 符号连接的层数过多 grep: ./prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/lib32/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/lib64/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/lib64/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/lib/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/lib/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux-musl/lib64/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux-musl/lib64/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux-musl/lib/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux-musl/lib/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux/lib64/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux/lib64/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux/lib/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/aarch64-openwrt-linux/lib/lib: 符号连接的层数过多 grep: 警告: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/lib32/lib64: 嵌套目录循环 grep: ./prebuilt/gcc/linux-x86/aarch64/toolchain-sunxi/toolchain/lib32/lib: 符号连接的层数过多 grep: ./docs/.git/svn: 没有那个文件或目录 grep: ./build/.git/svn: 没有那个文件或目录 grep: 警告: ./out/astar-parrot/compile_dir/target/alsa-lib-1.1.0/include/alsa: 嵌套目录循环 grep: ./out/astar-parrot/compile_dir/target/rootfs/var/ccX0DZGY.s: 权限不够 grep: ./out/astar-parrot/compile_dir/target/rootfs/var/arjGlms3: 权限不够 grep: ./out/astar-parrot/compile_dir/target/rootfs/var/.xrdp/xrdp-Wpph9R: 权限不够 grep: ./out/astar-parrot/compile_dir/target/rootfs/var/.xrdp/xrdp-sesman-j8EDdT: 权限不够 grep: ./out/astar-parrot/compile_dir/target/rootfs/var/ccZVA9SY.s: 权限不够 grep: ./out/astar-parrot/compile_dir/target/rootfs/var/ccX0uKZX.s: 权限不够 grep: ./out/astar-parrot/compile_dir/target/rootfs/var/jack-sam: 权限不够 grep: ./out/astar-parrot/compile_dir/target/rootfs/var/cc61XiF1.s: 权限不够 grep: ./out/astar-parrot/compile_dir/target/rootfs/var/config-err-1dsmuu: 权限不够 grep: ./out/astar-parrot/compile_dir/target/rootfs/var/.X11-unix/X0: 没有那个设备或地址 grep: ./out/astar-parrot/compile_dir/target/rootfs/var/ccsCfxm0.s: 权限不够 grep: ./out/astar-parrot/compile_dir/target/rootfs/var/.ICE-unix/1629: 没有那个设备或地址 grep: ./out/astar-parrot/compile_dir/target/rootfs/etc/fstab: 没有那个文件或目录 grep: ./out/astar-parrot/compile_dir/target/rootfs/etc/resolv.conf: 没有那个文件或目录 grep: ./out/astar-parrot/compile_dir/target/rootfs/etc/localtime: 没有那个文件或目录 grep: ./out/astar-parrot/compile_dir/target/rootfs/etc/TZ: 没有那个文件或目录 匹配到二进制文件 ./out/astar-parrot/compile_dir/target/rootfs/lib/libsoftap.so ./out/astar-parrot/compile_dir/target/rootfs/usr/lib/opkg/info/ap6212-firmware.list:/lib/firmware/fw_bcm43438a0_apsta.bin grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/iptables-1.4.21/ipkg-install/usr/bin/iptables-xml: 没有那个文件或目录 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/linux-3.4.39/.git/svn: 没有那个文件或目录 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/ccYUdHeN.s: 权限不够 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/ccwnGT98.s: 权限不够 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/arjGlms3: 权限不够 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/.xrdp/xrdp-Wpph9R: 权限不够 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/.xrdp/xrdp-sesman-j8EDdT: 权限不够 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/jack-sam: 权限不够 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/config-err-1dsmuu: 权限不够 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/ccKPHt0a.s: 权限不够 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/.X11-unix/X0: 没有那个设备或地址 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/ccTjmDl9.s: 权限不够 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/cchl8Q5Z.s: 权限不够 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/.ICE-unix/1629: 没有那个设备或地址 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/cc8cLhMk.s: 权限不够 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/var/cchrl5HM.s: 权限不够 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/etc/fstab: 没有那个文件或目录 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/etc/resolv.conf: 没有那个文件或目录 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/etc/localtime: 没有那个文件或目录 grep: ./out/astar-parrot/compile_dir/target/linux-astar-parrot/base-files/ipkg-sunxi/base-files/etc/TZ: 没有那个文件或目录 匹配到二进制文件 ./out/astar-parrot/compile_dir/target/softap-0.0.1/src/libsoftap.so ./out/astar-parrot/compile_dir/target/softap-0.0.1/src/include/wifi.h:#define WIFI_DRIVER_FW_PATH_AP "lib/firmware/fw_bcm43438a0_apsta.bin" 匹配到二进制文件 ./out/astar-parrot/compile_dir/target/softap-0.0.1/ipkg-sunxi/softap/lib/libsoftap.so 匹配到二进制文件 ./out/astar-parrot/compile_dir/target/softap-0.0.1/ipkg-install/usr/lib/libsoftap.so grep: ./out/astar-parrot/compile_dir/host/u-boot-2014.10/arch/sandbox/include/asm/arch: 没有那个文件或目录 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/.xrdp/xrdp-Wpph9R: 权限不够 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/.xrdp/xrdp-sesman-j8EDdT: 权限不够 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/jack-sam: 权限不够 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/ccOJeBXg.s: 权限不够 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/ccx3i6ni.s: 权限不够 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/config-err-1dsmuu: 权限不够 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/ccyysPO4.s: 权限不够 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/ccvMBZVn.s: 权限不够 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/.X11-unix/X0: 没有那个设备或地址 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/cc2RTnRj.s: 权限不够 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/arXGbM2T: 权限不够 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/.ICE-unix/1629: 没有那个设备或地址 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/ccngUTgH.s: 权限不够 grep: ./out/astar-parrot/staging_dir/target/rootfs/var/ccbLfznO.s: 权限不够 grep: ./out/astar-parrot/staging_dir/target/rootfs/etc/fstab: 没有那个文件或目录 grep: ./out/astar-parrot/staging_dir/target/rootfs/etc/resolv.conf: 没有那个文件或目录 grep: ./out/astar-parrot/staging_dir/target/rootfs/etc/localtime: 没有那个文件或目录 grep: ./out/astar-parrot/staging_dir/target/rootfs/etc/TZ: 没有那个文件或目录 匹配到二进制文件 ./out/astar-parrot/staging_dir/target/rootfs/lib/libsoftap.so 匹配到二进制文件 ./out/astar-parrot/staging_dir/target/lib/libsoftap.so rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ W:\softap_ap6212a0_tinav2.1\package\allwinner\softap\src\include\wifi.h #ifndef WIFI_DRIVER_FW_PATH_AP #define WIFI_DRIVER_FW_PATH_AP "lib/firmware/fw_bcm43438a0_apsta.bin" #endif #ifndef WIFI_DRIVER_FW_PATH_P2P #define WIFI_DRIVER_FW_PATH_P2P "lib/firmware/fw_bcm43438a0_p2p.bin" #endif 修改为: #ifndef WIFI_DRIVER_FW_PATH_AP //#define WIFI_DRIVER_FW_PATH_AP "lib/firmware/fw_bcm43438a0_apsta.bin" #define WIFI_DRIVER_FW_PATH_AP "/lib/firmware/fw_bcm43438a0_apsta.bin" #endif #ifndef WIFI_DRIVER_FW_PATH_P2P //#define WIFI_DRIVER_FW_PATH_P2P "lib/firmware/fw_bcm43438a0_p2p.bin" #define WIFI_DRIVER_FW_PATH_P2P "/lib/firmware/fw_bcm43438a0_p2p.bin" #endif rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ make -j12 ONTROL/postinst-pkg; echo "insert_modules $modules" >> /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-kmod-net-ap6212/CONTROL/postinst-pkg; chmod 0755 /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-kmod-net-ap6212/CONTROL/postinst-pkg; fi SHELL= flock /home/wwt/softap_ap6212a0_tinav2.1/tmp/.root-copy.flock -c 'cp -fpR /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-kmod-net-ap6212/. /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/' rm -rf /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/tmp-kmod-net-ap6212 touch /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/rootfs/stamp/.kmod-net-ap6212_installed if [ -f /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo/linux.default.install.clean ]; then rm -f /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo/linux.default.install /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo/linux.default.install.clean; fi; echo "kmod-net-ap6212" >> /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/pkginfo/linux.default.install make[3]: Leaving directory `/home/wwt/softap_ap6212a0_tinav2.1/package/kernel/linux' make[2]: Leaving directory `/home/wwt/softap_ap6212a0_tinav2.1' make[1]: *** [/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/stamp/.package_compile] Error 2 make[1]: Leaving directory `/home/wwt/softap_ap6212a0_tinav2.1' Build failed - please re-run with -j1 to see the real error message make: *** [world] 错误 1 #### make failed to build some targets (8 seconds) #### rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ rootroot@cm-System-Product-Name:/home/wwt/softap_ap6212a0_tinav2.1$ make -j1 #softap_test make -C /home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/compile_dir/target/softap-0.0.1/demo/ ARCH="arm" AR="arm-openwrt-linux-muslgnueabi-ar" CC="arm-openwrt-linux-muslgnueabi-gcc" CXX="arm-openwrt-linux-muslgnueabi-g++" CFLAGS="-Os -pipe -march=armv7-a -mtune=cortex-a7 -mfpu=neon -fno-caller-saves -fno-plt -mfloat-abi=hard -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro" LDFLAGS="-L/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/usr/lib -L/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/staging_dir/target/lib -L/home/wwt/softap_ap6212a0_tinav2.1/prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/usr/lib -L/home/wwt/softap_ap6212a0_tinav2.1/prebuilt/gcc/linux-x86/arm/toolchain-sunxi/toolchain/lib -znow -zrelro" CONFIG_PREFIX="/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/compile_dir/target/softap-0.0.1/ipkg-install" all make[4]: Entering directory `/home/wwt/softap_ap6212a0_tinav2.1/out/astar-parrot/compile_dir/target/softap-0.0.1/demo' arm-openwrt-linux-muslgnueabi-gcc -o softap_test softap_test.c -Os -pipe -march=armv
ap6212a0_a33_sc3817r_服务器验证通过_bt已经通了_wifi需要修改配置_需要再次验证_20170626_1549.7z
调通sina33下的AP6212A0版本的BT 大文实验室/大文哥 壹捌陆捌零陆捌捌陆捌贰 wb4916 AT qq.com 完成时间:2017/6/26 11:01 版本:V1.0 本文参照: 《A33 wifi移植说明书.pdf》 还有就是全志R16的parrotv1.1的官方SDK(Android4.4.2) 1、打开AP6212的BT,关闭rtl8723bs的BT: [ 3.141273] Bluetooth: HCI UART driver ver 2.2 [ 3.146210] Bluetooth: HCI H4 protocol initialized [ 3.151563] Bluetooth: HCI BCSP protocol initialized [ 3.157154] usbcore: registered new interface driver btusb [ 3.163282] Bluetooth: Generic Bluetooth SDIO driver ver 0.1 [ 3.169599] Bluetooth: BlueSleep Mode Driver Ver 1.1 [ 3.175402] Bluetooth: get rtl8723bs rtl8723bs_bt_host_wake gpio failed [ 3.953017] Bluetooth: RFCOMM TTY layer initialized [ 3.958456] Bluetooth: RFCOMM socket layer initialized [ 3.964183] Bluetooth: RFCOMM ver 1.11 [ 3.968340] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 3.968638] [mmc]: sdc2 set ios: clk 25000000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 3.968734] [mmc]: mclk 0xf1c20090 0xc100000b [ 3.989421] Bluetooth: BNEP filters: protocol multicast [ 3.995242] Bluetooth: HIDP (Human Interface Emulation) ver 1.2 [ 4.001921] L2TP core driver, V2.0 [ 4.005706] PPPoL2TP kernel driver, V2.0 [ 4.010070] L2TP IP encapsulation support (L2TPv3) [ 4.015468] L2TP netlink interface [ 4.019264] L2TP ethernet pseudowire support (L2TPv3) [ 4.023860] [mmc]: sdc2 set ios: clk 25000000Hz bm PP pm ON vdd 3.3V width 1 timing MMC-HS(SDR20) dt B [ 4.023929] [mmc]: mclk 0xf1c20090 0xc100000b [ 4.040272] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5 [ 4.048780] ThumbEE CPU extension supported. [ 4.053550] Registering SWP/SWPB emulation handler [ 4.059269] [rfkill]: rfkill set power 1 [ 4.063652] gpio ap6xxx_bt_regon set val 0, act val 0 正常启动的BT加载: [ 3.207764] Bluetooth: HCI UART driver ver 2.2 [ 3.212725] Bluetooth: HCI H4 protocol initialized [ 3.218045] Bluetooth: HCI BCSP protocol initialized [ 3.223671] usbcore: registered new interface driver btusb [ 3.229766] Bluetooth: Generic Bluetooth SDIO driver ver 0.1 [ 3.236243] Bluetooth: MSM Sleep Mode Driver Ver 1.2 rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r$ ll rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ ./build.sh config Welcome to mkscript setup progress All available chips: 0. sun8iw5p1 Choice: 0 All available platforms: 0. android 1. dragonboard 2. linux Choice: 0 All available kernel: 0. linux-3.4 Choice: 0 All available boards: 0. evb 1. maple 2. redwood 3. y2 4. y3 Choice: 4 rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ cd linux-3.4/ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4$ make ARCH=arm menuconfig [*] Networking support ---> Bluetooth subsystem support ---> Bluetooth device drivers ---> Broadcom Bluetooth Low Power Manager Support Realtek Bluesleep driver support 修改为: Broadcom Bluetooth Low Power Manager Support An inverter between bt hostwake pin and cpu (NEW) Realtek Bluesleep driver support 2、(这个不修改:) R:\wyb\ap6212a0_a33_sc3817r\android\device\softwinner\astar-y3\overlay\frameworks\base\core\res\res\values\config.xml "wlan0" "bt-pan" 3、 R:\wyb\ap6212a0_a33_sc3817r\android\device\softwinner\astar-y3\astar_y3.mk # ap6181/6210/6330 sdio wifi fw and nvram #$(call inherit-product-if-exists, hardware/broadcom/wlan/firmware/ap6181/device-bcm.mk) #$(call inherit-product-if-exists, hardware/broadcom/wlan/firmware/ap6210/device-bcm.mk) $(call inherit-product-if-exists, hardware/broadcom/wlan/firmware/ap6212/device-bcm.mk) #$(call inherit-product-if-exists, hardware/broadcom/wlan/firmware/ap6330/device-bcm.mk) #rtl8723bs bt fw and config #$(call inherit-product, hardware/realtek/bluetooth/rtl8723bs/firmware/rtlbtfw_cfg.mk) # camera config for camera detector #PRODUCT_COPY_FILES += \ # device/softwinner/astar-y3/hawkview/sensor_list_cfg.ini:system/etc/hawkview/sensor_list_cfg.ini #add gms features #PRODUCT_COPY_FILES += \ # frameworks/native/data/etc/android.hardware.faketouch.xml:system/etc/permissions/android.hardware.faketouch.xml \ # frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:system/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \ # frameworks/native/data/etc/android.hardware.usb.host.xml:system/etc/permissions/android.hardware.usb.host.xml # 3G Data Card Packages #PRODUCT_PACKAGES += \ # u3gmonitor \ # chat \ # rild \ # pppd # 3G Data Card Configuration Flie #PRODUCT_COPY_FILES += \ # device/softwinner/polaris-common/rild/ip-down:system/etc/ppp/ip-down \ # device/softwinner/polaris-common/rild/ip-up:system/etc/ppp/ip-up \ # device/softwinner/polaris-common/rild/3g_dongle.cfg:system/etc/3g_dongle.cfg \ # device/softwinner/polaris-common/rild/usb_modeswitch:system/bin/usb_modeswitch \ # device/softwinner/polaris-common/rild/call-pppd:system/xbin/call-pppd \ # device/softwinner/polaris-common/rild/usb_modeswitch.sh:system/xbin/usb_modeswitch.sh \ # device/softwinner/polaris-common/rild/apns-conf_sdk.xml:system/etc/apns-conf.xml \ # device/softwinner/polaris-common/rild/libsoftwinner-ril.so:system/lib/libsoftwinner-ril.so #PRODUCT_COPY_FILES += \ # device/softwinner/polaris-common/rild/init.3gdongle.rc:root/init.sunxi.3gdongle.rc # 3G Data Card usb modeswitch File #PRODUCT_COPY_FILES += \ # $(call find-copy-subdir-files,*,device/softwinner/polaris-common/rild/usb_modeswitch.d,system/etc/usb_modeswitch.d) PRODUCT_PROPERTY_OVERRIDES += \ ro.sw.embeded.telephony = false PRODUCT_PROPERTY_OVERRIDES += \ persist.sys.timezone=Asia/Shanghai \ persist.sys.language=zh \ persist.sys.country=CN PRODUCT_PACKAGES += Bluetooth #PRODUCT_PROPERTY_OVERRIDES += \ # ro.product.8723b_bt.used=true #GPS Feature #PRODUCT_PACKAGES += gps.polaris #BOARD_USES_GPS_TYPE := simulator #PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.location.xml:system/etc/permissions/android.hardware.location.xml # evb logger PRODUCT_COPY_FILES += \ device/softwinner/astar-y3/tools/logger.sh:system/bin/logger.sh PRODUCT_PROPERTY_OVERRIDES += \ persist.sys.usb.config=mass_storage,adb \ ro.adb.secure=0 ro.udisk.lable=Polaris \ ro.font.scale=1.0 \ ro.hwa.force=false \ rw.logger=0 \ ro.sys.bootfast=true \ debug.hwc.showfps=0 \ debug.hwui.render_dirty_regions=false #ro.sys.storage_type = emulated \ #for gms #PRODUCT_PROPERTY_OVERRIDES += \ # ro.sys.mutedrm=true \ # ro.adb.secure=1 PRODUCT_PROPERTY_OVERRIDES += \ ro.sf.lcd_density=213 \ ro.product.firmware=v2.0 $(call inherit-product-if-exists, device/softwinner/astar-y3/modules/modules.mk) DEVICE_PACKAGE_OVERLAYS := device/softwinner/astar-y3/overlay PRODUCT_CHARACTERISTICS := tablet # Overrides PRODUCT_AAPT_CONFIG := xlarge hdpi xhdpi large PRODUCT_AAPT_PREF_CONFIG := xhdpi PRODUCT_BRAND := Allwinner PRODUCT_NAME := astar_y3 PRODUCT_DEVICE := astar-y3 PRODUCT_MODEL := QUAD-CORE A33 y3 PRODUCT_MANUFACTURER := softwinner #include device/softwinner/polaris-common/prebuild/google/products/gms_base.mk 4、 R:\wyb\ap6212a0_a33_sc3817r\android\device\softwinner\astar-y3\BoardConfig.mk # wifi and bt configuration # 1. Wifi Configuration # 1.1 realtek wifi support # 1.1 realtek wifi configuration #BOARD_WIFI_VENDOR := realtek ifeq ($(BOARD_WIFI_VENDOR), realtek) WPA_SUPPLICANT_VERSION := VER_0_8_X BOARD_WPA_SUPPLICANT_DRIVER := NL80211 BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_rtl BOARD_HOSTAPD_DRIVER := NL80211 BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_rtl SW_BOARD_USR_WIFI := rtl8188eu BOARD_WLAN_DEVICE := rtl8188eu #SW_BOARD_USR_WIFI := rtl8723au #BOARD_WLAN_DEVICE := rtl8723au #SW_BOARD_USR_WIFI := rtl8723bs #BOARD_WLAN_DEVICE := rtl8723bs endif # 1.2 broadcom wifi support 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" #SW_BOARD_USR_WIFI := AP6181 #SW_BOARD_USR_WIFI := AP6210 #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" # 2017/6/21 15:11 wenyuanbo configure ap6212 use ap6210 SW_BOARD_USR_WIFI := AP6212 WIFI_DRIVER_FW_PATH_STA := "/system/vendor/modules/fw_bcm43438a0.bin" WIFI_DRIVER_FW_PATH_P2P := "/system/vendor/modules/fw_bcm43438a0_p2p.bin" WIFI_DRIVER_FW_PATH_AP := "/system/vendor/modules/fw_bcm43438a0_apsta.bin" #SW_BOARD_USR_WIFI := AP6330 #WIFI_DRIVER_FW_PATH_STA := "/system/vendor/modules/fw_bcm40183b2_ag.bin" #WIFI_DRIVER_FW_PATH_P2P := "/system/vendor/modules/fw_bcm40183b2_ag_p2p.bin" #WIFI_DRIVER_FW_PATH_AP := "/system/vendor/modules/fw_bcm40183b2_ag_apsta.bin" endif #1.3 eag wifi config #BOARD_WIFI_VENDOR := eagle ifeq ($(BOARD_WIFI_VENDOR), eagle) WPA_SUPPLICANT_VERSION := VER_0_8_X BOARD_WPA_SUPPLICANT_DRIVER := NL80211 BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_eagle BOARD_HOSTAPD_DRIVER := NL80211 BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_eagle SW_BOARD_USR_WIFI := esp8089 BOARD_WLAN_DEVICE := esp8089 endif # 2. Bluetooth Configuration # make sure BOARD_HAVE_BLUETOOTH is true for every bt vendor BOARD_HAVE_BLUETOOTH := true BOARD_HAVE_BLUETOOTH_BCM := true #SW_BOARD_HAVE_BLUETOOTH_NAME := ap6210 SW_BOARD_HAVE_BLUETOOTH_NAME := ap6212 #SW_BOARD_HAVE_BLUETOOTH_NAME := ap6330 #BOARD_HAVE_BLUETOOTH_RTK := true #BLUETOOTH_HCI_USE_RTK_H5 := true #SW_BOARD_HAVE_BLUETOOTH_NAME := rtl8723bs 5、 R:\wyb\ap6212a0_a33_sc3817r\android\device\softwinner\astar-y3\init.sun8i.rc on early-fs mount_all /fstab.sun8i setprop ro.crypto.fuse_sdcard true insmod /system/vendor/modules/disp.ko insmod /system/vendor/modules/lcd.ko insmod /system/vendor/modules/mali.ko insmod /system/vendor/modules/leds-sunxi.ko insmod /system/vendor/modules/bcmdhd.ko insmod /system/vendor/modules/bcm_btlpm.ko #2G or 3G init.rc # import init.sunxi.3gdongle.rc ## 1. realtek & eagle wifi service ## 1.1 realtek & eagle wifi sta service #service wpa_supplicant /system/bin/wpa_supplicant \ # -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ # -O/data/misc/wifi/sockets \ # -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0 # # we will start as root and wpa_supplicant will switch to user wifi # # after setting up the capabilities required for WEXT # # user wifi # # group wifi inet keystore # class main # socket wpa_wlan0 dgram 660 wifi wifi # disabled # oneshot # ## 1.2 realtek & eagle wifi sta p2p concurrent service #service p2p_supplicant /system/bin/wpa_supplicant \ # -ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf \ # -e/data/misc/wifi/entropy.bin -N \ # -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ # -O/data/misc/wifi/sockets \ # -g@android:wpa_wlan0 # class main # socket wpa_wlan0 dgram 660 wifi wifi # disabled # oneshot # 2. broadcom wifi service # 2.1 broadcom wifi station and softap service wpa_supplicant /system/bin/wpa_supplicant \ -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ -I/system/etc/wifi/wpa_supplicant_overlay.conf \ -O/data/misc/wifi/sockets \ -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0 # we will start as root and wpa_supplicant will switch to user wifi # after setting up the capabilities required for WEXT # user wifi # group wifi inet keystore class main socket wpa_wlan0 dgram 660 wifi wifi disabled oneshot # 2.2 broadcom wifi sta p2p concurrent service service p2p_supplicant /system/bin/wpa_supplicant \ -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ -I/system/etc/wifi/wpa_supplicant_overlay.conf \ -O/data/misc/wifi/sockets -N \ -ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf \ -I/system/etc/wifi/p2p_supplicant_overlay.conf \ -puse_p2p_group_interface=1 -e/data/misc/wifi/entropy.bin \ -g@android:wpa_wlan0 # we will start as root and wpa_supplicant will switch to user wifi # after setting up the capabilities required for WEXT # user wifi # group wifi inet keystore class main socket wpa_wlan0 dgram 660 wifi wifi disabled oneshot 6、(不需要修改) R:\wyb\ap6212a0_a33_sc3817r\android\device\softwinner\astar-y3\ueventd.sun8i.rc 7、 R:\wyb\ap6212a0_a33_sc3817r\android\frameworks\base\packages\SettingsProvider\res\values\defaults.xml 1800000 true 8、 R:\wyb\ap6212a0_a33_sc3817r\android\frameworks\base\services\java\com\android\server\BatteryService.java // private static final boolean DEBUG = false; private static final boolean DEBUG = true; private void sendIntentLocked() { // Pack up the values and broadcast them to everyone final Intent intent = new Intent(Intent.ACTION_BATTERY_CHANGED); intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY | Intent.FLAG_RECEIVER_REPLACE_PENDING); int icon = getIconLocked(mBatteryProps.batteryLevel); intent.putExtra(BatteryManager.EXTRA_STATUS, mBatteryProps.batteryStatus); intent.putExtra(BatteryManager.EXTRA_HEALTH, mBatteryProps.batteryHealth); intent.putExtra(BatteryManager.EXTRA_PRESENT, mBatteryProps.batteryPresent); //intent.putExtra(BatteryManager.EXTRA_LEVEL, mBatteryProps.batteryLevel); intent.putExtra(BatteryManager.EXTRA_LEVEL, 100); intent.putExtra(BatteryManager.EXTRA_SCALE, BATTERY_SCALE); intent.putExtra(BatteryManager.EXTRA_ICON_SMALL, icon); intent.putExtra(BatteryManager.EXTRA_PLUGGED, mPlugType); //intent.putExtra(BatteryManager.EXTRA_VOLTAGE, mBatteryProps.batteryVoltage); intent.putExtra(BatteryManager.EXTRA_VOLTAGE, 4200); intent.putExtra(BatteryManager.EXTRA_TEMPERATURE, mBatteryProps.batteryTemperature); intent.putExtra(BatteryManager.EXTRA_TECHNOLOGY, mBatteryProps.batteryTechnology); intent.putExtra(BatteryManager.EXTRA_INVALID_CHARGER, mInvalidCharger); if (DEBUG) { Slog.d(TAG, "2016/12/05 10:41 wenyuanbo **** Sending ACTION_BATTERY_CHANGED. level:" + mBatteryProps.batteryLevel + ", scale:" + BATTERY_SCALE + ", status:" + mBatteryProps.batteryStatus + ", health:" + mBatteryProps.batteryHealth + ", present:" + mBatteryProps.batteryPresent + ", voltage: " + mBatteryProps.batteryVoltage + ", temperature: " + mBatteryProps.batteryTemperature + ", technology: " + mBatteryProps.batteryTechnology + ", AC powered:" + mBatteryProps.chargerAcOnline + ", USB powered:" + mBatteryProps.chargerUsbOnline + ", Wireless powered:" + mBatteryProps.chargerWirelessOnline + ", icon:" + icon + ", invalid charger:" + mInvalidCharger); } mHandler.post(new Runnable() { @Override public void run() { ActivityManagerNative.broadcastStickyIntent(intent, null, UserHandle.USER_ALL); } }); } 9、(直接拷贝同目录下的ap6210:) R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\conf\softwinner\ap6212\Android.mk LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := bt_vendor.conf LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_PATH := $(TARGET_OUT)/etc/bluetooth LOCAL_MODULE_TAGS := eng LOCAL_SRC_FILES := $(LOCAL_MODULE) include $(BUILD_PREBUILT) R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\conf\softwinner\ap6212\bt_vendor.conf # UART device port where Bluetooth controller is attached UartPort = /dev/ttyS1 # Firmware patch file location FwPatchFilePath = /system/vendor/modules/ # Firmware Name FwPatchFileName = bcm43438a0.hcd 10、新增:vnd_astar-y3-ap6212.txt,直接拷贝:vnd_astar-y2-ap6210.txt R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\include\vnd_astar-y3-ap6212.txt R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\include\vnd_astar-y2-ap6210.txt BLUETOOTH_UART_DEVICE_PORT = "/dev/ttyS1" FW_PATCHFILE_LOCATION = "/system/vendor/modules/" LPM_IDLE_TIMEOUT_MULTIPLE = 5 UART_TARGET_BAUD_RATE = 1500000 BT_WAKE_VIA_PROC = TRUE #LPM_SLEEP_MODE = FALSE BTVND_DBG = TRUE BTHW_DBG = TRUE VNDUSERIAL_DBG = TRUE UPIO_DBG = TRUE 11、 R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\src\userial_vendor.c //#ifdef USE_AP6210_BT_MODULE #if defined(USE_AP6210_BT_MODULE) || defined(USE_AP6212_BT_MODULE) /* PATCH for AP6210. Will detect CTS(module side) to select transport mode*/ ALOGE("userial vendor open: USE AP6210 BT MODULE."); usleep(100000); close(vnd_userial.fd); if ((vnd_userial.fd = open(vnd_userial.port_name, O_RDWR)) == -1) { ALOGE("userial vendor open: unable to open %s", vnd_userial.port_name); return -1; } #endif //USE_AP6210_BT_MODULE 12、 R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\Android.mk ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6210) LOCAL_CFLAGS += -DUSE_AP6210_BT_MODULE endif ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6212) LOCAL_CFLAGS += -DUSE_AP6212_BT_MODULE endif ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6330) include $(LOCAL_PATH)/conf/softwinner/ap6330/Android.mk endif ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6210) include $(LOCAL_PATH)/conf/softwinner/ap6210/Android.mk endif ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6212) include $(LOCAL_PATH)/conf/softwinner/ap6212/Android.mk endif 13、 R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\vnd_buildcfg.mk ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6210) SRC := $(call my-dir)/include/$(addprefix vnd_, $(addsuffix -ap6210.txt,$(basename $(TARGET_DEVICE)))) endif ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6212) SRC := $(call my-dir)/include/$(addprefix vnd_, $(addsuffix -ap6212.txt,$(basename $(TARGET_DEVICE)))) endif 14、(这些AP6212的WIFI的bin文件和BT的hcd文件来自全志R16的SDK,当然也可以找正基原厂/代理商索取:) R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\wlan\firmware\ap6212\bcm43438a0.hcd (根据ap6210修改:) R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\wlan\firmware\ap6212\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 PRODUCT_COPY_FILES += \ hardware/broadcom/wlan/firmware/ap6212/fw_bcm43438a0.bin:system/vendor/modules/fw_bcm43438a0.bin \ hardware/broadcom/wlan/firmware/ap6212/fw_bcm43438a0_apsta.bin:system/vendor/modules/fw_bcm43438a0_apsta.bin \ hardware/broadcom/wlan/firmware/ap6212/fw_bcm43438a0_p2p.bin:system/vendor/modules/fw_bcm43438a0_p2p.bin \ hardware/broadcom/wlan/firmware/ap6212/nvram_ap6212.txt:system/vendor/modules/nvram_ap6212.txt \ hardware/broadcom/wlan/firmware/ap6212/bcm43438a0.hcd:system/vendor/modules/bcm43438a0.hcd #hardware/broadcom/wlan/firmware/ap6212/config.txt:system/vendor/modules/config.txt ######################## R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\wlan\firmware\ap6212\fw_bcm43438a0.bin R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\wlan\firmware\ap6212\fw_bcm43438a0_apsta.bin R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\wlan\firmware\ap6212\fw_bcm43438a0_p2p.bin R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\wlan\firmware\ap6212\nvram_ap6212.txt 15、(可选修改:) R:\wyb\ap6212a0_a33_sc3817r\android\packages\apps\Camera2\src\com\android\camera\CameraActivity.java private BroadcastReceiver mBatteryInfoReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (Intent.ACTION_BATTERY_CHANGED.equals(action)) { int Level = intent.getIntExtra("level", 0); int Scale = intent.getIntExtra("scale", 100); Log.w(TAG, "2016/11/29 19:54 &&&& wenyuanbo battery Level" + Level); /* *Logic: *1.the battery level is lower then 5%. *2.if in camera, make sure that not in the snapshot progress. *3.if in videocamera, make sure that not in the videorecording progress. *4.everytime starting the camera activity, the battery level is broadcasted, * if meeting the conditions above, give a dialog, press it and finish the activity. *5.if the conditions are not satisfied when started, play for a moment, in the camera acitvity * or video camera activity, the conditiosn are satisfied, also give a dialog for finishing the activity. * *by fuqiang. */ if(Level < 5) { Runnable runnable_close_camera = new Runnable() { @Override public void run() { //close the camera. // CameraActivity.this.finish(); } }; Log.w(TAG, "2016/11/29 18:20 **** wenyuanbo battery Level" + Level); showLocationDialog(); } /* *Logic: *1.the battery level is lhigher then 5% and lower than 15%. *2.if in camera, make sure that not in the snapshot progress. *3.if in videocamera, make sure that not in the videorecording progress. *4.whether in camera or in videocamera, make sure that the flash mode is supported. *5.everytime starting the camera activity, the battery level is broadcasted, * if meeting the conditions above, forbidden the flash(gray icon), give a dialog to notise user. *6.if the conditions are not satisfied when started, play for a moment, in the camera acitvity * or video camera activity, the conditiosn are satisfied, forbidden the flash and give a notice dialog. *7.the dialog is only given once for each camera activity starting. * *by fuqiang. */ else if(Level < 16) { //close the flash mode. /* if (mIsLowBatteryDialogShown == false) { mRotateDialog.showAlertDialog( getString(R.string.warning), getString(R.string.low_battery_15), null, null, getString(R.string.close), null); mIsLowBatteryDialogShown = true; } */ } } } }; 16、(可选:) R:\wyb\ap6212a0_a33_sc3817r\lichee\tools\pack\chips\sun8iw5p1\configs\default\env.cfg bootdelay=3 loglevel=8 17、 R:\wyb\ap6212a0_a33_sc3817r\lichee\tools\pack\chips\sun8iw5p1\configs\y3\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 ;---------------------------------------------------------------------------------- ;uart configuration ;uart_used = uart x enable ;uart_type = 2:2 wire,4:4 wire,8:8 wire, full function ;---------------------------------------------------------------------------------- [uart0] uart_used = 1 uart_port = 0 uart_type = 2 uart_tx = port:PF02 uart_rx = port:PF04 [uart1] uart_used = 1 uart_port = 1 uart_type = 4 uart_tx = port:PG06 uart_rx = port:PG07 uart_rts = port:PG08 uart_cts = port:PG09 [uart2] uart_used = 1 uart_type = 4 uart_tx = port:PB00 uart_rx = port:PB01 uart_rts = port:PB02 uart_cts = port:PB03 [uart3] uart_used = 0 uart_type = 4 uart_tx = port:PH06 uart_rx = port:PH07 uart_rts = port:PH08 uart_cts = port:PH09 [uart4] uart_used = 0 uart_port = 4 uart_type = 2 uart_tx = port:PA04 uart_rx = port:PA05 uart_rts = port:PA06 uart_cts = port:PA07 ;---------------------------------------------------------------------------------- ;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 ctp_wakeup = port:PL03 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 [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 ;ap6xxx_wl_regon = port:PL06 ;lcd_bl_en = port:PL06 lcd_power = "axp22_dc1sw" lcdd0 = port:PD18 lcdd1 = port:PD19 lcdd2 = port:PD20 lcdd3 = port:PD21 lcdd4 = port:PD22 lcdd5 = port:PD23 lcdd6 = port:PD24 lcdd7 = port:PD25 lcdd8 = port:PD26 lcdd9 = port:PD27 ;---------------------------------------------------------------------------------- ;pwm config ;---------------------------------------------------------------------------------- [pwm0_para] pwm_used = 0 pwm_positive = port:PH00 [pwm1_para] pwm_used = 1 pwm_positive = port:PH01 ;-------------------------------------------------------------------------------- ;wifi configuration ;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) ;wifi_mod_sel: 0- none, 1- ap6181, 2- ap6210(wifi+bt), ; 3 - rtl8188eu, 4- rtl8723au(wifi+bt), ; 5 - rtl8723bs, 6- esp8089 ;-------------------------------------------------------------------------------- [wifi_para] wifi_used = 1 wifi_sdc_id = 1 wifi_usbc_id = 1 wifi_usbc_type = 1 wifi_mod_sel = 2 wifi_power = "axp22_dldo1" wifi_power_ext1 = "axp22_dldo2" wifi_power_ext2 = "axp22_aldo1" wifi_power_switch = ;wifi_power_switch = port:power0 ; 1 - ap6181 sdio wifi gpio config ;ap6xxx_wl_regon = port:PL06 ;ap6xxx_wl_host_wake = port:PL07 ;ap6xxx_lpo_use_apclk = 1 ; 2 - ap6210 sdio wifi gpio config ap6xxx_wl_regon = port:PL06 ;ap6xxx_wl_regon = port:PD13 ap6xxx_wl_host_wake = port:PL07 ap6xxx_bt_regon = port:PL08 ap6xxx_bt_wake = port:PL10 ap6xxx_bt_host_wake = port:PL09 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 ;rtl8723bs_wl_regon = port:PL06 ;rtl8723bs_wl_host_wake = port:PL07 ;rtl8723bs_bt_regon = port:PL08 ;rtl8723bs_bt_wake = port:PL10 ;rtl8723bs_bt_host_wake = port:PL09 ;rtl8723bs_lpo_use_apclk = 0 ; 6 - eagle sdio wifi ;esp_wl_chip_en = port:PL03 ;esp_wl_rst = port:PL02 ;-------------------------------------------------------------------------------- ;blue tooth ;bt_used ---- blue tooth used (0- no used, 1- used) ;bt_uard_id ---- uart index ;-------------------------------------------------------------------------------- [bt_para] bt_used = 1 bt_uart_id = 1 power_start = 3 pmu_temp_enable = 0 18、 刷机之后,BT可以用。 传输4.5MB的JPG图片大概需要2分钟。 WIFI: 在设置→WLAN(打开之后): shell@astar-y3:/ $ shell@astar-y3:/ $ [ 469.609956] init: computing context for service '/system/bin/wpa_supplicant' [ 469.618386] init: starting 'p2p_supplicant' [ 469.625739] init: Created socket '/dev/socket/wpa_wlan0' with mode '660', user '1010', group '1010' [ 469.673379] init: waitpid returned pid 2065, status = 0000ff00 [ 469.679923] init: process 'p2p_supplicant', pid 2065 exited [ 476.197334] sndpcm_unmute,line:1099 [ 451.464755] CPU1: Booted secondary processor [ 478.459403] CPU1: shutdown [ 478.462947] [hotplug]: cpu(0) try to kill cpu(1) [ 478.468478] [hotplug]: cpu1 is killed! . shell@astar-y3:/ $ 分析启动的log: [ 17.526849] gpio ap6xxx_wl_regon set val 1, act val 1 [ 17.632508] [ap6xxx]: sdio wifi power state: on [ 17.637576] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 17.637751] =========== WLAN placed in POWER ON ======== [ 17.654651] [mmc]: sdc1 card_power_on start... [ 17.659576] [mmc]: sdc1 power_supply is null [ 17.664322] [mmc]: sdc1 card_power_on ok [ 17.680039] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 17.690275] [mmc]: mclk 0xf1c2008c 0x8002000e [ 17.772361] [mmc]: *** sunxi_mci_dump_errinfo(L773): smc 1 err, cmd 52, RTO !! [ 17.781309] [mmc]: *** sunxi_mci_dump_errinfo(L773): smc 1 err, cmd 52, RTO !! [ 17.789448] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 17.799714] [mmc]: mclk 0xf1c2008c 0x8002000e [ 17.862032] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 17.872262] [mmc]: mclk 0xf1c2008c 0x8002000e [ 17.933953] [mmc]: *** sunxi_mci_dump_errinfo(L773): smc 1 err, cmd 8, RTO !! [ 17.941997] *******************Try sdio******************* [ 17.948400] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 17.958630] [mmc]: mclk 0xf1c2008c 0x8002000e [ 18.027775] mmc1: queuing unknown CIS tuple 0x80 (2 bytes) [ 18.035416] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 18.043087] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 18.051920] mmc1: queuing unknown CIS tuple 0x80 (7 bytes) [ 18.145287] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing SD-HS(SDR25) dt B [ 18.155436] [mmc]: mclk 0xf1c2008c 0x8002000e [ 18.215346] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 1 timing SD-HS(SDR25) dt B [ 18.225736] [mmc]: mclk 0xf1c2008c 0x8100000b [ 18.285675] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 18.296021] [mmc]: mclk 0xf1c2008c 0x8140030b [ 18.357915] mmc1: new high speed SDIO card at address 0001 [ 18.364532] bcmsdh_register: Linux Kernel SDIO/MMC Driver [ 18.364575] *******************sdio init ok******************* [ 18.377207] bcm_wlan_get_oob_irq enter. [ 18.381537] gpio [359] map to virq [7] ok [ 18.388851] F1 signature OK, socitype:0x1 chip:0xa9a6 rev:0x0 pkg:0x4 [ 18.396019] dhdsdio_probe_attach: unsupported chip: 0xa9a6 [ 18.402155] dhdsdio_probe: dhdsdio_probe_attach failed [ 18.407899] bcmsdh_probe: device attach failed [ 18.412981] [ 18.412984] Dongle Host Driver, version 1.88.45.3 (r420671) [ 18.412989] Compiled in drivers/net/wireless/bcmdhd on Jun 26 2017 at 12:06:39 [ 18.428835] dhd_module_init: sdio_register_driver timeout or error [ 18.435928] gpio ap6xxx_wl_regon set val 0, act val 0 [ 18.541549] [ap6xxx]: sdio wifi power state: off [ 18.546679] =========== WLAN placed in POWER OFF ======== [ 18.546915] mmc1: card 0001 removed [ 18.546995] [mmc]: mmc not poweroff notifiy [ 18.547007] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 18.547160] [mmc]: sdc1 card_power_off start... [ 18.547166] [mmc]: sdc1 power_supply is null [ 18.547173] [mmc]: sdc1 card_power_off ok [ 18.631655] init: command 'insmod' r=-1 [ 18.636066] init: command 'insmod' r=-1 [ 18.658010] fs_mgr: swapon failed for /dev/block/zram0 [ 18.663804] init: command 'swapon_all' r=-1 [ 18.668504] init: processing action 0x58e70 (console_init) [ 18.675396] init: width = 1280 [ 18.678788] init: height = 800 [ 18.682224] init: s.st_size = 3145728 [ 18.686308] init: logo match failed!fbsize = 4096000 [ 18.718811] init: command 'console_init' r=0 [ 18.723628] init: processing action 0x55bf0 (fs) [ 18.730640] init: command 'mkdir' r=-2 [ 18.741901] init: command 'insmod' r=0 [ 18.752227] init: command 'insmod' r=0 [ 18.756491] init: command 'insmod' r=-1 [ 18.771211] init: command 'insmod' r=0 [ 18.779731] init: command 'insmod' r=0 [ 18.791739] init: command 'insmod' r=0 [ 18.803941] init: command 'insmod' r=0 [ 18.816178] init: command 'insmod' r=0 19、查找:(dhdsdio_probe_attach: unsupported chip: 0xa9a6) rootroot@rootroot-E400:~$ cd wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd/ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ grep "unsupported chip" . -R ./dhd_sdio.c: DHD_ERROR(("%s: unsupported chip: 0xx\n", ./sbutils.c: SI_ERROR(("sb_chip2numcores: unsupported chip 0x%x\n", 匹配到二进制文件 ./dhd_sdio.o 匹配到二进制文件 ./bcmdhd.o 匹配到二进制文件 ./bcmdhd.ko 匹配到二进制文件 ./sbutils.o rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ 经过确认: R:\wyb\ap6212a0_a33_sc3817r\lichee\linux-3.4\drivers\net\wireless\bcmdhd\dhd_sdio.c static bool dhdsdio_probe_attach(struct dhd_bus *bus, osl_t *osh, void *sdh, void *regsva, uint16 devid) { …… bcmsdh_chipinfo(sdh, bus->sih->chip, bus->sih->chiprev); if (!dhdsdio_chipmatch((uint16)bus->sih->chip)) { DHD_ERROR(("%s: unsupported chip: 0xx\n", __FUNCTION__, bus->sih->chip)); goto fail; } …… } 继续追踪: 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 == BCM43349_CHIP_ID) return TRUE; if (chipid == BCM4345_CHIP_ID) return TRUE; if (chipid == BCM4350_CHIP_ID) return TRUE; if (chipid == BCM4354_CHIP_ID) return TRUE; if (chipid == BCM4356_CHIP_ID) return TRUE; if (chipid == BCM4358_CHIP_ID) return TRUE; if (chipid == BCM4371_CHIP_ID) return TRUE; if (chipid == BCM43430_CHIP_ID) return TRUE; if (BCM4349_CHIP(chipid)) return TRUE; return FALSE; } 20、 rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ ll 总用量 40 drwxr-xr-x 7 rootroot rootroot 4096 6月 26 12:02 ./ drwx------ 6 rootroot rootroot 4096 6月 26 14:16 ../ drwxr-xr-x 10 rootroot rootroot 4096 9月 4 2014 brandy/ -rw-rw-r-- 1 rootroot rootroot 116 6月 26 12:02 .buildconfig drwxr-xr-x 15 rootroot rootroot 4096 9月 4 2014 buildroot/ -r-xr-xr-x 1 rootroot rootroot 55 9月 4 2014 build.sh* drwxr-xr-x 28 rootroot rootroot 4096 6月 26 14:30 linux-3.4/ drwxrwxr-x 3 rootroot rootroot 4096 6月 26 12:02 out/ -r--r--r-- 1 rootroot rootroot 232 9月 4 2014 README drwxr-xr-x 7 rootroot rootroot 4096 6月 7 19:33 tools/ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ ./build.sh config Welcome to mkscript setup progress All available chips: 0. sun8iw5p1 Choice: 0 All available platforms: 0. android 1. dragonboard 2. linux Choice: 0 All available kernel: 0. linux-3.4 Choice: 0 All available boards: 0. evb 1. maple 2. redwood 3. y2 4. y3 Choice: 4 rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ ./build.sh INFO: ---------------------------------------- INFO: build lichee ... INFO: chip: sun8iw5p1 INFO: platform: android INFO: kernel: linux-3.4 INFO: board: y3 INFO: output: out/sun8iw5p1/android/y3 INFO: ---------------------------------------- INFO: build buildroot ... external toolchain has been installed INFO: build buildroot OK. INFO: build kernel ... INFO: prepare toolchain ... Building kernel CHK include/linux/version.h CHK include/generated/utsrelease.h make[1]: “include/generated/mach-types.h”是最新的。 CALL scripts/checksyscalls.sh CHK include/generated/compile.h CC arch/arm/mach-sunxi/pm/standby/common.o CC arch/arm/mach-sunxi/pm/standby/standby_clock.o CC arch/arm/mach-sunxi/pm/standby/standby_ir.o CC arch/arm/mach-sunxi/pm/standby/standby_key.o CC arch/arm/mach-sunxi/pm/standby/standby_power.o CC arch/arm/mach-sunxi/pm/standby/standby_twi.o CC arch/arm/mach-sunxi/pm/standby/standby_usb.o AS arch/arm/mach-sunxi/pm/standby/standby_delay.o CC arch/arm/mach-sunxi/pm/standby/./arisc/standby_arisc.o CC arch/arm/mach-sunxi/pm/standby/./arisc/arisc_hwmsgbox.o CHK kernel/config_data.h CC arch/arm/mach-sunxi/pm/standby/./arisc/arisc_hwspinlock.o CC arch/arm/mach-sunxi/pm/standby/./arisc/arisc_message_manager.o CC arch/arm/mach-sunxi/pm/standby/./../pm_debug.o CC arch/arm/mach-sunxi/pm/standby/./../mem_timing.o CC arch/arm/mach-sunxi/pm/standby/./../mem_mmu_pc.o AS arch/arm/mach-sunxi/pm/standby/./../mem_mmu_pc_asm.o CC arch/arm/mach-sunxi/pm/standby/./../mem_serial.o CC arch/arm/mach-sunxi/pm/standby/./../mem_printk.o AS arch/arm/mach-sunxi/pm/standby/./../mem_divlib.o CC arch/arm/mach-sunxi/pm/standby/./../mem_divlibc.o CC arch/arm/mach-sunxi/pm/standby/./../mem_int.o CC arch/arm/mach-sunxi/pm/standby/./../mem_tmr.o CC arch/arm/mach-sunxi/pm/standby/./../mem_tmstmp.o CC arch/arm/mach-sunxi/pm/standby/./../mem_clk.o CC arch/arm/mach-sunxi/pm/standby/./../mem_hwspinlock.o CC arch/arm/mach-sunxi/pm/standby/standby.o rm -rf *.o arch/arm/mach-sunxi/pm/standby/../*.o CC arch/arm/mach-sunxi/pm/standby/super/common.o CC arch/arm/mach-sunxi/pm/standby/super/super_twi.o CC [M] drivers/net/wireless/bcmdhd/dhd_sdio.o AS arch/arm/mach-sunxi/pm/standby/super/super_delay.o CC arch/arm/mach-sunxi/pm/standby/super/super_clock.o CC arch/arm/mach-sunxi/pm/standby/super/super_power.o CC arch/arm/mach-sunxi/pm/standby/super/super_cpus.o AS arch/arm/mach-sunxi/pm/standby/super/resume/resume1.o CC arch/arm/mach-sunxi/pm/standby/super/resume/resume_head.o CC arch/arm/mach-sunxi/pm/standby/super/resume/resume1_c_part.o CC arch/arm/mach-sunxi/pm/standby/../pm_debug.o CC arch/arm/mach-sunxi/pm/standby/../mem_timing.o CC arch/arm/mach-sunxi/pm/standby/../mem_mmu_pc.o AS arch/arm/mach-sunxi/pm/standby/../mem_mmu_pc_asm.o CC arch/arm/mach-sunxi/pm/standby/../mem_cpu.o CC arch/arm/mach-sunxi/pm/standby/../mem_serial.o CC arch/arm/mach-sunxi/pm/standby/../mem_printk.o CC [M] drivers/net/wireless/bcmdhd/dhd_cdc.o CC [M] drivers/net/wireless/bcmdhd/bcmsdh_linux.o CC [M] drivers/net/wireless/bcmdhd/dhd_common.o AS arch/arm/mach-sunxi/pm/standby/../mem_divlib.o CC arch/arm/mach-sunxi/pm/standby/../mem_divlibc.o drivers/net/wireless/bcmdhd/dhd_sdio.c: In function ‘dhdsdio_chipmatch’: drivers/net/wireless/bcmdhd/dhd_sdio.c:6936:16: error: ‘BCM43430_CHIP_ID’ undeclared (first use in this function) drivers/net/wireless/bcmdhd/dhd_sdio.c:6936:16: note: each undeclared identifier is reported only once for each function it appears in CC arch/arm/mach-sunxi/pm/standby/../mem_int.o make[4]: *** [drivers/net/wireless/bcmdhd/dhd_sdio.o] 错误 1 make[4]: *** 正在等待未完成的任务.... CC arch/arm/mach-sunxi/pm/standby/../mem_tmr.o CC arch/arm/mach-sunxi/pm/standby/../mem_tmstmp.o CC arch/arm/mach-sunxi/pm/standby/../mem_hwspinlock.o CC arch/arm/mach-sunxi/pm/standby/../mem_clk.o Source file is open Destination file is created. Source file is open Destination file is open. temp value is 400. 0 soure_file size is 9496. destination_file size is 0x2800. check sum generated is 0x68D92007. Everything is ok. rm -rf *.o arch/arm/mach-sunxi/pm/standby/../*.o CC arch/arm/mach-sunxi/pm/mem_mapping.o CC arch/arm/mach-sunxi/pm/mem_divlibc.o CC arch/arm/mach-sunxi/pm/mem_cpu.o AS arch/arm/mach-sunxi/pm/mem_cpu_asm.o AS arch/arm/mach-sunxi/pm/mem_mmu_pc_asm.o CC arch/arm/mach-sunxi/pm/mem_mmu_pc.o CC arch/arm/mach-sunxi/pm/mem_int.o CC arch/arm/mach-sunxi/pm/mem_clk.o CC arch/arm/mach-sunxi/pm/mem_tmr.o CC arch/arm/mach-sunxi/pm/mem_tmstmp.o CC arch/arm/mach-sunxi/pm/mem_twi.o CC arch/arm/mach-sunxi/pm/mem_gpio.o CC arch/arm/mach-sunxi/pm/mem_sram.o CC arch/arm/mach-sunxi/pm/mem_ccu.o CC arch/arm/mach-sunxi/pm/mem_cci400.o CC arch/arm/mach-sunxi/pm/mem_gtbus.o CC arch/arm/mach-sunxi/pm/pm_debug.o CC arch/arm/mach-sunxi/pm/mem_timing.o CC arch/arm/mach-sunxi/pm/mem_hwspinlock.o CC arch/arm/mach-sunxi/pm/pm.o CC arch/arm/mach-sunxi/pm/extended_standby.o CC arch/arm/mach-sunxi/pm/standby/super/super_power.o CC arch/arm/mach-sunxi/pm/standby/super/super_twi.o CC arch/arm/mach-sunxi/pm/standby/super/super_clock.o AS arch/arm/mach-sunxi/pm/standby.o AS arch/arm/mach-sunxi/pm/mem.o LD arch/arm/mach-sunxi/pm/pm_tmp.o LD arch/arm/mach-sunxi/pm/built-in.o LD arch/arm/mach-sunxi/built-in.o make[3]: *** [drivers/net/wireless/bcmdhd] 错误 2 make[2]: *** [drivers/net/wireless] 错误 2 make[1]: *** [drivers/net] 错误 2 make: *** [drivers] 错误 2 ERROR: build kernel Failed rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ 21、(dhdsdio_probe_attach: unsupported chip: 0xa9a6) R:\wyb\ap6212a0_a33_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 可以编译通过了。 (查看属性:) shell@astar-y3:/ $ shell@astar-y3:/ $ cd /system/vendor/modules/ shell@astar-y3:/system/vendor/modules $ ll bcm* -rw-r--r-- root root 26020 2017-06-26 12:46 bcm43438a0.hcd -rw-r--r-- root root 748856 2017-06-26 12:46 bcmdhd.ko shell@astar-y3:/system/vendor/modules $ Microsoft Windows [版本 6.1.7600] 版权所有 (c) 2009 Microsoft Corporation。保留所有权利。 C:\Users\Administrator>cd R:\wyb\ap6212a0_a33_sc3817r\lichee\linux-3.4\drivers\n et\wireless\bcmdhd C:\Users\Administrator>r: R:\wyb\ap6212a0_a33_sc3817r\lichee\linux-3.4\drivers\net\wireless\bcmdhd>adb remount * daemon not running. starting it now on port 5037 * * daemon started successfully * remount succeeded R:\wyb\ap6212a0_a33_sc3817r\lichee\linux-3.4\drivers\net\wireless\bcmdhd> R:\wyb\ap6212a0_a33_sc3817r\lichee\linux-3.4\drivers\net\wireless\bcmdhd>adb push bcmdhd.ko /system/vendor/modules/ 1677 KB/s (748864 bytes in 0.436s) R:\wyb\ap6212a0_a33_sc3817r\lichee\linux-3.4\drivers\net\wireless\bcmdhd> 继续查看属性: shell@astar-y3:/system/vendor/modules $ ll bcm* -rw-r--r-- root root 26020 2017-06-26 12:46 bcm43438a0.hcd -rw-rw-rw- root root 748864 2017-06-26 14:34 bcmdhd.ko shell@astar-y3:/system/vendor/modules $ shell@astar-y3:/system/vendor/modules $ shell@astar-y3:/system/vendor/modules $ chmod 644 bcmdhd.ko Unable to chmod bcmdhd.ko: Operation not permitted 10|shell@astar-y3:/system/vendor/modules $ (必须在su下才能够修改属性:) shell@astar-y3:/system/vendor/modules $ su shell@astar-y3:/system/vendor/modules # chmod 644 bcmdhd.ko shell@astar-y3:/system/vendor/modules # shell@astar-y3:/system/vendor/modules # sync shell@astar-y3:/system/vendor/modules # reboot 22、 [ 0.658241] [wifi]: select wifi: ap6210 !! [ 0.658587] [ap6xxx]: module power name axp22_dldo1 [ 0.658601] [ap6xxx]: module power ext1 name axp22_dldo2 [ 0.658613] [ap6xxx]: module power ext2 name axp22_aldo1 [ 0.658721] [ap6xxx]: get ap6xxx wifi_power_switch failed [ 0.658731] [ap6xxx]: ap6xxx module power set by axp. [ 0.658930] [ap6xxx]: first time [ 0.659285] [ap6xxx]: regulator on. [ 0.661306] [wifi_pm]: wifi gpio init is OK !! (重启之后,WIFI模块要想办法配置为ap6212,现阶段借用的是AP6210!) [ 8.517657] gpio ap6xxx_wl_regon set val 1, act val 1 [ 8.623325] [ap6xxx]: sdio wifi power state: on [ 8.628389] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 8.628566] =========== WLAN placed in POWER ON ======== [ 8.645459] [mmc]: sdc1 card_power_on start... [ 8.650397] [mmc]: sdc1 power_supply is null [ 8.655129] [mmc]: sdc1 card_power_on ok [ 8.680031] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 8.690267] [mmc]: mclk 0xf1c2008c 0x8002000e [ 8.772360] [mmc]: *** sunxi_mci_dump_errinfo(L773): smc 1 err, cmd 52, RTO !! [ 8.781316] [mmc]: *** sunxi_mci_dump_errinfo(L773): smc 1 err, cmd 52, RTO !! [ 8.789448] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 8.799684] [mmc]: mclk 0xf1c2008c 0x8002000e [ 8.861971] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 8.872189] [mmc]: mclk 0xf1c2008c 0x8002000e [ 8.933887] [mmc]: *** sunxi_mci_dump_errinfo(L773): smc 1 err, cmd 8, RTO !! [ 8.941921] *******************Try sdio******************* [ 8.948329] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 8.958545] [mmc]: mclk 0xf1c2008c 0x8002000e [ 9.027690] mmc1: queuing unknown CIS tuple 0x80 (2 bytes) [ 9.035325] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 9.043192] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 9.052046] mmc1: queuing unknown CIS tuple 0x80 (7 bytes) [ 9.145358] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing SD-HS(SDR25) dt B [ 9.155486] [mmc]: mclk 0xf1c2008c 0x8002000e [ 9.215398] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 1 timing SD-HS(SDR25) dt B [ 9.225785] [mmc]: mclk 0xf1c2008c 0x8100000b [ 9.285721] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 9.296049] [mmc]: mclk 0xf1c2008c 0x8140030b [ 9.357922] mmc1: new high speed SDIO card at address 0001 [ 9.364523] bcmsdh_register: Linux Kernel SDIO/MMC Driver [ 9.364563] *******************sdio init ok******************* [ 9.377203] bcm_wlan_get_oob_irq enter. [ 9.381534] gpio [359] map to virq [7] ok [ 9.388816] F1 signature OK, socitype:0x1 chip:0xa9a6 rev:0x0 pkg:0x4 [ 9.396740] DHD: dongle ram size is set to 524288(orig 524288) at 0x0 [ 9.404660] dhdsdio_probe: Disable prop_txstatus [ 9.410903] wl_create_event_handler(): thread:wl_event_handler:5d started [ 9.410914] tsk Enter, tsk = 0xddca13d8 [ 9.423788] p2p0: P2P Interface Registered [ 9.428464] dhd_attach(): thread:dhd_watchdog_thread:5e started [ 9.435144] dhd_attach(): thread:dhd_dpc:5f started [ 9.440653] dhd_attach(): thread:dhd_sysioc:60 started [ 9.447276] Broadcom Dongle Host Driver: register interface [wlan0] MAC: 00:90:4c:11:22:33 [ 9.456558] [ 9.456561] Dongle Host Driver, version 1.88.45.3 (r420671) [ 9.456565] Compiled in drivers/net/wireless/bcmdhd on Jun 26 2017 at 14:34:04 [ 9.472427] gpio ap6xxx_wl_regon set val 0, act val 0 [ 9.578054] [ap6xxx]: sdio wifi power state: off [ 9.583186] =========== WLAN placed in RESET ======== (WIFI启动加载正常) shell@astar-y3:/ $ lsmod gt82x 9849 0 - Live 0x00000000 sunxi_schw 12559 0 - Live 0x00000000 (O) cdc_ether 5099 0 - Live 0x00000000 rtl8150 9023 0 - Live 0x00000000 mcs7830 6292 0 - Live 0x00000000 qf9700 7805 0 - Live 0x00000000 asix 17150 0 - Live 0x00000000 usbnet 17700 4 cdc_ether,mcs7830,qf9700,asix, Live 0x00000000 sunxi_keyboard 3021 0 - Live 0x00000000 sw_device 13604 0 - Live 0x00000000 vfe_v4l2 445364 0 - Live 0x00000000 gc2035 12696 0 - Live 0x00000000 gc0308 10702 0 - Live 0x00000000 vfe_subdev 4523 3 vfe_v4l2,gc2035,gc0308, Live 0x00000000 vfe_os 4099 2 vfe_v4l2,vfe_subdev, Live 0x00000000 cci 21594 2 gc2035,gc0308, Live 0x00000000 videobuf_dma_contig 5535 1 vfe_v4l2, Live 0x00000000 videobuf_core 16520 2 vfe_v4l2,videobuf_dma_contig, Live 0x00000000 bcmdhd 556965 0 - Live 0x00000000 leds_sunxi 1351 0 - Live 0x00000000 mali 209914 20 - Live 0x00000000 (O) lcd 38180 0 - Live 0x00000000 disp 993096 8 mali,lcd, Live 0x00000000 nand 280622 0 - Live 0x00000000 (O) shell@astar-y3:/ $ (bcmdhd.ko这个驱动模块加载正常:) (BT没有打开,但是不停地打印BT超时出错,不知道是何解?) shell@astar-y3:/ $ [ 511.880344] [BT_LPM] bluesleep_tx_timer_expire: Tx timer expired [ 511.887326] [BT_LPM] bluesleep_tx_timer_expire: Tx has been idle 23、 由于此时WIFI出于记住上一次的状态的状态(打不开),所以需要重新刷镜像IMG,然后替换:bcmdhd.ko shell@astar-y3:/ $ shell@astar-y3:/ $ lsmod gt82x 9849 0 - Live 0x00000000 sunxi_schw 12559 0 - Live 0x00000000 (O) cdc_ether 5099 0 - Live 0x00000000 rtl8150 9023 0 - Live 0x00000000 mcs7830 6292 0 - Live 0x00000000 qf9700 7805 0 - Live 0x00000000 asix 17150 0 - Live 0x00000000 usbnet 17700 4 cdc_ether,mcs7830,qf9700,asix, Live 0x00000000 sunxi_keyboard 3021 0 - Live 0x00000000 sw_device 13604 0 - Live 0x00000000 vfe_v4l2 445364 0 - Live 0x00000000 gc2035 12696 0 - Live 0x00000000 gc0308 10702 0 - Live 0x00000000 vfe_subdev 4523 3 vfe_v4l2,gc2035,gc0308, Live 0x00000000 vfe_os 4099 2 vfe_v4l2,vfe_subdev, Live 0x00000000 cci 21594 2 gc2035,gc0308, Live 0x00000000 videobuf_dma_contig 5535 1 vfe_v4l2, Live 0x00000000 videobuf_core 16520 2 vfe_v4l2,videobuf_dma_contig, Live 0x00000000 bcmdhd 556965 0 - Live 0x00000000 leds_sunxi 1351 0 - Live 0x00000000 mali 209914 15 - Live 0x00000000 (O) lcd 38180 0 - Live 0x00000000 disp 993096 8 mali,lcd, Live 0x00000000 nand 280622 0 - Live 0x00000000 (O) shell@astar-y3:/ $ shell@astar-y3:/ $ shell@astar-y3:/ $ [ 110.012176] init: computing context for service '/system/bin/wpa_supplicant' [ 110.025400] init: starting 'p2p_supplicant' [ 110.039886] init: Created socket '/dev/socket/wpa_wlan0' with mode '660', user '1010', group '1010' [ 110.119751] dhd_conf_set_fw_name_by_chip: firmware_path=/system/vendor/modules/fw_bcm43438a0.bin [ 110.140144] [ 110.140153] Dongle Host Driver, version 1.88.45.3 (r420671) [ 110.140158] Compiled in drivers/net/wireless/bcmdhd on Jun 26 2017 at 14:34:04 [ 110.173523] wl_android_wifi_on in 1 [ 110.177409] wl_android_wifi_on in 2: g_wifi_on=0 [ 110.200103] gpio ap6xxx_wl_regon set val 1, act val 1 [ 110.280025] [BT_LPM] bluesleep_tx_timer_expire: Tx timer expired [ 110.286694] [BT_LPM] bluesleep_tx_timer_expire: Tx has been idle [ 110.355684] [ap6xxx]: sdio wifi power state: on [ 110.360930] =========== WLAN going back to live ======== [ 110.366925] sdio_reset_comm(): [ 110.370346] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 110.380773] [mmc]: mclk 0xf1c2008c 0x8140030b [ 110.443029] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 110.454758] [mmc]: mclk 0xf1c2008c 0x8140030b [ 110.516097] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 110.530958] [mmc]: mclk 0xf1c2008c 0x80430309 [ 110.592013] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 110.603518] [mmc]: mclk 0xf1c2008c 0x80030009 [ 110.681418] mmc1: queuing unknown CIS tuple 0x80 (2 bytes) [ 110.690726] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 110.700331] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 110.712218] mmc1: queuing unknown CIS tuple 0x80 (7 bytes) [ 110.894520] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 110.904933] [mmc]: mclk 0xf1c2008c 0x80030009 [ 110.964907] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 110.975514] [mmc]: mclk 0xf1c2008c 0x8100000b [ 111.035618] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 111.046398] [mmc]: mclk 0xf1c2008c 0x8140030b [ 111.108547] [ 111.108566] [ 111.108579] dhd_bus_devreset: == WLAN ON == [ 111.116882] dhd_bus_devreset called when dongle is not in reset [ 111.123683] Will call dhd_bus_start instead [ 111.128637] dhd_conf_set_fw_name_by_chip: firmware_path=/system/vendor/modules/fw_bcm43438a0.bin [ 111.140963] dhd_conf_download_config: Ignore config file /system/vendor/modules/config.txt [ 111.151802] Final fw_path=/system/vendor/modules/fw_bcm43438a0.bin [ 111.158689] Final nv_path=/system/vendor/modules/nvram_ap6210.txt [ 111.165542] Final conf_path=/system/vendor/modules/config.txt [ 111.257577] dhdsdio_download_nvram: Open nvram file failed /system/vendor/modules/nvram_ap6210.txt [ 111.268309] _dhdsdio_download_firmware: dongle nvram file download failed [ 111.276022] dhd_bus_start: dhdsdio_probe_download failed. firmware = /system/vendor/modules/fw_bcm43438a0.bin nvram = /system/vendor/modules/nvram_ap6210.txt config = /system/vendor/modules/config.txt [ 111.295979] dhd_bus_devreset: dhd_bus_start fail with -1 [ 111.304154] dhd_dev_reset: dhd_bus_devreset: -1 [ 111.309190] dhd_prot_ioctl : bus is down. we have nothing to do [ 111.330328] dhd_bus_devreset: WLAN OFF DONE [ 111.335225] gpio ap6xxx_wl_regon set val 0, act val 0 [ 111.472499] [ap6xxx]: sdio wifi power state: off [ 111.477661] =========== WLAN placed in RESET ======== [ 111.483304] wl_android_wifi_on: Failed [ 111.487473] wl_android_wifi_off in 1 [ 111.491478] wl_android_wifi_off in 2: g_wifi_on=0 [ 111.496711] wl_android_wifi_off out [ 111.509335] init: waitpid returned pid 1211, status = 0000ff00 [ 111.516072] init: process 'p2p_supplicant', pid 1211 exited shell@astar-y3:/ $ shell@astar-y3:/ $ 24、定位问题:dhd_bus_devreset: dhd_bus_start fail with -1 rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ cd linux-3.4/drivers/net/wireless/bcmdhd/ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ grep "dhd_bus_start fail with" . -R ./dhd_sdio.c: DHD_ERROR(("%s: dhd_bus_start fail with %d\n", 匹配到二进制文件 ./dhd_sdio.o 匹配到二进制文件 ./bcmdhd.o 匹配到二进制文件 ./bcmdhd.ko rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ cd linux-3.4/drivers/net/wireless/bcmdhd/ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ grep "dhd_bus_start fail with" . -R ./dhd_sdio.c: DHD_ERROR(("%s: dhd_bus_start fail with %d\n", 匹配到二进制文件 ./dhd_sdio.o 匹配到二进制文件 ./bcmdhd.o 匹配到二进制文件 ./bcmdhd.ko rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ int dhd_bus_devreset(dhd_pub_t *dhdp, uint8 flag) { …… dhd_conf_set_fw_name_by_chip(dhdp, fw_path, firmware_path); if ((bcmerror = dhd_bus_start(dhdp)) != 0) DHD_ERROR(("%s: dhd_bus_start fail with %d\n", __FUNCTION__, bcmerror)); } } return bcmerror; } rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ grep dhd_bus_start . -R ./dhd_sdio.c: if ((ret = dhd_bus_start(bus->dhd)) != 0) { ./dhd_sdio.c: DHD_ERROR(("%s: dhd_bus_start failed\n", __FUNCTION__)); ./dhd_sdio.c: DHD_ERROR(("Will call dhd_bus_start instead\n")); ./dhd_sdio.c: if ((bcmerror = dhd_bus_start(dhdp)) != 0) ./dhd_sdio.c: DHD_ERROR(("%s: dhd_bus_start fail with %d\n", ./dhd_sdio - 副本.c: if ((ret = dhd_bus_start(bus->dhd)) != 0) { ./dhd_sdio - 副本.c: DHD_ERROR(("%s: dhd_bus_start failed\n", __FUNCTION__)); ./dhd_sdio - 副本.c: DHD_ERROR(("Will call dhd_bus_start instead\n")); ./dhd_sdio - 副本.c: if ((bcmerror = dhd_bus_start(dhdp)) != 0) ./dhd_sdio - 副本.c: DHD_ERROR(("%s: dhd_bus_start fail with %d\n", ./dhd_sdio - 副本 (2).c: if ((ret = dhd_bus_start(bus->dhd)) != 0) { ./dhd_sdio - 副本 (2).c: DHD_ERROR(("%s: dhd_bus_start failed\n", __FUNCTION__)); ./dhd_sdio - 副本 (2).c: DHD_ERROR(("Will call dhd_bus_start instead\n")); ./dhd_sdio - 副本 (2).c: if ((bcmerror = dhd_bus_start(dhdp)) != 0) ./dhd_sdio - 副本 (2).c: DHD_ERROR(("%s: dhd_bus_start fail with %d\n", ./dhd.h:extern int dhd_bus_start(dhd_pub_t *dhdp); ./wl_android.c:/* Initialize g_wifi_on to 1 so dhd_bus_start will be called for the first ./dhd_linux.c: if ((ret = dhd_bus_start(&dhd->pub)) != 0) { ./dhd_linux.c: /* dhd_prot_init has been called in dhd_bus_start or wl_android_wifi_on */ ./dhd_linux.c:dhd_bus_start(dhd_pub_t *dhdp) rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ 定位到这里: int dhd_bus_start(dhd_pub_t *dhdp) { …… /* 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; } } …… return 0; } 由于ap6212没有config.txt文件,下载肯定会出错,比对全志R16平台去AP6212的处理,关闭这里: //return -1; 25、 shell@astar-y3:/ $ shell@astar-y3:/ $ [ 110.012176] init: computing context for service '/system/bin/wpa_supplicant' [ 110.025400] init: starting 'p2p_supplicant' [ 110.039886] init: Created socket '/dev/socket/wpa_wlan0' with mode '660', user '1010', group '1010' [ 110.119751] dhd_conf_set_fw_name_by_chip: firmware_path=/system/vendor/modules/fw_bcm43438a0.bin [ 110.140144] [ 110.140153] Dongle Host Driver, version 1.88.45.3 (r420671) [ 110.140158] Compiled in drivers/net/wireless/bcmdhd on Jun 26 2017 at 14:34:04 [ 110.173523] wl_android_wifi_on in 1 [ 110.177409] wl_android_wifi_on in 2: g_wifi_on=0 [ 110.200103] gpio ap6xxx_wl_regon set val 1, act val 1 [ 110.280025] [BT_LPM] bluesleep_tx_timer_expire: Tx timer expired [ 110.286694] [BT_LPM] bluesleep_tx_timer_expire: Tx has been idle [ 110.355684] [ap6xxx]: sdio wifi power state: on [ 110.3
Bochs - The cross platform IA-32 (x86) emulator
Changes in 2.4.6 (February 22, 2011): Brief summary : - Support more host OS to run on: - Include win64 native binary in the release. - Fixed failures on big endian hosts. - BIOS: Support for up to 2M ROM BIOS images. - GUI: select mouse capture toggle method in .bochsrc. - Ported most of Qemu's 'virtual VFAT' block driver (except runtime write support, but plus FAT32 suppport) - Added write protect option for floppy drives. - Bugfixes / improved internal debugger + instrumentation. Detailed change log : - CPU and internal debugger - Implemented Process Context ID (PCID) feature - Implemented FS/GS BASE access instructions support (according to document from http://software.intel.com/en-us/avx/) - Rewritten from scratch SMC detection algorithm - Implemented fine-grained SMC detection (on 128 byte granularity) - Bugfixes for CPU emulation correctness and stability - Fixed failures on Big Endian hosts ! - Print detailed page walk information and attributes in internal debugger 'page' command - Updated/Fixed instrumentation callbacks - Configure and compile - Bochs now can be compiled as native Windows x86-64 application (tested with Mingw gcc 4.5.1 and Microsoft Visual Studio Express 2010) - Added ability to configure CPUID stepping through .bochsrc. The default stepping value is 3. - Added ability to disable MONITOR/MWAIT support through .bochsrc CPUID option. The option is available only if compiled with --enable-monitor-mwait configure option. - Determine and select max physical address size automatically at configure time: - 32-bit physical address for 386/486 guests - 36-bit physical address for PSE-36 enabled Pentium guest - 40-bit physical address for PAE enabled P6 or later guests - Update config.guess/config.sub scripts to May 2010 revisions. - Update Visual Studio 2008 project files in build/win32/vs2008ex-workspace.zip - Added Bochs compilation timestamp after Bochs version string. - GUI and display libraries (Volker) - Added new .bochsrc option to select mouse capture toggle method. In addition to the default Bochs method using the CTRL key and the middle mouse button there are now the choices: - CTRL+F10 (like DOSBox) - CTRL+ALT (like QEMU) - F12 (replaces win32 'legacyF12' option) - display library 'x' now uses the desktop size for the maximum guest resolution - ROM BIOS - Support for up to 2M ROM BIOS images - I/O Devices - 3 new 'pseudo device' plugins created by plugin separation (see below) - Fixes for emulated DHCP in eth_vnet (patch from @SF tracker) - Added support for VGA graphics mode with 400 lines (partial fix for SF bug #2948724) - NE2K: Fixed "send buffer" command issue on big endian hosts - USB - converted common USB code plus devices to the new 'usb_common' plugin Now the USB device classes no longer exist twice if both HC plugins are loaded. - added 'pseudo device' in common USB code for the device creation. This makes the HCs independent from the device specific code. - USB MSD: added support for disk image modes (like ATA disks) - USB printer: output file creation failure now causes a disconnect - re-implemented "options" parameter for additional options of connected devices (currently only used to set the speed reported by device and to specify an alternative redolog file of USB MSD disk image modes) - hard drive - new disk image mode 'vvfat' - ported the read-only part of Qemu's 'virtual VFAT' block driver - additions: configurable disk geometry, FAT32 support, read MBR and/or boot sector from file, volatile write support using hdimage redolog_t class, optional commit support on Bochs exit, save/restore file attributes, 1.44 MB floppy support, set file modification date/time - converted the complete hdimage stuff to the new 'hdimage' plugin - new hdimage method get_capabilities() that can return special flags - vmware3, vmware4 and vvfat classes now return HDIMAGE_HAS_GEOMETRY flag - other disk image modes by default return HDIMAGE_AUTO_GEOMETRY if cylinder value is set to 0 - multiple sector read/write support for some image modes - new log prefix "IMG" for hdimage messages - floppy - added write protect option for floppy drives (based on @SF patch by Ben Lunt) - vvfat support - bugfix: close images on exit - SB16 - converted the sound output module stuff to the new 'soundmod' plugin - SF patches applied [3164945] hack to compile under WIN64 by Darek Mihocka and Stanislav [3164073] Fine grain SMC invalidation by Stanislav [1539417] write protect for floppy drives by Ben Lunt [2862322] fixes for emulated DHCP in eth_vnet - these S.F. bugs were closed/fixed [2588085] Mouse capture [3140332] typo in mf3/ps2 mapping of BX_KEY_CTRL_R [3111577] No "back" option in log settings [3108422] Timing window in NE2K emulation [3084390] Bochs won't load floppy plugin right on startup [3043174] Docbook use of '_' build failure [3085140] Ia_arpl_Ew_Rw definition of error [3078995] ROL/ROR/SHL/SHR modeling wrong when dest reg is 32 bit [2864794] BX_INSTR_OPCODE in "cpu_loop" causes crash in x86_64 host [2884071] [AIX host] prefetch: EIP [00010000] > CS.limit [0000ffff] [3053542] 64 bit mode: far-jmp instruction is error [3011112] error compile vs2008/2010 with X2APIC [3002017] compile error with vs 2010 [3009767] guest RFLAGS.IF blocks externel interrupt in VMX guest mode [2964655] VMX not enabled in MSR IA32_FEATURE_CONTROL [3005865] IDT show bug [3001637] CMOS MAP register meaning error [2994370] Cannot build with 3DNow support - these S.F. feature requests were closed/implemented [1510142] Native Windows XP x64 Edition binary [1062553] select mouse (de)activation in bochsrc [2930633] legacy mouse capture key : not specific enough [2930679] Let user change mouse capture control key [2803538] Show flags for pages when using "info tab" ------------------------------------------------------------------------- Changes in 2.4.5 (April 25, 2010): Brief summary : - Major configure/cpu rework allowing to enable/disable CPU options at runtime through .bochsrc (Stanislav) - Bugfixes for CPU emulation correctness and stability - Implemented X2APIC extensions (Stanislav) - Implemented Intel VMXx2 extensions (Stanislav) - Extended VMX capability MSRs, APIC Virtualization, X2APIC Virtualization, Extended Page Tables (EPT), VPID, Unrestricted Guests, new VMX controls. - Implemented PCLMULQDQ AES instruction - Extended Bochs internal debugger functionality - USB HP DeskJet 920C printer device emulation (Ben Lunt) Detailed change log : - Configure rework - Deprecate --enable-popcnt configure option. POPCNT instruction will be enabled automatically iff SSE4_2 is supported (like in hardware). - Make --ignore-bad-msrs runtime option in .bochsrc. Old --ignore-bad-msrs configure option is deprecated and should not be used anymore. - Enable changing part of CPU functionality at runtime through .bochsrc. - Now you could enable/disable any of SSEx/AES/MOVBE/SYSENTER_SYSEXIT/XSAVE instruction sets using new CPUID option in .bochsrc. - When x86-64 support is compiled in, you could enable/disable long mode 1G pages support without recompile using new CPUID option in .bochsrc. Configure options: --enable-mmx, --enable-sse, --enable-movbe, --enable-xsave, --enable-sep, --enable-aes, --enable-1g-pages are deprecated and should not be used anymore. - Local APIC configure option --enable-apic is deprecated and should not be used anymore. The LAPIC option now automatically determined from other configure options. XAPIC functionality could be enabled using new CPUID .bochsrc option. - Changed default CPU configuration (generated by configure script with default options) to BX_CPU_LEVEL=6 with SSE2 enabled. - CPU - Implemented PCLMULQDQ AES instruction - Implemented X2APIC extensions / enable extended topology CPUID leaf (0xb), in order to enable X2APIC configure with --enable-x2apic - Implemented Intel VMXx2 extensions: - Enabled extended VMX capability MSRs - Implemented VMX controls for loading/storing of MSR_PAT and MSR_EFER - Enabled/Implemented secondary proc-based vmexec controls: - Implemented APIC virtualization - Implemented Extended Page Tables (EPT) mode - Implemented Descriptor Table Access VMEXIT control - Implemented RDTSCP VMEXIT control - Implemented Virtualize X2APIC mode control - Implemented Virtual Process ID (VPID) - Implemented WBINVD VMEXIT control - Implemented Unrestricted Guest mode In order to enable emulation of VMXx2 extensions configure with --enable-vmx=2 option (x86-64 must be enabled) - Bugfixes for CPU emulation correctness - Fixed Bochs crash when accessing the first byte above emulated memory size - Internal Debugger - Introduced range read/write physical watchpoints - Allow reloading of segment registers from internal debugger - Improved verbose physical memory access tracing - BIOS - Fix MTRR configuration (prevented boot of modern Linux kernels) - Fix interrupt vectors for INT 60h-66h (reserved for user interrupt) by setting them to zero - Fix BIOS INT13 function 08 when the number of cylinders on the disk = 1 - I/O Devices - USB HP DeskJet 920C printer device emulation (Ben Lunt) - Misc - Updated Bochs TESTFORM to version 0.5 - SF patches applied [2864402] outstanding x2apic patches by Stanislav [2960379] Fix build with -Wformat -Werror=format-security by Per Oyvind Karlsen [2938273] allow instrumentation to change execute by Konrad Grochowski [2926072] Indirection operators in expressions by Derek Peschel [2914433] makesym.perl misses symbols by John R. Jackson [2908481] USB Printer by Ben Lunt - these S.F. bugs were closed/fixed [2861662] dbg_xlate_linear2phy needs to be updated [2956217] INT13 AH=8 returns wrong values when cylinders=1 [2981161] Allow DMA transfers to continue when CPU is in HALT state [2795115] NX fault could be missed [2964824] bad newline sequence in aspi-win32.h [913419] configure options and build process needs some work [2938398] gdbstub compile error with x86_64 enabled [2734455] shutdown/reset type 05 should reinit the PICs [1921294] extended memory less than 1M wrong size [1947249] BX_USE_EBDA_TABLES and MP table placement [1933859] BX_USE_EBDA_TABLES and memory overlapping [2923680] "help dregs" is a syntax error [2919661] CPU may fail to do 16bit near call [2790768] Memory corruption with SMP > 32, Panic BIOS Keyboard Error [2902118] interrupts vectors 0x60 to 67 should be NULL ! [2912502] Instruction Pointer behaving erratically [2901047] Bochs crashed, closed by guest os [2905385] Bochs crash [2901481] Instruction SYSRET and SS(PL) [2900632] Broken long mode RETF to outer priviledge with null SS [1429011] Use bx_phyaddr_t for physaddr vars and bx_adress for lin adr - these S.F. feature requests were closed/implemented [2955911] RPM preuninstall scriptlet removes /core [2947863] don't abort on unrecognised options [2878861] numerics in the disassembler output [2900619] make more CPU state changeable ------------------------------------------------------------------------- Changes in 2.4.2 (November 12, 2009): - CPU and internal debugger - VMX: Implemented TPR shadow VMEXIT - Bugfixes for CPU emulation correctness (mostly for VMX support). - Bugfixes and updates for Bochs internal debugger - On SMP system stepN command now affects only current processor - Memory - Bugfixes for > 32-bit physical address space. - Allow to emulate more physical memory than host actually could or would like to allocate. For more details look for new .bochsrc 'memory' option. - Cleanup configure options - All paging related options now will be automatically determined according to --enable-cpu-level option. Related configure options --enable-global-pages, --enable-large-pages, --enable-pae, --enable-mtrr are deprecated now. Only 1G paging option still remaining unchanged. - Deprecate --enable-daz configure option. Denormals-are-zeros MXCSR control will be enabled automatically iff SSE2 is supported (like in hardware). - Deprecate --enable-vme configure option, now it will be supported iff CPU_LEVEL >= 5 (like in hardware). - I/O Devices - Bugfixes for 8254 PIT, VGA, Cirrus-Logic SVGA, USB UCHI - SF patches applied [2817840] Make old_callback static by Mark Marshall [2874004] fix for VMWRITE instruction by Roberto Paleari [2873999] fix CS segment type during fast syscall invocation by Roberto Paleari [2864389] Debugger gui maximize on startup by Thomas Nilsen [2817868] Rework loops in the memory code by Mark Marshall [2812948] PIT bug by Derek - these S.F. bugs were closed/fixed [2833504] GUI debugger bug-about GDT display [2872244] BIOS writes not allowed value to MTRR MSR causing #GP [2885383] SDL GUI memory leak [2872290] compilation in AIX5.3 ML10 failes [2867904] crash with cirrus bx_vga_c::mem_write [2851495] BIOS PCI returns with INT flag = 0 [2860333] vista 64 guest STOP 109 (GDT modification) [2849745] disassembler bug for 3DNow and SSE opcodes [1066748] Wrong registers values after #RESET, #INIT [2836893] Regression: Windows XP installer unable to format harddrive [2812239] VMX: VM-Exit: Incorrect instruction length on software int [2814130] bx_debug lex/yacc files incorrectly generated [2813199] MP Tables Missing From BIOS [2824093] VMX exception bug [2811909] VMX : CS Access-rights Type.Accessed stays 0 [2810571] Compile Errors on OSX [2823749] GCC regression or VM_EXIT RDMSR/WRMSR bug [2815929] Vista/XP64 unnecessary panic [2803519] Wrong example in man page bochsrc - these S.F. feature requests were closed/implemented [422766] Large Memory configurations [1311287] Idea for a better GUI [455971] USB support [615363] debugger shortcut for repeat last cmd ------------------------------------------------------------------------- Changes in 2.4.1 (June 7, 2009): - Fixed bunch of CPUID issues - Bochs is now able to install and boot 64-bit Windows images! (special thanks to Mark Ebersole for his patch) - Several bugfixes in CPU emulation (mostly for x87 instructions) - Fixed two critical deadlock bugs in the Win32 gui (patches from @SF tracker) - Fixes related to the 'show ips' feature - removed conflicting win32-specific alarm() functions ('win32' and 'sdl' gui) - feature now works in wx on win32 - Added support for gdb stub on big endian machine (patch by Godmar Back) - Rewritten obsolete hash_map code in dbg symbols module (patch from @SF) - BIOS: implemented missing INT 15h/89h (patch by Sebastian Herbszt) ------------------------------------------------------------------------- Changes in 2.4 (May 3, 2009): Brief summary : - Added graphical Bochs debugger frontend for most of the supported platforms. - Thanks for Chourdakis Michael and Bruce Ewing. - Many new CPU features in emulation - Support for > 32 bit physical address space and configurable MSRs - VMX, 1G pages in long mode, MOVBE instruction - Bugfixes for CPU emulation correctness, debugger and CPU instrumentation. - New config interface 'win32config' with start and runtime menu - USB: added OHCI support, external hub and cdrom - Added user plugin interface support. Detailed change log : - CPU and internal debugger - Support for VMX hardware emulation in Bochs CPU, to enable configure with --enable-vmx option Nearly complete VMX implementation, with few exceptions: - Dual-monitor treatment of SMIs and SMM not implemented yet - NMI virtualization, APIC virtualization not implemented yet - VMENTER to not-active state not supported yet - No advanced features like Extended Page Tables or VPID - Support for configurable MSR registers emulation, to enable configure with --enable-configurable-msrs option Look for configuration example in .bochsrc and msrs.def - Support new Intel Atom(R) MOVBE instruction, to enable configure with --enable-movbe option - Support for 1G pages in long mode, to enable configure with --enable-1g-pages option - Support for > 32 bit physical address space in CPU. Up to 36 bit could be seen in legacy mode (PAE) and up to 40 bit in x86-64 mode. Still support the same amount of the physical memory in the memory object, so system with > 4Gb of RAM yet cannot be emulated. To enable configure with --enable-long-phy-address option. - Implemented modern BIOSes mode limiting max reported CPUID function to 3 using .bochsrc CPU option. The mode is required in order to correctly install and boot WinNT. - Added ability to configure CPUID vendor/brand strings through .bochsrc (patch from @SF by Doug Reed). - Many bugfixes for CPU emulation correctness (both x86 and x86-64). - Updated CPU instrumentation callbacks. - Fixed Bochs internal debugger breakpoints/watchpoints handling. - Configure and compile - Added ability to choose Bochs log file name and Bochs debugger log file name from Bochs command line (using new -log and -dbglog options) - Removed Peter Tattam's closed source external debugger interface from the code. - Removed --enable-guest2host-tlb configure option. The option is always enabled for any Bochs configuration. - Removed --enable-icache configure option. The option is always enabled for any Bochs configuration. Trace cache support still remains optional and could be configured off. - Added configure option to compile in GUI frontend for Bochs debugger, to enable configure with --enable-debugger-gui option. The GUI debugger frontend is enabled by default with Bochs debugger. - Removed --enable-port-e9-hack configure option. The feature now could be configured at runtime through .bochsrc. - Added configure option to enable/disable A20 pin support. Disabling the A20 pin support slightly speeds up the emulation. - reduced dependencies between source files for faster code generation - BIOS - Added S3 (suspend to RAM) ACPI state to BIOS (patch by Gleb Natapov) - Implemented MTRR support in the bios (patches by Avi Kivity and Alex Williamsion with additions by Sebastian Herbszt) - Bug fixes - I/O Devices - Added user plugin support - remaining devices converted to plugins: pit, ioapic, iodebug - added 'plugin_ctrl' bochsrc option to control the presence of optional device plugins without a separate option. By default all plugins are enabled. - added register mechanism for removable mouse and keyboard devices - Hard drive / cdrom - PACKET-DMA feature now supported by all ATAPI commands - ATAPI command 0x1A added (based on the Qemu implementation) - sb16 - Added ALSA sound support on Linux (PCM/MIDI output) - FM synthesizer now usable with MIDI output (simple piano only) - Fixed OPL frequency to MIDI note translation - Fixed MIDI output command - keyboard - added keyboard controller commands 0xCA and 0xCB - USB - USB code reorganized to support more HC types and devices - added USB OHCI support written by Ben Lunt - added external USB hub support (initial code ported from Qemu) - added USB cdrom support (SCSI layer ported from Qemu) - added status bar indicators to show data transfer - VGA - VBE video memory increased to 16 MB - implemented changeable VBE LFB base address (PCI only, requires latest BIOS and VGABIOS images) - I/O APIC - implemented I/O APIC device hardware reset - Config interface - new config interface 'win32config' with start and runtime menu is now the default on Windows ('textconfig' is still available) - win32 device config dialogs are now created dynamicly from a parameter list (works like the wx ParamDialog) - changes in textcofig and the wx ParamDialog for compatibility with the new win32 dialog behaviour - Bochs param tree index keys are case independent now - some other additions / bugfixes in the simulator interface code - Misc - updated LGPL'd VGABIOS to version 0.6c - Updated Bochs TESTFORM to version 0.4 - SF patches applied [2784858] IO Handler names are not compared properly [2712569] Legacy bios serial data buffer timeout bug by grybranix [2655090] 64 bit BSWAP with REX.W broken by M. Eby [2645919] CR8 bug when reading by M. Eby [1895665] kvm: bios: add support to memory above the pci hole by Izik Eidus [2403372] rombios: check for valid cdrom before using it by Sebastian [2307269] acpi: handle S3 by Sebastian [2354134] TAP networking on Solaris/Sparc repaired [2144692] The scsi device can not complete its writing data command by naiyue [1827082] [PATCH] Configurable CPU vendor by Marcel Sondaar [2217229] Panic on EBDA overflow in rombios32 by Sebastian [2210194] Log pci class code by Sebastian [1984662] red led for disk write and titlebar mod by ggbsf [2142955] Fix for monitor/mwait by Doug Gibson [2137774] Patch to fix bug: cdrom: read_block: lseek returned error by Gabor Olah [2134642] Fix scan_to_scanascii table for F11 and F12 by Ben Guthro & Steve Ofsthun [2123036] sdl fullscreen fix by ggbsf [2073039] Remove CMOS accsess from AML code by Gleb Natapov [2072168] smbios: add L1-L3 cache handle to processor information by Sebastian [2055416] bochsrc cpu options for cpuid vendor and brand string by Doug Reed [2035278] rombios: Fix return from BEV via retf by Sebastian [2035260] rombios: El Torito load segment fix by Sebastian [2031978] Fix VMware backdoor command 0Ah by Jamie Lokier [2015277] Remove obsolete comment about DATA_SEG_DEFS_HERE hack by Sebastian [2011268] Set new default format and unit only if both are supported by Sebastian [2001919] gdbstub: fix qSupported reply by Sebastian [2001912] gdbstub: enclose packet data by apostrophes by Sebastian [1998071] fix missing SIGHUP and SIGQUIT with term ui on mingw by Sebastian [1998063] fix wrong colors with term ui by Sebastian [1995064] Compile fix needed for --enable-debugger and gcc 4.3 by Hans de Goede [1994564] Fix typo in RDMSR BX_MSR_MTRRFIX16K_A0000 by Sebastian [1994396] Change hard_drive_post #if by Sebastian [1993235] TESTFORM email address update by Sebastian [1992322] PATCH: fix compilation of bochs 2.3.7 on bigendian machines by Hans de Goede [1991280] Shutdown status code 0Ch handler by Sebastian [1990108] Shutdown status code 0Bh handler by Sebastian [1988907] Shutdown status code 0Ah handler by Sebastian [1984467] two typos in a release! (2.3.7) [1981505] Init PIIX4 PCI to ISA bridge and IDE by Sebastian - these S.F. bugs were closed/fixed [2784148] an integer overflow BUG of Bochs-2.3.7 source code [2695273] MSVC cpu.dsp failure in 2.3.7.zip [616114] Snapshot/Copy crash on Win2K [2628318] 'VGABIOS-latest' bug [1945055] can't 'make install' lastest bochs on loepard [2031993] Mac OS X Makefile bug [1843199] install error on mac osx [2710931] Problem compiling both instrumentation and debugger [2617003] ExceptionInfo conflicts with OS X api [2609432] stepping causes segfault (CVS) [2605861] compile error with --enable-smp [1757068] current cvs(Jul19, 07) failed to boot smp [2426271] cannot get correct symbol entry [2471982] VGA character height glitches [1659659] wrong behaviour a20 at boot [1998027] minwg + --with-term + --with-out-win32 = link failure [1871936] bochs-2.3.6 make fails on wx.cc [1684666] info idt for long mode [2105989] could not read() hard drive image file at byte 269824 [1173093] Debugger totally not supports x86-64 [1803018] new win32debug dialog problems [2141679] windows vcc build broken [2162824] latest cvs fails to compile [2164506] latest bochs fails to start [2129223] MOV reg16, SS not working in real mode due to dead code [2106514] RIS / startrom.com install ALMOST works [2123358] SMP (HTT): wbinvd executed by CPU1 crashes CPU0 [2002758] Arch Linux: >>PANIC<< ATAPI command with zero byte count [2026501] El Torito incorrect boot segment:offset [2029758] BEV can return via retf instead of int 18h [2010173] x command breaks after one error about x/s or x/i [1830665] harddrv PANIC: ATAPI command with zero byte count [1985387] fail to make using gcc4 with --enable-debugger [1990187] testform feedback [1992138] Misspell in cpu/ia_opcodes.h - these S.F. feature requests were closed/implemented [2175153] Update MSVC project files [658800] front end program and bios [1883370] Make cd and floppy images more usable [422783] change floppy size without restarting [2552685] param tree names should be case insensitive [1214659] PC Speaker emu turnoff. Plugin Controll. [1977045] support 40 bit physical address [1506385] Intel Core Duo VT features [1429015] Support for user plugins [1488136] debugger access to floppy controller [1363136] Full debugger SMP and 64 bit support [2068304] Support for ACPI [431032] debugger "x" command [423420] profiling ideas (SMF) [445342] Add FM support? [928439] alsa ------------------------------------------------------------------------- Changes in 2.3.7 (June 3, 2008): Brief summary : + More optimizations in CPU code - Bochs 2.3.7 is more than 2x faster than Bochs 2.3.5 build ! - Implemented LBA48 support in BIOS - Added memory access tracing for Bochs internal debugger - Implemented Intel(R) XSAVE/XRSTOR and AES instruction set extensions - Many fixes in CPU emulation and internal debugger - MenuetOS64 floppy images booting perfect again ! - updated LGPL'd VGABIOS to version 0.6b Detailed change log : - CPU - Support of XSAVE/XRSTOR CPU extensions, to enable configure with --enable-xsave option - Support of AES CPU extensions, to enable configure with --enable-aes option - Fixed Bochs failure on RISC host machines with BxRepeatSpeedups optimization enabled - Implemented SYSENTER/SYSEXIT instructions in long mode - More than 100 bugfixes for CPU emulation correctness (both x86 and x86-64) - MenuetOS64 floppy images booting perfect again ! - Updated CPU instrumentation callbacks - Bochs Internal Debugger and Disassembler - Added memory access tracing for Bochs internal debugger, enable by typing 'trace-mem on' in debugger command line - Many bug fixes in Bochs internal debugger and disassembler - System BIOS (Volker) - Implemented LBA48 support - Added generation of SSDT ACPI table that contains definitions for available processors - Added RTC device to ACPI DSDT table - Added implementation of SMBIOS - I/O devices (Volker) - VGA - Implemented screen disable bit in sequencer register #1 - Implemented text mode cursor blinking - Serial - new serial modes 'pipe-server' and 'pipe-client' for win32 - new serial mode 'socket-server' - Configure and compile - Fixed configure bug with enabling of POPCNT instruction, POPCNT instruction should be enabled by default when SSE4.2 is enabled. - Removed --enable-magic-breakpoint configure option. The option is automatically enabled if Bochs internal debugger is compiled in. It is still possible to turn on/off the feature through .bochsrc. - Allow boot from network option in .bochsrc - Added Bochs version info for Win32 - Display libraries - implemented text mode character blinking in some guis - improved 'X' gui runtime dialogs - SF patches applied [1980833] Fix shutdown status code 5h handler by Kevin O'Connor [1928848] "pipe" mode for serial port (win32 only) by Eugene Toder [1956843] Set the compatible pci interrupt router back to PIIX by Sebastian [1956366] Do not announce C2 & C3 cpu power state support by Igor Lvovsky [1921733] support for LBA48 by Robert Millan [1938185] Fix link problem with --enable-debugger by Sebastian [1938182] Makefile.in - use @IODEV_LIB_VAR@ by Sebastian [1928945] fix for legacy rombios - e820 map and ACPI_DATA_SIZE by Sebastian [1925578] rombios32.c - fix ram_size in ram_probe for low memory setup by Sebastian [1908921] rombios32.c - move uuid_probe() call by Sebastian [1928902] improvements to load-symbols by Eugene Toder [1925568] PATCH: msvc compilation by Eugene Toder [1913150] rombios.c - e820 cover full size if memory <= 16 mb by Alexander van Heukelum [1919804] rombios.c - fix and add #ifdef comments by Sebastian [1909782] rombios.c - remove segment values from comment by Sebastian [1908918] SMBIOS - BIOS characteristics fix by Sebastian [1901027] BIOS boot menu support (take 3) [1902579] rombios32.c - define pci ids by Sebastian [1859447] Pass segment:offset to put_str and introduce %S by Sebastian [1889057] rombios.c - boot failure message by Sebastian [1891469] rombios.c - print BEV product string by Sebastian [1889851] Win32 version information FILEVERSION for bochs.exe by Sebastian [1889042] rombios.c - fix comment by Sebastian [1881500] bochsrc, allow boot: network by Sebastian [1880755] Win32 version information for bochs.exe by Sebastian [1880471] SMBIOS fix type 0 by Sebastian [1878558] SMBIOS fixes by Sebastian [1864692] SMBIOS support by Filip Navara [1865105] Move bios_table_area_end to 0xcc00 by Sebastian [1875414] Makefile.in - change make use by Sebastian [1874276] Added instrumentation for sysenter/sysexit by Lluis [1873221] TLB page flush: add logical address to instrumentation by Lluis [1830626] lba32 support by Samuel Thibault [1861839] Move option rom scan after floppy and hard drive post by Sebastian [1838283] Early vga bios init by Sebastian [1838272] rom_scan range parameter by Sebastian [1864680] Save CPUID signature by Filip Navara - these S.F. bugs were closed [1976171] Keyboard missing break code for enter (0x9C) [666433] physical read/write breakpoint sometimes fails [1744820] info gdt and info idt shows the entire tables [1755652] graphics: MenuetOS64 shows black screen [1782207] Windows Installer malfunction, Host=Linux, Guest=Win98SE [1697762] OS/2 Warp Install Failed [1952548] String to char * warnings [1940714] SYSENTER/SYSEXIT doesn't work in long mode [1422342] SYSRET errors [1923803] legacy rombios - e820 map and ACPI_DATA_SIZE [1936132] Link problem with --enable-debugger & --enable-disasm [1934477] Linear address wrap is not working [1424984] virtual machine freezes in Bochs 2.2.6 [1902928] with debugger cpu_loop leaves CPU with unstable state [1898929] Bochs VESA BIOS violates specs (banks == 1) [1569256] bug in datasegment change in long mode [1830662] ACPI: no DMI BIOS year, acpi=force is required [1868806] VGA blink enable & screen disable [1875721] Bit "Accessed" in LDT/GDT descriptors & #PF [1874124] bx_Instruction_c::ilen() const [1873488] bochs-2.3.6 make fails on dbg_main.cc - these S.F. feature requests were implemented [1422769] SYSENTER/SYSEXIT support in x86-64 mode [1847955] Version information for bochs(dbg).exe [939797] SMBIOS support ------------------------------------------------------------------------- Changes in 2.3.6 (December 24, 2007): Brief summary : + More than 25% emulation speedup vs Bochs 2.3.5 release! - Thanks to Darek Mihocka (http://www.emulators.com) for providing patches and ideas that made the speedup possible! + Up to 40% speedup vs Bochs 2.3.5 release with trace cache optimization! - Lots of bugfixes in CPU emulation - Bochs benchmarking support - Added emulation of Intel SSE4.2 instruction set Detailed change log : - CPU - Added emulation of SSE4.2 instruction set, to enable use --enable-sse=4 --enable-sse-extension configure options to enable POPCNT instruction only use configure option --enable-popcnt - Implemented MTRR emulation, to enable use --enable-mtrr configure option. MTRRs is enabled by default when cpu-level >= 6. - Implemented experimental MONITOR/MWAIT support including optimized MWAIT CPU state and hardware monitoring of physical address range, to enable use --enable-monitor-mwait configure option. - Removed hostasm optimizations, after Bochs rebenchmarking it was found that the feature bringing no speedup or even sometimes slows down emulation! - Merged trace cache optimization patch, the trace cache optimization is enabled by default when configure with --enable-all-optimizations option, to disable trace cache optimization configure with --disable-trace-cache - Many minor bugfixes in CPU emulation (both ia32 and x86-64) - Updated CPU instrumentation callbacks - Bochs Internal Debugger and Disassembler - Many fixes in Bochs internal debugger and disassembler, some debugger interfaces significantly changed due transition to the param tree architecture - Added support for restoring of the CPU state from external file directly from Bochs debugger - Configure and compile - Renamed configure option --enable-4meg-pages to --enable-large-pages. The option enables page size extensions (PSE) which refers to 2M pages as well. - Removed --enable-save-restore configure option, save/restore feature changed to be one of the basic Bochs features and compiled by default for all configurations. - Added new Bochs benchmark mode. To run Bochs in benchmark mode execute it with new command line option 'bochs -benchmark time'. The emulation will be automatically stopped after 'time' millions of emulation cycles executed. - Another very useful option for benchmarking of Bochs could be enabled using new 'print_timestamps' directive from .bochsrc: print_timestamps: enable=1 - Added --enable-show-ips option to all configuration scripts used to build release binaries, so all future releases will enjoy IPS display. - Enable alignment check in the CPU and #AC exception by default for --cpu-level >= 4 (like in real hardware) - SF patches applied [1491207] Trace Cache Speedup patch by Stanislav [1857149] Define some IPL values by Sebastian [1850183] Get memory access mode in BX_INSTR_LIN_READ by Lluis Vilanova [1841421] pic: keep slave_pic.INT and master_pic.IRQ_in bit 2 in sync by Russ Cox [1841420] give segment numbers in exception logs by Russ Cox [1801696] Allow Intel builds on Mac OS X [1830658] Fix >32GB disk banner by Samuel Thibault [1813314] Move #define IPL_* and typedef ipl_entry by Sebastian [1809001] Save PnP Option ROM Product Name string in IPL Boot Table by Sebastian [1821242] Fix for #1801285, Niclist.exe broken by Sebastian [1819567] Code warning cleanup [1816162] Update comment on bios_printf() by Sebastian [1811139] Trivial Fix when BX_PCIBIOS and BX_ROMBIOS32 not defined by Myles Watson [1811190] Improve HD recognition and CD boot by Myles Watson [1811860] Implement %X in bios_printf by Sebastian [1809649] printf %lx %ld %lu by Myles Watson [1809651] move BX_SUPPORT_FLOPPY by Myles Watson [1809652] dpte and Int13DPT fixes by Myles Watson [1809669] clip cylinders to 16383 in hard drive by Myles Watson [1799903] Build BIOS on amd64 by Robert Millan [1799877] Fix for parallel build (make -j2) by Robert Millan - these S.F. bugs were closed [1837354] website bug: View the Source link broken [1801268] Reset from real mode no longer working [1843250] Using forward slashes gives invalid filename [1823446] BIOS bug, local APIC #0 not detected [1801285] Niclist.exe broken [1364472] breakpoints sometimes don't work [994451] breakpoint bug [1801295] NSIS installer vs Windows Notepad [1715328] Unreal mode quirk [1503972] debugger doesn't debug first instruction on exception [1069071] div al, byte ptr [ds:0x7c18] fails to execute [1800080] Wrong "BX_MAX_SMP_THREADS_SUPPORTED" assertion - these S.F. feature requests were implemented [1662687] Download for Win32-exe with x64 Mode and debugging [604221] Debugger command: query lin->phys mapping ------------------------------------------------------------------------- Changes in 2.3.5 (September 16, 2007): Brief summary : - Critical problems fixed for x86-64 support in CPU and Bochs internal debugger - ACPI support - The release compiled with x86-64 and ACPI - Hard disk emulation supports ATA-6 (LBA48 addressing, UDMA modes) - Added emulation of Intel SSE4.1 instruction set Detailed change log : - CPU - Fixed critical bug with 0x90 opcode (NOP) handling in x86-64 mode - implied stack references where the stack address is not in canonical form should causes a stack exception (#SS) - Added emulation of SSE4.1 instruction set (Stanislav) - Do not save and restore XMM8-XMM15 registers when not in x86-64 mode - Fixed zero upper 32-bit part of GPR in x86-64 mode - CMOV_GdEd should zero upper 32-bit part of GPR register even if the 'cmov' condition was false ! - Implemented CLFLUSH instruction, report non-zero cache size in CPUID - Fixed PUSHA/POPA instructions behavior in real mode - Fixed detection of inexact result by FPU - Fixed denormals-are-zero (DAZ) handling by SSE convert instructions - Implemented Misaligned Exception Mask support for SSE (MXCSR[17]) - Implemented Alignment Check in the CPU and #AC exception, to enable use --enable-alignment-check configure option - General - 2nd simulation support in wxBochs now almost usable (simulation cleanup code added and memory leaks fixed) - Configure and compile - several fixes for MacOSX, OpenBSD and Solaris 10 - enable save/restore feature by default for all configurations - reorganized SSE configure options to match Intel(R) Programming Reference Manual, new option introduced for SSE extensions enabling. To enable Intel Core Duo 2 new instructions use --enable-sse=3 --enable-sse-extension enabling of SSE4.1 (--enable-sse=4) will enable SSE3 extensions as well - removed old PIT, always use new PIT written by Greg Alexander, removed configure option --enable-new-pit - I/O devices (Volker) - Floppy - partial non-DMA mode support (patch by John Comeau) - Hard drive / cdrom - hard disk emulation now supports ATA-6 (LBA48 addressing, UDMA modes) - VMWare version 4 disk image support added (patch by Sharvil Nanavati) - PCI - initial support for the PIIX4 ACPI controller - Serial - added support for 3-button mouse with Mousesystems protocol - USB - experimental USB device change support added - rewrite of the existing USB devices code - new USB devices 'disk' and 'tablet' (ported from the Qemu project) - Bochs internal debugger - fixed broken debugger "rc file" option (execute debugger command from file) - implementation of a gui frontend ("windebug") for win32 started - gdbstub now accepts connection from any host - several documentation updates - a lot of disasm and internal debugger x86_64 support fixes - Configuration interface - fixes and improvements to the save state dialog handling - Display libraries - text mode color handling improved in some guis - win32 fullscreen mode (patch by John Comeau) - System BIOS (Volker) - 32-bit PM BIOS init code for ACPI, PCI, SMP and SMM (initial patches by Fabrice Bellard) - PCI BIOS function "find class code" implemented - SF patches applied [1791000] 15h 8600h is reading the wrong stack frame by Sebastian [1791016] rombios32.c, ram_probe(), BX_INFO missing value by Sebastian [1786429] typo in bochsrc.5 by Sebastian [1785204] Extend acpi_build_table_header to accept a revision number by Sebastian [1766536] Partial Patch for Bug Report 1549873 by Ben Lunt [1763578] ACPI Table Revision 0 -> 1 [1642490] implement alignment check and #AC exception by Stanislav Shwartsman [1695652] [PATCH] .pcap pktlog and vnet PXE boot by Duane Voth [1741153] Add expansion-ROM boot support to the ROMBIOS [1734159] Implemented INT15h, fn 0xC2 (mouse), subfn 3, set resolution [1712970] bios_printf %s fix [1573297] PUSHA/POPA real mode fix by Stanislav Shwartsman [1641816] partial support for non-DMA access to floppy by John Comeau [1624032] shows where write outside of memory occurred by John Comeau [1607793] allow fullscreen when app requests it by John Comeau [1603013] Bugfix for major NOP problem on x64 by mvysin [1600178] Make tap and tuntap compile on OpenBSD by Jonathan Gray [1149659] improve gdbstub network efficiency by Avi Kivity [1554502] Trivial FPU exception handling fix - these S.F. bugs were closed [1316008] Double faults when it shouldn't - gcc 4.0.2 [1787289] broken ABI for redolog class when enable-compressed-hd [1787500] tftp_send_optack not 64bit clean [1264540] Security issue with Bochs website [1767217] Debugger Faults including ud2 [1729822] Various security issues in io device emulation [1675202] mptable hosed (bad entry count in header) [1197141] 'make install' installs to bad location [1157623] x86Solaris10 cannot recoginize ACPI RSD PTR [1768254] large HDD in Bochs/bximage [1496157] Windows Vista Beta2 dosn't boot [1755915] Illegal Hard Disk Signature Output [1717790] info gdt and info idt scrolls away, too long result [1726640] Debugger displays incorrect segment for mov instruction [1719156] Typo in misc_mem.cpp [1715270] Debugger broken in/beyond 2.3 [1689107] v8086 mode priviledge check failed [1704484] A few checks when CPU_LEVEL < 4 [1678395] Problem with zero sector... [876990] SA-RTL OS fails on PIC configuration [1673582] save/restore didn't restore simulation correctly [1586662] EDD int 13h bug, modify eax [666618] POP_A Panic in DOS EMU [1001485] panic: not enough bytes on stack [1667336] delay times an order of magnitude slow [1665601] crash disassembling bootcode [1657065] CVS sources won't compile [1653805] bochs's gdbstub uses incorrect protocol [1640737] ASM sti command frezzes guest OS [1636439] latest CVS sources don't compile under Cygwin [1634357] disasm incorrect (no sign ext) displacement in 64-bit mode [1376453] pcidev segfaults bochs [1180890] IOAPIC in BOCHS - WinXP 64 in MP version [1597528] 2.3 fails to compile on amd64 [1526255] FLD1 broken when compaling with gcc 4.0.x [1597451] eth_fbsd is broken under FreeBSD [1571949] Bochs will not compile under Solaris [1500216] Bochs fails to boot BeOs CD [1458339] bochs-2.2.6 WinXP Binary ACPI error installing FreeBSD 6.0 [1440011] patches needed for FreeBSD 6.0 to compile Bochs [431674] some devices don't have a prefix [458150] QNX demo disk crashes with new pit [818322] Bochs 2.1 cvs: OS/2 - read verify on non disk [906840] KBD: bogus scan codes generated in set 3 [1005053] No keyboard codes translation [1109374] Problem with Scancodeset 2 [1572345] Bochs won't continue [1568153] Bochs looks for (and loads?) unspecified display libraries [1563462] Errors in /iodev/harddrv.h [1562172] TLB_init() fails to initialize priv_check array if USE_TLB 0 [1385303] debugger crashes after panic [1438227] crc.cpp missing in bx_debug version 2.2.6 [1501825] debugger crashes on to high input [1420959] Memory leak + buffer overflow in Bochs debugger [1553289] Error in Dis-assembler [542464] I cannot use FLAT [1548270] Bochs won't die with its pseudo terminal [1545588] roundAndPackFloatx80 does not detect round up correctly ------------------------------------------------------------------------- Changes in 2.3 (August 27, 2006): Brief summary : - limited save/restore support added (config + log options, hardware state) - configuration parameter handling rewritten to a parameter tree - lots of cpu and internal debugger fixes - hard disk geometry autodetection now supported by most of the image types - hard disk emulation now supports ATA-3 (multiple sector transfers) - VBE memory size increased to 8MB and several VGA/VBE fixes - updated LGPL'd VGABIOS to version 0.6a Detailed change log : - CPU and internal debugger fixes - Fixed bug in FSTENV instruction (Stanislav Shwartsman) - Recognize #XF exception (19) when SSE is enabled - Fixed bug in PSRAW/PSRAD MMX and SSE instructions - Save and restore RIP/RSP only for FAULT-type exceptions, not for traps - Correctly decode, disassemble and execute multi-byte NOP '0F F1' opcode - Raise A20 line after system reset (Stanislav Shwartsman) - Implemented SMI and NMI delivery (APIC) and handling in CPU (Stanislav) - Experimental implementation of System Management Mode (Stanislav) - Added emulation of SSE3E instructions (Stanislav Shwarstman) - Save and restore FPU opcode, FIP and FDP in FXSAVE/FRSTOR instructions - Fixed bug in MOVD_EdVd opcode (always generated #UD exception) - Fixed critical issue, Bochs was not supporting > 16 bit LDT.LIMIT values - Many fixes in Bochs internal debugger and disassembler - CPU x86-64 fixes - Fixed SYSRET instruction implementation - Fixed bug in CALL/JMP far through 64-bit callgate in x86-64 mode - Correctly decode, disassemble and execute 'XCHG R8, rAX' instruction - Correctly decode and execute 'BSWAP R8-R15' instructions - Fixed ENTER and LEAVE instructions in x86-64 mode (Stanislav) - Fixed CR4 exception condition (No Name) - Fixed x86 debugger to support x86-64 mode (Stanislav) - APIC and SMP - Support for Dual Core and Intel(R) HyperThreading Technology. Now you could choose amount of cores per processor and amount of HT threads per core from .bochsrc for SMP simulation (Stanislav Shwartsman) - Allow to control SMP quantum value through .bochsrc CPU option parameter. Previous Bochs versions used hardcoded quantum=5 value. - Fixed interrupt priority bug in service_local_apic() - Fixed again reading of APIC IRR/ISR/TMR registers. Finally it becomes fully correct :-) - Configure and compile - Moved configure time --enable-reset-on-triple-fault option to runtime, the 'cpu' option in .bochsrc is extended and the old configure option is deprecated (Stanislav Shwartsman) - Removed --enable-pni configure option, to compile with PNI use --enable-sse=3 instead (Stanislav Shwartsman) - enable SEP (SYSENTER/SYSEXIT) support by default for Penitum II+ processor emulation (i.e. if cpu-level >= 6 and MMX is enabled) - general - Limited save/restore support added. The state of CPU, memory and all devices can be saved now (state of harddisk images not handled yet). - Fixed several memory leaks - configuration interface - Configuration parameter handling rewritten to a parameter tree. This is required for dynamic menus/dialogs, user-defined options and save/restore. - Support for user-defined bochsrc options added - help support at the parameter prompt in textconfig added - I/O devices (Volker) - Floppy - partial sector transfers fixed - Hard drive / cdrom - several fixes to the IDE register behaviour (e.g. in case of a channel with only one drive connected) - fixed data alignment of 'growing' hard drive images (sharing images between Windows and Linux now possible) - disk geometry autodetection now supported by most of the image types (unsupported: external, dll and compressed modes) - multi sector read/write commands implemented - hard disk now reporting ATA-3 supported - ATAPI 'inquiry' now returns a unique device name - Keyboard - reset sent to keyboard has no effect on the 8042 (scancode translation) - PCI - forward PIRQ register changes to the I/O APIC (if present) - attempt to fix and update the emulation part of 'pcidev' (untested) - VGA - VBE memory size increased to 8MB and several VBE fixes - VGA memory read access fixed (bit plane access and read mode) - VGA memory is now a part of the common video memory - System BIOS (Volker) - enable interrupts before executing INT 19h - fixed ATA device detection in case of one drive only connected to controller - improved INT 15h function AX=E820h - real mode PCI BIOS now returns IRQ routing information (function 0Eh) - keyboard LED flags handling fixed and improved - fixed handling of extended keys in INT 09h - Updated LGPL'd VGABIOS to version 0.6a - SF patches applied [1340111] fixes and updates to usb support by Ben Lunt [1539420] minor addition to pci_usb code by Ben Lunt [1455958] call/jmp through call gate in 64-bit mode [1433107] PATCH: fix compile with wxwindows 2.6 (unicode / utf8) by jwrdegoede [1386671] Combined dual core and hyper-threading patch - these S.F. bugs were closed [833927] TTD: System Error TNT.40025: Unexpected processor exception [789230] Sending code that shows lock up when setting idt [909670] Problems with Symantec Ghost [1540241] include missing in osdep.cc [1539373] Incorrect disasm for "mov moffset,bla" in 64bit [1538419] incorrect disassembly of [rip+disp] with rex.b [1535432] shift+cursor key maps to a digit [1504891] Knoopix 5.0.1 error [1424355] bochs-2.2.6 ata failure in windoze 98se [1533979] wrong disassembly of IN instruction [620059] paste won't stop [1164904] status bar doesn't show num/caps/scroll lock status [1061720] ATA Support level for HD [1522196] Broken CHANGES link in main page [1438415] crash if screen scrolled downwards [778441] Shouldn't interrupts be enable after BIOS? [1514949] I got a problem with the 8253 timer [1513544] disasm of 0xec (in AL,DX) returns ilen of 2 instead of 1 [1508947] APIC interrupt priority checking and interrupt delivery [766286] Debugger halts after any GPF exception [639143] va_list is not a pointer on linuxppc [1501815] debugger examines memory over page-boundary wrong [1503978] movsb/w/d doesn't work when direction is stored [1499405] WinPCap has changed URL hosting [1498519] APIC IRR bits not set while interrupts disabled [1498193] Bochs segfaults on LTR instruction [787140] Guest2HostTLB optimization bug [1492070] instrument stop [1487772] No SEP on P4 [1488335] Growing hard disk images severe interoperability errors! [1076312] Shadow RAM and TLB [1282249] The real i440FX chipset Award bios hangs [1479763] mistake "mov ax,[es:di]" for "mov ax,[ds:di]" [1453575] Misconfigured floppy DMA transfers do not terminate. [1460068] Incorrect handling for the Options Menu Item [910203] bochs-2.1.1 wx.lo failed [1438654] PANIC when trying to run install-amd64-minimal-2005.0.iso [1458320] compile hdimage.h fails [1455880] bochs-2.2.6,2: make error on FreeBSD [696890] Network wouldn't run under W2k hosting MSDOS [673391] SMP timer problems [1291059] wxWindows GUI on non-windows/configure issue [1356450] bochs 2.2.1 errors-omittions [1178017] Win98 guest cannot receive network packets from host [1076315] a20_mask after restarting [1436323] real hw does not panic when bad Ib in CMPSS_VssWssIb [1435269] cdrom_amigaos is not compilable [1433314] disasm issues [1170614] relative jumps/calls wrong in debugger [758121] user might get confused when interrupt handler invoked [1170622] You cannot toggle OFF "show" flags [1406387] JMP instruction should display absolute address [1428813] PANIC: ROM address space out of range [1426288] DR-DOSs EMM386 problem [1412036] Bochs cannot recognize PCI NIC correctly [435115] dbg: modebp broken and no docs [1419366] disasm cs:eip does not work anymore [1419393] SSE's #XF exception -> "exception(19): bad vector" [1419429] disassembly of "260f6f00" show DS: instead of ES: prefix [1417583] Interrupt behaviour changed from 2.2.1 to 2.2.5 [1418281] 'push' (6A) incorrectly disassembled [1417791] FLDENV generating exception when real hw does not. [1264583] OS/2 1.1 doesn't run ------------------------------------------------------------------------- Changes in 2.2.6 (January 29, 2006): - First major SMP release ! - several APIC and I/O APIC fixes make SMP Bochs booting Windows NT4.0 or Knoppix 4.0.2 without noapic kernel option in SMP configuration. - critical APIC timer bug fixed - obsolete SMP BIOS images removed (MP tables created dynamicaly) - determine number of processors in SMP configuration through .bochsrc new .bochsrc option 'CPU' allows to choose number of processors to emulate - new configure option --enable-smp to configure Bochs for SMP support, the old --enable-processors=N option is deprecated - CPU and internal debugger fixes - enabled #PCE bit in CR4 register, previosly setting of this bit generated #GP(0) fault - enabled LAHF/SAHF instructions in x86-64 mode - fixed bug in PMULUDQ SSE2 instruction - fixes in Bochs debugger - Configure and compile - enable VME (virtual 8086 mode extensions) by default if cpu-level >= 5 - enable Bochs disassembler by default for all configurations - win32 installer script improvements - ips parameter moved to new 'CPU' option - show IPS value in status bar if BX_SHOW_IPS is enabled - Other - several fixes in the hard drive, keyboard, timer, usb and vga code - new user button shortcut "bksl" (backslash) - updated Bochs instrumentation examples - user and development documentation improved ------------------------------------------------------------------------- Changes in 2.2.5 (December 30, 2005): Brief summary : - added virtual 8086 mode extensions (VME) implementation - several fixes/improvements in x86-64 emulation, debugger and disassembler - new serial mode 'socket' connects a network socket - IDE busmaster DMA feature for harddisks and cdroms completed and enabled - many improvements in Bochs emulated I/O devices (e.g. floppy, cdrom) - Updated LGPL'd VGABIOS to version 0.5d Detailed change log : - CPU - fixed XMM registers restore in FXRSTOR instruction (Andrej Palkovsky) - print registers dump to the log if tripple fault occured - fixed PANIC in LTR instruction (Stanislav) - added virtual 8086 mode extensions (VME) implementation, to enable configure with --enable-vme (Stanislav) - flush caches and TLBs when executing WBINVD and INVD instructions - do not modify segment limit and AR bytes when modifying segment register in real mode (support for unreal mode) - fixed init/reset values for LDTR and TR registers - reimplemented hardware task switching mechanism (Stanislav) - generate #GP(0) when fetching instruction cross segment boundary - CPU (x86-64) (Stanislav Shwartsman) - implemented call_far/ret_far/jmp_far instructions in long mode - fixed IRET operation in long mode - fixed bug prevented setting of NXE/FFXSR bits in MSR.EFER register - implemented RDTSCP instruction - do not check CS.limit when prefetching instructions in long mode - fixed masked write instructions (MASKMOVQ/MASKMOVDQU) in long mode - fetchdecode fixes for x86-64 - APIC - Fixed bug in changing local APIC id (Stanislav) - Fixed reading of IRR/ISR/TMR registers (patch by wmrieker) - Implemented spurious interrupt register (Stanislav, patch by wmrieker) - Fixed interrupt delivery bug (anonymous #SF patch) - Correctly implemented ESR APIC register (Stanislav) - Bochs debugger - Fixed bug in bochs debugger caused breakpoints doesn't fire sometimes (Alexander Krisak) - watchpoints in device memory fixed (Nickolai Zeldovich) - new debug interface to access Bochs CPU general purpose registers with support for x86-64 - Disassembler (Stanislav Shwartsman) - Fixed disassembly for FCOMI/FUCOMI instructions - Full x86-64 support in disassembler. The disassembler module extended to support x86-64 extensions. Still limited by Bochs debugger which is not supporting x86-64 at all ;( - I/O devices (Volker) - general - memory management prepared for large BIOS images (up to 512k) - slowdown timer sleep rate fixed (now using 1 msec on all platforms) - some device specific parameter handlers moved into the device code - serial - new serial mode 'socket' connects a network socket (#SF patch by Andrew Backer) - hard drive / cdrom - assign a unique serial number to each drive (fixes harddrive detection problems with Linux kernels 2.6.x: "ignoring undecoded slave") - geometry autodetection for 'flat' hard disk images added. Works with images created with bximage (heads = 16, sectors per track = 63) - ATAPI command 'read cd' implemented, some other commands improved - cdrom read block function now tries up to 3 times before giving up - emulation of raw cdrom reads added, some other lowlevel cdrom fixes - IDE busmaster DMA feature for harddisks and cdroms completed and enabled - disk image size limit changed from 32 to 127 GB - split ATA/ATAPI emulation code and image handling code - floppy - fixes for OS/2 (patch by Robin Kay) - disk change line behaviour fixed (initial patch by Ben Lunt) - end-of-track (EOT) condition handling implemented - more accurate timing for read/write data and format track commands using a motor speed of 300 RPM - timing of recalibrate and seek commands now depends on the step rate, date rate and the steps to do - floppy controller type changed to 82077AA - cmos - RTC 12-hour and binary mode implemented - number of CMOS registers changed from 64 to 128 - bochsrc option 'cmosimage' improved - save cmos image on exit if enabled - speaker - simple speaker support for OS X added (patch by brianonn@telus.net) - pci - BeOS boot failure fix in the PCI IDE code - don't register i/o and memory regions during PCI probe - vga - memory allocation for vga extensions fixed - usb - some bugfixes by Ben Lunt (mouse and keypad are usable now) - networking modules - VDE networking module now enabled on Linux - display libraries - general - new syntax for the userbutton shortcut string and more keys supported - win32 - fixed keycode generation for right alt/ctrl/shift keys - runtime dialog is now a property sheet - x11 - simple dialog boxes for the "ask" and "user shortcut" feature implemented - Slovenian keymap added (contributed by Mitja Ursic) - configuration interface - ask dialog is now enabled by default for win32, wx and x display libraries - bochsrc option floppy_command_delay is obsolete now (floppy timing now based on hardware specs) - floppy image size detection now available in the whole config interface - some device specific parameter handlers moved into the device code - calculate BIOS ROM start address from image if not specified - System BIOS (Volker) - PCI i/o and memory base address initialization added - several keyboard interrupt handler fixes (e.g. patch by japheth) - several floppy fixes (e.g. OS/2 works with patch by Robin Kay) - some more APM functions added - Updated LGPL'd VGABIOS to version 0.5d - generate SMP specific tables dynamicly by the Bochs memory init code - SF patches applied [1389776] Disk sizes over 64 Gbytes by Andrzej Zaborowski [1359162] disasm support for x86-64 by Stanislav Shwartsman [857235] task priority and other APIC bugs, etc by wmrieker [1359011] build breaks for 386 + debugger + disasm by shirokuma [1352761] Infinite loop when trying to debug a triple exception [1311170] small APIC bug fix (interrupt sent to the wrong CPU) [1309763] Watchpoints don't work in device memory by Nickolai Zeldovich [1294930] change line status on floppy by Ben Lunt [1282033] SSE FXRESTORE not working correctly by Ondrej Palkovsky [816979] wget generalizations by Lyndon Nerenberg [1214886] No more pageWriteStamp / unified icache by H. Johansson [1107945] com->socket redirection support by Andrew Backer - these S.F. bugs were closed [669180] win95 install : unknown SET FEATURES subcommand 0x03 [1346692] bochs 2.2.1 VGA BIOS error [1354963] floppy in KolibriOS [1378204] error: bochs-2.2.1, --enable-sb16, --disable-gameport [1368412] VDE problems in BOCHS [533446] CPU and APIC devices appear twice [1000796] bximage fails to create image of specified size [1170793] Quarterdeck QEMM doesn't work [923704] Multiple opcode prefixes don't reflect Trap 13 [1166392] DocBook/documentation issues [1368239] broken grater than 4GB size of sparse type hd image [1365830] i386 compile breaks on paging [427550] Incomplete IRETD implementation [1215081] MSVC workspace STILL not fixed [736279] Jump to Task [1356488] FD change fail & occur error [957615] [CPU ] prefetch: RIP > CS.limit [1353866] not booting linux-2.6.14 [1351667] load32bitOSImage does not work with --enable-x86-debugger [1217476] Incorrect (?) handling of segment registers in real mode [1184711] OS2 DOS crash [2.2.pre2] [624330] support for disks > 32GiB [1348368] bochs 2.2.1 bximage error [1342081] Configuration Menu option failed [1138616] OS/2 Warp 4 hangs when booting [1049840] mouse and video conflict [1164570] Unable to perform Fedora Core 4 test 1 installation [1183201] Windows 2000 (MSDN build 2150?) does not completely install [1194284] Can't boot from CD-ROM (Windows NT) [962969] Windows NT crashes while trying to intall them. [1054594] WinXP install halts (redo) [1153107] Windows XP fails with BSOD on 'vga' [938518] Win XP installation fails [645420] getHostMemAddr vetoed direct read [1179985] MS XENIX: >>PANIC<< VGABIOS panic at vgabios.c, line 0 [1329600] WBINVD and INVD should flush caches and TLB [638924] eliminate BX_USE_CONFIG_INTERFACE [1048711] Funny behaviour with CTRL [1288450] keyboard BIOS error [1310706] Keyboard - about key SHIFT [1295981] Ubuntu 5.04 Live-CD won't boot in Bochs [879047] APIC timer behavior different before reset and after [1188506] I still can't install the german Windows XP! [1301847] Windows XP dosn't boot - FXRSTOR problem ? [661259] does not boot QNX under WinX [924412] Keyboard lock states all whacked [681127] MIPSpro compiler (IRIX) is allergic to ^M [1285923] BIOS keyboard handler [516639] ATA controller revisited... [657918] does not boot BeOS under WinX [649245] BeOS CD locks halfway on boot [1094385] Attachment for bug 1090339 (beos failure) [1183196] BeOS 4.5 developer CD does not install [1090339] BeOS fails to boot [639484] panics when int 13 is called [711701] divide by zero [704295] ATAPI/BIOS call missing [682856] hard drive problems [627691] Cursor keys problem [588011] keyboard not working [542260] os/2 warp crashes with floppy handling [1273878] SB16 doesn't work in pure DOS [542254] OS/2 FDC driver dies [1099610] Windows 98 SE Does not install [875479] cr3 problem on task switch [731423] NE2000 causing PANIC on Win2K detection [1156155] bochs fails to boot plan9 iso [1251979] --enable-cpu-level=3 should assume --without-fpu [1257538] Interupt 15h 83h - set wait event interval [658396] Panic for DR DOS emm386 [679339] /? doesn't divulge Bochs command-line syntax [1167016] call/jump/return_protected doesn't support x86-64 [1252432] Mac OS X compile bug [881442] Bochs 2.1 PANIC when loading DOS Turbo Pascal protected mode [1249324] Boch2.2.1 Buffer Overfollow in void bx_local_apic_c::init () [1197144] 'make install' has dependency on wget [1079595] LTR:386TSS: loading tr.limit < 103 [1244070] Compilation Error in gui/rfb.cc [761707] CPU error when trying to start Privateer [517281] Crash running Privateer in DOS... ------------------------------------------------------------------------- Changes in 2.2.1 (July 8, 2005): - Fixed several compilation warnings and errors for different platforms (Volker) - Fixed FPU tag word restore in FXRSTOR instruction (Stanislav) - Added missing scancodes for F11 and F12 to BIOS translation table (Volker) - Bochs disassembler bugfixes (h.johansson) - About 5% emulation speed improvement (h.johansson) - Handle writing of zero to APIC timer initial count register (Stanislav) - Enable Idle-Hack for 'TERM' GUI (h.johansson) - Reduced overhead of BX_SHOW_IPS option to minimum. Now every simulation could run with --enable-show-ips without significant performance penalty. (Stanislav) - Fixed pcipnic register access (Volker) - Limited write support for TFTP server in 'vnet' networking module added (Volker) - Changed some timing defaults to more useful values (Volker) - WinXP/2003 style common controls now supported (Vitaly Vorobyov) - Updated LGPL'd VGABIOS to version 0.5c (Volker) - Added new BX_INSTR_HLT callback to instrumentation (Stanislav) ------------------------------------------------------------------------- Changes in 2.2 (May 28, 2005): Brief summary : - New floating point emulator based on SoftFloat floating point emulation library. - improved x86-64 emulation - Cirrus SVGA card emulation added - status bar with indicators for keyboard, floppy, cdrom and disk (gui dependant) - many improvements in Bochs emulated I/O devices (e.g. PCI subsystem) Detailed change log : - CPU - fixes for booting OS/2 by Dmitri Froloff - fixed v8086 priveleged instruction processing bug (was also reported by LightCone Aug 7 2003) - exception process bug (was reported by Diego Henriquez Sat Nov 15 01:16:51 CET 2003) - segment validation with IRET instruction - CS segment not present exception processing with IRET - several fixes by Kevin Lawton - add MSVC host asm instructions (patch by suzu) - fixed bug in HADDPD/HSUBP
!!!!ap6212a0_a33_sc3817r_验证通过_修正wifi的配置文件为nvram_ap6212.txt
调通sina33下的AP6212A0(WIFI+BT) 大文实验室/大文哥 壹捌陆捌零陆捌捌陆捌贰 wb4916 AT qq.com 完成时间:2017/6/28 12:13 版本:V1.3 本文参照: 《A33 wifi移植说明书.pdf》 还有就是全志R16平台的parrotv1.1的官方SDK(Android4.4.2) 1、打开AP6212的BT,关闭rtl8723bs的BT(其它都是按照比对软件的字母顺序了): [ 3.141273] Bluetooth: HCI UART driver ver 2.2 [ 3.146210] Bluetooth: HCI H4 protocol initialized [ 3.151563] Bluetooth: HCI BCSP protocol initialized [ 3.157154] usbcore: registered new interface driver btusb [ 3.163282] Bluetooth: Generic Bluetooth SDIO driver ver 0.1 [ 3.169599] Bluetooth: BlueSleep Mode Driver Ver 1.1 [ 3.175402] Bluetooth: get rtl8723bs rtl8723bs_bt_host_wake gpio failed [ 3.953017] Bluetooth: RFCOMM TTY layer initialized [ 3.958456] Bluetooth: RFCOMM socket layer initialized [ 3.964183] Bluetooth: RFCOMM ver 1.11 [ 3.968340] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 3.968638] [mmc]: sdc2 set ios: clk 25000000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 3.968734] [mmc]: mclk 0xf1c20090 0xc100000b [ 3.989421] Bluetooth: BNEP filters: protocol multicast [ 3.995242] Bluetooth: HIDP (Human Interface Emulation) ver 1.2 [ 4.001921] L2TP core driver, V2.0 [ 4.005706] PPPoL2TP kernel driver, V2.0 [ 4.010070] L2TP IP encapsulation support (L2TPv3) [ 4.015468] L2TP netlink interface [ 4.019264] L2TP ethernet pseudowire support (L2TPv3) [ 4.023860] [mmc]: sdc2 set ios: clk 25000000Hz bm PP pm ON vdd 3.3V width 1 timing MMC-HS(SDR20) dt B [ 4.023929] [mmc]: mclk 0xf1c20090 0xc100000b [ 4.040272] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5 [ 4.048780] ThumbEE CPU extension supported. [ 4.053550] Registering SWP/SWPB emulation handler [ 4.059269] [rfkill]: rfkill set power 1 [ 4.063652] gpio ap6xxx_bt_regon set val 0, act val 0 正常启动的BT加载: [ 3.207764] Bluetooth: HCI UART driver ver 2.2 [ 3.212725] Bluetooth: HCI H4 protocol initialized [ 3.218045] Bluetooth: HCI BCSP protocol initialized [ 3.223671] us
ap6212a0_bb16v3_sina33验证通过BT的功能_wifi部分有问题_20170626_1148没有外层目录.7z
调通sina33下的AP6212A0版本的BT 大文实验室/大文哥 壹捌陆捌零陆捌捌陆捌贰 wb4916 AT qq.com 完成时间:2017/6/26 11:01 版本:V1.0 本文参照: 《A33 wifi移植说明书.pdf》 还有就是全志R16的parrotv1.1的官方SDK(Android4.4.2) 1、打开AP6212的BT,关闭rtl8723bs的BT: [ 3.141273] Bluetooth: HCI UART driver ver 2.2 [ 3.146210] Bluetooth: HCI H4 protocol initialized [ 3.151563] Bluetooth: HCI BCSP protocol initialized [ 3.157154] usbcore: registered new interface driver btusb [ 3.163282] Bluetooth: Generic Bluetooth SDIO driver ver 0.1 [ 3.169599] Bluetooth: BlueSleep Mode Driver Ver 1.1 [ 3.175402] Bluetooth: get rtl8723bs rtl8723bs_bt_host_wake gpio failed [ 3.953017] Bluetooth: RFCOMM TTY layer initialized [ 3.958456] Bluetooth: RFCOMM socket layer initialized [ 3.964183] Bluetooth: RFCOMM ver 1.11 [ 3.968340] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 3.968638] [mmc]: sdc2 set ios: clk 25000000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 3.968734] [mmc]: mclk 0xf1c20090 0xc100000b [ 3.989421] Bluetooth: BNEP filters: protocol multicast [ 3.995242] Bluetooth: HIDP (Human Interface Emulation) ver 1.2 [ 4.001921] L2TP core driver, V2.0 [ 4.005706] PPPoL2TP kernel driver, V2.0 [ 4.010070] L2TP IP encapsulation support (L2TPv3) [ 4.015468] L2TP netlink interface [ 4.019264] L2TP ethernet pseudowire support (L2TPv3) [ 4.023860] [mmc]: sdc2 set ios: clk 25000000Hz bm PP pm ON vdd 3.3V width 1 timing MMC-HS(SDR20) dt B [ 4.023929] [mmc]: mclk 0xf1c20090 0xc100000b [ 4.040272] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5 [ 4.048780] ThumbEE CPU extension supported. [ 4.053550] Registering SWP/SWPB emulation handler [ 4.059269] [rfkill]: rfkill set power 1 [ 4.063652] gpio ap6xxx_bt_regon set val 0, act val 0 rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r$ ll rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ ./build.sh config Welcome to mkscript setup progress All available chips: 0. sun8iw5p1 Choice: 0 All available platforms: 0. android 1. dragonboard 2. linux Choice: 0 All available kernel: 0. linux-3.4 Choice: 0 All available boards: 0. evb 1. maple 2. redwood 3. y2 4. y3 Choice: 4 rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee$ cd linux-3.4/ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4$ make ARCH=arm menuconfig [*] Networking support ---> <*> Bluetooth subsystem support ---> Bluetooth device drivers ---> < > Broadcom Bluetooth Low Power Manager Support <*> Realtek Bluesleep driver support 修改为: <*> Broadcom Bluetooth Low Power Manager Support < > An inverter between bt hostwake pin and cpu (NEW) < > Realtek Bluesleep driver support 2、(这个不修改:) R:\wyb\ap6212a0_a33_sc3817r\android\device\softwinner\astar-y3\overlay\frameworks\base\core\res\res\values\config.xml <!-- List of regexpressions describing the interface (if any) that represent tetherable Wifi interfaces. If the device doesn't want to support tethering over Wifi this should be empty. An example would be "softap.*" --> <string-array translatable="false" name="config_tether_wifi_regexs"> <item>"wlan0"</item> </string-array> <!-- 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> 3、 R:\wyb\ap6212a0_a33_sc3817r\android\device\softwinner\astar-y3\astar_y3.mk # ap6181/6210/6330 sdio wifi fw and nvram #$(call inherit-product-if-exists, hardware/broadcom/wlan/firmware/ap6181/device-bcm.mk) #$(call inherit-product-if-exists, hardware/broadcom/wlan/firmware/ap6210/device-bcm.mk) $(call inherit-product-if-exists, hardware/broadcom/wlan/firmware/ap6212/device-bcm.mk) #$(call inherit-product-if-exists, hardware/broadcom/wlan/firmware/ap6330/device-bcm.mk) #rtl8723bs bt fw and config #$(call inherit-product, hardware/realtek/bluetooth/rtl8723bs/firmware/rtlbtfw_cfg.mk) # camera config for camera detector #PRODUCT_COPY_FILES += \ # device/softwinner/astar-y3/hawkview/sensor_list_cfg.ini:system/etc/hawkview/sensor_list_cfg.ini #add gms features #PRODUCT_COPY_FILES += \ # frameworks/native/data/etc/android.hardware.faketouch.xml:system/etc/permissions/android.hardware.faketouch.xml \ # frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:system/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \ # frameworks/native/data/etc/android.hardware.usb.host.xml:system/etc/permissions/android.hardware.usb.host.xml # 3G Data Card Packages #PRODUCT_PACKAGES += \ # u3gmonitor \ # chat \ # rild \ # pppd # 3G Data Card Configuration Flie #PRODUCT_COPY_FILES += \ # device/softwinner/polaris-common/rild/ip-down:system/etc/ppp/ip-down \ # device/softwinner/polaris-common/rild/ip-up:system/etc/ppp/ip-up \ # device/softwinner/polaris-common/rild/3g_dongle.cfg:system/etc/3g_dongle.cfg \ # device/softwinner/polaris-common/rild/usb_modeswitch:system/bin/usb_modeswitch \ # device/softwinner/polaris-common/rild/call-pppd:system/xbin/call-pppd \ # device/softwinner/polaris-common/rild/usb_modeswitch.sh:system/xbin/usb_modeswitch.sh \ # device/softwinner/polaris-common/rild/apns-conf_sdk.xml:system/etc/apns-conf.xml \ # device/softwinner/polaris-common/rild/libsoftwinner-ril.so:system/lib/libsoftwinner-ril.so #PRODUCT_COPY_FILES += \ # device/softwinner/polaris-common/rild/init.3gdongle.rc:root/init.sunxi.3gdongle.rc # 3G Data Card usb modeswitch File #PRODUCT_COPY_FILES += \ # $(call find-copy-subdir-files,*,device/softwinner/polaris-common/rild/usb_modeswitch.d,system/etc/usb_modeswitch.d) PRODUCT_PROPERTY_OVERRIDES += \ ro.sw.embeded.telephony = false PRODUCT_PROPERTY_OVERRIDES += \ persist.sys.timezone=Asia/Shanghai \ persist.sys.language=zh \ persist.sys.country=CN PRODUCT_PACKAGES += Bluetooth #PRODUCT_PROPERTY_OVERRIDES += \ # ro.product.8723b_bt.used=true #GPS Feature #PRODUCT_PACKAGES += gps.polaris #BOARD_USES_GPS_TYPE := simulator #PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.location.xml:system/etc/permissions/android.hardware.location.xml # evb logger PRODUCT_COPY_FILES += \ device/softwinner/astar-y3/tools/logger.sh:system/bin/logger.sh PRODUCT_PROPERTY_OVERRIDES += \ persist.sys.usb.config=mass_storage,adb \ ro.adb.secure=0 ro.udisk.lable=Polaris \ ro.font.scale=1.0 \ ro.hwa.force=false \ rw.logger=0 \ ro.sys.bootfast=true \ debug.hwc.showfps=0 \ debug.hwui.render_dirty_regions=false #ro.sys.storage_type = emulated \ #for gms #PRODUCT_PROPERTY_OVERRIDES += \ # ro.sys.mutedrm=true \ # ro.adb.secure=1 PRODUCT_PROPERTY_OVERRIDES += \ ro.sf.lcd_density=213 \ ro.product.firmware=v2.0 $(call inherit-product-if-exists, device/softwinner/astar-y3/modules/modules.mk) DEVICE_PACKAGE_OVERLAYS := device/softwinner/astar-y3/overlay PRODUCT_CHARACTERISTICS := tablet # Overrides PRODUCT_AAPT_CONFIG := xlarge hdpi xhdpi large PRODUCT_AAPT_PREF_CONFIG := xhdpi PRODUCT_BRAND := Allwinner PRODUCT_NAME := astar_y3 PRODUCT_DEVICE := astar-y3 PRODUCT_MODEL := QUAD-CORE A33 y3 PRODUCT_MANUFACTURER := softwinner #include device/softwinner/polaris-common/prebuild/google/products/gms_base.mk 4、 R:\wyb\ap6212a0_a33_sc3817r\android\device\softwinner\astar-y3\BoardConfig.mk # wifi and bt configuration # 1. Wifi Configuration # 1.1 realtek wifi support # 1.1 realtek wifi configuration #BOARD_WIFI_VENDOR := realtek ifeq ($(BOARD_WIFI_VENDOR), realtek) WPA_SUPPLICANT_VERSION := VER_0_8_X BOARD_WPA_SUPPLICANT_DRIVER := NL80211 BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_rtl BOARD_HOSTAPD_DRIVER := NL80211 BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_rtl SW_BOARD_USR_WIFI := rtl8188eu BOARD_WLAN_DEVICE := rtl8188eu #SW_BOARD_USR_WIFI := rtl8723au #BOARD_WLAN_DEVICE := rtl8723au #SW_BOARD_USR_WIFI := rtl8723bs #BOARD_WLAN_DEVICE := rtl8723bs endif # 1.2 broadcom wifi support 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" #SW_BOARD_USR_WIFI := AP6181 #SW_BOARD_USR_WIFI := AP6210 #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" # 2017/6/21 15:11 wenyuanbo configure ap6212 use ap6210 SW_BOARD_USR_WIFI := AP6212 WIFI_DRIVER_FW_PATH_STA := "/system/vendor/modules/fw_bcm43438a0.bin" WIFI_DRIVER_FW_PATH_P2P := "/system/vendor/modules/fw_bcm43438a0_p2p.bin" WIFI_DRIVER_FW_PATH_AP := "/system/vendor/modules/fw_bcm43438a0_apsta.bin" #SW_BOARD_USR_WIFI := AP6330 #WIFI_DRIVER_FW_PATH_STA := "/system/vendor/modules/fw_bcm40183b2_ag.bin" #WIFI_DRIVER_FW_PATH_P2P := "/system/vendor/modules/fw_bcm40183b2_ag_p2p.bin" #WIFI_DRIVER_FW_PATH_AP := "/system/vendor/modules/fw_bcm40183b2_ag_apsta.bin" endif #1.3 eag wifi config #BOARD_WIFI_VENDOR := eagle ifeq ($(BOARD_WIFI_VENDOR), eagle) WPA_SUPPLICANT_VERSION := VER_0_8_X BOARD_WPA_SUPPLICANT_DRIVER := NL80211 BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_eagle BOARD_HOSTAPD_DRIVER := NL80211 BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_eagle SW_BOARD_USR_WIFI := esp8089 BOARD_WLAN_DEVICE := esp8089 endif # 2. Bluetooth Configuration # make sure BOARD_HAVE_BLUETOOTH is true for every bt vendor BOARD_HAVE_BLUETOOTH := true BOARD_HAVE_BLUETOOTH_BCM := true #SW_BOARD_HAVE_BLUETOOTH_NAME := ap6210 SW_BOARD_HAVE_BLUETOOTH_NAME := ap6212 #SW_BOARD_HAVE_BLUETOOTH_NAME := ap6330 #BOARD_HAVE_BLUETOOTH_RTK := true #BLUETOOTH_HCI_USE_RTK_H5 := true #SW_BOARD_HAVE_BLUETOOTH_NAME := rtl8723bs 5、 R:\wyb\ap6212a0_a33_sc3817r\android\device\softwinner\astar-y3\init.sun8i.rc on early-fs mount_all /fstab.sun8i setprop ro.crypto.fuse_sdcard true insmod /system/vendor/modules/disp.ko insmod /system/vendor/modules/lcd.ko insmod /system/vendor/modules/mali.ko insmod /system/vendor/modules/leds-sunxi.ko insmod /system/vendor/modules/bcmdhd.ko insmod /system/vendor/modules/bcm_btlpm.ko #2G or 3G init.rc # import init.sunxi.3gdongle.rc ## 1. realtek & eagle wifi service ## 1.1 realtek & eagle wifi sta service #service wpa_supplicant /system/bin/wpa_supplicant \ # -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ # -O/data/misc/wifi/sockets \ # -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0 # # we will start as root and wpa_supplicant will switch to user wifi # # after setting up the capabilities required for WEXT # # user wifi # # group wifi inet keystore # class main # socket wpa_wlan0 dgram 660 wifi wifi # disabled # oneshot # ## 1.2 realtek & eagle wifi sta p2p concurrent service #service p2p_supplicant /system/bin/wpa_supplicant \ # -ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf \ # -e/data/misc/wifi/entropy.bin -N \ # -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ # -O/data/misc/wifi/sockets \ # -g@android:wpa_wlan0 # class main # socket wpa_wlan0 dgram 660 wifi wifi # disabled # oneshot # 2. broadcom wifi service # 2.1 broadcom wifi station and softap service wpa_supplicant /system/bin/wpa_supplicant \ -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ -I/system/etc/wifi/wpa_supplicant_overlay.conf \ -O/data/misc/wifi/sockets \ -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0 # we will start as root and wpa_supplicant will switch to user wifi # after setting up the capabilities required for WEXT # user wifi # group wifi inet keystore class main socket wpa_wlan0 dgram 660 wifi wifi disabled oneshot # 2.2 broadcom wifi sta p2p concurrent service service p2p_supplicant /system/bin/wpa_supplicant \ -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ -I/system/etc/wifi/wpa_supplicant_overlay.conf \ -O/data/misc/wifi/sockets -N \ -ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf \ -I/system/etc/wifi/p2p_supplicant_overlay.conf \ -puse_p2p_group_interface=1 -e/data/misc/wifi/entropy.bin \ -g@android:wpa_wlan0 # we will start as root and wpa_supplicant will switch to user wifi # after setting up the capabilities required for WEXT # user wifi # group wifi inet keystore class main socket wpa_wlan0 dgram 660 wifi wifi disabled oneshot 6、(不需要修改) R:\wyb\ap6212a0_a33_sc3817r\android\device\softwinner\astar-y3\ueventd.sun8i.rc 7、 R:\wyb\ap6212a0_a33_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> 8、 R:\wyb\ap6212a0_a33_sc3817r\android\frameworks\base\services\java\com\android\server\BatteryService.java // private static final boolean DEBUG = false; private static final boolean DEBUG = true; private void sendIntentLocked() { // Pack up the values and broadcast them to everyone final Intent intent = new Intent(Intent.ACTION_BATTERY_CHANGED); intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY | Intent.FLAG_RECEIVER_REPLACE_PENDING); int icon = getIconLocked(mBatteryProps.batteryLevel); intent.putExtra(BatteryManager.EXTRA_STATUS, mBatteryProps.batteryStatus); intent.putExtra(BatteryManager.EXTRA_HEALTH, mBatteryProps.batteryHealth); intent.putExtra(BatteryManager.EXTRA_PRESENT, mBatteryProps.batteryPresent); //intent.putExtra(BatteryManager.EXTRA_LEVEL, mBatteryProps.batteryLevel); intent.putExtra(BatteryManager.EXTRA_LEVEL, 100); intent.putExtra(BatteryManager.EXTRA_SCALE, BATTERY_SCALE); intent.putExtra(BatteryManager.EXTRA_ICON_SMALL, icon); intent.putExtra(BatteryManager.EXTRA_PLUGGED, mPlugType); //intent.putExtra(BatteryManager.EXTRA_VOLTAGE, mBatteryProps.batteryVoltage); intent.putExtra(BatteryManager.EXTRA_VOLTAGE, 4200); intent.putExtra(BatteryManager.EXTRA_TEMPERATURE, mBatteryProps.batteryTemperature); intent.putExtra(BatteryManager.EXTRA_TECHNOLOGY, mBatteryProps.batteryTechnology); intent.putExtra(BatteryManager.EXTRA_INVALID_CHARGER, mInvalidCharger); if (DEBUG) { Slog.d(TAG, "2016/12/05 10:41 wenyuanbo **** Sending ACTION_BATTERY_CHANGED. level:" + mBatteryProps.batteryLevel + ", scale:" + BATTERY_SCALE + ", status:" + mBatteryProps.batteryStatus + ", health:" + mBatteryProps.batteryHealth + ", present:" + mBatteryProps.batteryPresent + ", voltage: " + mBatteryProps.batteryVoltage + ", temperature: " + mBatteryProps.batteryTemperature + ", technology: " + mBatteryProps.batteryTechnology + ", AC powered:" + mBatteryProps.chargerAcOnline + ", USB powered:" + mBatteryProps.chargerUsbOnline + ", Wireless powered:" + mBatteryProps.chargerWirelessOnline + ", icon:" + icon + ", invalid charger:" + mInvalidCharger); } mHandler.post(new Runnable() { @Override public void run() { ActivityManagerNative.broadcastStickyIntent(intent, null, UserHandle.USER_ALL); } }); } 9、(直接拷贝同目录下的ap6210:) R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\conf\softwinner\ap6212\Android.mk LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := bt_vendor.conf LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_PATH := $(TARGET_OUT)/etc/bluetooth LOCAL_MODULE_TAGS := eng LOCAL_SRC_FILES := $(LOCAL_MODULE) include $(BUILD_PREBUILT) R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\conf\softwinner\ap6212\bt_vendor.conf # UART device port where Bluetooth controller is attached UartPort = /dev/ttyS1 # Firmware patch file location FwPatchFilePath = /system/vendor/modules/ # Firmware Name FwPatchFileName = bcm43438a0.hcd 10、新增:vnd_astar-y3-ap6212.txt,直接拷贝:vnd_astar-y2-ap6210.txt R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\include\vnd_astar-y3-ap6212.txt R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\include\vnd_astar-y2-ap6210.txt BLUETOOTH_UART_DEVICE_PORT = "/dev/ttyS1" FW_PATCHFILE_LOCATION = "/system/vendor/modules/" LPM_IDLE_TIMEOUT_MULTIPLE = 5 UART_TARGET_BAUD_RATE = 1500000 BT_WAKE_VIA_PROC = TRUE #LPM_SLEEP_MODE = FALSE BTVND_DBG = TRUE BTHW_DBG = TRUE VNDUSERIAL_DBG = TRUE UPIO_DBG = TRUE 11、 R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\src\userial_vendor.c //#ifdef USE_AP6210_BT_MODULE #if defined(USE_AP6210_BT_MODULE) || defined(USE_AP6212_BT_MODULE) /* PATCH for AP6210. Will detect CTS(module side) to select transport mode*/ ALOGE("userial vendor open: USE AP6210 BT MODULE."); usleep(100000); close(vnd_userial.fd); if ((vnd_userial.fd = open(vnd_userial.port_name, O_RDWR)) == -1) { ALOGE("userial vendor open: unable to open %s", vnd_userial.port_name); return -1; } #endif //USE_AP6210_BT_MODULE 12、 R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\Android.mk ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6210) LOCAL_CFLAGS += -DUSE_AP6210_BT_MODULE endif ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6212) LOCAL_CFLAGS += -DUSE_AP6212_BT_MODULE endif ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6330) include $(LOCAL_PATH)/conf/softwinner/ap6330/Android.mk endif ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6210) include $(LOCAL_PATH)/conf/softwinner/ap6210/Android.mk endif ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6212) include $(LOCAL_PATH)/conf/softwinner/ap6212/Android.mk endif 13、 R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\libbt\vnd_buildcfg.mk ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6210) SRC := $(call my-dir)/include/$(addprefix vnd_, $(addsuffix -ap6210.txt,$(basename $(TARGET_DEVICE)))) endif ifeq ($(SW_BOARD_HAVE_BLUETOOTH_NAME), ap6212) SRC := $(call my-dir)/include/$(addprefix vnd_, $(addsuffix -ap6212.txt,$(basename $(TARGET_DEVICE)))) endif 14、(这些AP6212的WIFI的bin文件和BT的hcd文件来自全志R16的SDK,当然也可以找正基原厂/代理商索取:) R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\wlan\firmware\ap6212\bcm43438a0.hcd (根据ap6210修改:) R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\wlan\firmware\ap6212\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 PRODUCT_COPY_FILES += \ hardware/broadcom/wlan/firmware/ap6212/fw_bcm43438a0.bin:system/vendor/modules/fw_bcm43438a0.bin \ hardware/broadcom/wlan/firmware/ap6212/fw_bcm43438a0_apsta.bin:system/vendor/modules/fw_bcm43438a0_apsta.bin \ hardware/broadcom/wlan/firmware/ap6212/fw_bcm43438a0_p2p.bin:system/vendor/modules/fw_bcm43438a0_p2p.bin \ hardware/broadcom/wlan/firmware/ap6212/nvram_ap6212.txt:system/vendor/modules/nvram_ap6212.txt \ hardware/broadcom/wlan/firmware/ap6212/bcm43438a0.hcd:system/vendor/modules/bcm43438a0.hcd #hardware/broadcom/wlan/firmware/ap6212/config.txt:system/vendor/modules/config.txt ######################## R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\wlan\firmware\ap6212\fw_bcm43438a0.bin R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\wlan\firmware\ap6212\fw_bcm43438a0_apsta.bin R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\wlan\firmware\ap6212\fw_bcm43438a0_p2p.bin R:\wyb\ap6212a0_a33_sc3817r\android\hardware\broadcom\wlan\firmware\ap6212\nvram_ap6212.txt 15、(可选修改:) R:\wyb\ap6212a0_a33_sc3817r\android\packages\apps\Camera2\src\com\android\camera\CameraActivity.java private BroadcastReceiver mBatteryInfoReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (Intent.ACTION_BATTERY_CHANGED.equals(action)) { int Level = intent.getIntExtra("level", 0); int Scale = intent.getIntExtra("scale", 100); Log.w(TAG, "2016/11/29 19:54 &&&& wenyuanbo battery Level" + Level); /* *Logic: *1.the battery level is lower then 5%. *2.if in camera, make sure that not in the snapshot progress. *3.if in videocamera, make sure that not in the videorecording progress. *4.everytime starting the camera activity, the battery level is broadcasted, * if meeting the conditions above, give a dialog, press it and finish the activity. *5.if the conditions are not satisfied when started, play for a moment, in the camera acitvity * or video camera activity, the conditiosn are satisfied, also give a dialog for finishing the activity. * *by fuqiang. */ if(Level < 5) { Runnable runnable_close_camera = new Runnable() { @Override public void run() { //close the camera. // CameraActivity.this.finish(); } }; Log.w(TAG, "2016/11/29 18:20 **** wenyuanbo battery Level" + Level); showLocationDialog(); } /* *Logic: *1.the battery level is lhigher then 5% and lower than 15%. *2.if in camera, make sure that not in the snapshot progress. *3.if in videocamera, make sure that not in the videorecording progress. *4.whether in camera or in videocamera, make sure that the flash mode is supported. *5.everytime starting the camera activity, the battery level is broadcasted, * if meeting the conditions above, forbidden the flash(gray icon), give a dialog to notise user. *6.if the conditions are not satisfied when started, play for a moment, in the camera acitvity * or video camera activity, the conditiosn are satisfied, forbidden the flash and give a notice dialog. *7.the dialog is only given once for each camera activity starting. * *by fuqiang. */ else if(Level < 16) { //close the flash mode. /* if (mIsLowBatteryDialogShown == false) { mRotateDialog.showAlertDialog( getString(R.string.warning), getString(R.string.low_battery_15), null, null, getString(R.string.close), null); mIsLowBatteryDialogShown = true; } */ } } } }; 16、(可选:) R:\wyb\ap6212a0_a33_sc3817r\lichee\tools\pack\chips\sun8iw5p1\configs\default\env.cfg bootdelay=3 loglevel=8 17、 R:\wyb\ap6212a0_a33_sc3817r\lichee\tools\pack\chips\sun8iw5p1\configs\y3\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 ;---------------------------------------------------------------------------------- ;uart configuration ;uart_used = uart x enable ;uart_type = 2:2 wire,4:4 wire,8:8 wire, full function ;---------------------------------------------------------------------------------- [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> [uart1] uart_used = 1 uart_port = 1 uart_type = 4 uart_tx = port:PG06<2><1><default><default> uart_rx = port:PG07<2><1><default><default> uart_rts = port:PG08<2><1><default><default> uart_cts = port:PG09<2><1><default><default> [uart2] uart_used = 1 uart_type = 4 uart_tx = port:PB00<2><1><default><default> uart_rx = port:PB01<2><1><default><default> uart_rts = port:PB02<2><1><default><default> uart_cts = port:PB03<2><1><default><default> [uart3] uart_used = 0 uart_type = 4 uart_tx = port:PH06<3><1><default><default> uart_rx = port:PH07<3><1><default><default> uart_rts = port:PH08<3><1><default><default> uart_cts = port:PH09<3><1><default><default> [uart4] uart_used = 0 uart_port = 4 uart_type = 2 uart_tx = port:PA04<2><1><default><default> uart_rx = port:PA05<2><1><default><default> uart_rts = port:PA06<2><1><default><default> uart_cts = port:PA07<2><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 [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> ;-------------------------------------------------------------------------------- ;wifi configuration ;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) ;wifi_mod_sel: 0- none, 1- ap6181, 2- ap6210(wifi+bt), ; 3 - rtl8188eu, 4- rtl8723au(wifi+bt), ; 5 - rtl8723bs, 6- esp8089 ;-------------------------------------------------------------------------------- [wifi_para] wifi_used = 1 wifi_sdc_id = 1 wifi_usbc_id = 1 wifi_usbc_type = 1 wifi_mod_sel = 2 wifi_power = "axp22_dldo1" wifi_power_ext1 = "axp22_dldo2" wifi_power_ext2 = "axp22_aldo1" wifi_power_switch = ;wifi_power_switch = port:power0<1><0><default><0> ; 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_regon = port:PD13<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> ;-------------------------------------------------------------------------------- ;blue tooth ;bt_used ---- blue tooth used (0- no used, 1- used) ;bt_uard_id ---- uart index ;-------------------------------------------------------------------------------- [bt_para] bt_used = 1 bt_uart_id = 1 power_start = 3 pmu_temp_enable = 0 18、 刷机之后,BT可以用。 传输4.5MB的JPG图片大概需要2分钟。 WIFI: 在设置→WLAN(打开之后): shell@astar-y3:/ $ shell@astar-y3:/ $ [ 469.609956] init: computing context for service '/system/bin/wpa_supplicant' [ 469.618386] init: starting 'p2p_supplicant' [ 469.625739] init: Created socket '/dev/socket/wpa_wlan0' with mode '660', user '1010', group '1010' [ 469.673379] init: waitpid returned pid 2065, status = 0000ff00 [ 469.679923] init: process 'p2p_supplicant', pid 2065 exited [ 476.197334] sndpcm_unmute,line:1099 [ 451.464755] CPU1: Booted secondary processor [ 478.459403] CPU1: shutdown [ 478.462947] [hotplug]: cpu(0) try to kill cpu(1) [ 478.468478] [hotplug]: cpu1 is killed! . shell@astar-y3:/ $ 分析启动的log: [ 17.526849] gpio ap6xxx_wl_regon set val 1, act val 1 [ 17.632508] [ap6xxx]: sdio wifi power state: on [ 17.637576] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 17.637751] =========== WLAN placed in POWER ON ======== [ 17.654651] [mmc]: sdc1 card_power_on start... [ 17.659576] [mmc]: sdc1 power_supply is null [ 17.664322] [mmc]: sdc1 card_power_on ok [ 17.680039] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 17.690275] [mmc]: mclk 0xf1c2008c 0x8002000e [ 17.772361] [mmc]: *** sunxi_mci_dump_errinfo(L773): smc 1 err, cmd 52, RTO !! [ 17.781309] [mmc]: *** sunxi_mci_dump_errinfo(L773): smc 1 err, cmd 52, RTO !! [ 17.789448] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 17.799714] [mmc]: mclk 0xf1c2008c 0x8002000e [ 17.862032] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 17.872262] [mmc]: mclk 0xf1c2008c 0x8002000e [ 17.933953] [mmc]: *** sunxi_mci_dump_errinfo(L773): smc 1 err, cmd 8, RTO !! [ 17.941997] *******************Try sdio******************* [ 17.948400] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 17.958630] [mmc]: mclk 0xf1c2008c 0x8002000e [ 18.027775] mmc1: queuing unknown CIS tuple 0x80 (2 bytes) [ 18.035416] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 18.043087] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 18.051920] mmc1: queuing unknown CIS tuple 0x80 (7 bytes) [ 18.145287] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing SD-HS(SDR25) dt B [ 18.155436] [mmc]: mclk 0xf1c2008c 0x8002000e [ 18.215346] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 1 timing SD-HS(SDR25) dt B [ 18.225736] [mmc]: mclk 0xf1c2008c 0x8100000b [ 18.285675] [mmc]: sdc1 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B [ 18.296021] [mmc]: mclk 0xf1c2008c 0x8140030b [ 18.357915] mmc1: new high speed SDIO card at address 0001 [ 18.364532] bcmsdh_register: Linux Kernel SDIO/MMC Driver [ 18.364575] *******************sdio init ok******************* [ 18.377207] bcm_wlan_get_oob_irq enter. [ 18.381537] gpio [359] map to virq [7] ok [ 18.388851] F1 signature OK, socitype:0x1 chip:0xa9a6 rev:0x0 pkg:0x4 [ 18.396019] dhdsdio_probe_attach: unsupported chip: 0xa9a6 [ 18.402155] dhdsdio_probe: dhdsdio_probe_attach failed [ 18.407899] bcmsdh_probe: device attach failed [ 18.412981] [ 18.412984] Dongle Host Driver, version 1.88.45.3 (r420671) [ 18.412989] Compiled in drivers/net/wireless/bcmdhd on Jun 26 2017 at 12:06:39 [ 18.428835] dhd_module_init: sdio_register_driver timeout or error [ 18.435928] gpio ap6xxx_wl_regon set val 0, act val 0 [ 18.541549] [ap6xxx]: sdio wifi power state: off [ 18.546679] =========== WLAN placed in POWER OFF ======== [ 18.546915] mmc1: card 0001 removed [ 18.546995] [mmc]: mmc not poweroff notifiy [ 18.547007] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B [ 18.547160] [mmc]: sdc1 card_power_off start... [ 18.547166] [mmc]: sdc1 power_supply is null [ 18.547173] [mmc]: sdc1 card_power_off ok [ 18.631655] init: command 'insmod' r=-1 [ 18.636066] init: command 'insmod' r=-1 [ 18.658010] fs_mgr: swapon failed for /dev/block/zram0 [ 18.663804] init: command 'swapon_all' r=-1 [ 18.668504] init: processing action 0x58e70 (console_init) [ 18.675396] init: width = 1280 [ 18.678788] init: height = 800 [ 18.682224] init: s.st_size = 3145728 [ 18.686308] init: logo match failed!fbsize = 4096000 [ 18.718811] init: command 'console_init' r=0 [ 18.723628] init: processing action 0x55bf0 (fs) [ 18.730640] init: command 'mkdir' r=-2 [ 18.741901] init: command 'insmod' r=0 [ 18.752227] init: command 'insmod' r=0 [ 18.756491] init: command 'insmod' r=-1 [ 18.771211] init: command 'insmod' r=0 [ 18.779731] init: command 'insmod' r=0 [ 18.791739] init: command 'insmod' r=0 [ 18.803941] init: command 'insmod' r=0 [ 18.816178] init: command 'insmod' r=0 19、查找:(dhdsdio_probe_attach: unsupported chip: 0xa9a6) rootroot@rootroot-E400:~$ cd wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd/ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$ grep "unsupported chip" . -R ./dhd_sdio.c: DHD_ERROR(("%s: unsupported chip: 0xx\n", ./sbutils.c: SI_ERROR(("sb_chip2numcores: unsupported chip 0x%x\n", 匹配到二进制文件 ./dhd_sdio.o 匹配到二进制文件 ./bcmdhd.o 匹配到二进制文件 ./bcmdhd.ko 匹配到二进制文件 ./sbutils.o rootroot@rootroot-E400:~/wyb/ap6212a0_a33_sc3817r/lichee/linux-3.4/drivers/net/wireless/bcmdhd$
au3反编译源码
au3反编译源码 myAut2Exe - The Open Source AutoIT Script Decompiler 2.9 ======================================================== *New* full support for AutoIT v3.2.6++ :) ... mmh here's what I merely missed in the 'public sources 3.1.0' This program is for studying the 'Compiled' AutoIt3 format. AutoHotKey was developed from AutoIT and so scripts are nearly the same. Drag the compiled *.exe or *.a3x into the AutoIT Script Decompiler textbox. To copy text or to enlarge the log window double click on it. Supported Obfuscators: 'Jos van der Zande AutoIt3 Source Obfuscator v1.0.14 [June 16, 2007]' , 'Jos van der Zande AutoIt3 Source Obfuscator v1.0.15 [July 1, 2007]' , 'Jos van der Zande AutoIt3 Source Obfuscator v1.0.20 [Sept 8, 2007]' , 'Jos van der Zande AutoIt3 Source Obfuscator v1.0.22 [Oct 18, 2007]' , 'Jos van der Zande AutoIt3 Source Obfuscator v1.0.24 [Feb 15, 2008]' , 'EncodeIt 2.0' and 'Chr() string encode' Tested with: AutoIT : v3. 3. 0.0 and AutoIT : v2.64. 0.0 and AutoHotKey: v1.0.48.5 The options: =========== 'Force Old Script Type' Grey means auto detect and is the best in most cases. However if auto detection fails or is fooled through modification try to enable/disable this setting 'Don't delete temp files (compressed script)' this will keep *.pak files you may try to unpack manually with'LZSS.exe' as well as *.tok DeTokeniser files, tidy backups and *.tbl (<-Used in van Zande obfucation). If enable it will keep AHK-Scripts as they are and doesn't remove the linebreaks at the beginning Default:OFF 'Verbose LogOutput' When checked you get verbose information when decompiling(DeTokenise) new 3.2.6+ compiled Exe Default:OFF 'Restore Includes' will separated/restore includes. requires ';<AUT2EXE INCLUDE-START' comment to be present in the script to work Default:ON 'Use 'normal' Au3_Signature to find start of script' Will uses the normal 16-byte start signature to detect the start of a
曲线拟合工具CurveExpert 1.0
ct. 18, 1995 v. 1.00 =========================================================================== + First release of CurveExpert 1.0. Oct. 26, 1995, v. 1.01 =========================================================================== New Features: + More attractive help file, with more keywords for searching + new help search facility available directly from CurveExpert Bug Fixes: + If a polynomial was already calculated, selecting another polynomial of a differing degree incorrectly pulled results from the cache instead of recalculating the curve fit. Fixed. + running two versions of CurveExpert is prevented, since two simultaneous instances cause stack faults. + if the data set is sorted, all interpolations are now marked invalid as they should be. + "Apply to All" did not necessarily force the current attributes of a graph to the current graph (only if the user clicks OK). Fixed. + The scrollbar did not get reset to the top when the user read in a new data file. Fixed. + The structure of the code has been undergone some major changes to ease porting to Windows 95 and Windows NT. I was exceedingly careful, but I hope this didn't introduce new bugs! :-) + For some reason, the help file didn't have any single or double quotes in it. This has been corrected, so it is now easier to read. + The help file was not terminated when CurveExpert was. Fixed. + The Window and Help menus were moved to more conventional positions on the menu bar. Nov. 4, 1995, v. 1.10: =========================================================================== New Features: + Previously undocumented logical functions can be used in the user-defined models. See the help documentation. + Current filename now appears in the title bar. + QuickCalc has been expanded to find the x-value, given the y-value. + Optimizations have been applied to many routines, making the user interface more responsive and the algorithms quicker. Changes: + File reading system has been revamped. + the color scheme on all windows now conforms strictly to the user defined system colors. + Dialogs were expunged of all Borland controls (except for buttons) since they conflicted with user defined color schemes. + The QuickCalc dialog now automatically shifts focus back to the edit control and selects all text after the OK button is pushed. This makes it easier to calculate many points at a time. Bug Fixes: + pressing the tab key to force the built-in spreadsheet sometimes added points onto the end of the data set. Fixed. + If a graph window was closed and then reopened (except after a CurveFinder operation), the comments in the Graph Info dialog were not correct. Fixed. + The Cut Last Row/Undo pair now functions properly. + The the graph of a polynomial fit would be reset if the data was changed in the data window. Fixed. + The scaling procedure did not grab the latest data out of the data window's edit control if it was active, resulting in one point not being scaled or translated. Fixed. + A constant starting with a decimal (eg, .25) caused CurveExpert to bomb (when defining a user model). This has been fixed so that these constants are accepted. + A comma-delimited data file was not read correctly. A new file reading system was implemented to read files with any type of (unspecified) delimiter between the data columns + if a data file was not read correctly, the filename in the status bar showed the unreadable file instead of the previous file. Fixed. + the common dialogs (file open/save, print) did not accept keystokes until after they were clicked with the mouse, which makes it terribly hard for non-mouse users. Fixed. + If the current path was changed from CurveExpert, the help file was not found. Fixed. Nov. 9, 1995, v. 1.11 =========================================================================== New Features: + the data point markers on graphs can now be changed to filled or unfilled circles, squares, triangles, pluses, or crosses. Changes: + Small optimizations made to the speed of the user interface + The main window is now fully resizable + The position and size of the main window is saved on exit and restored the next time CurveExpert runs Bug Fixes: + Whoops! The new file reading procedure masked out all minus and minus signs in the data, so that numbers like -10 and 10e-3 were not read correctly. Fixed. + the exception reporting dialog box did not properly draw the exclamation point's background, which should match the dialog color. Fixed. + the single-precision version still read files incorrectly sometimes. Fixed. + the initial guess dialog sometimes opened unconditionally on the next fit performed after a CurveFinder evaluation. Fixed. Nov. 13, 1995, v. 1.12 =========================================================================== New Features: + Differentiation and integration of a calculated curve fit is now supported, similar to the implementation of QuickCalc. Changes: + If background processing is enabled, during iteration the cursor is a combined arrow/hourglass to inform the user that he/she can still perform operations. + editing points in the spreadsheet is now prohibited while any iteration is taking place. + Drawing of data points on a graph is internally clipped if it is outside of the graphing window. This allows for faster graph drawing if many points are outside of the graph pane. + A separate set of application-wide defaults are maintained for the single-precision and double-precision versions (registered version only) Bug Fixes: + Periods by themselves in the user models were parsed as the value zero instead generating a syntax error. Fixed. + A plot that was copied to the clipboard failed to "clip" data points that were outside of the graphing pane, resulting in points being drawn outside of the intended area. Fixed. + The information button on a graph window would sometimes disappear if a window was sized smaller. Fixed. + After copying a plot to the clipboard, the current graph resolution was incorrectly reset to 1. Fixed. + Extremely small parameter guesses were not allowed in the parameter guess dialog, since its precision was limited to six places. Fixed. Nov. 25, 1995, v. 1.13 =========================================================================== Changes: + The data manipulation tools have now been merged into one organized, tabbed dialog. + The model analytical tools have now been merged into one organized, tabbed dialog. + Cascading a large number of windows would sometimes result in some windows being moved off of the screen. Now, the cascade restarts at the top left if a window might be moved off-screen. + The built-in models have been reordered so that operations such as calculations and window manipulations naturally fall into a grouped arrangement. + the graph autoscaling algorithm has been rewritten to be more reliable + The info button on the graphing window has been changed and moved to be less obtrusive. + sizing restrictions on the graphing windows have been removed. Bug Fixes: + Whoops! Another problem with the file reading engine caused columns starting with a negative number to be discarded. Fixed. + Entering a user model with no parameters was allowed when it shouldn't have been. Now, a syntax error is generated. + the Window|Tile command sometimes worked strangely if graphing windows had been closed prior to invoking it. Fixed. + the Window|Cascade command did not properly cascade windows that were minimized. Fixed. + the last tick and label sometimes wasn't shown on the x/y axes of plots. Fixed. + the implementation of filled points didn't produce a filled entity for the circle or triangle when printed. Fixed. + The user was still asked whether to save a file or not upon exiting, even if the file had just been saved. Fixed. + CurveExpert will now run even if ctl3dv2.dll is not found. Dec. 2, 1995, v. 1.14 (Shareware Only) =========================================================================== Bug Fixes: + Graph Attributes/Graph Scaling Dialogs were not initialized properly in the Shareware version. Fixed. Dec. 31, 1995, v. 1.15 (Not Released) =========================================================================== Changes: + Sometimes, resizing a graph would result in the line width being drawn incorrectly (not the user-specified line width, screen only). Fixed. + delayed rendering of plots is now supported, to greatly increase drawing performance with user model plots and/or plots with a large number of data points + (registered only) the single precision package has now been optimized for single-precision arithmetic + the directions on the graph window are now removed if they will be collide with the error information. This leads to cleaner plots, especially with small graphing windows. Bug Fixes: + if one minor tick was selected (on either axis), there was a chance that one too many tick labels would be printed. Fixed. + some stray (and inappropriate) directions were left on the differentiate and integrate dialogs. Removed. Jan. 14, 1996, v. 1.20 =========================================================================== New Features: + many new graphing features and easier-to-use graphing properties interface has been added + the covariance matrix and residual plot are now available in the revamped information dialog + much faster nonlinear regression performance over version 1.1 (between 17% to 45% improvement in speed, depending on the number of parameters) Changes: + each graphing window no longer appears in the Win31 tasklist; and each window no longer shows up in the Win95 taskbar. + weighting values by 1/y^2 during nonlinear regression is now implemented Jan. 25, 1996, v. 1.21 =========================================================================== Bug Fixes: + the equation bitmaps in the initial guess and/or information dialog did not update properly at times. Fixed. + if the ctl3dv2 module could not be loaded, the info dialog GPF'ed when opened. Fixed. March 5, 1996, v. 1.22 =========================================================================== New Features: + the Preferences dialog has been revamped, with many new user- defineable options added for printing, regression/math options, and application options. + added right-click menus to all main window regions Changes: + The limitation of two-line titles in metafiles has been removed. + new and improved debugging console with a nicer appearance and more information. Necessary because of the ongoing port to Win32. + a button that coordinates the foreground (frame) color and the text colors was added to the graph properties dialog + the ability to draw grid lines at each minor tick mark was added + drag-and-drop from the file manager to CurveExpert is now supported + data information dialog box was widened to accommodate large numbers. + a new and much faster data clipping algorithm is now used + clipping and sorting operations now take place in the background, instead of hogging the CPU + two new symbols added to the graphing properties dialog Bug Fixes: + if the "Weight by Y^2" option was turned on, the results of nonlinear regression were likely to be a local minima or not converge at all. Fixed. + It was not possible to put a single percent sign in an axis label without typing '%%' in the axis label edit field. Fixed. + if the graph extents were set just right on the x or y axis, then one grid line would not draw. Fixed. + if the main window was minimized when CurveExpert was exited, the window was not restored to the correct position the next time CurveExpert was run. Fixed. + a GPF occurred if a data set with over 8192 data points was sorted. Fixed. + corrected an erroneous reading of the allocated memory (in bytes) that occurred if the quadratic fit was ever used. + if a residual table of an extremely large data set was copied to the clipboard in the info dialog, a GPF occurred. Fixed. + if a large data file with very large numbers was read, the first examination of that file would cause a program abort due to an overflow. Fixed. May 20, 1996, v. 1.23 =========================================================================== New Features: + 32 BIT VERSION FOR WINDOWS 95 AND WINDOWS NT RELEASED! + added x/y averages, minima, maxima, and standard deviations to the variables available for custom regressions + added the capability to swap the x and y data + (32 bit only) new tooltips feature gives quick access to a toolbar button's function Changes: + All BWCC controls have been removed, and as a result, several dialogs were redesigned. This gives a more consistent feel to the application, eases the port to Win32, and frees CurveExpert from having the BWCC.DLL library distributed with it. + (16 bit only) draws the missing line between the toolbar and menus if running under Windows 95. + added code to properly shut down CurveExpert if the user logs off while it is running. + fit type has been added to the caption of a residual plot window to make it clear where the window originated. + even if no changes were made to the graph from the Graph Properties dialog, the plot was re-rendered. Now, a check is made to see if any changes were made to determine if the graph should be redrawn. + the help file has undergone some formatting changes and additions + support for multiple-copy printouts was added Bug Fixes: + the table-generation and export-file mechanisms printed all zeros if a number was too small. Fixed. Now, the numbers are printed properly in exponential format. + the Preferences dialog would cause a program abort if no printer was installed. Fixed. + the function that draws the graph title had a potential memory leak. This would manifest itself also in the Residual page from the information dialog. Fixed. + the path field in the application preferences dialog would not allow horizontal scrolling, so the user was limited to a short data file path name. Fixed. + the ranking chart would sometimes get corrupted during a CurveFinder operation on a small data set (at unpredictable times). Fixed. + the underline style was ignored if it was specified for a font that would appear on a graph. Fixed. + a memory leak that caused a "floating point error" in the lagrangian interpolation routine was fixed + if a x or y axis label contained more than 50 characters, a subsequent display of the plot would cause a crash. Fixed. June 2, 1996, v. 1.24 =========================================================================== Changes: + when the 32-bit version opened a help file under Win32s, it went straight to the help file contents. Now, it opens the help file contents dialog box. + while reading a file, the progress is reported in the status bar Bug Fixes: + under Windows NT, all of the tabbed dialog boxes (preferences, graph properties, graph analyze, graph information) were blank. Fixed. + the history (dump) file did not have the last iteration written to it if the iteration converged. Fixed. + CurveExpert might not detect that it is running under Win32s correctly. Fixed. + if a line in a data file started with a +, it was not recognized as a number. Fixed. November 7, 1996, v. 1.30 =========================================================================== New Features: + uncertainties (standard deviations) in each data point can now be used + built-in spreadsheet facility has been enhanced -- now looks and behaves *much* more like a spreadsheet + spreadsheet facility has multilevel undo/redo capability + cut/copy/paste of ranges in the built-in spreadsheet and between other spreadsheets (Excel, Quattro Pro, etc.) is now implemented + enhanced file import facility gives more flexibility for reading data files + a most-recently-used file list is maintained in the File menu + [32-bit, '95 interface only] Internet-aware links in the Help menu directly access the CurveExpert home page(s) Changes: + the splash screen is now drawn in the correct user-defined color, instead of being hard-coded to light gray. + the graphs now comply with the user-defined color scheme unless set explicitly by the user. + there is no longer any limit on the number of data points that can be entered manually (previously 100) + the main window now responds appropriately when certain system settings change, such as the scroll bar width + more info was added to the debugging facility + the status bar now shows what degree of polynomial is being computed + some menu items have been rearranged to form a more consistent user interface + if the file is modified, an asterisk appears beside the filename in the title bar; when the file is saved, the asterisk is removed + typing a title in the "Graph Properties" dialog now automatically deselects the "Show Header" checkbox. Bug Fixes: + certain curve fits were turned off when they shouldn't have been if zeros or negatives existed in the x data. Fixed. + strange "NAN"s would occasionally appear in the released 32-bit version. This was due to a Microsoft optimizer bug; a workaround has been implemented. + On Windows NT, if a table file was to overwrite an already existing file, CurveExpert would terminate. Fixed. + if a two-column data file had a one-column entry later in the data file, CurveExpert would crash. Fixed. + an internal error that might cause a termination while using the CurveFinder was fixed + CurveExpert would crash soon after invoking the preferences dialog, if the polynomial window was open and the degree in it did not match the selected degree in the preferences dialog + the CurveFinder tool now correctly handles polynomial calculations when the Polynomial family is selected + if a data set line began with spaces or tabs, it could be misinterpreted as having one more column than it did. Fixed. + the help button for the ArcLength page in the "Analyze Graph" dialog did not work. Fixed. + the new-style help is now used unter Windows NT 3.51 by default + if a malformed file was attempted to be read, the toolbar was (mistakenly) reenabled anyway. Fixed. + various and sundry misspellings, typos, and formatting errors have been corrected in the on-line documentation. November 18, 1996, v. 1.31 =========================================================================== Changes: + [32-bit only] Bessel functions of first and second kind added to available user model functions + ceil and floor functions added to available user model functions Bug Fixes: + [32-bit only] When installing to a WinNT 3.51 platform. no Program Manager group and icons would be created unless the user was the administrator. Fixed. + [16-bit only] If a math error occurred and was handled in CurveExpert and 3d dialogs were being used, dialogs became transparent and unusable until CurveExpert was restarted. Fixed. February 24, 1997, v. 1.32 =========================================================================== New Features: + A history page has been added to the Graphing Information dialog to give the chi-square and parameter histories for each regression. + a preview plot gives quick access to visualization of various regressions on the ranking chart Changes: + if the y column is scaled and STD data is also present, the STD data is scaled by the same factor as the y column + the ranking chart interface has been changed to mesh smoothly with the preview plot + comments in the information dialog were not available after running CurveFinder or closing/reopening a window. This data is now stored with the fit coefficients, so the comments are available at any time for a valid curve fit result + various speedups implemented in the nonlinear regression routine Bug Fixes: + when sorting data and the standard deviation column is active, the STD data would not be carried with the data point. Fixed. + if pasting more than 25 points, CurveExpert would freeze. Fixed. + Several memory and resource leaks fixed. + if an exception occurred when plotting a graph, the message stating so would be misplaced on the window/metafile/printout. Fixed. + the keyboard interface on the File Import Dialog was nonexistant. Added. + After clipping the data set, if the user tried to undo a previous action, CurveExpert would crash. Now, the undo is disabled in this situation. + When dragging and dropping a file on CurveExpert, the title of the file became "TITLE.ERR". Fixed. + when a file was opened off of the MRU menu or dropped on CurveExpert, it could not be saved to the same file. Fixed. February 26, 1997, v. 1.33 =========================================================================== Bug Fixes: + For users with an international version of Windows where the comma is used for the decimal point, CurveExpert would not read files properly. Fixed. + In help file, correlation coefficient was documented incorrectly. Corrected. March 19, 1997, v. 1.34 =========================================================================== Bug Fixes: + [16 bit only] plots with a log x axis were not plotting correctly. Fixed. + Corrections made to keyboard interface in File Import Dialog. March 1, 1998, v. 1.36 =========================================================================== New Features: + a facility to transform a column of data at a time by selected functions was added Changes: + the initial viewable state of the CurveExpert window now reacts correctly to external control of the process spawning it + a switch was added to toggle the solid line at X=0 and Y=0 on the graph + some additions and changes to the help documentation Bug Fixes: + a 19th order polynomial fit caused a crash; fixed. Jan 1, 2001, v. 1.37 ============================================================================ Changes: + updates to address and payment information June 13, 2003, v. 1.38 ============================================================================ New Features: + added setting to curves.ini file to allow international users to set the decimal point appropriately based on their locale Changes: + Updated contact information and order form
基于多目标哈里斯鹰算法及模型预测控制(MPC)的储能和风电平抑波动研究(Matlab代码实现)
内容概要:本文研究了基于多目标哈里斯鹰算法(MOHHO)与模型预测控制(MPC)相结合的储能系统与风电场联合平抑功率波动的方法。通过构建风电-储能系统的协同优化模型,采用MOHHO算法求解多目标优化问题,获得兼顾风电功率波动抑制效果、储能系统寿命延长与运行成本降低的Pareto最优解集。结合MPC的滚动优化机制,提升了系统对风电出力不确定性的动态响应能力,增强了控制策略的实时性与鲁棒性。研究提供了完整的Matlab代码实现,支持在不同风速场景下进行仿真验证,有助于复现高水平学术论文成果并推动相关科研工作的开展。; 适合人群:具备电力系统、智能优化算法或自动控制等相关基础知识的研究生、科研人员,以及从事新能源并网、储能系统设计与优化的工程技术人员。; 使用场景及目标:① 掌握多目标智能优化算法在电力系统协同控制中的应用方法;② 学习模型预测控制在风电功率平抑中的建模与实现技术;③ 复现先进算法与控制策略,支撑科研项目、学位论文撰写或工程方案设计。; 阅读建议:建议读者结合Matlab代码逐段分析其实现逻辑,重点关注目标函数构建、约束条件处理、MPC滚动时域设计以及MOHHO算法与MPC的集成方式,鼓励通过调整参数、引入新场景或对比其他算法来深化理解和拓展应用。
Cadence/嘉立创 BOM 自动整理工具:一键生成便于焊接与采购的 BOM
双击即可运行
基于可靠性评估序贯蒙特卡洛模拟法的配电网可靠性评估研究(Matlab代码实现)
内容概要:本文围绕基于序贯蒙特卡洛模拟法的配电网可靠性评估展开研究,提出了一种结合Matlab代码实现的仿真方法,用于全面分析配电网在多种故障场景下的供电可靠性表现。文中系统阐述了序贯蒙特卡洛模拟的核心原理,通过时间序列抽样模拟电力元件的随机故障与修复过程,精确捕捉系统的动态运行行为,并据此评估系统级与负荷点级的多项关键可靠性指标,如系统平均停电频率(SAIFI)、系统平均停电持续时间(SAIDI)等。研究内容涵盖模型构建、随机状态抽样、状态转移逻辑判断、故障后果分析及可靠性指标统计等完整流程,提供了可复现的Matlab程序代码,极大地方便了读者的理解与应用。该方法不仅能有效反映配电网的时序特性和随机性,尤其适用于含有分布式电源、自动化开关等复杂结构的现代智能配电网的可靠性量化评估,为电网规划与运行优化提供科学依据。; 适合人群:具备电力系统分析基础知识和一定Matlab编程能力的高校研究生、从事电力系统规划与运行的科研人员及电力公司技术人员。; 使用场景及目标:①作为教学与科研工具,帮助深入理解蒙特卡洛模拟在电力系统可靠性分析中的具体应用与实现细节;②为实际配电网的规划设计、运行维护及升级改造提供可靠的量化评估手段,支持制定提升供电可靠性的优化决策; 阅读建议:建议读者结合文中提供的Matlab代码进行逐行调试与运行,深入掌握模拟过程中状态抽样、时序推进、故障隔离与指标累积等核心逻辑,并可在现有模型基础上进一步扩展,融入天气影响、保护装置动作时序、网络重构策略等更贴近实际的因素,以提升模型的工程应用价值。
2009-2025年 华证ESG年度季度评级评分数据 xlsx60.rar
该数据汇集了华证ESG评级体系下2009至2025年间的年度与季度评级及评分结果,涵盖综合评级以及环境、社会、治理三个维度的具体得分。数据以Excel表格形式存储,样本覆盖A股上市公司,时间粒度同时提供年度和季度两个层面,便于观察企业ESG表现的长期趋势与短期波动。华证ESG评级是国内较常用的第三方评价指标之一,其数据可用于企业可持续发展研究、绿色金融分析、投资组合构建以及公司治理相关实证检验。使用者可筛选不同年份、季度和评级级别进行横向对比或纵向追踪,也便于与财务数据匹配,考察ESG表现对经营绩效、融资成本或股票收益的影响。数据文件内按年度和季度分别组织,能够支持从2009年至2025年的连续性分析。
最新推荐





