vme_slave_get(9)
π vme_slave_get(9) β from the Kernel API Manual, bestie
okay so picture this: you're deep in vme_slave_get(9) land, and the whole thing lives in the Kernel API Manual. she's giving kernel-doc royalty, ngl. let's get into it π
β¨ NAME β¨
vme_slave_get β literally just retrieves your VME slave window configuration. that's the whole vibe. π
πΈ SYNOPSIS πΈ
int vme_slave_get (struct vme_resource *resource , int *enabled ,
unsigned long long *vme_base , unsigned long long *size , dma_addr_t
*buf_base , u32 *aspace , u32 *cycle );
like yes, that's a lot of pointers. she's high-maintenance but she's worth it π«Ά
π¦ ARGUMENTS π¦
resourceβ pointer to your VME slave resource. the main character of this whole function, honestly πenabledβ pointer to a variable where the state gets stored. so you can find out if it's on or off, iykykvme_baseβ pointer to a variable for storing the window base address. where the party starts πsizeβ pointer to a variable for storing the window size. yes queen, we need to know how much room we're working withbuf_baseβ pointer to a variable for storing the slave buffer base address. the buffer's home address fr fr πaspaceβ pointer to a variable for storing the VME address space. spaces matter, periodtcycleβ pointer to a variable for storing the VME data transfer cycle type. the whole cycle situation π
β DESCRIPTION β
so what does she actually do? she returns the configuration for the provided VME slave window. that's it! that's the function. iconic, low-key minimalist behavior. β¨
π RETURN π
Zeroon success β we love a zero, no notes, ate π-EINVALif the operation is not supported on this device, or if you handed her an invalid resource. like bestie, check your pointers before you come at her π
ngl, -EINVAL is doing double duty here: unsupported device or bad resource. two crimes, one error code.
π SEE ALSO π
Kernel file ./drivers/staging/vme_user/vme.c β and the whole extended family, because VME is a family function set and you're gonna meet all of them:
vme_alloc_consistent(9), vme_free_consistent(9), vme_get_size(9), vme_slave_request(9), vme_slave_set(9), vme_slave_free(9), vme_master_request(9), vme_master_set(9), vme_master_get(9), vme_master_read(9), vme_master_write(9), vme_master_rmw(9), vme_master_mmap_prepare(9), vme_master_free(9), vme_dma_request(9), vme_new_dma_list(9), vme_dma_pattern_attribute(9), vme_dma_pci_attribute(9), vme_dma_vme_attribute(9), vme_dma_free_attribute(9), vme_dma_list_add(9), vme_dma_list_exec(9), vme_dma_list_free(9), vme_dma_free(9), vme_irq_request(9), vme_irq_free(9), vme_irq_generate(9), vme_lm_request(9), vme_lm_count(9), vme_lm_set(9), vme_lm_get(9), vme_lm_attach(9), vme_lm_detach(9), vme_lm_free(9), vme_slot_num(9), vme_bus_num(9), vme_register_driver(9), vme_unregister_driver(9)
like I said. a whole family. go read them, bestie, you'll be obsessed π§π«
that's the page!! this one ships out of ./drivers/staging/vme_user, dated October 2026, and it's filed under vme_slave_get(9) in the Kernel API Manual πβ¨ mwah, go get that configuration π
π¦ 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