http://blog.youkuaiyun.com/linuxarmsummary/article/details/44831713 这篇讲了编译内核
http://blog.youkuaiyun.com/xiabodan/article/details/24308373
这篇博客讲了怎么做一个简单的led驱动,但是源代码有问题,有的地方讲的不是很清楚。
内核版本:3.17.0 。对应xilinx的github上的内核版本是 2014.4,同时注意需要对应版本(2014.4)的boot.bin。
代码:gpio.c
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/fs.h>
#include <linux/device.h>
#include <asm/io.h>
#define DEVICE_NAME "AXI_GPIO_MOUDLE"
#define PWM_MOUDLE_PHY_ADDR 0x41200000 //This Address is based XPS 见图1
MODULE_AUTHOR("Xilinx ");
MODULE_DESCRIPTION("AXI GPIO moudle dirver");
MODULE_VERSION("v1.0");
MODULE_LICENSE("GPL");
static int axi_gpio_driver_major;
static struct class* axi_gpio_driver_class = NULL;
static struct device* axi_gpio_driver_device = NULL;
unsigned long axi_gpio_fre_addr = 0; //AXI_GPIO moulde's visual address
static struct file_operations axi_gpio_fops = {
.owner = THIS_MODULE,
};
static ssize_t sys_axi_gpio_set (