- /* Save pin IO configuration */
- m_dir = m_out = m_ren = 0;
- if (is4pin())
- saveBits(STE, 0, m_dir, m_out, m_ren);
- saveBits(SIMO, 1, m_dir, m_out, m_ren);
- saveBits(SOMI, 2, m_dir, m_out, m_ren);
- saveBits(CLK, 3, m_dir, m_out, m_ren);
-
- /* Configure pins for SPI use */
- if (is4pin()) {
-#if 0 /* Unsure if REN on STE is a valid configuration */
- /* Configure STE pin for SPI use */
- if (config->ren & USCI_REN_STE) {
- if (config->ren & USCI_REN_STE_PULLUP)
- call STE.set();
- else
- call STE.clr();
- call STE.enableRen();
- }
-#endif
+ /* Configure pins for SPI, saving prior pin states */
+ m_pins = 0;
+ if (is4pin() && call STE.isIOFunc()) {
+ m_pins |= (1 << PINS_STE);