/* SPDX-License-Identifier: GPL-2.0+ */
/* vim: set ts=8 sw=8 noet tw=80 nowrap: */
/*
 *  comedi/drivers/ni_routing/ni_device_routes/all.h
 *  List of valid routes for specific NI boards.
 *
 *  COMEDI - Linux Control and Measurement Device Interface
 *  Copyright (C) 2016 Spencer E. Olson <olsonse@umich.edu>
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 */

/*
 * The contents of this file are generated using the tools in
 * comedi/drivers/ni_routing/tools
 *
 * Please use those tools to help maintain the contents of this file.
 */

#ifndef _COMEDI_DRIVERS_NI_ROUTING_NI_DEVICE_ROUTES_EXTERN_H
#define _COMEDI_DRIVERS_NI_ROUTING_NI_DEVICE_ROUTES_EXTERN_H

#include "../ni_device_routes.h"

extern struct ni_device_routes ni_pxi_6030e_device_routes;
extern struct ni_device_routes ni_pci_6070e_device_routes;
extern struct ni_device_routes ni_pci_6220_device_routes;
extern struct ni_device_routes ni_pci_6221_device_routes;
extern struct ni_device_routes ni_pxi_6224_device_routes;
extern struct ni_device_routes ni_pxi_6225_device_routes;
extern struct ni_device_routes ni_pci_6229_device_routes;
extern struct ni_device_routes ni_pci_6251_device_routes;
extern struct ni_device_routes ni_pxi_6251_device_routes;
extern struct ni_device_routes ni_pxie_6251_device_routes;
extern struct ni_device_routes ni_pci_6254_device_routes;
extern struct ni_device_routes ni_pci_6259_device_routes;
extern struct ni_device_routes ni_pci_6534_device_routes;
extern struct ni_device_routes ni_pxie_6535_device_routes;
extern struct ni_device_routes ni_pci_6602_device_routes;
extern struct ni_device_routes ni_pci_6713_device_routes;
extern struct ni_device_routes ni_pci_6723_device_routes;
extern struct ni_device_routes ni_pci_6733_device_routes;
extern struct ni_device_routes ni_pxi_6733_device_routes;
extern struct ni_device_routes ni_pxie_6738_device_routes;

#endif //_COMEDI_DRIVERS_NI_ROUTING_NI_DEVICE_ROUTES_EXTERN_H
