Difference between revisions of "SBC8018 FAQ"
(→Linux) |
|||
(16 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | |||
− | |||
− | |||
− | |||
− | |||
= '''入门''' = | = '''入门''' = | ||
此处介绍当用户购买了SBC8018评估套件,刚开始用的时候可能会出现的问题。<br> | 此处介绍当用户购买了SBC8018评估套件,刚开始用的时候可能会出现的问题。<br> | ||
− | == | + | ==参考资料== |
+ | === QT参考 === | ||
+ | TI提供了一个QT操作系统,假若要做SAMBA,FTP之类的,可以在这个基础上自行研发, | ||
+ | 假若您打算使用SBC8018来制作一台带图形界面的网络共享服务器,建议您使用FTP,这个比SAMBA简单多。 | ||
+ | |||
+ | TI SDK参考链接: | ||
+ | http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/sdk/AM1x/latest/index_FDS.html | ||
+ | 下载 | ||
+ | ti-sdk-am180x-evm-05.02.00.00-Linux-x86-Install | ||
+ | am180x-evm-sdk-bin-05.02.00.00.tar.gz | ||
+ | |||
+ | |||
+ | ==Linux== | ||
+ | ===如何配置扩展接口的PIN MODE=== | ||
+ | 请参考内核源码:<br> | ||
+ | 文件"arch/arm/mach-davinci/board-da850-evm.c"<br> | ||
+ | ===启动时block报错=== | ||
+ | 首先这是正常的;<br> | ||
+ | mtdblock1 和 mtdblock2两个分区存放的是u-boot,用于NAND启动,所以必须使用硬件ECC。<br> | ||
+ | 硬件ECC与内核中Flash的软件ECC操作方式不同。因些,内核启动过程中某些分区预取会出现读不到有数据的情况(也就是ECC失败)。<br> | ||
+ | |||
+ | ===如何开机运行应用程序=== | ||
+ | |||
+ | 您可以通过vi修改/etc/rcS.d/S90led.sh的文件,并将执行应用程序的指令拷贝到该文件里面<br> | ||
+ | vi /etc/rcS.d/S90led.sh<br> | ||
+ | 这样开机时候会自动执行您想要运行的应用程序。<br> | ||
+ | |||
+ | ===SATA 硬盘测试注意事项 === | ||
+ | 1 先用SATA线连接好板和硬盘 再开机<br> | ||
+ | 2 电源的电压和电流要满足硬盘要求<br> | ||
+ | 3 仅支持SATA I 1.5G和SATA II 3G 硬盘<br> | ||
+ | 4 如果要正确识别硬盘上必须有一个EXT2或FAT(FAT32)分区<br> | ||
+ | |||
+ | ===U-boot下网卡显示不能找到?=== | ||
+ | U-Boot 2009.11 ( 9鏈?24 2011 - 14:17:17) | ||
+ | |||
+ | I2C: ready | ||
+ | |||
+ | DRAM: 128 MB | ||
+ | |||
+ | NAND: 128 MiB | ||
+ | |||
+ | MMC: davinci: 0 | ||
+ | |||
+ | Bad block table not found for chip 0 | ||
+ | |||
+ | Bad block table not found for chip 0 | ||
+ | |||
+ | Bad block table written to 0x000007fe0000, version 0x01 | ||
+ | |||
+ | Bad block table written to 0x000007fc0000, version 0x01 | ||
+ | |||
+ | *** Warning - bad CRC or NAND, using default environment | ||
+ | |||
+ | In: serial | ||
+ | |||
+ | Out: serial | ||
+ | |||
+ | Err: serial | ||
+ | |||
+ | ARM Clock : 300000000 Hz | ||
+ | |||
+ | DDR Clock : 150000000 Hz | ||
+ | |||
+ | '''Net: No ETH PHY detected!!!''' | ||
+ | |||
+ | 信息所反馈的是没检测到网络物理层芯片,但是输出这个的时候网络设备已经注册过,故上述的反馈是不影响以太网的使用。 | ||
+ | |||
+ | 对于软件,只要连接好硬件, 是可以成功ping通某个IP。 | ||
+ | |||
+ | === SATA 驱动参考 === | ||
+ | |||
+ | <br> | ||
+ | SATA参考驱动:<br> | ||
+ | drivers/ata/ahci.c<br> | ||
+ | drivers/ata/ahci-platform.c<br> | ||
+ | drivers/ata/ahci-ti.c<br> | ||
+ | <br> | ||
+ | SATA注册的设备:<br> | ||
+ | [arch/arm/mach-davinci/devices-da8xx.c]<br> | ||
+ | static struct resource da850_ahci_resources[] = {<br> | ||
+ | {<br> | ||
+ | .start = DA850_SATA_BASE,<br> | ||
+ | .end = DA850_SATA_BASE + 0x1fff,<br> | ||
+ | .flags = IORESOURCE_MEM,<br> | ||
+ | },<br> | ||
+ | {<br> | ||
+ | .start = IRQ_DA850_SATAINT,<br> | ||
+ | .flags = IORESOURCE_IRQ,<br> | ||
+ | }<br> | ||
+ | };<br> | ||
+ | static int da850_ahci_data = 10;<br> | ||
+ | static struct platform_device da850_ahci_device = {<br> | ||
+ | .name = "ahci",<br> | ||
+ | .id = -1,<br> | ||
+ | .dev = {<br> | ||
+ | .platform_data = &da850_ahci_data,<br> | ||
+ | .coherent_dma_mask = 0xffffffff,<br> | ||
+ | },<br> | ||
+ | .num_resources = ARRAY_SIZE(da850_ahci_resources),<br> | ||
+ | .resource = da850_ahci_resources,<br> | ||
+ | };<br> | ||
+ | int __init da8xx_register_sata(void)<br> | ||
+ | {<br> | ||
+ | return platform_device_register(&da850_ahci_device);<br> | ||
+ | }<br> | ||
+ | |||
+ | ==WinCE== | ||
+ | ===进入WinCE后,为什么每次都要触控校准?=== | ||
情况:<br> | 情况:<br> | ||
− | + | 发现每一次进入WinCE操作系统,都需要触摸屏校准,如何解决这个问题?<br> | |
− | + | <br> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
解答:<br> | 解答:<br> | ||
− | + | 因我们所配套的LCD显示屏有4.3寸、7寸,不同的LCD显示屏所使用的触摸屏参数都不一样,所以触摸屏是每一次都需要做触摸屏校准。<br> | |
− | + | 解决方法:<br> | |
− | + | 1 打开超级终端,并启动WinCE操作系统,校准一次LCD触摸屏,查看超级终端里的信息,能看到一段类似'''“CalibrationData"="2016,1888 1056,864 992,2912 3040,2976 3072,896”''',这属于触摸屏的参数。<br> | |
− | + | <br> | |
− | + | 2将触摸屏的参数加入BSP路径bsp/file/platform.reg<br> | |
− | + | <br> | |
− | + | ;-- Touch Screen driver --------------------------------------------------------<br> | |
+ | ; @CESYSGEN IF CE_MODULES_POINTER<br> | ||
+ | ; @CESYSGEN IF GWES_TCHUI<br> | ||
+ | ; @XIPREGION IF PACKAGE_OEMDRIVERS<br> | ||
+ | IF BSP_NOTOUCH !<br> | ||
+ | [HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TOUCH]<br> | ||
+ | "DriverName"="touch.dll"<br> | ||
+ | IF IMGNOCALIBRATION //将此行隐掉<br> | ||
+ | "CalibrationData"="2016,1888 1056,864 992,2912 3040,2976 3072,896" //此为您触摸屏的参数,将其修改为4.3inch或7inch<br> | ||
+ | ENDIF IMGNOCALIBRATION //将此行隐掉<br> | ||
+ | "MaxCalError"="6"<br> | ||
+ | "SPIAddr"=dword:0 ; McSPI1 channel 0<br> | ||
+ | "PenGPIO"=dword:1B ; gpio27// gpio_175<br> | ||
+ | "PenUpDebounceMS"=dword:28 ; PenUp debounce time in MS, 0 to disable debounce process<br> | ||
+ | "InitialSamplesDropped"=dword:2 ; Number of samples to be dropped after pen down detection<br> | ||
+ | ; Default is 1<br> | ||
+ | ;"SampleRate"=dword:64 ; samples per second, default is 100<br> | ||
+ | <br> | ||
+ | ENDIF BSP_NOTOUCH !<br> | ||
+ | ; @XIPREGION ENDIF PACKAGE_OEMDRIVERS<br> | ||
+ | ; @CESYSGEN ENDIF GWES_TCHUI<br> | ||
+ | ; @CESYSGEN ENDIF CE_MODULES_POINTER<br> | ||
+ | <br> |
Latest revision as of 00:46, 9 May 2012
Contents
入门
此处介绍当用户购买了SBC8018评估套件,刚开始用的时候可能会出现的问题。
参考资料
QT参考
TI提供了一个QT操作系统,假若要做SAMBA,FTP之类的,可以在这个基础上自行研发, 假若您打算使用SBC8018来制作一台带图形界面的网络共享服务器,建议您使用FTP,这个比SAMBA简单多。
TI SDK参考链接:
http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/sdk/AM1x/latest/index_FDS.html
下载 ti-sdk-am180x-evm-05.02.00.00-Linux-x86-Install am180x-evm-sdk-bin-05.02.00.00.tar.gz
Linux
如何配置扩展接口的PIN MODE
请参考内核源码:
文件"arch/arm/mach-davinci/board-da850-evm.c"
启动时block报错
首先这是正常的;
mtdblock1 和 mtdblock2两个分区存放的是u-boot,用于NAND启动,所以必须使用硬件ECC。
硬件ECC与内核中Flash的软件ECC操作方式不同。因些,内核启动过程中某些分区预取会出现读不到有数据的情况(也就是ECC失败)。
如何开机运行应用程序
您可以通过vi修改/etc/rcS.d/S90led.sh的文件,并将执行应用程序的指令拷贝到该文件里面
vi /etc/rcS.d/S90led.sh
这样开机时候会自动执行您想要运行的应用程序。
SATA 硬盘测试注意事项
1 先用SATA线连接好板和硬盘 再开机
2 电源的电压和电流要满足硬盘要求
3 仅支持SATA I 1.5G和SATA II 3G 硬盘
4 如果要正确识别硬盘上必须有一个EXT2或FAT(FAT32)分区
U-boot下网卡显示不能找到?
U-Boot 2009.11 ( 9鏈?24 2011 - 14:17:17) I2C: ready DRAM: 128 MB NAND: 128 MiB MMC: davinci: 0 Bad block table not found for chip 0 Bad block table not found for chip 0 Bad block table written to 0x000007fe0000, version 0x01 Bad block table written to 0x000007fc0000, version 0x01 *** Warning - bad CRC or NAND, using default environment In: serial Out: serial Err: serial ARM Clock : 300000000 Hz DDR Clock : 150000000 Hz Net: No ETH PHY detected!!!
信息所反馈的是没检测到网络物理层芯片,但是输出这个的时候网络设备已经注册过,故上述的反馈是不影响以太网的使用。
对于软件,只要连接好硬件, 是可以成功ping通某个IP。
SATA 驱动参考
SATA参考驱动:
drivers/ata/ahci.c
drivers/ata/ahci-platform.c
drivers/ata/ahci-ti.c
SATA注册的设备:
[arch/arm/mach-davinci/devices-da8xx.c]
static struct resource da850_ahci_resources[] = {
{
.start = DA850_SATA_BASE,
.end = DA850_SATA_BASE + 0x1fff,
.flags = IORESOURCE_MEM,
},
{
.start = IRQ_DA850_SATAINT,
.flags = IORESOURCE_IRQ,
}
};
static int da850_ahci_data = 10;
static struct platform_device da850_ahci_device = {
.name = "ahci",
.id = -1,
.dev = {
.platform_data = &da850_ahci_data,
.coherent_dma_mask = 0xffffffff,
},
.num_resources = ARRAY_SIZE(da850_ahci_resources),
.resource = da850_ahci_resources,
};
int __init da8xx_register_sata(void)
{
return platform_device_register(&da850_ahci_device);
}
WinCE
进入WinCE后,为什么每次都要触控校准?
情况:
发现每一次进入WinCE操作系统,都需要触摸屏校准,如何解决这个问题?
解答:
因我们所配套的LCD显示屏有4.3寸、7寸,不同的LCD显示屏所使用的触摸屏参数都不一样,所以触摸屏是每一次都需要做触摸屏校准。
解决方法:
1 打开超级终端,并启动WinCE操作系统,校准一次LCD触摸屏,查看超级终端里的信息,能看到一段类似“CalibrationData"="2016,1888 1056,864 992,2912 3040,2976 3072,896”,这属于触摸屏的参数。
2将触摸屏的参数加入BSP路径bsp/file/platform.reg
;-- Touch Screen driver --------------------------------------------------------
; @CESYSGEN IF CE_MODULES_POINTER
; @CESYSGEN IF GWES_TCHUI
; @XIPREGION IF PACKAGE_OEMDRIVERS
IF BSP_NOTOUCH !
[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TOUCH]
"DriverName"="touch.dll"
IF IMGNOCALIBRATION //将此行隐掉
"CalibrationData"="2016,1888 1056,864 992,2912 3040,2976 3072,896" //此为您触摸屏的参数,将其修改为4.3inch或7inch
ENDIF IMGNOCALIBRATION //将此行隐掉
"MaxCalError"="6"
"SPIAddr"=dword:0 ; McSPI1 channel 0
"PenGPIO"=dword:1B ; gpio27// gpio_175
"PenUpDebounceMS"=dword:28 ; PenUp debounce time in MS, 0 to disable debounce process
"InitialSamplesDropped"=dword:2 ; Number of samples to be dropped after pen down detection
; Default is 1
;"SampleRate"=dword:64 ; samples per second, default is 100
ENDIF BSP_NOTOUCH !
; @XIPREGION ENDIF PACKAGE_OEMDRIVERS
; @CESYSGEN ENDIF GWES_TCHUI
; @CESYSGEN ENDIF CE_MODULES_POINTER