rk3568死机调试

结论

有两种死机:

  • 一种是有异常栈,此种情况应该是由于linux的实时补丁导致的,去掉实时补丁后未复现;
  • 一种无异常栈,但是打印mmc异常:mmc0: cache flush error -110,此种情况需要加打印继续定位。

无异常栈死机

无异常栈死机是由于MMC初始化失败导致,根本原因是系统启动过程中供电不稳导致:

CMD6:命令功能为切换eMMC设备的操作模式或者修改eMMC设备的EXT_CSD寄存器。

#define MMC_SWITCH                6   /* ac   [31:0] See below   R1b */

mmc0: req failed (CMD6): -110, retrying...

CMD12: MMC_STOP_TRANSMISSION

在任意时刻,所有的数据读命令都可以被STOP_TRANSMISSION命令(CMD12)终止。数据传输将会结束并且eMMC设备将返回到Transfer状态。读命令包括:READ_SINGLE_BLOCK(CMD17),READ_MULTIPLE_BLOCK(CMD18),SEND_TUNING_BLOCK(CMD21),SEND_WRITE_PROT(CMD30)。

在任意时刻,所有的数据写命令都可以被STOP_TRANSMISSION命令(CMD12)终止。停止写命令的STOP_TRANSMISSION命令(CMD12)要在CMD7取消选择设备之前发送。写命令包括:WRITE_BLOCK(CMD24),WRITE_MULTIPLE_BLOCK(CMD25),PROGRAM_CID(CMD26),PROGRAM_CSD(CMD27)。

#define MMC_STOP_TRANSMISSION    12   /* ac                      R1b */

[    6.403127] mmc0: req failed (CMD12): -110, retrying...
[    6.403152] mmc0: req failed (CMD12): -110, retrying...
[    6.403179] mmc0: req failed (CMD12): -110, retrying...
[    6.403205] mmc0: req failed (CMD12): -110, retrying...
[    6.403230] mmc0: req failed (CMD12): -110, retrying...
[    6.403417] _mmc_hw_reset: call mmc_flush_cache

MMC初始化正常时的打印:

[   30.481558] mmc_blk_issue_flush: call mmc_flush_cache
[   30.481579] mmc_wait_for_cmd: cmd->arg=52429057
[   30.481683] mmc_wait_for_req: call mmc_wait_for_req_done
[   30.482[  OK  ] Stopped snmp service.
39] mmc0: return err =0
[  OK  ] Started snmp service.
[   32.186790] vcc5v0_otg: disabling
[   32.186870] vcc3v3_lcd0_n: disabling
[   32.186904] vcc3v3_lcd1_n: disabling
[   32.186936] vcc3v3_pcie: disabling
[   33.681936] mmc_blk_issue_flush: call mmc_flush_cache
[   33.681942] mmc_wait_for_cmd: cmd->arg=52429057
[   33.681979] mmc_wait_for_req: call mmc_wait_for_req_done
[   33.684167] mmc0: return err =0
[   34.137782] ttyFIQ ttyFIQ0: tty_port_close_start: tty->count = 1 port count = 2Debian GNU/Linux 10 jenet ttyFIQ0jenet login: [   36.667972] mmc_blk_issue_flush: call mmc_flush_cache
[   36.667993] mmc_wait_for_cmd: cmd->arg=52429057
[   36.668095] mmc_wait_for_req: call mmc_wait_for_req_done
[   36.668514] mmc0: return err =0
[   39.654626] mmc_blk_issue_flush: call mmc_flush_cache
[   39.654647] mmc_wait_for_cmd: cmd->arg=52429057
[   39.654744] mmc_wait_for_req: call mmc_wait_for_req_done

MMC初始化异常日志

[    5.518271] dwmmc_rockchip fe2b0000.dwmmc: Linked as a consumer to regulator.32
[    5.518348] dwmmc_rockchip fe2b0000.dwmmc: Linked as a consumer to regulator.26
[    5.518516] dwmmc_rockchip fe2b0000.dwmmc: Dropping the link to regulator.26
[    5.518582] dwmmc_rockchip fe2b0000.dwmmc: Dropping the link to regulator.32
[    5.572557] timer end
[    5.599311] rk-pcie 3c0000000.pcie: PCIe Linking... LTSSM is 0x1
[    6.401383] mmc_wait_for_cmd: cmd->arg=65536[    6.401405] mmc_wait_for_req: call mmc_wait_for_req_done[    6.401422] mmc_wait_for_cmd: cmd->arg=65536[    6.401430] mmc_wait_for_req: call mmc_wait_for_req_done[    6.401443] mmc_wait_for_cmd: cmd->arg=0[    6.401451] mmc_wait_for_req: call mmc_wait_for_req_done[    6.401464] mmc0: req failed (CMD12): -110, retrying...
[    6.401490] mmc0: req failed (CMD12): -110, retrying...
[    6.401514] mmc0: req failed (CMD12): -110, retrying...
[    6.401538] mmc0: req failed (CMD12): -110, retrying...
[    6.401561] mmc0: req failed (CMD12): -110, retrying...
[    6.401793] mmc_wait_for_cmd: cmd->arg=65536[    6.401818] mmc_wait_for_req: call mmc_wait_for_req_done[    6.401838] mmc_wait_for_cmd: cmd->arg=65536[    6.401850] mmc_wait_for_req: call mmc_wait_for_req_done[    6.401867] mmc_wait_for_cmd: cmd->arg=0[    6.401878] mmc_wait_for_req: call mmc_wait_for_req_done[    6.401895] mmc0: req failed (CMD12): -110, retrying...
[    6.401922] mmc0: req failed (CMD12): -110, retrying...
[    6.401949] mmc0: req failed (CMD12): -110, retrying...
[    6.401975] mmc0: req failed (CMD12): -110, retrying...
[    6.402001] mmc0: req failed (CMD12): -110, retrying...
[    6.402220] mmc_wait_for_cmd: cmd->arg=65536[    6.402234] mmc_wait_for_req: call mmc_wait_for_req_done[    6.402252] mmc_wait_for_cmd: cmd->arg=65536[    6.402264] mmc_wait_for_req: call mmc_wait_for_req_done[    6.402281] mmc_wait_for_cmd: cmd->arg=0[    6.402292] mmc_wait_for_req: call mmc_wait_for_req_done[    6.402307] mmc0: req failed (CMD12): -110, retrying...
[    6.402333] mmc0: req failed (CMD12): -110, retrying...
[    6.402359] mmc0: req failed (CMD12): -110, retrying...
[    6.402385] mmc0: req failed (CMD12): -110, retrying...
[    6.402410] mmc0: req failed (CMD12): -110, retrying...
[    6.402629] mmc_wait_for_cmd: cmd->arg=65536[    6.402645] mmc_wait_for_req: call mmc_wait_for_req_done[    6.402664] mmc_wait_for_cmd: cmd->arg=65536[    6.402675] mmc_wait_for_req: call mmc_wait_for_req_done[    6.402689] mmc_wait_for_cmd: cmd->arg=0[    6.402701] mmc_wait_for_req: call mmc_wait_for_req_done[    6.402718] mmc0: req failed (CMD12): -110, retrying...
[    6.402743] mmc0: req failed (CMD12): -110, retrying...
[    6.402769] mmc0: req failed (CMD12): -110, retrying...
[    6.402799] mmc0: req failed (CMD12): -110, retrying...
[    6.402825] mmc0: req failed (CMD12): -110, retrying...
[    6.403042] mmc_wait_for_cmd: cmd->arg=65536[    6.403056] mmc_wait_for_req: call mmc_wait_for_req_done[    6.403074] mmc_wait_for_cmd: cmd->arg=65536[    6.403086] mmc_wait_for_req: call mmc_wait_for_req_done[    6.403103] mmc_wait_for_cmd: cmd->arg=0[    6.403114] mmc_wait_for_req: call mmc_wait_for_req_done[    6.403127] mmc0: req failed (CMD12): -110, retrying...
[    6.403152] mmc0: req failed (CMD12): -110, retrying...
[    6.403179] mmc0: req failed (CMD12): -110, retrying...
[    6.403205] mmc0: req failed (CMD12): 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/1586.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iOS原生与H5交互方法

UIWebView Objective-C 调用 JavaScript 在使用UIWebView时,可以使用stringByEvaluatingJavaScriptFromString:方法来执行JavaScript代码。 示例代码: NSString *result [webView stringByEvaluatingJavaScriptFromString:"returnFunction()&q…

Kubesphere使用教程

一、简介 KubeSphere是一个开源的容器平台,它提供了Kubernetes集群的部署、运维和管理能力,并且具有友好的Web UI界面,降低了Kubernetes的使用门槛。本教程将引导你逐步了解KubeSphere的基本使用。 二、环境准备 准备至少三台服务器或虚拟…

Darknet,看过很多篇,这个最清晰了

Darknet深度学习框架:YOLO背后的强大支持 Darknet,一个由Joseph Redmon开发的轻量级神经网络框架,以其在计算机视觉任务,特别是目标检测中的卓越表现而闻名。本文将详细介绍Darknet的基本概念、结构以及它在深度学习领域的应用。…

UE4_动画基础_根运动Root Motion

学习笔记,仅供参考! 在游戏动画中,角色的碰撞胶囊体(或其他形状)通常由控制器驱动通过场景。然后来自该胶囊体的数据用于驱动动画。例如,如果胶囊体在向前移动,系统就会知道在角色上播放一个跑步…

Kivy Pyinstaller Windows 打包

各种报错 ImportErrorWhenRunningHook: Failed to import module __PyInstaller_hooks_0_kivy required by hook for module 三天美好时光啥也没干,就研究这个了。 打包成功,运行应用程序exe闪退的。终于打包成功了。 这所有的原因都是因为我爱你。如果…

请编写一个函数int fun(int*s,int t,int *k),用来求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。

本文收录于专栏:算法之翼 https://blog.csdn.net/weixin_52908342/category_10943144.html 订阅后本专栏全部文章可见。 本文含有题目的题干、解题思路、解题思路、解题代码、代码解析。本文分别包含C语言、C++、Java、Python四种语言的解法和详细的解析。 题干 请编写一个函…

小型架构实验模拟

一 实验需求 二 实验环境 22 机器: 做nginx 反向代理 做静态资源服务器 装 nginx keepalived filebeat 44机器: 做22 机器的备胎 装nginx keepalived 99机器:做mysql的主 装mysqld 装node 装filebeat 77机器:做mysq…

pytorch 今日小知识2——F.avg_pool2d、clamp

今天看到 def gem(self, ipts):return F.avg_pool2d(ipts.clamp(minself.eps).pow(self.p), (1, ipts.size(-1))).pow(1. / self.p) 这个函数中的F.avg_pool2d 不是很理解就查了一下 ipts.clamp(1.0e-6): 这个操作将ipts中的每个元素限制在[1.0e-6, inf)的范围内。也就是说&a…

【Python】——字典

🎃个人专栏: 🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客 🐳Java基础:Java基础_IT闫的博客-CSDN博客 🐋c语言:c语言_IT闫的博客-CSDN博客 🐟MySQL&#xff1a…

【python】一文读懂python函数

【python】一文读懂python函数 文章目录 【python】一文读懂python函数(一)简单入门理解函数(二)函数的基本结构:(三)函数的默认值(四)可变参数(五)基于字典的可变参数(**可变参数)(六)函数中变量的作用域(七)lambda函数(八) 过滤函数filter()在Python中,…

谷歌Gemini 1.5 Pro国内怎么用?国内镜像来了

长期以来,许多人向我咨询是否存在一个稳定而高效的全球AI大模型测试平台,这个平台需要不仅真实可靠,而且能够提供稳定和快速的服务,不会频繁出现故障或响应缓慢的问题。然而,当我发现了AskManyAI时,我被其所…

蛋白质治病突变的计算方法(三)

3 用于识别致病突变的特征 文献中使用了几种特征来识别蛋白质中的致病突变。它们大致分为三类:(1)序列,(2)结构和(3)网络,以及它们的组合。图1说明了这三组中的一些重要属性。 图1 用于识别致病突变和热点的重要特征。 基于氨基酸序列的特性…

go下载依赖时超时timeout

go下载依赖时超时timeout go: module k8s.io/component-base/logs: Get “https://proxy.golang.org/k8s.io/component-base/logs/v/list”: dial tcp 172.217.160.113:443: i/o timeout 解决办法如下,运行命令: go env -w GO111MODULEon go env -w GO…

李宏毅2022机器学习/深度学习 个人笔记(3)

本系列用于推导、记录该系列视频中本人不熟悉、或认为有价值的知识点 本篇记录代码效果不佳时应该怎么做 如下图所示: 接下来探讨,当optimization不佳的时候,如何判断是遇到了鞍点还是遇到了局部最小值点?可以通过多元函数的泰勒…

【大语言模型+Lora微调】10条对话微调Qwen-7B-Chat并进行推理 (聊天助手)

代码:https://github.com/QwenLM/Qwen/tree/main 国内源安装说明:https://modelscope.cn/models/qwen/Qwen-7B-Chat/summary 通义千问:https://tongyi.aliyun.com/qianwen 一、环境搭建 下载源码 git clone https://github.com/QwenLM/Qwen…

是用computed获取vuex数据后,修改数据页面不响应的问题

问题描述: 代码里使用computed获取mapGetters的数据后,直接在页面使用,在methods中更新数据后,控制台打印数据已经更改,但是页面上的数据没有同步更改和响应。 分析: 1.computed是计算属性,所有…

【Linux 进程间通信】管道(三)

文章目录 1.管道的五种特征2.管道的四种情况 1.管道的五种特征 ①🍎匿名管道只能用于有血缘关系的进程之间进行通信(爷孙进程之间可以进行通信),常用于父子之间进行通信; ②🍎管道内部,自带进…

【数据结构】时间复杂度的例题

🎁个人主页:我们的五年 🔍系列专栏:数据结构 🌷追光的人,终会万丈光芒 前言: 这篇文章是关于时间复杂度的一些例题,关于时间复杂度和空间复杂度和算法的计算效率的基本知识点我放在…

Linux之C编程入门

目录 第1关:第一个C程序 任务描述 相关知识 编译C程序 编程要求 答案及其步骤: 第2关:Linux编译C程序 任务描述 相关知识 gcc编译器使用方法 编程要求 答案及其步骤: 第3关:Linux之静态库编写 任务描述 相关知识 生成…

Leetcode 3122. Minimum Number of Operations to Satisfy Conditions

Leetcode 3122. Minimum Number of Operations to Satisfy Conditions 1. 解题思路2. 代码实现 题目链接:3122. Minimum Number of Operations to Satisfy Conditions 1. 解题思路 这一题就是一个动态规划的思路,我们只需要对每一列取0到9的情况各自进…