TSC2102
Informations about the hardware interface between the i.MXL and the TSC2102. This chip will be available on the DevFull board but anyone should be able to add it to it's DevLight.
Contents
Introduction
This chip is a "SMART" 4-Wire Touch Screen Controller with Stereo DAC with HP Amplifier.
Interface with i.MXL
Touchscreen
Configuration and data exchange is done through the SPI bus n°2 (SPI2).
The SPI 2 port is shared with the LCD interface of the i.MXL.
Audio
Configuration is done through SPI2 bus and audio data exchange through SSIA
Signals
i.MXL/DevLight | TSC2102 | Functionnality |
---|---|---|
SPI2_SCLK/REV | SCLK | SPI clock |
SPI2_TXD/SPL_SPR | MOSI | SPI MasterOut SlaveIn |
SPI2_RXD_1/PS | MISO | SPI MasterIn SlaveOut |
PortB 17/SSI1_TXDAT | SSn | SPI Chip select |
SPI2_SS/PortD 8/CLS | PINT/DAVn | Interrupt |
Reset (on Reset switch) | RESETn | Global reset signal |
Remark:
- i.MXL/DevLight SPI Chip Select signals are not used by Linux SPI infrastructure; it needs multiple chip select (one for each chip connected on the bus), and so GPIOs are used for that purpose.
- Chip interrupt is on Port D because Port B has already some and interrupt are shared on the same port.
Drivers
Adapter board
For those who would like to test this component before the DevFull release, take a look at this link: http://www.farnell.fr and type '1426186' as part to search.
This is a small pcb converting a tssop32 to two rows of 2.54mm holes...
ssi test tool
Use special release of tsc2102 driver and imxreg for audio development purpose. available on request -> Jorasse
- Requirements:
TSC2102 mclk: 16MHZ
FS rate: 32KHz
- uboot: Enable register debug from u-boot:
BIOS> mw.l 0x00200008 0
BIOS> mw.l 0x00210008 0
- linux: Load spi/tsc drivers
modprobe spi_imx
modprobe tsc2102
- imxregs: generate ssi signal
Special release of imxregs can generate an audio signal.
just use imxregs with three parameters: imxregs param1 param2 param3
param1 can be 0: triangular signal or 1: sinusoïdal signal.
param2: period of the signal in number of samples per channel.
param3: Signal level coefficient [0.0 .. 1.0].
for example: imregs 1 50 0.15 produces a 300Hz 5v(pk-pk) sinusoid.
- next step: dma transfer