Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5)

Side by Side Diff: drivers/spi/tegra2_spi.c

Issue 6670098: spi: Tegra2: increase SPI FLASH clock to 24MHz (Closed) Base URL: http://git.chromium.org/git/u-boot-next@chromeos-v2010.09
Patch Set: Fix CLK_SOURCE_SPI mask Created 9 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2010 NVIDIA Corporation 2 * Copyright (c) 2010 NVIDIA Corporation
3 * With help from the mpc8xxx SPI driver 3 * With help from the mpc8xxx SPI driver
4 * 4 *
5 * See file CREDITS for list of people who contributed to this 5 * See file CREDITS for list of people who contributed to this
6 * project. 6 * project.
7 * 7 *
8 * This program is free software; you can redistribute it and/or 8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License as 9 * modify it under the terms of the GNU General Public License as
10 * published by the Free Software Foundation; either version 2 of 10 * published by the Free Software Foundation; either version 2 of
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 * SPI reset/clocks init - reset SPI, set clocks, release from reset 84 * SPI reset/clocks init - reset SPI, set clocks, release from reset
85 */ 85 */
86 NV_CLK_RST_READ(0x08, val); 86 NV_CLK_RST_READ(0x08, val);
87 NV_CLK_RST_WRITE(0x08, (val | 0x800)); 87 NV_CLK_RST_WRITE(0x08, (val | 0x800));
88 debug("spi_init: ClkRst = %08x\n", val); 88 debug("spi_init: ClkRst = %08x\n", val);
89 89
90 NV_CLK_RST_READ(0x14, val); 90 NV_CLK_RST_READ(0x14, val);
91 NV_CLK_RST_WRITE(0x14, (val | 0x800)); 91 NV_CLK_RST_WRITE(0x14, (val | 0x800));
92 debug("spi_init: ClkEnable = %08x\n", val); 92 debug("spi_init: ClkEnable = %08x\n", val);
93 93
94 » /* Change default SPI clock from 12MHz to 6MHz, same as BootROM */ 94 » /* Change SPI clock to 24MHz */
95 NV_CLK_RST_READ(0x114, val); 95 NV_CLK_RST_READ(0x114, val);
96 » NV_CLK_RST_WRITE(0x114, (val | 0x2)); 96 » val &= 0x3FFFFF00;» » /* src = PLLP_OUT0 */
97 » val |= ((9-1) << 1);» » /* div = 9 in 7.1 format */
98 » NV_CLK_RST_WRITE(0x114, val);
97 debug("spi_init: ClkSrc = %08x\n", val); 99 debug("spi_init: ClkSrc = %08x\n", val);
98 100
99 NV_CLK_RST_READ(0x08, val); 101 NV_CLK_RST_READ(0x08, val);
100 NV_CLK_RST_WRITE(0x08, (val & 0xFFFFF7FF)); 102 NV_CLK_RST_WRITE(0x08, (val & 0xFFFFF7FF));
101 debug("spi_init: ClkRst final = %08x\n", val); 103 debug("spi_init: ClkRst final = %08x\n", val);
102 104
103 /* Clear stale status here */ 105 /* Clear stale status here */
104 106
105 spi->status = SPI_STAT_RDY | SPI_STAT_RXF_FLUSH | SPI_STAT_TXF_FLUSH | \ 107 spi->status = SPI_STAT_RDY | SPI_STAT_RXF_FLUSH | SPI_STAT_TXF_FLUSH | \
106 SPI_STAT_RXF_UNR | SPI_STAT_TXF_OVF; 108 SPI_STAT_RXF_UNR | SPI_STAT_TXF_OVF;
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
331 spi->status = status; /* ACK RDY, etc. bits */ 333 spi->status = status; /* ACK RDY, etc. bits */
332 } 334 }
333 335
334 if (flags & SPI_XFER_END) 336 if (flags & SPI_XFER_END)
335 spi_cs_deactivate(slave); 337 spi_cs_deactivate(slave);
336 338
337 debug("spi_xfer: transfer ended. Value=%08x, status = %08x\n", 339 debug("spi_xfer: transfer ended. Value=%08x, status = %08x\n",
338 tmpdin, status); 340 tmpdin, status);
339 return ret; 341 return ret;
340 } 342 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698