OpenBSD Handbook

    Theme
    • Part I. Install & Configure
      • Introduction to OpenBSD
      • Installing OpenBSD
      • The X Window System
      • Networking on OpenBSD
      • System Configuration
      • OpenBSD Basics
      • Managing Software: Packages and Ports
    • Part II. Daily Operations
      • OpenBSD Desktop Environments
      • Multimedia
      • Printing
      • Linux Compatibility
      • Windows Compatibility
      • Games
    • Part III. System Administration
      • Virtualization
      • Storage and File Systems
      • Updating and Upgrading
      • Localization
      • The OpenBSD Boot Process
      • Security
    • Part IV. Networking & Daemons
      • Services
        • Database
          • MariaDB
          • PostgreSQL
          • Redis
          • memcached
        • Directory
          • YP (NIS)
          • LDAP
        • File
          • NFS
          • Samba
        • FTP Services
          • ftpd
          • ProFTPD
          • vsftpd
          • Pure-FTPd
          • TFTP
        • Mail
          • OpenSMTPD Mail Server
          • Dovecot IMAP and POP3 Server
          • Postfix
          • Exim
          • Rspamd
        • Name
          • Unbound DNS Resolver
          • NSD Authoritative DNS Server
          • BIND DNS Server
        • Networking
          • OpenBGPD
          • rad
          • DHCP on OpenBSD
          • slaacd
        • Web
          • Apache HTTP Server
          • nginx Web Server
          • OpenBSD httpd Web Server
          • relayd Reverse Proxy
        • Logging
          • syslogd
        • Monitoring
          • SNMP
        • Remote Access
          • Audit OpenSSH
          • OpenSSH Server
        • File Synchronization
          • rsync
        • Messaging
          • RabbitMQ Message Broker
        • Time
          • NTP Time Synchronization
      • PF
        • pfctl cheat sheet
        • PF Anchors
        • PF Filter Rules
        • PF Forwarding
        • PF Lists and Macros
        • PF Load Balancing
        • PF Logging
        • PF NAT
        • PF Options
        • PF Policies
        • PF Shortcuts
        • PF Tables
      • Advanced Networking
        • High Availability and State Replication
        • Multi-WAN and Policy-Based Routing
        • VPN and Cryptographic Tunneling
        • Classic and Lightweight Tunnels
        • IPv6 at Scale
        • QoS and Traffic Shaping
        • MPLS and Label Distribution
        • Network Services at Scale
        • Virtualization and Host Networking
        • Large-Scale L2 and L3 Design
        • Telemetry, Logging, and Flow Export
        • Hardening and Operational Safety
        • Reference Architectures
        • Troubleshooting Playbooks
      • Serial Communication
    • Part V. Miscellaneous
      • Virtualization Cheat Sheet
      • OpenBSD Cheatsheet
      • How-to Guides
        • Complete the First 30 Minutes After Installation
        • Check Hardware Compatibility Before Installing
        • Bootstrap Wi-Fi Firmware Without Ethernet
        • Set Up OpenBSD as a Laptop or Workstation
        • Configure Laptop Power Management
        • Run OpenBSD as a Virtual Machine Guest
        • Install OpenBSD on a VPS or Cloud Server
        • Install OpenBSD with Full-Disk Encryption
        • Troubleshoot Web Browsers on OpenBSD
        • Create an Administrator Account with doas and SSH Keys
        • Establish a Conservative Security Baseline
        • Manage OpenBSD with Ansible
        • Recover Access and Reset the Root Password
        • Collect OpenBSD Diagnostic Evidence
        • Configure Secure Remote Access with OpenSSH
        • Set Up WordPress on OpenBSD
        • Build Third-Party Software from Ports
        • Use FIDO Security Keys with OpenSSH
        • Build OpenBSD from Source
        • Configure Wi-Fi Roaming and Wired Failover
        • Dual-Boot OpenBSD on a UEFI System
        • Troubleshoot PF, NAT, and Routing
        • Automate OpenBSD Installation with Autoinstall and PXE
        • Route Multiple VLANs with PF
        • Configure a Road-Warrior WireGuard VPN
        • Troubleshoot Package Installation and Update Failures
        • Route IPv6 Networks without NAT
        • Schedule Recurring Maintenance
        • Plan a Docker Workload Migration to OpenBSD
        • Build a Mail Server with OpenSMTPD, Dovecot, and Rspamd
        • Build a Simple Router and Firewall
        • Monitor an OpenBSD System
        • Back Up and Restore an OpenBSD System
        • Configure softraid RAID1
        • Recover an OpenBSD System That Does Not Boot
        • Install Z shell (zsh)
      • OpenBSD for Linux Users
      • OpenBSD for FreeBSD Users
      • OpenBSD for macOS Users
    • OpenBSD FAQ
    • OpenBSD Architectures
      • OpenBSD Package Search

        openfpgaloader-1.1.1pl20260714

        Package search / Categories / OpenBSD 8.0 release
        โ† Back to search
        OpenBSD branch
        OpenBSD 8.0 releaseCurrent snapshot

        OpenBSD 8.0 release ยท amd64

        universal utility for programming FPGAs

        Project homepage: https://github.com/trabucayre/openFPGALoader

        Description

        Universal utility for programming FPGAs. Compatible with many boards, cables and FPGA from major manufacturers (Xilinx, Altera/Intel, Lattice, Gowin, Efinix, Anlogic, Cologne Chip).

        Package information

        Ports path
        comms/openfpgaloader
        Package architecture
        amd64
        Maintainer
        Thomas Dettbarn <dettus@dettus.net>
        Categories
        comms
        Available flavors
        None listed
        Only for architectures
        aarch64, amd64, arm, i386, mips64, mips64el, powerpc, powerpc64, riscv64, sparc64, alpha, hppa

        Ports list build and test dependencies as well as runtime dependencies. pkg_add selects those needed for installation.

        Direct dependencies

        Library

        • devel/libftdi1
        • devel/libusb1
        • sysutils/libudev-openbsd

        Build

        • devel/cmake/core STEM->=4
        • devel/ninja
        OpenBSD README
        +-------------------------------------------------------------------------------
        | Running openfpgaloader on OpenBSD
        +-------------------------------------------------------------------------------
        
        Note about uftdi(4)
        ===================
        On OpenBSD, libusb/libftdi cannot correctly access some devices if they're
        attached to the uftdi driver. You might see error messages like this:
        
          fail to read data usb bulk read failed
          JTAG init failed with: low level FTDI init failed
        
        OpenBSD does not allow detaching a device from a driver at runtime, so you
        will need to modify the kernel or kernel configuration to prevent uftdi(4)
        from attaching to the device.
        
        uftdi(4) can be disabled completely without a kernel recompile, or the
        driver can be modified to avoid attaching to a device with a specific
        vendor/product id (this requires kernel sources and a recompile).
        In either case, the device will attach to ugen(4) as a fallback.
        
        Disabling as a one-off from the boot loader
        -------------------------------------------
          boot> boot -c
          ...
          User Kernel Config
          UKC> disable uftdi
          360 uftdi* disabled
          UKC> quit
        
        Disabling uftdi(4) with bsd.re-config(5)
        ----------------------------------------
        This can be done with the following commands:
        
          echo "disable uftdi" >>/etc/bsd.re-config
          /usr/libexec/reorder_kernel
          reboot
        
        Patching the kernel
        -------------------
        This method is only recommended if developing your FPGA project on a
        machine with an additional FTDI USB to UART adapter with different ID
        that needs to connect as a serial port, otherwise it is simpler to
        disable ftdi(4).
        
        Obtain source for your version of OpenBSD and prepare to
        compile a kernel, see https://www.openbsd.org/faq/faq5.html#Options
        
        Identify the vendor and product code of your device and look up the
        definitions:
        
          $ usbdevs -v
          ...
          addr 06: 0403:6010 Future Technology Devices, 2232C Serial
                   ...
                   driver: uftdi0
          ...
        
          $ grep ^vendor.*0x0403 /sys/dev/usb/usbdevs
          vendor FTDI		0x0403	Future Technology Devices
        
          $ grep "^product.*0x6010" /sys/dev/usb/usbdevs
          product FTDI SERIAL_2232C	0x6010	2232C Serial
        
        Edit /sys/dev/usb/uftdi.c and comment-out the entry for your vendor/product
        codes in the uftdi_devs[] array. The above device would be USB_VENDOR_FTDI
        and USB_PRODUCT_FTDI_SERIAL_2232C, so you could edit as follows:
        
          { USB_VENDOR_FTDI, USB_PRODUCT_FTDI_SEMC_DSS20 },
          // { USB_VENDOR_FTDI, USB_PRODUCT_FTDI_SERIAL_2232C },
          { USB_VENDOR_FTDI, USB_PRODUCT_FTDI_SERIAL_2232L },
        
        Rebuild the kernel as shown in faq5 and reboot.
        

        Package guides

        • Installing and updating packages

        Package details as JSON

        Report a bug