一、编写目的
根据“1.AT91SAM9260建立开发环境.doc”搭建好开发环境后,接下来就是进行各个硬件驱动的调试了。本文档用于记录硬件驱动的调试过程,方便日后快速参考设计相关驱动。
二、驱动移植
1. RTC驱动(PCF8563)
本核心板上使用的RTC芯片型号为PCF8563。LINUX内核对其驱动已经有完整的支持,因此只需要进行相关配置即可。
a) 修改内核中的RTC配置
Device Drivers ---> Real Time Clock --->
< > AT91SAM9x/AT91CAP9 RTT as RTC //取消内部RTC设置
<*> Philips PCF8563/Epson RTC8564 //打开外部IIC RTC配置
b) 修改板级配置文件
# gedit ./arch/arm/mach-at91/board-sam9260ek.c
static struct i2c_board_info __initdata ek_i2c_devices[] = { { I2C_BOARD_INFO("pcf8563", 0x51), //add /* delete I2C_BOARD_INFO("24c512", 0x50), .platform_data = &at24c512, */ }, /* more devices can be added using expansion connectors */ };
|
c) 设置 系统时钟并写到RTC上(设置为2014年7月8日 02:43:00)
# date -s "2014-07-08 02:43:00"
# hwclock -w
2. Led驱动
LINUX内核对于LED有完善的架构支持,可以在内核配置时打开相关配置项。
a) 修改内核中的配置
Device Drivers ---> [*] LED Support --->
[*] LED Class Support
<*> LED Support for GPIO connected LEDs
[*] Platform device bindings for GPIO LEDs
[*] LED Trigger support
<*> LED Timer Trigger
<*> LED Heartbeat Trigger
<*> LED backlight Trigger