cdns3_ep_onc...ffer_reserve(9)
β¨ cdns3_ep_onchip_buffer_reserve(9) β the kernel API manual π
okay so bestie, welcome to the cdns3_ep_onc...ffer_reserve(9) page from the Kernel API Manual π¦ this one's a little cutie from the USB gadget world and honestly she's giving "gatekeeper of the on-chip buffers" energy π
πΈ NAME πΈ
cdns3_ep_onchip_buffer_reserve β literally just "try to reserve onchip buf for EP" π that's it, that's the whole vibe.
β¨ SYNOPSIS β¨
int cdns3_ep_onchip_buffer_reserve (struct cdns3_device *priv_dev , int
size , int is_in );
three args, one int coming back at you, no cap π₯
π ARGUMENTS π
priv_devβ the extended gadget object π«Ά like, the whole device situationsizeβ the size (KB) for EP would like to allocate π yes KB, keep that in mind bestie, don't come in here thinking bytesis_inβ endpoint direction π which way the data's headed
π DESCRIPTION π
okay so here's the tea β this function is not the one actually doing the reserving. the real reservation will occur during write to EP_CFG register β so this one is basically the vibe check β¨ it's used to check if the size reservation is allowed π
think of her as the bouncer at the club, not the one handing out the drinks girlie π
she's gonna Return 0 if the required size can met or negative value on failure π so yeah, 0 = we slay, negative = we do not slay, check your size again bestie π§
π₯ SEE ALSO π₯
the kernel file lives at ./drivers/usb/cdns3/cdns3-gadget.c π and here's the whole friend group, everybody in the group chat, not a single one left out π:
cdns3_clear_register_bit(9)cdns3_set_register_bit(9)cdns3_ep_addr_to_index(9)cdns3_next_request(9)cdns3_next_align_buf(9)cdns3_next_priv_request(9)cdns3_select_ep(9)cdns3_get_tdl(9)cdns3_allocate_trb_pool(9)cdns3_ep_stall_flush(9)cdns3_hw_reset_eps_config(9)cdns3_ep_inc_trb(9)cdns3_ep_inc_enq(9)cdns3_ep_inc_deq(9)cdns3_allow_enable_l1(9)cdns3_start_all_request(9)cdns3_wa2_descmiss_copy_data(9)cdns3_wa2_descmissing_packet(9)cdns3_gadget_giveback(9)cdns3_ep_run_transfer(9)cdns3_trb_handled(9)cdns3_check_ep_interrupt_proceed(9)cdns3_check_usb_interrupt_proceed(9)cdns3_device_irq_handler(9)cdns3_device_thread_irq_handler(9)cdns3_ep_config(9)cdns3_gadget_ep_alloc_request(9)cdns3_gadget_ep_free_request(9)cdns3_gadget_ep_enable(9)cdns3_gadget_ep_disable(9)__cdns3_gadget_ep_queue(9)cdns3_gadget_ep_dequeue(9)__cdns3_gadget_ep_set_halt(9)__cdns3_gadget_ep_clear_halt(9)cdns3_gadget_ep_set_halt(9)cdns3_gadget_get_frame(9)cdns3_gadget_udc_start(9)cdns3_gadget_udc_stop(9)cdns3_gadget_check_config(9)cdns3_init_eps(9)cdns3_gadget_init(9)
ok real talk before you go π«Ά this page is filed under./drivers/usb/cdns3and it's dated October 2026, and the whole thing is literally calledcdns3_ep_onc...ffer_reserve(9)β yes the title is truncated with..., no that's not a typo, that's just how the manpage renders it π go read the others, ily, bye πβ¨
π¦ 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