summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* parisc: Fix PCI resource allocation on non-PAT SBA machinesMatthew Wilcox2009-07-031-0/+2
| | | | | | | | | We weren't marking the resources as memory resources, so they weren't being found by pci_claim_resource(). Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Reviewed-by: Grant Grundler <grundler@parisc-linux.org> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: perf: wire up sys_perf_counter_openKyle McMartin2009-07-034-1/+15
| | | | Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: add task_pt_regs macroKyle McMartin2009-07-031-0/+3
| | | | | | needed for perf_counters. Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: wire sys_perf_counter_open to sys_ni_syscallKyle McMartin2009-07-032-1/+3
| | | | | | Reserve a syscall slot for sys_perf_counter_open. Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: inventory.c, fix bloated stack frameKyle McMartin2009-07-031-17/+24
| | | | | | | The pa_pdc_cell struct can be kmalloc'd, so do that instead. Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: processor.c, fix bloated stack frameKyle McMartin2009-07-031-5/+11
| | | | | | The pa_pdc_cell struct can be kmalloc'd, so do that instead. Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: fix compile warning in mm/init.cKyle McMartin2009-07-031-1/+1
| | | | | | | arch/parisc/mm/init.c: In function 'free_initmem': 381: warning: passing argument 1 of 'memset' makes pointer from integer without a cast Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: remove dead code from sys_parisc32.cChristoph Hellwig2009-07-031-62/+0
| | | | | | | | | Unless I'm totally missing something get_fd_set32/set_fd_set32 are completely unused. Signed-off-by: Christoph Hellwig <hch@lst.de> Acked-by: Grant Grundler <grundler@parisc-linux.org> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: wire up rt_tgsigqueueinfoKyle McMartin2009-07-032-2/+4
| | | | Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: ensure broadcast tlb purge runs single threadedHelge Deller2009-07-033-19/+30
| | | | | | | | | | | | The TLB flushing functions on hppa, which causes PxTLB broadcasts on the system bus, needs to be protected by irq-safe spinlocks to avoid irq handlers to deadlock the kernel. The deadlocks only happened during I/O intensive loads and triggered pretty seldom, which is why this bug went so long unnoticed. Signed-off-by: Helge Deller <deller@gmx.de> [edited to use spin_lock_irqsave on UP as well since we'd been locking there all this time anyway, --kyle] Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: fix "delay!" timer handlingGrant Grundler2009-07-031-35/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rewrote timer_interrupt() to properly handle the "delayed!" case. If we used floating point math to compute the number of ticks that had elapsed since the last timer interrupt, it could take up to 12K cycles (emperical!) to handle the interrupt. Existing code assumed it would never take more than 8k cycles. We end up programming Interval Timer to a value less than "current" cycle counter. Thus have to wait until Interval Timer "wrapped" and would then get the "delayed!" printk that I moved below. Since we don't really know what the upper limit is, I prefer to read CR16 again after we've programmed it to make sure we won't have to wait for CR16 to wrap. Further, the printk was between reading CR16 (cycle couner) and writing CR16 (the interval timer). This would cause us to continue to set the interval timer to a value that was "behind" the cycle counter. Rinse and repeat. So no printk's between reading CR16 and setting next interval timer. Tested on A500 (550 Mhz PA8600). Signed-off-by: Grant Grundler <grundler@parisc-linux.org> Tested-by: Kyle McMartin <kyle@mcmartin.ca> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca> ---- Kyle, Helge, and other parisc's, Please test on 32-bit before committing. I think I have it right but recognize I might not. TODO: I wanted to use "do_div()" in order to get both remainder and value back with one division op. That should help with the latency alot but can be applied seperately from this patch. thanks, grant
* parisc: fix mismatched parenthesis in memcpy.cRandolph Chung2009-07-031-1/+1
| | | | | | | | | | | | | | | >>>> I think this is what was intended? Note that this patch may affect >>>> profiling. >>> it really should be >>> >>> - if (likely(t1 & (sizeof(unsigned int)-1)) == 0) { >>> + if (likely((t1 & (sizeof(unsigned int)-1)) == 0)) { >>> >>> randolph Reported-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Randolph Chung <tausq@parisc-linux.org> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: Fix gcc 4.4 warning in lba_pci.cGrant Grundler2009-07-031-9/+22
| | | | | | | | | | | | | gcc 4.4 warns about: drivers/parisc/lba_pci.c: In function 'lba_pat_resources': drivers/parisc/lba_pci.c:1099: warning: the frame size of 8280 bytes is larger than 4096 bytes The problem is we declare two large structures on the stack. They don't need to be on the stack since they are only used during LBA initialization (which is serialized). Moving to be "static". Signed-off-by: Grant Grundler <grundler@parisc-linux.org> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: add parameter to read_cr16()Coly Li2009-07-031-1/+1
| | | | | | | | | | This patch modifies parameter of au1x_counter1_read() from 'void' to 'struct clocksource *cs', which fixes compile warning for incompatible parameter type. Signed-off-by: Coly Li <coly.li@suse.de> Signed-off-by: Helge Deller <deller@gmx.de> Cc: Ingo Molnar <mingo@elte.hu> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: decode_exc.c should include kernel.hAlexander Beregalov2009-07-031-1/+1
| | | | | | | | Fix this build error: arch/parisc/math-emu/decode_exc.c:351: undefined reference to `printk' Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: remove obsolete hw_interrupt_typeThomas Gleixner2009-07-037-8/+8
| | | | | | | | | | | | | | | | | | The defines and typedefs (hw_interrupt_type, no_irq_type, irq_desc_t) have been kept around for migration reasons. After more than two years it's time to remove them finally. This patch cleans up one of the remaining users. When all such patches hit mainline we can remove the defines and typedefs finally. Impact: cleanup Convert the last remaining users to struct irq_chip and remove the define. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: fix irq compile bugs in arch/parisc/kernel/irq.cHelge Deller2009-07-031-4/+4
| | | | | | | | | | | Fix miscompilation in arch/parisc/kernel/irq.c: 123: warning: passing arg 1 of `cpumask_setall' from incompatible pointer type 141: warning: passing arg 1 of `cpumask_copy' from incompatible pointer type 300: warning: passing arg 1 of `cpumask_copy' from incompatible pointer type 357: warning: passing arg 2 of `cpumask_copy' from incompatible pointer type Signed-off-by: Helge Deller <deller@gmx.de> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: advertise PCI devs after "assign_resources"Grant Grundler2009-07-032-10/+10
| | | | | | | | | | | | | | | | | | Alex Chiang asked me why PARISC was calling pci_bus_add_devices() and pci_bus_assign_resources() in the opposite order from everyone else. No reason and I couldn't see any data dependency. Patch below applies cleanly to 2.6.30-rc2. Later, I suspected the code worked only because no drivers would be loaded/ready until much later in the system initialization sequence. Tested "LBA" code on J6000 (32-bit) and A500 (64-bit SMP) with 2.6.30-rc2. Not tested with any Dino controllers. Not tested with PCI-PCI Bridge (TBD). Reported-by: Alex Chiang <achiang@hp.com> Signed-off-by: Grant Grundler <grundler@parisc-linux.org> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: fix ldcw inline assemblerHelge Deller2009-07-031-2/+2
| | | | | | | | | | | | | | | | | | | There are two reasons to expose the memory *a in the asm: 1) To prevent the compiler from discarding a preceeding write to *a, and 2) to prevent it from caching *a in a register over the asm. The change has had a few days testing with a SMP build of 2.6.22.19 running on a rp3440. This patch is about the correctness of the __ldcw() macro itself. The use of the macro should be confined to small inline functions to try to limit the effect of clobbering memory on GCC's optimization of loads and stores. Signed-off-by: Dave Anglin <dave.anglin@nrc-cnrc.gc.ca> Signed-off-by: Helge Deller <deller@gmx.de> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: kill WARN in free_initmem when DEBUG_KERNELKyle McMartin2009-07-031-20/+9
| | | | | | | | Doing an IPI with local interrupts off triggers a warning. We don't need to be quite so ridiculously paranoid. Also, clean up a bit of the code a little. Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: Remove casts from atomic macrosBastian Blank2009-07-031-4/+4
| | | | | | | | | | | | | | The atomic operations on parisc are defined as macros. The macros includes casts which disallows the use of some syntax elements and produces error like this: net/phonet/pep.c: In function 'pipe_rcv_status': net/phonet/pep.c:262: error: lvalue required as left operand of assignment The patch removes this superfluous casts. Signed-off-by: Bastian Blank <waldi@debian.org> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: remove CVS keywordsAlexander Beregalov2009-07-037-14/+6
| | | | | | | Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Acked-by: Matthew Wilcox <willy@linux.intel.com> Acked-by: Grant Grundler <grundler@parisc-linux.org> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: ccio-dma: fix build failure without procfsAlexander Beregalov2009-07-031-3/+4
| | | | | | | | Fix this build error when CONFIG_PROC_FS is not set: drivers/parisc/ccio-dma.c:1574: error: 'ccio_proc_info_fops' undeclared Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: stifb: should depend on STI_CONSOLEAlexander Beregalov2009-07-031-0/+2
| | | | | | | | Fix this build error when CONFIG_STI_CONSOLE is not set drivers/video/stifb.c:1337: undefined reference to `sti_get_rom' Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* parisc: wire up preadv/pwritev syscallsKyle McMartin2009-07-032-1/+5
| | | | | | Generic compat handlers look appropriate, so use those. Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
* Merge branch 'for-linus' of ↵Linus Torvalds2009-06-2282-1216/+1530
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: (27 commits) Blackfin: fix dma-mapping build errors Blackfin: hook up new perf_counter_open syscall Blackfin: drop BF535-specific text for exception 0x2A (unaligned instruction) Blackfin: fix early crash when booting on wrong cpu Blackfin: fix GPTMR0_CLOCKSOURCE dependency on BFIN_GPTIMERS Blackfin: drop unused ISP1760 port1_disable from board resources Blackfin: bf526-ezbrd: handle different SDRAM chips Blackfin: fix typo in TRAS define in mem_init.h header Blackfin: unify memory map headers Blackfin: stick the CPU name into boot image name Blackfin: update defconfigs Blackfin: decouple unrelated cache settings to get exact behavior Blackfin: update I-pipe patch level Blackfin: remove obsolete mcount support from I-pipe code Blackfin: allow CONFIG_TICKSOURCE_GPTMR0 with interrupt pipeline Blackfin: convert interrupt pipeline to irqflags Blackfin: allow people to select BF51x-0.1 silicon rev Blackfin: bf526-ezbrd: set SPI flash resources to SST device Blackfin: fix accidental reset in some boot modes Blackfin: abstract irq14 lowering in do_irq ...
| * Blackfin: fix dma-mapping build errorsFUJITA Tomonori2009-06-221-0/+13
| | | | | | | | | | | | | | | | | | | | The recent deprecation of dma_sync_{sg,single} ironically broke Blackfin systems. This is because we don't define dma_sync_sg_for_cpu at all, so until the DMA asm-generic conversion/cleanup is done after the next release, simply stub out the dma_sync_sg_for_{cpu,device} functions. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: hook up new perf_counter_open syscallMike Frysinger2009-06-222-1/+3
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: drop BF535-specific text for exception 0x2A (unaligned instruction)Yi Li2009-06-221-3/+1
| | | | | | | | | | | | | | | | | | We don't support the BF535 at all, and the exception 0x2A text specific to it is pretty verbose and confusing (since the behavior is simply odd), so punt it to keep the noise down. Signed-off-by: Yi Li <yi.li@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: fix early crash when booting on wrong cpuRobin Getz2009-06-221-8/+15
| | | | | | | | | | | | | | | | | | | | Make sure we process the kernel command line before poking the hardware, so that we can process early printk. This helps ensure that if you boot a kernel configured for a different processor, something will be left in the log buffer. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: fix GPTMR0_CLOCKSOURCE dependency on BFIN_GPTIMERSMike Frysinger2009-06-221-0/+1
| | | | | | | | | | | | | | | | The GPTMR0_CLOCKSOURCE Kconfig option requires the gptimers framework, so make sure it is selected when this option is enabled. Reported-by: Peter Meerwald <pmeerw@pmeerw.net> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: drop unused ISP1760 port1_disable from board resourcesMike Frysinger2009-06-225-5/+0
| | | | | | | | | | | | | | The port1 disable stuff was dropped from the USB ISP1760, so update the Blackfin boards accordingly. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf526-ezbrd: handle different SDRAM chipsGraf Yang2009-06-222-1/+92
| | | | | | | | | | | | | | | | The BF526-EZBRD changed SDRAM chips between board revisions, so create a timing table that can accommodate both. Signed-off-by: Graf Yang <graf.yang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: fix typo in TRAS define in mem_init.h headerGraf Yang2009-06-221-1/+1
| | | | | | | | | | | | | | | | We defined SDRAM_tRAS to TRAS_4, but then wrongly defined SDRAM_tRAS_num to 3. Signed-off-by: Graf Yang <graf.yang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: unify memory map headersMike Frysinger2009-06-2216-350/+145
| | | | | | | | | | | | | | | | | | | | Many aspects of the Blackfin memory map is exactly the same across all variants. Rather than copy and paste all of these duplicated values in each header, unify all of these into the common Blackfin memory map header file. In the process, push down BF561 SMP specific stuff to the BF561 specific header to keep the noise down. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: stick the CPU name into boot image nameRobin Getz2009-06-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | Rather than use "Linux" in the boot image name (as this is redundant -- the image type is already set to "linux"), use the CPU name. This makes it fairly obvious when a wrong image is accidentally booted. Otherwise there is no kernel output and you waste time scratching your head wondering wtf just happened. Signed-off-by: Robin Getz <rgetz@blackfin.uclinux.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: update defconfigsMike Frysinger2009-06-2220-155/+272
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: decouple unrelated cache settings to get exact behaviorJie Zhang2009-06-2211-81/+176
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current cache options don't really represent the hardware features. They end up setting different aspects of the hardware so that the end result is to turn on/off the cache. Unfortunately, when we hit cache problems with the hardware, it's difficult to test different settings to root cause the problem. The current settings also don't cleanly allow for different caching behaviors with different regions of memory. So split the configure options such that they properly reflect the settings that are applied to the hardware. Signed-off-by: Jie Zhang <jie.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: update I-pipe patch levelPhilippe Gerum2009-06-221-2/+2
| | | | | | | | | | Signed-off-by: Philippe Gerum <rpm@xenomai.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: remove obsolete mcount support from I-pipe codePhilippe Gerum2009-06-223-76/+0
| | | | | | | | | | Signed-off-by: Philippe Gerum <rpm@xenomai.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: allow CONFIG_TICKSOURCE_GPTMR0 with interrupt pipelinePhilippe Gerum2009-06-223-27/+28
| | | | | | | | | | Signed-off-by: Philippe Gerum <rpm@xenomai.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: convert interrupt pipeline to irqflagsPhilippe Gerum2009-06-225-30/+177
| | | | | | | | | | Signed-off-by: Philippe Gerum <rpm@xenomai.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: allow people to select BF51x-0.1 silicon revMike Frysinger2009-06-221-1/+1
| | | | | | | | | | | | Now that 0.1 of the BF51x is coming out, allow people to build for it. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf526-ezbrd: set SPI flash resources to SST deviceGraf Yang2009-06-221-2/+2
| | | | | | | | | | | | | | The BF526-EZBRD has a SST SPI flash on it, not a ST Micro. Signed-off-by: Graf Yang <graf.yang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: fix accidental reset in some boot modesSonic Zhang2009-06-221-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | We read the SWRST (Software Reset) register to get at the last reset state, and then we may configure the DOUBLE_FAULT bit to control behavior when a double fault occurs. But if the lower bits of the register is already set (like UART boot mode on a BF54x), we inadvertently make the system reset by writing to the SYSTEM_RESET field at the same time. So make sure the lower 4 bits are always cleared. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: abstract irq14 lowering in do_irqMike Frysinger2009-06-221-18/+25
| | | | | | | | | | | | | | Split out the optional IRQ14 lowering code to further simplify the asm_do_IRQ() function and keep the ifdef nest under control. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: simplify irq stack overflow checkingMike Frysinger2009-06-221-15/+17
| | | | | | | | | | | | | | Take a page from x86 and abstract the stack checking out of the asm_do_IRQ() function so that the result is easier to digest. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: only build show_interrupts() when procfs is enabledMike Frysinger2009-06-221-0/+2
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: redo handling of bad irqsMike Frysinger2009-06-221-42/+11
| | | | | | | | | | | | | | | | | | | | With the common IRQ code initializing much more of the irq_desc state, we can't blindly initialize it ourselves to the local bad_irq state. If we do, we end up wrongly clobbering many fields. So punt most of the bad irq code as the common layers will handle the default state, and simply call handle_bad_irq() directly when the IRQ we are processing is invalid. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: update anomaly listsMike Frysinger2009-06-227-125/+178
| | | | | | | | | | | | Update anomaly headers to match latest released anomaly sheets. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
OpenPOWER on IntegriCloud