host1x_bo_pin(9)
π host1x_bo_pin(9) β a Kernel API Manual moment
okay so bestie, welcome to host1x_bo_pin(9), straight out of the Kernel API Manual β¨ this one's short and sweet, no cap π
β¨ NAME β¨
host1x_bo_pin β literally makes a DMA mapping for the buffer object, that's the whole vibe π¦
πΈ SYNOPSIS πΈ
struct host1x_bo_mapping * host1x_bo_pin (struct device *dev , struct
host1x_bo *bo , enum dma_data_direction dir , struct host1x_bo_cache
*cache );
four args, one struct host1x_bo_mapping * coming back at you, periodt π
π ARGUMENTS π
devβ the device you're DMA-mapping onto, like the destination of the whole operation π«Άboβ the buffer object that's getting mapped, main character energy fr fr πdirβ the DMA direction, that's anenum dma_data_directionsituationcacheβ the cache where the mapping gets storedβ¦ orNULL, your call bestie π
π₯ DESCRIPTION π₯
So what it does: it creates a DMA mapping pointing to bo for dev β¨ and the refcount of bo gets incremented β and it stays bumped until host1x_bo_unpin is called. no early exits, that's the deal π€
and if you pass a cache? the mapping is also stored in the cache, and it is not released until bo is freed (aka refcount drops to zero) π that's the whole reason it slaps: when a buffer is pinned and unpinned over and over, like in the case of display use, it improves performance. literally the glow-up β¨π
ngl the caching part is the icon of this whole function β skip it and you're just doing the plain mapping. still valid, just less slay π
π SEE ALSO π
Kernel file ./drivers/gpu/host1x/bus.c and honestly the whole friend group π«Ά:
host1x_subdev_add(9)host1x_subdev_del(9)host1x_device_parse_dt(9)host1x_device_init(9)host1x_device_exit(9)host1x_register(9)host1x_unregister(9)host1x_driver_register_full(9)host1x_driver_unregister(9)__host1x_client_init(9)host1x_client_exit(9)__host1x_client_register(9)host1x_client_unregister(9)host1x_bo_unpin(9)host1x_bo_clear_cached_mappings(9)
okay that's the page!! π§ this one lives in ./drivers/gpu/host1x, dated October 2026, and it's filed under host1x_bo_pin(9) β go pin some buffers bestie, iykyk πβ
π¦ 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