Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Qmk breaking changes 202411 #70

Open
wants to merge 262 commits into
base: bkb-master
Choose a base branch
from

Conversation

burkfers
Copy link
Collaborator

@burkfers burkfers commented Nov 27, 2024

Brings in the current breaking changes from upstream.
All boards compile without warning (vendor keymaps from userspace), not tested in hardware.

Userspace will require changes soonish for the new RGB keycodes, but not immediately.

tzarc and others added 30 commits August 27, 2024 10:55
* expand layout selection for fidelity

* remove VIA

* format-json
All users have their own local definition.
util: uf2families: sync with upstream

The upstream revision is:
https://github.com/microsoft/uf2/blob/5b9299df617c4610f4108aec774cf260271829ad/utils/uf2families.json

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>
…eration (qmk#24352)

builddefs: common_rules: overhaul debug information generation

Debug information is always generated while compiling a binary, but
debugging is not the main use-case for the majority of users. Thus the
new default is to explicitly require them with `DEBUG_ENABLE=yes`. The
same is true for linker map files which are gated by the same flag.

As we target the gcc compiler and debug with the gdb debugger we can
specify the ggdb3 flag in the most verbose to get macro expansion.

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>
Co-authored-by: jack <jack@pngu.org>
@burkfers
Copy link
Collaborator Author

uf2.zip
Binaries attached for hardware verification

Copy link
Collaborator

@0xcharly 0xcharly left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Mostly RGB keycode changes, a forward declaration no longer needed, etc… Nothing ground breaking.

The branch is in conflict so we can't merge just yet.

@0xcharly
Copy link
Collaborator

LGTM. Mostly RGB keycode changes, a forward declaration no longer needed, etc… Nothing ground breaking.

LGTM. Mostly RGB keycode changes, a forward declaration no longer needed, etc… Nothing ground breaking.

The branch is in conflict so we can't merge just yet.

Nevermind, we can just merge without rebase.

@choovick
Copy link

choovick commented Dec 9, 2024

I have tested on chary 4x6, with my custom userspace overrides. Works great.

❯ git branch --show-current         
qmk-breakingchanges-202411

❯ qmk flash -c -kb bastardkb/charybdis/4x6 -km vendor
Ψ Cleaning with gmake clean
QMK Firmware 0.24.7
Deleting .build/ ... done.
Ψ Compiling keymap with gmake -r -R -f builddefs/build_keyboard.mk -s flash KEYBOARD=bastardkb/charybdis/4x6 KEYMAP=vendor KEYBOARD_FILESAFE=bastardkb_charybdis_4x6 TARGET=bastardkb_charybdis_4x6_vendor VERBOSE=false COLOR=true SILENT=false QMK_BIN="qmk" QMK_USERSPACE=/Users/sjc-lp03734/dev/qmk_userspace MAIN_KEYMAP_PATH_1=/Users/sjc-lp03734/dev/qmk_userspace/keyboards/bastardkb/charybdis/4x6/keymaps/vendor MAIN_KEYMAP_PATH_2=/Users/sjc-lp03734/dev/qmk_userspace/keyboards/bastardkb/charybdis/4x6/keymaps/vendor MAIN_KEYMAP_PATH_3=/Users/sjc-lp03734/dev/qmk_userspace/keyboards/bastardkb/charybdis/4x6/keymaps/vendor MAIN_KEYMAP_PATH_4=/Users/sjc-lp03734/dev/qmk_userspace/keyboards/bastardkb/charybdis/4x6/keymaps/vendor MAIN_KEYMAP_PATH_5=/Users/sjc-lp03734/dev/qmk_userspace/keyboards/bastardkb/charybdis/4x6/keymaps/vendor


Generating: .build/obj_bastardkb_charybdis_4x6_vendor/src/info_deps.d                               [OK]
arm-none-eabi-gcc (Homebrew ARM GCC 8.5.0_2) 8.5.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Generating: .build/obj_bastardkb_charybdis_4x6_vendor/src/info_config.h                             [OK]
Generating: .build/obj_bastardkb_charybdis_4x6_vendor/src/default_keyboard.c                        [OK]
Generating: .build/obj_bastardkb_charybdis_4x6_vendor/src/default_keyboard.h                        [OK]
Compiling: keyboards/bastardkb/charybdis/charybdis.c                                                [OK]
Compiling: keyboards/bastardkb/charybdis/4x6/4x6.c                                                  [OK]
Compiling: .build/obj_bastardkb_charybdis_4x6_vendor/src/default_keyboard.c                         [OK]
Compiling: quantum/keymap_introspection.c                                                           [OK]
Compiling: quantum/quantum.c                                                                        [OK]
Compiling: quantum/bitwise.c                                                                        [OK]
Compiling: quantum/led.c                                                                            [OK]
Compiling: quantum/action.c                                                                         [OK]
Compiling: quantum/action_layer.c                                                                   [OK]
Compiling: quantum/action_tapping.c                                                                 [OK]
Compiling: quantum/action_util.c                                                                    [OK]
Compiling: quantum/eeconfig.c                                                                       [OK]
Compiling: quantum/keyboard.c                                                                       [OK]
Compiling: quantum/keymap_common.c                                                                  [OK]
Compiling: quantum/keycode_config.c                                                                 [OK]
Compiling: quantum/sync_timer.c                                                                     [OK]
Compiling: quantum/logging/debug.c                                                                  [OK]
Compiling: quantum/logging/sendchar.c                                                               [OK]
Compiling: quantum/process_keycode/process_default_layer.c                                          [OK]
Compiling: quantum/logging/print.c                                                                  [OK]
Compiling: quantum/matrix_common.c                                                                  [OK]
Compiling: quantum/matrix.c                                                                         [OK]
Compiling: quantum/debounce/sym_defer_g.c                                                           [OK]
Compiling: quantum/split_common/split_util.c                                                        [OK]
Compiling: quantum/split_common/transport.c                                                         [OK]
Compiling: quantum/split_common/transactions.c                                                      [OK]
Compiling: quantum/main.c                                                                           [OK]
Compiling: lib/printf/src/printf/printf.c                                                           [OK]
Compiling: quantum/pointing_device/pointing_device.c                                                [OK]
Compiling: quantum/pointing_device/pointing_device_auto_mouse.c                                     [OK]
Compiling: drivers/sensors/pmw3360.c                                                                [OK]
Compiling: drivers/sensors/pmw33xx_common.c                                                         [OK]
Compiling: drivers/eeprom/eeprom_driver.c                                                           [OK]
Compiling: drivers/eeprom/eeprom_wear_leveling.c                                                    [OK]
Compiling: quantum/wear_leveling/wear_leveling.c                                                    [OK]
Compiling: platforms/chibios/drivers/wear_leveling/wear_leveling_rp2040_flash.c                     [OK]
Compiling: quantum/process_keycode/process_underglow.c                                              [OK]
Compiling: quantum/process_keycode/process_rgb_matrix.c                                             [OK]
Compiling: quantum/color.c                                                                          [OK]
Compiling: quantum/rgb_matrix/rgb_matrix.c                                                          [OK]
Compiling: quantum/rgb_matrix/rgb_matrix_drivers.c                                                  [OK]
Compiling: quantum/led_tables.c                                                                     [OK]
Compiling: lib/fnv/qmk_fnv_type_validation.c                                                        [OK]
Compiling: lib/fnv/hash_32a.c                                                                       [OK]
Compiling: lib/fnv/hash_64a.c                                                                       [OK]
Compiling: lib/lib8tion/lib8tion.c                                                                  [OK]
Compiling: drivers/ws2812.c                                                                         [OK]
Compiling: platforms/chibios/drivers/vendor/RP/RP2040/ws2812_vendor.c                               [OK]
Compiling: quantum/bootmagic/bootmagic.c                                                            [OK]
Compiling: quantum/crc.c                                                                            [OK]
Compiling: quantum/dynamic_keymap.c                                                                 [OK]
Compiling: quantum/process_keycode/process_grave_esc.c                                              [OK]
Compiling: quantum/process_keycode/process_magic.c                                                  [OK]
Compiling: quantum/send_string/send_string.c                                                        [OK]
Compiling: quantum/process_keycode/process_space_cadet.c                                            [OK]
Compiling: quantum/process_keycode/process_tap_dance.c                                              [OK]
Compiling: quantum/process_keycode/process_tri_layer.c                                              [OK]
Compiling: quantum/tri_layer.c                                                                      [OK]
Compiling: quantum/via.c                                                                            [OK]
Compiling: tmk_core/protocol/host.c                                                                 [OK]
Compiling: tmk_core/protocol/report.c                                                               [OK]
Compiling: tmk_core/protocol/usb_device_state.c                                                     [OK]
Compiling: tmk_core/protocol/usb_util.c                                                             [OK]
Compiling: platforms/suspend.c                                                                      [OK]
Compiling: platforms/synchronization_util.c                                                         [OK]
Compiling: platforms/timer.c                                                                        [OK]
Compiling: platforms/chibios/hardware_id.c                                                          [OK]
Compiling: platforms/chibios/platform.c                                                             [OK]
Compiling: platforms/chibios/suspend.c                                                              [OK]
Compiling: platforms/chibios/timer.c                                                                [OK]
Compiling: platforms/chibios/bootloaders/rp2040.c                                                   [OK]
Compiling: platforms/chibios/drivers/serial_protocol.c                                              [OK]
Archiving: .build/obj_bastardkb_charybdis_4x6_vendor/serial_protocol.o                              [OK]
Compiling: platforms/chibios/drivers/vendor/RP/RP2040/serial_vendor.c                               [OK]
Archiving: .build/obj_bastardkb_charybdis_4x6_vendor/serial_vendor.o                                [OK]
Compiling: platforms/chibios/drivers/spi_master.c                                                   [OK]
Archiving: .build/obj_bastardkb_charybdis_4x6_vendor/spi_master.o                                   [OK]
Assembling: lib/chibios/os/common/startup/ARMCMx/compilers/GCC/crt0_v6m.S                           [OK]
Assembling: lib/chibios/os/common/startup/ARMCMx/compilers/GCC/vectors.S                            [OK]
Assembling: lib/chibios/os/common/ports/ARMv6-M-RP2/compilers/GCC/chcoreasm.S                       [OK]
Compiling: tmk_core/protocol/chibios/usb_main.c                                                     [OK]
Compiling: tmk_core/protocol/chibios/chibios.c                                                      [OK]
Compiling: tmk_core/protocol/usb_descriptor.c                                                       [OK]
Compiling: tmk_core/protocol/chibios/usb_driver.c                                                   [OK]
Compiling: tmk_core/protocol/chibios/usb_endpoints.c                                                [OK]
Compiling: tmk_core/protocol/chibios/usb_report_handling.c                                          [OK]
Compiling: tmk_core/protocol/chibios/usb_util.c                                                     [OK]
Compiling: lib/chibios/os/common/startup/ARMCMx/compilers/GCC/crt1.c                                [OK]
Compiling: lib/chibios/os/rt/src/chsys.c                                                            [OK]
Compiling: lib/chibios/os/rt/src/chrfcu.c                                                           [OK]
Compiling: lib/chibios/os/rt/src/chdebug.c                                                          [OK]
Compiling: lib/chibios/os/rt/src/chtrace.c                                                          [OK]
Compiling: lib/chibios/os/rt/src/chvt.c                                                             [OK]
Compiling: lib/chibios/os/rt/src/chschd.c                                                           [OK]
Compiling: lib/chibios/os/rt/src/chinstances.c                                                      [OK]
Compiling: lib/chibios/os/rt/src/chthreads.c                                                        [OK]
Compiling: lib/chibios/os/rt/src/chtm.c                                                             [OK]
Compiling: lib/chibios/os/rt/src/chstats.c                                                          [OK]
Compiling: lib/chibios/os/rt/src/chregistry.c                                                       [OK]
Compiling: lib/chibios/os/rt/src/chsem.c                                                            [OK]
Compiling: lib/chibios/os/rt/src/chmtx.c                                                            [OK]
Compiling: lib/chibios/os/rt/src/chcond.c                                                           [OK]
Compiling: lib/chibios/os/rt/src/chevents.c                                                         [OK]
Compiling: lib/chibios/os/rt/src/chmsg.c                                                            [OK]
Compiling: lib/chibios/os/rt/src/chdynamic.c                                                        [OK]
Compiling: lib/chibios/os/common/ports/ARMv6-M-RP2/chcore.c                                         [OK]
Compiling: lib/chibios/os/hal/osal/rt-nil/osal.c                                                    [OK]
Compiling: lib/chibios/os/oslib/src/chmboxes.c                                                      [OK]
Compiling: lib/chibios/os/oslib/src/chmemcore.c                                                     [OK]
Compiling: lib/chibios/os/oslib/src/chmemheaps.c                                                    [OK]
Compiling: lib/chibios/os/oslib/src/chmempools.c                                                    [OK]
Compiling: lib/chibios/os/oslib/src/chpipes.c                                                       [OK]
Compiling: lib/chibios/os/oslib/src/chobjcaches.c                                                   [OK]
Compiling: lib/chibios/os/oslib/src/chdelegates.c                                                   [OK]
Compiling: lib/chibios/os/oslib/src/chfactory.c                                                     [OK]
Compiling: lib/chibios/os/hal/src/hal.c                                                             [OK]
Compiling: lib/chibios/os/hal/src/hal_st.c                                                          [OK]
Compiling: lib/chibios/os/hal/src/hal_buffers.c                                                     [OK]
Compiling: lib/chibios/os/hal/src/hal_queues.c                                                      [OK]
Compiling: lib/chibios/os/hal/src/hal_flash.c                                                       [OK]
Compiling: lib/chibios/os/hal/src/hal_mmcsd.c                                                       [OK]
Compiling: lib/chibios/os/hal/src/hal_adc.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_can.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_crypto.c                                                      [OK]
Compiling: lib/chibios/os/hal/src/hal_dac.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_efl.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_gpt.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_i2c.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_i2s.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_icu.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_mac.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_mmc_spi.c                                                     [OK]
Compiling: lib/chibios/os/hal/src/hal_pal.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_pwm.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_rtc.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_sdc.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_serial.c                                                      [OK]
Compiling: lib/chibios/os/hal/src/hal_serial_usb.c                                                  [OK]
Compiling: lib/chibios/os/hal/src/hal_sio.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_spi.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_trng.c                                                        [OK]
Compiling: lib/chibios/os/hal/src/hal_uart.c                                                        [OK]
Compiling: lib/chibios/os/hal/src/hal_usb.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_wdg.c                                                         [OK]
Compiling: lib/chibios/os/hal/src/hal_wspi.c                                                        [OK]
Compiling: lib/chibios/os/hal/ports/common/ARMCMx/nvic.c                                            [OK]
Compiling: lib/chibios/os/hal/ports/RP/RP2040/rp_isr.c                                              [OK]
Compiling: lib/chibios/os/hal/ports/RP/RP2040/hal_lld.c                                             [OK]
Compiling: lib/chibios/os/hal/ports/RP/LLD/DMAv1/rp_dma.c                                           [OK]
Compiling: lib/chibios/os/hal/ports/RP/LLD/GPIOv1/hal_pal_lld.c                                     [OK]
Compiling: lib/chibios/os/hal/ports/RP/LLD/SPIv1/hal_spi_lld.c                                      [OK]
Compiling: lib/chibios/os/hal/ports/RP/LLD/TIMERv1/hal_st_lld.c                                     [OK]
Compiling: lib/chibios/os/hal/ports/RP/LLD/UARTv1/hal_sio_lld.c                                     [OK]
Compiling: lib/chibios/os/hal/ports/RP/LLD/RTCv1/hal_rtc_lld.c                                      [OK]
Compiling: lib/chibios/os/hal/ports/RP/LLD/WDGv1/hal_wdg_lld.c                                      [OK]
Compiling: lib/chibios-contrib/os/hal/ports/RP/LLD/I2Cv1/hal_i2c_lld.c                              [OK]
Compiling: lib/chibios-contrib/os/hal/ports/RP/LLD/PWMv1/hal_pwm_lld.c                              [OK]
Compiling: lib/chibios-contrib/os/hal/ports/RP/LLD/ADCv1/hal_adc_lld.c                              [OK]
Compiling: lib/chibios-contrib/os/hal/ports/RP/LLD/USBDv1/hal_usb_lld.c                             [OK]
Compiling: lib/chibios/os/hal/boards/RP_PICO_RP2040/board.c                                         [OK]
Compiling: lib/chibios/os/hal/lib/streams/chprintf.c                                                [OK]
Compiling: lib/chibios/os/hal/lib/streams/chscanf.c                                                 [OK]
Compiling: lib/chibios/os/hal/lib/streams/memstreams.c                                              [OK]
Compiling: lib/chibios/os/hal/lib/streams/nullstreams.c                                             [OK]
Compiling: lib/chibios/os/hal/lib/streams/bufstreams.c                                              [OK]
Compiling: lib/chibios/os/various/syscalls.c                                                        [OK]
Compiling: platforms/chibios/syscall-fallbacks.c                                                    [OK]
Compiling: platforms/chibios/wait.c                                                                 [OK]
Compiling: platforms/chibios/synchronization_util.c                                                 [OK]
Compiling: platforms/chibios/interrupt_handlers.c                                                   [OK]
Compiling: lib/pico-sdk/src/rp2_common/hardware_clocks/clocks.c                                     [OK]
Compiling: lib/pico-sdk/src/rp2_common/hardware_pll/pll.c                                           [OK]
Compiling: lib/pico-sdk/src/rp2_common/hardware_pio/pio.c                                           [OK]
Compiling: lib/pico-sdk/src/rp2_common/hardware_timer/timer.c                                       [OK]
Compiling: lib/pico-sdk/src/rp2_common/hardware_flash/flash.c                                       [OK]
Compiling: lib/pico-sdk/src/rp2_common/hardware_gpio/gpio.c                                         [OK]
Compiling: lib/pico-sdk/src/rp2_common/hardware_claim/claim.c                                       [OK]
Compiling: lib/pico-sdk/src/rp2_common/hardware_watchdog/watchdog.c                                 [OK]
Compiling: lib/pico-sdk/src/rp2_common/hardware_xosc/xosc.c                                         [OK]
Compiling: lib/pico-sdk/src/rp2_common/pico_bootrom/bootrom.c                                       [OK]
Compiling: platforms/chibios/vendors/RP/stage2_bootloaders.c                                        [OK]
Compiling: platforms/chibios/vendors/RP/pico_sdk_shims.c                                            [OK]
Assembling: lib/pico-sdk/src/rp2_common/pico_divider/divider.S                                      [OK]
Assembling: lib/pico-sdk/src/rp2_common/pico_int64_ops/pico_int64_ops_aeabi.S                       [OK]
Linking: .build/bastardkb_charybdis_4x6_vendor.elf                                                  [OK]
Creating binary load file for flashing: .build/bastardkb_charybdis_4x6_vendor.bin                   [OK]
Creating UF2 file for deployment: .build/bastardkb_charybdis_4x6_vendor.uf2                         [OK]
Copying bastardkb_charybdis_4x6_vendor.uf2 to qmk_firmware folder                                   [OK]
Copying bastardkb_charybdis_4x6_vendor.uf2 to userspace folder                                      [OK]
Creating load file for flashing: .build/bastardkb_charybdis_4x6_vendor.hex                          [OK]

Size after:
   text    data     bss     dec     hex filename
      0   69056       0   69056   10dc0 bastardkb_charybdis_4x6_vendor.uf2

Flashing for bootloader: rp2040
Waiting for drive to deploy...
Flashing /Volumes/RPI-RP2 (RPI-RP2)
Wrote 138240 bytes to /Volumes/RPI-RP2/NEW.UF2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.