mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 11:41:38 -04:00
Merge branch 'merge' of git://git.secretlab.ca/git/linux-2.6
* 'merge' of git://git.secretlab.ca/git/linux-2.6: powerpc/5200: Build fix for mpc52xx watchdog timer code of: Fix comparison of "compatible" properties powerpc/52xx: update defconfigs spi/omap2_mcspi: Use transaction speed if provided spi/omap2_mcspi: fix NULL pointer dereference uartlite: Fix build on sparc.
This commit is contained in:
commit
9d20593a72
10 changed files with 183 additions and 119 deletions
|
|
@ -578,6 +578,7 @@ static int omap2_mcspi_setup_transfer(struct spi_device *spi,
|
|||
struct spi_master *spi_cntrl;
|
||||
u32 l = 0, div = 0;
|
||||
u8 word_len = spi->bits_per_word;
|
||||
u32 speed_hz = spi->max_speed_hz;
|
||||
|
||||
mcspi = spi_master_get_devdata(spi->master);
|
||||
spi_cntrl = mcspi->master;
|
||||
|
|
@ -587,9 +588,12 @@ static int omap2_mcspi_setup_transfer(struct spi_device *spi,
|
|||
|
||||
cs->word_len = word_len;
|
||||
|
||||
if (spi->max_speed_hz) {
|
||||
if (t && t->speed_hz)
|
||||
speed_hz = t->speed_hz;
|
||||
|
||||
if (speed_hz) {
|
||||
while (div <= 15 && (OMAP2_MCSPI_MAX_FREQ / (1 << div))
|
||||
> spi->max_speed_hz)
|
||||
> speed_hz)
|
||||
div++;
|
||||
} else
|
||||
div = 15;
|
||||
|
|
@ -751,11 +755,13 @@ static void omap2_mcspi_cleanup(struct spi_device *spi)
|
|||
mcspi = spi_master_get_devdata(spi->master);
|
||||
mcspi_dma = &mcspi->dma_channels[spi->chip_select];
|
||||
|
||||
/* Unlink controller state from context save list */
|
||||
cs = spi->controller_state;
|
||||
list_del(&cs->node);
|
||||
if (spi->controller_state) {
|
||||
/* Unlink controller state from context save list */
|
||||
cs = spi->controller_state;
|
||||
list_del(&cs->node);
|
||||
|
||||
kfree(spi->controller_state);
|
||||
kfree(spi->controller_state);
|
||||
}
|
||||
|
||||
if (mcspi_dma->dma_rx_channel != -1) {
|
||||
omap_free_dma(mcspi_dma->dma_rx_channel);
|
||||
|
|
|
|||
Loading…
Reference in a new issue