aboutsummaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2007-07-13sh: Revert __xdiv64_32 size change.Paul Mundt
It's only __div64_32 that needs the fix, __xdiv64_32 behaves as expected with the original size. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-07-13sh: Update r7785rp defconfig.Paul Mundt
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-07-13sh: Export div symbols for GCC 4.2 and ST GCC.Paul Mundt
GCC 4.2 can emit integer variants of the FP division routines, so these need to be exported in order to keep the modules happy. 4.1.x versions of the ST compiler have these things backported, and so also generate these symbols (whereas vanilla gcc 4.1.x does not), so handle the __GNUC_STM_RELEASE__ case to accomodate updated versions of the 4.1.x toolchain. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-07-12sh: fix race in parallel out-of-tree buildErik Johansson
Depending on which of the three dependencies for archprepare (in arch/sh/Makefile) get built first, the directory include/asm-sh may or may not exist when the maketools target is built. If the directory does not exist, awk will fail to generate machtypes.h. This patch fixes this by creating the directory before awk is executed. Signed-off-by: Erik Johansson <erik.johansson@motorola.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-07-12sh: Kill off dead mach.c for hp6xx.Kristoffer Ericson
Signed-off-by: Kristoffer Ericson <kristoffer.ericson@gmail.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-07-12sh: Update the alignment when 4K stacks are used.Robert P. J. Day
Use the newly added .bss.page_aligned section for aligning the stacks rather than THREAD_SIZE. Signed-off-by: Robert P. J. Day <rpjday@mindspring.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-07-12sh: Add a .bss.page_aligned section for 4K stacks.Paul Mundt
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-07-12sh: Don't let SH-4A clobber SH-4 CFLAGS.Paul Mundt
Older compilers don't support the -m4a{,nofpu} flags, which has the side-effect of allowing FP operations to be emitted. Switch this to incremental tuning, so we at least have -m4-nofpu as a fallback for the gcc3 toolchains. Without this, certain modules emit references to __udivsi3_i4 and __sdivsi3_i4. Reported-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-07-07sh: Drop -Wa,-dsp for DSP tuning.Paul Mundt
We already hand off the proper ISA variant with the dsp specifier appended, so we don't need to explicitly set -dsp. This causes some confusion with certain toolchains that are restricted to -dsp family opcodes artificially. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-07-07sh: Update dreamcast defconfig.Paul Mundt
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-07-07sh: Select IPR-IRQ for SH7091.Paul Mundt
Fixes a compile failure for the Dreamcast. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-07-06sh: Correct __xdiv64_32/div64_32 return value size.Paul Mundt
These should be returning a uint32_t, whereas they were erroneously returning a u64 before. As the register sizes are 32-bits, this doesn't really make a lot of sense. Reported-by: Katsuya MATSUBARA <matsu@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-07-06sh: Add cpu and mach links to CLEAN_FILES.Paul Mundt
These weren't being cleaned up, so add them to the CLEAN_FILES. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-20Merge branch 'x3'Paul Mundt
2007-06-20sh: Preliminary support for the SH-X3 CPU.Paul Mundt
This adds basic support for UP SH-X3. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-20sh: Hook up hard_smp_processor_id() for INTC2 block.Paul Mundt
We need to know the CPU ID in order to calculate the mask and ack registers effectively. Stub this in for UP. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-20sh: Update se7722 defconfig.Paul Mundt
Hook up the multi-node stuff for the SE7722. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-20sh: Fix up cf-enabler dependency for SE boards.Paul Mundt
This was using CONFIG_SH_SOLUTION_ENGINE, where we really wanted CONFIG_SOLUTION_ENGINE. While we're at it, move the whole CF enabler mess somewhere better suited. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-18sh: Check oops_may_print() in unhandled fault.Paul Mundt
Only print out pgd/pte data in the oops path if oops_may_print() holds true. Follows the i386 implementation. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-15sh: Update SH-2/SH-2A defconfigs.Paul Mundt
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-15sh: rework ipr codeMagnus Damm
This patch reworks the ipr code by grouping the offset array together with the ipr_data structure in a new data structure called ipr_desc. This new structure also contains the name of the controller in struct irq_chip. The idea behind putting struct irq_chip in there is that we can use offsetof() to locate the base addresses in the irq_chip callbacks. This strategy has much in common with the recently merged intc2 code. One logic change has been made - the original ipr code enabled the interrupts by default but with this patch they are all disabled by default. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-15sh: Only support PMB for SH-X cores.Paul Mundt
We don't have a PMB for SH-X2 or later, so only enable it for the few CPUs that support it. Fixes up the boot for SH4AL-DSP. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-15sh: rework intc2 codeMagnus Damm
The shared intc2 code currently contains cpu-specific #ifdefs. This is a tad unclean and it prevents us from using the shared code to drive board-specific irqs on the se7780 board. This patch reworks the intc2 code by moving the base addresses of the intc2 registers into struct intc2_desc. This new structure also contains the name of the controller in struct irq_chip. The idea behind putting struct irq_chip in there is that we can use offsetof() to locate the base addresses in the irq_chip callbacks. One logic change has been made - the original shared intc2 code enabled the interrupts by default but with this patch they are all disabled by default. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-11sh: Fix up the math-emu build.Paul Mundt
math-emu wasn't converted for the trap_no/errno_code changes, get it building again. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-11sh: Kill off broken dma page ops.Paul Mundt
There's no point in keeping these around, they've been broken for some time, and the dmaenging/async_tx framework provides a far more reasonable interface. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-11sh: Fixup misaligned data for sh2 lockdep.Paul Mundt
lockdep/irqflags tracing on SH-2 ends up with a misaligned branch, fix it. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-11sh: Tidy up dependencies for SH-2 build.Paul Mundt
SH-2 can presently get in to some pretty bogus states, so we tidy up the dependencies a bit and get it all building again. This gets us a bit closer to a functional allyesconfig and allmodconfig, though there are still a few things to fix up. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-11sh: Provide a defconfig for R7780MP.Yoshihiro Shimoda
Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Kill off dead SH7604 support.Paul Mundt
This was added during 2.5.x, but was never moved along. This can easily be resurrected if someone has one they wish to work with, but it's not worth keeping around in its current form. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: memory hot-add for sparsemem users support.Paul Mundt
This enables simple hotplug support for sparsemem users. Presently this only permits memory being added in to node 0 on ZONE_NORMAL. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Fix up cpu to node mapping in sysfs.Paul Mundt
Currently cpu_to_node() is always 0 in the UP case, though we do want to have the CPU association linked in under sysfs even in the cases where we're only on a single CPU. Fix this up, so we have the cpu0 link on all of the available nodes that don't already have a CPU link of their own. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Fix the SH7722 flatmem build.Paul Mundt
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Make NUMA depend on sparsemem.Paul Mundt
The only platforms that are supporting NUMA are doing so via sparsemem, so update the dependency. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: URAM node support for SH7722.Paul Mundt
This adds the URAM block on SH7722 as a separate node. Sparsemem is required for this, or it can simply be disabled by explicitly selecting a flatmem model. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Support for multiple nodes.Paul Mundt
This adds basic support for multiple nodes on SH machines. This is primarily useful for boards with many different memory blocks that are otherwise unused (SH7722/SH7785 URAM and so forth). Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Use asm/sections.h for linker section symbols.Paul Mundt
Kill off a bunch of externs, and use sections.h instead.. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Fix up max_zone_pfns[] with multiple nodes.Paul Mundt
Currently using multiple nodes tramples the ZONE_NORMAL max low pfn, tidy up the logic a bit to get it all working as expected. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Wire up mempolicy syscalls.Paul Mundt
Wire up mbind and get/set_mempolicy() in their reserved places. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Tidy compiler warnings for SH-2A build.Paul Mundt
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Wrap CPU tuning through cc-option.Paul Mundt
Some compilers don't support the explicit CPU tuning, while binutils is still able to handle the special subtype-specific opcodes. Make the CFLAG optional, falling back on the compiler default if nothing better exists. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Enable IPR-IRQ for SH7206.Paul Mundt
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Mark sparsemem regions present earlier.Paul Mundt
We have to call in to sparse_memory_present_with_active_regions() earlier in order for sparsemem to be happy. This was being called too late, and was causing troubles with the platforms that needed to enable sparsemem. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Register multiple nodes in topology_init().Paul Mundt
If we have multiple nodes, register these at topology_init() time. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Allow for bootmem debug support.Paul Mundt
Handy for debugging bootmem troubles. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: sparsemem support.Paul Mundt
This implements basic sparsemem support for SH. Presently this only uses static sparsemem, and we still permit explicit selection of flatmem. Those boards that want sparsemem can select it as usual. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Add L-BOX RE2 to mach-types.Nobuhiro Iwamatsu
Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Align .machvec.init section on a 4-byte boundary.Takashi YOSHII
.machvec.init can be misaligned with the recent machvec changes, forcibly align it on the boundary that it expects, as before. Signed-off-by: Takashi YOSHII <takashi.yoshii.ze@hitachi.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Fix SH-4 CPU selects.Paul Mundt
Now that select no longer works for selecting the "closest" CPU, we have to explicitly reference the precise sub-type in the few places where it actually matters (presently only setup code and some legacy sh-sci cruft). Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Rip out special unknown machvec.Paul Mundt
This kills off the BareCPU board as a "special" machvec, rather, we leave this as a default for when no other vector is available, or when we want to use it in combination with other vectors for testing with generic ops. As sh_mv is copied out anyways (or overloaded when an alternate vector is explicitly selected), this doesn't consume any additional memory. The generic machvec can be forcibly selected with sh_mv=generic, or by not having any other boards enabled. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2007-06-08sh: Kill off machvec aliases.Paul Mundt
We now throw all of the machvecs in to .machvec.init and either select one on the command line, or copy out the first (and usually only) one to sh_mv. The rest are freed as usual. This gets rid of all of the silly sh_mv aliasing and makes the selection explicit rather than link-order dependent. Signed-off-by: Paul Mundt <lethal@linux-sh.org>