mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
Merge commit 'v2.6.36-rc7' into spi/next
This commit is contained in:
commit
492c032bec
167 changed files with 992 additions and 562 deletions
|
|
@ -23,6 +23,7 @@
|
|||
#include <linux/init.h>
|
||||
#include <linux/cache.h>
|
||||
#include <linux/mutex.h>
|
||||
#include <linux/of_device.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/mod_devicetable.h>
|
||||
#include <linux/spi/spi.h>
|
||||
|
|
@ -86,6 +87,10 @@ static int spi_match_device(struct device *dev, struct device_driver *drv)
|
|||
const struct spi_device *spi = to_spi_device(dev);
|
||||
const struct spi_driver *sdrv = to_spi_driver(drv);
|
||||
|
||||
/* Attempt an OF style match */
|
||||
if (of_driver_match_device(dev, drv))
|
||||
return 1;
|
||||
|
||||
if (sdrv->id_table)
|
||||
return !!spi_match_id(sdrv->id_table, spi);
|
||||
|
||||
|
|
|
|||
|
|
@ -350,7 +350,7 @@ static int __init spi_gpio_probe(struct platform_device *pdev)
|
|||
spi_gpio->bitbang.master = spi_master_get(master);
|
||||
spi_gpio->bitbang.chipselect = spi_gpio_chipselect;
|
||||
|
||||
if ((master_flags & (SPI_MASTER_NO_RX | SPI_MASTER_NO_RX)) == 0) {
|
||||
if ((master_flags & (SPI_MASTER_NO_TX | SPI_MASTER_NO_RX)) == 0) {
|
||||
spi_gpio->bitbang.txrx_word[SPI_MODE_0] = spi_gpio_txrx_word_mode0;
|
||||
spi_gpio->bitbang.txrx_word[SPI_MODE_1] = spi_gpio_txrx_word_mode1;
|
||||
spi_gpio->bitbang.txrx_word[SPI_MODE_2] = spi_gpio_txrx_word_mode2;
|
||||
|
|
|
|||
|
|
@ -408,11 +408,17 @@ static void mpc8xxx_spi_cpm_bufs_start(struct mpc8xxx_spi *mspi)
|
|||
|
||||
xfer_ofs = mspi->xfer_in_progress->len - mspi->count;
|
||||
|
||||
out_be32(&rx_bd->cbd_bufaddr, mspi->rx_dma + xfer_ofs);
|
||||
if (mspi->rx_dma == mspi->dma_dummy_rx)
|
||||
out_be32(&rx_bd->cbd_bufaddr, mspi->rx_dma);
|
||||
else
|
||||
out_be32(&rx_bd->cbd_bufaddr, mspi->rx_dma + xfer_ofs);
|
||||
out_be16(&rx_bd->cbd_datlen, 0);
|
||||
out_be16(&rx_bd->cbd_sc, BD_SC_EMPTY | BD_SC_INTRPT | BD_SC_WRAP);
|
||||
|
||||
out_be32(&tx_bd->cbd_bufaddr, mspi->tx_dma + xfer_ofs);
|
||||
if (mspi->tx_dma == mspi->dma_dummy_tx)
|
||||
out_be32(&tx_bd->cbd_bufaddr, mspi->tx_dma);
|
||||
else
|
||||
out_be32(&tx_bd->cbd_bufaddr, mspi->tx_dma + xfer_ofs);
|
||||
out_be16(&tx_bd->cbd_datlen, xfer_len);
|
||||
out_be16(&tx_bd->cbd_sc, BD_SC_READY | BD_SC_INTRPT | BD_SC_WRAP |
|
||||
BD_SC_LAST);
|
||||
|
|
|
|||
Loading…
Reference in a new issue