regmap_raw_write(9)
π
regmap_raw_write β a.k.a. the regmap_raw_write(9) glow-up π
okay so bestie, welcome to the Kernel API Manual, and today's main character is regmap_raw_write(9) β she's the one who yeets a whole raw block of bytes straight at your device, no filter, no formatting, no vibe check in between. let's get into it β¨
πΈ NAME πΈ
regmap_raw_write β write raw values to one or more registers. that's it, that's the whole gig π
β¨ SYNOPSIS β¨
int regmap_raw_write (struct regmap *map , unsigned int reg , const void
*val , size_t val_len );
like, yes, that's the whole signature. she's an int, she returns stuff, we'll get to that π«Ά
π ARGUMENTS π
mapβ the register map you're writing into. your canvas. your dance floor. πregβ the initial register you're writing to. like where the party starts. π₯valβ the block of data being written, and ngl this one's important: it's already laid out for direct transmission to the device. no formatting, no cute little makeover, she goes out the door exactly as she came in. πval_lenβ length of the data thatvalis pointing at. the size of the block, bestie, don't get it twisted. π¦
π DESCRIPTION π
okay so the whole point of her: this function is intended to be used for things like firmware download, where a large block of data needs to be transferred to the device. big block, one shot, main character energy π
and hear me when i say: no formatting will be done on the data provided. literally none. zero. she does not touch up your bytes, she does not prep them, she does not add a little garnish πΈ what you hand her is what the device gets, periodt.
a value of zero will be returned on success β¨ β and in the error cases, a negative errno comes back instead π so like, if the number's negative, that's your sign something went sideways, no cap.
π SEE ALSO π
the kernel file lives at ./drivers/base/regmap/regmap.c β and here's the whole friend group, everyone's invited, nobody gets left out π«Ά
devm_regmap_field_alloc(9)regmap_field_bulk_alloc(9)devm_regmap_field_bulk_alloc(9)regmap_field_bulk_free(9)devm_regmap_field_bulk_free(9)devm_regmap_field_free(9)regmap_field_alloc(9)regmap_field_free(9)regmap_reinit_cache(9)regmap_exit(9)dev_get_regmap(9)regmap_get_device(9)regmap_can_raw_write(9)regmap_get_raw_read_max(9)regmap_get_raw_write_max(9)regmap_write(9)regmap_write_async(9)regmap_noinc_write(9)regmap_field_update_bits_base(9)regmap_field_test_bits(9)regmap_fields_update_bits_base(9)regmap_bulk_write(9)regmap_multi_reg_write(9)regmap_multi_reg_write_bypassed(9)regmap_raw_write_async(9)regmap_read(9)regmap_read_bypassed(9)regmap_raw_read(9)regmap_noinc_read(9)regmap_field_read(9)regmap_fields_read(9)regmap_bulk_read(9)regmap_multi_reg_read(9)regmap_update_bits_base(9)regmap_test_bits(9)regmap_async_complete(9)regmap_register_patch(9)regmap_get_val_bytes(9)regmap_get_max_register(9)regmap_get_reg_stride(9)regmap_might_sleep(9)
iykyk π that's a lot of siblings but we love a big family π
friendly reminder bestie: val is transmitted raw, exactly as laid out. if you were hoping for a little formatting help, she's not that girl π
β and that's the page!! sign-off time: this little beauty comes from the source at ./drivers/base/regmap, dated October 2026, and she's filed under regmap_raw_write(9) in the Kernel API Manual. slay, go write some raw bytes, 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