of_get_ddr_timings(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… of_get_ddr_timings(9) ✨

okay so bestie, welcome to the Kernel API Manual πŸŽ€ and honestly? this one's kind of a little data-gremlin and we're gonna love her anyway. of_get_ddr_timings is out here doing the absolute most: it pulls the ddr timings straight out of the device tree and then updates the number of frequencies available. lowkey iconic behavior 🌸


✨ NAME ✨

of_get_ddr_timings β€” extracts the ddr timings and updates no of frequencies available πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

const struct lpddr2_timings * of_get_ddr_timings (struct device_node
*np_ddr , struct device *dev , u32 device_type , u32 *nr_frequencies );

like, copy that exactly please, i am begging πŸ™


🌸 ARGUMENTS 🌸

  • np_ddr β€” Pointer to ddr device tree node 🌳 (yes, the actual node, she needs the real one)
  • dev β€” Device requesting for ddr timings πŸ‘‘ the main character making the ask
  • device_type β€” Type of ddr (LPDDR2 S2/S4) πŸ’… know your type before you walk in
  • nr_frequencies β€” No of frequencies available for ddr (updated by this function) πŸ”₯ heads up: this function is the one updating it, it's an out-param bestie, she writes back to it

πŸ’œ DESCRIPTION πŸ’œ

So what she does is: Populates lpddr2_timings structure by extracting data from device tree node. 🧚 Returns pointer to populated structure. and if literally anything goes sideways while populating? If any error while populating, returns default timings provided by JEDEC. πŸ’€ no cap, that's the fallback β€” JEDEC's defaults got your back so hard.

ngl the fallback is genuinely a slay, because "error while populating" still gets you something instead of a void 🫢

🌈 SEE ALSO 🌈

go read those too, they're all part of the same friend group iykyk πŸ’…


and that's the whole vibe check bestie πŸ¦‹ this little page came straight out of ./drivers/memory and it's dated October 2026 β€” so yeah, technically from the future, which is so her 🌟 mwah, study hard, drink water, and may all your timings populate on the first try πŸ’–πŸŽ€πŸ‘‘

πŸ“¦ where this page comes from