]> git.sur5r.net Git - openocd/blobdiff - src/jtag/hla/hla_interface.h
jtag: drivers: stlink: handle all versions with single config
[openocd] / src / jtag / hla / hla_interface.h
index 398aa806234eeaefb58994be2938cb980eedbf03..262025e9818b7e59e3bc46bd133f19d80cfd49bf 100644 (file)
  *   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 Street, Fifth Floor, Boston, MA 02110-1301 USA.           *
+ *   along with this program.  If not, see <http://www.gnu.org/licenses/>. *
  ***************************************************************************/
 
-#ifndef _HL_INTERFACE
-#define _HL_INTERFACE
+#ifndef OPENOCD_JTAG_HLA_HLA_INTERFACE_H
+#define OPENOCD_JTAG_HLA_HLA_INTERFACE_H
 
 /** */
 struct target;
@@ -31,27 +29,25 @@ enum e_hl_transports;
 /** */
 extern const char *hl_transports[];
 
+#define HLA_MAX_USB_IDS 8
+
 struct hl_interface_param_s {
        /** */
-       char *device_desc;
-       /** */
-       char *serial;
+       const char *device_desc;
        /** */
-       uint16_t vid;
-       /** */
-       uint16_t pid;
+       const char *serial;
+       /** List of recognised VIDs */
+       uint16_t vid[HLA_MAX_USB_IDS + 1];
+       /** List of recognised PIDs */
+       uint16_t pid[HLA_MAX_USB_IDS + 1];
        /** */
        unsigned api;
        /** */
        enum hl_transports transport;
        /** */
-       int max_buffer;
-       /** */
        bool connect_under_reset;
-       /** Output file for trace data (if any) */
-       FILE *trace_f;
-       /** Trace module source clock rate */
-       uint32_t trace_source_hz;
+       /** Initial interface clock clock speed */
+       int initial_interface_speed;
 };
 
 struct hl_interface_s {
@@ -60,7 +56,7 @@ struct hl_interface_s {
        /** */
        const struct hl_layout *layout;
        /** */
-       void *fd;
+       void *handle;
 };
 
 /** */
@@ -69,5 +65,6 @@ int hl_interface_open(enum hl_transports tr);
 
 int hl_interface_init_target(struct target *t);
 int hl_interface_init_reset(void);
+int hl_interface_override_target(const char **targetname);
 
-#endif /* _HL_INTERFACE */
+#endif /* OPENOCD_JTAG_HLA_HLA_INTERFACE_H */