Added missing offsets for RTSI register on m-series
authorFrank Mori Hess <fmhess@speakeasy.net>
Fri, 20 Oct 2006 16:15:34 +0000 (16:15 +0000)
committerFrank Mori Hess <fmhess@speakeasy.net>
Fri, 20 Oct 2006 16:15:34 +0000 (16:15 +0000)
comedi/drivers/ni_pcimio.c
comedi/drivers/ni_stc.h

index b4f11fbe6c75c65948ed678dd7f05c780aa1106a..07be0fb9b9b267a1178814969091790d636a2ae5 100644 (file)
@@ -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) */
index 84cbb1c0bf2d085de4e7afad20eddb49c4e3d171..6c48aeadb79cbc0b4b7d2bea5d601e33daf03763 100644 (file)
@@ -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,