3 #include "config_common.h"
5 #define VENDOR_ID 0x1234
6 #define PRODUCT_ID 0x5678
7 #define DEVICE_VER 0x0001
8 #define MANUFACTURER QMK
9 #define PRODUCT TRACKPOINT-DEMO
10 #define DESCRIPTION Simple demonstration for IBM Trackpoint integration
16 #define PS2_CLOCK_PORT PORTD
17 #define PS2_CLOCK_PIN PIND
18 #define PS2_CLOCK_DDR DDRD
19 #define PS2_CLOCK_BIT 5
20 #define PS2_DATA_PORT PORTD
21 #define PS2_DATA_PIN PIND
22 #define PS2_DATA_DDR DDRD
23 #define PS2_DATA_BIT 2
25 /* synchronous, odd parity, 1-bit stop, 8-bit data, sample at falling edge */
26 /* set DDR of CLOCK as input to be slave */
27 #define PS2_USART_INIT() do { \
28 PS2_CLOCK_DDR &= ~(1<<PS2_CLOCK_BIT); \
29 PS2_DATA_DDR &= ~(1<<PS2_DATA_BIT); \
30 UCSR1C = ((1 << UMSEL10) | \
39 #define PS2_USART_RX_INT_ON() do { \
40 UCSR1B = ((1 << RXCIE1) | \
43 #define PS2_USART_RX_POLL_ON() do { \
44 UCSR1B = (1 << RXEN1); \
46 #define PS2_USART_OFF() do { \
48 UCSR1B &= ~((1 << RXEN1) | \
51 #define PS2_USART_RX_READY (UCSR1A & (1<<RXC1))
52 #define PS2_USART_RX_DATA UDR1
53 #define PS2_USART_ERROR (UCSR1A & ((1<<FE1) | (1<<DOR1) | (1<<UPE1)))
54 #define PS2_USART_RX_VECT USART1_RX_vect
57 #define MATRIX_COL_PINS { F1, F4, F5 }
58 #define MATRIX_ROW_PINS { F0 }
61 /* COL2ROW or ROW2COL */
62 #define DIODE_DIRECTION COL2ROW
66 #define LOCKING_SUPPORT_ENABLE
67 #define LOCKING_RESYNC_ENABLE