GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - sstjohn/thundergate: an open source toolkit for PCI bus exploration

BranchesTags
Open more actions menu

Latest commit

 

History

306 Commits
306 Commits

Folders and files

NameName
Last commit message
Last commit date
.vscode
.vscode
 
 
doc
doc
 
 
efi
efi
 
 
ext
ext
 
 
fw
fw
 
 
include
include
 
 
leechcore_device_thundergate
leechcore_device_thundergate
 
 
macos
macos
 
 
misc
misc
 
 
py
py
 
 
vsc-ext
vsc-ext
 
 
win
win
 
 
.gitignore
.gitignore
 
 
.gitmodules
.gitmodules
 
 
COPYING
COPYING
 
 
Dockerfile
Dockerfile
 
 
Make.common
Make.common
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
pyproject.toml
pyproject.toml
 
 
requirements.txt
requirements.txt
 
 

Repository files navigation

#######                                            #####
   #    #    # #    # #    # #####  ###### #####  #     #   ##   ##### ######
   #    #    # #    # ##   # #    # #      #    # #        #  #    #   #
   #    ###### #    # # #  # #    # #####  #    # #  #### #    #   #   #####
   #    #    # #    # #  # # #    # #      #####  #     # ######   #   #
   #    #    # #    # #   ## #    # #      #   #  #     # #    #   #   #
   #    #    #  ####  #    # #####  ###### #    #  #####  #    #   #   ######

                              Version 1.0
                 Copyright (C) 2015-2026  Saul St. John
                          http://thundergate.io

Introduction

ThunderGate is a collection of tools for the manipulation of Tigon3 Gigabit Ethernet controllers, with special emphasis on the Broadcom NetLink 57762, such as is found in Apple Thunderbolt Gigabit Ethernet adapters.

Tigon3 controllers contain a variety of architectural blocks, including a PCI endpoint, an 802.3 media access controller, on-chip ram, DMA read and write engines, nonvolatile storage, and an on-chip MIPS processor (older variants have two: the RX CPU and a TX CPU; modern parts ship the RX CPU alone).

These features are exposed by ThunderGate through an easy-to-use Python interface, allowing for reverse engineering, development, and deployment of custom firmware and applications. Examples provided include a userspace TAP driver (with synchronous and asyncio implementations on Linux, Windows and macOS), a firmware application capable of monitoring and manipulating network traffic and host memory, and a PCI option rom containing an EFI boot services driver which can either inhibit the employ or compromise the effectivity of Intel I/O MMU address translation (VT-d).

Warning

This is experimental software made available to you under the terms of the GPLv3. You assume all risks in using it. Please refer to the COPYING file for details.

Further Reading

  • Linux setup
  • macOS setup
  • Windows setup
  • Firmware usage
  • TAP driver usage

Additionally, an old report describing an older version of this project can be found at http://thundergate.io/tg_old.pdf.

About

an open source toolkit for PCI bus exploration

Resources

Readme
GPL-3.0 license
Activity

Stars

74 stars

Watchers

3 watching

Forks

11 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.