STRUCT THC_DEVICE(9)
π struct thc_device(9) π
hey bestie, welcome to this page from the Kernel API Manual β it's all about struct thc_device, the THC private device struct. no cap, this is the group-chat rundown of every field. π
β¨ NAME β¨
struct thc_device β THC private device struct. that's the whole name section, short and iconic. π
π¦ SYNOPSIS π¦
okay so here's the struct in all its glory β copy it exactly, bestie, no edits:
struct thc_device {
struct device *dev;
struct regmap *thc_regmap;
void __iomem *mmio_addr;
struct mutex thc_bus_lock;
enum thc_port_type port_type;
bool pio_int_supported;
struct thc_dma_context *dma_ctx;
struct thc_wot wot;
wait_queue_head_t write_complete_wait;
wait_queue_head_t swdma_complete_wait;
bool write_done;
bool swdma_done;
u32 perf_limit;
u32 *i2c_subip_regs;
u32 i2c_max_rx_size;
u32 i2c_int_delay_us;
bool i2c_max_rx_size_en;
bool i2c_int_delay_en;
};
tiny aside: dev is in the struct, but the original Members list below doesn't describe it β so I'm not inventing lore. π
π― Members π―
thc_regmapβ the MMIO regmap structure for accessing THC registers β¨mmio_addrβ the MMIO registers address, i.e. where those registers live.thc_bus_lockβ mutex locker for THC config; it's giving bouncer-at-the-config-club energy πport_typeβ the port type of this THC port instance.pio_int_supportedβ flag saying PIO interrupts are supported. π«Άdma_ctxβ DMA-specific data.wotβ THC Wake-on-Touch data.write_complete_waitβ signal event for DMA write complete.swdma_complete_waitβ signal event for SWDMA sequence complete.write_doneβ bool value that says whether the DMA write is done.swdma_doneβ bool value that says whether the SWDMA sequence is done.perf_limitβ the delay between a read operation and a write operation.i2c_subip_regsβ the copy of THC I2C sub-system registers for resuming restore.i2c_max_rx_sizeβ I2C Rx transfer max input size.i2c_int_delay_usβ I2C input interrupt delay; the unit isus.i2c_max_rx_size_enβ bool value that indicates whether I2C max input size control is enabled or not.i2c_int_delay_enβ bool value that indicates whether I2C input interrupt delay is enabled or not.
π₯ SEE ALSO π₯
- Kernel file
./drivers/hid/intel-thc-hid/intel-thc/intel-thc-dev.hπ struct thc_i2c_config(9)
xoxo, your kernel bestie π β source/version: ./drivers/hid/intel-thc-hid/in...; dated October 2026. periodt.
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms