pch_udc_csr_busy(9)
β¨ pch_udc_csr_busy(9) β¨
okay so bestie, welcome to the Kernel API Manual entry for pch_udc_csr_busy β yes it's a whole function, yes it's from the kernel, and yes we're gonna get through it together π«Ά
π NAME π
pch_udc_csr_busy β Wait till idle.
That's the whole vibe. You wait. Until it's idle. Iconic, honestly β¨
π¦ SYNOPSIS π¦
void pch_udc_csr_busy (struct pch_udc_dev *dev );
literally that's it. no return value (void, she gives nothing back and that's her right π
), one argument, go.
π ARGUMENTS π
devβ Reference topch_udc_devstructure. that's your pointer to thepch_udc_devstruct, the main character of this whole file π«Ά
πΈ SEE ALSO πΈ
okay this part is a LOT, so buckle up β the kernel doc pulled in the entire friend group π
- Kernel file
./drivers/usb/gadget/udc/pch_udc.cstructpch_udc_data_dma_desc(9), structpch_udc_stp_dma_desc(9), structpch_udc_cfg_data(9), structpch_udc_ep(9), structpch_vbus_gpio_data(9), structpch_udc_dev(9), structpch_udc_request(9),pch_udc_write_csr(9),pch_udc_read_csr(9),pch_udc_rmt_wakeup(9),pch_udc_get_frame(9),pch_udc_clear_selfpowered(9),pch_udc_set_selfpowered(9),pch_udc_set_disconnect(9),pch_udc_clear_disconnect(9),pch_udc_reconnect(9),pch_udc_vbus_session(9),pch_udc_ep_set_stall(9),pch_udc_ep_clear_stall(9),pch_udc_ep_set_trfr_type(9),pch_udc_ep_set_bufsz(9),pch_udc_ep_set_maxpkt(9),pch_udc_ep_set_subptr(9),pch_udc_ep_set_ddptr(9),pch_udc_ep_set_pd(9),pch_udc_ep_set_rrdy(9),pch_udc_ep_clear_rrdy(9),pch_udc_set_dma(9),pch_udc_clear_dma(9),pch_udc_set_csr_done(9) pch_udc_disable_interrupts(9),pch_udc_enable_interrupts(9),pch_udc_disable_ep_interrupts(9),pch_udc_enable_ep_interrupts(9),pch_udc_read_device_interrupts(9),pch_udc_write_device_interrupts(9),pch_udc_read_ep_interrupts(9),pch_udc_write_ep_interrupts(9),pch_udc_read_device_status(9),pch_udc_read_ep_control(9),pch_udc_clear_ep_control(9),pch_udc_read_ep_status(9),pch_udc_clear_ep_status(9),pch_udc_ep_set_nak(9),pch_udc_ep_clear_nak(9),pch_udc_ep_fifo_flush(9),pch_udc_ep_enable(9),pch_udc_ep_disable(9),pch_udc_wait_ep_stall(9),pch_udc_init(9),pch_udc_exit(9)pch_udc_pcd_get_frame(9),pch_udc_pcd_wakeup(9),pch_udc_pcd_selfpowered(9),pch_udc_pcd_pullup(9),pch_udc_pcd_vbus_session(9),pch_udc_pcd_vbus_draw(9),pch_vbus_gpio_get_value(9),pch_vbus_gpio_work_fall(9),pch_vbus_gpio_work_rise(9),pch_vbus_gpio_irq(9),pch_vbus_gpio_init(9),pch_vbus_gpio_free(9),complete_req(9),empty_req_queue(9),pch_udc_free_dma_chain(9),pch_udc_create_dma_chain(9),prepare_dma(9),process_zlp(9),pch_udc_start_rxrequest(9)pch_udc_pcd_ep_enable(9),pch_udc_pcd_ep_disable(9),pch_udc_alloc_request(9),pch_udc_free_request(9),pch_udc_pcd_queue(9),pch_udc_pcd_dequeue(9),pch_udc_pcd_set_halt(9),pch_udc_pcd_set_wedge(9),pch_udc_pcd_fifo_flush(9),pch_udc_init_setup_buff(9),pch_udc_start_next_txrequest(9),pch_udc_complete_transfer(9),pch_udc_complete_receiver(9)pch_udc_svc_data_in(9),pch_udc_svc_data_out(9),pch_udc_svc_control_in(9),pch_udc_svc_control_out(9),pch_udc_postsvc_epinters(9),pch_udc_read_all_epstatus(9),pch_udc_activate_control_ep(9),pch_udc_svc_ur_interrupt(9),pch_udc_svc_enum_interrupt(9),pch_udc_svc_intf_interrupt(9),pch_udc_svc_cfg_interrupt(9),pch_udc_dev_isr(9),pch_udc_isr(9),pch_udc_setup_ep0(9),pch_udc_pcd_reinit(9),pch_udc_pcd_init(9),init_dma_pools(9)
like I said. the entire friend group π but tbh every single one of them is linked above, no cap β go click around, iykyk π₯
lowkey reminder bestie: this page is short for a reason.pch_udc_csr_busywaits till idle, takes yourdev, and dips. no return value, no drama, main character energy only π
and that's the whole page! brought to you by the Kernel API Manual, living out of ./drivers/usb/gadget/udc, dated October 2026 β mwah, go read the source, love u, 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