STRUCT GENI_SE(9)
π struct geni_se(9) β like, the GENI Serial Engine page, bestie
okay so this is from the Kernel API Manual, and it's literally the whole vibe of struct geni_se β the GENI Serial Engine. it's giving "small struct, big responsibilities." let's get into it π«Ά
β¨ NAME β¨
struct geni_se β GENI Serial Engine. that's it, that's the name, iconic π
πΈ SYNOPSIS πΈ
look at her. look at the whole struct. no cap, every field is right here:
struct geni_se {
void __iomem *base;
struct device *dev;
struct geni_wrapper *wrapper;
struct clk *clk;
struct clk *core_clk;
unsigned int num_clk_levels;
unsigned long *clk_perf_tbl;
struct geni_icc_path icc_paths[3];
struct dev_pm_domain_list *pd_list;
bool has_opp;
};
like, she's got range. clock handles, ICC paths, a power domain listβ¦ main character energy fr fr π
π Members π
bestie, let's go field by field, one by one, no skipping, i promise:
baseβ the Base Address of the Serial Engine's register block. like, where the registers actually live. home base πdevβ Pointer to the Serial Engine device. the device representation of this SE, right there.wrapperβ Pointer to the parent QUP Wrapper core. yes, she has a parent. family business β¨clkβ Handle to the core serial engine clock. the main clock glyph, and we respect her.core_clkβ Auxiliary clock, which may be required by a protocol. aux queen πnum_clk_levelsβ Number of valid clock levels inclk_perf_tbl. a headcount, basically.clk_perf_tblβ Table of clock frequency input to serial engine clock. the whole menu of frequencies πicc_pathsβ Array of ICC paths for SE. and it's an array of3, exactly three, do not @ me.pd_listβ Power domain list for managing power domains. she's managing domains, plural, like a boss.has_oppβ Indicates if OPP is supported. simple, sweet,bool, tells you yes or no π
π¦ SEE ALSO π¦
- Kernel file
./include/linux/soc/qcom/geni-se.henum β that's where the enum lives iykyk geni_se_xfer_mode(9)geni_se_read_proto(9)geni_se_setup_m_cmd(9)geni_se_setup_s_cmd(9)geni_se_cancel_m_cmd(9)geni_se_cancel_s_cmd(9)geni_se_abort_m_cmd(9)geni_se_abort_s_cmd(9)geni_se_get_tx_fifo_depth(9)geni_se_get_tx_fifo_width(9)geni_se_get_rx_fifo_depth(9)
like, read the whole friend group, they're all connected π«Ά
ngl that's the entire page β every field, every function reference, nothing skipped, periodt. go be obsessed with your serial engine π
sign-off szn: this page came from ./include/linux/soc/qcom and it's dated October 2026 β and the title/manual name is, again, struct geni_se(9) from the Kernel API Manual. mwah π slay, bye bestie π¦
π¦ 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