timvideos / HDMI2USB-fx2-firmware

HDMI2USB firmware for the Cypress FX2 found on the Digilent Atlys and Numato Opsis boards.
24 stars 11 forks source link

WIP: libfx2 migartion #48

Closed jedrzejboczar closed 4 years ago

jedrzejboczar commented 5 years ago

This is a version of FX2 firmware ported to use libfx2 instead of fx2lib.

Firmware enumerates as a device supporting CDC, UVC and UAC. Communication with FPGA goes through slave FIFO interface and the Glasgow Migen FX2 crossbar.

FPGA's DNA being published using USB device serial number. FPGA sends DNA marked with a special non-ASCII starting byte through CDC IN endpoint FIFO. FX2 inspects the data in the buffer and re-enumerates with modified serial number.

NOTE: this PR requires libfx2 modification to be able to modify serial number: https://github.com/whitequark/libfx2/pull/3

It is still WIP, because crossbar supports only 2 OUT and 2 IN FIFOs, and we need 3 OUT FIFOs and one IN, so the crossbar has to be further modified.

jedrzejboczar commented 4 years ago

Sorry... this PR duplicates https://github.com/timvideos/HDMI2USB-fx2-firmware/pull/47, I'm moving everything there.