CPU:RK3399

系统:Android 7.1.2

为了降低成本,主板将 Type-C 改为 MicroUSB 接口,节省了 fusb302芯片

参考 Rockchip 的官方文档第4部分:Micro USB2.0 OTG DTS配置

RKDocs/common/usb/Rockchip-Developer-Guide-Linux4.4-RK3399-USB-DTS-CN.pdf

&tcphy0 {
status = "disabled";
}; &u2phy0 {
status = "okay"; /* Micro USB2 PHY 删除了extcon属性 */
otg-vbus-gpios = <&gpio3 RK_PC6 GPIO_ACTIVE_HIGH>; /* Vbus GPIO配置 */
u2phy0_otg: otg-port { /* 文档中错误写成了u2phy1_otg */
status = "okay";
};
......
}; &usbdrd3_0 {
extcon = <&u2phy0>; /* Micro USB3控制器的extcon属性引用u2phy0 */
status = "okay";
}; &usbdrd_dwc3_0 {
dr_mode = "otg"; /* Micro USB3控制器的dr_mode配置为otg */
maximum-speed = "high-speed"; /* maximum-speed 属性配置为high-speed */
phys = <&u2phy0_otg>; /* phys 属性只引用USB2 PHY节点 */
phy-names = "usb2-phy";
status = "okay";
};

按照文档中说明,修改这部分就可以了,但是编译内核部分烧录后,不能进安卓系统,串口一直循环打印如下:

[    9.878630] init: Starting service 'surfaceflinger'...
[ 10.294620] init: Service 'surfaceflinger' (pid ) killed by signal
[ 10.294664] init: Service 'surfaceflinger' (pid ) killing any children in process group
[ 10.294709] init: Service 'zygote' is being killed...
[ 10.356365] init: Service 'zygote' (pid ) killed by signal
[ 10.356441] init: Service 'zygote' (pid ) killing any children in process group
[ 10.356634] init: write_file: Unable to open '/sys/android_power/request_state': No such file or directory
[ 10.356778] init: write_file: Unable to write to '/sys/power/state': Invalid argument
[ 10.356805] init: Service 'audioserver' is being killed...
[ 10.357239] init: Service 'cameraserver' is being killed...
[ 10.357327] init: Service 'media' is being killed...
[ 10.357454] init: Service 'netd' is being killed...
[ 10.358943] init: Starting service 'zygote'...
[ 10.364342] init: Service 'audioserver' (pid ) killed by signal
[ 10.364427] init: Service 'audioserver' (pid ) killing any children in process group
[ 10.365879] init: Starting service 'audioserver'...
[ 10.369573] init: Service 'netd' (pid ) killed by signal
[ 10.369677] init: Service 'netd' (pid ) killing any children in process group
[ 10.370582] init: Untracked pid killed by signal
[ 10.374127] init: Service 'media' (pid ) killed by signal
[ 10.374192] init: Service 'media' (pid ) killing any children in process group
[ 10.375119] init: Service 'cameraserver' (pid ) killed by signal
[ 10.375158] init: Service 'cameraserver' (pid ) killing any children in process group
[ 10.376450] init: Starting service 'media'...
[ 10.378976] init: Starting service 'cameraserver'...
[ 10.382610] init: couldn't write 580 to /dev/cpuset/camera-daemon/tasks: No such file or directory
[ 12.079202] init: Starting service 'netd'...

开始怀疑是因为没有全部编译的问题,但是全部编译烧录后,还是不能开机,一直提示找不到 drm device,串口一直循环打印如下:

__bionic_open_tzdata: couldn't find any tzdata when looking for GMT!
Starting recovery (pid ) on Fri Jan ::
bootmode = emmc
recovery filesystem table
=========================
/mnt/internal_sd vfat /dev/block/platform/fe330000.sdhci/by-name/user
/mnt/external_sd vfat /dev/block/mmcblk0p1
/system ext4 /dev/block/platform/fe330000.sdhci/by-name/system
/cache ext4 /dev/block/platform/fe330000.sdhci/by-name/cache
/metadata ext4 /dev/block/platform/fe330000.sdhci/by-name/metadata
/data ext4 /dev/block/platform/fe330000.sdhci/by-name/userdata
/cust ext4 /dev/block/platform/fe330000.sdhci/by-name/cust
/custom ext4 /dev/block/platform/fe330000.sdhci/by-name/custom
/misc emmc /dev/block/platform/fe330000.sdhci/by-name/misc
/uboot emmc /dev/block/platform/fe330000.sdhci/by-name/uboot
/charge emmc /dev/block/platform/fe330000.sdhci/by-name/charge
/resource emmc /dev/block/platform/fe330000.sdhci/by-name/resource
/parameter emmc /dev/block/platform/fe330000.sdhci/by-name/parameter
/boot emmc /dev/block/platform/fe330000.sdhci/by-name/boot
/recovery emmc /dev/block/platform/fe330000.sdhci/by-name/recovery
/backup emmc /dev/block/platform/fe330000.sdhci/by-name/backup
/trust emmc /dev/block/platform/fe330000.sdhci/by-name/trust
/baseparameter emmc /dev/block/platform/fe330000.sdhci/by-name/baseparameter
/frp emmc /dev/block/platform/fe330000.sdhci/by-name/frp
/tmp ramdisk ramdisk emmc_point is /dev/block/mmcblk1
sd_point is (null)
sd_point_2 is (null)
I:InternalSD_ROOT: /mnt/internal_sd
I:ExternalSD_ROOT: /mnt/external_sd
read cmdline
[ 4.309235] fs_mgr: Warning: unknown flag resize
I:Boot command: boot-recovery
I:Got arguments from boot message
[ 4.311229] fs_mgr: Warning: unknown flag resize
=== start void dumpCmdArgs(int, char **): ===
argv[] = recovery.
argv[] = --wipe_all.
locale is [en_US]
stage is []
reason is [(null)]
cannot find/open a drm device: No such file or directory
cannot open fb0: No such file or directory
[ 4.352842] init: Service 'recovery' (pid ) killed by signal
[ 4.352952] init: Service 'recovery' (pid ) killing any children in process group
[ 9.358734] init: Starting service 'recovery'...

查看 dts 文件,里面还有一个地方 &cdn_dp 使用了 fusb0,屏蔽此处即可开机

&cdn_dp {
status = "disabled";
extcon = <&fusb0>;
phys = <&tcphy0_dp>;
};

最后建议把 i2c 中与 fusb302 通讯的部分也 disable 掉,此处不改也没有问题,只是 i2c 不通,但可以正常开机。

fusb0: fusb30x@ {
compatible = "fairchild,fusb302";
reg = <0x22>;
pinctrl-names = "default";
pinctrl- = <&fusb0_int>;
int-n-gpios = <&gpio1 GPIO_ACTIVE_HIGH>;
vbus-5v-gpios = <&gpio4 GPIO_ACTIVE_HIGH>;
status = "disabled";
};

[RK3399] Type-C改为MicroUSB的更多相关文章

  1. ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'type=InnoDB' at line 7

    问题: 使用hibernate4.1.1,数据库使用mysql5.1.30,使用hibernate自动生成数据库表时,hibernate方言使用org.hibernate.dialect.MySQLI ...

  2. MYSQL中'TYPE=MyISAM'错误的解决方案

    create 语句后面的TYPE=MyISAM TYPE=MyISAM 和 ENGINE=MyISAM 都是设置数据库存储引擎的语句 ,(老版本的MySQL使用TYPE而不是ENGINE(例如,TYP ...

  3. Hibernate4和Mysql5.1以上版本创建表出错 type=InnDB

    在搭建springmvc框架时,底层使用hibernate4.1.8,数据库使用mysql5.1,使用hibernate自动生成数据库表 时,hibernate方言使用org.hibernate.di ...

  4. 去掉 input type="number" 右边图标

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. Discuz搜索改为指向帖子

    安装的版本是DiscuzX2.5,搜索的时候发现默认指向的是门户里的文章搜索,但程序都没有安装门户,只有论坛,所以不能搜索文章. 在网上找了半天终于找到修改的办法了. <input name=& ...

  6. 如何移除HTML5的type=""number""的input标签的上下箭头

    初次使用input的数字输入类型type="number"时会发现默认有个上下的箭头,如下图: 很明显这里不需要这个默认箭头,那么我们如何移出这个默认样式呢? 第一种方式,写css ...

  7. 初触hibernate01--MYSQL建表时type=InnoDB和Engine=InnoDB注意点

    第一次运行程序时,将Hibernte中的hibernate.hbm2ddl.auto设置成create(或者是update),让Hibernate帮助自动建表,但不成功,报了如下信息: You hav ...

  8. 如何移除HTML5 input在type="number"时的上下小箭头

      在chrome下: input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{    -webkit-appearance ...

  9. 【转】移除HTML5 input在type="number"时的上下小箭头

    在chrome下: input::-webkit-outer-spin-button, input::-webkit-inner-spin-button{     -webkit-appearance ...

随机推荐

  1. 用ajax和PHP实现简单的流程管理

    首先要先有一个新建流程的页面xinjian.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ...

  2. java - day013 - 流, FileInputStream, BufferedInputStream,

    流 Stream 把数据的读写,抽象成数据在管道中流动. 流是单向的 输入流, 只能用来读取数据 输出流, 只能用来输出数据 流只能顺序读写数据 流只能一次性从头到尾读写数据 流动过的数据,不能反复流 ...

  3. Linux命令——procinfo

    简介 proc文件系统是一个虚拟文件系统,包含有关进程和系统信息的文件. proc 文件系统开机时自动挂载并映射到/proc目录.许多程序从/proc目录中检索信息,对其进行处理并使其易于用于各种目的 ...

  4. 解析Linux中LVM与磁盘配额

    LVM 逻辑卷管理 LVM 概述 LVM 是 Linux 操作系统中对磁盘分区进行管理的一种逻辑机制,它是建立在硬盘和分区之上.文件系统之下的一个逻辑层,在建立文件系统时屏蔽了下层的磁盘分区布局,因此 ...

  5. nginx的应用【虚拟主机】

    Nginx主要应用: 静态web服务器 负载均衡 静态代理虚拟主机 虚拟主机 :虚拟主机,就是把一台物理服务器划分成多个“虚拟”的服务器,这样我们的一台物理服务器就可以当做多个服务器来使用,从而可以配 ...

  6. master-worker常驻型程序代码修改哪些需要重启master或者worker

    之前在yii的项目里用redis作为消息队列,现在很多任务需要延迟需求,于是把之前redis的消息队列替换成了rabbitmq 于是使用yii的yii2-queue这个组件 但是由于提供的yii qu ...

  7. WebService在ssm框架中的简单应用

    WebService的概念 Web service是一个平台独立的,低耦合的,自包含的.基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述.发布.发现.协调和配 ...

  8. 阿里 Linux服务器外网无法连接MySQL解决方法

    我的服务器买的是阿里云ECS linux系统.为了更好的操作数据库,我希望可以用navicat for mysql管理我的数据库. 当我按照正常的模式去链接mysql的时候, 报错提示: 2003-  ...

  9. [Dart] final vs const

    void main() { ; print(a); ; print(b); final c = 'Hello'; // c = 'Hello again'; // Uncomment to throw ...

  10. UEFI分区损坏重建指南

    自从国庆假期发了这两篇博客后,我这个人就像是从博客园消失了一样,半个多月没更新..自从10月5号把UEFI分区删掉之后,我的电脑就因为没有引导,找不到系统而无法使用了.所以这篇博客,就分享一下我在这半 ...