From e361896b7ac1d338b115b169b5ed20d43caef861 Mon Sep 17 00:00:00 2001 From: Frank Mori Hess Date: Fri, 20 Oct 2006 16:15:34 +0000 Subject: [PATCH] Added missing offsets for RTSI register on m-series --- comedi/drivers/ni_pcimio.c | 24 +++++++++++++++++++----- comedi/drivers/ni_stc.h | 1 + 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/comedi/drivers/ni_pcimio.c b/comedi/drivers/ni_pcimio.c index b4f11fbe..07be0fb9 100644 --- a/comedi/drivers/ni_pcimio.c +++ b/comedi/drivers/ni_pcimio.c @@ -1130,6 +1130,9 @@ static void m_series_stc_writew(comedi_device *dev, uint16_t data, int reg) case AI_Trigger_Select_Register: offset = M_Offset_AI_Trigger_Select; break; + case Analog_Trigger_Etc_Register: + offset = M_Offset_Analog_Trigger_Etc; + break; case AO_Command_1_Register: offset = M_Offset_AO_Command_1; break; @@ -1166,6 +1169,10 @@ static void m_series_stc_writew(comedi_device *dev, uint16_t data, int reg) case DAC_FIFO_Clear: offset = M_Offset_AO_FIFO_Clear; break; + case DIO_Control_Register: + rt_printk("%s: FIXME: register 0x%x does not map cleanly on to m-series boards.\n", __FUNCTION__, reg); + return; + break; case G_Autoincrement_Register(0): offset = M_Offset_G0_Autoincrement; break; @@ -1205,12 +1212,19 @@ static void m_series_stc_writew(comedi_device *dev, uint16_t data, int reg) case Joint_Reset_Register: offset = M_Offset_Joint_Reset; break; - case Analog_Trigger_Etc_Register: - offset = M_Offset_Analog_Trigger_Etc; + case RTSI_Trig_A_Output_Register: + offset = M_Offset_RTSI_Trig_A_Output; break; - case DIO_Control_Register: - rt_printk("%s: FIXME: register 0x%x does not map cleanly on to m-series boards.\n", __FUNCTION__, reg); - return; + case RTSI_Trig_B_Output_Register: + offset = M_Offset_RTSI_Trig_B_Output; + break; + case RTSI_Board_Register: + offset = M_Offset_RTSI_Shared_MUX; + break; + case RTSI_Trig_Direction_Register: + /* m-series register map bit shifts all the RTSI direction bits by one, + compared to the e-series, but I'm guessing that's a typo. */ + offset = M_Offset_RTSI_Trig_Direction; break; /* FIXME: DIO_Output_Register (16 bit reg) is replaced by M_Offset_Static_Digital_Output (32 bit) and M_Offset_SCXI_Serial_Data_Out (8 bit) */ diff --git a/comedi/drivers/ni_stc.h b/comedi/drivers/ni_stc.h index 84cbb1c0..6c48aead 100644 --- a/comedi/drivers/ni_stc.h +++ b/comedi/drivers/ni_stc.h @@ -923,6 +923,7 @@ enum m_series_register_offsets M_Offset_Interrupt_B_Enable = 0x196, M_Offset_AI_Personal = 0x19a, M_Offset_AO_Personal = 0x19c, + M_Offset_RTSI_Trig_A_Output = 0x19e, M_Offset_RTSI_Trig_B_Output = 0x1a0, M_Offset_RTSI_Shared_MUX = 0x1a2, M_Offset_AO_Output_Control = 0x1ac, -- 2.26.2