linux 2.6.30内核,9g45开发板,gpio驱动,该怎么解决

linux 2.6.30内核,9g45开发板,gpio驱动
求一个atmel sam9g45开发板的gpio驱动程序,应用程序通过写入1/0控制led灯的亮暗,管脚用AT91_PIN_PB20,用insmod加载,小弟对驱动一无所知,也不知道问题讲清楚没,刚开始了解一天,求大牛帮忙

------解决方案--------------------
给你提供一个代码,你在自己的内核交叉编译环境上编译,有可能头文件引用的不怎么正确,编译的时候修改一下就OK了.
头文件: geo_ds_gpio.h
C/C++ code

#ifndef __GEO_DS_GPIO_H__
#define __GEO_DS_GPIO_H__

#include <linux/sched.h>
#include <linux/init.h>

/* PIN definitions */

#define GEO_DS_GPIO_MAGIC       's'

#define SWITCH_LED_ON           _IOW( GEO_DS_GPIO_MAGIC, 0, int ))

#define GEO_DS_GPIO_MAXNR       1

/* PIN definitions */
#define PIN_LED_STAT            AT91_PIN_PB30

#endif  // __GEO_DS_GPIO_H__

------解决方案--------------------
说下步骤吧,首先你得有电路图,知道LED和芯片怎么连的,连到那跟脚上去了(一般是GPXX),然后去查芯片文档关于GPXX的描述,然后建立指针,赋值。。。。