FreeCalypso > hg > freecalypso-sw
diff target-utils/c139explore/backlight.c @ 949:df1dccc0ef9c
c139explore: GPIO init and backlight on/off control implemented
author | Mychaela Falconia <falcon@ivan.Harhan.ORG> |
---|---|
date | Wed, 04 Nov 2015 00:46:36 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/target-utils/c139explore/backlight.c Wed Nov 04 00:46:36 2015 +0000 @@ -0,0 +1,42 @@ +#include <sys/types.h> +#include <string.h> +#include "types.h" +#include "abbdefs.h" + +#define GPIO_OUT_REG (*(volatile u16 *) 0xfffe4802) +#define BACKLIGHT_GPIO_MASK 0x0002 + +#define AUXLED_KPBL_OFF 0x000 +#define AUXLED_KPBL_ON 0x002 + +void +cmd_dbl(argbulk) + char *argbulk; +{ + char *argv[2]; + + if (parse_args(argbulk, 1, 1, argv, 0) < 0) + return; + if (!strcmp(argv[0], "on")) + GPIO_OUT_REG |= BACKLIGHT_GPIO_MASK; + else if (!strcmp(argv[0], "off")) + GPIO_OUT_REG &= ~BACKLIGHT_GPIO_MASK; + else + printf("ERROR: \"on\" or \"off\" argument expected\n"); +} + +void +cmd_kpbl(argbulk) + char *argbulk; +{ + char *argv[2]; + + if (parse_args(argbulk, 1, 1, argv, 0) < 0) + return; + if (!strcmp(argv[0], "on")) + abb_reg_write(AUXLED, AUXLED_KPBL_ON); + else if (!strcmp(argv[0], "off")) + abb_reg_write(AUXLED, AUXLED_KPBL_OFF); + else + printf("ERROR: \"on\" or \"off\" argument expected\n"); +}