X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Fasm-arm%2Farch-s3c2410%2Fhardware.h;h=5b58f2aeab46ed57ea7279185c5c2af867c646f2;hb=c7b5ebbddf7bcd3651947760f423e3783bbe6573;hp=d434d77fe7f169b4d6f276bb98c317272fd0a9a3;hpb=a2c21200f1c81b08cb55e417b68150bba439b646;p=linux-2.6.git diff --git a/include/asm-arm/arch-s3c2410/hardware.h b/include/asm-arm/arch-s3c2410/hardware.h index d434d77fe..5b58f2aea 100644 --- a/include/asm-arm/arch-s3c2410/hardware.h +++ b/include/asm-arm/arch-s3c2410/hardware.h @@ -14,6 +14,8 @@ * 06-Jun-2003 BJD Added CPU frequency settings * 03-Sep-2003 BJD Linux v2.6 support * 12-Mar-2004 BJD Fixed include protection, fixed type of clock vars + * 14-Sep-2004 BJD Added misccr and getpin to gpio + * 01-Oct-2004 BJD Added the new gpio functions */ #ifndef __ASM_ARCH_HARDWARE_H @@ -44,6 +46,35 @@ extern unsigned long s3c2410_fclk; extern void s3c2410_gpio_cfgpin(unsigned int pin, unsigned int function); +extern unsigned int s3c2410_gpio_getcfg(unsigned int pin); + +/* s3c2410_gpio_getirq + * + * turn the given pin number into the corresponding IRQ number + * + * returns: + * < 0 = no interrupt for this pin + * >=0 = interrupt number for the pin +*/ + +extern int s3c2410_gpio_getirq(unsigned int pin); + +/* s3c2410_gpio_irqfilter + * + * set the irq filtering on the given pin + * + * on = 0 => disable filtering + * 1 => enable filtering + * + * config = S3C2410_EINTFLT_PCLK or S3C2410_EINTFLT_EXTCLK orred with + * width of filter (0 through 63) + * + * +*/ + +extern int s3c2410_gpio_irqfilter(unsigned int pin, unsigned int on, + unsigned int config); + /* s3c2410_gpio_pullup * * configure the pull-up control on the given pin @@ -61,6 +92,10 @@ extern void s3c2410_gpio_pullup(unsigned int pin, unsigned int to); extern void s3c2410_gpio_setpin(unsigned int pin, unsigned int to); +extern unsigned int s3c2410_gpio_getpin(unsigned int pin); + +extern unsigned int s3c2410_modify_misccr(unsigned int clr, unsigned int chg); + #endif /* __ASSEMBLY__ */ #include