drm_dp_dpcd_read(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

drm_dp_dpcd_read(9) is straight out of the Kernel API Manual, and she does exactly what it says on the tin: read a series of bytes from the DPCD. bestie behavior, honestly.

🌸 SYNOPSIS 🌸

ssize_t drm_dp_dpcd_read (struct drm_dp_aux *aux , unsigned int offset ,
       void *buffer , size_t size );

πŸŽ€ ARGUMENTS πŸŽ€

  • aux β€” the DisplayPort AUX channel (SST or MST). pick your flavor.
  • offset β€” address of the (first) register to read. where we start, iykyk.
  • buffer β€” buffer to store the register values. the little basket for the bytes.
  • size β€” number of bytes in buffer. how many bytes are invited to the party.

πŸ’… DESCRIPTION πŸ’…

Okay so on success, this returns the number of bytes transferred. On failure? A negative error code, obviously.

-EIO is returned if the request was NAKed by the sink or if the retry count was exceeded. If not all bytes were transferred, this function returns -EPROTO. Errors from the underlying AUX channel transfer function are propagated to the caller, with the exception of -EBUSY (which causes the transaction to be retried). no cap, that -EBUSY exception is the plot twist.

lowkey important: in most of the cases you want to use drm_dp_dpcd_read_data instead. slay that other function instead, bestie πŸ’…

🌈 SEE ALSO 🌈

the whole dp helpers friend group, assembled:


slay and goodbye, bestie πŸ’– β€” source/version: ./drivers/gpu/drm/display; date: October 2026 🫢✨

πŸ“¦ where this page comes from