11 2016 档案

摘要:一:注册platform device 注册一个platfrom device一般需要初始化两个内容,设备占用的资源resource和设备私有数据dev.platfrom_data。设备的resource占用的资源主要包含两个方面:IO内存和IRQ资源信息,有时也包含DMA。 resource结构: 1: struct resource { 2: resource_size_... 阅读全文
posted @ 2016-11-10 14:06 夕相待 阅读(2397) 评论(0) 推荐(0)
摘要:一、核心数据结构 串口驱动有3个核心数据结构,它们都定义在1、uart_driver uart_driver包含了串口设备名、串口驱动名、主次设备号、串口控制台(可选)等信息,还封装了tty_driver(底层串口驱动无需关心tty_driver)。 1: struct uart_driver { 2: struct module *owner; ... 阅读全文
posted @ 2016-11-09 17:42 夕相待 阅读(5238) 评论(0) 推荐(0)
摘要:UART(Universal Asynchronous Receiver and Transmitter)通用异步收发器(异步串行通信口),是一种通用的数据通信协议,它包括了RS232、RS499、RS423、RS422和RS485等接口标准规范和总线标准规范,即UART是异步串行通信口的总称。 UART之间以全双工方式传输数据,最精确的连线方法只有3根电线:TxD用于发送... 阅读全文
posted @ 2016-11-09 16:58 夕相待 阅读(4524) 评论(0) 推荐(0)
摘要:一: spidev_init注册spidev 1: static int __init spidev_init(void) 2: { 3: int status; 4: 5: /* Claim our 256 reserved device numbers. Then register a clas 阅读全文
posted @ 2016-11-04 16:28 夕相待 阅读(10748) 评论(0) 推荐(0)
摘要:1.定义board设备 1: struct spi_board_info { 2: /* the device name and module name are coupled, like platform_bus; 3: * "modalias" is normally the driver na 阅读全文
posted @ 2016-11-03 17:23 夕相待 阅读(2422) 评论(0) 推荐(0)
摘要:一: SPI核心,就是指/drivers/spi/目录下spi.c文件中提供给其他文件的函数,首先看下spi核心的初始化函数spi_init(void)。 1: static int __init spi_init(void) 2: { 3: int status; 4: 5: buf = kmal 阅读全文
posted @ 2016-11-03 16:45 夕相待 阅读(2564) 评论(0) 推荐(0)
摘要:一:首先在我的平台注册platform_device,保证能让spi-gpio.c能执行到probe函数。 1: struct spi_gpio_platform_data { 2: unsigned sck; 3: unsigned mosi; 4: unsigned miso; 5: 6: u16 ... 阅读全文
posted @ 2016-11-03 11:06 夕相待 阅读(7319) 评论(0) 推荐(0)
摘要:一:SPI简介以及应用 SPI, Serial Perripheral Interface, 串行外围设备接口, 是 Motorola 公司推出的一种同步串行接口技术. SPI 总线在物理上是通过接在外围设备微控制器(PICmicro) 上面的微处理控制单元 (MCU) 上叫作同步串行端口(Sync 阅读全文
posted @ 2016-11-02 17:25 夕相待 阅读(1777) 评论(0) 推荐(0)