1/* 2 * Freescale SPI controller driver cpm functions. 3 * 4 * Maintainer: Kumar Gala 5 * 6 * Copyright (C) 2006 Polycom, Inc. 7 * Copyright 2010 Freescale Semiconductor, Inc. 8 * 9 * CPM SPI and QE buffer descriptors mode support: 10 * Copyright (c) 2009 MontaVista Software, Inc. 11 * Author: Anton Vorontsov <avorontsov@ru.mvista.com> 12 * 13 * This program is free software; you can redistribute it and/or modify it 14 * under the terms of the GNU General Public License as published by the 15 * Free Software Foundation; either version 2 of the License, or (at your 16 * option) any later version. 17 */ 18 19#ifndef __SPI_FSL_CPM_H__ 20#define __SPI_FSL_CPM_H__ 21 22#include "spi-fsl-lib.h" 23 24#ifdef CONFIG_FSL_SOC 25extern void fsl_spi_cpm_reinit_txrx(struct mpc8xxx_spi *mspi); 26extern int fsl_spi_cpm_bufs(struct mpc8xxx_spi *mspi, 27 struct spi_transfer *t, bool is_dma_mapped); 28extern void fsl_spi_cpm_bufs_complete(struct mpc8xxx_spi *mspi); 29extern void fsl_spi_cpm_irq(struct mpc8xxx_spi *mspi, u32 events); 30extern int fsl_spi_cpm_init(struct mpc8xxx_spi *mspi); 31extern void fsl_spi_cpm_free(struct mpc8xxx_spi *mspi); 32#else 33static inline void fsl_spi_cpm_reinit_txrx(struct mpc8xxx_spi *mspi) { } 34static inline int fsl_spi_cpm_bufs(struct mpc8xxx_spi *mspi, 35 struct spi_transfer *t, 36 bool is_dma_mapped) { return 0; } 37static inline void fsl_spi_cpm_bufs_complete(struct mpc8xxx_spi *mspi) { } 38static inline void fsl_spi_cpm_irq(struct mpc8xxx_spi *mspi, u32 events) { } 39static inline int fsl_spi_cpm_init(struct mpc8xxx_spi *mspi) { return 0; } 40static inline void fsl_spi_cpm_free(struct mpc8xxx_spi *mspi) { } 41#endif 42 43#endif /* __SPI_FSL_CPM_H__ */ 44