summaryrefslogtreecommitdiff
path: root/hw/bsp/ra
AgeCommit message (Collapse)Author
2026-07-24address #3787 Codex round 2: board-gate PHY resets, session robustnesshathach
The board-specific PHY-reset nets move behind a board.h opt-in (TRACE_ETM_QUIET_ENET_PHY on same70_xplained and mimxrt1170_evkb) so other boards of those families cannot inherit a foreign GPIO write; the chip-level trace pin muxes stay family-wide by design (same pattern as stm32h7). same70 reference: width 1 is the validated default until the J403.16 rework, and the hooks now wait (bounded) for PCKRDY3 before Ozone arms trace. ra8m1 reference caches the boot ROM in AfterTargetConnect so --attach sessions decode ROM execution too. etm_capture rejects an unexpanded CMake JLINK_DEVICE with a clear error; PIO-USB + TRACE_ETM on RP2350 is now a compile error (48 MHz trace clock is too slow for PIO-USB and a runtime switch would desync the stream); etm_profile keeps same-named statics from different modules as distinct rows. Build-verified: same70_xplained, mimxrt1170_evkb, raspberry_pi_pico2.
2026-07-24address #3787 reviews: bsp fixes, script hardening, board-note accuracyhathach
Bot findings (Copilot/Codex): no-op board_trace_pinmux stubs for lpcxpresso18s37/43s67 (TRACE_ETM otherwise broke their build), SAME70 ID_PIOD clock enable, capture-script duplicate BeforeTargetConnect on the RA references, profile-script support for --no-timestamps itraces. Deep review (whole branch): same70_xplained board row + caveat restored, stale pico2 72 MHz claim corrected to the shipped 48, explicit SetTracePortWidth(4) in the three references that relied on Ozone's default, coverage-cell guard, median-based SysTick calibration, dead session flag removed, stale RA8M1 divider comment fixed (0x02 = /4 is the validated chip max) and the debugger guard indented. EVKB bench findings: only R1884/D3 remains open (D1/D2 meter-verified); RT1176 trace width is 1 or 4 only - J-Link arms the CSSYS TPIU and its own sampler at 4-bit for any width>=2 request; a powered MCU-Link USB breaks the external probe even with JP4 shorted.
2026-07-24ra: TRACE_ETM for ra6m5_ek and ra8m1_ekhathach
Generic TRCKCR setup gated on DHCSR.C_DEBUGEN (a standalone-boot TRCKCR write wedges the chip un-attachable until power-cycle), two-step write per the hardware manual. ra6m5_ek: div-4 (25 MHz pin) - div-2 is dead on this board at every width/timing; J9 must be closed. ra8m1_ek: chip-max 120 MHz TRCLK / 60 MHz pin via the committed JLinkScript whose empty OnTraceStart defers the trace clock to firmware (J-Link's from-reset enable steps the clock mid-stream at the FSP MOCO-to-PLL switch); ReadIntoTraceCache covers runtime ROM execution. J9 closed on both EKs - open = SWD contention up to apparent bricks.
2026-07-13rusb2: EP0 OUT reliability, HS UTMI PHY power-up, FS-only build supporthathach
- EP0 OUT: park a back-to-back data-stage packet the DCP accepted before PID could go NAK and deliver it into the next armed chunk; flow-control the single-buffer control pipe between chunks (usbtest ctrl_out corruption); discard a packet parked while an OUT pipe was halted so BOT reset recovery's fresh CBW read can't receive stale WRITE data - HS UTMI PHY power-up per the FSP sequence, shared by dcd/hcd: CLKSEL programmed from the board XTAL (EK-RA8M1 runs 20 MHz; the 24 MHz reset default never locks) while DIRPD holds the PHY down, then timed release - hw/bsp(ra8m1_ek): fix U60CK divider macro - BSP_CFG_U60CK_DIV used the generic USB_CLOCK_DIV_8 encoding (7), which USB60CKDIVCR rejects, leaving the USBHS link domain at 480 MHz; the USB60-specific BSP_CLOCKS_USB60_CLOCK_DIV_8 (4) sticks and yields the required 60 MHz from PLL1P - support FS-only builds on the high-speed port: gate SYSCFG.HSE on TUD_OPT_HIGH_SPEED (RHPORT_DEVICE_SPEED=OPT_MODE_FULL_SPEED was a silent no-op) and always compile both hwfifo access widths - the FIFO width belongs to the module, not the link speed (FS builds corrupted odd-length tails: 16-bit access against MBW-32) - iso activate: reset stale pipe bookkeeping so a BRDY firing before the class re-arms can't replay a pre-SET_INTERFACE transfer; write PIPEBUF after PIPESEL selects the pipe (PIPESEL-windowed register) - clear-halt: re-assert BUF on a still-armed OUT pipe (usbtest case 29) - bound the D0FIFO ready spin so an undrained double-buffered IN pipe can't freeze the stack with the IRQ masked - usbtest example: cap interrupt mps at 64 on RUSB2 high speed (pipes 6-9 have a fixed 64-byte buffer, RA6M5 UM 29.1) Verified: usbtest 30/30 on ra6m5_ek (HS), ra4m1_ek (FS) and ra8m1_ek (FS-forced build on the HS port). Co-Authored-By: Claude Fable 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01HeF2gZ1M7GWkz6Av4BpKPg
2026-04-06remove IAR toolchain support from make build systemhathach
IAR is only supported with CMake. Remove all IAR-specific references from the Make build system including toolchain files, SRC_S_IAR, LD_FILE_IAR variables, and IAR toolchain detection. Also fix GET_SECTOR_COUNT truncation in msc_file_explorer and broken formatting in stm32f7 board_uart_write. Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
2026-04-04make board_uart_read()/write() return -1 when unimplemented for consistency ↵hathach
across all families
2026-02-28replace board_millis() with tusb_time_millis_api()hathach
2025-11-25bsp: Disable SysTick ISR if FreeRTOS is enabledZixun LI
2025-10-23refactor family.cmake: rename add_board_target() to family_add_board() and ↵hathach
move it to family_configure_common() also move startup and linker from board target to actual exe
2025-10-14fix lots of warnings for missing-prototypes for irqhandlerhathach
2025-01-25cmake remove EXAMPLE-tinyusb target as libraryhathach
2025-01-24add cmake RTOS=zephyr (default noos) for zephyr buildhathach
2025-01-22- change to use CMAKE_SYSTEM_CPU to prevent CMAKE_SYSTEM_PROCESSOR conflict ↵hathach
with zephyr - change tinyusb CMakeLists.txt to function tinyusb_target_add() instead of defining tinyusb lib target
2024-12-27embed metadata to family.c and board.h to generate supported boards dochathach
2024-12-17Merge branch 'refs/heads/master' into fork/HiFiPhile/rt1170hathach
2024-12-16fix warning due to bsp_rom_registers.chathach
2024-12-16make sure g_bsp_rom_registers is not dropped by linker in cmake build.hathach
always reserve 0x100 for option setting in linker to prevent possible bricked mcu
2024-12-13fix portenta build, added core-m85.cmake/mkhathach
2024-12-13update build for ra8m1: usbfs work, but usbhs not working just yet. Probably ↵hathach
missing configuration or clock setup
2024-12-13ra8m1_ek led and button workshathach
2024-12-13update make build for rahathach
2024-12-12rasc for portenta_c33hathach
2024-12-12rasc ra2a1_ek, but usb does not seem to work. Note fsp.ld need extra 0x100 ↵hathach
byte for ROM registers to work.
2024-12-12rasc for ra4m1_ekhathach
2024-12-12rasc for ra4m3 ekhathach
2024-12-12used pin generated by raschathach
2024-12-12more migrate to ra smart configuratorhathach
2024-12-10change ra bsp to match fsp generated directoryhathach
2024-11-30Fix cmake options.HiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2024-11-30Add bin & hex output to cmake targets.HiFiPhile
2024-10-10add new tusb_int_handler(rhport, in_isr) as common irq handlerhathach
update tusb_init() to take rhport and role, defined as macro with optional argument for backward compatible
2024-07-19add ra4m1 ek for hil testhathach
2024-04-10support ra2a1 pipe numbering, fix ra2a1 ek led/button. Though usb not ↵hathach
enumerated yet, probably due to bsp/clock setup
2024-04-08Merge pull request #2466 from wavenumber-eng/MCXHa Thach
TinyUSB stack ported to MCXA and MXCN freedom boards.
2024-04-08fix configENABLE_FPU=0 for cortex-m33+nodsphathach
2024-04-06fix ra2a1 fpu with freertoshathach
2024-04-05fix ram overflow with ram41hathach
2023-12-18update FreeRTOSConfig.hhathach
- remove configAssert() - configCHECK_HANDLER_INSTALLATION=0 (to prevent unused-parameter error with configAssert(x)=nil
2023-11-23move tools/cmake to examples/build_systemhathach
2023-11-23make nanolib linking explicitly by each family/boardhathach
2023-11-16switch freertos to static allocation only (dynamic = 0), since it is ↵hathach
possible now with latest freertos cmake
2023-11-15add ra2a1 ekhathach
also make some other changes
2023-09-27change hcd_int_handler(rhport, in_isr) signature: add in_isrhathach
change tuh_int_handler() to take in_isr as optional parameter (default = true)
2023-08-04Merge branch 'master' into enhance-bsphathach
2023-08-03Merge pull request #2052 from arduino/renesas_ra_hs_rebasedHa Thach
Renesas_RA: add support for board with HS USB port
2023-08-03more board_api.h renamehathach
2023-08-03add osal queue name if neededhathach
also mass change configQUEUE_REGISTRY_SIZE = 4
2023-08-01fix build with -fltohathach
2023-08-01add rusb2_common.c for dynami irqhathach
2023-08-01enable flto for ra makefilehathach
- remove ra from ci make build since it is already in cmake ci