S5pc100触摸屏Linux驱动移植教程与配置详解

5星 · 超过95%的资源 需积分: 3 16 下载量 124 浏览量 更新于2024-09-16 收藏 28KB DOC 举报
本文档详细介绍了如何在Linux 2.6.35.13内核下进行S5pc100触摸屏驱动的移植过程。S5pc100是一种基于Cortex-A8架构的嵌入式平台,其触控屏驱动移植涉及到对内核配置文件的修改以支持特定的硬件设备。 首先,核心步骤是修改driver/input/touchscreen/Kconfig文件。原始配置中仅包含了S3C2410的通用触摸屏输入驱动,但为了支持S5pc100,需要新增对S5PC100架构的支持。通过将TOUCHSCREEN_S3C2410配置项的依赖项添加ARCH_S5PC100,表示此驱动现在也适用于S5pc100平台,并选中S3C_ADC模块,以便正确识别和配置ADC控制器。 接下来,针对S5pc100特有的硬件映射,需要在arch/arm/mach-s5pc100/include/mach/map.h中定义新的宏SAMSUNG_PA_ADC,指定ADC控制器的物理地址。这一步确保了内核能够正确识别和处理S5pc100上的ADC硬件资源。 在平台设备定义层面,需要在arch/arm/plat-samsung/Kconfig文件中更新SAMSUNG_DEV_ADC和SAMSUNG_DEV_TS配置选项。这两个配置分别用于ADC控制器和触摸屏设备的编译。原始配置仅默认启用S3C2410的相关设备,但在移植过程中,将它们的默认值设为y,意味着这两个设备的定义都将被编译进内核,从而使得S5pc100平台能识别并使用相应的驱动。 最后,修改了arch/arm/plat-samsung/adc.c文件中的platform_device_ids数组,添加了针对S5pc100平台特有的驱动标识符,以便内核可以正确地将这些设备与驱动程序关联起来。 这个过程涉及到了内核配置文件的调整、硬件资源映射的扩展以及平台设备定义的更新,确保S5pc100的触摸屏驱动能在Linux 2.6.35.13内核环境中正常工作。对于开发人员来说,理解并执行这些步骤是至关重要的,因为它直接影响到触控功能在特定硬件上的兼容性和性能。