导航:首页 > 源码编译 > 编译高通8010

编译高通8010

发布时间:2022-05-10 03:31:40

‘壹’ 海思920和高通801的区别

这种问题已经很无聊,而且几乎没人愿意回答了,每天打开知道总是有人不停的在问:
苹果A7好还是高通8010/801好?
联发科好还是高通好?
华为xxx好还是高通xxx好?
xxx的xxx好还是xxx的xxx好?
关于这些问题,其实网上都有答案,花不了你10分钟网络一下,立马能找到比较专业,可信的答案,何必每次总是在这里提问,还浪费财富值?
回正题
920跑分数据已爆,肯定是强于801的,920比801晚推出将近半年,性能超过后者也不是什么难事
具体区别:华为麒麟920是基于A15/A7架构的处理器,而高通则基于krait 400架构,两者在微架构上区别还是很大的,具体请参阅各自的技术文档,这里也不详述
920是世界上第一款搭载cat6基带的Soc产品,其能支持、兼容更多的网络制式,射频频段,并且功耗更低;相比801部分产品集成了cat4基带,没有920先进
GPU方面,两者也不一样,具体去搜索adreno 330和Mali T6系列,有很详尽的介绍
其余,DDR controler,DSP,decoder,ram bus等等一些外围电路,功能性电路,设计肯定有差异,自己查官方技术文档去

最最重要的,920是中国ic界的一剂强心针,代表中国ic设计能力开始逐渐的和国外一流水平缩小差距,也让中国IT界有了重拾信心的抓手,其历史意义远大于其产品本身使用价值意义;相比之下801只不过是外国公司在中国敛财并且进行市场垄断和树立技术壁垒的帮凶
这,才是920和801在一个中国人眼中最大的区别!

‘贰’ 如何编译高通kernal设备树

DTS (device tree source)
.dts文件是一种ASCII 文本格式的Device
Tree描述,此文本格式非常人性化,适合人类的阅读习惯。基本上,在ARM
Linux在,一个。dts文件对应一个ARM的machine,一般放置在内核的arch/arm/boot/dts/目录。由于一个SoC可能对应多个machine(一个SoC可以对应多个产品和电路板),势必这些。dts文件需包含许多共同的部分,Linux内核为了简化,把SoC公用的部分或者多个machine共同的部分一般提炼为。dtsi,类似于C语言的头文件。其他的machine对应的。dts就include这个。dtsi。譬如,对于VEXPRESS而言,vexpress-v2m.dtsi就被vexpress-v2p-ca9.dts所引用,
vexpress-v2p-ca9.dts有如下一行:
/include/
“vexpress-v2m.dtsi”
当然,和C语言的头文件类似,。dtsi也可以include其他的。dtsi,譬如几乎所有的ARM
SoC的。dtsi都引用了skeleton.dtsi。
.dts(或者其include的。dtsi)基本元素即为前文所述的结点和属性:
[plain] view
plainprint?
/ {
node1 {
a-string-property = “A string”;
a-string-list-property = “first string”, “second string”;
a-byte-data-property = [0x01 0x23 0x34 0x56];
child-node1 {
first-child-property;
second-child-property = <1>;
a-string-property = “Hello, world”;
};
child-node2 {
};
};
node2 {
an-empty-property;
a-cell-property = <1 2 3 4>; /* each number (cell) is a uint32 */
child-node1 {
};
};
};
/ {
node1 {
a-string-property = “A string”;
a-string-list-property = “first string”, “second string”;
a-byte-data-property = [0x01 0x23 0x34 0x56];
child-node1 {
first-child-property;
second-child-property = <1>;
a-string-property = “Hello, world”;
};
child-node2 {
};
};
node2 {
an-empty-property;
a-cell-property = <1 2 3 4>; /* each number (cell) is a uint32 */
child-node1 {
};
};
};
上述。dts文件并没有什么真实的用途,但它基本表征了一个Device
Tree源文件的结构:
1个root结点“/”;
root结点下面含一系列子结点,本例中为“node1” 和
“node2”;
结点“node1”下又含有一系列子结点,本例中为“child-node1” 和
“child-node2”;
各结点都有一系列属性。这些属性可能为空,如“
an-empty-property”;可能为字符串,如“a-string-property”;可能为字符串数组,如“a-string-list-property”;可能为Cells(由u32整数组成),如“second-child-property”,可能为二进制数,如“a-byte-data-property”。
下面以一个最简单的machine为例来看如何写一个。dts文件。假设此machine的配置如下:
1个双核ARM
Cortex-A9 32位处理器;
ARM的local bus上的内存映射区域分布了2个串口(分别位于0x101F1000 和
0x101F2000)、GPIO控制器(位于0x101F3000)、SPI控制器(位于0x10170000)、中断控制器(位于0x10140000)和一个external
bus桥;
External bus桥上又连接了SMC SMC91111
Ethernet(位于0x10100000)、I2C控制器(位于0x10160000)、64MB NOR
Flash(位于0x30000000);
External bus桥上连接的I2C控制器所对应的I2C总线上又连接了Maxim
DS1338实时钟(I2C地址为0x58)。
其对应的。dts文件为:
[plain] view
plainprint?
/ {
compatible = “acme,coyotes-revenge”;
#address-cells = <1>;
#size-cells = <1>;
interrupt-parent = <&intc>;
cpus {
#address-cells = <1>;
#size-cells = <0>;
cpu@0 {
compatible = “arm,cortex-a9”;
reg = <0>;
};
cpu@1 {
compatible = “arm,cortex-a9”;
reg = <1>;
};
};
serial@101f0000 {
compatible = “arm,pl011”;
reg = <0x101f0000 0x1000 >;
interrupts = < 1 0 >;
};
serial@101f2000 {
compatible = “arm,pl011”;
reg = <0x101f2000 0x1000 >;
interrupts = < 2 0 >;
};
gpio@101f3000 {
compatible = “arm,pl061”;
reg = <0x101f3000 0x1000
0x101f4000 0x0010>;
interrupts = < 3 0 >;
};
intc: interrupt-controller@10140000 {
compatible = “arm,pl190”;
reg = <0x10140000 0x1000 >;
interrupt-controller;
#interrupt-cells = <2>;
};
spi@10115000 {
compatible = “arm,pl022”;
reg = <0x10115000 0x1000 >;
interrupts = < 4 0 >;
};
external-bus {
#address-cells = <2>
#size-cells = <1>;
ranges = <0 0 0x10100000 0x10000 // Chipselect 1, Ethernet
1 0 0x10160000 0x10000 // Chipselect 2, i2c controller
2 0 0x30000000 0x1000000>; // Chipselect 3, NOR Flash
ethernet@0,0 {
compatible = “smc,smc91c111”;
reg = <0 0 0x1000>;
interrupts = < 5 2 >;
};
i2c@1,0 {
compatible = “acme,a1234-i2c-bus”;
#address-cells = <1>;
#size-cells = <0>;
reg = <1 0 0x1000>;
interrupts = < 6 2 >;
rtc@58 {
compatible = “maxim,ds1338”;
reg = <58>;
interrupts = < 7 3 >;
};
};
flash@2,0 {
compatible = “samsung,k8f1315ebm”, “cfi-flash”;
reg = <2 0 0x4000000>;
};
};
};
/ {
compatible = “acme,coyotes-revenge”;
#address-cells = <1>;
#size-cells = <1>;
interrupt-parent = <&intc>;
cpus {
#address-cells = <1>;
#size-cells = <0>;
cpu@0 {
compatible = “arm,cortex-a9”;
reg = <0>;
};
cpu@1 {
compatible = “arm,cortex-a9”;
reg = <1>;
};
};
serial@101f0000 {
compatible = “arm,pl011”;
reg = <0x101f0000 0x1000 >;
interrupts = < 1 0 >;
};
serial@101f2000 {
compatible = “arm,pl011”;
reg = <0x101f2000 0x1000 >;
interrupts = < 2 0 >;
};
gpio@101f3000 {
compatible = “arm,pl061”;
reg = <0x101f3000 0x1000
0x101f4000 0x0010>;
interrupts = < 3 0 >;
};
intc: interrupt-controller@10140000 {
compatible = “arm,pl190”;
reg = <0x10140000 0x1000 >;
interrupt-controller;
#interrupt-cells = <2>;
};
spi@10115000 {
compatible = “arm,pl022”;
reg = <0x10115000 0x1000 >;
interrupts = < 4 0 >;
};
external-bus {
#address-cells = <2>
#size-cells = <1>;
ranges = <0 0 0x10100000 0x10000 // Chipselect 1, Ethernet
1 0 0x10160000 0x10000 // Chipselect 2, i2c controller
2 0 0x30000000 0x1000000>; // Chipselect 3, NOR Flash
ethernet@0,0 {
compatible = “smc,smc91c111”;
reg = <0 0 0x1000>;
interrupts = < 5 2 >;
};
i2c@1,0 {
compatible = “acme,a1234-i2c-bus”;
#address-cells = <1>;
#size-cells = <0>;
reg = <1 0 0x1000>;
interrupts = < 6 2 >;
rtc@58 {
compatible = “maxim,ds1338”;
reg = <58>;
interrupts = < 7 3 >;
};
};
flash@2,0 {
compatible = “samsung,k8f1315ebm”, “cfi-flash”;
reg = <2 0 0x4000000>;
};
};
};
上述。dts文件中,root结点“/”的compatible 属性compatible =
“acme,coyotes-revenge”;定义了系统的名称,它的组织形式为:<manufacturer>,<model>。Linux内核透过root结点“/”的compatible
属性即可判断它启动的是什么machine。
在。dts文件的每个设备,都有一个compatible
属性,compatible属性用户驱动和设备的绑定。compatible
属性是一个字符串的列表,列表中的第一个字符串表征了结点代表的确切设备,形式为“<manufacturer>,<model>”,其后的字符串表征可兼容的其他设备。可以说前面的是特指,后面的则涵盖更广的范围。如在arch/arm/boot/dts/vexpress-v2m.dtsi中的Flash结点:
[plain] view
plainprint?
flash@0,00000000 {
compatible = “arm,vexpress-flash”, “cfi-flash”;
reg = <0 0x00000000 0x04000000>,
<1 0x00000000 0x04000000>;
bank-width = <4>;
};
flash@0,00000000 {
compatible = “arm,vexpress-flash”, “cfi-flash”;
reg = <0 0x00000000 0x04000000>,
<1 0x00000000 0x04000000>;
bank-width = <4>;
};
compatible属性的第2个字符串“cfi-flash”明显比第1个字符串“arm,vexpress-flash”涵盖的范围更广。
再比如,Freescale
MPC8349 SoC含一个串口设备,它实现了国家半导体(National Semiconctor)的ns16550
寄存器接口。则MPC8349串口设备的compatible属性为compatible = “fsl,mpc8349-uart”,
“ns16550”。其中,fsl,mpc8349-uart指代了确切的设备, ns16550代表该设备与National Semiconctor
的16550
UART保持了寄存器兼容。
接下来root结点“/”的cpus子结点下面又包含2个cpu子结点,描述了此machine上的2个CPU,并且二者的compatible
属性为“arm,cortex-a9”。
注意cpus和cpus的2个cpu子结点的命名,它们遵循的组织形式为:<name>[@<unit-address>],<>中的内容是必选项,[]中的则为可选项。name是一个ASCII字符串,用于描述结点对应的设备类型,如3com
Ethernet适配器对应的结点name宜为ethernet,而不是3com509。如果一个结点描述的设备有地址,则应该给出@unit-address。多个相同类型设备结点的name可以一样,只要unit-address不同即可,如本例中含有cpu@0、cpu@1以及serial@101f0000与serial@101f2000这样的同名结点。设备的unit-address地址也经常在其对应结点的reg属性中给出。ePAPR标准给出了结点命名的规范。

‘叁’ 高通怎么分析modem log

主要看是高通还是MTK了。不过大致相当,只是log文件名称不一样而已
手机的android log(包含 main_log、events_log、kernel_log),mainlog记录手机android上层app以及framework相关活动的log,比如你写的app打印的log,就在这里面;eventslog则主要是ActivityManager、powerManager等相关的log;Kernellog则主要是驱动相关的log。
Modem log,主要是通话相关的,比如信号强弱、连接那个网络等等
还有网络相关的netlog,看网络链接情况,抓取网络包等等
主要是以上这三个,其它还有data/anr 目录下的traces/tombstones等等,分析死机、重启还是很重要的。

看应用申请什么权限,就看mainlog就行,但是不一定有,因为一般手机log不会放开。

你可以在终端里键入命令查看其申请了什么权限: adb shell mpsys package <包名>,或者反编译其apk,查看其AndroidManifest.xml文件。

‘肆’ 请问目前三星n8010可以升级到安卓的哪个最新系统啊

三星目前最新系统版本是note5的安卓5.11系统,三星note3有两个版本一个是高通cpu版国行的,一个是三星猎户cpu版本韩版的,两个版本的note3都能线刷5.0的系统,高通cpu版本note3能刷第三方5.11

‘伍’ 骁龙888每秒运算多少次

智能手机推动了AI的普及,AI美颜、AI夜景、AI语音助手等功能也让众多消费者感受到了AI的乐趣,雷锋网此前的文章《拯救拍照手残党,告别选择困难!手机AI还有这么多新奇玩法》曾介绍过。

高性能的硬件和灵活易用的软件都已经准备好,接下来AI创新的核心无疑是开发者。在AI生态的建设上,高通的态度也是开放,包括计划与开源社区在TVM编译器方面,以及在GitHub上开源AI模型增效工具包。

今年,高通也在中国举办了首届AI创新挑战赛。

随着AI生态的发展和繁荣,会有哪些让人意向不到的应用?5G+AI又会给哪些领域带来革新?

‘陆’ 高通android指纹模块怎么编译

fp_shutdown_active {
qcom,pins = <&gp 23>;
qcom,pin-func = <0>;
qcom,num-grp-pins = <1>;
label = "shutdown_gpio_active";

fp_shutdown_active: fp_shutdown_active {
drive-strength = <6>;
<span style="color:#ff0000;">output-high;</span>
bias-disable= <0>;
};
};
fp_shutdown_suspend {
qcom,pins = <&gp 23>;
qcom,pin-func = <0>;
qcom,num-grp-pins = <1>;
label = "shutdown_gpio_suspend";

fp_shutdown_suspend: fp_shutdown_suspend {
drive-strength = <2>;
<span style="color:#ff0000;">out

‘柒’ 高通 ap_standard_oem test_device的区别是什么

ap_standard_oem带源码,可以自己修改代码编译镜像;
test_device是高通发布的编译好的镜像。

‘捌’ 编译高通出现这个错误,哪位大神帮个忙 /bin/bash: jar: command not found

没有安装jdk,jar是jdk里包含的命令。下载安装jdk即可。注意,jre里没这个命令。

‘玖’ ubuntu12.04编译android源码要多久

这个关键是要看你的电脑配置情况,以及代码的附加情况,有的平台软件会附加很多东西上去,编译就比较慢了。
我们这边使用的是四核八线程的电脑,32GB内存,
原生代码 4.4 八线程编译40分钟左右,5.1,一个半小时左右,6.0的大约一个小时,以上是原生代码编译模拟器的时间。

高通代码6.0编译一般需要两个小时左右,mtk的也是两个小时左右,

‘拾’ 最好的手机处理器是多少

高通骁龙8010

阅读全文

与编译高通8010相关的资料

热点内容
php链接正则表达式 浏览:964
安卓版苹果手机怎么转手 浏览:101
安卓怎么修改app的名字 浏览:135
域名服务器可将域名地址 浏览:721
广州服务器机柜怎么卖 浏览:236
转让腾讯云三年服务器 浏览:252
网易云音乐加密怎么处理 浏览:387
编译小视频软件 浏览:595
盒马app买东西怎么送 浏览:119
编译原理国产 浏览:691
在线用pdf转word 浏览:424
咪咕app怎么发表文章 浏览:209
phpsftp上传 浏览:936
php可以干嘛 浏览:879
梁箍筋加密区需要满绑扎吗 浏览:330
程序员半个月工资多少 浏览:821
云服务器租赁还是私有 浏览:752
php七牛视频上传 浏览:14
php五星 浏览:311
使用api访问外部文件夹 浏览:220