hl_unsecure_registers_range(9)
π¦ NAME π¦
hl_unsecure_registers_range(9) β your Kernel API Manual bestie with one very specific job: locate the relevant block for all register ranges and remove corresponding protection bit. No cap, that's the whole vibe. π
β¨ SYNOPSIS β¨
int hl_unsecure_registers_range (struct hl_device *hdev , const struct
range mm_reg_range_array[] , int mm_array_size , int offset , const u32
pb_blocks[] , struct hl_block_glbl_sec sgs_array[] , int
blocks_array_size );
π ARGUMENTS π
hdevβ pointer tohl_devicestructure. Like, the device context bestie.mm_reg_range_arrayβ register address range array to unsecure. That's the target, periodt.mm_array_sizeβ register array size. Gotta know the size, obviously.offsetβ additional offset to the register address. A little shift, big mood.pb_blocksβ blocks array.sgs_arrayβ pb array.blocks_array_sizeβ blocks array size.
π SEE ALSO π
- Kernel file:
./drivers/accel/habanalabs/common/security.c 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_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_ranges(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)
That's the whole page, bestie π«Ά β source/version vibes are from ./drivers/accel/habanalabs/common, dated October 2026, and the page tag is hl_unsecure_registers_range(9). Byeee π
π¦ 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