pch_udc_ep_set_nak(9)
π pch_udc_ep_set_nak(9) π
okay so this is a page straight out of the Kernel API Manual, bestie β pch_udc_ep_set_nak(9) β and it's lowkey one of those tiny functions that just Does One Thing and does it slay. Let me tell you everything, no gatekeeping π«Ά
β¨ NAME β¨
pch_udc_ep_set_nak β sets bit 7 (the SNAK field, iconic name i know) of the endpoint control register π
π¦ SYNOPSIS π¦
void pch_udc_ep_set_nak (struct pch_udc_ep *ep );
that's it. that's the whole signature. void return, one arg, periodt β¨
πΈ ARGUMENTS πΈ
epβ a reference to a structure of typepch_udc_ep_regsπ
okay so heads up bestie, that's exactly what the original says βpch_udc_ep_regsβ even though the param in the synopsis is typedstruct pch_udc_ep *. i'm not gonna "fix" it for you, i'm just handing you the facts as-is, iykyk π
π SEE ALSO π
the whole friend group shows up here, so buckle in β this is the kernel file ./drivers/usb/gadget/udc/pch_udc.c, plus struct pch_udc_data_dma_desc(9), struct pch_udc_stp_dma_desc(9), struct pch_udc_cfg_data(9), struct pch_udc_ep(9), struct pch_vbus_gpio_data(9), struct pch_udc_dev(9), struct pch_udc_request(9), pch_udc_csr_busy(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_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 whole group chat. everyone ate. π₯
and that's the tea, bestie π this cutie lives over in ./drivers/usb/gadget/udc, it's from October 2026, and it's serving Kernel API Manual realness β go set that SNAK bit, you absolute icon πβ¨
π¦ 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