mirror-linux/include/linux/platform_data
Sen Wang 9db327083f
ASoC: ti: davinci-mcasp: Add asynchronous mode support
McASP has dedicated clock & frame sync registers for both transmit
and receive. Currently McASP driver only supports synchronous behavior and
couples both TX & RX settings.

Add logic that enables asynchronous mode via ti,async-mode property. In
async mode, playback & record can be done simultaneously with different
audio configurations (tdm slots, tdm width, audio bit depth).

Note the ability to have different tx/rx DSP formats (i2s, dsp_a, etc.),
while possible in hardware, remains to be a gap as it require changes
to the corresponding machine driver interface.

Existing IIS (sync mode) and DIT mode logic remains mostly unchanged.
Exceptions are IIS mode logic that previously assumed sync mode, which has
now been made aware of the distinction. And shared logic across all modes
also now checks for McASP tx/rx-specific driver attributes. Those
attributes have been populated according to the original extent, ensuring
no divergence in functionality.

Constraints no longer applicable for async mode are skipped.
Clock selection options have also been added to include rx/tx-only clk_ids,
exposing independent configuration via the machine driver as well.

Note that asynchronous mode is not applicable for McASP in DIT mode,
which is a transmitter-only mode to interface w/ self-clocking formats.

Signed-off-by: Sen Wang <sen@ti.com>
Acked-by: Peter Ujfalusi <peter.ujfalusi@gmail.com>
Tested-by: Paresh Bhagat <p-bhagat@ti.com>
Link: https://patch.msgid.link/20260203003703.2334443-5-sen@ti.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2026-02-04 18:21:52 +00:00
..
gpio
media media: staging: drop omap4iss 2024-10-08 13:43:47 +02:00
txx9
x86 platform/x86: intel_pmc_ipc: fix ACPI buffer memory leak 2025-12-01 11:56:28 +02:00
ad5761.h
ad7266.h
ad7791.h
ad7793.h
ad7887.h
adau17x1.h
adp8860.h
adp8870.h
ads7828.h
amd_qdma.h dmaengine: amd: qdma: Remove using the private get and set dma_ops APIs 2024-12-04 18:27:32 +05:30
amd_xdma.h
ams-delta-fiq.h
apds990x.h
arm-ux500-pm.h
asoc-imx-ssi.h
asoc-kirkwood.h
asoc-pxa.h
asoc-s3c.h ASoC: samsung: Remove obsoleted declaration for s3c64xx_ac97_setup_gpio 2024-09-30 12:47:23 +02:00
asoc-ti-mcbsp.h
ata-pxa.h
atmel.h
b53.h
bcm7038_wdt.h
bd6107.h
bh1770glc.h
brcmfmac.h wifi: brcmfmac: fix copyright year mentioned in platform_data header 2024-01-31 18:48:06 +02:00
brcmnand.h
clk-da8xx-cfgchip.h
clk-fch.h
cpuidle-exynos.h
cros_ec_chardev.h
cros_ec_commands.h platform/chrome: update pwm fan control host commands 2025-09-25 08:08:13 -07:00
cros_ec_proto.h platform/chrome: cros_ec: Add a flag to track registration state 2025-09-14 11:34:41 +08:00
cros_ec_sensorhub.h
cros_usbpd_notify.h
crypto-ux500.h
davinci-cpufreq.h
davinci_asp.h ASoC: ti: davinci-mcasp: Add asynchronous mode support 2026-02-04 18:21:52 +00:00
dma-dw.h
dma-hsu.h
dma-iop32x.h
dma-mcf-edma.h
dma-mv_xor.h
dmtimer-omap.h clocksource/drivers/timer-ti-dm : Capture functionality for OMAP DM timer 2025-09-23 12:32:40 +02:00
ds620.h
dsa.h
edma.h
elm.h
emc2305.h hwmon: (emc2305) Add support for PWM frequency, polarity and output 2025-07-20 16:38:34 -07:00
emif_plat.h
g762.h
gpio-htc-egpio.h
gpio-omap.h OMAP/gpio: drop MPUIO static base 2023-10-04 11:37:25 +02:00
gpio_backlight.h
gpmc-omap.h
gsc_hwmon.h hwmon: Annotate struct gsc_hwmon_platform_data with __counted_by 2023-10-08 22:46:04 -07:00
hirschmann-hellcreek.h net: dsa: use capital "OR" for multiple licenses in SPDX 2023-08-24 12:02:53 -07:00
hsmmc-omap.h
huawei-gaokun-ec.h platform: arm64: add Huawei Matebook E Go EC driver 2025-03-03 10:55:36 +02:00
hwmon-s3c.h ARM: samsung: Remove obsoleted declaration for s3c_hwmon_set_platdata 2024-09-30 12:47:11 +02:00
i2c-gpio.h
i2c-imx.h
i2c-mux-gpio.h i2c: mux: gpio: Add support for the 'settle-time-us' property 2024-07-20 03:07:55 +02:00
i2c-mux-reg.h i2c: mux: reg: Remove class-based device auto-detection support 2024-01-18 21:10:43 +01:00
i2c-ocores.h
i2c-omap.h
i2c-pca-platform.h
i2c-pxa.h
i2c-s3c2410.h
i2c-xiic.h
ina2xx.h
invensense_mpu6050.h
iommu-omap.h
isl9305.h
itco_wdt.h
keypad-omap.h Input: omap-keypad - drop optional GPIO support 2023-12-13 21:26:13 -08:00
lcd-mipid.h
leds-lm355x.h
leds-lm3642.h
leds-lp55xx.h
lenovo-yoga-c630.h platform: arm64: add Lenovo Yoga C630 WOS EC driver 2024-06-14 12:51:30 +03:00
lm3630a_bl.h
lm3639_bl.h
lm8323.h
lp855x.h backlight: lp855x: Fix lp855x.h kernel-doc warnings 2025-11-25 12:54:32 +00:00
lp8727.h
lp8755.h
ltc4245.h
lv5207lp.h
max197.h
max732x.h
max3421-hcd.h
mdio-bcm-unimac.h net: mdio: mdio-bcm-unimac: Manage clock around I/O accesses 2024-02-21 12:46:17 +00:00
mdio-gpio.h
mfd-mcp-sa11x0.h
microchip-ksz.h net: dsa: microchip: Add KSZ8463 switch support to KSZ DSA driver 2025-07-25 17:01:56 -07:00
mlxcpld.h
mlxreg.h platform/mellanox: Rename field to improve code readability 2025-04-15 17:14:30 +03:00
mmc-davinci.h
mmc-esdhc-mcf.h
mmc-mxcmmc.h
mmc-omap.h
mmc-pxamci.h ARM: spitz: Use software nodes to describe MMC GPIOs 2024-07-09 15:21:15 +02:00
mmc-sdhci-s3c.h
mmp_dma.h
mtd-nand-omap2.h
mtd-nand-pxa3xx.h
mtd-orion_nand.h
mv88e6xxx.h
mv_usb.h
net-cw1200.h wifi: cw1200: Convert to GPIO descriptors 2024-02-05 20:17:10 +02:00
omap-twl4030.h ASoC: ti: Convert TWL4030 to use GPIO descriptors 2023-10-02 14:06:20 +01:00
omap-wd-timer.h
omap1_bl.h backlight: omap1: Remove unused struct omap_backlight_config.set_power 2024-03-28 10:12:49 +00:00
omapdss.h
pca953x.h gpio: pca953x: Drop unused fields in struct pca953x_platform_data 2023-09-11 08:59:57 +02:00
phy-da8xx-usb.h
pinctrl-single.h
pm33xx.h
pxa2xx_udc.h
pxa_sdhci.h
regulator-haptic.h
s3c-hsotg.h
sa11x0-serial.h serial: clean up uart_info 2024-10-11 08:14:32 +02:00
sc18is602.h
sdhci-pic32.h
serial-omap.h
serial-sccnxp.h
sgi-w1.h
sh_mmcif.h
shmob_drm.h drm: renesas: shmobile: Use media bus formats in platform data 2023-10-16 11:47:46 +02:00
shtc1.h
si5351.h clk: si5351: allow PLLs to be adjusted without reset 2023-12-17 22:31:36 -08:00
simplefb.h
spi-mt65xx.h
spi-omap2-mcspi.h spi: spi-omap2-mcspi.c: revert "Toggle CS after each word" 2024-03-28 15:52:31 +00:00
spi-s3c64xx.h
st_sensors_pdata.h
tda9950.h
ti-prm.h
ti-sysc.h bus: ti-sysc: Drop legacy idle quirk handling 2024-04-25 07:29:41 +03:00
tmio.h mmc: tmio: Add 64-bit read/write support for SD_BUF0 in polling mode 2025-08-19 14:34:14 +02:00
tps68470.h
tsc2007.h
tsl2772.h
uio_dmem_genirq.h
usb-ehci-orion.h
usb-musb-ux500.h
usb-ohci-pxa27x.h
usb-ohci-s3c2410.h
usb-omap.h
usb-omap1.h
usb3503.h
video-ep93xx.h
video-pxafb.h fbdev/pxafb: Unexport symbol 2025-06-16 09:08:05 +02:00
video_s3c.h
voltage-omap.h
wilco-ec.h
wiznet.h
wkup_m3.h
xilinx-ll-temac.h
xtalk-bridge.h