1/* 2 * Copyright (C) 2005 Stephen Street / StreetFire Sound Labs 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License as published by 6 * the Free Software Foundation; either version 2 of the License, or 7 * (at your option) any later version. 8 * 9 * This program is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License 15 * along with this program; if not, write to the Free Software 16 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 17 */ 18 19#ifndef PXA2XX_SPI_H_ 20#define PXA2XX_SPI_H_ 21 22#define PXA2XX_CS_ASSERT (0x01) 23#define PXA2XX_CS_DEASSERT (0x02) 24 25/* device.platform_data for SSP controller devices */ 26struct pxa2xx_spi_master { 27 u32 clock_enable; 28 u16 num_chipselect; 29 u8 enable_dma; 30}; 31 32/* spi_board_info.controller_data for SPI slave devices, 33 * copied to spi_device.platform_data ... mostly for dma tuning 34 */ 35struct pxa2xx_spi_chip { 36 u8 tx_threshold; 37 u8 rx_threshold; 38 u8 dma_burst_size; 39 u32 timeout; 40 u8 enable_loopback; 41 int gpio_cs; 42 void (*cs_control)(u32 command); 43}; 44 45extern void pxa2xx_set_spi_info(unsigned id, struct pxa2xx_spi_master *info); 46 47#endif /*PXA2XX_SPI_H_*/ 48