hl_init_pb_ranges(9)
π
hl_init_pb_ranges (9) β Kernel API Manual, bestie edition π
okay so bestie, welcome to the section 9 page for hl_init_pb_ranges, and no cap this one is a whole moment. it lives in the Kernel API Manual and it does exactly one iconic thing: it sets pb in HW according to the given configuration, unsecuring ranges of registers instead of single specific registers. the way that saves you a million callsβ¦ we love efficiency π
β¨ NAME β¨
hl_init_pb_ranges β set pb in HW according to given configuration, unsecurring registers ranges instead of specific registers π¦
πΈ SYNOPSIS πΈ
int hl_init_pb_ranges (struct hl_device *hdev , u32 num_dcores , u32
dcore_offset , u32 num_instances , u32 instance_offset , const u32
pb_blocks[] , u32 blocks_array_size , const struct range
*user_regs_range_array , u32 user_regs_range_array_size );
lowkey a long signature but she ate, fr fr π
π«Ά ARGUMENTS π«Ά
hdevβ pointer tohl_devicestructure. literally the main character of the whole thing πnum_dcoresβ number of decores to apply configuration to; set toHL_PB_SHAREDif you need to apply only once βdcore_offsetβ offset between dcores πnum_instancesβ number of instances to apply configuration to β¨instance_offsetβ offset between instances π¦pb_blocksβ blocks array πblocks_array_sizeβ blocks array size πuser_regs_range_arrayβ unsecured register range array πuser_regs_range_array_sizeβ unsecured register range array size π«
π₯ SEE ALSO π₯
the kernel file that holds all the lore:
./drivers/accel/habanalabs/common/security.c
and the whole friend group of related calls, all of them 100% worth a look π
hl_get_pb_block(9)hl_unset_pb_in_block(9)hl_unsecure_register(9)hl_unsecure_register_range(9)hl_unsecure_registers(9)hl_unsecure_registers_range(9)hl_ack_pb_security_violations(9)hl_config_glbl_sec(9)hl_secure_block(9)hl_init_pb_with_mask(9)hl_init_pb(9)hl_init_pb_ranges_with_mask(9)hl_init_pb_single_dcore(9)hl_init_pb_ranges_single_dcore(9)hl_ack_pb_with_mask(9)hl_ack_pb(9)hl_ack_pb_single_dcore(9)
bestie reminder: this page is short on warnings and long on vibes, but the options are the options β no invented behaviour here, periodt π
and that's the page!! π§ from ./drivers/accel/habanalabs/common, dated October 2026, in the Kernel API Manual β mwah, go slay those ranges π
ππ
π¦ 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