ks8851_irq(9)
β¨ ks8851_irq β¨
okay so bestie, welcome to the ks8851_irq page β this is a section 9 Kernel API Manual entry, so it's the ~dev side~ of the docs, not the "how do I run ls" side. Buckle up π
πΈ NAME πΈ
ks8851_irq β the IRQ handler that deals with interrupt requests π
like, the interrupt handler. the one that answers the door when the hardware knocks. iconic behavior honestly.
π¦ SYNOPSIS π¦
irqreturn_t ks8851_irq (int irq , void *_ks );
no cap, that's the whole signature. copy it exactly, spaces and all, because C is picky and we respect her π«Ά
π ARGUMENTS π
irqβ the IRQ number π like, which interrupt line is hollering at us._ksβ the cookie πͺ yep. that's genuinely what it's called. it's the little pointer that gets passed back to us so we know which device we're dealing with.
π₯ DESCRIPTION π₯
so this handler gets invoked when the IRQ line asserts, and its whole job is to figure out what actually happened π
and here's the thing β we cannot allow ourselves to sleep in HARDIRQ context. not allowed. absolutely not. so this handler runs in thread context instead. slay for not blocking the whole kernel, honestly π§
what it does, in order:
- read the interrupt status β¨
- work out what needs to be done π
- clear any of the interrupts that are not needed π
that's it. that's the vibe. read, think, tidy up. main character energy fr fr π
π SEE ALSO π
the kernel file this lives in, for the curious:
Kernel file `./drivers/net/ethernet/micrel/ks8851_common.c`
and the whole bestie squad of related functions (go read them, they're all right there π):
ks8851_lock(9)ks8851_unlock(9)ks8851_wrreg16(9)ks8851_rdreg16(9)ks8851_soft_reset(9)ks8851_set_powermode(9)ks8851_write_mac_addr(9)ks8851_read_mac_addr(9)ks8851_init_mac(9)ks8851_rx_pkts(9)ks8851_flush_tx_work(9)ks8851_net_open(9)ks8851_net_stop(9)ks8851_start_xmit(9)ks8851_rxctrl_work(9)ks8851_eeprom_claim(9)ks8851_eeprom_release(9)ks8851_phy_reg(9)ks8851_phy_read(9)ks8851_read_selftest(9)
okay that's the whole page, ily, go read some source code π
source/version: ./drivers/net/ethernet/micrel Β· dated October 2026 Β· page: ks8851_irq(9) β
π¦ 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