2728603fe6d73e805a539d337fd01051c46ca806
- Author
- Joel Challis <git@zvecr.com>
- Committer
- GitHub <noreply@github.com>
- Date
Message
Diff
This diff is truncated to protect this page.
1diff --git a/build_keyboard.mk b/build_keyboard.mk
2index 36c628c7cebf6ee37c12109f48f3b5cfb49dd2ea..c12aa0fce00781597fee85ba5b7f7f2fbb6065f5 100644
3--- a/build_keyboard.mk
4+++ b/build_keyboard.mk
5@@ -388,7 +388,7 @@ VPATH += $(COMMON_VPATH)
6 include common_features.mk
7 include $(BUILDDEFS_PATH)/generic_features.mk
8 include $(TMK_PATH)/protocol.mk
9-include $(TMK_PATH)/common.mk
10+include $(PLATFORM_PATH)/common.mk
11 include $(BUILDDEFS_PATH)/bootloader.mk
12
13 SRC += $(patsubst %.c,%.clib,$(LIB_SRC))
14@@ -404,13 +404,14 @@ ifneq ($(REQUIRE_PLATFORM_KEY),)
15 endif
16 endif
17
18-include $(TMK_PATH)/$(PLATFORM_KEY).mk
19+include $(PLATFORM_PATH)/$(PLATFORM_KEY)/platform.mk
20+-include $(PLATFORM_PATH)/$(PLATFORM_KEY)/flash.mk
21+
22 ifneq ($(strip $(PROTOCOL)),)
23 include $(TMK_PATH)/protocol/$(strip $(shell echo $(PROTOCOL) | tr '[:upper:]' '[:lower:]')).mk
24 else
25 include $(TMK_PATH)/protocol/$(PLATFORM_KEY).mk
26 endif
27--include $(TOP_DIR)/platforms/$(PLATFORM_KEY)/flash.mk
28
29 # TODO: remove this bodge?
30 PROJECT_DEFS := $(OPT_DEFS)
31diff --git a/build_test.mk b/build_test.mk
32index 6e4494d77f5c6babd529b9c86eb040ce00ded385..3553125a042294a5be9c11f3a065bdbb89fa1df5 100644
33--- a/build_test.mk
34+++ b/build_test.mk
35@@ -54,11 +54,11 @@ endif
36
37 include common_features.mk
38 include $(BUILDDEFS_PATH)/generic_features.mk
39-include $(TMK_PATH)/common.mk
40+include $(PLATFORM_PATH)/common.mk
41 include $(TMK_PATH)/protocol.mk
42 include $(QUANTUM_PATH)/debounce/tests/rules.mk
43 include $(QUANTUM_PATH)/sequencer/tests/rules.mk
44-include $(TMK_PATH)/common/test/rules.mk
45+include $(PLATFORM_PATH)/test/rules.mk
46 ifneq ($(filter $(FULL_TESTS),$(TEST)),)
47 include build_full_test.mk
48 endif
49@@ -73,7 +73,7 @@ $(TEST_OBJ)/$(TEST)_INC := $($(TEST)_INC) $(VPATH) $(GTEST_INC)
50 $(TEST_OBJ)/$(TEST)_DEFS := $($(TEST)_DEFS)
51 $(TEST_OBJ)/$(TEST)_CONFIG := $($(TEST)_CONFIG)
52
53-include $(TMK_PATH)/native.mk
54+include $(PLATFORM_PATH)/$(PLATFORM_KEY)/platform.mk
55 include $(TMK_PATH)/rules.mk
56
57
58diff --git a/common_features.mk b/common_features.mk
59index 896fbb0129d0b158e829608415d0452140a86e94..8c593024f0d1d964f1e878ee5f80ddf9b533dfdb 100644
60--- a/common_features.mk
61+++ b/common_features.mk
62@@ -33,8 +33,10 @@ QUANTUM_SRC += \
63
64 VPATH += $(QUANTUM_DIR)/logging
65 # Fall back to lib/printf if there is no platform provided print
66-ifeq ("$(wildcard $(TMK_PATH)/common/$(PLATFORM_KEY)/printf.mk)","")
67+ifeq ("$(wildcard $(PLATFORM_PATH)/$(PLATFORM_KEY)/printf.mk)","")
68 include $(QUANTUM_PATH)/logging/print.mk
69+else
70+ include $(PLATFORM_PATH)/$(PLATFORM_KEY)/printf.mk
71 endif
72
73 ifeq ($(strip $(DEBUG_MATRIX_SCAN_RATE_ENABLE)), yes)
74diff --git a/docs/feature_layers.md b/docs/feature_layers.md
75index 78d950dc49698612f4dc6526a6c6562cd9f9b208..e30c540a79e6bbe6afe1b78bc9c114ca2111c12d 100644
76--- a/docs/feature_layers.md
77+++ b/docs/feature_layers.md
78@@ -45,7 +45,7 @@ Once you have a good feel for how layers work and what you can do, you can get m
79
80diff --git a/docs/fr-fr/faq_keymap.md b/docs/fr-fr/faq_keymap.md
81index 374a0052270c7a99da6fab6559de415790b0e536..cc0700ab8e7eaf2065f11cfdc936df6868cef177 100644
82--- a/docs/fr-fr/faq_keymap.md
83+++ b/docs/fr-fr/faq_keymap.md
84@@ -6,7 +6,7 @@ Cette page couvre les questions souvent posées à propos des keymaps. Si vous n
85
86 Regardez [Keycodes](keycodes.md) pour une liste des keycodes disponibles. Certains keycodes spécifiques ont des documentations plus complètes de disponible.
87
88-Les keycodes sont définies dans [common/keycode.h](https://github.com/qmk/qmk_firmware/blob/master/tmk_core/common/keycode.h).
89+Les keycodes sont définies dans [common/keycode.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/keycode.h).
90
91 ## Quels sont les keycodes par défaut ?
92
93diff --git a/docs/internals_gpio_control.md b/docs/internals_gpio_control.md
94index 21a3bd661e7e59dc0f1e4cd41e8238b8dc4af93a..ccd3f8c74d9260cb55d27f525e79553bc278ed09 100644
95--- a/docs/internals_gpio_control.md
96+++ b/docs/internals_gpio_control.md
97@@ -4,7 +4,7 @@ QMK has a GPIO control abstraction layer which is microcontroller agnostic. This
98
99 ## Functions :id=functions
100
101-The following functions provide basic control of GPIOs and are found in `tmk_core/common/<platform>/gpio.h`.
102+The following functions provide basic control of GPIOs and are found in `platforms/<platform>/gpio.h`.
103
104 |Function |Description | Old AVR Examples | Old ChibiOS/ARM Examples |
105 |------------------------|--------------------------------------------------|-------------------------------------------------|-------------------------------------------------|
106diff --git a/docs/ja/faq_keymap.md b/docs/ja/faq_keymap.md
107index fb44e316b78d9996192a6d154bad0bfeca4009df..59c7d206a1c6d1542e8791a3615ca892040ff6c3 100644
108--- a/docs/ja/faq_keymap.md
109+++ b/docs/ja/faq_keymap.md
110@@ -10,7 +10,7 @@
111 ## どのキーコードを使えますか?
112 あなたが利用可能なキーコードのインデックスについては、[キーコード](ja/keycodes.md)を見てください。より広範なドキュメントがある場合は、そこからリンクしてあります。
113
114-キーコードは実際には [common/keycode.h](https://github.com/qmk/qmk_firmware/blob/master/tmk_core/common/keycode.h) で定義されています。
115+キーコードは実際には [common/keycode.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/keycode.h) で定義されています。
116
117 ## デフォルトのキーコードとは何か?
118
119diff --git a/docs/ja/feature_layers.md b/docs/ja/feature_layers.md
120index 011f0e0ef19b1312498e818f6656e6d3fc196e00..ca3e055835732c6906ea39254a22384def2fb985 100644
121--- a/docs/ja/feature_layers.md
122+++ b/docs/ja/feature_layers.md
123@@ -50,7 +50,7 @@ QMK を使い始めたばかりの場合は、全てを単純にしたいでし
124
125diff --git a/docs/ja/pr_checklist.md b/docs/ja/pr_checklist.md
126index 18dbeccebbc51763f67ad0c1cda3be15c1e304bf..caab2b4d504545d391387fc66d840c7e1bba615b 100644
127--- a/docs/ja/pr_checklist.md
128+++ b/docs/ja/pr_checklist.md
129@@ -27,7 +27,7 @@
130 - 「旧式の」 GPIO/I2C/SPI 関数を使用しない - 正当な理由がない限り、QMK の抽象化を使用しなければなりません (怠惰は正当な理由にはなりません)
131 - タイミングの抽象化にも従う必要があります:
132 - `_delay_ms()` のかわりに `wait_ms()` を。(`#include <util/delay.h>` も消します)
133- - `timer_read()` と `timer_read32()` など。 -- タイミング API は [timer.h](https://github.com/qmk/qmk_firmware/blob/master/tmk_core/common/timer.h) を参照してください
134+ - `timer_read()` と `timer_read32()` など。 -- タイミング API は [timer.h](https://github.com/qmk/qmk_firmware/blob/master/platforms/timer.h) を参照してください
135 - 新しい抽象化が有用だと思う場合は、次のことをお勧めします:
136 - 機能が完成するまで自分のキーボードでプロトタイプを作成する
137 - Discord の QMK コラボレータと話し合う
138diff --git a/docs/pr_checklist.md b/docs/pr_checklist.md
139index 94c62c653549354afe034a8ae6bc49284d7e5a4c..2a2b0f1e7672555ce327535359c13f0870fda1a1 100644
140--- a/docs/pr_checklist.md
141+++ b/docs/pr_checklist.md
142@@ -24,7 +24,7 @@ If there are any inconsistencies with these recommendations, you're best off [cr
143 - no "old-school" or other low-level GPIO/I2C/SPI functions may be used -- must use QMK abstractions unless justifiable (and laziness is not valid justification)
144 - timing abstractions should be followed too:
145 - `wait_ms()` instead of `_delay_ms()` (remove `#include <util/delay.h>` too)
146- - `timer_read()` and `timer_read32()` etc. -- see [timer.h](https://github.com/qmk/qmk_firmware/blob/master/tmk_core/common/timer.h) for the timing APIs
147+ - `timer_read()` and `timer_read32()` etc. -- see [timer.h](https://github.com/qmk/qmk_firmware/blob/master/platforms/timer.h) for the timing APIs
148 - if you think a new abstraction is useful, you're encouraged to:
149 - prototype it in your own keyboard until it's feature-complete
150 - discuss it with QMK Collaborators on Discord
151diff --git a/docs/zh-cn/faq_keymap.md b/docs/zh-cn/faq_keymap.md
152index fdfa25ad9eeca7abac7b294b47f3d5780e793de4..ff38f38894711f1d3aca92ea24b17232e1b00889 100644
153--- a/docs/zh-cn/faq_keymap.md
154+++ b/docs/zh-cn/faq_keymap.md
155@@ -5,7 +5,7 @@
156 ## 我能用什么键码?
157 看[键码](keycodes.md)你可以找到你能用的键码索引。可以的话这些链接可以连接到更广泛的文档。
158
159-键码实际上定义在[common/keycode.h](https://github.com/qmk/qmk_firmware/blob/master/tmk_core/common/keycode.h).
160+键码实际上定义在[common/keycode.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/keycode.h).
161
162 ## 默认的键码什么样?
163
164diff --git a/keyboards/ai03/orbit/split_util.c b/keyboards/ai03/orbit/split_util.c
165index a83ff5bc67ecae60215008829e9161c2f9902654..2352e5a1118659d85c289f7a32e1fd0f819c2c50 100644
166--- a/keyboards/ai03/orbit/split_util.c
167+++ b/keyboards/ai03/orbit/split_util.c
168@@ -8,7 +8,7 @@
169 #include "quantum.h"
170
171 #ifdef EE_HANDS
172-# include "tmk_core/common/eeprom.h"
173+# include "eeprom.h"
174 # include "eeconfig.h"
175 #endif
176
177diff --git a/keyboards/cannonkeys/satisfaction75/satisfaction75.c b/keyboards/cannonkeys/satisfaction75/satisfaction75.c
178index 8b5016437c9a841be76bc53e2b0c9eca50ad7bc7..bd7eaf188588b2015759b01a7f3421eed1b553a5 100644
179--- a/keyboards/cannonkeys/satisfaction75/satisfaction75.c
180+++ b/keyboards/cannonkeys/satisfaction75/satisfaction75.c
181@@ -9,7 +9,7 @@
182
183 #include "raw_hid.h"
184 #include "dynamic_keymap.h"
185-#include "tmk_core/common/eeprom.h"
186+#include "eeprom.h"
187 #include "version.h" // for QMK_BUILDDATE used in EEPROM magic
188
189 /* Artificial delay added to get media keys to work in the encoder*/
190diff --git a/keyboards/cannonkeys/satisfaction75/satisfaction_encoder.c b/keyboards/cannonkeys/satisfaction75/satisfaction_encoder.c
191index cefdbc5f9c06587a8f211da203d550adadef379a..0d2fdc359cf13f3b7aa166fdd3041098dabf4a8b 100644
192--- a/keyboards/cannonkeys/satisfaction75/satisfaction_encoder.c
193+++ b/keyboards/cannonkeys/satisfaction75/satisfaction_encoder.c
194@@ -1,5 +1,5 @@
195 #include "satisfaction75.h"
196-#include "tmk_core/common/eeprom.h"
197+#include "eeprom.h"
198
199 void pre_encoder_mode_change(){
200 if(encoder_mode == ENC_MODE_CLOCK_SET){
201diff --git a/keyboards/mxss/mxss.c b/keyboards/mxss/mxss.c
202index f591d39e6782503b3778b1118856364426565337..21beee232ce766da1dba1aecb12d91dbfb487783 100644
203--- a/keyboards/mxss/mxss.c
204+++ b/keyboards/mxss/mxss.c
205@@ -17,7 +17,7 @@
206 */
207
208 #include QMK_KEYBOARD_H
209-#include "tmk_core/common/eeprom.h"
210+#include "eeprom.h"
211 #include "action_layer.h"
212 #include "rgblight.h"
213 #include "via.h"
214diff --git a/keyboards/mxss/mxss_frontled.c b/keyboards/mxss/mxss_frontled.c
215index 3c4309f0702feedc71362be6c794cfd809d77c82..f5e4613dfb20d0c55d289049fad06a7e499e172b 100644
216--- a/keyboards/mxss/mxss_frontled.c
217+++ b/keyboards/mxss/mxss_frontled.c
218@@ -17,7 +17,7 @@
219 */
220
221 #include "mxss_frontled.h"
222-#include "tmk_core/common/eeprom.h"
223+#include "eeprom.h"
224 #include "rgblight.h"
225 #include "via.h"
226 #include "version.h" // for QMK_BUILDDATE used in EEPROM magic
227diff --git a/keyboards/wilba_tech/wt_main.c b/keyboards/wilba_tech/wt_main.c
228index d5e136e06b7427b87a18e50e51d335eafaa2f53c..a8ad795446d497425a4eebd59a8aa0b6b33ae583 100644
229--- a/keyboards/wilba_tech/wt_main.c
230+++ b/keyboards/wilba_tech/wt_main.c
231@@ -27,7 +27,7 @@
232 #include "via.h"
233
234 #ifndef VIA_ENABLE
235-#include "tmk_core/common/eeprom.h"
236+#include "eeprom.h"
237 #include "version.h" // for QMK_BUILDDATE used in EEPROM magic
238 #endif
239
240diff --git a/keyboards/wilba_tech/wt_mono_backlight.c b/keyboards/wilba_tech/wt_mono_backlight.c
241index 77cee34ca657083d2f090c3d08df985ce6e975b7..5e2fde810c05b64591a04f51520172b0521b0a8f 100644
242--- a/keyboards/wilba_tech/wt_mono_backlight.c
243+++ b/keyboards/wilba_tech/wt_mono_backlight.c
244@@ -24,7 +24,7 @@
245
246 #include "progmem.h"
247 #include "quantum/color.h"
248-#include "tmk_core/common/eeprom.h"
249+#include "eeprom.h"
250
251 #include "via.h" // uses EEPROM address, lighting value IDs
252 #define MONO_BACKLIGHT_CONFIG_EEPROM_ADDR (VIA_EEPROM_CUSTOM_CONFIG_ADDR)
253diff --git a/keyboards/wilba_tech/wt_rgb_backlight.c b/keyboards/wilba_tech/wt_rgb_backlight.c
254index 82b1fb2fb368d279e2bc1d0b2438b3a1059b3749..63763c6c901020867927d4a1a12d5c76801a5349 100644
255--- a/keyboards/wilba_tech/wt_rgb_backlight.c
256+++ b/keyboards/wilba_tech/wt_rgb_backlight.c
257@@ -68,7 +68,7 @@ LED_TYPE g_ws2812_leds[WS2812_LED_TOTAL];
258
259 #include "progmem.h"
260 #include "quantum/color.h"
261-#include "tmk_core/common/eeprom.h"
262+#include "eeprom.h"
263
264 #include "via.h" // uses EEPROM address, lighting value IDs
265 #define RGB_BACKLIGHT_CONFIG_EEPROM_ADDR (VIA_EEPROM_CUSTOM_CONFIG_ADDR)
266diff --git a/paths.mk b/paths.mk
267index 7be1b2ce04e1fe374b44fbe501883b4e10b41ad4..5a39d00ecd73ee4cb9713be4ead5f3b274fc0832 100644
268--- a/paths.mk
269+++ b/paths.mk
270@@ -13,6 +13,9 @@ DRIVER_PATH = $(DRIVER_DIR)
271 PLATFORM_DIR = platforms
272 PLATFORM_PATH = $(PLATFORM_DIR)
273
274+PROTOCOL_DIR = protocol
275+PROTOCOL_PATH = $(TMK_DIR)/$(PROTOCOL_DIR)
276+
277 BUILDDEFS_DIR = builddefs
278 BUILDDEFS_PATH = $(BUILDDEFS_DIR)
279
280diff --git a/tmk_core/common/arm_atsam/_timer.h b/platforms/arm_atsam/_timer.h
281rename from tmk_core/common/arm_atsam/_timer.h
282rename to platforms/arm_atsam/_timer.h
283diff --git a/tmk_core/common/arm_atsam/_wait.h b/platforms/arm_atsam/_wait.h
284rename from tmk_core/common/arm_atsam/_wait.h
285rename to platforms/arm_atsam/_wait.h
286diff --git a/tmk_core/common/arm_atsam/atomic_util.h b/platforms/arm_atsam/atomic_util.h
287rename from tmk_core/common/arm_atsam/atomic_util.h
288rename to platforms/arm_atsam/atomic_util.h
289diff --git a/tmk_core/common/arm_atsam/bootloader.c b/platforms/arm_atsam/bootloader.c
290rename from tmk_core/common/arm_atsam/bootloader.c
291rename to platforms/arm_atsam/bootloader.c
292diff --git a/tmk_core/common/arm_atsam/eeprom.c b/platforms/arm_atsam/eeprom.c
293rename from tmk_core/common/arm_atsam/eeprom.c
294rename to platforms/arm_atsam/eeprom.c
295diff --git a/tmk_core/common/arm_atsam/gpio.h b/platforms/arm_atsam/gpio.h
296rename from tmk_core/common/arm_atsam/gpio.h
297rename to platforms/arm_atsam/gpio.h
298diff --git a/tmk_core/common/arm_atsam/pin_defs.h b/platforms/arm_atsam/pin_defs.h
299rename from tmk_core/common/arm_atsam/pin_defs.h
300rename to platforms/arm_atsam/pin_defs.h
301diff --git a/tmk_core/common/arm_atsam/platform.c b/platforms/arm_atsam/platform.c
302rename from tmk_core/common/arm_atsam/platform.c
303rename to platforms/arm_atsam/platform.c
304diff --git a/tmk_core/arm_atsam.mk b/platforms/arm_atsam/platform.mk
305rename from tmk_core/arm_atsam.mk
306rename to platforms/arm_atsam/platform.mk
307diff --git a/tmk_core/common/arm_atsam/platform_deps.h b/platforms/arm_atsam/platform_deps.h
308rename from tmk_core/common/arm_atsam/platform_deps.h
309rename to platforms/arm_atsam/platform_deps.h
310diff --git a/tmk_core/common/arm_atsam/suspend.c b/platforms/arm_atsam/suspend.c
311rename from tmk_core/common/arm_atsam/suspend.c
312rename to platforms/arm_atsam/suspend.c
313diff --git a/tmk_core/common/arm_atsam/timer.c b/platforms/arm_atsam/timer.c
314rename from tmk_core/common/arm_atsam/timer.c
315rename to platforms/arm_atsam/timer.c
316diff --git a/tmk_core/common/atomic_util.h b/platforms/atomic_util.h
317rename from tmk_core/common/atomic_util.h
318rename to platforms/atomic_util.h
319diff --git a/tmk_core/common/avr/_print.h b/platforms/avr/_print.h
320rename from tmk_core/common/avr/_print.h
321rename to platforms/avr/_print.h
322diff --git a/tmk_core/common/avr/_timer.h b/platforms/avr/_timer.h
323rename from tmk_core/common/avr/_timer.h
324rename to platforms/avr/_timer.h
325diff --git a/tmk_core/common/avr/_wait.h b/platforms/avr/_wait.h
326rename from tmk_core/common/avr/_wait.h
327rename to platforms/avr/_wait.h
328diff --git a/tmk_core/common/avr/atomic_util.h b/platforms/avr/atomic_util.h
329rename from tmk_core/common/avr/atomic_util.h
330rename to platforms/avr/atomic_util.h
331diff --git a/tmk_core/common/avr/bootloader.c b/platforms/avr/bootloader.c
332rename from tmk_core/common/avr/bootloader.c
333rename to platforms/avr/bootloader.c
334diff --git a/tmk_core/common/avr/bootloader_size.c b/platforms/avr/bootloader_size.c
335rename from tmk_core/common/avr/bootloader_size.c
336rename to platforms/avr/bootloader_size.c
337diff --git a/tmk_core/common/avr/gpio.h b/platforms/avr/gpio.h
338rename from tmk_core/common/avr/gpio.h
339rename to platforms/avr/gpio.h
340diff --git a/tmk_core/common/avr/pin_defs.h b/platforms/avr/pin_defs.h
341rename from tmk_core/common/avr/pin_defs.h
342rename to platforms/avr/pin_defs.h
343diff --git a/tmk_core/common/avr/platform.c b/platforms/avr/platform.c
344rename from tmk_core/common/avr/platform.c
345rename to platforms/avr/platform.c
346diff --git a/tmk_core/avr.mk b/platforms/avr/platform.mk
347rename from tmk_core/avr.mk
348rename to platforms/avr/platform.mk
349index c52262273ee1d981f209c537764f7d25fca535fe..b45108736f10c8f73804da669d679cd6985f3f0e 100644
350--- a/tmk_core/avr.mk
351+++ b/platforms/avr/platform.mk
352@@ -163,7 +163,7 @@ ifeq ($(strip $(QMK_BOOTLOADER_TYPE)),)
353 else
354 make -C lib/lufa/Bootloaders/$(QMK_BOOTLOADER_TYPE)/ clean
355 $(QMK_BIN) generate-dfu-header --quiet --keyboard $(KEYBOARD) --output lib/lufa/Bootloaders/$(QMK_BOOTLOADER_TYPE)/Keyboard.h
356- $(eval MAX_SIZE=$(shell n=`$(CC) -E -mmcu=$(MCU) -D__ASSEMBLER__ $(CFLAGS) $(OPT_DEFS) tmk_core/common/avr/bootloader_size.c 2> /dev/null | sed -ne 's/\r//;/^#/n;/^AVR_SIZE:/,$${s/^AVR_SIZE: //;p;}'` && echo $$(($$n)) || echo 0))
357+ $(eval MAX_SIZE=$(shell n=`$(CC) -E -mmcu=$(MCU) -D__ASSEMBLER__ $(CFLAGS) $(OPT_DEFS) platforms/avr/bootloader_size.c 2> /dev/null | sed -ne 's/\r//;/^#/n;/^AVR_SIZE:/,$${s/^AVR_SIZE: //;p;}'` && echo $$(($$n)) || echo 0))
358 $(eval PROGRAM_SIZE_KB=$(shell n=`expr $(MAX_SIZE) / 1024` && echo $$(($$n)) || echo 0))
359 $(eval BOOT_SECTION_SIZE_KB=$(shell n=`expr $(BOOTLOADER_SIZE) / 1024` && echo $$(($$n)) || echo 0))
360 $(eval FLASH_SIZE_KB=$(shell n=`expr $(PROGRAM_SIZE_KB) + $(BOOT_SECTION_SIZE_KB)` && echo $$(($$n)) || echo 0))
361diff --git a/tmk_core/common/avr/platform_deps.h b/platforms/avr/platform_deps.h
362rename from tmk_core/common/avr/platform_deps.h
363rename to platforms/avr/platform_deps.h
364diff --git a/tmk_core/common/avr/printf.c b/platforms/avr/printf.c
365rename from tmk_core/common/avr/printf.c
366rename to platforms/avr/printf.c
367diff --git a/tmk_core/common/avr/printf.mk b/platforms/avr/printf.mk
368rename from tmk_core/common/avr/printf.mk
369rename to platforms/avr/printf.mk
370diff --git a/tmk_core/common/avr/sleep_led.c b/platforms/avr/sleep_led.c
371rename from tmk_core/common/avr/sleep_led.c
372rename to platforms/avr/sleep_led.c
373diff --git a/tmk_core/common/avr/suspend.c b/platforms/avr/suspend.c
374rename from tmk_core/common/avr/suspend.c
375rename to platforms/avr/suspend.c
376diff --git a/tmk_core/common/avr/timer.c b/platforms/avr/timer.c
377rename from tmk_core/common/avr/timer.c
378rename to platforms/avr/timer.c
379diff --git a/tmk_core/common/avr/timer_avr.h b/platforms/avr/timer_avr.h
380rename from tmk_core/common/avr/timer_avr.h
381rename to platforms/avr/timer_avr.h