• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > msm8909+android5.1.1--打开调试(debug)串口

msm8909+android5.1.1--打开调试(debug)串口

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了msm8909,高通msm8909,msm8909处理器,msm8909与msm8916,高通骁龙msm8909等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

msm8909+android5.1.1--打开调试(debug)串口


msm8909+android5.1.1--打开调试(debug)串口

1.共同修改的地方

(1)kernel\arch\arm\configs\msm8909-1gb-CB03_defconfig

使以下项有效

CONFIG_SERIAL_MSM_HSL=y

CONFIG_SERIAL_MSM_HSL_CONSOLE=y

 

增加以下项

CONFIG_DEBUG_LL=y

CONFIG_EARLY_PRINTK=y

 

(2)Root/bootable/bootloader/lk/project/msms8909.mk

确保DEFINES += WITH_DEBUG_UART=1

 

2.V1.0主板

\

图1

UART1_TX-------GPIO_4

UART1_RX-------GPIO_5

 

(3)device\qcom\sepolicy\common\file_contexts----需要make –j4才生效

使以下项有效

/dev/ttyHSL0u:object_r:console_device:s0

 

(4)kernel\arch\arm\boot\dts\qcom\msm8909-cb03.dtsi

使以下项不生效

spi0 = &spi_0; /* SPI0 controller device*/

使以下项有效

 

      blsp1_uart1:[email protected] {
              compatible= "qcom,msm-lsuart-v14";
              reg= <0x78af000 0x200>;
              interrupts= <0 107 0>;
              status= "disabled";
              clocks= <&clock_gcc clk_gcc_blsp1_uart1_apps_clk>,
                      <&clock_gcc clk_gcc_blsp1_ahb_clk>;
              clock-names= "core_clk", "iface_clk";
       };

 

(5)kernel\arch\arm\boot\dts\qcom\msm8909-qrd-cb03.dtsi

使以下项有效

 

&blsp1_uart1 {
       status= "ok";
       pinctrl-names= "default";
       pinctrl-0= <&uart_console_sleep>;
};

 

3.V1.1主板

\

 

图2

UART2_TX-------GPIO_20

UART2_RX-------GPIO_21

\

 

图3

 

UART_VDD_EN------I2C扩展IC XRA1201的P6引脚。

 

所做的修改如下

(1)\bootable\bootloader\lk\platform\msm8909\ msm8909-clock.c

msm_clocks_msm8909[]增加:

 

CLK_LOOKUP("uart2_iface_clk",gcc_blsp1_ahb_clk.c),
CLK_LOOKUP("uart2_core_clk",  gcc_blsp1_uart2_apps_clk.c),

 

(2)bootable\bootloader\lk\target\msm8909\init.c

target_early_init()函数下

 

uart_dm_init(1, 0, BLSP1_UART0_BASE);
改为
uart_dm_init(2,0, BLSP_UART1_BASE);

 

(3)\bootable\bootloader\lk\platform\msm8909\gpio.c

target_early_init()--->uart_dm_init(id)--->gpio_config_uart_dm()

 

/* configure rx gpio */
       gpio_tlmm_config(5,2, GPIO_INPUT, GPIO_NO_PULL,
                            GPIO_8MA,GPIO_DISABLE);
 
       /*configure tx gpio */
       gpio_tlmm_config(4,2, GPIO_OUTPUT, GPIO_NO_PULL,
                            GPIO_8MA,GPIO_DISABLE);
       #endif

 

改为

 

/* configure rx gpio */
       gpio_tlmm_config(21, 3, GPIO_INPUT, GPIO_NO_PULL,
                            GPIO_8MA,GPIO_DISABLE);
 
       /*configure tx gpio */
       gpio_tlmm_config(20, 3, GPIO_OUTPUT, GPIO_NO_PULL,
                            GPIO_8MA,GPIO_DISABLE);

 

(4)\kernel\arch\arm\mach-msm\include\mach\msm_iomap-8909.h

#define MSM_DEBUG_UART_PHYS 0x78AF000改为0x78B0000

 

(5)device\qcom\sepolicy\common\file_contexts

增加:

/dev/ttyHSL1 u:object_r:console_device:s0

如果有/dev/ttyHSL0 u:object_r:console_device:s0也不影响。

 

(6)kernel\arch\arm\boot\dts\qcom\msm8909-cb03.dtsi

确保下面有效

 

blsp1_uart2: [email protected] {
              compatible= "qcom,msm-lsuart-v14";
              reg= <0x78b0000 0x200>;
              interrupts= <0 108 0>;
              status= "disabled";
              clocks= <&clock_gcc clk_gcc_blsp1_uart2_apps_clk>,
                      <&clock_gcc clk_gcc_blsp1_ahb_clk>;
              clock-names= "core_clk", "iface_clk";
       };

 

同时注释掉blsp1_uart1,因为BLSP1是作为SPI。

 

(7)\kernel\drivers\misc\msmgpio_ctrl.c

msmgpio_ctrl_probe()增加

gpio_direction_output(pdata->uart1_vcc,1);//确保3.3V供电

 

这里就算是改为gpio_direction_output(pdata->uart1_vcc,0);也可输出调试信息,这里可能是其他地方有电过来。

 

(8)msm8909-qrd-skue-cb03.dtsi,比较重要

 

/ {
       aliases{
              serial1= &blsp1_uart2;// should be no serial1, 0 for console
       };
};

 

这里确保为采用的串口,下面给出相关介绍

\kernel\Documentation\devicetree\bindings\tty\serial\msm_serial.txt

 

Aliases:
An alias may optionally be used to bind theserial device to a tty device
(ttyHSLx) with a given line number. Aliasesare of the form serial where 
is an integer representing the line numberto use. On systems with multiple
serial devices present it is recommendedthat an alias be defined for each such
device.

 

(9)msm8909-pinctrl-cb03.dtsi和msm8909-pinctrl.dtsi

 

pmx-uartconsole {
                     qcom,pins= <&gp 4>, <&gp 5>;
                     qcom,num-grp-pins= <2>;
                     qcom,pin-func= <2>;
                     label= "uart-console";
                     uart_console_sleep:uart-console {
                            drive-strength= <2>;
                            bias-pull-down;
                     };
              };

 

把这两个文件下的qcom,pins =<&gp 4>, <&gp 5>;改为qcom,pins = <&gp 20>, <&gp 21>;

 

(10) \device\qcom\msm8909\ BoardConfig.mk

BOARD_KERNEL_CMDLINE :=console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 androidboot.hardware=qcomuser_debug=31 msm_rtb.filter=0x3F ehci-hcd.park=3androidboot.bootdevice=7824900.sdhci lpm_levels.sleep_disabled=1 earlyprintk

上面的ttyHSL0统一改为ttyHSL1,同时去掉最后面的earlyprintk,否则启动失败信息如下:

 

Android Bootloader - UART_DM Initialized!!!
[70] Not able to search the panel:
[80] Logo config doesn't match with fbconfig. Fall back default logo
[520] Channel alloc freed
Uncompressing Linux... done, booting thekernel.

 

一开机可能就卡在这里,或是多次自动反复重启后停止这里,输出的都是这些信息。只要加上earlyprintk,就有这问题。

 

(11) kernel\arch\arm\boot\dts\qcom\msm8909-cb03.dtsi

 

4.V1.0主板和V1.1主板可显示调试信息的差异

 

V1.0主板可以输出更早启动阶段的调试信息,应该是由UART1改为UART2后,还有一些地方没有改好,如下:

 

Format: Log Type - Time(microsec) - Message- Optional Info
Log Type: B - Since Boot(Power OnReset),  D - Delta,  S - Statistic
S -QC_IMAGE_VERSION_STRING=BOOT.BF.3.1.2.C2-00014
S - IMAGE_VARIANT_STRING=DAASANAZA
S - OEM_IMAGE_VERSION_STRING=BU3-gongyong5
S - Boot Config, 0x000000e1
B -     1566 - PBL, Start
B -     4542 - bootable_media_detect_entry, Start
B -    74039 - bootable_media_detect_success, Start
B -    74043 - elf_loader_entry, Start
B -    75610 - auth_hash_seg_entry, Start
B -    75871 - auth_hash_seg_exit, Start
B -    90062 - elf_segs_hash_verify_entry, Start
B -   148922 - PBL, End
B -   170342 - SBL1, Start
B -   231739 - boot_flash_in



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • msm8909+android5.1.1--打开调试(debug)串口
  • MSM8909+Android5.1.1键盘驱动---sn7326介绍
  • MSM8909+Android5.1.1键盘驱动浅析
  • msm8909+android5.1.1编译前配置及增加新项目和产品所需分支
  • msm8909+android5.1.1 由BLSP3改为BLSP1后SPI读写速度慢问题解决

相关文章

  • 2017-05-26我的Android进阶之旅之Android自定义View来实现解析lrc歌词同步滚动、上下拖动、缩放歌词等功能
  • 2017-05-26android开发之路03,android之路03
  • 2017-05-26RecyclerView 结合 CardView 使用(二),recyclerview使用
  • 2017-05-26android.view.InflateException: Binary XML file line #34: Error inflating class,
  • 2017-05-26andriod 图片选择器,
  • 2017-05-26Android应用程序安装过程浅析
  • 2017-05-26改变RadioButton的文字位置以及距离,radiobutton文字
  • 2017-05-26Android TabHost使用,androidtabhost使用
  • 2017-05-26Android pendingInten 用法详解
  • 2017-05-26Android的开机流程及对应源码位置分析,android源码

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 第三方知乎专栏应用Android源码,android源码
    • Android程序版本更新--通知栏更新下载安装,android程序版本
    • android:常用的AlertDialog对话框及自定义对话框
    • Android 6.0 运行时权限处理完全解析
    • Android设备上获取照片、裁剪图片、压缩图片
    • GsonFormat插件从配置到使用,gsonformat插件配置
    • Android-将RGB彩色图转换为灰度图,
    • Hive 1.2.1&Spark&Sqoop安装指南
    • Android View体系(九)自定义View
    • Android代码优化小技巧,android代码小技巧

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有