__ssp_early_writel(9)
β¨ __ssp_early_writel(9) β¨
okay bestie, welcome to the Kernel API Manual π this one is a lil function from the SiFive serial driver and it's literally just "put a value in a register, but make it early" π
πΈ NAME πΈ
__ssp_early_writel β write to a SiFive serial port register (early) π¦
β SYNOPSIS β
void __ssp_early_writel (u32 v , u16 offs , struct uart_port *port );
π ARGUMENTS π
vβ the value you're writing into the register, that's it, that's the whole vibe β¨offsβ the register address offset, measured from the IP block base address πportβ a pointer to astruct uart_portrecord, the main character of this whole story π
π«Ά DESCRIPTION π«Ά
so you hand it a pointer port to a struct uart_port record, and it writes the value v to the IP block register address offset offs. simple as that, no cap π
this one is intended for early console use β like, before all the fancy stuff is up and running π
π₯ CONTEXT π₯
fr fr, this is intended to be used only by the earlyconsole code. not a general-purpose lil guy, okay? respect the lane π
π§ SEE ALSO π§
- Kernel file
./drivers/tty/serial/sifive.c struct sifive_serial_port(9)__ssp_early_readl(9)__ssp_writel(9)__ssp_readl(9)sifive_serial_is_txfifo_full(9)__ssp_transmit_char(9)__ssp_transmit_chars(9)__ssp_enable_txwm(9)__ssp_enable_rxwm(9)__ssp_disable_txwm(9)__ssp_disable_rxwm(9)__ssp_receive_char(9)__ssp_receive_chars(9)__ssp_update_div(9)__ssp_update_baud_rate(9)__ssp_set_stop_bits(9)__ssp_wait_for_xmitr(9)sifive_serial_clk_notifier(9)
lowkey obsessed with how many friends this function has in ./drivers/tty/serial π
k that's the whole page bestie, go forth and write registers π
shoutout to the ./drivers/tty/serial source and the October 2026 version, mwah π
π¦ 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