imx6sl 调试记录
公板芯片型号:MCIMX6L8DVN10AB
我的板子芯片型号:MCIMX6L2EVN10AB no GPU ,no EPDC
调板子时一定要注意,首先要搞清楚硬件芯片的具体差异,然后去nxp的官网找区别,网址如下:https://community.nxp.com/search.jspa?q=imx6sl%20no%20gpu%20no%20epdc
一直认为gpu,epdc是内核起来一定时间后才初始化的,这是错误的。
之前程序打印信息:Uncompressing Linux... done, booting the kernel.然后就重启了,当时就认为是kernel启动的汇编有问题,一直跟,追后发现程序已经跑到内核里面了,最后死在asmlinkage void __init start_kernel(void)中的rest_init();,跟到这就不知道什么原因导致死机,因为rest_init()是创建系统的0号进程。最后只能换方法。到freescale官网上找到类似的问题,屏蔽掉epdc,和gpu就可以正常启动了,但是程序跑着跑着还是会重启
yv ...................enter do_one_initcall=1
calling  init_machine_late+0x0/0x28 @ 1
cpu cpu0: dev_pm_opp_get_opp_count: device OPP not found (-19)
initcall init_machine_late+0x0/0x28 returned 0 after 7224 usecs
yv ...................enter do_one_initcall=1
calling  imx_amp_power_init+0x0/0xdc @ 1
initcall imx_amp_power_init+0x0/0xdc returned 0 after 1 usecs
yv ...................enter do_one_initcall=1
calling  init_oops_id+0x0/0x40 @ 1
U-Boot 2015.04 (Sep 28 2016 - 14:14:49)
并且不是死在某一个驱动函数里,因为calling init_oops_id+0x0/0x40 @ 1已经执行完了,目前只能去内核里面找,函数下一个要执行什么驱动初始化,在System.map文件中找到
58470 809a2c78 T __initcall7_start
58471 809a2c78 t __initcall_init_machine_late7
58472 809a2c7c t __initcall_imx_amp_power_init7
58473 809a2c80 t __initcall_init_oops_id7
58474 809a2c84 t __initcall_pm_qos_power_init7
猜测下一个执行的应该是pm_qos_power_init,到内核里把这一部分相关的屏蔽掉,内核没有从启现象了。但是
mmcblk1: mmc1:0007 SD16G 14.4 GiB (ro)
 mmcblk1: p1 p2
wm8962 1-001a: Failed to read ID register
wm8962: probe of 1-001a failed with error -110
imx-wm8962 sound.18: failed to find codec platform device
imx-wm8962: probe of sound.18 failed with error -22
imx-spdif sound-spdif.19: snd-soc-dummy-dai <-> 2004000.spdif mapping ok
NET: Registered protocol family 26
TCP: cubic registered
NET: Registered protocol family 10
sit: IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
can: controller area network core (rev 20120528 abi 9)
NET: Registered protocol family 29
can: raw protocol (rev 20120528)
can: broadcast manager protocol (rev 20120528 t)
can: netlink gateway (rev 20130117) max_hops=1
Bluetooth: RFCOMM TTY layer initialized
Bluetooth: RFCOMM socket layer initialized
Bluetooth: RFCOMM ver 1.11
Bluetooth: BNEP (Ethernet Emulation) ver 1.3
Bluetooth: BNEP filters: protocol multicast
Bluetooth: BNEP socket layer initialized
Bluetooth: HIDP (Human Interface Emulation) ver 1.2
Bluetooth: HIDP socket layer initialized
8021q: 802.1Q VLAN Support v1.8
Key type dns_resolver registered
cpu cpu0: failed to init cpufreq table: -22
imx6q-cpufreq: probe of imx6q-cpufreq failed with error -22
SWBST: disabling
SW4: disabling
wm8962-supply-4v2: disabling
wm8962-supply-3v15: disabling
usb_otg1_vbus: disabling
regulator-dummy: disabling
imx mcc test is registered.
snvs_rtc 20cc034.snvs-rtc-lp: setting system clock to 1970-01-01 00:00:00 UTC (0)
ALSA device list:
  #0: imx-spdif
VFS: Cannot open root device "mmcblk1p2" or unknown-block(179,2): error -30
Please append a correct "root=" boot option; here are the available partitions:
1f00            8192 mtdblock0  (driver?)
b300        15159296 mmcblk1  driver: mmcblk
  b301          501760 mmcblk1p1 000ab1ac-01
  b302        14544896 mmcblk1p2 000ab1ac-02
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(179,2)
error -30显示是sd卡的读写权限问题,上面还识别成只读,所以去量sd卡的WP脚,果不其然,此脚一直为高,无论卡上锁还是不上锁。找到wp的配置管脚把它从上拉改成下拉,kernel总算可以正常启动了。
imx6sl 调试记录的更多相关文章
- SPI 核软件调试记录
		SPI 核软件调试记录 1.首先说说int SpiFlashWaitForFlashReady(void)这一函数,基本上其它函数在执行的时候,都会事先执行一次此函数. 因为此函数的作用主要是用 ... 
- Video Timing Controller v6.1软件调试记录
		Video Timing Controller v6.1软件调试记录 GUI配置: . case XVTC_VMODE_PAL: //576i@50 { TimingPtr->Interlace ... 
- Video Test Pattern Generator(7.0)软件调试记录
		Video Test Pattern Generator(7.0)软件调试记录 . XVidC_VideoMode XVIDC_VM_576_50_I = XVIDC_VM_720x576_50_I ... 
- MA82G5D16AS16 主频调试记录
		MA82G5D16AS16 主频调试记录 当 SCKS 设置 为 MCKDO / 128 时 MCU 的电流为 0.58mA,100UF 电容可以维持 0.5S,大概可以满足. 但是需要注意外围的线路 ... 
- Apusic中间件结合MyEclipse进行远程调试记录
		Apusic中间件结合MyEclipse进行远程调试记录. 在金蝶域中正常部署应用. 启动金蝶中间件时使用"startapusic -ds"命令. 在MyEclipse的Run-- ... 
- http://stblog.baidu-tech.com/?p=1684)  coredump调试记录 - PHP篇 原创: 扶墙  贝壳产品技术  今天
		http://stblog.baidu-tech.com/?p=1684) coredump调试记录 - PHP篇 原创: 扶墙 贝壳产品技术 今天 
- 基于freescale i.Mx6(ARM)的阿里云oss调试记录
		交叉编译阿里OSS调试记录 1.1 开通oss服务 具体参考以下链接: https://help.aliyun.com/document_detail/31884.html?spm=a2c4g.111 ... 
- [ZJCTF 2019]EasyHeap | house of spirit 调试记录
		BUUCTF 上的题目,由于部分环境没有复现,解法是非期望的 house of spirit 第一次接触伪造堆的利用方式,exp 用的是 Pwnki 师傅的,本文为调试记录及心得体会. 逆向分析的过程 ... 
- [未完] Linux 4.4 USB —— spiflash模拟usb大容量存储设备 调试记录 Gadget Mass Stroage
		linux 4.4 USB Gadget Mass Stroage 硬件平台: licheepi nano衍生 调试记录 驱动信息 │ This driver is a replacement for ... 
随机推荐
- DOCTYPE声明作用及用法详解
			一.浏览器呈现模式和doctype 有的网页是遵循标准而创作的,但也有很多不是.即使你不能创建遵循标准的网页,也希望浏览器根据标准来正确显示那些页.目前,大量网页充斥着大量非标准代码,它们仍能正常地工 ... 
- java.lang.ExceptionInInitializerError    /NoClassDefFoundError: [Lorg/hibernate/engine/FilterDefinition;
			java.lang.ExceptionInInitializerError at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Nati ... 
- pyqt4学习笔记
			信号与槽机制 信号与槽机制作为Qt最重要的特性,提供了任意两个Qt对象之间的通信机制.其中,信号会在某个特定情况或动作下被触发,槽是用于接收并处理信号的函数.例如,要将一个窗口中的变化情况通知给另一个 ... 
- [转] charles使用教程指南
			charles使用教程指南 0x01 前言: Charles是一款抓包修改工具,相比起burp,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓取数据的开始暂停方便等等优势 ... 
- ssm+redis 如何更简洁的利用自定义注解+AOP实现redis缓存
			基于 ssm + maven + redis 使用自定义注解 利用aop基于AspectJ方式 实现redis缓存 如何能更简洁的利用aop实现redis缓存,话不多说,上demo 需求: 数据查询时 ... 
- ROS学习笔记(五)——建立工作空间
			pre.ctl { font-family: "Liberation Mono", monospace } p { margin-bottom: 0.25cm; line-heig ... 
- 数据库查询优化-SQL优化
			1.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默 ... 
- 如何查看python 的api
			python 搭建好python开发环境后,怎么查看api文档呢? 其实很简单: 首先打开命令行,在dos窗口输入: python -m pydoc -p 4895 python -m pydoc - ... 
- EChart和G2比较
			1.上市时间:EChart已经久经沙场,G2算是新事物 2.源码:截止发文,在Github上 数量 EChart G2 commits 3086 8 branches 3 1 releases 43 ... 
- C++ 标准库string字符串的截取
			标准库的string有一个substr函数用来截取子字符串.一般使用时传入两个参数,第一个是开始的坐标(第一个字符是0),第二个是截取的长度. #include <iostream> #i ... 
