Professional Documents
Culture Documents
Amlogic平板电脑硬件调试指南 V.2 130320
Amlogic平板电脑硬件调试指南 V.2 130320
A
ppl
icat
ionNo
tes
Amlogic平板电脑硬件调试指南
Revision:V 0
.2
O
wn er:HWFAET EAM
D
ate :2013
0320
1
.简介
本文主要针对 A ml
ogi
c的平板方案(A ML
8726
-MX、AML
872
6-MXS、AM
L87
26-
MXL
,后面简称为
MX、MX
S、MXL
)的硬件,进行调试方面的分析。本手册指导有一定调试知识、能够熟练使用万用
表、示波器等基本设备的硬件、软件工程师在样机调试阶段的调试工作,主要包括以下几个方面的
检查:
• 基本检查( 短路、断路、电源、R ES
ET、晶振、CL K等)
• 启动检查( 无电流、无串口信息、u boot分析、无法升级、ke r
nel死机或重启、F la
sh无法读写
等)
• 显示检查( LCD无法显示、HDMI无输出等)
• wif
i检查(w i
fi无法连接、wifi信号质量不好等)
• 声音检查( 喇叭没有声音输出,耳机没有声音输出,录音无声音、录音有杂音等)
• 其它检查( IR、传感器、摄像头、U SB、OT G、触摸屏等)
2
.基本检查
序号 检查项目 检查结果
1 目测 M
ID的 P
CBA
,确保没有明显的漏焊、虚焊、短路;
2 用万用表测量各路电源,确保没有短路现象;
3 用稳压电源限流上电,如供电没问题,用万用表测量各路电压及示波器
其纹波(
设置 20
mV,1u
S、1mS间隔);
4 靠近 C
PU管脚测量 R
ESE
T_C
PU信号,确保复位信号正常;
5 示波器测量 2
4M晶振是否正常;
6 示波器测量 S
D_C
LK是否有信号输出(万用表测量约 1.
5V)
;
7 基本电压
子序号 检查项目 电压(
V) 纹波(
mV) 备注
1 V
DD_
AO 1.
1V
2 V
CCK 1.
2V
3 V
CC1
.5V 1.
5V
4 V
DDI
O 2.
85V
5 V
DDI
O_A
O 3.
0V
6 A
VDD
3.3
V 3.
3V
7 A
VDD
2.5
V 2.
5V
<
注1>调试时,请用稳压电源,限流 500
mA进行供电,避免有短路烧毁平台。
<
注2>若以上条件满足,系统约 1
00m
A@5V。
3
.启动检查
6 不同型号的 NAND,pi
n38
、39处电压可能不一样,需要
根据 da
tas
hee
t进行确定:
7 如果打印信息显示 Fl
ash受保护,那么测量 N
AND的
pi
n19管脚是否为高电平(低电平为写保护);
8 测量 NA
ND的 R
/B信号在平常是不是高电平;
9 测量各信号是否存在虚焊、短路的现象;
注 1:AX
P20
2任何一路电压输出异常,都会造成 P
MU无输出。
注 2:可以从打印信息查看 T F初始化是否成功。
注 3:1P
CS4CE
、2P
CS2C
E的 NA
NDF
LAS
H都只能支持没有 R
/B的配置,R1
23不能焊接。
注 4:NA
ND必须为支持列表中支持的型号,且现代的 N AN
D大部分需要 SPINO
RFl
ash
,否则升级成
功,但无法启动。
3
.1u-boot的烧录
调试中,u -b o
ot可能会损坏,或需要换 u -b
oot,此时不必要再重新升级整个 co
de,而是单独进行
u
-bo
ot烧录即可。u -bo
ot的读取:
a)把 u -boot.bin文件放到 TF卡中,输入:
mmcin
f o;f
at l
oa dmmc0 :182
000
000u-
boot.b
in
注:u - boo
t. b
in为 u -b
oot的名字,如果名字不一样,需要作相应的更改。
b)在串口命令行输入:lo
ady
,然后在串口上通过 Y
mod
e在 PC上把 u
-bo
ot传输到 D
DR3
;
U-b
oot烧录到 N A
NDFl a
sh:nandrom_w
rit
e8 200
00000600
00
烧录到 S PINO
RF las
h:s fp
ro b
e2 ;sferas
e00 x
800
00;sfwr
ite8
200
000
0080
000
注:烧录完成后,需要输入:r eset来进行重启
3.2u-boo
t的分析
u
-bo
ot的打印信息中可以分析很多东西:
B
ootFro
mSPI
ucldec
ompr
ess
d
ecom
pre
sstr
ue
0
x123
456
78
B
ootfro
mint
erna
ldevic
e1stS
PIR
ESER
VED
S
yste
mSta
rte
d
U
-Boo
t201
1.0
3-00
000
-g31
e82
1e(m
6__
v1@
next
)(Ma
r0720
13-20
:25
:55)
a
ml_r
tc_
init
a
mlrtcinitfirsttime!
D
RAM: 5
12M i
B
r
eloc
ati
onO f
fseti s
:10 6
1000
0
N
AND: A
mlogi
cna ndflashubo
otdriv
er,Ve
rsio
nU1.03
.012(c
)2010Aml
ogi
cInc.
N
oNANDdevic
efo und
!!!
N
ANDdev
iceid:a dd794da7 4c3
a
ml_c
hip
->hyn
ix_new_
nand_
type=:2
N
ANDdev
ice:Manufac
turerID:0x
ad,Chi
pID:0xad(Hy
nixBrevi
sion26
nmNAND4
GiBH
27U
BG8T
2B)
1NAN
Dchipsdetecte
d
a
ml_n
and
_initautodetectRBpinher
eandpor_
cfg
:3fc
a
ml_n
and
_initdetectwithRBpinher
e
#
####
aml
_na
nd_i
nit
,withRBp
insan
dchip-
>chi
p_d
elay
:20
b
us_c
ycl
e=5
,bus_t
imin
g=6
,st
art
_cy
cle=
6,end_
cyc
le=7
,sy
stem
=5.
0ns
Bo
otfro
mi n
ter
nalde
vic
e1 stSPIRE
SERVED
——此处打印信息说明从内部 S PI启动 u-
b oo
t
DR
AM: 5
12MiB —— D DR3为 51
2M
NA
NDdev
iceid:add794da7 4c3 ——NAND的 ID,可确定 NAND是否 OK
am
l_n
and
_ini
tautode
tec
tR Bpinher
ea ndpor_cf
g:3fc ——3fc
,说明 N AND
_D2
、D 3有下
拉;
1N
ANDch
ipsdet
ect
ed ——只有 1P CSNANDFlash
3
.3Fl
ash的读写
擦除 N
andFl
ash
:na
nder
ase0
擦除 N
andFl
ash
:na
ndsc
rub0
注:n a
ndscrub0会擦除 n and原厂的标识,一般不建议使用。
擦除 NAND的 c
ache、data、media分区:把 recovery.i
mg文件放到 TF卡里,u
-bo
ot串口界面下
输入:mmci
nfo;fatl
oadm m
c08 200
000
0re
cov
er y
.i m
g;bo o
tm,或者按升级键进入升级界面,手动
选择擦除。
注:对于一些已经用过的 NAN
D,再次使用时,如果用 T
F卡和 PC工具都无法升级,nan
dsc
rub0
后,可用次方法清除 n
and的数据。此时不要放升级文件放到 TF卡里面,否则会直接升级。
3
.4 普通 G
PIO的读写方式
GP
IO有输入、输出功能,首先必须设置 OEN
,OE
N位为高,G
PIO为输入功能,O
EN位为低,为输出
功能;输出功能时,0为输出低,1为输出高。
u
-bo
ot下 G PIO的读写
读寄存器:m d寄存器地址
写寄存器:m w寄存器地址 寄存器值
BL_EN控制范例:
查找 P inmux知道,BL _
EN(GP
IOD
_1)
的 OEN为 20
12[17]——寄存器 201
2的 bit17
,OUT为
2013[17]
;所以 u -b
oot下 OEN的控制地址为:c1 1
00 0
00+201
2x4=c 11
080
48,OU
T的地址为:
c110+2 013x4=c11080
4c。
读取 O
EH的值:mdc1 108
048
值为:c 1
10 8
04 8
:f fd
fffff,bi
t[1
7]为 1
,所以 O
EH为输入状态;如果要控制 B
L_EN为输出,必
须设置 bit[17]为 0
;
写OEH的值:mwc1
108
048ff
ddf
fff
读取 OU
T的值:mdc11
080
4c
写OUT的值:mwc1
108
048xx
xxx
x
注1
:为了确保正确控制,一般先控制 O
UT,在控制 OE
H。
注2
:写寄存器的值时,只能更改需要更改的 b
it,否则更改其他,会造成其他异常情况。
系统启动后控制
方式一:
读取寄存器:e c
horc 0
xaa
aa>
/s y
s/cla
ss/amh
dmit
x/a
mhd
mit
x0 /
de b
ug
写寄存器:e chow c
0xa
aaabb
bb b
bbb>/sys/c
lass
/am
hdm
itx
/a m
hd m
itx0/
deb
ug
如背光 BL_EN的 OEN控制:
ec
horc0
x2 0
12>
/s y
s/c
las
s/a
mh d
mitx/
amhdmi
tx0/
deb
ug
串口结果:1 30|
ro o
t@a
ndr
oid
:/#e ch
or c0x
2012
>/s
ys/
cla
ss /
am h
dmitx
/am
hdmi
tx0
/de
bug
[6
411
2.5
13 8
58@
1]CB U
Sreg[
20 1
2]=fe
fdfef7
,可以通过把 2 012[17]设置为 1,关掉背光。
ec
howc0
x2 0
12fe f
ffe
f7>/s
ys /
class
/amhdm
itx/
amh
dmi
tx0
/d e
bu g
注:正常关闭背光,需要控制 B L_EN的 OUT输出 0。
方式二:
先输入:cd/s y
s/ c
las
s/i
2c
读寄存器:e cho" a
aaa
">c b
us_
reg
写寄存器:e cho" waa
aabbb
bbb
bb">cbu
s_r
eg
如背光 BL_EN的 OEN控制:
cd/s
ys/
cl a
ss/
i2 c
ec
ho"20
12 ">cb u
s_r
eg
串口结果:r oot
@a n
dro
id:
/sy
s/c
las
s/i
2c#echo"
201
2">c
bus
_re
g
[
644
14.
202
863
@1]re
ad1cb
usre
gis
terfro
mreg
:20
12
[
644
14.
203
132
@1]re
g0x
201
2:0xfe
fdfe
f7
ec
ho"w20
120xfe
fffef
7">cbus
_re
g
注:机器量产的 c ode经常会把多余的打印信息关掉,此时需要先输入:
ec
ho7>/pro
c/sy
s/ker
nel
/pr
int
k
4
.电源控制
4
.1AXP202的控制
AX
P 20
2的控制及读写,在整个调试中作用很大,必须学会。
读取 AX P20
2的寄存器:
ec
h oA A>/ s
ys/
dev
ice
s/i
2c-
2/2
-00
34/
axp
20_
reg
ca
t/ sys
/de
vic
es/
i2c
-2/
2-0
034
/ax
p20
_re
g
第一句读取”AA ”寄存器,第二句把这个寄存器显示出来——从打印信息上看出来。
写A X
P202的寄存器:
ec
hoA
ABB>/s
ys/
dev
ice
s/i
2c-
2/2
-00
34/
axp
20_
reg
ca
t/s
ys/
dev
ice
s/i
2c-
2/2
-00
34/
axp
20_
reg
第一句为把值“BB”写到“AA ”寄存器。
4.1
.1常用控制的寄存器:
充电电流控制:33H,更改 b
it[3
-0]
可以相应地更改充电电流。
查看当前的充电电流:
ec
ho33>/ sys/
dev
ice
s/i
2c-
2/2
-00
34 /
axp20
_re
g
ca
t/sys
/device
s/i
2c-
2/2
-00
34/
axp
20 _
reg
串口结果:1 27|
root
@an
dro
id:
/#e c
ho33>/ sy
s/d
evi
ces
/i2
c-2
/2-
003
4/a
xp2
0_r
eg
ro
ot@
and
roid:/#cat/sy
s/d
evi
ces
/i 2
c-2/2
-00
34/
axp
20_
reg
RE
G[3
3]=
c2
ro
ot@
and
roid:/#
从寄存器 3 3中可以看出:C 2,设置为 5 00mA充电。
设置 1A充电电流():
ec
ho33c7
>/sy
s/d
evi
ces
/i2
c-2
/2-
003
4/a
xp2
0_r
eg
ca
t/ s
ys/
dev
ice
s/i
2c-
2/2
-00
34/ax
p20_
reg
注1 :如果要关系充电功能,把 b i
t[7]设置为 0即可。
查看 U
SB是否限流:
ec
ho3 0>/sys
/de
vic
es/
i2c
-2/
2-0
034
/ax
p20
_re
g
ca
t/ sys
/de
vic
es/
i2c
-2/
2-0
034
/ax
p20
_re
g
注:A
XP2
02的 3
0寄存器最后两位为 0
0,限流 90
0mA
;01
,限流 5
00m
A,11
,不限流。在只有 U
SB
口的 D
C输入时,此处应该为 0
0。
4
.1.
2GPIO的寄存器控制:
GPI
O0用于 2
G、3G的电源控制,GP
IO1用于 V
CCX
2的控制,G
PIO
2由于 H
DMI
_3.
3V的控制,GP
IO3
用于 V
CCX3的控制,此处已 V C
CX2的控制为例。
读取寄存器:
echo92>/ sys
/de
vic
es/i2c-2/2-0
034/axp
20_
reg
cat/sys/
devic
es/
i2c
-2/2-0034/ax
p20_reg
写寄存器:
echo92xx>/sys/
dev
ices/i2c-2/2
-0034/a
xp2
0_r
eg
cat/sys/
devic
es/
i2c
-2/2-0034/ax
p20_reg
注:控制 VCCX2上电,9 2H的 bit[
2:0 ]
设置为 0 00,但关闭 VC
CX2时,bit
[2:0
]不能设置为 00
1——输
出高,因为 3 .3V相对于控制的电源 V CCX(3.5-5V)来说,还不足以关断 MO S管,必须设置为 010通用
输入模式,以便外部上拉拉高。
4
.2 V
CCK的控制
VC
CK为 CPU的内核电压,是最重要的一个电源,M X/
MXS
/MXL中的 V
CCK根据 C
PU的负载调节 C PU的
频率和 V C
CK的电压,电压调节范围为 0 .93
V-1.
4V。不能更改 DC/D
C的反馈电压:FB =
0.6
V,否则导致
c
ode控制 V CC
K的电压有出入,造成死机。
若一定要更改 D C的 FB电压,请按照下表,调节外围参数,使其符合 c od
e的要求(u -bo
ot下操
作):
步骤 命令 说明
1 m
w0xc
110
80b
80x
41 /
/设置 pinm
ux
2 m
w0xc
110
865
80x
800
31 /
/en
abl
ep wm
使用万用表测量,vc
ck正常值约为
3 m
w0xc
110
865
00x
1c1 1
.40
v
4 m
d0xc
110
865
0 /
/读出刚才寄存器 0
xf1
108
650的设置值
使用万用表测量,vc
ck正常值约为
5 m
w0xc
110
865
00x
030
0191 1
.35
v
使用万用表测量,vc
ck正常值约为
6 m
w0xc
110
865
00x
0b0
0111 1
.21
v
使用万用表测量,vc
ck正常值约为
7 m
w0xc
110
865
00x
110
00b1 1
.11
v
使用万用表测量,vc
ck正常值约为
8 m
w0xc
110
865
00x
170
0051 1
.01
v
使用万用表测量,vc
ck正常值约为
9 m
w0xc
110
865
00x
1c0
0001 0
.92
6v
5
.LCD
5.1背光的控制
读取 B L_E
N的状态:e chorc0x2012
>/sys/class/
am h
dm i
tx /
am h
dm i
tx 0
/d e
bu g
e
ch orc0x2
013
>/ s
ys/cla
ss /
amhdmi
tx /
amhdmi
tx 0
/d e
bu g
关闭背光 BL _EN:echowc0x2013fffdffff>/sys/class/amhdmitx/amhdmitx0/d
ebu
g
打开背光(BL
_EN输出高):e chowc0x2013ffffffff>/sys/class/amhd
mit
x/a
mhd
mit
x0/
deb
ug
关闭背光(BL
_EN输出低):e chowc0x2013fffdffff>/sys/class/amhd
mit
x/a
mhd
mit
x0/
deb
ug
读取背光等级:e c
horc
0x2
1da>
/sy
s/ c
la s
s/a
mh d
mi t
x/a
mh d
mi t
x0 /
de b
ug
调节背光:ec
how
c0x
21d
a631
005>/
sys
/cl
ass
/am
hdm
itx
/am
hdm
itx
0/d
ebu
g
注:63
100
0的最后一位为背光等级,0-
F分别对应不同的等级,数值越大,背光越暗。
5
.2LCD_3.0V控制
G
PIOA_2
7,O E
N:20 0c[
27],OUT:200d[
27]
读取 LCD_PWR_ENn的状态:e chorc0x2
00c>/sy
s/c
las
s/a
mhd
mitx/a
mhd
mit
x0/d
ebug
e
chor c
0x 2
00 d
>/sys/cl
ass/am
hdmi
tx/am
hdm
itx
0/d
ebu
g
关闭 LCD_3.0V电源:
e
chow c
0x 2
00 c ffffff
ff> /s
ys/c
lass/
amh
dmi
tx/
amh
dmi
tx0
/debug
注:LC D
_3 .
0V为 2 .8V的 GP
IO控制 3. 3
V的电源,关闭时,不能设为 1 (输出 2.8V),此时无法完
全关闭,需要把 OE N设置为 1 ——输入,通过外部上拉拉高到 3 .3
V,其他完全关闭 M OS管。
5
.3VCCX3控制
A
XP202的 G
PIO
3
读取 VCCX3_ENn的状态:
ec
ho 95>/ sys/d
evic
es/i2
c-2
/2-003
4/axp2
0_r
eg
ca
t/ s
ys /
de v
ices/
i2c-
2/2-0
034
/axp20
_reg
打开 VCCX3电源:e cho 95
00>/ sys
/devi
ces/i2
c-2/
2-0
034
/ax
p20
_re
g
读取 VCCX3_ENn的状态:e c
ho 9502>/ sy
s/devi
ces/
i2c
-2/
2-0
034
/ax
p20
_re
g
注:在测试功耗中,使用如下命令关闭/打开屏和背光。
e
chod
isa
ble>/
sys
/cl
ass
/lc
d/d
ebu
g
e
choe
nab
le>/s
ys/
cla
ss/
lcd
/de
bug
6
.HDM
I、
6
.1手动切换到 HD M
I
e
cho7
20p>/sy
s/clas
s/d
isp
lay
/mo
de
e
cho1
080p>/s
ys/cla
ss/
dis
pla
y/m
ode
由 HDM
I切换到 LCD屏
e
ch opane
l>/sy
s/cla
ss/
dis
pla
y/m
ode
6
.7. w
ifi检查
w
ifi信号质量 1 WI
FI天线是否焊接良好,
接地端是否足够粗;
不好 2 La
you
t是否对天线做 50
Ω的阻抗,是否严格按
照天线规格书的 L
ayo
ut说明;
3 测量 26
M晶振的频偏,是否小于 15
ppm
。
4 天线是否受机构影响较大,可以单独测试 P
CBA
的信号质量;
5 天线质量是否有问题,更改其他天线试试;
6 找WI
FI模组厂家帮忙测试 RF的输出/
接收功率
是否足够大;
2
6M晶振对 wi
fi信号影响较大,需要严格选型。
7
.8. A
udi
o检查
*
不同的耳机座,可能会导致 H P_DET的状态不一样,需要软件更改。
8
.1ALC5631Q寄存器的读写
先输入命令:
m
oun
t- tdeb u
gfsno
ne/sy
s/k
er n
el/de
bug
c
d/sys/k
ern e
l/d
ebu
g/a
soc
/AM
L- R
T5631
/rt
563
1.1
-00
1a
读取寄存器:catco
dec
_re
g
更改寄存器:echo0
20808>cod
ec_reg
注:02是表示寄存器的地址 02H
,0 80
8是寄存器的值。
8
.2WM8960寄存器的读写
先输入命令:
m
oun
t- td eb
ugf
snone/sy
s/k
ern
el/
deb
ug
c
d/sys/k
e rn
el/
deb
ug/a
soc
/AM
L-W
M89
60/
wm8
960
-co
dec
.1-
001
a
读取寄存器:catco
dec
_re
g
更改寄存器:echo0
20808>c
odec_
reg
注:02是表示寄存器的地址 0 2H
,0 808是寄存器的值。
8
.3AL
C32
61寄存器的读写
先输入命令:
m
oun
t-td
ebu
gfsn
one/s
ys/
ker
nel
/de
bug
c
d/sy
s/k
ern
el/
deb
ug/
aso
c/A
ML-
RT3
261
/rt
326
1.1
-00
1c
读取寄存器:catco
dec
_re
g
更改寄存器:echo0
20808>c
odec_
reg
注:02是表示寄存器的地址 0 2H
,0 808是寄存器的值。
注:CO
DEC寄存器的更改,可以非常有效地来协助调试。
9
.其它检查
1
.6V
),波形是否方正;
6 PW
DN状态是否正确( 双摄像头时,其中一个工作,另外
一个必须进入 Po
werDow
n);软件 P
WDN的正确控制。
7 用串口查看摄像头的 I2
C是否正确;
8 用示波器测量各信号,确认是否正常;
U
SB无法连接 1 检查 U
SB座、R
205
、R2
06是否焊接良好;
P
C 2 测量 V
BUS
1(C
167
)电压是否正常(4
.8V
-5.
2V)
;
3 测量 I
D1(
C16
6)是否为高电平(
若为低电平,则 US
BA作
为HOS
T功能);
4 检查 R
62(
43.
2R)
是否焊接良好;
5 确认软件是否支持 U
SB功能。/系统 U
SB的设置是“调
试模式”还是“存储模式”
6 观察记录串口打印信息。
O
TG无效 1 检查 U
SB座、R
205
、R2
06是否焊接良好;
2 插入 U
SBD
evi
ce后,测量 I
D1(
C16
6)是否为低电平;
3 测量 U
SB_
PWR
(C1
65)
供电是否正常(
4.8
-5.
2V)
;
4 测量 U
SB_
PWR
_CT
L(U
16.
1)是否为高电平,
VCC
5V和
V
CCX
2电压是否正常;
5 检查 R
62(
43.
2R)
是否焊接良好;
6 确认软件是否支持 U
SBH
OST功能;观察记录串口打印
信息;
注 1:遥控头可接到 V DDI
O_ A
O以实现系统休眠后可遥控唤醒,但休眠功耗会增加。
注 2:通过观察同组 I 2C的其他设备是否可用来判断 I2 C是否正常。
注 3:La
yout时 Se
nsor的 pin1管脚指向横屏位置的左下角,可以减少调试的麻烦。
注 4:VC
C5V电压偏高,O TG工作后连接到 PMU的 VB
US会造成 P
MU过压保护而关闭。
1
0.其他调试命令
1
0.1DD
R频率的测试:
d
2pl
l0x1 1
0232
注:32为设定 DD R的频率,为 3
8为 1
6进制数,设定频率为:(
3x1
6+2
)*1
2=6
00M
,更改后两位设定
不同的 DDR频率;
d
drt
est3
注:为 u-boot下测试频率,3为设定测试次数;
设定频率后,直接跑系统,可测试该频率对系统的稳定性;
1
0. 2手动升级
把升级文件放到 TF ,插卡、上电启动 u -b
oot;
在 u-b
oot下敲入:mm
cin
fo;
fat
loa
dmmc0:182
000
000r
eco
ver
y.i
mg;bo
otm
敲入“回车”并启动进入升级界面,选择升级文件升级;
1
0.3跑其他 Ke rne
l
把目标 kernel放到 TF卡里,插卡上电启动
m
mci
nfo
;f a
tloadmmc0:
1820
000
00u
Ima
ge.
img
;boo
tm
1
0.4查看 CP
U的频率
b
usy
boxc
at/ pr
oc/
cpu
inf
o
看到的值/2
,即为现在的 C
PU频率;
R
evi
sio
n D
ate Ow
ner C
han
ges
0
.2 M
AR2
0,20
13 HWFA
ETE
AM 初稿