summaryrefslogtreecommitdiff
path: root/platforms/chibios
diff options
context:
space:
mode:
authorQMK Bot <hello@qmk.fm>2025-11-30 19:25:52 +0000
committerQMK Bot <hello@qmk.fm>2025-11-30 19:25:52 +0000
commitee60542bd6aa8d96714516f7f42b02fbd8105fcb (patch)
treefacebc35a70d8890375388f963f05ec4c89a9369 /platforms/chibios
parentb5dfb2bd1ea38a37c58227eb17bde583f0c0e4d6 (diff)
parent6ed61c65dd66cdbb450a4920a69bae193ec73f15 (diff)
Merge remote-tracking branch 'origin/master' into develop
Diffstat (limited to 'platforms/chibios')
-rw-r--r--platforms/chibios/bootloaders/rp2040.c2
-rw-r--r--platforms/chibios/drivers/analog.c2
-rw-r--r--platforms/chibios/drivers/audio_dac_basic.c6
-rw-r--r--platforms/chibios/drivers/audio_pwm_software.c8
-rw-r--r--platforms/chibios/drivers/eeprom/eeprom_kinetis_flexram.c6
-rw-r--r--platforms/chibios/drivers/eeprom/eeprom_legacy_emulated_flash.c4
-rw-r--r--platforms/chibios/drivers/flash/legacy_flash_ops.c2
-rw-r--r--platforms/chibios/drivers/serial_usart.c8
-rw-r--r--platforms/chibios/drivers/uart_sio.c8
-rw-r--r--platforms/chibios/drivers/wear_leveling/wear_leveling_efl.c2
-rw-r--r--platforms/chibios/drivers/ws2812_pwm.c4
-rw-r--r--platforms/chibios/drivers/ws2812_spi.c3
12 files changed, 27 insertions, 28 deletions
diff --git a/platforms/chibios/bootloaders/rp2040.c b/platforms/chibios/bootloaders/rp2040.c
index 524d13e636..2e991625c9 100644
--- a/platforms/chibios/bootloaders/rp2040.c
+++ b/platforms/chibios/bootloaders/rp2040.c
@@ -30,7 +30,7 @@ void enter_bootloader_mode_if_requested(void) {}
30// Needs to be located in a RAM section that is never initialized on boot to 30// Needs to be located in a RAM section that is never initialized on boot to
31// preserve its value on reset 31// preserve its value on reset
32static volatile uint32_t __attribute__((section(".ram0.bootloader_magic"))) magic_location; 32static volatile uint32_t __attribute__((section(".ram0.bootloader_magic"))) magic_location;
33const uint32_t magic_token = 0xCAFEB0BA; 33const uint32_t magic_token = 0xCAFEB0BA;
34 34
35// We can not use the __early_init / enter_bootloader_mode_if_requested hook as 35// We can not use the __early_init / enter_bootloader_mode_if_requested hook as
36// we depend on an already initialized system with usable memory regions and 36// we depend on an already initialized system with usable memory regions and
diff --git a/platforms/chibios/drivers/analog.c b/platforms/chibios/drivers/analog.c
index a916cc9a1d..93005c2555 100644
--- a/platforms/chibios/drivers/analog.c
+++ b/platforms/chibios/drivers/analog.c
@@ -145,7 +145,7 @@ static ADCConversionGroup adcConversionGroup = {
145 .smpr = ADC_SAMPLING_RATE, 145 .smpr = ADC_SAMPLING_RATE,
146#elif defined(USE_ADCV2) 146#elif defined(USE_ADCV2)
147# if !defined(STM32F1XX) && !defined(GD32VF103) && !defined(WB32F3G71xx) && !defined(WB32FQ95xx) && !defined(AT32F415) 147# if !defined(STM32F1XX) && !defined(GD32VF103) && !defined(WB32F3G71xx) && !defined(WB32FQ95xx) && !defined(AT32F415)
148 .cr2 = ADC_CR2_SWSTART, // F103 seem very unhappy with, F401 seems very unhappy without... 148 .cr2 = ADC_CR2_SWSTART, // F103 seem very unhappy with, F401 seems very unhappy without...
149# endif 149# endif
150# if defined(AT32F415) 150# if defined(AT32F415)
151 .spt2 = ADC_SPT2_CSPT_AN0(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN1(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN2(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN3(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN4(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN5(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN6(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN7(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN8(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN9(ADC_SAMPLING_RATE), 151 .spt2 = ADC_SPT2_CSPT_AN0(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN1(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN2(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN3(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN4(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN5(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN6(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN7(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN8(ADC_SAMPLING_RATE) | ADC_SPT2_CSPT_AN9(ADC_SAMPLING_RATE),
diff --git a/platforms/chibios/drivers/audio_dac_basic.c b/platforms/chibios/drivers/audio_dac_basic.c
index 99b938e610..053584ec87 100644
--- a/platforms/chibios/drivers/audio_dac_basic.c
+++ b/platforms/chibios/drivers/audio_dac_basic.c
@@ -77,9 +77,9 @@ GPTConfig gpt7cfg1 = {.frequency = AUDIO_DAC_SAMPLE_RATE,
77 77
78static void gpt_audio_state_cb(GPTDriver *gptp); 78static void gpt_audio_state_cb(GPTDriver *gptp);
79GPTConfig gptStateUpdateCfg = {.frequency = 10, 79GPTConfig gptStateUpdateCfg = {.frequency = 10,
80 .callback = gpt_audio_state_cb, 80 .callback = gpt_audio_state_cb,
81 .cr2 = TIM_CR2_MMS_1, /* MMS = 010 = TRGO on Update Event. */ 81 .cr2 = TIM_CR2_MMS_1, /* MMS = 010 = TRGO on Update Event. */
82 .dier = 0U}; 82 .dier = 0U};
83 83
84static const DACConfig dac_conf_ch1 = {.init = AUDIO_DAC_OFF_VALUE, .datamode = DAC_DHRM_12BIT_RIGHT}; 84static const DACConfig dac_conf_ch1 = {.init = AUDIO_DAC_OFF_VALUE, .datamode = DAC_DHRM_12BIT_RIGHT};
85static const DACConfig dac_conf_ch2 = {.init = AUDIO_DAC_OFF_VALUE, .datamode = DAC_DHRM_12BIT_RIGHT}; 85static const DACConfig dac_conf_ch2 = {.init = AUDIO_DAC_OFF_VALUE, .datamode = DAC_DHRM_12BIT_RIGHT};
diff --git a/platforms/chibios/drivers/audio_pwm_software.c b/platforms/chibios/drivers/audio_pwm_software.c
index f48323900b..015bdbee1a 100644
--- a/platforms/chibios/drivers/audio_pwm_software.c
+++ b/platforms/chibios/drivers/audio_pwm_software.c
@@ -63,8 +63,8 @@ void channel_1_set_frequency(float freq) {
63 pwmChangePeriod(&AUDIO_PWM_DRIVER, period); 63 pwmChangePeriod(&AUDIO_PWM_DRIVER, period);
64 64
65 pwmEnableChannel(&AUDIO_PWM_DRIVER, AUDIO_PWM_CHANNEL - 1, 65 pwmEnableChannel(&AUDIO_PWM_DRIVER, AUDIO_PWM_CHANNEL - 1,
66 // adjust the duty-cycle so that the output is for 'note_timbre' duration HIGH 66 // adjust the duty-cycle so that the output is for 'note_timbre' duration HIGH
67 PWM_PERCENTAGE_TO_WIDTH(&AUDIO_PWM_DRIVER, (100 - note_timbre) * 100)); 67 PWM_PERCENTAGE_TO_WIDTH(&AUDIO_PWM_DRIVER, (100 - note_timbre) * 100));
68} 68}
69 69
70float channel_1_get_frequency(void) { 70float channel_1_get_frequency(void) {
@@ -117,8 +117,8 @@ GPTConfig gptCFG = {
117 and the .interval counts from 64 downwards - audio_update_state is 117 and the .interval counts from 64 downwards - audio_update_state is
118 called just often enough to not miss anything 118 called just often enough to not miss anything
119 */ 119 */
120 .frequency = 60 * 64, 120 .frequency = 60 * 64,
121 .callback = gpt_callback, 121 .callback = gpt_callback,
122}; 122};
123 123
124void audio_driver_initialize_impl(void) { 124void audio_driver_initialize_impl(void) {
diff --git a/platforms/chibios/drivers/eeprom/eeprom_kinetis_flexram.c b/platforms/chibios/drivers/eeprom/eeprom_kinetis_flexram.c
index 9cf956b2f7..9edbc1d2ed 100644
--- a/platforms/chibios/drivers/eeprom/eeprom_kinetis_flexram.c
+++ b/platforms/chibios/drivers/eeprom/eeprom_kinetis_flexram.c
@@ -482,7 +482,7 @@ uint32_t eeprom_read_dword(const uint32_t *addr) {
482 482
483void eeprom_read_block(void *buf, const void *addr, size_t len) { 483void eeprom_read_block(void *buf, const void *addr, size_t len) {
484 const uint8_t *p = (const uint8_t *)addr; 484 const uint8_t *p = (const uint8_t *)addr;
485 uint8_t * dest = (uint8_t *)buf; 485 uint8_t *dest = (uint8_t *)buf;
486 while (len--) { 486 while (len--) {
487 *dest++ = eeprom_read_byte(p++); 487 *dest++ = eeprom_read_byte(p++);
488 } 488 }
@@ -507,7 +507,7 @@ void eeprom_write_dword(uint32_t *addr, uint32_t value) {
507} 507}
508 508
509void eeprom_write_block(const void *buf, void *addr, size_t len) { 509void eeprom_write_block(const void *buf, void *addr, size_t len) {
510 uint8_t * p = (uint8_t *)addr; 510 uint8_t *p = (uint8_t *)addr;
511 const uint8_t *src = (const uint8_t *)buf; 511 const uint8_t *src = (const uint8_t *)buf;
512 while (len--) { 512 while (len--) {
513 eeprom_write_byte(p++, *src++); 513 eeprom_write_byte(p++, *src++);
@@ -538,7 +538,7 @@ void eeprom_update_dword(uint32_t *addr, uint32_t value) {
538} 538}
539 539
540void eeprom_update_block(const void *buf, void *addr, size_t len) { 540void eeprom_update_block(const void *buf, void *addr, size_t len) {
541 uint8_t * p = (uint8_t *)addr; 541 uint8_t *p = (uint8_t *)addr;
542 const uint8_t *src = (const uint8_t *)buf; 542 const uint8_t *src = (const uint8_t *)buf;
543 while (len--) { 543 while (len--) {
544 eeprom_write_byte(p++, *src++); 544 eeprom_write_byte(p++, *src++);
diff --git a/platforms/chibios/drivers/eeprom/eeprom_legacy_emulated_flash.c b/platforms/chibios/drivers/eeprom/eeprom_legacy_emulated_flash.c
index 9857ac046b..cf6b85fd12 100644
--- a/platforms/chibios/drivers/eeprom/eeprom_legacy_emulated_flash.c
+++ b/platforms/chibios/drivers/eeprom/eeprom_legacy_emulated_flash.c
@@ -577,7 +577,7 @@ void eeprom_driver_erase(void) {
577 577
578void eeprom_read_block(void *buf, const void *addr, size_t len) { 578void eeprom_read_block(void *buf, const void *addr, size_t len) {
579 const uint8_t *src = (const uint8_t *)addr; 579 const uint8_t *src = (const uint8_t *)addr;
580 uint8_t * dest = (uint8_t *)buf; 580 uint8_t *dest = (uint8_t *)buf;
581 581
582 /* Check word alignment */ 582 /* Check word alignment */
583 if (len && (uintptr_t)src % 2) { 583 if (len && (uintptr_t)src % 2) {
@@ -606,7 +606,7 @@ void eeprom_read_block(void *buf, const void *addr, size_t len) {
606} 606}
607 607
608void eeprom_write_block(const void *buf, void *addr, size_t len) { 608void eeprom_write_block(const void *buf, void *addr, size_t len) {
609 uint8_t * dest = (uint8_t *)addr; 609 uint8_t *dest = (uint8_t *)addr;
610 const uint8_t *src = (const uint8_t *)buf; 610 const uint8_t *src = (const uint8_t *)buf;
611 611
612 /* Check word alignment */ 612 /* Check word alignment */
diff --git a/platforms/chibios/drivers/flash/legacy_flash_ops.c b/platforms/chibios/drivers/flash/legacy_flash_ops.c
index fe5ad64764..ca3fbdd740 100644
--- a/platforms/chibios/drivers/flash/legacy_flash_ops.c
+++ b/platforms/chibios/drivers/flash/legacy_flash_ops.c
@@ -171,7 +171,7 @@ FLASH_Status FLASH_ProgramHalfWord(uint32_t Address, uint16_t Data) {
171 FLASH->CR |= FLASH_CR_PSIZE_0; 171 FLASH->CR |= FLASH_CR_PSIZE_0;
172#endif 172#endif
173 FLASH->CR |= FLASH_CR_PG; 173 FLASH->CR |= FLASH_CR_PG;
174 *(__IO uint16_t*)Address = Data; 174 *(__IO uint16_t *)Address = Data;
175 /* Wait for last operation to be completed */ 175 /* Wait for last operation to be completed */
176 status = FLASH_WaitForLastOperation(ProgramTimeout); 176 status = FLASH_WaitForLastOperation(ProgramTimeout);
177 if (status != FLASH_TIMEOUT) { 177 if (status != FLASH_TIMEOUT) {
diff --git a/platforms/chibios/drivers/serial_usart.c b/platforms/chibios/drivers/serial_usart.c
index becf3afbce..0d3d01042f 100644
--- a/platforms/chibios/drivers/serial_usart.c
+++ b/platforms/chibios/drivers/serial_usart.c
@@ -27,12 +27,12 @@ static QMKSerialConfig serial_config = {
27# else 27# else
28 .baud = (SERIAL_USART_SPEED), 28 .baud = (SERIAL_USART_SPEED),
29# endif 29# endif
30 .cr1 = (SERIAL_USART_CR1), 30 .cr1 = (SERIAL_USART_CR1),
31 .cr2 = (SERIAL_USART_CR2), 31 .cr2 = (SERIAL_USART_CR2),
32# if !defined(SERIAL_USART_FULL_DUPLEX) 32# if !defined(SERIAL_USART_FULL_DUPLEX)
33 .cr3 = ((SERIAL_USART_CR3) | USART_CR3_HDSEL) /* activate half-duplex mode */ 33 .cr3 = ((SERIAL_USART_CR3) | USART_CR3_HDSEL) /* activate half-duplex mode */
34# else 34# else
35 .cr3 = (SERIAL_USART_CR3) 35 .cr3 = (SERIAL_USART_CR3)
36# endif 36# endif
37}; 37};
38#elif defined(MCU_RP) /* Raspberry Pi MCUs */ 38#elif defined(MCU_RP) /* Raspberry Pi MCUs */
diff --git a/platforms/chibios/drivers/uart_sio.c b/platforms/chibios/drivers/uart_sio.c
index fc12f0abed..dcf0cef20f 100644
--- a/platforms/chibios/drivers/uart_sio.c
+++ b/platforms/chibios/drivers/uart_sio.c
@@ -82,13 +82,13 @@ static SIOConfig sioConfig = {
82}; 82};
83#else 83#else
84static SIOConfig sioConfig = { 84static SIOConfig sioConfig = {
85 .baud = SIO_DEFAULT_BITRATE, 85 .baud = SIO_DEFAULT_BITRATE,
86# if defined(MCU_STM32) && defined(USE_USARTV3) 86# if defined(MCU_STM32) && defined(USE_USARTV3)
87 .presc = USART_PRESC1, 87 .presc = USART_PRESC1,
88# endif 88# endif
89 .cr1 = UART_CR1, 89 .cr1 = UART_CR1,
90 .cr2 = UART_CR2, 90 .cr2 = UART_CR2,
91 .cr3 = UART_CR3, 91 .cr3 = UART_CR3,
92}; 92};
93#endif 93#endif
94 94
diff --git a/platforms/chibios/drivers/wear_leveling/wear_leveling_efl.c b/platforms/chibios/drivers/wear_leveling/wear_leveling_efl.c
index fec4646a5b..2328ea0674 100644
--- a/platforms/chibios/drivers/wear_leveling/wear_leveling_efl.c
+++ b/platforms/chibios/drivers/wear_leveling/wear_leveling_efl.c
@@ -20,7 +20,7 @@ static flash_sector_t first_sector = UINT16_MAX;
20#endif // WEAR_LEVELING_EFL_OMIT_LAST_SECTOR_COUNT 20#endif // WEAR_LEVELING_EFL_OMIT_LAST_SECTOR_COUNT
21 21
22static flash_sector_t sector_count = UINT16_MAX; 22static flash_sector_t sector_count = UINT16_MAX;
23static BaseFlash * flash; 23static BaseFlash *flash;
24static bool flash_erased_is_one; 24static bool flash_erased_is_one;
25static volatile bool is_issuing_read = false; 25static volatile bool is_issuing_read = false;
26static volatile bool ecc_error_occurred = false; 26static volatile bool ecc_error_occurred = false;
diff --git a/platforms/chibios/drivers/ws2812_pwm.c b/platforms/chibios/drivers/ws2812_pwm.c
index 50927b849a..0fc20b3f27 100644
--- a/platforms/chibios/drivers/ws2812_pwm.c
+++ b/platforms/chibios/drivers/ws2812_pwm.c
@@ -310,7 +310,7 @@ void ws2812_init(void) {
310 palSetLineMode(WS2812_DI_PIN, WS2812_OUTPUT_MODE); 310 palSetLineMode(WS2812_DI_PIN, WS2812_OUTPUT_MODE);
311 311
312 // PWM Configuration 312 // PWM Configuration
313 //#pragma GCC diagnostic ignored "-Woverride-init" // Turn off override-init warning for this struct. We use the overriding ability to set a "default" channel config 313 // #pragma GCC diagnostic ignored "-Woverride-init" // Turn off override-init warning for this struct. We use the overriding ability to set a "default" channel config
314 static const PWMConfig ws2812_pwm_config = { 314 static const PWMConfig ws2812_pwm_config = {
315 .frequency = WS2812_PWM_TICK_FREQUENCY, 315 .frequency = WS2812_PWM_TICK_FREQUENCY,
316 .period = WS2812_PWM_PERIOD, // Mit dieser Periode wird UDE-Event erzeugt und ein neuer Wert (Länge WS2812_BIT_N) vom DMA ins CCR geschrieben 316 .period = WS2812_PWM_PERIOD, // Mit dieser Periode wird UDE-Event erzeugt und ein neuer Wert (Länge WS2812_BIT_N) vom DMA ins CCR geschrieben
@@ -328,7 +328,7 @@ void ws2812_init(void) {
328 .dier = TIM_DIER_UDE, // DMA on update event for next period 328 .dier = TIM_DIER_UDE, // DMA on update event for next period
329#endif 329#endif
330 }; 330 };
331 //#pragma GCC diagnostic pop // Restore command-line warning options 331 // #pragma GCC diagnostic pop // Restore command-line warning options
332 332
333 // Configure DMA 333 // Configure DMA
334 // dmaInit(); // Joe added this 334 // dmaInit(); // Joe added this
diff --git a/platforms/chibios/drivers/ws2812_spi.c b/platforms/chibios/drivers/ws2812_spi.c
index d1792b871b..4ae97aa1c9 100644
--- a/platforms/chibios/drivers/ws2812_spi.c
+++ b/platforms/chibios/drivers/ws2812_spi.c
@@ -188,8 +188,7 @@ void ws2812_init(void) {
188 0, 188 0,
189 WS2812_SPI_DIVISOR 189 WS2812_SPI_DIVISOR
190# else 190# else
191 WS2812_SPI_DIVISOR_CR1_BR_X, 191 WS2812_SPI_DIVISOR_CR1_BR_X, 0
192 0
193# endif 192# endif
194#else 193#else
195 // HAL_SPI_V2 194 // HAL_SPI_V2