Commit Graph
100 Commits
Author SHA1 Message Date
Sam Ravnborg 87fa05aeb3 sparc: Use generic idle loop
Add generic cpu_idle support

sparc32:
- replace call to cpu_idle() with cpu_startup_entry()
- add arch_cpu_idle()

sparc64:
- smp_callin() now include cpu_startup_entry() call so we can
  skip calling cpu_idle from assembler
- add arch_cpu_idle() and arch_cpu_idle_dead()

Signed-off-by: Sam Ravnborg <[email protected]>
Reviewed-by: "Srivatsa S. Bhat" <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Acked-by: David Miller <[email protected]>
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Thomas Gleixner <[email protected]>
2013-04-13 21:36:27 +02:00
Sam Ravnborg cbf1ef6b33 sparc: use asm-generic version of types.h
In sparc headers we use the following pattern:

    #if defined(__sparc__) && defined(__arch64__)

    sparc64 specific stuff

    #else

    sparc32 specific stuff

    #endif

In types.h this pattern was not followed and here
we only checked for __sparc__ for no good reason.
It was a left-over from long time ago.

I checked other architectures - and most of them
do not have any such checks. And all the recently
merged versions uses the asm-generic version.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2013-03-31 19:29:13 -04:00
Sam Ravnborg 6e51f85730 bbc_i2c: fix section mismatch warning
Fix following warning:

WARNING: drivers/sbus/char/bbc.o(.text+0x674): Section mismatch in reference from the function bbc_i2c_probe() to the function .init.text:T.463()
The function bbc_i2c_probe() references the function __init T.463().
This is often because bbc_i2c_probe lacks a __init
annotation or the annotation of T.463 is wrong.

bbc_i2c_probe() referenced the inlined attach_one_i2c().
As probe may be called after init drop __init annotations
on all functions used by bbc_i2c_probe()

The warning was seen with a sparc64 defconfig build

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2013-03-31 19:29:12 -04:00
Sam Ravnborg a2d34dd412 sparc: use generic headers
Use "generic-y" to add generic headers where possible

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2013-03-31 19:29:12 -04:00
Sam Ravnborg c4619bc6fa kbuild: fix make headers_check with make 3.80
Commit 10b63956 ("UAPI: Plumb the UAPI Kbuilds into the user header
installation and checking") introduced a dependency of make 3.81
due to use of $(or ...)

We do not want to lift the requirement to gmake 3.81 just yet...
Included are a straightforward conversion to $(if ...)

Bisected-and-tested-by: Tetsuo Handa <[email protected]>
Cc: David Howells <[email protected]>
Signed-off-by: Sam Ravnborg <[email protected]>
Cc: <[email protected]> [v3.7+]
Signed-off-by: Michal Marek <[email protected]>
2013-03-05 15:02:57 +01:00
Sam Ravnborg f9fd3488f6 sparc32: refactor smp boot
Introduce a common smp_callin() function to call
from trampoline_32.S.
Add platform specific functions to handle the
platform details.

This is in preparation for a patch that will
unify the smp boot stuff for all architectures.
sparc32 was significantly different to warrant
this patch in preparation.

Signed-off-by: Sam Ravnborg <[email protected]>
Acked-by: David S. Miller <[email protected]>
Cc: "Srivatsa S. Bhat" <[email protected]>
Acked-by: Srivatsa S. Bhat <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2013-02-20 13:36:50 -08:00
Sam Ravnborg b7c13f76fd sparc: remove __devinit, __devexit annotations
__devinit, __devexit annotations are nops - so drop them.
Likewise for __devexit_p.

Adjusted alignment of arguments when needed.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2013-01-12 15:28:45 -08:00
Sam Ravnborg a0ce3ba03f sparc32: delete dead code in show_mem()
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:17 -07:00
Sam Ravnborg 9a4d5b93cb sparc32: move kmap_init() to highmem.c
Try to keep highmem support in a more central place.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:17 -07:00
Sam Ravnborg d8a1b2b94c sparc32: move probe_memory() to srmmu.c
Only one user so move it to the file using it.
It had nothing to do in fault_32.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:17 -07:00
Sam Ravnborg 2acdf2cefe sparc32: drop unused BAD_PAGE stuff
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:16 -07:00
Sam Ravnborg b585e8551b sparc32: centralize all mmu context handling in srmmu.c
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:16 -07:00
Sam Ravnborg 59b00c792f sparc32: drop quicklist
The quicklist stuff is not used anymore - drop it.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:16 -07:00
Sam Ravnborg cc52aea9dc sparc32: drop sparc model check in paging_init
We already check the model in head_32.S so no need to
repeat the check here

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:16 -07:00
Sam Ravnborg c966a337fa sparc32: drop sparc_unmapped_base
The base is always the same so no need to use a variable for this.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:16 -07:00
Sam Ravnborg d884297aca sparc32,leon: drop leon_init()
This function was only used to set of_pdt_build_more to leon_node_init().
But the leon_node_init() was a nop as prom_amba_init was never assigned.

Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:16 -07:00
Sam Ravnborg 1b6d06d820 sparc32: drop fixmap.h
sparc32 does not support fixmaps - so do not pretend so by
having the fixmap.h file.
Move relevant parts to vaddrs.h.

I looked at simplifying this even more but failed to understand
the reasoning behind the extra guard page involved and due to
missing testing possibilities only the trivial conversion was done.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:16 -07:00
Sam Ravnborg c00db32122 sparc32: fixmap.h cleanup
Remove all unused stuff from fixmap.h
It is only used for highmem - sparc32 has no fixmap support.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:16 -07:00
Sam Ravnborg 5bbeed12bd sparc32: drop unused kmap_atomic_to_page
No users left of this function - drop it.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:15 -07:00
Sam Ravnborg 881e02d298 sparc32: drop swapper_pg_dir
We save one page of RAM dropping swapper_pg_dir.
It was only used for an assignment in init-mm.c and we
redid this later in srmmu.c anyway.

This is likely a left-over from the sun4c removal.

To avoid a dummy variable we use a simple #define swapper_pg_dir NULL

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:15 -07:00
Sam Ravnborg 7cdfbc74c8 sparc32: beautify srmmu_inherit_prom_mappings()
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:15 -07:00
Sam Ravnborg f71a2aacc6 sparc32: use void * in nocache get/free
This allowed to us to kill a lot of casts,
with no loss of readability in any places

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:15 -07:00
Sam Ravnborg 605ae96240 sparc32: fix coding-style in srmmu.c
Fix the most annoying issues that distracts me:
- whitespace
- missing space after "if" and "while"
- spaces around operators
and similar simple things.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:15 -07:00
Sam Ravnborg 4a049b0341 sparc32: sort includes in srmmu.c
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:15 -07:00
Sam Ravnborg 32442467ed sparc32: define a few srmmu functions __init
They are only used during early init so lets get rid of them
after init to save some RAM.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-07-26 16:46:15 -07:00
Sam Ravnborg e49e6ff553 sparc: fix sparc64 build due to leon.h inclusion
Stephen Rothwell <[email protected]> reported following error:
In file included from arch/sparc/kernel/prom_common.c:26:0:
arch/sparc/include/asm/leon.h:221:9: error: unknown type name 'irq_flow_handler_t'
arch/sparc/include/asm/leon.h:224:10: error: unknown type name 'irq_flow_handler_t'

Fix this by:
1) Avoid including leon.h in prom_commen.h (not needed)
2) Include irq.h in leon.h to avoid the missing symbol error

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Stephen Rothwell <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-29 12:47:38 -07:00
Sam Ravnborg 4fd8bc6718 sparc32: remove unused variable in head_32.S
It was assigned, but never referenced later.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-29 12:47:37 -07:00
Sam Ravnborg 1ddb22e13d sparc32,leon: fix leon bootup
head_32.S failed to set cputypval for leon, causing boot to fail.
The boot failed because we failed to recognize this was a LEON
cpu so we did not preoperly run-time patch the the kernel.
This resulted in an early crash.

Reported-by: Daniel Hellstrom <[email protected]>
Tested-by: Daniel Hellstrom <[email protected]>
Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Konrad Eisele <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-29 12:47:36 -07:00
Sam Ravnborg 95835335a3 sparc32: support leon + sun in dma_make_coherent()
No need for two implementations - we check the cpu model.

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:54 -07:00
Sam Ravnborg 87e677c412 sparc32,leon: always support leon in ioport
Unconditially define pci32_dma_ops as this is used
for leon.

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:53 -07:00
Sam Ravnborg 556626adf1 sparc32,leon: always include leon_pmc in build
Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:53 -07:00
Sam Ravnborg 3732106a1a sparc32: refactor cpu_idle()
With the removal of sun4c we can use the same cpu_idle()
implementation on UP and SMP.
This also fix it so we use the same version independent on LEON
enabled or not.

V2: Fixed whitespace issue pointed out by Josip Rodin.

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Josip Rodin <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:52 -07:00
Sam Ravnborg 805918f80f sparc32: srmmu_probe now knows about leon too
Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:51 -07:00
Sam Ravnborg b0acd2495e sparc32: drop LEON hack for ASI_M_MMUREGS
All users of MMUREGS ASI is now LEON/SUN aware,
so this is no longer required.

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:50 -07:00
Sam Ravnborg 6729cf7967 sparc32: introduce run-time patching of srmmu access functions
LEON uses a different ASI than SUN for MMUREGS

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:49 -07:00
Sam Ravnborg 1ec8cf6233 sparc32: introduce support for run-time patching for all shared assembler code
All users of MMUREGS ASI in kernel/ now uses run-time patching.

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:49 -07:00
Sam Ravnborg 080f88837b sparc32,leon: fix section mismatch warning
Fix following warning:

WARNING: arch/sparc/kernel/built-in.o(.cpuinit.text+0x9f4): Section mismatch in reference from the function leon_callin() to the function .init.text:leon_configure_cache_smp()
The function __cpuinit leon_callin() references
a function __init leon_configure_cache_smp().
If leon_configure_cache_smp is only used by leon_callin then
annotate leon_configure_cache_smp with a matching annotation.

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:48 -07:00
Sam Ravnborg 3107948848 sparc32,leon: always include leon_smp + leon_mm in build
Fix-up leon specific assembler to use ASI_LEON_MMUREGS

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:47 -07:00
Sam Ravnborg 5561cd2698 sparc32,leon: always include leon_kernel in build
Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:46 -07:00
Sam Ravnborg 93bb32f632 sparc32,leon: clean up leon.h
- Drop unused stuff accumulated over time
- Drop non-leon stuff
- Include almost all of the header unconditionally

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:45 -07:00
Sam Ravnborg d87d8c11f3 sparc32: handle leon in cpu.c
A few hardcoded constant were replaced by symbolic
versions to improve readability

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:45 -07:00
Sam Ravnborg b08b5c9c9b sparc32: handle leon in irq_32.c
Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:44 -07:00
Sam Ravnborg 5b8b93c4ab sparc32: add support for run-time patching of leon/sun single instructions
This will be used to handle that MMUREGS has different ASI for SUN and LEON.
This is the infrastructure only - users will come later.

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:43 -07:00
Sam Ravnborg 4efb55e691 sparc32: introduce sparc32_start_kernel called from head_32.S
This gives us a C hook before we call start_kernel()

Signed-off-by: Sam Ravnborg <[email protected]>
2012-05-27 23:52:42 -07:00
Sam Ravnborg 30005efc98 sparc32: implement proper LEON support in head_32 (after highmem)
We use the compatibility property to determine the
sun models. For leon we use psr.impl and ignore the
result of the getprops call.

Include a hack to allow build as the support code
is not yet converted.

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:41 -07:00
Sam Ravnborg 7b372d6582 sparc32: implement proper LEON support in head_32 (before highmem)
Use PSR to check if the CPU is LEON and jump to
LEON specific code in this case.

Added a few constants to psr.h to increase readability.

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Konrad Eisele <[email protected]>
2012-05-27 23:52:41 -07:00
Sam Ravnborg ec24158eac sparc32: string and whitespace cleanup in head_32.S
A few strings have been adopted to show more relevant info.

Julian Calaby <[email protected]> pointed out one
that I would otherwise have missed.

Signed-off-by: Sam Ravnborg <[email protected]>
2012-05-27 23:52:40 -07:00
Sam Ravnborg 29af0ebaa2 sparc32: use the common implementation of alloc_thread_info_node()
With sun4c removed we can fall-back to the common implementation.

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Acked-by: Thomas Gleixner <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-22 12:02:56 -07:00
Sam Ravnborg e47b65b032 net: drop NET dependency from HAVE_BPF_JIT
There is no point having the NET dependency on the select target, as it
forces all users to depend on NET to tell they support BPF_JIT.  Move
the config option to the bottom of the file - this could be a nice place
also for future "selectable" config symbols.

Fix up all users to drop the dependency on NET now that it is not
required to supress warnings for non-NET builds.

Reported-by: Linus Torvalds <[email protected]>
Signed-off-by: Sam Ravnborg <[email protected]>
Acked-by: David Miller <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
2012-05-21 12:50:12 -07:00
Sam Ravnborg 1edc17832d sparc32: use flushi when run-time patching in per_cpu_patch
Davis S. Miller wrote:
"
The way we do that now is overkill.  We only needed to use the MMU
cache ops when we had sun4c around because sun4c lacked support for
the "flush" instruction.

But all sun4m and later chips have it so we can use it
unconditionally.

So in the per_cpu_patch() code, get rid of the cache ops invocation,
and instead execute a "flush %reg" after each of the instruction patch
assignments, where %reg is set to the address of the instruction that
was stored into.

Perhaps take the flushi() definition from asm/cacheflush_64.h and
place it into asm/cacheflush.h, then you can simply use that.
"

Implemented as per suggestion.
Moved run-time patching before we call paging_init(),
so helper methods in paging_init() may utilise run-time patching too.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-20 13:33:36 -07:00
Sam Ravnborg 9cd5f82246 sparc32: fix cpuid_patch run-time patching
We hang forever when trying to do run-time patching of instructions
identified by the cpuid_patch section

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-20 13:33:35 -07:00
Sam Ravnborg 8578149904 sparc32: drop unused inline functions in srmmu.c
When decelared inline the compiler does not warn
about unused functions.
But they are not used so drop them.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-19 23:27:40 -07:00
Sam Ravnborg 3d5f7d37c8 sparc32: drop unused functions in pgtsrmmu.h
One function was only used by leon - move it to a leon specific file.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-19 23:27:39 -07:00
Sam Ravnborg accf032cfa sparc32,leon: move leon mmu functions to leon_mm.c
We already have a leaon specific file - so
keep all the laon stuff in one place.

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Konrad Eisele <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-19 23:27:38 -07:00
Sam Ravnborg f6678d3b41 sparc32,leon: remove duplicate definitions in leon.h
Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Konrad Eisele <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-19 23:27:37 -07:00
Sam Ravnborg 123521e414 sparc32,leon: remove duplicate UART register definitions
The registers are defined in leon_amba too.

Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Konrad Eisele <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-19 23:27:37 -07:00
Sam Ravnborg 28b7723b39 sparc32,leon: move leon ASI definitions to asi.h
Signed-off-by: Sam Ravnborg <[email protected]>
Cc: Konrad Eisele <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-19 23:27:36 -07:00
Sam Ravnborg c64d7524b5 sparc32: move trap table to a separate file
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-19 23:27:25 -07:00
Sam Ravnborg b979542d62 sparc64: renamed ttable.S to ttable_64.S
To allow us to add ttable_32.S

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-19 23:26:41 -07:00
Sam Ravnborg de36e66d5f sparc32: add ucmpdi2
Based on copy from microblaze add ucmpdi2 implementation.
This fixes build of niu driver which failed with:

drivers/built-in.o: In function `niu_get_nfc':
niu.c:(.text+0x91494): undefined reference to `__ucmpdi2'

This driver will never be used on a sparc32 system,
but patch added to fix build breakage with all*config builds.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-19 15:23:57 -07:00
Sam Ravnborg e1d7de8377 sparc: introduce arch/sparc/Kbuild
This allows us to do:

    make arch/sparc/

to build the core part of the sparc kernel.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-15 13:18:08 -07:00
Sam Ravnborg 3462285df9 sparc: remove obsolete documentation
When we killed btfixup this readme no longer has any value.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-15 13:15:51 -07:00
Sam Ravnborg 38753586a3 sparc: clean up Makefile
- delete unused variables
- align assignments
- drop stale comments
- kill use of "\" for line continuation

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-15 12:44:12 -07:00
Sam Ravnborg 04d0ca44eb sparc32: delete muldiv.o from Makefile
The source file is no more..

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-15 12:44:11 -07:00
Sam Ravnborg 70168dfa1c sparc32: cleanup mm/fault_32.c
- remove unused variables
- fix coding style issues that hurts my eyes

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-15 10:43:48 -07:00
Sam Ravnborg 51f19cfa76 sparc32: drop build time btfixup patching
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-14 14:05:10 -07:00
Sam Ravnborg 50544bce4c sparc32: remove runtime btfix support
- remove all uses of btfixup header
- remove the btfixup header
- remove the btfixup code

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-14 14:05:09 -07:00
Sam Ravnborg 08c9388f58 sparc32: remove remaining users of btfixup
Use sparc_config to hold the last two function pointers.  There was no
point generating dedicated _ops structures only for these.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-14 14:05:08 -07:00
Sam Ravnborg 4ba22b16bb sparc32: move smp ipi to method ops
I ended up renaming set_cpu_int to send_ipi to
be consistent all way around.
send_ipi was moved to the *_smp.c files so
we could call the relevant method direct,
without any _ops indirection.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-14 14:05:07 -07:00
Sam Ravnborg 0f031b3f26 sparc32: drop unused clear_cpu_int
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-13 12:51:57 -07:00
Sam Ravnborg 41eb17ce98 sparc32: drop unused set_irq_udt
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-13 12:51:56 -07:00
Sam Ravnborg fb6f66f405 sparc32: drop btfixup in page_32.h
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-13 12:51:55 -07:00
Sam Ravnborg ff14c07327 sparc32: drop unused prototype from timer_32.h
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-13 12:51:54 -07:00
Sam Ravnborg b796c6da51 sparc32: drop btfixup in mmu_context_32.h
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-13 12:51:53 -07:00
Sam Ravnborg 9701b264d3 sparc32: drop btfixup in pgtable_32.h
Only one function left using btfixup.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-13 12:51:53 -07:00
Sam Ravnborg 642ea3ed9c sparc32: drop btfixup in pgalloc_32.h
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-13 12:51:52 -07:00
Sam Ravnborg c78896f00d sparc32: drop unused code in process_32
It is commented out using #ifdef 0 / #endif,
and has been so for a long time.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-12 13:44:22 -07:00
Sam Ravnborg a3c5c6637b sparc32: drop loadmmu
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-12 13:30:49 -07:00
Sam Ravnborg 6066fc3dc4 sparc32: drop unused type/extern
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-12 11:32:04 -07:00
Sam Ravnborg 3774348770 sparc32: drop btfixup for check_pgt_cache
It is a noop for srmmu - so use a define as sparc64 does.
And drop all sparc callers - no need to confuse our-self
be calling a noop function.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-12 11:32:04 -07:00
Sam Ravnborg 34d4accfe0 sparc32: drop btfixup for switch_mm
This revealed that the implementation of switch_mm
had a bogus extra argument.
No harm as said argument was never used - but confusing.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-12 11:32:03 -07:00
Sam Ravnborg 144e988dd2 sparc32: code cleanup in floppy glue
Small cleanup to improve readability.
Dropped one test for sparc_cpu_model -
we already know that only sun4m support floppy.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-12 11:32:02 -07:00
Sam Ravnborg 918f832290 sparc32: fix warning in floopy glue
Fix following warning:
arch/sparc/include/asm/floppy_32.h:342:5: warning: 'op' may be used uninitialized in this function

The warning are legitimite and we can end up using op uninitialized.
This fixes build with my gcc on UP.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-12 11:32:01 -07:00
Sam Ravnborg d6ea55733d sparc32: simpler cputype check in head_32.S
We know this is not a sun4/sun4c - as we checked earlier.
So no need to repeat the check.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-12 11:32:00 -07:00
Sam Ravnborg eb06f47630 sparc32: drop extra getprop call during boot
It was present only to support the sun4, sun4c boxes which
do not have the "compatible" property in the root-node
of the device tree.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-12 11:32:00 -07:00
Sam Ravnborg 142cc039bd sparc32: drop prom version check in head_32.S
We already sorted out if we are a sun4/sun4c and halted.
So no need to check the prom version as we know this is
a v2 or v3 as sun4m, sun4d etc. does not use a v1 prom.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-12 11:31:59 -07:00
Sam Ravnborg 1b4cb70ec8 sparc32: remove sun4c specific variables from head_32.S
This gives us back 7 pages...

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-12 11:31:58 -07:00
Sam Ravnborg afaedde7c9 sparc32: use inline versions of pgprot_noncached, pte_to_pgoff and pgoff_to_pte
We no longer have different versions of these so use a few simple
static inline functions.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:29:10 -07:00
Sam Ravnborg e7b7e0c356 sparc32: drop btfixup for alloc_thread_info_node/free_thread_info
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:29:09 -07:00
Sam Ravnborg 323206a1d5 sparc32: drop sun4c bits from head_32.S
As we no longer support sun4c we can remove all the code to
support remapping the kernel in head_32.S.
We also try to tell the user that the machine is not support,
in case someone try to boot the kernel on a sun4c one day

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:29:00 -07:00
Sam Ravnborg 3c23a7665b sparc32: drop test for sun4c in signal_32
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:27:53 -07:00
Sam Ravnborg ef136bc91e sparc32: drop sun4c user stack checking routine
With this we no longer do any run-time patchings of traps.
So drop the function + macro to support this.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:27:52 -07:00
Sam Ravnborg e098ff92f6 sparc32: drop sun4c stack checking routine
And drop run-time patching too.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:27:51 -07:00
Sam Ravnborg 054768a132 sparc32: drop sun4c window overflow stack checking routine
Also drop run-time patching for srmmu

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:27:50 -07:00
Sam Ravnborg 28de2f7339 sparc32: drop sun4c specific stack validation
This allows us to kill run-time patching for this function too

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:27:50 -07:00
Sam Ravnborg 1ee0e14407 sparc32: delete pgtsun4c.h
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:27:49 -07:00
Sam Ravnborg 582a0baee5 sparc32: remove all uses of ARCH_SUN4C
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:27:48 -07:00
Sam Ravnborg 593fc6ea47 sparc32: drop sun4c specific ___xchg32 implementation
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:27:47 -07:00
Sam Ravnborg 306f123162 sparc32: remove sun4c traps
We used to runtime patch the trap table for srmmu.
With the removal of sun4c support this is no longer required.

With the sun4c trap removed we can remove all the referenced
trap handling which is sun4c specific.
This also allows us to get rid of the nosun4c.c file that
contained only dummy functions/data.

Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:27:46 -07:00
Sam Ravnborg e7eaf5b8ab sparc32: remove calls to sun4c dummy mm inits functions
Signed-off-by: Sam Ravnborg <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
2012-05-11 19:27:45 -07:00