#include <linux/module.h> // module_init module_exit
#include <linux/init.h> // __init __exit
#include <linux/fs.h>
#include <linux/string.h>
#include <asm/uaccess.h>
#include <mach/regs-gpio.h>
#include <mach/gpio-bank.h>
#include <linux/io.h>
#include <linux/ioport.h>
#include <mach/gpio-bank.h>
#include <linux/cdev.h>
#include <linux/types.h>
#include <linux/device.h>
//物理地址
#define GPJ0BASE 0xE0200240
#define GPJ0CON 0xE0200240
#define GPJ0DAT 0xE0200244
//虚拟地址
#define rGPJ0CON *((volatile unsigned int *)S5PV210_GPJ0CON)
#define rGPJ0DAT *((volatile unsigned int *)S5PV210_GPJ0DAT)
typedef struct GPJ0
{
unsigned int CON;
unsigned int DAT;
}GPJ0_t;
//GPJ0_t *pgpj0=NULL;
static void __iomem *pgpj0;
static dev_t devnb;
char kbuf[10]="987654321";
static struct cdev mdev,*pdev;
static struct class *test_class;
volatile unsigned int *pGPJ0CON,*pGPJ0
linux驱动开发扩展--自动创建设备文件并使用内核提供的寄存器读写接口例程
最新推荐文章于 2022-11-22 15:01:13 发布