Professional Documents
Culture Documents
AML8726-MX媒体盒硬件调试指南 V1.0 131209skynoon
AML8726-MX媒体盒硬件调试指南 V1.0 131209skynoon
n!
oo
Application Notes
yn
AML8726-MX 媒体盒硬件调试指南 Sk
to
e
ut
ib
tr
Revision :V1.0
is
1. 简介
n!
显示检查(HDMI 无输出等)
wifi 检查(wifi 无法连接、wifi 信号质量不好等)
oo
以太网检查(以太网无法连接)
AV 接口检查(CVBS、YPbPr、audio 等)
yn
其它检查(IR、USB、OTG 等)
USB 烧录常见问题诊断 Sk
to
e
ut
ib
tr
is
D
2. 基本检查
序号 检查项目 检查结果
1 目测 PCBA,确保没有明显的漏焊、虚焊、短路;
2 用万用表测量各路电源,确保没有短路现象;
3 用稳压电源限流上电,如供电没问题,用万用表测量各路电压及示波器其
纹波(设置 20mV,1uS、1mS 间隔);
n!
4 靠近 CPU 管脚测量 RESET_CPU 信号,确保复位信号正常;
oo
5 示波器测量 24M 晶振是否正常(万用表测量约 1.5V);
6 示波器测量 SD_CLK 是否有信号输出(万用表测量约 1.5V);
7 基本电压
yn
子序号 检查项目 电压(V) 纹波(mV) 备注
1 VDD_AO Sk 1.2V
2 VCCK 1.3V
3 VDDQ 1.5V
to
4 VDDIO 2.8V
5 VDDIO_AO 3.3V
6 VCC3.3V 3.3V
e
7 AVDD2.5V 2.5V
ut
ib
3.SD 卡升级启动检查
电压正常后,确认系统的复位信号、24M 晶振输出正常,就可以通过 SD 卡或 PC 工具对平台进行升级。
注:电压、电流正常,复位信号、24M 晶振 OK 后,焊接串口上电,会有一句打印信息 EEEE
I3000000032940xf100110303;77500EEEE I400000004294_M6_BL1_3431>2534313
n!
3 用示波器测量每路电压,找出异常的电压,并进一步分
析;
oo
有电流,串口无 1 找一个好的平台确认启动卡是否 OK;
打印信息 2 插入启动卡,上电,观察电流是否有变化;
yn
如果没有变化,测量 CARD_VCC、CARD_DET、CARD_EN 是
否正常,并用示波器测量 SD_D0_B 和 SD_CMD_B 是否有
信号;
Sk
3 对于 SD 卡小板通过 FPC 连接的,确保信号连接良好,
并无短路情况;
to
4 确保串口线的正确连接(公板顺序为:GND、TX、RX、VCC);
用示波器测量 TX,上电时是否有信号输出;
e
有问题
lane02 Success06 如果 fail,则 DDR3 第三个 8bit
D
有问题
lane03 Success06 如果 fail,则 DDR3 高 8bit 有问
题
2 观察 NAND 能否成功读到 ID 等信息,以确保 NAND 正常,
如下正常 ID 信息:
NAND device id: 2c 88 4 4b a9 0
NAND device: Manufacturer ID: 0x2c, Chip ID: 0x2c
(Micron C revision NAND 8GiB MT29F64G-C)
n!
Rd Block Len: 512
SD version 1.10
oo
High Capacity: No
Capacity: 126353408
yn
Bus Width: 4-bit 如果为 1bit,那么检查 D1-D3,
查看哪根数据线有问题
2
Sk
敲入:mmcinfo;fatload mmc 0 82000000
recovery.img;bootm,来进行手动升级,并观察是否能够
正常跑;
to
3 如果出现升级界面,但无法升级,那么重新插拔卡,再
按按键选择升级文件,以避免 SD 读卡失败造成的升级不
e
成功;
ut
4 换其他升级卡,避免系统挑卡造成升级失败;
跑 Kernel 重启 1 u-boot 下测量 VCCK 和 DDR3_1.5V 的 DC 端和 CPU 端的电
ib
2 用万用表测量后端受控电压是否短路(CARD_VDD、wifi
is
3.3V 等),如无法解决,用示波器测量确认哪路电压打开
造成的重启;
D
n!
4 Nand Flash 的 1PCS 1CE、1PCS 2CE、2PCS 1CE、2PCS 2CE
外围跳线不一样,根据原理图更改,并确保软件支持;
oo
5 从串口中查看 NAND 的 ID,并找资料确认 ID 是否正确
yn
6 不同型号的 NAND,pin38、39 处电压可能不一样,需要
根据 datasheet 进行确定:
7
Sk
如果打印信息显示 Flash 受保护,那么测量 NAND 的 pin19
管脚是否为高电平(低电平为写保护);
8 测量 NAND 的 R/B 信号在平常是不是高电平;
to
9 测量各信号是否存在虚焊、短路的现象;
e
注 1:可以从打印信息查看 SD 初始化是否成功。
ut
n!
oo
yn
Sk
烧录到 SPI NOR Flash:sf probe 2;sf erase 0 60000;sf write 82000000 0 60000
注:烧录完成后,需要输入:reset 来进行重启
3.2 u-boot 的分析
to
u-boot 的打印信息中可以分析很多东西:
EEEE I3000000032940xf100110303;77500EEEE I400000004294_M6_BL1_3431>2534313?
wait pll-0x03 target is 0204 now it is 0x00000203
e
ut
DX0DLLCR:40000000
DX0DQTR:ffffffff
tr
DX0DQSTR:3db05001
DX1DLLCR:40000000
is
DX1DQTR:ffffffff
DX1DQSTR:3db05001
D
DX2DLLCR:40000000
DX2DQTR:ffffffff
DX2DQSTR:3db05001
DX3DLLCR:40000000
DX3DQTR:ffffffff
DX3DQSTR:3db05001
Stage 00 Result 00000000
Stage 01 Result 00000000
Stage 02 Result 00000000
Stage 03 Result 00000000
HHH
Boot From SPI0x12345678
Boot from internal device 1st SPI RESERVED
System Started
aml_rtc_init
aml rtc init first time!
n!
Clear HDMI KSV RAM
DRAM: 1 GiB
oo
relocation Offset is: 105ec000
NAND: Amlogic nand flash uboot driver, Version U1.06.017 (c) 2010 Amlogic Inc.
No NAND device found!!!
yn
NAND device id: 2c 68 4 4a a9 0
NAND device: Manufacturer ID: 0x2c, Chip ID: 0x2c (Micron C revision NAND 4GiB MT29F32G-C)
1 NAND chips detected Sk
onfi timing mode set failed: 49
#####aml_nand_init, with RB pins and chip->chip_delay:20
bus_cycle=10, bus_timing=10, start_cycle=10, end_cycle=10,system=5.0ns
to
n!
查找 Pinmux 知道,USB_PWR_CTL(GPIOD_9)的 OEN 为 2012[25]——寄存器 2012 的 bit25,OUT 为
2013[25];所以 u-boot 下 OEN 的控制地址为:c1100000 + 2012x4 = c1108048,OUT 的地址为:c110
oo
+ 2013x4 = c110804c。
读取 OEN 的值:md c1108048
yn
值为:c1108048: ffffffff,bit[25]为 1,所以 OEN 为输入状态;如果要控制 USB_PWR_CTL 为输出,
必须设置 bit[25]为 0;
写 OEN 的值:mw c1108048 fdffffff
Sk
读取 OUT 的值:md c110804c
写 OUT 的值:mw c110804c xxxxxxxx
to
系统启动后控制
读取寄存器:echo rc0xaaaa>/sys/class/amhdmitx/amhdmitx0/debug
ib
echo rc0x2013>/sys/class/amhdmitx/amhdmitx0/debug
串口打印返回值为:
D
n!
备注:机器量产的 code 经常会把多余的打印信息关掉,此时需要先输入:
oo
echo 7 > /proc/sys/kernel/printk
yn
Sk
to
e
ut
ib
tr
is
D
4.电源控制
4.1 VCCK 的控制
VCCK 为 CPU 的内核电压,是最重要的一个电源,MX 中的 VCCK 根据 CPU 的负载调节 CPU 的频率和 VCCK
的电压,电压调节范围为 1.01V-1.4V。不能更改 DC/DC 的反馈电压:FB=0.6V,否则导致 code 控制 VCCK
的电压有出入,造成死机。
请按照下表,测量实际电路中 VCCK 电压是否满足需求(u-boot 下操作):
步骤 命令 说明
n!
1 mw 0xc11080b8 0x4 1 //设置 pinmux
2 mw 0xc1108658 0x8003 1 //enable pwm
oo
3 mw 0xc1108650 0x1c 1 使用万用表测量,vcck 正常值约为 1.40v
4 md 0xc1108650 //读出刚才寄存器 0xf1108650 的设置值
yn
5 mw 0xc1108650 0x030019 1 使用万用表测量,vcck 正常值约为 1.35v
6 mw 0xc1108650 0x0b0011 1 使用万用表测量,vcck 正常值约为 1.21v
7 mw 0xc1108650 0x11000b 1 使用万用表测量,vcck 正常值约为 1.11v
Sk
8 mw 0xc1108650 0x170005 1 使用万用表测量,vcck 正常值约为 1.01v
to
注:VCCK 电压的不稳、电压不够,是造成死机的主要原因,所以在调试过程中,必须根据上面的
步骤,测量 VCCK 每级电压,是否和表格一直,否则需要软件做相应调整。——如果硬件参数不对造成的,
需要调整硬件参数。
e
ut
4.2 SD 卡电源控制注意事项
ib
tr
is
D
n!
oo
yn
Sk
to
e
ut
ib
tr
is
D
5.HDMI
n!
5 HDMI 的高速差分信号是否有短路;HDMI 的座子是否正确,
oo
是否焊接良好;
6 检查 Layout,是否 HDMI 高速差分线的过孔太多、且没有
完整的参考平面;
yn
7 切换到 HDMI,并通过示波器测试以确认信号是否正确;
8 敲入:echo 720p > /sys/class/display/mode
Sk
,强制切换到 HDMI 输出(可把 720p 更改为 1080p 而输出
1080p),并通过示波器测量其信号;
to
e
ut
ib
tr
is
D
6.以太网检查
n!
芯片供电是否正常;
oo
4 25M 晶振焊接是否 OK,时钟输出是否正常;
5 50M CLK 的通路选择是否正确,目前我们是 PHY 芯片倍频
出 50M CLK 送给 CPU 做参考时钟,请测量 50M 是否正确;
yn
6 PHY 地址配置电阻焊接是否正常;
以太网信号质 1 25M 晶体频偏是否偏大,要求在 30ppm 以内;
Sk
量不好,丢包率 2 50M CLK 时钟是否稳定,是否存在较大抖动;
太高 3 测量 Tx/Rx 信号时序是否满足 PHY 芯片规格书需求
to
e
ut
ib
tr
is
D
n!
oo
yn
Sk
to
e
n!
oo
yn
Sk
to
e
4)RMII_RST 复位是低电平复位,复位完成后会保持高电平
ut
ib
tr
is
D
n!
oo
yn
Sk
2)PHY 地址配置,注意使用不带指示灯的 RJ45 座子时不能把下面 PHY 地址配置电阻删除;
to
e
ut
ib
tr
is
D
n!
4)IP101GR 芯片正常工作后,第 25pin 电压约为 1.2V
oo
yn
Sk
to
e
ut
ib
tr
is
D
7.wifi 检查
n!
WL211(WL212)
oo
1 WL-211 焊接 R307,WL-212 焊接 R306,需要确认 code 对
应;
2 确定 WIFI 模块供电是否正常;
yn
3 在初始化时,确认模块的是否有稳定的 32.768KHz 时钟;
4 26M 晶振焊接是否 OK,时钟输出是否正常;
Sk
5 用示波器测量初始化时,PIN31(WIFI/BT_EN)是否为高
6 确认模块的 PIN30(电感 L20)是否约为 1.5V,否则更换电
感。
to
8 天线是否焊接好。
ut
量;
5 天线质量是否有问题,更改其他天线试试;
6 找 WIFI 模组厂家帮忙测试 RF 的输出/接收功率是否足够
大;
n!
oo
yn
Sk
to
e
ut
n!
oo
yn
B,AP6181 时,PIN29 不能接电源,否则无法加载驱动(PIN29 脚接电源时,选择晶振输入端为
PIN30 管脚)。
Sk
to
e
ut
ib
tr
is
D
7.1.2 二合一模块——AP6210/AP6330
A,26M 的晶振从 pin30 管脚输入。
注 1:反相器 U11 的质量会影响时钟的质量;
注 2:此处也可以使用晶振,但成本太高。
n!
oo
yn
Sk
to
8.AV 接口检查
n!
5 检查功放 IC 外围参数是否正确;
CVBS/YPbPr 无 1 板子同时有 CVBS 及 YPbPr 的,检查控制 Y 信号与 CVBS
oo
输出 状态切换的 GPIO 状态是否正确,模拟切换开关焊接是否
良好
2 检查 CVBS/YPbPr 信号管脚是否焊接良好,阻抗是否正确
yn
3 检查π型滤波器是否配置正确,可用镊子短路π型滤波
器观察是否有输出 Sk
4 检查 560R RSET 电阻焊接是否良好,阻值是否正常
5 检查 COMP 电容焊接是否良好
to
e
ut
ib
tr
is
D
9. 其它检查
n!
USB 无法连接 1 检查 USB 座、共模电感等否焊接良好;
oo
鼠标、U 盘 2 测量 USB VCC5V 供电电平是否正常(4.75V--5.25V);
--USBB 口 3 检查 USBB_TXRTUNE 电阻 R42(200R 1%)是否焊接良好;
4 检查 HUB 芯片焊接、供电是否正常;
yn
5 测量 HUB 芯片 12M 晶体是否起振;
6 测量 HUB 阻容复位电路是否正常,检查 RREF 680R_1%电
Sk
阻是否需焊或短路;
7 观察记录串口打印信息。
to
HOST 功能);
ut
模式”还是“存储模式”
tr
6 观察记录串口打印信息。
OTG 无效 1 插入 USB Device 后,测量 ID pin 是否为低电平;
is
正常;
3 测量 USBA_VBUS 供电是否正常(4.75-5.25V);
4 检查 USBA_TXRTUNE 电阻 R62(200R 1%)是否焊接良好;
5 确认软件是否支持 USB HOST 功能;观察记录串口打印信
息;
10. 其他调试命令
10.1 DDR3 频率的测试(uboot 需打开 CONFIG_CMD_DDR_TEST 这个宏)
d2pll 0x10232
注:32 为设定 DDR 的频率,为 38 为 16 进制数,设定频率为:(3x16+2)*12=600M,更改后两位设定
不同的 DDR 频率;
ddrtest 3
n!
注:为 u-boot 下测试频率,3 为设定测试次数;
设定频率后,直接跑系统,可测试该频率对系统的稳定性;
oo
10.2 手动升级
yn
把升级文件放到 SD 卡,插卡、上电启动 u-boot;
在 u-boot 下敲入:mmcinfo;fatload mmc 0:1 82000000 recovery.img;bootm
敲入“回车”并启动进入升级界面,选择升级文件升级; Sk
10.3 跑其他 Kernel
to
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
ib
tr
11、USB 烧录升级诊断(需结合串口打印)
11.1 空片升级 USB 端口不识别
a、检查 USB 端口座子焊接是否良好
b、在 USB 端口测量 D+/D-的对地阻抗,确认是否开路或相互短路;检查 R62 是否焊接 OK;
n!
oo
yn
c.测量供电电压是否正常
d.查看 CPU 复位信号是否正常
Sk
e.检查24MHz 晶振是否起振
to
11.2 升级到8%失败
ib
DX0DLLCR:40000000
DX0DQTR:ffffffff
DX0DQSTR:3db05001
DX1DLLCR:40000000
DX1DQTR:ffffffff
DX1DQSTR:3db05001
DX2DLLCR:40000000
n!
DX2DQTR:fffff20f
oo
DX2DQSTR:3db05001
DX3DLLCR:40000000
yn
DX3DQTR:ffffffff
DX3DQSTR:3db05001
Sk
Stage 00 Result 00000000
to
pub failed
ib
tr
is
DX0DLLCR:40000000
DX0DQTR:fffeffff
Amlogic Confidential 27/31
Amlogic Application Notes
DX0DQSTR:3db05001
DX1DLLCR:40000000
DX1DQTR:fefff0ff
DX1DQSTR:3db05001
DX2DLLCR:40000000
n!
DX2DQTR:fffff20f
oo
DX2DQSTR:3db05001
DX3DLLCR:40000000
yn
DX3DQTR:fff00fff
DX3DQSTR:3db05001
Sk
Stage 00 Result 00002020
to
pub failed
ib
tr
aml nand read data ecc failed at page:7424 blk 29 chip 0, readretry_failed_cnt:10
aml nand read data ecc failed at page:7424 blk 29 chip 0, readretry_failed_cnt:11
SANDISK NAND set partmeters here lower page: 0 and cur_case_num :10
aml nand read data ecc failed at page:7424 blk 29 chip 0, readretry_failed_cnt:12
SANDISK NAND set partmeters here lower page: 0 and cur_case_num :11
n!
aml_nand_dynamic_read_load_register_value, REG(0x4): value:0xa0
oo
aml_nand_dynamic_read_load_register_value, REG(0x5): value:0x0
yn
aml_nand_dynamic_read_load_register_value, REG(0x7): value:0xd0
aml nand read data ecc failed at page:7424 blk 29 chip 0, readretry_failed_cnt:13
Sk
SANDISK NAND set partmeters here lower page: 0 and cur_case_num :12
aml nand read data ecc failed at page:7424 blk 29 chip 0, readretry_failed_cnt:14
ib
SANDISK NAND set partmeters here lower page: 0 and cur_case_num :13
tr
aml nand read data ecc failed at page:7424 blk 29 chip 0, readretry_failed_cnt:15
SANDISK NAND set partmeters here lower page: 0 and cur_case_num :14
n!
打印:
oo
[ 16.268865@1] error, the rtc serial communication abnormal, reset the rtc!
[ 16.369161@1] error, the rtc serial communication abnormal, reset the rtc!
yn
[ 16.469467@1] error, the rtc serial communication abnormal, reset the rtc!
原因:rtc 晶体不起振,初始化通不过
Sk
对策:用万用表测量 RTC 晶体两个管脚电压,正常起振的晶体两个管脚电压都在0.2V--0.5V 之间,测量
to
11.5 烧录到81%失败,串口打印打印到如下信息后停止;
ib
[ 0.595591@0] vdac_switch_init_module
[ 0.602707@0] tv_init_module
原因:wifi 电源短路。
n!
过流保护或出现严重跌落而使系统卡死。
oo
yn
Sk
to
e
ut
ib
tr
is