]> sigrok.org Git - sigrok-firmware-fx2lafw.git/blobdiff - include/fx2lafw.h
Increase FX2LAFW_VERSION_MINOR to 4.
[sigrok-firmware-fx2lafw.git] / include / fx2lafw.h
index fcafa62e630f0cd206fa7b3d8c0b0525bf17a503..c6606619e775f84ce21a0c027c41cd6bce57bd8e 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * This file is part of the fx2lafw project.
+ * This file is part of the sigrok-firmware-fx2lafw project.
  *
  * Copyright (C) 2012 Joel Holdsworth <joel@airwebreathe.org.uk>
  *
  * GNU General Public License for more details.
  *
  * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
+#ifndef FX2LAFW_INCLUDE_FX2LAFW_H
+#define FX2LAFW_INCLUDE_FX2LAFW_H
+
 #include <autovector.h>
 
 #define SYNCDELAY() SYNCDELAY4
+
+/*
+ * Major and minor fx2lafw firmware version numbers.
+ * These can be queried by the host via CMD_GET_FW_VERSION.
+ *
+ * The minor version number must be increased every time there are
+ * backwards-compatible changes (which do not change the API).
+ *
+ * The major version number must be increased every time there are API
+ * changes or functional changes which require adaptations in the host
+ * (libsigrok) drivers, i.e. changes where old libsigrok versions would no
+ * longer (properly) work with the new fx2lafw firmware.
+ */
+#define FX2LAFW_VERSION_MAJOR  1
+#define FX2LAFW_VERSION_MINOR  4
+
+#define LED_POLARITY           1 /* 1: active-high, 0: active-low */
+
+#define LED_INIT()             do { PORTACFG = 0; OEA = (1 << 1); } while (0)
+#define LED_ON()               do { PA1 = LED_POLARITY; } while (0)
+#define LED_OFF()              do { PA1 = !LED_POLARITY; } while (0)
+#define LED_TOGGLE()           do { PA1 = !PA1; } while (0)
+
+#endif