X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=hardware%2Ffx2lafw%2Fcommand.h;h=53e7da3c71649380187a10d16bb0250855ddbdce;hb=a5b35a167a32ffbaee1ce9c0de8501f781f733d1;hp=cbb76d7fff0713556bb680a2652f284c30e76eae;hpb=d98c4e35ce3187a8d4618a6c26ce35de636d7b91;p=libsigrok.git
diff --git a/hardware/fx2lafw/command.h b/hardware/fx2lafw/command.h
index cbb76d7f..53e7da3c 100644
--- a/hardware/fx2lafw/command.h
+++ b/hardware/fx2lafw/command.h
@@ -17,8 +17,46 @@
* along with this program. If not, see .
*/
+#ifndef LIBSIGROK_HARDWARE_FX2LAFW_COMMAND_H
+#define LIBSIGROK_HARDWARE_FX2LAFW_COMMAND_H
+
+#include
+#include "libsigrok.h"
+
/* Protocol commands */
-#define CMD_GET_FW_VERSION 0xb0
-#define CMD_START 0xb1
+#define CMD_GET_FW_VERSION 0xb0
+#define CMD_START 0xb1
+#define CMD_GET_REVID_VERSION 0xb2
+
+#define CMD_START_FLAGS_WIDE_POS 5
+#define CMD_START_FLAGS_CLK_SRC_POS 6
+
+#define CMD_START_FLAGS_SAMPLE_8BIT (0 << CMD_START_FLAGS_WIDE_POS)
+#define CMD_START_FLAGS_SAMPLE_16BIT (1 << CMD_START_FLAGS_WIDE_POS)
+
+#define CMD_START_FLAGS_CLK_30MHZ (0 << CMD_START_FLAGS_CLK_SRC_POS)
+#define CMD_START_FLAGS_CLK_48MHZ (1 << CMD_START_FLAGS_CLK_SRC_POS)
+
+#pragma pack(push, 1)
+
+struct version_info {
+ uint8_t major;
+ uint8_t minor;
+};
+
+struct cmd_start_acquisition {
+ uint8_t flags;
+ uint8_t sample_delay_h;
+ uint8_t sample_delay_l;
+};
+
+#pragma pack(pop)
+
+SR_PRIV int command_get_fw_version(libusb_device_handle *devhdl,
+ struct version_info *vi);
+SR_PRIV int command_get_revid_version(libusb_device_handle *devhdl,
+ uint8_t *revid);
+SR_PRIV int command_start_acquisition(libusb_device_handle *devhdl,
+ uint64_t samplerate, gboolean samplewide);
-int command_start_acquisition(libusb_device_handle *devhdl);
+#endif