PVR_FEATURE_VALUE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… PVR_FEATURE_VALUE(9) β€” the Kernel API Manual page your bestie needed

okay so this is PVR_FEATURE_VALUE, a macro from the Kernel API Manual, and it's genuinely so straightforward you're gonna slay this πŸ’–


✨ NAME ✨

PVR_FEATURE_VALUE β€” gets a PowerVR device feature value. that's it. that's the whole job. iconic behavior honestly πŸŽ€


🌸 SYNOPSIS 🌸

PVR_FEATURE_VALUE (pvr_dev , feature , value_out );

not me just vibing with a three-argument macro, no cap πŸ¦‹


🧚 ARGUMENTS 🧚

  • pvr_dev [IN] β€” the target PowerVR device. like, the device you're asking about. your main character device πŸ‘‘
  • feature [IN] β€” the feature name. which feature are we checking, bestie? πŸ“
  • value_out [OUT] β€” the feature value. this is where the answer lands ✨

πŸ’œ DESCRIPTION πŸ’œ

so this macro gets a feature value, for those features that have values β€” because not all of them do, and that's fine, we don't judge πŸ’…

big caveat, listen up: if the feature is not present, nothing will be stored to value_out. literally nothing. so don't go assuming it got filled in, okay? πŸ™ˆ

and where do the feature names come from? they're derived from those found in struct pvr_device_features by dropping the 'has_' prefix. so the prefix gets dropped and the rest stays. no renaming, no remixing, just the drop πŸŽ€


πŸ”₯ RETURN πŸ”₯

  • 0 on success, or
  • -EINVAL if the named feature is not present in the hardware 😭

two outcomes, both valid, one of them just means "nah, not here" πŸ’€


🌈 SEE ALSO 🌈

kernel file ./drivers/gpu/drm/imagination/pvr_device.h struct pvr_gpu_id(9), struct pvr_fw_version(9), struct pvr_device_data(9), struct pvr_device(9), struct pvr_file(9), PVR_HAS_FEATURE(9), PVR_HAS_QUIRK(9), PVR_HAS_ENHANCEMENT(9), PVR_PACKED_BVNC(9), pvr_gpu_id_to_packed_bvnc(9), PVR_CR_FIELD_GET(9), pvr_cr_read32(9), pvr_cr_read64(9), pvr_cr_write32(9), pvr_cr_write64(9), pvr_cr_poll_reg32(9), pvr_cr_poll_reg64(9), pvr_round_up_to_cacheline_size(9), IOCTL validation helpers(9), pvr_ioctl_union_padding_check(9), PVR_STATIC_ASSERT_64BIT_ALIGNED(9), PVR_IOCTL_UNION_PADDING_CHECK(9)

like, the whole friend group fr fr 🫢


anyway bestie, that's the page πŸ’… this gem lives over in ./drivers/gpu/drm/imagination, and the version/date on this one is October 2026 β€” so mark your calendar, mwah πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from