Skip to content

v6.0-alpha.0

Pre-release
Pre-release

Choose a tag to compare

@nuxcodes nuxcodes released this 14 Mar 23:21
· 49 commits to master since this release

iPod 5G (Video) MFi USB Audio Support

First alpha porting MFi USB audio + iAP HID authentication to iPod 5G (Video).

What's new

  • USB Audio Class 1.0 source streaming on iPod 5G (PP5022 / ARC USB controller)
  • iAP HID authentication for MFi DACs (e.g. Oppo HA-2SE)
  • Dual USB config: Config 1 = mass storage, Config 2 = audio + iAP HID
  • Source-only endpoint allocation for 3-EP ARC controller (EP1=ISO IN audio, EP2=INT IN iAP HID)
  • PCM DMA inhibit for USB pull-mode audio on PP502x

Downloads

  • rockbox-ipodvideo-5g.zip — iPod Video (5G) firmware
  • rockbox-ipod6g.zip — iPod Classic (6G) firmware (unchanged behavior, regression-tested)

Known risks

  • ARC isochronous ISO IN path uses ENDPTCOMPLETE (reactive) vs mojyack's SOF-based batch (proactive) — validated by double-buffer pre-fill strategy, untested on hardware
  • If audio glitches occur, SOF interrupt handling can be added as fallback (~30 lines)

Changes (5 files, +31/-1)

  • firmware/export/config/ipodvideo.h — enable USB_ENABLE_IAP_HID
  • firmware/usbstack/usb_audio.c — conditional EP allocation for 3-EP targets + set_ahb_boost guard
  • firmware/usbstack/usb_audio.h — matching conditional extern declaration
  • firmware/target/arm/pp/pcm-pp.c — pcm_dma_start_inhibit for USB pull mode
  • firmware/target/arm/usb-drv-arc.c — usb_drv_get_iisoixfr_count() stub