本帖最后由 airbs 于 2013-4-22 09:59 编辑
SUNROC1 发表于 2013-4-21 21:58
如何注释掉? 在那个文件里?
/etc/modules, 把mali_drm, mali两行注掉, boot的时候就不会加载GPU的driver了。
或者编译kernel的时候把宏USE_PLL6M_REPLACE_PLL4打开,
"arch/arm/mach-sun4i/include/mach/aw_ccu.h" line 32,
#define USE_PLL6M_REPLACE_PLL4 (1)
Pll6的clock下调到960M, (至于为什么下调,呵呵我只是从字面 理解,PLL6作为PLL4来工作,就设成PLL4的值吧,clock不敢乱设)
"arch/arm/mach-sun4i/clock/clock.c" lines 183
/* initiate PLL6 */
tmpSclk = &ccu_sys_clk[AW_SYS_CLK_PLL6];
tmpSclk->clk->rate = 960000000;
tmpSclk->set_clk(tmpSclk->clk);
sata和mali都没啥问题,简单理解只是sata的clk下调了些,性能影响多少,没有测试,只少这两个都能工作了。
这个问题group上很早就有人反应,我看到的理解如下:
1. USE_PLL6M_REPLACE_PLL4 这个宏ms时因为在verc(cubieboard?)的IC上PLL4不稳定,play video的时候会hang, 所以定义了这个宏--用PLL6替代PLL4.
2. 为了修sata重启的问题,PLL6又改到了1.2G,但这样mali的clock被提升到400M变得不稳定(按理script.bin里可以修改mali_clkdiv=4,mali_clk=300M,没有测试过)。group上那群人觉得USE_PLL6M_REPLACE_PLL4似乎没啥用,又把这个宏关掉了。这样PLL6=1.2G,sata问题解决, PLL4=960M,还是原来值,mali正常。
问题的症结在于USE_PLL6M_REPLACE_PLL4这个宏是否必须?这个应该是厂商扔出来的workaround吧,反正在我的板子上,ms要把这个宏打开,否则linaro,cubiebox_tvbox_rel2.x.img都死在insmod mali那会。
但我的改动把PLL6下调到960M,没有影响到sata重启的问题(不清楚sata重启前因后果,应该不仅是clk的问题)。
linaro和cubieboard_opentv.tar.gz编译的系统都能起来。
不过cubieboard_opentv我又碰到新问题——hdmi的audio非常卡,用codec输出没啥问题,请高人指教。
以上我是的理解,有错之处请指正。也希望有高人能出来帮大家解疑释惑。
|