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

Zephyr 3.5 update #1995

Merged
merged 35 commits into from
Feb 9, 2024
Merged

Conversation

petejohanson
Copy link
Contributor

@petejohanson petejohanson commented Nov 10, 2023

Even more experimental than #1853 as this one has even less testing, but opening this for posterity. Still needs me to publish newer Docker images for CI to be happy, as this needs a newer SDK version.

Blog Post preview: https://deploy-preview-1995--zmk.netlify.app/blog/2024/01/31/zephyr-3-5

Testing steps

Local dev

  1. If not building w/ VSCode docker integration, install https://github.com/zephyrproject-rtos/sdk-ng/releases/tag/v0.16.4
  2. gh pr checkout 1995
  3. west update
  4. Use new build directory to build ZMK as usual.

GitHub Actions

Make two edits in the branch of your config repo:

  1. Update .github/workflowr/build.yaml to contain: No longer needed, the stable Docker image has been bumped so this step can be skipped now.

    on: [push, pull_request, workflow_dispatch]
    
    jobs:
      build:
        uses: petejohanson/zmk/.github/workflows/build-user-config.yml@core/zephyr-3.5-update
    
  2. Update config/west.yaml according to the https://zmk.dev/docs/features/beta-testing/ instructions to test this PR.

To Do

@petejohanson petejohanson added the dependencies Pull requests that update a dependency file label Nov 10, 2023
@petejohanson petejohanson self-assigned this Nov 10, 2023
@petejohanson petejohanson force-pushed the core/zephyr-3.5-update branch 7 times, most recently from e4f100a to 2ab9363 Compare November 15, 2023 19:43
@petejohanson petejohanson force-pushed the core/zephyr-3.5-update branch 7 times, most recently from d12fbc4 to 8b638de Compare December 6, 2023 18:06
@petejohanson petejohanson force-pushed the core/zephyr-3.5-update branch 3 times, most recently from 47c13d9 to bdb86c6 Compare December 12, 2023 01:43
@petejohanson petejohanson force-pushed the core/zephyr-3.5-update branch 6 times, most recently from be2613f to 37261fd Compare January 6, 2024 00:28
infused-kim added a commit to infused-kim/zmk that referenced this pull request Jan 7, 2024
From this PR and branch:
zmkfirmware#1995
https://github.com/petejohanson/zmk/commits/core/zephyr-3.5-update

commit 37261fd
Author: Peter Johanson <[email protected]>
Date:   Mon Dec 11 16:35:16 2023 -0800

    fix(bluetooth): Remove LLCP impl override.

commit 0473b80
Author: Peter Johanson <[email protected]>
Date:   Mon Dec 4 22:47:31 2023 +0000

    fix(boards): Remove unused pin settings.

    * Remove unused pin settings that used deprecated
      devicetree properties.

commit f623753
Author: Peter Johanson <[email protected]>
Date:   Mon Dec 4 14:39:41 2023 -0800

    fix(boards): Make `&bootloader` work on nrf52 for now.

    * Use `NRF_STORE_REBOOT_TYPE_GPREGRET` to get bootloader behavior
      to work for now until retained bootmode is implemented.

commit 33a597c
Author: Peter Johanson <[email protected]>
Date:   Mon Dec 4 13:55:42 2023 -0800

    feat(boards): Make `west flash` work with new UF2 runner.

commit f86d3da
Author: Peter Johanson <[email protected]>
Date:   Mon Dec 4 12:58:13 2023 -0800

    fix(bt): Fixes for BLE test BSIM bits.

commit 0d20fe9
Author: Peter Johanson <[email protected]>
Date:   Mon Dec 4 19:44:42 2023 +0000

    fix(bt): Updated snapshots for BLE tests.

    * Core Zephyr changes tweaked the output from the
      BT stack for our unit tests.

commit a6556b9
Author: Peter Johanson <[email protected]>
Date:   Wed Nov 15 16:06:21 2023 -0800

    fix(shields): LVGL fixes for nice!view screen

    * Bump the LVGL mem pool size needed for custom screen.
    * Fixes for LVGL drawing/label usage.

commit bbf4a6b
Author: Peter Johanson <[email protected]>
Date:   Wed Nov 15 04:22:09 2023 +0000

    fix(boards): Remove references to PINMUX Kconfig.

commit 3a8d375
Author: Peter Johanson <[email protected]>
Date:   Wed Nov 15 00:40:36 2023 +0000

    fix: Proper use of CONTAINER_OF with delayable work.

commit 70d1fd2
Author: Peter Johanson <[email protected]>
Date:   Tue Nov 14 23:56:11 2023 +0000

    FIXME: Bump to 3.5-branch Docker images.

commit 6239071
Author: Peter Johanson <[email protected]>
Date:   Fri Nov 10 03:51:42 2023 +0000

    fix(kscan): Adjust composite kscan priority

    * Composite kscan needs a dedicated priority to be sure it is
      initialized after the other kscan instances.

commit d881b16
Author: Peter Johanson <[email protected]>
Date:   Fri Nov 10 00:03:57 2023 +0000

    refactor: Remove explicit blocklist item.

    * `sof` is now not enabled by default as a west dep, so need to
      add it to the blocklist ourselves.

commit 8107a98
Author: Peter Johanson <[email protected]>
Date:   Thu Nov 9 23:59:15 2023 +0000

    refactor: Move to new sys_poweroff API.

    * Move to new `sys_poweroff` API for our deep sleep functionality.

commit 74a8157
Author: Peter Johanson <[email protected]>
Date:   Thu Nov 9 23:58:28 2023 +0000

    fix(ble): Ensure large enough string for setting name.

    * Fix warning related to potentially large number of profiles
      causing overflow of allocated string for the setting name.

commit 2c632ff
Author: Peter Johanson <[email protected]>
Date:   Thu Nov 9 00:20:27 2023 -0800

    refactor(kscan): Clean up warning about shadowed local.

commit d2b1b1a
Author: Peter Johanson <[email protected]>
Date:   Thu Nov 9 00:17:44 2023 -0800

    refactor: Move to POST_KERNEL phase for behavior inits.

commit 56da764
Author: Peter Johanson <[email protected]>
Date:   Thu Nov 9 00:10:38 2023 -0800

    refactor: Return int from main function.

commit 8a800e5
Author: Peter Johanson <[email protected]>
Date:   Thu Nov 9 00:08:56 2023 -0800

    fix(display): More LVGL API fixes.

commit b89be75
Author: Peter Johanson <[email protected]>
Date:   Thu Nov 9 00:07:10 2023 -0800

    fix: Fix syscalls generation setup.

commit e3420bd
Author: Peter Johanson <[email protected]>
Date:   Wed Nov 8 23:44:04 2023 -0800

    CLEANUP: Switch to 3.5 Zephyr version.

commit 5462d4e
Author: Peter Johanson <[email protected]>
Date:   Mon Oct 16 06:11:21 2023 +0000

    fix(sensors): Avoid duplicate Kconfig name.

    * Upstream added an equivalent fuel gauge driver, so namespace
      our Kconfig symbol for the MAX17048 driver.

commit 3a09052
Author: Peter Johanson <[email protected]>
Date:   Wed Jun 28 13:34:25 2023 -0700

    refacter(bluetooth): Proper HCI header include.

commit 793dc0f
Author: Peter Johanson <[email protected]>
Date:   Fri Jun 23 07:23:50 2023 +0000

    REMOVEME: Move to PJJ 3.4 Zephyr.

commit f0ca20e
Author: Peter Johanson <[email protected]>
Date:   Fri Jun 23 07:20:30 2023 +0000

    fix: Add missing include for k_work types.

commit 66dd946
Author: Peter Johanson <[email protected]>
Date:   Fri Jun 23 07:19:57 2023 +0000

    refactor: All SYS_INIT functions are void args.

commit 634075a
Author: Peter Johanson <[email protected]>
Date:   Fri Jun 23 07:17:00 2023 +0000

    refactor: Move new LVGL DPI Kconfig setting.
@petejohanson
Copy link
Contributor Author

I addressed the RGB funkiness with SPI pin setup on nRF52 with this change which I added to our Zephyr fork and submitted upstream: zephyrproject-rtos/zephyr#67341 ( /cc @xudongzheng )

* Bump the LVGL mem pool size needed for custom screen.
* Fixes for LVGL drawing/label usage.
* Core Zephyr changes tweaked the output from the
  BT stack for our unit tests.
* Use `NRF_STORE_REBOOT_TYPE_GPREGRET` to get bootloader behavior
  to work for now until retained bootmode is implemented.
* Remove unused pin settings that used deprecated
  devicetree properties.
* Set a reasonable default LVGL mem pool size for our built-in
  status screen.
@petejohanson
Copy link
Contributor Author

Feeling generally positive for merging this. One oustanding report if pairing issues on Arch Linux, waiting for the tester to report ZMK logs to see what's up. They are using the MoErgo version, so need to be careful this isn't related to any of their customizations.

Copy link
Contributor

@caksoylar caksoylar left a comment

Choose a reason for hiding this comment

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

Did a pass over the updated docs links, some of these are auto-redirecting but probably good to update nevertheless.

docs/docs/config/backlight.md Outdated Show resolved Hide resolved
docs/docs/config/battery.md Outdated Show resolved Hide resolved
docs/docs/config/battery.md Outdated Show resolved Hide resolved
docs/docs/config/index.md Outdated Show resolved Hide resolved
docs/docs/config/kscan.md Outdated Show resolved Hide resolved
docs/docs/development/build-flash.mdx Outdated Show resolved Hide resolved
docs/docs/development/build-flash.mdx Outdated Show resolved Hide resolved
docs/docs/development/new-behavior.mdx Outdated Show resolved Hide resolved
docs/docs/development/new-shield.mdx Outdated Show resolved Hide resolved
docs/docs/faq.md Outdated Show resolved Hide resolved
@petejohanson petejohanson force-pushed the core/zephyr-3.5-update branch 2 times, most recently from 0a56928 to 06b05bd Compare February 9, 2024 19:31
petejohanson and others added 7 commits February 9, 2024 13:43
* Don't default heap mempool by default now that there's a dedicated
  LVGL mempool
* Set proper defaults for CiZ display hardware/custom screen.
* Double the dedicated display thread stack size for CiZ.
* Restore enabling of PM_DEVICE, make ZMK_SLEEP work with
  the ZMK Uno shield on nrf52840dk_nrf52840 board.
* After the move to `sys_poweroff`, restore the behavior of
  suspending devices before entering sleep state.
@arturo182
Copy link

giphy (2)

@petejohanson petejohanson merged commit f72f415 into zmkfirmware:main Feb 9, 2024
74 checks passed
@adamcstephens adamcstephens mentioned this pull request Feb 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants