STRUCT PCH_GBE_ADAPTER(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct pch_gbe_adapter(9) πŸ’…

okay so bestie, welcome to the Kernel API Manual page for struct pch_gbe_adapter(9) β€” and yes, it's giving "board's own private little data stash" energy. This is the board specific private data structure, and we're gonna walk through every field like it's a group chat. 🫢


✨ NAME ✨

struct pch_gbe_adapter β€” board specific private data structure. That's the whole name section; iconic, concise, no notes πŸ’…

🌸 SYNOPSIS 🌸

Here's the struct in all its glory, copied exactly:

       struct pch_gbe_adapter {
           spinlock_t stats_lock;
           spinlock_t ethtool_lock;
           atomic_t irq_sem;
           struct net_device *netdev;
           struct pci_dev *pdev;
           int irq;
           struct net_device *polling_netdev;
           struct napi_struct napi;
           struct pch_gbe_hw hw;
           struct pch_gbe_hw_stats stats;
           struct work_struct reset_task;
           struct mii_if_info mii;
           struct timer_list watchdog_timer;
           u32 wake_up_evt;
           u32 *config_space;
           unsigned long led_status;
           struct pch_gbe_tx_ring *tx_ring;
           struct pch_gbe_rx_ring *rx_ring;
           unsigned long rx_buffer_len;
           unsigned long tx_queue_len;
           bool rx_stop_flag;
           int hwts_tx_en;
           int hwts_rx_en;
           struct pci_dev *ptp_pdev;
           struct pch_gbe_privdata *pdata;
        };

πŸ‘‘ Members πŸ‘‘

Tiny heads-up: the original gives no member blurb for a few of these fields, so I'm not inventing lore β€” they still get a bullet because every field deserves its moment. πŸ’–

  • stats_lock β€” spinlock structure for status.
  • ethtool_lock β€” spinlock structure for ethtool.
  • irq_sem β€” semaphore for interrupt.
  • netdev β€” pointer of network device structure.
  • pdev β€” pointer of pci device structure.
  • irq β€” the original has no member blurb for this one; it's in the synopsis, and I'm leaving it exactly as mysterious as it came. 😌
  • polling_netdev β€” pointer of polling network device structure.
  • napi β€” NAPI structure.
  • hw β€” the original says "Pointer of hardware structure" and I'm just relaying the message πŸ’…
  • stats β€” hardware status.
  • reset_task β€” reset task.
  • mii β€” MII information structure.
  • watchdog_timer β€” watchdog timer list.
  • wake_up_evt β€” wake up event.
  • config_space β€” configuration space.
  • led_status β€” LED status.
  • tx_ring β€” pointer of Tx descriptor ring structure.
  • rx_ring β€” pointer of Rx descriptor ring structure.
  • rx_buffer_len β€” receive buffer length.
  • tx_queue_len β€” transmit queue length.
  • rx_stop_flag β€” no member blurb in the original for this one; still in the struct, still valid, no made-up facts. 😌
  • hwts_tx_en β€” no member blurb in the original for this one; it's in the synopsis and I will not invent a meaning. 🫢
  • hwts_rx_en β€” no member blurb in the original for this one either; same energy, same rule. πŸ’–
  • ptp_pdev β€” no member blurb in the original; it's literally just chilling in the struct. πŸ¦‹
  • pdata β€” no member blurb in the original; present in the synopsis, mysterious in the Members list, periodt. πŸ’…

πŸ¦‹ SEE ALSO πŸ¦‹

Kernel file ./drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe.h β€” and the full squad is:

  • struct pch_gbe_mac_info(9)
  • struct pch_gbe_phy_info(9)
  • struct pch_gbe_rx_desc(9)
  • struct pch_gbe_tx_desc(9)
  • struct pch_gbe_buffer(9)
  • struct pch_gbe_tx_ring(9)
  • struct pch_gbe_rx_ring(9)
  • struct pch_gbe_hw_stats(9)
  • struct pch_gbe_privdata(9)

footer check, bestie: source/version is ./drivers/net/ethernet/oki-sem..., date is October 2026 β€” that's the cute little sign-off, mwah πŸ’‹βœ¨

πŸ“¦ where this page comes from