android_kernel_oneplus_msm8998/include/linux/platform_data
Christophe Ricard 68957303f4 NFC: ST21NFCA: Add driver for STMicroelectronics ST21NFCA NFC Chip
Add driver for STMicroelectronics ST21NFCA NFC controller.
ST21NFCA is using HCI protocol, shdlc as LLC layer & I2C as
communication protocol.

Adding support for Reader/Writer mode with Tag type 1/2/3/4 A & B.
It is using proprietary gate 15 for ISO14443-3 such as type 1 &
type 2 tags. It is using proprietary gate 14 for type F tags.
ST21NFCA_DEVICE_MGNT_GATE gives access to proprietary CLF configuration.
Standard gate for ISO14443-4 A (13) & B (11) are also used.

ST21NFCA specific mecanism:

One particular point to notice for the data handling is that frame
does not contain any length value. Therefore the i2c part of this driver
is managing the reception with a read length sequence until the end of
frame (0x7e) is reached.

In order to avoid conflict between sof & eof a mecanism
called byte stuffing concist of an escape byte (0x7d) insertion before
special byte (0x7e, 0x7d). The special byte is then xored with 0x20.

In this driver, When data are available in the CLF, the interrupt
gpio is driven to active state and triggered an interrupt.
Once the i2c_master_recv start, the interrupt gpio is driven to idle
state until its complete. If the frame is incomplete or data are still
available, interrupts will be triggered again.

Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2014-04-22 00:37:25 +02:00
..
ad5449.h
ad5755.h
ad7266.h
ad7298.h
ad7303.h
ad7791.h
ad7793.h
ad7887.h
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: Remove invalid file reference 2014-02-25 21:29:26 +09: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 misc: (at24) move header to linux/platform_data/ 2013-09-30 06:02:34 +02:00
at91_adc.h iio: at91: Use different prescal, startup mask in MR for different IP 2013-08-29 21:49:28 +01:00
ata-pxa.h
ata-samsung_cf.h ata: ata-samsung_cf: cleanup in header file 2014-02-19 14:52:52 +01:00
atmel.h ARM/serial: at91: switch atmel serial to use gpiolib 2013-12-20 11:41:30 +01:00
bd6107.h backlight: Add ROHM BD6107 backlight driver 2013-07-16 13:01:19 +09:00
brcmfmac-sdio.h brcmfmac: abstract tx packet processing functions 2013-08-15 16:07:55 -04:00
bt-nokia-h4p.h staging/bluetooth: Add hci_h4p driver 2014-02-07 10:13:53 -08:00
camera-mx1.h
camera-mx2.h
camera-mx3.h [media] V4L2: mx3_camera: add support for asynchronous subdevice registration 2013-08-18 09:06:37 -03:00
camera-pxa.h
camera-rcar.h [media] V4L2: soc_camera: Renesas R-Car VIN driver 2013-08-18 09:01:10 -03:00
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: ux500: Copy u8500_clk_init() ready for DT enablement 2013-09-26 11:05:26 +02:00
coda.h
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 dmaengine: at_hdmac: extend hardware handshaking interface identification 2013-07-05 11:40:29 +05:30
dma-coh901318.h
dma-ep93xx.h
dma-imx-sdma.h dma: imx-sdma: Add sdma firmware version 2 support 2013-12-16 09:18:47 +05:30
dma-imx.h dma: imx-sdma: Add new dma type for ssi dual fifo script 2013-12-16 09:18:48 +05:30
dma-mmp_tdma.h dma: Cleanup dma-mmp_tdma.h header 2014-01-13 13:30:30 +05:30
dma-mv_xor.h dma: mv_xor: Cleanup in dma-mv_xor.h header 2014-01-13 13:30:31 +05:30
dma-rcar-audmapp.h shdma: add R-Car Audio DMAC peri peri driver 2014-03-29 19:38:09 +05:30
dma-rcar-hpbdma.h dma: add driver for R-Car HPB-DMAC 2013-09-02 17:35:55 +05:30
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
dsp-omap.h
dwc3-exynos.h
dwc3-omap.h
edma.h dmanengine: fix edma driver to not define DMA_COMPLETE 2013-10-30 18:27:56 +05:30
efm32-spi.h spi: new controller driver for efm32 SoCs 2013-08-09 17:32:57 +01:00
efm32-uart.h
ehci-sh.h
elm.h mtd: devices: elm: clean elm_load_syndrome 2014-03-25 23:08:57 -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-davinci.h gpio: remove obsolete tnetv107x driver 2014-03-05 10:44:44 +08:00
gpio-em.h gpio: em: Add pinctrl support 2013-07-21 17:24:41 +02:00
gpio-lpc32xx.h ARM: lpc32xx: move custom GPIO header 2013-12-03 11:26:06 +01:00
gpio-omap.h
gpio-rcar.h
gpio-ts5500.h
gpio_backlight.h backlight: Add GPIO-based backlight driver 2013-07-16 13:01:05 +09: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-imx.h
i2c-nuc900.h
i2c-s3c2410.h i2c: s3c2410: Trivial cleanup in header file 2014-03-10 17:32:28 +01:00
ina2xx.h
invensense_mpu6050.h
iommu-omap.h
irda-pxaficp.h
irq-renesas-intc-irqpin.h
irq-renesas-irqc.h
keyboard-pxa930_rotary.h
keyboard-spear.h
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: kirkwood: Cleanup in header files 2014-01-27 17:28:51 -08: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-pca9633: Rename to leds-pca963x 2013-08-26 17:22:14 -07:00
leds-pca9685.h leds: Added driver for the NXP PCA9685 I2C chip 2013-10-22 10:57:35 -07:00
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_bl: support new LP8555 device 2013-11-13 12:09:14 +09:00
lp8727.h
lp8755.h
lv5207lp.h backlight: Add Sanyo LV5207LP backlight driver 2013-07-16 13:01:10 +09:00
macb.h
mailbox-omap.h
max197.h hwmon: (max197) add include guard 2014-01-14 21:36:53 -08:00
max6697.h
mfd-mcp-sa11x0.h mfd: Cleanup mfd-mcp-sa11x0.h header 2014-01-21 08:28:59 +00:00
microread.h
mipi-csis.h exynos4-is: Use the generic MIPI CSIS PHY driver 2013-10-16 13:48:08 -07:00
mmc-davinci.h
mmc-esdhc-imx.h mmc: sdhci-esdhc-imx: add delay line setting support 2013-10-21 15:58:13 -04:00
mmc-msm_sdcc.h mmc: msm: Cleanup mmc-msm_sdcc.h header 2014-02-25 15:43:15 -05: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-pxamci.h ARM: pxa: propagate errors from regulator_enable() to pxamci 2013-07-23 12:15:15 -07:00
mmc-s3cmci.h
mmc-sdhci-s3c.h
mmp_audio.h
mmp_dma.h
mouse-pxa930_trkball.h
msm_serial_hs.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 mtd: omap2: Cleanup header files 2014-01-11 11:39:18 -08:00
mtd-nand-pxa3xx.h mtd: nand: pxa3xx: Add bad block handling 2014-01-03 11:22:12 -08: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
ntc_thermistor.h
omap-twl4030.h
omap-wd-timer.h
omap1_bl.h
omap4-keypad.h
omap_drm.h
pca953x.h gpio: (gpio-pca953x) move header to linux/platform_data/ 2013-08-29 12:33:52 -07:00
pcmcia-pxa2xx_viper.h
pinctrl-adi2.h pinctrl: ADI PIN control driver for the GPIO controller on bf54x and bf60x. 2013-09-19 14:37:27 +02:00
pinctrl-single.h pinctrl: single: Add support for auxdata 2013-10-10 15:30:47 -07:00
pn544.h nfc: Fix FSF address in file headers 2013-12-11 10:56:21 -05:00
pwm-renesas-tpu.h
pxa2xx_udc.h
pxa_sdhci.h
rcar-du.h drm/rcar-du: Rework output routing support 2013-08-09 23:17:52 +02:00
remoteproc-omap.h
s3c-hsotg.h
s3c-hsudc.h
sa11x0-serial.h
samsung-usbphy.h
sc18is602.h
serial-imx.h serial: imx: Remove init() and exit() platform callbacks 2014-02-28 16:36:45 -08:00
serial-omap.h
serial-sccnxp.h Revert "serial: sccnxp: Add DT support" 2013-08-02 15:25:19 +08:00
sh_ipmmu.h
shmob_drm.h
sht15.h hwmon: (sht15) add include guard 2014-01-14 21:36:53 -08:00
si5351.h clk: si5351: remove variant from platform_data 2014-01-27 11:20:22 -08:00
simplefb.h fbdev changes for 3.12: 2013-09-05 09:49:32 -07:00
spi-clps711x.h
spi-davinci.h
spi-ep93xx.h
spi-imx.h
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
st21nfca.h NFC: ST21NFCA: Add driver for STMicroelectronics ST21NFCA NFC Chip 2014-04-22 00:37:25 +02:00
st1232_pdata.h
st_sensors_pdata.h iio: Added ST-sensors platform data to select the DRDY interrupt pin 2013-08-03 18:40:28 +01:00
tegra_emc.h
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
usb-ehci-orion.h usb: ehci: Cleanup usb-ehci-orion.h header 2014-01-03 12:37:57 -08:00
usb-imx_udc.h
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-gen2-phy.h usb: phy: Add RCAR Gen2 USB phy 2013-10-10 11:59:48 -05:00
usb-rcar-phy.h
usb-s3c2410_udc.h
usb3503.h
ux500_wdt.h
video-ep93xx.h video: ep93xx: Cleanup video-ep93xx.h header 2014-01-17 10:57:41 +02:00
video-imxfb.h video: imxfb: Remove unused fields from platform data structure 2014-02-28 12:35:22 +02:00
video-msm_fb.h video: msm: Cleanup video-msm_fb.h header 2014-01-17 10:57:42 +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
vsp1.h [media] v4l: vsp1: Add LUT support 2013-12-11 09:25:20 -02:00
wiznet.h
zforce_ts.h Input: add driver for Neonode zForce based touchscreens 2013-10-31 08:46:08 -07:00