Skip to content

[codex] add ArduinoCore LPC8xx board metadata#514

Merged
zackees merged 1 commit into
mainfrom
feat/lpc8xx-board-info
Jun 9, 2026
Merged

[codex] add ArduinoCore LPC8xx board metadata#514
zackees merged 1 commit into
mainfrom
feat/lpc8xx-board-info

Conversation

@zackees

@zackees zackees commented Jun 8, 2026

Copy link
Copy Markdown
Member

Summary

Add the concrete board metadata now available in zackees/ArduinoCore-LPC8xx for:

  • NXP LPC845-BRK
  • NXP LPCXpresso804
  • NXP LPCXpresso845-MAX

This also teaches fbuild to preserve build.ldscript and build.openocd_target, uses board metadata as the source for package-specific CPU defines, and enables real LPC804/LPC845 CI fixtures instead of the previous no-op workflow stubs.

Root Cause

The ArduinoCore-LPC8xx package now exposes board-level details that fbuild previously lacked. fbuild only had generic lpc804/lpc845 entries and hard-coded one LPC845 package CPU ID, so the LPCXpresso845-MAX CPU_LPC845M301JBD64 variant could not compile through the NXP LPC8xx Arduino stub.

Validation

  • soldr cargo fmt
  • soldr cargo test -p fbuild-config test_lpc8xx_arduino_core_board_configs -- --nocapture
  • soldr cargo test -p fbuild-build board_lpc_family_accepts_concrete_arduino_boards -- --nocapture
  • soldr cargo test -p fbuild-build nxplpc -- --nocapture
  • soldr cargo clippy -p fbuild-config --all-targets -- -D warnings
  • soldr cargo clippy -p fbuild-build --all-targets -- -D warnings
  • soldr cargo build -p fbuild-cli -p fbuild-daemon
  • target\x86_64-pc-windows-msvc\debug\fbuild.exe build tests\platform\lpc804 --quick -v --no-timestamp
  • target\x86_64-pc-windows-msvc\debug\fbuild.exe build tests\platform\lpc845 --quick -v --no-timestamp
  • target\x86_64-pc-windows-msvc\debug\fbuild.exe build tests\platform\lpcxpresso845max --quick -v --no-timestamp

I also checked the LPCXpresso845-MAX compiler response files and confirmed they contain CPU_LPC845M301JBD64, ARDUINO_LPCXPRESSO845MAX, and ARDUINO_ARCH_LPC8XX without CPU_LPC845M301JBD48.

@coderabbitai

coderabbitai Bot commented Jun 8, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@zackees, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 31 minutes and 11 seconds. Learn how PR review limits work.

Your organization has run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 5e81899d-cb9d-472a-b246-36e9f9ab5b97

📥 Commits

Reviewing files that changed from the base of the PR and between edb861b and 5d1120a.

📒 Files selected for processing (24)
  • .github/workflows/build-lpc804.yml
  • .github/workflows/build-lpc845.yml
  • .github/workflows/build-lpcxpresso845max.yml
  • crates/fbuild-build/src/nxplpc/assets/arduino_stub/wiring_time.c
  • crates/fbuild-build/src/nxplpc/assets/device_headers/fsl_device_registers.h
  • crates/fbuild-build/src/nxplpc/configs/nxplpc.json
  • crates/fbuild-build/src/nxplpc/mcu_config.rs
  • crates/fbuild-build/src/nxplpc/orchestrator.rs
  • crates/fbuild-build/src/zccache.rs
  • crates/fbuild-cli/src/daemon_client.rs
  • crates/fbuild-config/assets/boards/json/lpc845brk.json
  • crates/fbuild-config/assets/boards/json/lpcxpresso804.json
  • crates/fbuild-config/assets/boards/json/lpcxpresso845max.json
  • crates/fbuild-config/assets/boards/manifest.json
  • crates/fbuild-config/src/bin/enrich_boards.rs
  • crates/fbuild-config/src/board/db.rs
  • crates/fbuild-config/src/board/loaders.rs
  • crates/fbuild-config/src/board/mod.rs
  • crates/fbuild-config/src/board/tests_lpc8xx.rs
  • crates/fbuild-config/src/board/types.rs
  • tests/platform/lpc804/platformio.ini
  • tests/platform/lpc845/platformio.ini
  • tests/platform/lpcxpresso845max/lpcxpresso845max.ino
  • tests/platform/lpcxpresso845max/platformio.ini
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/lpc8xx-board-info

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@zackees zackees force-pushed the feat/lpc8xx-board-info branch from 3ac08e6 to 36f318f Compare June 8, 2026 22:19
@fastled-project-sync fastled-project-sync Bot moved this to Triage in FastLED Tracker Jun 9, 2026
@zackees zackees force-pushed the feat/lpc8xx-board-info branch from 36f318f to c85de87 Compare June 9, 2026 04:49
@zackees zackees marked this pull request as ready for review June 9, 2026 04:49
@zackees zackees force-pushed the feat/lpc8xx-board-info branch from c85de87 to 5d1120a Compare June 9, 2026 05:06
@zackees zackees merged commit 8103898 into main Jun 9, 2026
87 checks passed
@zackees zackees deleted the feat/lpc8xx-board-info branch June 9, 2026 05:18
zackees added a commit that referenced this pull request Jun 12, 2026
…badges (#536)

Add passing no-op CI slots for the two ArduinoCore-LPC8xx variants that
do not yet have in-tree fixtures (tests/platform/<variant>/). Board
JSONs already landed in #514; conversion to real template_build.yml
callers is tracked in #528 (Stage 8 of META #487).

The originally drafted lpcxpresso845max stub is intentionally NOT
included: PR #514 already shipped the real template_build.yml caller
plus fixture and board JSON, and that workflow is green on main.

Refs #528, #487

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Triage

Development

Successfully merging this pull request may close these issues.

1 participant