WK2124 驱动移植
官网:
http://www.wkmic.com/News_Show.php?theId=17
驱动首先放在 kernel 3.2.0 driver/spi/ 下面
// 1. 更名为 wk2124A.h wk2124A.c// 2. 在 Kconfig 加入如下配置:429 config SPI_WK2124A430 tristate "WK2124A spi to 4 uart drvier"431 depends on SPI432 help433 SPI driver for wk2124 cs1 spi to 4 wire uart IC driver.// 3 . 在 Makefile 里面加入:61 obj-$(CONFIG_SPI_WK2124A) += wk2124A.o// 4. 修改驱动源码// 5. 在 头文件中修改:// 修改主次设备号144 #define SERIAL_WK2124A_MAJOR 190145 #define CALLOUT_WK2124A_MAJOR 191148 /* am33xx irq */149 #define GPIO_TO_PIN(bank, gpio) (32 * (bank) + (gpio))150 #define IH2_BASE 32151 #define OMAP_MAX_GPIO_LINES 192152 #define IH_GPIO_BASE (128 + IH2_BASE)153 #define IH_MPUIO_BASE (OMAP_MAX_GPIO_LINES + IH_GPIO_BASE)154 #define OMAP_IRQ_END (IH_MPUIO_BASE + 16)155 #define OMAP_GPIO_IS_MPUIO(nr) ((nr) >= OMAP_MAX_GPIO_LINES)156 #define OMAP_GPIO_IRQ(nr) (OMAP_GPIO_IS_MPUIO(nr) ? \157 IH_MPUIO_BASE + ((nr) & 0x0f) : \158 IH_GPIO_BASE + (nr))159 160 //wk2xxx hardware configuration161 #define IRQ_WK2124A OMAP_GPIO_IRQ(GPIO_TO_PIN(0, 23)) // 这段代码是加入 AM335X 中断的选择// 在 wk2124A.c 里面修改29 #include "wk2124A.h"1476 static struct uart_driver wk2124_uart_driver = {1477 owner: THIS_MODULE,1478 major: SERIAL_WK2124A_MAJOR,1479 #ifdef CONFIG_DEVFS_FS1480 driver_name: "ttySWZA",1481 dev_name: "ttysWZA",1482 #else1483 driver_name: "ttySWZA",1484 dev_name: "ttysWZA",1485 #endif1486 minor: MINOR_START,1487 nr: NR_PORTS,1488 cons: NULL//WK2Xxx_CONSOLE,1489 };1595 static struct spi_driver wk2124A_driver = {1596 .driver = {1597 .name = "wk2124A",1598 .bus = &spi_bus_type,1599 .owner = THIS_MODULE,1600 },1601 1602 .probe = wk2124A_probe, // 相应的, probe 的名字也要修改1603 .remove = __devexit_p(wk2124_remove),1604 .resume = wk2124_resume,1605 };1607 static int __init wk2124A_init(void)1608 {1609 int retval;1610 1611 retval = spi_register_driver(&wk2124A_driver);1612 printk(KERN_ALERT "rgister spi return v = :%d\n", retval);1613 1614 return retval;1615 }1616 1617 static void __exit wk2124A_exit(void)1618 {1619 spi_unregister_driver(&wk2124A_driver);1620 printk("TEST_REG:quit ");1621 }1622 1623 module_init(wk2124A_init);1624 module_exit(wk2124A_exit);1625 1626 MODULE_AUTHOR("WKIC Ltd");1627 MODULE_DESCRIPTION("wk2xxx generic serial port driver");1628 MODULE_LICENSE("GPL");// 修改 init 函数名字以及 驱动名字
在板级文件的 spi_slave 里面加入:
841 static struct spi_board_info am335x_spi0_slave_info[] = {842 #if 0843 {844 .modalias = "spidev",845 .max_speed_hz = 10000000,//48Mbps846 .bus_num = 1,847 .chip_select = 0,848 .mode = SPI_MODE_0,849 },850 #endif851 #if 1852 {853 .modalias = "wk2124A", // compiler854 .mode = SPI_MODE_0,855 .max_speed_hz = 10000000, // speed 10Mbps856 .bus_num = 1, // spi0 bus857 .chip_select = 0, // spi_cs0858 },859 #endif860 };
转载于:https://www.cnblogs.com/chenfulin5/p/8081419.html
WK2124 驱动移植相关推荐
- WK2124 linux 驱动移植
WK系列 SPI扩展 UART驱动移植参考 1.WK系列SPI扩展UART芯片简介 1.1 WK系列简介 目前WK系列能实现SPI扩展uart的芯片包括 WK2124.WK2204.WK2168.W ...
- [lcm] Qualcomm平台的显示屏lcd驱动移植步骤
1lk部分 1-1 target_displayc 1-2 oem_panelc 1-3 panel_innont51021b_1200p_videoh 2Kernel 2-1 dsi-panel-b ...
- (转载)TL-WN725N V3无线网卡驱动移植与wireless工具wpa_supplicant-2.6
感谢以及转载于: TL-WN725N V3无线网卡驱动移植与wireless工具wpa_supplicant-2.6 目录: 一.TL-WN725N V3无线网卡驱动移植 下载源码 解压源码 编译 二 ...
- 基于MT6752/32平台 Android L版本驱动移植步骤
基于MT6752/32平台 Android L版本驱动移植步骤 根据MK官网所述,在Android L 版本上Turnkey ABS 架构将会phase out,而Mediatek Turnkey架构 ...
- uboot环境下mmc操作_【记录】将Uboot 2011.06中mmc驱动移植到uboot 1.1.6的过程
[记录]将Uboot 2011.06中mmc驱动移植到uboot 1.1.6的过程 时间:2011-8-14 作者:crifan 联系方式:green-waste (at) 163.com 附上代码: ...
- RT3070_STA_驱动移植文档
[连载]RT3070STA 驱动移植 移植环境: 主机操作系统:Ubantu10.10 目标系统:at91sam9m10内核linux-2.6.30 交叉编译 ...
- 移植基于linux-2.6.26.5内核s3c2410触摸屏驱动移植
移植基于linux-2.6.26.5内核s3c2410触摸屏驱动移植的过程记录下来: (1)首先打一个补丁:s3c2410_touchscreen.patch, 在内核解压的根目录下 patch -N ...
- AM335x(TQ335x)学习笔记——GPIO关键驱动移植
或按照S5PV210学习秩序.我们首先解决的关键问题.TQ335x有六个用户按钮,每个上.下.剩下.对.Enter和ESC. 我想开始学习S5PV210当同一,写输入子系统驱动器的关键问题要解决,但浏 ...
- linux3.0-内核自带led驱动移植
**************************************************************************************************** ...
最新文章
- 学习javascript 非常好的博客
- 开发板与pc之间文件传输:kermit and lrzsz
- OpenStack/Gnocchi简介——时间序列数据聚合操作提前计算并存储起来,先算后取的理念...
- 栈的应用就进匹配_笔记
- git add -A 和 git add . 的区别
- 23 | MySQL是怎么保证数据不丢的?
- 3.卷1(套接字联网API)---套接字编程简介
- 【转】Handler+ExecutorService(线程池)+MessageQueue模式+缓存模式
- Atitit usrQBM1603短信验证码规范
- Recommended System
- Hamcrest 总结
- 当贝投影F5发布:3000ANSI流明亮度,6S疾速开机,16ms超低延迟
- Cocoa是什么???
- 6岁就获吉尼斯世界纪录!这届10后程序员「小鬼当家」
- 数据分析师基本技能——SQL
- 3分钟快速阅读-《Effective Java》(三)
- 独角数卡发卡网站搭建流程
- gstreamer(三) 常用命令集锦
- LVS均衡负载(三) LVS后端服务健康状态检查
- 酷科技 | 智能戒指 ——将科技武装到手指