I have my LaunchPad configured with all SSI ports (0,1,2,3) enabled. My code only exercises SSI3 at the moment. If I monitor SSI3CLK with an oscilloscope and short SSI2RX (PB6) to ground, my SSI3CLK gets corrupted (runty, noisy clock only 500mV in amplitude). Funny, SSI3FSS is unaffected. Here's how my GPIOs are configured;
MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI2);
MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI0);
MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI1);
MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI3);
MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB);
MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOC);
MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD);
MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF);
//
// Enable pin PA7 for GPIOOutput
//
MAP_GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE, GPIO_PIN_7);
//
// Enable pin PB0 for GPIOOutput
//
MAP_GPIOPinTypeGPIOOutput(GPIO_PORTB_BASE, GPIO_PIN_0);
//
// Enable pin PB2 for GPIOOutput
//
MAP_GPIOPinTypeGPIOOutput(GPIO_PORTB_BASE, GPIO_PIN_2);
//
// Enable pin PB1 for GPIOOutput
//
MAP_GPIOPinTypeGPIOOutput(GPIO_PORTB_BASE, GPIO_PIN_1);
//
// Enable pin PC5 for GPIOOutput
//
MAP_GPIOPinTypeGPIOOutput(GPIO_PORTC_BASE, GPIO_PIN_5);
//
// Enable pin PC4 for GPIOOutput
//
MAP_GPIOPinTypeGPIOOutput(GPIO_PORTC_BASE, GPIO_PIN_4);
//
// Enable pin PC6 for GPIOInput
//
MAP_GPIOPinTypeGPIOInput(GPIO_PORTC_BASE, GPIO_PIN_6);
//
// Enable pin PA3 for SSI0 SSI0FSS
//
MAP_GPIOPinConfigure(GPIO_PA3_SSI0FSS);
MAP_GPIOPinTypeSSI(GPIO_PORTA_BASE, GPIO_PIN_3);
//
// Enable pin PA4 for SSI0 SSI0RX
//
MAP_GPIOPinConfigure(GPIO_PA4_SSI0RX);
MAP_GPIOPinTypeSSI(GPIO_PORTA_BASE, GPIO_PIN_4);
//
// Enable pin PA2 for SSI0 SSI0CLK
//
MAP_GPIOPinConfigure(GPIO_PA2_SSI0CLK);
MAP_GPIOPinTypeSSI(GPIO_PORTA_BASE, GPIO_PIN_2);
//
// Enable pin PF3 for SSI1 SSI1FSS
//
MAP_GPIOPinConfigure(GPIO_PF3_SSI1FSS);
MAP_GPIOPinTypeSSI(GPIO_PORTF_BASE, GPIO_PIN_3);
//
// Enable pin PF0 for SSI1 SSI1RX
// First open the lock and select the bits we want to modify in the GPIO commit register.
//
HWREG(GPIO_PORTF_BASE + GPIO_O_LOCK) = GPIO_LOCK_KEY;
HWREG(GPIO_PORTF_BASE + GPIO_O_CR) = 0x1;
//
// Now modify the configuration of the pins that we unlocked.
//
MAP_GPIOPinConfigure(GPIO_PF0_SSI1RX);
MAP_GPIOPinTypeSSI(GPIO_PORTF_BASE, GPIO_PIN_0);
//
// Enable pin PF1 for SSI1 SSI1TX
//
MAP_GPIOPinConfigure(GPIO_PF1_SSI1TX);
MAP_GPIOPinTypeSSI(GPIO_PORTF_BASE, GPIO_PIN_1);
//
// Enable pin PF2 for SSI1 SSI1CLK
//
MAP_GPIOPinConfigure(GPIO_PF2_SSI1CLK);
MAP_GPIOPinTypeSSI(GPIO_PORTF_BASE, GPIO_PIN_2);
//
// Enable pin PB4 for SSI2 SSI2CLK
//
MAP_GPIOPinConfigure(GPIO_PB4_SSI2CLK);
MAP_GPIOPinTypeSSI(GPIO_PORTB_BASE, GPIO_PIN_4);
//
// Enable pin PB5 for SSI2 SSI2FSS
//
MAP_GPIOPinConfigure(GPIO_PB5_SSI2FSS);
MAP_GPIOPinTypeSSI(GPIO_PORTB_BASE, GPIO_PIN_5);
//
// Enable pin PB6 for SSI2 SSI2RX
//
MAP_GPIOPinConfigure(GPIO_PB6_SSI2RX);
MAP_GPIOPinTypeSSI(GPIO_PORTB_BASE, GPIO_PIN_6);
//
// Enable pin PD0 for SSI3 SSI3CLK
//
MAP_GPIOPinConfigure(GPIO_PD0_SSI3CLK);
MAP_GPIOPinTypeSSI(GPIO_PORTD_BASE, GPIO_PIN_0);
//
// Enable pin PD2 for SSI3 SSI3RX
//
MAP_GPIOPinConfigure(GPIO_PD2_SSI3RX);
MAP_GPIOPinTypeSSI(GPIO_PORTD_BASE, GPIO_PIN_2);
//
// Enable pin PD1 for SSI3 SSI3FSS
//
MAP_GPIOPinConfigure(GPIO_PD1_SSI3FSS);
MAP_GPIOPinTypeSSI(GPIO_PORTD_BASE, GPIO_PIN_1);
//
// Enable pin PD3 for SSI3 SSI3TX
//
MAP_GPIOPinConfigure(GPIO_PD3_SSI3TX);
MAP_GPIOPinTypeSSI(GPIO_PORTD_BASE, GPIO_PIN_3);
Any thoughts?