Module Name: src
Committed By: mbalmer
Date: Sun Nov 13 13:37:25 UTC 2011
Modified Files:
src/lib/lua/gpio: gpio.c
Log Message:
Remove software pulsing.
To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/lib/lua/gpio/gpio.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/lib/lua/gpio/gpio.c
diff -u src/lib/lua/gpio/gpio.c:1.4 src/lib/lua/gpio/gpio.c:1.5
--- src/lib/lua/gpio/gpio.c:1.4 Sun Nov 13 09:46:11 2011
+++ src/lib/lua/gpio/gpio.c Sun Nov 13 13:37:24 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: gpio.c,v 1.4 2011/11/13 09:46:11 mbalmer Exp $ */
+/* $NetBSD: gpio.c,v 1.5 2011/11/13 13:37:24 mbalmer Exp $ */
/*
* Copyright (c) 2011 Marc Balmer <[email protected]>
@@ -224,56 +224,6 @@ gpio_attach(lua_State *L)
return 0;
}
-static int
-gpio_pulse(lua_State *L)
-{
- struct gpio_pulse pulse;
- suseconds_t period, on, off, sec;
- double freq, dc;
- int *fd;
-
- fd = luaL_checkudata(L, 1, GPIO_METATABLE);
- freq = luaL_checknumber(L, 3);
- dc = luaL_checknumber(L, 4);
-
- if (freq < 0.0 || (dc < 0.0 || dc >= 100.0))
- gpio_error(L, "%.f Hz, %.f%% duty cycle: invalid value",
- freq, dc);
-
- memset(&pulse, 0, sizeof(pulse));
- gpio_get_pin(L, 2, (void *)&pulse);
-
- if (freq > 0.0 && dc > 0.0) {
- period = 1000000 / freq;
- on = period * dc / 100;
- off = period - on;
-
- if (on >= 1000000) {
- pulse.gp_pulse_on.tv_sec = sec = on / 1000000;
- on -= sec * 1000000;
- pulse.gp_pulse_on.tv_usec = on;
- } else {
- pulse.gp_pulse_on.tv_sec = 0;
- pulse.gp_pulse_on.tv_usec = on;
- }
- if (off >= 1000000) {
- pulse.gp_pulse_off.tv_sec = sec = off / 1000000;
- off -= sec * 1000000;
- pulse.gp_pulse_off.tv_usec = off;
- } else {
- pulse.gp_pulse_off.tv_sec = 0;
- pulse.gp_pulse_off.tv_usec = off;
- }
- } else { /* gpio(4) defaults */
- freq = 1.0;
- dc = 50.0;
- }
-
- if (ioctl(*fd, GPIOPULSE, &pulse) == -1)
- gpio_error(L, "GPIOPULSE");
- return 0;
-}
-
struct constant {
const char *name;
int value;
@@ -283,7 +233,6 @@ static const struct constant gpio_consta
/* GPIO pin states */
{ "PIN_LOW", GPIO_PIN_LOW },
{ "PIN_HIGH", GPIO_PIN_HIGH },
- { "PIN_PULSE", GPIO_PIN_PULSE },
/* GPIO pin configuration flags */
{ "PIN_INPUT", GPIO_PIN_INPUT },
@@ -314,7 +263,7 @@ gpio_set_info(lua_State *L)
lua_pushliteral(L, "GPIO interface for Lua");
lua_settable(L, -3);
lua_pushliteral(L, "_VERSION");
- lua_pushliteral(L, "gpio 1.0.0");
+ lua_pushliteral(L, "gpio 1.0.1");
lua_settable(L, -3);
}
@@ -336,7 +285,6 @@ luaopen_gpio(lua_State* L)
{ "write", gpio_write },
{ "toggle", gpio_toggle },
{ "attach", gpio_attach },
- { "pulse", gpio_pulse },
{ NULL, NULL }
};
int n;