Hi Sushruth,
I would understand it so that a driver for such hardware first has to be written.
Perhaps the card is similar to another that is supported by ni_pcimio or another ni_* driver.
Maybe you just have do add adequate enum-entries and desriptors to
/usr/src/linux/drivers/staging/comedi/drivers/ni_pcimio.c like these ones for a PCIe-6259 board,
of course with the correct parameters for your card, especially the real PCI Device ID.
enum ni_pcimio_boardid {
...
BOARD_PCIE6259,
...
static const struct ni_board_struct ni_boards[] = {
...
...
[BOARD_PCIE6259] = {
.name = "pcie-6259",
.n_adchan = 32,
.ai_maxdata = 0xffff,
.ai_fifo_depth = 4095,
.gainlkup = ai_gain_628x,
.ai_speed = 800,
.n_aochan = 4,
.ao_maxdata = 0xffff,
.ao_fifo_depth = 8191,
.ao_range_table = &range_ni_M_625x_ao,
.reg_type = ni_reg_625x,
.ao_speed = 350,
.has_32dio_chan = 1,
.caldac = { caldac_none },
...
and
static const struct pci_device_id ni_pcimio_pci_table[] = {
...
{ PCI_VDEVICE(NI, 0x717f), BOARD_PCIE6259 },
^^^^^^^^^^^
...
lspci -nn lists all the devices with Vendor-ID (here: 0x1093 for NI) and Device-ID.
You have to identify the line for your card and newly create and append such data structs with
BOARD_PCIE6323 instead of BOARD_PCIE6259.
To correctly fill in the new struct ni_board_struct you will likely need the data sheet or specs of your card or driver sources from NI where you can find the register descriptions of the PCIe - 6323.
Ciao, Bernd