STRUCT PL08X_PLATFORM_DATA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

struct pl08x_platform_data(9)

okay bestie, this page is from the Kernel API Manual and it's literally the platform configuration blueprint for the PL08x PrimeCells πŸ’… no cap.


🌸 NAME 🌸

struct pl08x_platform_data β€” the platform configuration for the PL08x PrimeCells.


✨ SYNOPSIS ✨

Here's the struct exactly as it appears, character for character, zero edits:

       struct pl08x_platform_data {
           struct pl08x_channel_data *slave_channels;
           unsigned int num_slave_channels;
           enum pl08x_burst_size memcpy_burst_size;
           enum pl08x_bus_width memcpy_bus_width;
           bool memcpy_prot_buff;
           bool memcpy_prot_cache;
           int (*get_xfer_signal)(const struct pl08x_channel_data *);
           void (*put_xfer_signal)(const struct pl08x_channel_data *, int);
           u8 lli_buses;
           u8 mem_buses;
           const struct dma_slave_map *slave_map;
           int slave_map_len;
        };

🫢 Members 🫢

  • slave_channels β€” the channels defined for the different devices on the platform, all inclusive, including multiplexed channels. The available physical channels will be multiplexed around these signals as they are requested, just enumerate all possible channels. iconic behavior, honestly ✨
  • num_slave_channels β€” number of elements in the slave channel array.
  • memcpy_burst_size β€” the appropriate burst size for memcpy operations.
  • memcpy_bus_width β€” memory bus width.
  • memcpy_prot_buff β€” whether memcpy DMA is bufferable.
  • memcpy_prot_cache β€” whether memcpy DMA is cacheable.
  • get_xfer_signal β€” request a physical signal to be used for a DMA transfer immediately: if there is some multiplexing or similar blocking the use of the channel the transfer can be denied by returning less than zero, else it returns the allocated signal number. the drama of it all πŸ’œ
  • put_xfer_signal β€” indicate to the platform that this physical signal is not running any DMA transfer and multiplexing can be recycled.
  • lli_buses β€” buses which LLIs can be fetched from: PL08X_AHB1 | PL08X_AHB2.
  • mem_buses β€” buses which memory can be accessed from: PL08X_AHB1 | PL08X_AHB2.
  • slave_map β€” DMA slave matching table.
  • slave_map_len β€” number of elements in slave_map.

πŸ”Ž SEE ALSO πŸ”Ž

  • Kernel file ./include/linux/amba/pl08x.h
  • struct pl08x_channel_data(9)

mwah πŸ’‹ this page came from source/version ./include/linux/amba, dated October 2026, and it's all wrapped up as struct pl08x_platform_data(9) β€” slay, you're welcome, bestie 🫢✨

πŸ“¦ where this page comes from