of_drm_get_..._by_endpoint(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… of_drm_get_..._by_endpoint(9) β€” from the Kernel API Manual, bestie πŸŽ€

okay so picture this: you're deep in the kernel, you've got a device tree node with output ports, and you need the DRM bridge on the other side. that's the whole vibe of this page. welcome 🫢


✨ NAME ✨

of_drm_get_bridge_by_endpoint β€” literally just "gimme the DRM bridge that's connected to this port/endpoint". no cap, that's the whole job πŸ’–


🌸 SYNOPSIS 🌸

struct drm_bridge * of_drm_get_bridge_by_endpoint (const struct
       device_node *np , int port , int endpoint );

look at her go. one function, three lil inputs, returns a bridge pointer. iconic ✨


πŸ¦‹ ARGUMENTS πŸ¦‹

  • np β€” the device tree node that's holding your output ports. she's the main character here πŸ‘‘
  • port β€” the port inside that device tree node. pass -1 and it'll just grab the first port it finds, lowkey convenient πŸ“
  • endpoint β€” the endpoint inside the device tree node. same deal: -1 means "just give me the first endpoint found" πŸ™ˆ

πŸ’œ DESCRIPTION πŸ’œ

so here's the tea β˜• β€” you hand over a DT node's port and endpoint number, and she goes and finds the connected node for you, then returns the associated drm_bridge device. that's it. that's the function. ate and left no crumbs πŸ”₯

heads up though, bestie, this is the important part: the refcount of the returned bridge is incremented. so when you're done with it you gotta call drm_bridge_put. not optional. don't leave her hanging, that's rude 😭

and what do you get back? a pointer to the connected drm_bridge β€” or, if things went sideways, a negative error on failure. no bridge, just bad vibes πŸ’€


πŸ’€ SEE ALSO πŸ’€

the whole extended friend group, fr fr:

  • Kernel file ./drivers/gpu/drm/drm_bridge.c overview(9)
  • display driver integration(9)
  • special care dsi(9)
  • dsi bridge operations(9)
  • bridge chain format selection(9)
  • drm_bridge_enter(9)
  • drm_bridge_exit(9)
  • drm_bridge_unplug(9)
  • drm_bridge_get(9)
  • drm_bridge_put(9)
  • drm_bridge_clear_and_put(9)
  • drm_bridge_put_void(9)
  • drm_bridge_add(9)
  • devm_drm_bridge_add(9)
  • drm_bridge_remove(9)
  • drm_bridge_attach(9)
  • bridge operations(9)
  • drm_bridge_chain_mode_valid(9)
  • drm_bridge_chain_mode_set(9)
  • drm_atomic_bridge_chain_disable(9)
  • drm_atomic_bridge_chain_post_disable(9)
  • drm_atomic_bridge_chain_pre_enable(9)
  • drm_atomic_bridge_chain_enable(9)
  • drm_atomic_bridge_chain_check(9)
  • drm_bridge_detect(9)
  • drm_bridge_get_modes(9)
  • drm_bridge_edid_read(9)
  • drm_bridge_hpd_enable(9)
  • drm_bridge_hpd_disable(9)
  • drm_bridge_hpd_notify(9)
  • of_drm_find_and_get_bridge(9)
  • of_drm_find_bridge(9)
  • devm_drm_put_bridge(9)

like I said. big friend group. iykyk 🌈


and that's the page, bestie 🧚 this lil number lives in ./drivers/gpu/drm, dated October 2026, and it's filed under the super official Kernel API Manual β€” go forth and drm_bridge_put responsibly πŸ’…βœ¨

πŸ“¦ where this page comes from