From dcc899a1b5db2b894f28ac3c417608a80b8394af Mon Sep 17 00:00:00 2001
From: Markus Sattler <help.markus+git@gmail.com>
Date: Fri, 8 May 2015 15:33:48 +0200
Subject: [PATCH] some speed optimizations

---
 libraries/SPI/SPI.cpp | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/libraries/SPI/SPI.cpp b/libraries/SPI/SPI.cpp
index 740401c3a..d9f9ea1eb 100644
--- a/libraries/SPI/SPI.cpp
+++ b/libraries/SPI/SPI.cpp
@@ -123,7 +123,11 @@ void SPIClass::setFrequency(uint32_t freq) {
     const spiClk_t minFreqReg = { 0x7FFFF000 };
     uint32_t minFreq = ClkRegToFreq((spiClk_t*) &minFreqReg);
     if(freq < minFreq) {
-        freq = minFreq;
+        // use minimum possible clock
+        setClockDivider(minFreqReg.regValue);
+        lastSetRegister = SPI1CLK;
+        lastSetFrequency = freq;
+        return;
     }
 
     uint8_t calN = 1;