aemif_config_abus(9)
π aemif_config_abus(9) β from the Kernel API Manual, bestie
okay so real talk, we're in the Kernel API Manual today and the star of the show is aemif_config_abus(9). yes the name is a mouthful, no you don't have to say it out loud. π
β¨ NAME β¨
aemif_config_abus β configure async bus parameters π¦
like, it sets up the async bus timing stuff. that's the whole vibe.
πΈ SYNOPSIS πΈ
int aemif_config_abus (struct platform_device *pdev , int csnum );
she takes two things and gives you back an int. iconic behavior honestly.
π ARGUMENTS π
pdevβ the platform device you're configuring for. this is the "who" of the operation π«Άcsnumβ the aemif chip select number. this is the "which one" of the operation β
π₯ DESCRIPTION π₯
okay so here's the tea: this function programs the given timing values (in real clock) into the AEMIF registers, and it does not forget to take the AEMIF clock into account while doing it. math? in my kernel driver? it's more likely than you think πβ¨
now, the no-locking thing. this function does not use any locking while programming the AEMIF. and before you panic β nope, that's on purpose. it's expected that there is only one user of a given chip-select. one user, one chip-select, no drama, no mutex. main character energy only π
β οΈ lowkey important: that no-locking thing is an expectation, not a force field. it only holds up because of the one-user-per-chip-select assumption. don't come crying to her if you break it π
Returns 0 on success, else negative errno. slay. π
π SEE ALSO π
- Kernel file
./drivers/memory/ti-aemif.c(the source of truth, go read it bestie) struct aemif_cs_data(9)struct aemif_device(9)aemif_check_cs_timings(9)aemif_set_cs_timings(9)aemif_calc_rate(9)aemif_get_hw_params(9)of_aemif_parse_abus_config(9)
the whole friend group fr fr π§
and that's the page!! mwah π this little writeup comes to you from ./drivers/memory, dated October 2026 β go off, ti-aemif, we stan πβ¨
π¦ 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