linux-uconsole/include/linux/platform_data
Peter Ujfalusi 1be5336bc7 dmaengine: edma: New device tree binding
With the old binding and driver architecture we had many issues:
No way to assign eDMA channels to event queues, thus not able to tune the
system by moving specific DMA channels to low/high priority servicing. We
moved the cyclic channels to high priority within the code, but that was
just a workaround to this issue.
Memcopy was fundamentally broken: even if the driver scanned the DT/devices
in the booted system for direct DMA users (which is not effective when the
events are going through a crossbar) and created a map of 'used' channels,
this information was not really usable. Since via dmaengien API the eDMA
driver will be called with _some_ channel number, we would try to request
this channel when any channel is requested for memcpy. By luck we got
channel which is not used by any device most of the time so things worked,
but if a device would have been using the given channel, but not requested
it, the memcpy channel would have been waiting for HW event.
The old code had the am33xx/am43xx DMA event router handling embedded. This
should have been done in a separate driver since it is not part of the
actual eDMA IP.
There were no way to 'lock' PaRAM slots to be used by the DSP for example
when booting with DT.
In DT boot the edma node used more than one hwmod which is not a good
practice and the kernel prints warning because of this.

With the new bindings and the changes in the driver we can:
- No regression with Legacy binding and non DT boot
- DMA channels can be assigned to any TC (to set priority)
- PaRAM slots can be reserved for other cores to use
- Dynamic power management for CC and TCs, if only TC0 is used all other TC
  can be powered down for example

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
2015-10-27 10:22:45 +09:00
..
ad5449.h
ad5755.h
ad7266.h
ad7291.h staging:iio:ad7291: Move out of staging 2014-07-08 21:17:30 +01:00
ad7298.h
ad7303.h
ad7791.h
ad7793.h
ad7887.h
adau17x1.h ASoC: Add ADAU1381/ADAU1781 audio CODEC support 2014-05-27 20:54:51 +01:00
adau1977.h ASoC: Add ADAU1977 CODEC driver 2014-02-19 13:36:15 +09:00
ads7828.h
arm-ux500-pm.h
asoc-imx-ssi.h
asoc-kirkwood.h
asoc-mx27vis.h
asoc-palm27x.h
asoc-s3c.h ASoC: Samsung: Add quirk for internal DMA 2014-11-07 10:38:17 +00:00
asoc-s3c24xx_simtec.h ASoC: s3c24xx: Remove invalid file reference 2014-02-25 21:29:31 +09:00
asoc-ti-mcbsp.h ASoC: mcbsp: Trivial cleanup in asoc-ti-mcbsp.h 2013-12-30 11:50:16 +00:00
asoc-ux500-msp.h ARM: ux500: Don't use enums for MSP IDs - for easy DT conversion 2014-01-07 15:36:09 +00:00
at24.h
at91_adc.h iio: adc: at91_adc: Add support for touchscreens without TSMR 2014-05-07 18:28:40 +02:00
ata-pxa.h
ata-samsung_cf.h ata: pata_samsung_cf: removes s5pc100 related ata codes 2014-06-30 10:48:08 -04:00
atmel.h USB: host: ohci-at91: move at91_usbh_data definition in c file 2015-08-14 16:57:43 -07:00
atmel_mxt_ts.h Input: atmel_mxt_ts - use deep sleep mode when stopped 2015-08-04 17:03:52 -07:00
bcmgenet.h net: bcmgenet: enable driver to work without a device tree 2014-12-08 20:26:59 -05:00
bd6107.h
bfin_rotary.h Input: bfin_rotary - move pin lists into into platform data 2015-02-15 16:06:27 -08:00
brcmfmac-sdio.h
bt-nokia-h4p.h staging/bluetooth: Add hci_h4p driver 2014-02-07 10:13:53 -08:00
camera-mx2.h
camera-mx3.h
camera-pxa.h
camera-rcar.h
clk-integrator.h ARM: integrator: switch to fetch clocks from device tree 2014-02-13 11:20:42 +01:00
clk-lpss.h
clk-realview.h
clk-u300.h
clk-ux500.h clk/ARM: move Ux500 PRCC bases to the device tree 2015-08-24 16:49:14 -07:00
coda.h
cpuidle-exynos.h cpuidle: exynos: add coupled cpuidle support for exynos4210 2015-01-30 08:39:15 +09:00
crypto-atmel.h
crypto-ux500.h
cyttsp4.h
davinci_asp.h ASoC: davinci-mcasp: Rename platform data struct 2014-02-03 18:26:59 +00:00
db8500_thermal.h
dma-atmel.h
dma-coh901318.h
dma-dw.h dmaengine: dw: define DW_DMA_MAX_NR_MASTERS 2015-02-04 22:39:44 -08:00
dma-ep93xx.h
dma-hsu.h dmaengine: append hsu DMA driver 2015-03-07 03:23:02 +01:00
dma-imx-sdma.h dmaengine: imx-sdma: Add support for version 3 firmware 2015-03-18 13:53:33 +05:30
dma-imx.h dmaengine: imx-sdma: Add a new DMATYPE for SAI 2014-11-17 13:50:43 +05:30
dma-mmp_tdma.h dma: mmp_tdma: Fix build for ARM64 2015-02-03 17:47:35 -08:00
dma-mv_xor.h dma: mv_xor: Cleanup in dma-mv_xor.h header 2014-01-13 13:30:31 +05:30
dma-rcar-hpbdma.h
dma-s3c24xx.h ARM: S3C24XX: add dma pdata for s3c2410, s3c2440 and s3c2442 2013-10-21 05:32:48 +09:00
dma-ste-dma40.h
dmtimer-omap.h
drv260x-pdata.h Input: drv260x - add TI drv260x haptics driver 2014-08-19 22:19:28 -07:00
dwc3-omap.h
edma.h dmaengine: edma: New device tree binding 2015-10-27 10:22:45 +09:00
efm32-spi.h
efm32-uart.h
ehci-sh.h
elm.h nand: omap2: Remove horrible ifdefs to fix module probe 2014-09-22 11:37:51 -07:00
emif_plat.h
eth-netx.h net: Cleanup in eth-netx.h 2014-01-02 03:30:35 -05:00
fsa9480.h
g762.h
gpio-ath79.h MIPS: ath79: Add OF support to the GPIO driver 2015-06-21 21:54:09 +02:00
gpio-davinci.h gpio: remove obsolete tnetv107x driver 2014-03-05 10:44:44 +08:00
gpio-dwapb.h GPIO: gpio-dwapb: Enable platform driver binding to MFD driver 2014-09-23 17:51:37 +02:00
gpio-lpc32xx.h ARM: lpc32xx: move custom GPIO header 2013-12-03 11:26:06 +01:00
gpio-omap.h gpio: omap: Allow building as a loadable module 2015-05-06 15:23:03 +02:00
gpio-rcar.h
gpio-ts5500.h
gpio_backlight.h
hsmmc-omap.h ARM: OMAP2: HSMMC: explicit fields to declare cover/card detect pin 2015-03-27 12:19:37 +01:00
hwmon-s3c.h hwmon: (s3c) Trivial cleanup in hwmon-s3c.h 2014-01-14 21:36:52 -08:00
i2c-cbus-gpio.h
i2c-davinci.h i2c: davinci: use ICPFUNC to toggle I2C as gpio for bus recovery 2015-04-10 17:57:28 +02:00
i2c-designware.h i2c: designware: add support of platform data to set I2C mode 2014-09-29 22:41:17 +02:00
i2c-imx.h
i2c-mux-reg.h i2c: mux: Add register-based mux i2c-mux-reg 2015-08-24 14:05:18 +02:00
i2c-nuc900.h
i2c-s3c2410.h i2c: s3c2410: Trivial cleanup in header file 2014-03-10 17:32:28 +01:00
ina2xx.h
intel-mid_wdt.h watchdog: add Intel MID watchdog driver support 2014-06-10 21:48:16 +02:00
invensense_mpu6050.h
iommu-omap.h iommu/omap: Remove platform data da_start and da_end fields 2014-07-29 12:39:56 +02:00
irda-pxaficp.h
irda-sa11x0.h arm: sa1100: move irda header to linux/platform_data 2014-12-30 18:44:07 -05:00
irq-renesas-intc-irqpin.h
isl9305.h regulator: isl9305: Add Intersil ISL9305/H driver 2014-09-06 12:43:05 +01:00
itco_wdt.h mfd: watchdog: iTCO_wdt: Expose watchdog properties using platform data 2015-08-11 15:03:21 +01:00
keyboard-pxa930_rotary.h
keyboard-spear.h Input: update email-id of Rajeev Kumar 2015-05-22 10:59:55 -07:00
keypad-ep93xx.h Input: keypad-ep93xx - cleanup header file 2013-12-27 17:20:21 -08:00
keypad-nomadik-ske.h
keypad-omap.h Input: keypad-omap - cleanup header file 2013-12-27 17:20:22 -08:00
keypad-pxa27x.h
keypad-w90p910.h
keyscan-davinci.h
lcd-mipid.h
leds-kirkwood-netxbig.h leds: kirkwood: Cleanup in header files 2014-01-27 17:28:51 -08:00
leds-kirkwood-ns2.h leds: leds-ns2: move LED modes mapping outside of the driver 2015-08-28 14:06:06 +02:00
leds-lm355x.h
leds-lm3642.h
leds-lp55xx.h leds: lp55xx: handle enable pin in driver 2013-10-25 10:13:25 -07:00
leds-omap.h
leds-pca963x.h
leds-s3c24xx.h leds: leds-s3c24xx: Trivial cleanup in header file 2014-02-27 09:57:11 -08:00
lm3630a_bl.h backlight: lm3630: apply chip revision 2013-11-13 12:09:15 +09:00
lm3639_bl.h
lp855x.h backlight: lp855x: Use private data for regulator control 2015-08-25 08:40:44 +01:00
lp8727.h
lp8755.h
lv5207lp.h
macb.h net/macb: convert to kernel doc 2015-07-27 01:10:29 -07:00
mailbox-omap.h
max197.h hwmon: (max197) add include guard 2014-01-14 21:36:53 -08:00
max3421-hcd.h usb: host: max3421-hcd: Allow platform-data to specify Vbus polarity 2014-05-29 11:19:30 -07:00
max6697.h
mfd-mcp-sa11x0.h mfd: Cleanup mfd-mcp-sa11x0.h header 2014-01-21 08:28:59 +00:00
microread.h
mmc-atmel-mci.h mmc: atmel-mci: move mach header to platform_data 2014-11-10 12:40:37 +01:00
mmc-davinci.h
mmc-esdhc-imx.h mmc: sdhci-esdhc-imx: add tuning-step setting support 2015-08-27 14:50:50 +02:00
mmc-mvsdio.h mmc: mvsdio: Cleanup mmc-mvsdio.h header 2014-02-25 15:43:23 -05:00
mmc-mxcmmc.h
mmc-omap.h mmc: omap_hsmmc: remove prepare/complete system suspend support. 2015-01-19 09:56:08 +01:00
mmc-pxamci.h
mmc-s3cmci.h
mmc-sdhci-s3c.h
mmp_audio.h
mmp_dma.h
mouse-pxa930_trkball.h
mtd-davinci-aemif.h ARM: davinci: aemif: get rid of davinci-nand driver dependency on aemif 2014-02-23 20:33:18 +05:30
mtd-davinci.h
mtd-mxc_nand.h
mtd-nand-omap2.h nand: omap2: Add support for flash-based bad block table 2014-09-17 01:02:48 -07:00
mtd-nand-pxa3xx.h mtd: nand: pxa3xx: Use ECC strength and step size devicetree binding 2014-05-21 12:55:09 -07:00
mtd-nand-s3c2410.h mtd: nand: s3c2410: Trivial cleanup in header file 2014-03-10 22:42:26 -07:00
mtd-onenand-omap2.h mtd: omap2: Cleanup header files 2014-01-11 11:39:18 -08:00
mtd-orion_nand.h mtd: orion: Cleanup mtd-orion_nand.h header 2014-01-11 11:39:23 -08:00
mv_usb.h
net-cw1200.h
nfcmrvl.h NFC: nfcmrvl: add UART driver 2015-06-11 23:41:57 +02:00
ntc_thermistor.h hwmon: (ntc_thermistor) Add support for ncpXXwf104 2015-05-31 22:58:36 -07:00
nxp-nci.h NFC: nxp-nci: Add support for NXP NCI chips 2015-03-26 11:07:50 +01:00
omap-twl4030.h
omap-wd-timer.h
omap1_bl.h
omap_drm.h
pca953x.h
pcmcia-pxa2xx_viper.h
pinctrl-adi2.h
pinctrl-single.h
pixcir_i2c_ts.h Input: pixcir_i2c_ts - switch the device over to gpiod 2015-07-11 17:28:08 -07:00
pn544.h nfc: Fix FSF address in file headers 2013-12-11 10:56:21 -05:00
pxa2xx_udc.h
pxa_sdhci.h mmc: sdhci-pxav3: Move private driver data to driver source 2014-11-10 12:40:31 +01:00
regulator-haptic.h Input: add regulator haptic driver 2014-12-21 18:59:20 -08:00
remoteproc-omap.h
s3c-hsotg.h
s3c-hsudc.h
sa11x0-serial.h
sc18is602.h
serial-imx.h serial: imx: drop support for IRDA 2015-03-07 03:26:32 +01:00
serial-omap.h ARM: OMAP: serial: remove last vestige of DTR_gpio support. 2014-11-10 09:06:44 -08:00
serial-sccnxp.h
sh_ipmmu.h
shmob_drm.h
sht15.h hwmon: (sht15) add include guard 2014-01-14 21:36:53 -08:00
shtc1.h hwmon: add support for Sensirion SHTC1 sensor 2014-06-12 08:36:48 -07:00
si5351.h clk: si5351: Do not pass struct clk in platform_data 2015-05-08 11:22:30 -07:00
simplefb.h
sky81452-backlight.h backlight: Add support Skyworks SKY81452 backlight driver 2015-03-12 09:08:19 +00:00
spi-clps711x.h
spi-davinci.h spi: davinci: Choose correct pre-scaler limit based on SOC 2015-07-24 17:35:51 +01:00
spi-ep93xx.h
spi-imx.h
spi-mt65xx.h spi: mediatek: fix spi incorrect endian usage 2015-08-20 11:09:47 -07:00
spi-nuc900.h spi: nuc900: Cleanup spi-nuc900.h header 2013-12-30 12:46:20 +00:00
spi-omap2-mcspi.h
spi-s3c64xx.h spi/s3c64xx: Trivial cleanup in header file 2014-02-16 09:59:13 +08:00
ssm2518.h
st-nci.h nfc: st-nci: Rename st21nfcb to st-nci 2015-06-10 12:51:44 +02:00
st21nfca.h NFC: st21nfca: Adding support for secure element 2015-01-28 00:03:36 +01:00
st33zp24.h tpm/tpm_i2c_stm_st33: Split tpm_i2c_tpm_st33 in 2 layers (core + phy) 2015-03-18 22:43:06 +01:00
st1232_pdata.h
st_sensors_pdata.h
syscon.h mfd: syscon: Add platform data with a regmap config name 2014-05-15 17:02:19 +01:00
touchscreen-s3c2410.h Input: s3c2410 - trivial cleanup in header file 2014-02-14 00:09:43 -08:00
tsl2563.h
uio_dmem_genirq.h
uio_pruss.h
usb-davinci.h
usb-ehci-mxc.h ARM: imx: move EHCI platform defines out of platform_data header 2014-07-18 16:10:04 +08:00
usb-ehci-orion.h usb: ehci: Cleanup usb-ehci-orion.h header 2014-01-03 12:37:57 -08:00
usb-musb-ux500.h
usb-mx2.h
usb-ohci-pxa27x.h
usb-ohci-s3c2410.h
usb-omap.h
usb-omap1.h usb: omap1: add extcon to platform data 2013-12-06 14:36:37 -06:00
usb-pxa3xx-ulpi.h
usb-rcar-phy.h
usb-s3c2410_udc.h
usb3503.h
ux500_wdt.h
video-clcd-versatile.h video: fix up versatile CLCD helper move 2014-07-23 17:41:00 +02:00
video-ep93xx.h ARM/fb: ep93xx: switch framebuffer to use modedb only 2015-08-13 12:25:44 +02:00
video-imxfb.h video: imxfb: Remove unused fields from platform data structure 2014-02-28 12:35:22 +02:00
video-mx3fb.h
video-nuc900fb.h
video-pxafb.h video: pxa: Cleanup video-pxafb.h header 2014-01-17 10:57:42 +02:00
video_s3c.h
voltage-omap.h
wiznet.h
wkup_m3.h remoteproc/wkup_m3: add a remoteproc driver for TI Wakeup M3 2015-06-17 09:58:08 +03:00
zforce_ts.h Input: zforce_ts - convert to use the gpiod interface 2015-07-08 21:50:57 -07:00