diff --git a/README.md b/README.md index 0950423d2..042e49275 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ First steps • Install • Troubleshooting • Advanced usage
-Universal utility for programming FPGAs. Compatible with many boards, cables and FPGA from major manufacturers (Xilinx, Altera/Intel, Lattice, Gowin, Efinix, Anlogic, Cologne Chip). openFPGALoader works on Linux, Windows and macOS. +Universal utility for programming FPGAs. Compatible with many boards, cables and FPGA from major manufacturers (Xilinx, Altera/Intel, Lattice, Gowin, Efinix, Anlogic, Cologne Chip). openFPGALoader works on Linux, Windows, macOS and OpenBSD. Not sure if your hardware is supported? Check the hardware compatibility lists: diff --git a/doc/guide/troubleshooting.rst b/doc/guide/troubleshooting.rst index fa5a33c16..cb10e00d7 100644 --- a/doc/guide/troubleshooting.rst +++ b/doc/guide/troubleshooting.rst @@ -83,13 +83,28 @@ Unable to flash device on OpenBSD: `JTAG init failed with: DirtyJtag: fails to o Certain evaluation boards may show the following error message when running openFPGAloader on OpenBSD: .. code:: bash + fail to read data usb bulk read failed JTAG init failed with: low level FTDI init failed -This issue is most likely caused by the uftdi module, which has already locked the device. -Disabling the module can be achieved with the following commands: +This issue is most likely caused by the uftdi(4) module, which has attached itself to the device, whereas openFPGALoader requires it to be accessible as a ugen(4) device. + +Unfortunately, due to the security concept of OpenBSD, it is not possible to detach it without modifying the kernel and rebooting the system. However, there are two ways to resolve the issue: Either by patching and recompiling the kernel; or by deactivating the uftdi(4) module. + +After COMMENTING OUT the problematic devices in `/usr/src/sys/dev/usb/uftdi.c`, the code would look like this: + +.. code:: c + + { USB_VENDOR_FTDI, USB_PRODUCT_FTDI_SEMC_DSS20 }, + //{ USB_VENDOR_FTDI, USB_PRODUCT_FTDI_SERIAL_2232C }, + { USB_VENDOR_FTDI, USB_PRODUCT_FTDI_SERIAL_2232L }, + +With this manual patch applied, the steps in `https://www.openbsd.org/faq/faq5.html