geni_se_clk_freq_match(9)
π geni_se_clk_freq_match(9) β or, how to find your clock's soulmate
okay so this is a page straight out of the Kernel API Manual, bestie. geni_se_clk_freq_match(9) β say it with me β is literally the function that goes "hmm, you want this frequency? let me find you the closest thing we actually have." matchmaker energy fr fr π
β¨ NAME β¨
geni_se_clk_freq_match β Get the matching or closest SE clock frequency π
π¦ SYNOPSIS π¦
int geni_se_clk_freq_match (struct geni_se *se , unsigned long req_freq
, unsigned int *index , unsigned long *res_freq , bool exact );
π ARGUMENTS π
seβ Pointer to the concerned serial engine. like, which SE are we talking about, bestie π«Άreq_freqβ Requested clock frequency. the vibe you're asking for β¨indexβ Index of the resultant frequency in the table. where it ended up living πres_freqβ Resultant frequency of the source clock. what you actually got πΈexactβ Flag to indicate exact multiple requirement of the requested frequency. the "no compromises" switch π
π DESCRIPTION π
So here's the tea: this function gets called by the protocol drivers to determine the best match of the requested frequency, as provided by the serial engine clock, in order to meet the performance requirements. it's giving personal shopper for frequencies ποΈ
If we return success, then:
- if
exactis true, thenres_freq / <an_integer> == req_freqβ - if
exactis false, thenres_freq / <an_integer> <= req_freqβ
π RETURN π
0 on success, standard Linux error codes on failure. slay when it works, standard-issue sadness when it doesn't π
π₯ SEE ALSO π₯
- Kernel file
./drivers/soc/qcom/qcom-geni-se.c Overview(9)Hardware description(9)Software description(9)struct geni_wrapper(9)struct geni_se_desc(9)struct se_fw_hdr(9)geni_se_get_qup_hw_version(9)geni_se_init(9)geni_se_select_mode(9)Overview(9)geni_se_config_packing(9)geni_se_resources_off(9)geni_se_resources_on(9)geni_se_clk_tbl_get(9)geni_se_tx_init_dma(9)geni_se_tx_dma_prep(9)geni_se_rx_init_dma(9)geni_se_rx_dma_prep(9)geni_se_tx_dma_unprep(9)geni_se_rx_dma_unprep(9)geni_icc_set_bw_ab(9)geni_se_resources_deactivate(9)geni_se_resources_activate(9)geni_se_set_perf_level(9)geni_se_set_perf_opp(9)geni_se_domain_attach(9)geni_se_resources_init(9)geni_find_protocol_fw(9)geni_configure_xfer_mode(9)geni_enable_interrupts(9)geni_write_fw_revision(9)geni_load_se_fw(9)geni_load_se_firmware(9)
(yes Overview(9) is in there twice, and no I'm not editing the source, that's just how it is bestie π)
okay that's the whole page!! π this icon lives in ./drivers/soc/qcom, dated October 2026, and it answers to the name geni_se_clk_freq_match(9). mwah, go read your clock tables, ily π«Άπ
π¦ 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