summaryrefslogtreecommitdiff
path: root/keyboards
diff options
context:
space:
mode:
authorJack Humbert <jack.humb@gmail.com>2016-07-06 18:05:50 -0400
committerJack Humbert <jack.humb@gmail.com>2016-07-06 18:05:50 -0400
commitc88207884b5fb16c8955b54b4331fc605158b9f2 (patch)
tree3c929a4e018db257b7f0238f2a52d21600352bca /keyboards
parenteb6e17be6fc378fdfb8c5c2c7253c17ffc07d225 (diff)
parent5baaf871bbdd6667625860b0daef7fe9a91e08db (diff)
Merge branch 'master' into lets-split-support
Diffstat (limited to 'keyboards')
-rw-r--r--keyboards/ergodox_ez/matrix.c12
-rw-r--r--keyboards/infinity_ergodox/Makefile1
-rw-r--r--keyboards/infinity_ergodox/infinity_ergodox.c10
3 files changed, 23 insertions, 0 deletions
diff --git a/keyboards/ergodox_ez/matrix.c b/keyboards/ergodox_ez/matrix.c
index 9c1efa1d05..dc29cf5cd0 100644
--- a/keyboards/ergodox_ez/matrix.c
+++ b/keyboards/ergodox_ez/matrix.c
@@ -39,6 +39,17 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "timer.h"
#endif
+/*
+ * This constant define not debouncing time in msecs, but amount of matrix
+ * scan loops which should be made to get stable debounced results.
+ *
+ * On Ergodox matrix scan rate is relatively low, because of slow I2C.
+ * Now it's only 317 scans/second, or about 3.15 msec/scan.
+ * According to Cherry specs, debouncing time is 5 msec.
+ *
+ * And so, there is no sense to have DEBOUNCE higher than 2.
+ */
+
#ifndef DEBOUNCE
# define DEBOUNCE 5
#endif
@@ -181,6 +192,7 @@ uint8_t matrix_scan(void)
if (debouncing) {
if (--debouncing) {
wait_us(1);
+ // this should be wait_ms(1) but has been left as-is at EZ's request
} else {
for (uint8_t i = 0; i < MATRIX_ROWS; i++) {
matrix[i] = matrix_debouncing[i];
diff --git a/keyboards/infinity_ergodox/Makefile b/keyboards/infinity_ergodox/Makefile
index fb21aae5eb..efa32e037d 100644
--- a/keyboards/infinity_ergodox/Makefile
+++ b/keyboards/infinity_ergodox/Makefile
@@ -66,6 +66,7 @@ COMMAND_ENABLE ?= yes # Commands for debug and configuration
SLEEP_LED_ENABLE ?= yes # Breathing sleep LED during USB suspend
NKRO_ENABLE ?= yes # USB Nkey Rollover
CUSTOM_MATRIX ?= yes # Custom matrix file
+SERIAL_LINK_ENABLE = yes
ifndef QUANTUM_DIR
include ../../Makefile
diff --git a/keyboards/infinity_ergodox/infinity_ergodox.c b/keyboards/infinity_ergodox/infinity_ergodox.c
index 34aded1a73..85054775e8 100644
--- a/keyboards/infinity_ergodox/infinity_ergodox.c
+++ b/keyboards/infinity_ergodox/infinity_ergodox.c
@@ -1 +1,11 @@
#include "infinity_ergodox.h"
+#include "ch.h"
+#include "hal.h"
+#include "serial_link/system/serial_link.h"
+
+void init_serial_link_hal(void) {
+ PORTA->PCR[1] = PORTx_PCRn_PE | PORTx_PCRn_PS | PORTx_PCRn_PFE | PORTx_PCRn_MUX(2);
+ PORTA->PCR[2] = PORTx_PCRn_DSE | PORTx_PCRn_SRE | PORTx_PCRn_MUX(2);
+ PORTE->PCR[0] = PORTx_PCRn_PE | PORTx_PCRn_PS | PORTx_PCRn_PFE | PORTx_PCRn_MUX(3);
+ PORTE->PCR[1] = PORTx_PCRn_DSE | PORTx_PCRn_SRE | PORTx_PCRn_MUX(3);
+}