aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* sparc: Pass buffer pointer all the way down to prom_{get,put}char().David S. Miller2010-11-306-54/+55
| | | | | | | | This gets us closer to being able to eliminate the use of dynamic and stack based buffers, so that we can adhere to the "no buffer addresses above 4GB" rule for PROM calls. Signed-off-by: David S. Miller <davem@davemloft.net>
* sparc: Do not export prom_nb{get,put}char().David S. Miller2010-11-174-20/+4
| | | | | | Never used outside of console_{32,64}.c Signed-off-by: David S. Miller <davem@davemloft.net>
* sparc64: Delete prom_setcallback().David S. Miller2010-11-162-22/+0
| | | | | | Unused. Signed-off-by: David S. Miller <davem@davemloft.net>
* sparc64: Unexport prom_service_exists().David S. Miller2010-11-162-2/+1
| | | | | | | Only used by functions in misc_64.c so make it private to that file. Signed-off-by: David S. Miller <davem@davemloft.net>
* sparc: Kill prom devops_{32,64}.cDavid S. Miller2010-11-165-195/+0
| | | | | | Completely unused. Signed-off-by: David S. Miller <davem@davemloft.net>
* sparc: Remove prom_pathtoinode()David S. Miller2010-11-164-36/+0
| | | | | | Unused. Signed-off-by: David S. Miller <davem@davemloft.net>
* sparc64: Delete prom_puts() unused.David S. Miller2010-11-161-16/+0
| | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* SPARC/LEON: removed constant timer initialization as if HZ=100, now it ↵Daniel Hellstrom2010-10-291-2/+2
| | | | | | | reflects the value of HZ Signed-off-by: Daniel Hellstrom <daniel@gaisler.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* kbuild: add ARCH=sparc32 targetNamhyung Kim2010-10-261-0/+3
| | | | | | | Add 'sparc32' ARCH target to test all{yes,mod}config for 32-bit build. Signed-off-by: Namhyung Kim <namhyung@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* sparc32: fix build failure on CONFIG_SPARC_LEONNamhyung Kim2010-10-261-2/+2
| | | | | | | | | | | | | | | | | | CC arch/sparc/kernel/irq_32.o arch/sparc/kernel/irq_32.c: In function 'request_fast_irq': arch/sparc/kernel/irq_32.c:370:25: error: conflicting types for 'trapbase_cpu1' arch/sparc/include/asm/leon.h:366:22: note: previous declaration of 'trapbase_cpu1' was here arch/sparc/kernel/irq_32.c:370:40: error: conflicting types for 'trapbase_cpu2' arch/sparc/include/asm/leon.h:367:22: note: previous declaration of 'trapbase_cpu2' was here arch/sparc/kernel/irq_32.c:370:55: error: conflicting types for 'trapbase_cpu3' arch/sparc/include/asm/leon.h:368:22: note: previous declaration of 'trapbase_cpu3' was here make[3]: *** [arch/sparc/kernel/irq_32.o] Error 1 make[2]: *** [arch/sparc/kernel] Error 2 make[1]: *** [sub-make] Error 2 make: *** [all] Error 2 Signed-off-by: Namhyung Kim <namhyung@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* sparc: Fixed random SPARC/LEON SMP CPU Stuck problem.Daniel Hellstrom2010-10-261-2/+2
| | | | | Signed-off-by: Daniel Hellstrom <daniel@gaisler.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* sparc32: remove CONFIG_HAVE_PERF_EVENTS optionNamhyung Kim2010-10-261-3/+0
| | | | | | | | | | | Remove HAVE_PERF_EVENTS and PERF_USE_VMALLOC under config SPARC because they're under SPARC64 too. Supporting perf_event needs atomic64 operations but AFAIK sparc32 doesn't provide them, CMIIW. ;-) Also removes redundant HAVE_IRQ_WORK line. Signed-off-by: Namhyung Kim <namhyung@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* sparc: don't #include asm/system.h in asm/jump_label.hNamhyung Kim2010-10-261-1/+0
| | | | | | | | | | It seems that #include <asm/system.h> makes a circular dependency between kernel.h and bitmap.h which breaks allmodconfig build. Removing the line makes no change because jump_label.h doesn't need it actually AFAICS. Compile tested on sparc32 allmodconfig. Signed-off-by: Namhyung Kim <namhyung@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* sparc32: Fix unaligned stack handling on trap return.David S. Miller2010-10-261-0/+12
| | | | | | | | | | | | | | | | When the rett stack checking code sees the stack is unaligned (in both the sun4c and srmmu cases) it jumps to the window fault-in path. But that just tries to page the stack pages in, it doesn't do anything special if the stack is misaligned. Therefore we essentially just loop forever in the trap return path. Fix this by emitting a SIGILL in the stack fault-in code if the stack is mis-aligned. Reported-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
* sparc: keep calling do_signal() as long as pending signals remainAl Viro2010-10-262-36/+6
| | | | | | | | | | | | Analog of what commit 494486a1d2697f2153199b6501ab5b4d6e15a2bb had done to alpha (another architecture with similar bug). One note: in rtrap_32.S part clr %l6 has been a rudiment of left after commit 28e6103665301ce60634e8a77f0b657c6cc099de (sparc: Fix debugger syscall restart interactions) has killed %l6 use in there. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch 'for-next' of git://android.git.kernel.org/kernel/tegraLinus Torvalds2010-10-2535-629/+4917
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'for-next' of git://android.git.kernel.org/kernel/tegra: spi: tegra: fix error setting on timeout spi: add spi_tegra driver tegra: harmony: enable PCI Express tegra: add PCI Express support tegra: add PCI Express clocks [ARM] tegra: Add APB DMA support [ARM] tegra: Add cpufreq support [ARM] tegra: common: Update common clock init table [ARM] tegra: clock: Add dvfs support, bug fixes, and cleanups [ARM] tegra: Add support for reading fuses [ARM] tegra: gpio: Add suspend and wake support [ARM] tegra: pinmux: add safe values, move tegra2, add suspend [ARM] tegra: add suspend and mirror irqs to legacy controller [ARM] tegra: Add legacy irq support [ARM] tegra: update iomap
| * spi: tegra: fix error setting on timeoutErik Gilling2010-10-251-4/+4
| | | | | | | | | | | | | | avoids derefencing an uninitialized pointer Change-Id: Icf528441ae481e9f6f5ddc0be32c7c217fa49701 Signed-off-by: Erik Gilling <konkers@android.com>
| * spi: add spi_tegra driverErik Gilling2010-10-213-0/+626
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | v2 changes: from Thierry Reding: * add "select TEGRA_SYSTEM_DMA" to Kconfig from Grant Likely: * add oneline description to header * inline references to DRIVER_NAME * inline references to BUSY_TIMEOUT * open coded bytes_per_word() * spi_readl/writel -> spi_tegra_readl/writel * move transfer validation to spi_tegra_transfer * don't request_mem_region iomem as platform bus does that for us * __exit -> __devexit v3 changes: from Russell King: * put request_mem_region back int from Grant Likely: * remove #undef DEBUG * add SLINK_ to register bit defines * remove unused bytes_per_word * make spi_tegra_readl/writel static linine * various refactoring for clarity * mark err if BSY bit is not cleared after 1000 retries * move spinlock to protect setting of RDY bit * subsys_initcall -> module_init v3 changes: from Grant Likely: * update spi_tegra to use PTR_ERRless dma API v4 changes: from Grant Likely: * remove empty spi_tegra_cleanup fucntion * allow device ids of -1 Signed-off-by: Erik Gilling <konkers@android.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Cc: Thierry Reding <thierry.reding@avionic-design.de> Cc: Russell King <linux@arm.linux.org.uk> spi: tegra: cleanups from upstream review Change-Id: Icecf7e64efcb39de072a15234ba1faa4bad40d25 Signed-off-by: Erik Gilling <konkers@android.com>
| * tegra: harmony: enable PCI ExpressMike Rapoport2010-10-212-0/+58
| | | | | | | | | | | | | | Signed-off-by: Mike Rapoport <mike@compulab.co.il> CC: Olof Johansson <olof@lixom.net> CC: Gary King <GKing@nvidia.com> Signed-off-by: Colin Cross <ccross@android.com>
| * tegra: add PCI Express supportMike Rapoport2010-10-216-1/+936
| | | | | | | | | | | | | | | | | | Change-Id: Ibd0bcd46895eb88952b9db29e1f68572d39aae01 Signed-off-by: Mike Rapoport <mike@compulab.co.il> Acked-by: Arnd Bergmann <arnd@arndb.de> CC: Russell King <linux@arm.linux.org.uk> CC: Gary King <GKing@nvidia.com> Signed-off-by: Colin Cross <ccross@android.com>
| * tegra: add PCI Express clocksMike Rapoport2010-10-211-0/+48
| | | | | | | | | | | | Signed-off-by: Mike Rapoport <mike@compulab.co.il> CC: Gary King <GKing@nvidia.com> Signed-off-by: Colin Cross <ccross@android.com>
| * [ARM] tegra: Add APB DMA supportColin Cross2010-10-215-0/+922
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The APB DMA block handles DMA transfers to and from some peripherals in the Tegra SOC. It reads from sequential addresses on the memory bus, and writes repeatedly to the same address on the APB bus. Two transfer modes are supported, oneshot for transferring a known size to or from a peripheral, and continuous for streaming data. In continuous mode, a callback occurs when the buffer is half full to allow the existing data to be handled and a new request queued.x v2 changes: dma API no longer uses PTR_ERR Signed-off-by: Erik Gilling <konkers@android.com> Signed-off-by: Colin Cross <ccross@android.com>
| * [ARM] tegra: Add cpufreq supportColin Cross2010-10-213-0/+187
| | | | | | | | | | | | | | | | | | Implement cpufreq support for the Tegra SOC. DVFS is handled by the core virtual cpu clock. The frequencies of the two cores are tied together, the highest frequency requested by either core determines the actual frequency. Signed-off-by: Colin Cross <ccross@android.com>
| * [ARM] tegra: common: Update common clock init tableColin Cross2010-10-211-2/+2
| | | | | | | | | | | | Renames clocks in the clock init table to match the datasheet names Signed-off-by: Colin Cross <ccross@android.com>
| * [ARM] tegra: clock: Add dvfs support, bug fixes, and cleanupsColin Cross2010-10-217-210/+1005
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add drivers to clock lookup table - Add new pll_m entries - Support I2C U16 divider - Fix rate reporting on 32.768kHz clock - Call propagate rate only if set_rate succeeds - Add support for audio_sync clock - Add 24MHz to PLLA frequency list - Correct i2s1/2/spdifout mux - Add suspend support - Fix enable/disable parent clocks in set_parent - Add max_rate parameter to all clocks - DVFS support - Add virtual cpu clock with dvfs - Support clk_round_rate - Fix requesting very high periph frequencies - Add quirks for PLLU: PLLU is slightly different from the rest of the PLLs. The lock enable bit is at bit 22 instead of 18 in the MISC register, and the post divider field is a single bit with reversed values from other PLLs. - Simplify recalculating clock rates - Fix UART divider flags - Remove unused clock ops Signed-off-by: Colin Cross <ccross@android.com>
| * [ARM] tegra: Add support for reading fusesColin Cross2010-10-214-0/+111
| | | | | | | | | | | | | | | | The Tegra SOC contains fuses to identify the CPU type and bin, and a unique id. The CPU info is required to determine the correct voltages for each cpu and core frequency. Signed-off-by: Colin Cross <ccross@android.com>
| * [ARM] tegra: gpio: Add suspend and wake supportColin Cross2010-10-212-13/+95
| | | | | | | | | | | | | | Includes checkpatch fixes and TEGRA_NR_GPIOS changes from Mike Rapoport <mike@compulab.co.il> Signed-off-by: Colin Cross <ccross@android.com>
| * [ARM] tegra: pinmux: add safe values, move tegra2, add suspendColin Cross2010-10-215-396/+603
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - the reset values for some pin groups in the tegra pin mux can result in functional errors due to conflicting with actively-configured pin groups muxing from the same controller. this change adds a known safe, non- conflicting mux for every pin group, which can be used on platforms where the pin group is not routed to any peripheral - also add each pin group's I/O voltage rail, to enable platform code to map from the pin groups used by each interface to the regulators used for dynamic voltage control - add routines to individually configure the tristate, pin mux and pull- ups for a pingroup_config array, so that it is possible to program individual values at run-time without modifying other values. this allows driver power-management code to reprogram individual interfaces into lower power states during idle / suspend, or to reprogram the pin mux to support multiple physical busses per internal controller (e.g., sharing a single I2C or SPI controller across multiple pin groups) - move chip-specific data like pingroups and drive-pingroups out of the common code and into chip-specific code - fix debug output for group with no pullups - add a TEGRA_MUX_SAFE function. Setting a pingroup to TEGRA_MUX_SAFE will automatically select a mux setting that is guaranteed not to conflict with any of the hardware blocks. Signed-off-by: Gary King <gking@nvidia.com>
| * [ARM] tegra: add suspend and mirror irqs to legacy controllerGary King2010-10-212-0/+139
| | | | | | | | | | | | | | | | | | | | mirror IRQ enable and disable operations on the legacy PPI system interrupt controller, since the legacy controller is responsible for responding to wakeup interrupts when the CPU is in LP2 idle mode save the irq controller state on suspend and restore on resume Signed-off-by: Gary King <gking@nvidia.com>
| * [ARM] tegra: Add legacy irq supportColin Cross2010-10-213-1/+146
| | | | | | | | | | | | | | | | The "legacy irq controller" duplicates the functionality of the GIC, but remains powered during the cpu suspend and idle modes that power down the CPU and the GIC. Signed-off-by: Colin Cross <ccross@android.com>
| * [ARM] tegra: update iomapColin Cross2010-10-213-6/+39
| | | | | | | | | | | | | | | | Add missing io address map entries from datasheet. Add the IRAM area to the statically mapped io regions. Correct the onewire, USB, and statmon addresses Signed-off-by: Colin Cross <ccross@android.com>
* | Merge branch 'for-linus' of ↵Linus Torvalds2010-10-2549-216/+513
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin: Blackfin: fix inverted anomaly 05000481 logic Blackfin: drop unused irq_panic()/DEBUG_ICACHE_CHECK Blackfin: ppi/spi/twi headers: add missing __BFP undef Blackfin: update defconfigs Blackfin: bfin_twi.h: start a common TWI header netdev: bfin_mac: push settings to platform resources
| * | Blackfin: fix inverted anomaly 05000481 logicMike Frysinger2010-10-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | No one uses these MMRs so we didn't notice when the anomaly handling logic was inverted. Reported-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: drop unused irq_panic()/DEBUG_ICACHE_CHECKMike Frysinger2010-10-253-118/+0
| | | | | | | | | | | | | | | | | | | | | | | | This code was useful during early port development when our icache code wasn't solid, but that ship has sailed long ago, and no code calls this function anymore (irq_panic). So punt it. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: ppi/spi/twi headers: add missing __BFP undefMike Frysinger2010-10-253-0/+6
| | | | | | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: update defconfigsMike Frysinger2010-10-2526-26/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - enable pm for ADI boards - drop security option as no one uses it - enable uninitialized mmap for everyone - disable wireless by default as no one uses it - disable cfq io sched as noop is fine Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bfin_twi.h: start a common TWI headerMike Frysinger2010-10-251-0/+43
| | | | | | | | | | | | | | | | | | Start one place for TWI definitions. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | netdev: bfin_mac: push settings to platform resourcesSonic Zhang2010-10-2516-71/+421
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move all the pin settings out of the Kconfig and into the platform resources (MII vs RMII). This clean up also lets us push out the phy settings so that board porters may control the layout. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | | Merge branch 'next' of git://git.monstr.eu/linux-2.6-microblazeLinus Torvalds2010-10-2556-201/+1038
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'next' of git://git.monstr.eu/linux-2.6-microblaze: (42 commits) microblaze: Fix build with make 3.82 fbdev/xilinxfb: Microblaze driver support microblaze: Support C optimized lib functions for little-endian microblaze: Separate library optimized functions microblaze: Support timer on AXI lite microblaze: Add support for little-endian Microblaze microblaze: KGDB little endian support microblaze: Add PVR for endians plus detection net: emaclite: Add support for little-endian platforms microblaze: trivial: Add comment for AXI pvr microblaze: pci-common cleanup microblaze: Support early console on uart16550 microblaze: Do not compile early console support for uartlite if is disabled microblaze: Setup early console dynamically microblaze: Rename all uartlite early printk functions microblaze: remove early printk uarlite console dependency from header microblaze: Remove additional compatible properties microblaze: Remove hardcoded asm instraction for PVR loading microblaze: Use static const char * const where possible microblaze: Define VMALLOC_START/END ...
| * | | microblaze: Fix build with make 3.82Thomas Backlund2010-10-221-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When running make headers_install_all on x86_64 and make 3.82 I hit this: arch/microblaze/Makefile:80: *** mixed implicit and normal rules. Stop. make: *** [headers_install_all] Error 2 So split the rules to satisfy make 3.82. Signed-off-by: Thomas Backlund <tmb@mandriva.org> Cc: Stable <stable@kernel.org> Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | | fbdev/xilinxfb: Microblaze driver supportMichal Simek2010-10-211-6/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DCR bus is natively used for PowerPC. Microblaze has no infrastructure for compile DCR that's why is necessary to exclude it. Signed-off-by: Michal Simek <monstr@monstr.eu> Acked-by: Grant Likely <grant.likely@secretlab.ca> CC: Andrei Konovalov <akonovalov@ru.mvista.com> CC: "David S. Miller" <davem@davemloft.net> CC: linux-kernel@vger.kernel.org
| * | | microblaze: Support C optimized lib functions for little-endianMichal Simek2010-10-212-6/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optimized C library functions can rapidly speedup the kernel. memset doesn't need to be optimized because there is no difference in behavior on little/big endian cpu. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | | microblaze: Separate library optimized functionsMichal Simek2010-10-213-15/+46
| | | | | | | | | | | | | | | | | | | | | | | | memcpy/memmove/memset Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | | microblaze: Support timer on AXI liteMichal Simek2010-10-212-6/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | New microblaze systems uses two buses. One for memories and flashes and the second for low-speed peripherals which can run on different CLK. This is the reason why the kernel is trying to read clock-frequency directly from node. If there is then the kernel will work with it. If not then cpu CLK is used. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | | microblaze: Add support for little-endian MicroblazeMichal Simek2010-10-2110-18/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Microblaze little-endian toolchain exports __MICROBLAZEEL__ which is used in the kernel to identify little/big endian. The most of the changes are in loading values from DTB which is always big endian. Little endian platforms are based on new AXI bus which has impact to early uartlite initialization. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | | microblaze: KGDB little endian supportMichal Simek2010-10-211-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Just need to use little-endian opcode for brki r16, 0x18 Signed-off-by: Michal Simek <monstr@monstr.eu> CC: Jason Wessel <jason.wessel@windriver.com>
| * | | microblaze: Add PVR for endians plus detectionMichal Simek2010-10-216-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Upcomming microblaze version will support little-endian. Signed-off-by: Michal Simek <monstr@monstr.eu> Acked-by: Grant Likely <grant.likely@secretlab.ca>
| * | | net: emaclite: Add support for little-endian platformsMichal Simek2010-10-211-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upcomming Microblaze is little endian that's why is necessary to fix protocol and length loading. Signed-off-by: Michal Simek <monstr@monstr.eu> Acked-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: David S. Miller <davem@davemloft.net> CC: Eric Dumazet <eric.dumazet@gmail.com> CC: netdev@vger.kernel.org CC: linux-kernel@vger.kernel.org CC: devicetree-discuss@lists.ozlabs.org
| * | | microblaze: trivial: Add comment for AXI pvrMichal Simek2010-10-211-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | AXI and OPB share some PVR macros. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | | microblaze: pci-common cleanupNishanth Aravamudan2010-10-211-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use set_dma_ops and remove now used-once oddly named temp pointer sd. Signed-off-by: Milton Miller <miltonm@bga.com> Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Michal Simek <monstr@monstr.eu>