LinuxPPC-Dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* Re: Kernel 2.6 on MPC8xx performance trouble...
From: David Jander @ 2005-10-31 13:08 UTC (permalink / raw)
  To: linuxppc-embedded
In-Reply-To: <003501c5de1a$be79b390$0301a8c0@chuck2>

On Monday 31 October 2005 13:58, Mark Chambers wrote:
>[...]
> > No, sir, no cache detected !
> >
> > Where do I have to look now?
>
> Could the cache be in writethrough mode? (Instead of writeback)

Good point. I just checked the same test, but reading instead of writing. Same 
result, no cache detected.

I know how to change cache policy in u-boot, but does the kernel change that? 
If so, where?

Greetings,

-- 
David Jander

^ permalink raw reply

* Re: Kernel 2.6 on MPC8xx performance trouble...
From: Mark Chambers @ 2005-10-31 12:58 UTC (permalink / raw)
  To: David Jander, linuxppc-embedded
In-Reply-To: <200510310921.34696.david.jander@protonic.nl>

>
> I have made another test in the meantime, trying to check if cache is
working.
> <snip>
> No, sir, no cache detected !
>
> Where do I have to look now?
>

Could the cache be in writethrough mode? (Instead of writeback)

Mark Chambers

^ permalink raw reply

* Re: ayuda
From: Juan P. Holder @ 2005-10-31 12:23 UTC (permalink / raw)
  To: linuxppc-dev
In-Reply-To: <BAY14-F28EE9562AD50489238A8C8B96D0@phx.gbl>

[-- Attachment #1: Type: text/plain, Size: 684 bytes --]

Buenas como va, yo hace poco compre un ibook G4, instale debian sarge
para ppc y anduvo muy bien salvo en algunos detalles, lo que voy a
probar que me dijeron es genial es UBUNTU, SI PODES probalo.. yo lo
probare estos dias y te cuento!

Jean Pierre

El dom, 30-10-2005 a las 00:26 +0000, Doug Carrillo escribió:

> Hola, tengo una G3 PPC, deseo instalar linux
> 
> Cual distribucion me sirve?
> 
> _________________________________________________________________
> MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/
> 
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev@ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-dev
> 

[-- Attachment #2: Type: text/html, Size: 1344 bytes --]

^ permalink raw reply

* [PATCH]     ppc32: fix: swallowed chars when booting.
From: Heiko Schocher @ 2005-10-31 11:29 UTC (permalink / raw)
  To: linuxppc-dev

Hello,

on a MPC8260 based Board, i lost some chars on the SMC2
Console, when booting the kernel. The following Patch
will fix this.

thanks
Heiko Schocher

Signed-off-by: Heiko Schocher <hs@denx.de>

---

 drivers/serial/cpm_uart/cpm_uart_core.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/drivers/serial/cpm_uart/cpm_uart_core.c 
b/drivers/serial/cpm_uart/cpm_uart_core.c
index 4c3ea05..ac05ee9 100644
--- a/drivers/serial/cpm_uart/cpm_uart_core.c
+++ b/drivers/serial/cpm_uart/cpm_uart_core.c
@@ -557,6 +557,11 @@ static void cpm_uart_set_termios(struct
                 * present.
                 */
                prev_mode = smcp->smc_smcmr;
+                /* Wait for all the BDs marked sent */
+                while(!cpm_uart_tx_empty(port)) {
+                        set_current_state(TASK_UNINTERRUPTIBLE);
+                        schedule_timeout(4);
+                }
                smcp->smc_smcmr = smcr_mk_clen(bits) | cval | SMCMR_SM_UART;
                smcp->smc_smcmr |= (prev_mode & (SMCMR_REN | SMCMR_TEN));
        } else {

^ permalink raw reply related

* [PATCH] ppc32:  Fix SCC Uart write problem after 2. open()
From: Heiko Schocher @ 2005-10-31 10:53 UTC (permalink / raw)
  To: linuxppc-dev

Hello,

on a MPC8260 based Board, i succesfully wrote chars
over a SCC in UART Mode, but after i closed the port
and opened it again, the write() call failed! 
(cpm_uart_tx_empty()returns continually 0).
The following Patch will fix this problem.

thanks
Heiko Schocher

---

 drivers/serial/cpm_uart/cpm_uart_core.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/drivers/serial/cpm_uart/cpm_uart_core.c 
b/drivers/serial/cpm_uart/cpm_uart_core.c
index 25825f2..4c3ea05 100644
--- a/drivers/serial/cpm_uart/cpm_uart_core.c
+++ b/drivers/serial/cpm_uart/cpm_uart_core.c
@@ -445,6 +445,10 @@ static void cpm_uart_shutdown(struct uar
                /* Shut them really down and reinit buffer descriptors */
                cpm_line_cr_cmd(line, CPM_CR_STOP_TX);
                cpm_uart_initbd(pinfo);
+               if (IS_SMC(pinfo))
+                       cpm_uart_init_smc(pinfo);
+               else
+                       cpm_uart_init_scc(pinfo);
        }
 }

^ permalink raw reply related

* Re: exception vectors
From: Ingmar @ 2005-10-31  9:58 UTC (permalink / raw)
  To: Hollis Blanchard; +Cc: linuxppc-dev list
In-Reply-To: <2828913a7186e850887d415a8311dc44@penguinppc.org>

On Sun, 30 Oct 2005 20:28:49 -0600, Hollis Blanchard wrote
> On Oct 30, 2005, at 6:35 PM, Ingmar wrote:
> >
> > I am trying to overwrite the exception vector space of an ibook G4 :).
> 
> Why?
> 

For my thesis project I am porting the Minix (v3) OS.

> > I have set up (for every exception) a small piece of code, that's a 
> > prefix of a
> > handler to be called. My problem is, that writing the small chunks 
> > of code to
> > the exception vector space gives no problem(so it seams) but writing 
> > all the
> > pieces of code as one chunk gives a exception [dsi, dsisr 0x42000000], 
> > this
> > indicates a store problem.
> 
> Code please. You're just calling memcpy?

I have done different methods (lots of code),
 - as a test just setting the memory, with memset,
 - custom copying word by word, flushing the cache while going,
 - flushing the cache afterwards,

the results are not always what I excected, the memset works if I don't set to
much like from 0x0 – 0x200. The copying would be the complete block.

> > I have tried different modes of copying, mmu on/off, also chanced the 
> > WING bits,
> > switched the exception prefix on.
> 
> You could not have gotten a DSI if you disabled the MMU...

Oke, than this is one I am sure of now, thanks :)

> > I don't believe putting the exception vectors to there place one by 
> > one is the
> > right way, in the Linux kernel the kernel get relocated and the code 
> > comes into
> > place. I have taken this as an example, unfortunately to to result :(..
> 
> So you are not trying to overwrite Linux's functioning exception 
> handlers, but rather trying to write your own OS?

Yes :).

> >  - Am I overlooking something?
> >  - Is the a standard way to overwrite the exception vector space of 
> > a powerpc?
> 
> Do you think this is a common task? :)

No the task maybe not, but the method could be,
 - I am sure (now) that the mmu must be off,
 - copying must be done with flushing the caches,

> -Hollis

Thanks
  Ingmar.

^ permalink raw reply

* Re: Kernel 2.6 on MPC8xx performance trouble...
From: David Jander @ 2005-10-31  9:31 UTC (permalink / raw)
  To: linuxppc-embedded
In-Reply-To: <20051028203727.76C2C353E3E@atlas.denx.de>

On Friday 28 October 2005 22:37, Wolfgang Denk wrote:
>[...]
> > They are just integers with fixed start values. These are in the loop, so
> > it's not an empty loop and hopefully the compiler won't out-optimize it
> > so easily (that is of course without specifying any optimization flags).
> > Please don't tell me it's a lousy benchmark, because I already know that!
> > Be it as lousy as it is, I shouldn't get _those_ results IMHO.
>
> Indeed, you should not get such results.  If  you  compare  with  the
> lmbench  results  of  our 2.4/2.6 comparison, you will notice that we
> did NOT see such behaviour. There was a  perfromnce  degradation  for
> pure  integer tests, due to increased system overhead, but far from a
> factor of 2.
> See http://www.denx.de/wiki/pub/Know/Linux24vs26/lmbench_results

I have seen them, and my conclusion is: Your kernel was working ok, while 
mine, a newer one, is broken. 
As you can see in the other e-mail I just posted (replying to Marcelo), at 
least the CPU cache seems to be disabled. Might this have something to do 
with processor model (mis-) identification?
I had to apply the "ppc_sys: do not BUG if system ID is unknown" patch from 
Marcelo Tosatti a few days back in order to be able to boot in the first 
place. I had a look at ppc_sys system identification for 8xx and it looked a 
little bit nonsensical to me, since all 8xx report the same ID. Maybe the 
intention was to set the ID "by hand" in board support and setup.
Problem is: there is still no real board-support infrastructure for mpc8xx, 
like there is for mpc82xx for example. What are the plans for 8xx? Should I 
try to emulate what others have done for some PQ2 platforms, i.e. create a 
arch/ppc/platforms/myplatform.c file and implement board_init()?

Greetings,

-- 
David Jander
Protonic Holland.

^ permalink raw reply

* [PATCH] ppc32: Add missing initrd header on ppc440
From: Stefan Roese @ 2005-10-31  9:29 UTC (permalink / raw)
  To: linuxppc-embedded
In-Reply-To: <200510281758.56646.sr@denx.de>

[-- Attachment #1: Type: text/plain, Size: 251 bytes --]

Sorry, but this missing header slipped though last time. Please apply.

Signed-off-by: Stefan Roese <sr@denx.de>

By the way: What is the current status of the pending 4xx patches. Are they 
going in in this 2-week merge window?

Best regards,
Stefan

[-- Attachment #2: ppc440-initrd-header-added.patch --]
[-- Type: text/x-diff, Size: 900 bytes --]

[PATCH] ppc32: Add missing initrd header on ppc440

Signed-off-by: Stefan Roese <sr@denx.de>

---
commit 54069303584813d4f0bafcd04bb2b7b0e9fc4693
tree 319e03ffc9097b7a8376b6e3108b4249f6d6dc0d
parent d8832f2614a9bfdb445a62a23e80f01886ae661e
author Stefan Roese <sr@denx.de> Mon, 31 Oct 2005 10:20:52 +0100
committer Stefan Roese <sr@denx.de> Mon, 31 Oct 2005 10:20:52 +0100

 arch/ppc/syslib/ibm44x_common.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/arch/ppc/syslib/ibm44x_common.c b/arch/ppc/syslib/ibm44x_common.c
index 5152c8e..6dae518 100644
--- a/arch/ppc/syslib/ibm44x_common.c
+++ b/arch/ppc/syslib/ibm44x_common.c
@@ -20,6 +20,7 @@
 #include <linux/types.h>
 #include <linux/serial.h>
 #include <linux/module.h>
+#include <linux/initrd.h>
 
 #include <asm/ibm44x.h>
 #include <asm/mmu.h>


\f
!-------------------------------------------------------------flip-



^ permalink raw reply related

* Re: Kernel 2.6 on MPC8xx performance trouble...
From: David Jander @ 2005-10-31  8:21 UTC (permalink / raw)
  To: linuxppc-embedded
In-Reply-To: <20051028153059.GC18915@logos.cnet>

On Friday 28 October 2005 17:30, Marcelo Tosatti wrote:
>[...]
> David,
>
> Do you have CONFIG_PIN_TLB enabled?
>
> If you do, please patch this in:
>
> http://www.kernel.org/git/?p=linux/kernel/git/marcelo/8xx-fixes;a=commitdif
>f;h=a41ba028534c45280170c05c23609ea84f34b38a
>
> And select DEBUG_PIN_TLBIE.

Ok, done that... no change.
I don't get any of those debug messages, so I guess that was not the problem.

I have made another test in the meantime, trying to check if cache is working.
The test is pretty simple: see how fast I can fill a block of memory whose 
size is increasing by a power of two. You should expect to see a step-like 
decrease in speed when surpassing the size of the data cache (4kbyte).

The results are very suspicious:

kernel-2.4:

Memsize    512 : 39.342773 Mbyte/s
Memsize   1024 : 41.871094 Mbyte/s
Memsize   2048 : 43.212891 Mbyte/s
Memsize   4096 : 40.117188 Mbyte/s
Memsize   8192 : 28.148438 Mbyte/s
Memsize  16384 : 28.484375 Mbyte/s
Memsize  32768 : 28.656250 Mbyte/s
Memsize  65536 : 28.687500 Mbyte/s

This looks quite healthy: above 4kbyte we see a clear drop in performance, so 
we just learned that our data-cache is most probably 4kbyte in size, wow!

Kernel-2.6:

Memsize    512 : 21.033691 Mbyte/s
Memsize   1024 : 22.047852 Mbyte/s
Memsize   2048 : 22.601562 Mbyte/s
Memsize   4096 : 22.882812 Mbyte/s
Memsize   8192 : 23.007812 Mbyte/s
Memsize  16384 : 23.093750 Mbyte/s
Memsize  32768 : 23.125000 Mbyte/s
Memsize  65536 : 23.125000 Mbyte/s

No, sir, no cache detected !

Where do I have to look now?

Greetings,

-- 
David Jander
Protonic Holland.

^ permalink raw reply

* Re: MPC8555 USB host support
From: Mike Rapoport @ 2005-10-31  6:45 UTC (permalink / raw)
  To: Alex Zeffertt; +Cc: Stefan Roese, linuxppc-embedded
In-Reply-To: <20051012133414.7f7e2faf.ajz@cambridgebroadband.com>

Alex,

>this. Maybe the best thing to do would be to create a sourceforge
>project and post the latest patches there.  I have an 8272ads board
>  
>
Following your advice I've created a sourceforge project for the USB 
drivers for mpc82xx. For now I've posted there only 2.6 version. As for 
driver for 2.4, it would be better if it'll be posted by someone who's 
actually working with USB in Linux 2.4.

>and I'd be happy to test it out and provide feedback.
>
>Regards,
>
>Alex
>
>
>
>  
>


-- 
Sincerely yours,
Mike Rapoport

^ permalink raw reply

* Re: compact flash driver
From: mcr @ 2005-10-28 14:42 UTC (permalink / raw)
  To: Alex Zeffertt; +Cc: linuxppc-embedded
In-Reply-To: <20051026095935.66fe98d8.ajz@cambridgebroadband.com>

-----BEGIN PGP SIGNED MESSAGE-----


>>>>> "Alex" == Alex Zeffertt <ajz@cambridgebroadband.com> writes:
    >> Hello All, Are there any compact flash driver supported for Linux
    >> 2.6? If there is where can i get the source code.  Thanks, Bizhan
    >> 

    Alex> I think that CF cards just get treated the same as any other
    Alex> IDE disk by linux.  No special driver needed.

  Yes. There are some gotchas with newer pcmcia/cardbus flash cards.
For instance, Silicon Systems devices claim to support IORDY, but don't,
which results in a system hang.  I imagine that the same kind of things
will show up in newer CF devices, although I think that CF can't support
DMA.
  It also depends upon how you interface CF: via an IDE controller, or
via a cardbus interface.

  I expect to have a git tree with stuff available soon.

- -- 
]       ON HUMILITY: to err is human. To moo, bovine.           |  firewalls  [
]   Michael Richardson,    Xelerance Corporation, Ottawa, ON    |net architect[
] mcr@xelerance.com      http://www.sandelman.ottawa.on.ca/mcr/ |device driver[
] panic("Just another Debian GNU/Linux using, kernel hacking, security guy"); [
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
Comment: Finger me for keys

iQCVAwUBQ2I47IqHRg3pndX9AQHzEwQAu53kgQ2F+gIUBilfigelHgFlh4dSJ/uu
X/QemYuRvya8ozuoGSEbh4aY4RleSWikw0AAv5rz8HVwm/3JjnE1k0C8vU2/kHyY
2PYvY/X2SJI4w6HNokFbAjM0IlV56zApZZTR0hGBbvCrqC4md2xxuY3SoJZZwHtY
36hwZtdVSKg=
=ib5u
-----END PGP SIGNATURE-----

^ permalink raw reply

* Re: about HDLC Ethernet Driver
From: mcr @ 2005-10-28 13:50 UTC (permalink / raw)
  To: 徐小威的EMAIL; +Cc: linuxppc-embedded
In-Reply-To: <1130396668.15267.6.camel@banana>

-----BEGIN PGP SIGNED MESSAGE-----


>>>>> "rober" == rober  <UTF-8> writes:
    rober>     I used Linux 2.4.25 at my custom MPC852T and I want to
    rober> used scc with HDLC mode to communiction with another
    rober> MPC852T. How to build a ethernet base on HDLC for
    rober> communication with these two CPU?

  So, you have two MPC852Ts on a board, and they are cross-wired such
that you send HDLC between them using the scc, and you want to:
(my question):
    a) you want to reprogram the scc's to send ethernet frames?
    b) you want to encapsulate ethernet frames in HDLC?
    c) you want to connect the two 852s using some kind of IP
       networking?

  HDLC is commonly used on T1 links, and one method puts frames that
essentially look like ethernet frames over it. 

- -- 
]       ON HUMILITY: to err is human. To moo, bovine.           |  firewalls  [
]   Michael Richardson,    Xelerance Corporation, Ottawa, ON    |net architect[
] mcr@xelerance.com      http://www.sandelman.ottawa.on.ca/mcr/ |device driver[
] panic("Just another Debian GNU/Linux using, kernel hacking, security guy"); [
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
Comment: Finger me for keys

iQCVAwUBQ2IsqoqHRg3pndX9AQFeswP/Rrsj0USUKFL5kEXBDnUznWtEFJLAI1eM
wmuAIQBw8idS/hPhbV2ox9pEeZyUk419rUigVMi9LkVqBZzyJaRulN8SdGsR28sv
X7N0uD0zNGP0MU0cerW0QXGad1oUkElWELkM2YnUWnv3+1AXW2fsoOtipPvSkAo7
P6dR3MUV3VU=
=ap8A
-----END PGP SIGNATURE-----

^ permalink raw reply

* please pull the powerpc-merge.git tree
From: Paul Mackerras @ 2005-10-31  4:23 UTC (permalink / raw)
  To: torvalds; +Cc: linuxppc-dev, linuxppc64-dev

Linus,

Please do a pull from:

git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge.git

to get a ppc/ppc64/powerpc update.

We are now a considerable way through the ppc/ppc64 -> powerpc merge.
It is now possible to build kernels for powermac, pSeries, iSeries and
maple with ARCH=powerpc, and for powermac, both 32-bit and 64-bit
build and run.  I have not yet put in the patch that makes it default
to ARCH=powerpc if uname -m gives ppc or ppc64, though.

Andrew sent me all of the patches he had queued that affected ppc and
ppc64, and I have merged in most of them (the rest I am discussing
with their authors).

Diffstat and shortlog follow.

Thanks,
Paul.

 arch/powerpc/Kconfig                           |  900 +++++++
 arch/powerpc/Kconfig.debug                     |  128 +
 arch/powerpc/Makefile                          |  222 ++
 arch/powerpc/kernel/Makefile                   |   56 
 arch/powerpc/kernel/asm-offsets.c              |  273 ++
 arch/powerpc/kernel/binfmt_elf32.c             |    3 
 arch/powerpc/kernel/btext.c                    |  853 +++++++
 arch/powerpc/kernel/cputable.c                 |  797 +++---
 arch/powerpc/kernel/entry_32.S                 | 1000 ++++++++
 arch/powerpc/kernel/entry_64.S                 |   47 
 arch/powerpc/kernel/fpu.S                      |  144 +
 arch/powerpc/kernel/head_32.S                  | 1381 +++++++++++
 arch/powerpc/kernel/head_44x.S                 |  782 ++++++
 arch/powerpc/kernel/head_4xx.S                 | 1022 ++++++++
 arch/powerpc/kernel/head_64.S                  | 1957 +++++++++++++++
 arch/powerpc/kernel/head_8xx.S                 |  860 +++++++
 arch/powerpc/kernel/head_fsl_booke.S           | 1063 ++++++++
 arch/powerpc/kernel/idle_6xx.S                 |  233 ++
 arch/powerpc/kernel/idle_power4.S              |    9 
 arch/powerpc/kernel/init_task.c                |    0 
 arch/powerpc/kernel/lparmap.c                  |    0 
 arch/powerpc/kernel/misc_32.S                  | 1037 ++++++++
 arch/powerpc/kernel/misc_64.S                  |  880 +++++++
 arch/powerpc/kernel/of_device.c                |    4 
 arch/powerpc/kernel/pmc.c                      |   30 
 arch/powerpc/kernel/ppc_ksyms.c                |  273 ++
 arch/powerpc/kernel/process.c                  |  486 +++-
 arch/powerpc/kernel/prom.c                     | 2170 +++++++++++++++++
 arch/powerpc/kernel/prom_init.c                | 2109 +++++++++++++++++
 arch/powerpc/kernel/ptrace.c                   |  170 +
 arch/powerpc/kernel/ptrace32.c                 |    9 
 arch/powerpc/kernel/rtas.c                     |  254 +-
 arch/powerpc/kernel/semaphore.c                |  135 +
 arch/powerpc/kernel/setup-common.c             |  410 +++
 arch/powerpc/kernel/setup_32.c                 |  372 +++
 arch/powerpc/kernel/setup_64.c                 |  352 ---
 arch/powerpc/kernel/signal_32.c                |  993 +++++---
 arch/powerpc/kernel/sys_ppc32.c                |  320 ---
 arch/powerpc/kernel/syscalls.c                 |  358 +++
 arch/powerpc/kernel/systbl.S                   |  321 +++
 arch/powerpc/kernel/time.c                     |  570 +++-
 arch/powerpc/kernel/traps.c                    | 1101 +++++++++
 arch/powerpc/kernel/vecemu.c                   |    0 
 arch/powerpc/kernel/vector.S                   |   71 -
 arch/powerpc/kernel/vio.c                      |   14 
 arch/powerpc/kernel/vmlinux.lds.S              |  279 ++
 arch/powerpc/lib/Makefile                      |   19 
 arch/powerpc/lib/checksum_32.S                 |  225 ++
 arch/powerpc/lib/checksum_64.S                 |    0 
 arch/powerpc/lib/copy_32.S                     |  543 ++++
 arch/powerpc/lib/copypage_64.S                 |    0 
 arch/powerpc/lib/copyuser_64.S                 |    0 
 arch/powerpc/lib/div64.S                       |   59 
 arch/powerpc/lib/e2a.c                         |    0 
 arch/powerpc/lib/locks.c                       |    5 
 arch/powerpc/lib/mem_64.S                      |  119 +
 arch/powerpc/lib/memcpy_64.S                   |    0 
 arch/powerpc/lib/rheap.c                       |  693 +++++
 arch/powerpc/lib/sstep.c                       |   17 
 arch/powerpc/lib/strcase.c                     |   23 
 arch/powerpc/lib/string.S                      |  198 ++
 arch/powerpc/lib/usercopy_64.c                 |    0 
 arch/powerpc/mm/44x_mmu.c                      |  120 +
 arch/powerpc/mm/4xx_mmu.c                      |  141 +
 arch/powerpc/mm/Makefile                       |   21 
 arch/powerpc/mm/fault.c                        |  104 +
 arch/powerpc/mm/fsl_booke_mmu.c                |  237 ++
 arch/powerpc/mm/hash_low_32.S                  |  618 +++++
 arch/powerpc/mm/hash_low_64.S                  |    2 
 arch/powerpc/mm/hash_native_64.c               |   13 
 arch/powerpc/mm/hash_utils_64.c                |   61 
 arch/powerpc/mm/hugetlbpage.c                  |    0 
 arch/powerpc/mm/imalloc.c                      |    0 
 arch/powerpc/mm/init_32.c                      |  254 ++
 arch/powerpc/mm/init_64.c                      |  223 ++
 arch/powerpc/mm/lmb.c                          |  105 -
 arch/powerpc/mm/mem.c                          |  564 ++++
 arch/powerpc/mm/mmap.c                         |    0 
 arch/powerpc/mm/mmu_context_32.c               |   86 +
 arch/powerpc/mm/mmu_context_64.c               |   63 
 arch/powerpc/mm/mmu_decl.h                     |   87 +
 arch/powerpc/mm/numa.c                         |    2 
 arch/powerpc/mm/pgtable_32.c                   |  467 ++++
 arch/powerpc/mm/pgtable_64.c                   |  347 +++
 arch/powerpc/mm/ppc_mmu_32.c                   |  285 ++
 arch/powerpc/mm/slb.c                          |    0 
 arch/powerpc/mm/slb_low.S                      |    0 
 arch/powerpc/mm/stab.c                         |    0 
 arch/powerpc/mm/tlb_32.c                       |  183 +
 arch/powerpc/mm/tlb_64.c                       |   23 
 arch/powerpc/oprofile/Kconfig                  |    0 
 arch/powerpc/oprofile/Makefile                 |    4 
 arch/powerpc/oprofile/common.c                 |   84 +
 arch/powerpc/oprofile/op_model_fsl_booke.c     |    7 
 arch/powerpc/oprofile/op_model_power4.c        |    2 
 arch/powerpc/oprofile/op_model_rs64.c          |    2 
 arch/powerpc/platforms/4xx/Kconfig             |  280 ++
 arch/powerpc/platforms/4xx/Makefile            |    1 
 arch/powerpc/platforms/85xx/Kconfig            |   86 +
 arch/powerpc/platforms/85xx/Makefile           |    1 
 arch/powerpc/platforms/8xx/Kconfig             |  352 +++
 arch/powerpc/platforms/Makefile                |   13 
 arch/powerpc/platforms/apus/Kconfig            |  130 +
 arch/powerpc/platforms/chrp/Makefile           |    4 
 arch/powerpc/platforms/chrp/chrp.h             |   12 
 arch/powerpc/platforms/chrp/nvram.c            |   84 +
 arch/powerpc/platforms/chrp/pci.c              |  310 ++
 arch/powerpc/platforms/chrp/pegasos_eth.c      |  213 ++
 arch/powerpc/platforms/chrp/setup.c            |  522 ++++
 arch/powerpc/platforms/chrp/smp.c              |  122 +
 arch/powerpc/platforms/chrp/time.c             |  188 +
 arch/powerpc/platforms/embedded6xx/Kconfig     |  318 ++
 arch/powerpc/platforms/iseries/Kconfig         |   31 
 arch/powerpc/platforms/iseries/Makefile        |    9 
 arch/powerpc/platforms/iseries/call_hpt.h      |    7 
 arch/powerpc/platforms/iseries/call_pci.h      |  290 ++
 arch/powerpc/platforms/iseries/call_sm.h       |    7 
 arch/powerpc/platforms/iseries/htab.c          |   47 
 arch/powerpc/platforms/iseries/hvcall.S        |   22 
 arch/powerpc/platforms/iseries/hvlog.c         |    1 
 arch/powerpc/platforms/iseries/hvlpconfig.c    |    1 
 arch/powerpc/platforms/iseries/iommu.c         |   42 
 arch/powerpc/platforms/iseries/ipl_parms.h     |    7 
 arch/powerpc/platforms/iseries/irq.c           |   17 
 arch/powerpc/platforms/iseries/irq.h           |    8 
 arch/powerpc/platforms/iseries/ksyms.c         |   27 
 arch/powerpc/platforms/iseries/lpardata.c      |   28 
 arch/powerpc/platforms/iseries/lpevents.c      |   77 +
 arch/powerpc/platforms/iseries/main_store.h    |    7 
 arch/powerpc/platforms/iseries/mf.c            |   98 +
 arch/powerpc/platforms/iseries/misc.S          |   55 
 arch/powerpc/platforms/iseries/pci.c           |  173 +
 arch/powerpc/platforms/iseries/pci.h           |   63 
 arch/powerpc/platforms/iseries/proc.c          |   15 
 arch/powerpc/platforms/iseries/processor_vpd.h |    7 
 arch/powerpc/platforms/iseries/release_data.h  |    7 
 arch/powerpc/platforms/iseries/setup.c         |  501 ++--
 arch/powerpc/platforms/iseries/setup.h         |    4 
 arch/powerpc/platforms/iseries/smp.c           |   46 
 arch/powerpc/platforms/iseries/spcomm_area.h   |    7 
 arch/powerpc/platforms/iseries/vio.c           |    1 
 arch/powerpc/platforms/iseries/viopath.c       |    3 
 arch/powerpc/platforms/iseries/vpd_areas.h     |    7 
 arch/powerpc/platforms/iseries/vpdinfo.c       |   21 
 arch/powerpc/platforms/maple/Makefile          |    1 
 arch/powerpc/platforms/maple/maple.h           |   12 
 arch/powerpc/platforms/maple/pci.c             |    7 
 arch/powerpc/platforms/maple/setup.c           |   13 
 arch/powerpc/platforms/maple/time.c            |    9 
 arch/powerpc/platforms/powermac/Makefile       |    8 
 arch/powerpc/platforms/powermac/backlight.c    |  202 ++
 arch/powerpc/platforms/powermac/cache.S        |  359 +++
 arch/powerpc/platforms/powermac/cpufreq.c      |  726 ++++++
 arch/powerpc/platforms/powermac/feature.c      | 3063 ++++++++++++++++++++++++
 arch/powerpc/platforms/powermac/low_i2c.c      |    0 
 arch/powerpc/platforms/powermac/nvram.c        |  282 ++
 arch/powerpc/platforms/powermac/pci.c          | 1170 +++++++++
 arch/powerpc/platforms/powermac/pic.c          |  678 +++++
 arch/powerpc/platforms/powermac/pic.h          |   11 
 arch/powerpc/platforms/powermac/pmac.h         |   51 
 arch/powerpc/platforms/powermac/setup.c        |  794 ++++++
 arch/powerpc/platforms/powermac/sleep.S        |  396 +++
 arch/powerpc/platforms/powermac/smp.c          |  865 +++++++
 arch/powerpc/platforms/powermac/time.c         |  360 +++
 arch/powerpc/platforms/prep/Kconfig            |   22 
 arch/powerpc/platforms/pseries/Kconfig         |   42 
 arch/powerpc/platforms/pseries/Makefile        |    5 
 arch/powerpc/platforms/pseries/hvCall.S        |    0 
 arch/powerpc/platforms/pseries/iommu.c         |   28 
 arch/powerpc/platforms/pseries/lpar.c          |    5 
 arch/powerpc/platforms/pseries/nvram.c         |    0 
 arch/powerpc/platforms/pseries/pci.c           |    3 
 arch/powerpc/platforms/pseries/ras.c           |   11 
 arch/powerpc/platforms/pseries/reconfig.c      |    0 
 arch/powerpc/platforms/pseries/rtas-fw.c       |  138 +
 arch/powerpc/platforms/pseries/rtas-fw.h       |    3 
 arch/powerpc/platforms/pseries/setup.c         |   57 
 arch/powerpc/platforms/pseries/smp.c           |   52 
 arch/powerpc/platforms/pseries/vio.c           |    1 
 arch/powerpc/platforms/pseries/xics.c          |   30 
 arch/powerpc/platforms/pseries/xics.h          |   10 
 arch/powerpc/sysdev/Makefile                   |    7 
 arch/powerpc/sysdev/dcr.S                      |    0 
 arch/powerpc/sysdev/grackle.c                  |   64 +
 arch/powerpc/sysdev/i8259.c                    |   65 -
 arch/powerpc/sysdev/indirect_pci.c             |    0 
 arch/powerpc/sysdev/mpic.c                     |   53 
 arch/powerpc/sysdev/u3_iommu.c                 |   50 
 arch/powerpc/xmon/Makefile                     |   11 
 arch/powerpc/xmon/ansidecl.h                   |    0 
 arch/powerpc/xmon/nonstdio.h                   |    0 
 arch/powerpc/xmon/ppc-dis.c                    |    0 
 arch/powerpc/xmon/ppc-opc.c                    |    0 
 arch/powerpc/xmon/ppc.h                        |    0 
 arch/powerpc/xmon/setjmp.S                     |  135 +
 arch/powerpc/xmon/start_32.c                   |  624 +++++
 arch/powerpc/xmon/start_64.c                   |    0 
 arch/powerpc/xmon/start_8xx.c                  |  287 ++
 arch/powerpc/xmon/subr_prf.c                   |   11 
 arch/powerpc/xmon/xmon.c                       |  395 ++-
 arch/ppc/8xx_io/commproc.c                     |   20 
 arch/ppc/Kconfig                               |   40 
 arch/ppc/Makefile                              |   14 
 arch/ppc/boot/of1275/claim.c                   |    1 
 arch/ppc/boot/openfirmware/chrpmain.c          |    2 
 arch/ppc/boot/openfirmware/coffmain.c          |    2 
 arch/ppc/kernel/Makefile                       |   27 
 arch/ppc/kernel/align.c                        |    4 
 arch/ppc/kernel/asm-offsets.c                  |    3 
 arch/ppc/kernel/cpu_setup_6xx.S                |    6 
 arch/ppc/kernel/cpu_setup_power4.S             |    6 
 arch/ppc/kernel/entry.S                        |   12 
 arch/ppc/kernel/fpu.S                          |  133 -
 arch/ppc/kernel/head.S                         |  100 -
 arch/ppc/kernel/head_44x.S                     |   32 
 arch/ppc/kernel/head_4xx.S                     |   68 -
 arch/ppc/kernel/head_8xx.S                     |   42 
 arch/ppc/kernel/head_booke.h                   |    4 
 arch/ppc/kernel/head_fsl_booke.S               |   47 
 arch/ppc/kernel/idle.c                         |    3 
 arch/ppc/kernel/irq.c                          |    1 
 arch/ppc/kernel/l2cr.S                         |    2 
 arch/ppc/kernel/misc.S                         |  235 --
 arch/ppc/kernel/pci.c                          |   33 
 arch/ppc/kernel/perfmon.c                      |   96 -
 arch/ppc/kernel/perfmon_fsl_booke.c            |    2 
 arch/ppc/kernel/ppc_ksyms.c                    |   34 
 arch/ppc/kernel/process.c                      |  142 +
 arch/ppc/kernel/setup.c                        |   39 
 arch/ppc/kernel/signal.c                       |  771 ------
 arch/ppc/kernel/smp.c                          |   22 
 arch/ppc/kernel/syscalls.c                     |  268 --
 arch/ppc/kernel/time.c                         |    9 
 arch/ppc/kernel/traps.c                        |   42 
 arch/ppc/kernel/vector.S                       |  217 --
 arch/ppc/kernel/vmlinux.lds.S                  |   26 
 arch/ppc/lib/string.S                          |   24 
 arch/ppc/math-emu/sfp-machine.h                |    2 
 arch/ppc/mm/init.c                             |   23 
 arch/ppc/oprofile/Makefile                     |   14 
 arch/ppc/oprofile/common.c                     |  161 -
 arch/ppc/oprofile/op_impl.h                    |   45 
 arch/ppc/platforms/4xx/bamboo.c                |   14 
 arch/ppc/platforms/4xx/ebony.c                 |   15 
 arch/ppc/platforms/4xx/luan.c                  |   13 
 arch/ppc/platforms/4xx/ocotea.c                |   31 
 arch/ppc/platforms/83xx/mpc834x_sys.h          |    1 
 arch/ppc/platforms/85xx/mpc8540_ads.c          |   30 
 arch/ppc/platforms/85xx/mpc8560_ads.c          |   25 
 arch/ppc/platforms/85xx/mpc85xx_ads_common.h   |    1 
 arch/ppc/platforms/85xx/mpc85xx_cds_common.c   |   39 
 arch/ppc/platforms/85xx/sbc8560.c              |   22 
 arch/ppc/platforms/85xx/stx_gp3.c              |   21 
 arch/ppc/platforms/85xx/stx_gp3.h              |    1 
 arch/ppc/platforms/Makefile                    |    3 
 arch/ppc/platforms/chestnut.c                  |    1 
 arch/ppc/platforms/chrp_nvram.c                |   83 +
 arch/ppc/platforms/chrp_pci.c                  |   10 
 arch/ppc/platforms/chrp_pegasos_eth.c          |  124 +
 arch/ppc/platforms/chrp_setup.c                |   33 
 arch/ppc/platforms/chrp_smp.c                  |    3 
 arch/ppc/platforms/chrp_time.c                 |    8 
 arch/ppc/platforms/ev64360.c                   |    1 
 arch/ppc/platforms/fads.h                      |    2 
 arch/ppc/platforms/gemini_setup.c              |    4 
 arch/ppc/platforms/hdpu.c                      |    4 
 arch/ppc/platforms/katana.c                    |    3 
 arch/ppc/platforms/lite5200.c                  |    1 
 arch/ppc/platforms/lopec.c                     |   17 
 arch/ppc/platforms/mpc885ads.h                 |    2 
 arch/ppc/platforms/mvme5100.c                  |    6 
 arch/ppc/platforms/pal4_setup.c                |    1 
 arch/ppc/platforms/pmac_backlight.c            |   16 
 arch/ppc/platforms/pmac_cpufreq.c              |   36 
 arch/ppc/platforms/pmac_feature.c              |  176 +
 arch/ppc/platforms/pmac_nvram.c                |   42 
 arch/ppc/platforms/pmac_pci.c                  |   28 
 arch/ppc/platforms/pmac_pic.c                  |   27 
 arch/ppc/platforms/pmac_setup.c                |   19 
 arch/ppc/platforms/pmac_sleep.S                |    4 
 arch/ppc/platforms/pmac_smp.c                  |   11 
 arch/ppc/platforms/pmac_time.c                 |    8 
 arch/ppc/platforms/pplus.c                     |   17 
 arch/ppc/platforms/prep_pci.c                  |   64 -
 arch/ppc/platforms/prep_setup.c                |   70 -
 arch/ppc/platforms/radstone_ppc7d.c            |   15 
 arch/ppc/platforms/residual.c                  |    2 
 arch/ppc/platforms/sandpoint.c                 |   21 
 arch/ppc/syslib/Makefile                       |   57 
 arch/ppc/syslib/btext.c                        |    6 
 arch/ppc/syslib/gt64260_pic.c                  |    1 
 arch/ppc/syslib/ibm440gx_common.c              |    6 
 arch/ppc/syslib/ibm44x_common.c                |   37 
 arch/ppc/syslib/ibm44x_common.h                |    3 
 arch/ppc/syslib/m8260_setup.c                  |    4 
 arch/ppc/syslib/m82xx_pci.c                    |    4 
 arch/ppc/syslib/m8xx_setup.c                   |   48 
 arch/ppc/syslib/m8xx_wdt.c                     |   14 
 arch/ppc/syslib/mpc52xx_pci.c                  |    3 
 arch/ppc/syslib/mpc83xx_devices.c              |    1 
 arch/ppc/syslib/mpc85xx_devices.c              |   17 
 arch/ppc/syslib/mpc85xx_sys.c                  |   44 
 arch/ppc/syslib/mpc8xx_sys.c                   |    4 
 arch/ppc/syslib/mv64360_pic.c                  |    1 
 arch/ppc/syslib/mv64x60.c                      |    2 
 arch/ppc/syslib/mv64x60_dbg.c                  |    1 
 arch/ppc/syslib/of_device.c                    |  278 --
 arch/ppc/syslib/open_pic.c                     |    3 
 arch/ppc/syslib/open_pic2.c                    |    1 
 arch/ppc/syslib/ppc403_pic.c                   |    1 
 arch/ppc/syslib/ppc4xx_pic.c                   |    1 
 arch/ppc/syslib/ppc4xx_setup.c                 |    2 
 arch/ppc/syslib/ppc83xx_setup.c                |    1 
 arch/ppc/syslib/ppc85xx_setup.c                |    1 
 arch/ppc/syslib/ppc8xx_pic.c                   |   17 
 arch/ppc/syslib/ppc_sys.c                      |    3 
 arch/ppc/syslib/pq2_devices.c                  |    1 
 arch/ppc/syslib/prep_nvram.c                   |   13 
 arch/ppc/syslib/prom.c                         |   18 
 arch/ppc/syslib/xilinx_pic.c                   |    1 
 arch/ppc/xmon/start.c                          |    3 
 arch/ppc/xmon/xmon.c                           |    9 
 arch/ppc64/Kconfig                             |   33 
 arch/ppc64/Makefile                            |   18 
 arch/ppc64/boot/Makefile                       |   67 -
 arch/ppc64/boot/crt0.S                         |   53 
 arch/ppc64/boot/install.sh                     |    2 
 arch/ppc64/boot/main.c                         |  268 +-
 arch/ppc64/boot/string.S                       |    4 
 arch/ppc64/boot/string.h                       |    1 
 arch/ppc64/boot/zImage.lds                     |   64 -
 arch/ppc64/boot/zlib.c                         | 2195 -----------------
 arch/ppc64/boot/zlib.h                         |  432 ---
 arch/ppc64/defconfig                           |    4 
 arch/ppc64/kernel/HvLpEvent.c                  |   88 -
 arch/ppc64/kernel/Makefile                     |   77 -
 arch/ppc64/kernel/align.c                      |    4 
 arch/ppc64/kernel/asm-offsets.c                |    3 
 arch/ppc64/kernel/bpa_iommu.c                  |    2 
 arch/ppc64/kernel/bpa_setup.c                  |    7 
 arch/ppc64/kernel/btext.c                      |   42 
 arch/ppc64/kernel/cputable.c                   |  308 --
 arch/ppc64/kernel/eeh.c                        |    2 
 arch/ppc64/kernel/head.S                       |  290 +-
 arch/ppc64/kernel/i8259.c                      |  177 -
 arch/ppc64/kernel/i8259.h                      |   17 
 arch/ppc64/kernel/idle.c                       |    8 
 arch/ppc64/kernel/kprobes.c                    |    1 
 arch/ppc64/kernel/misc.S                       |  662 -----
 arch/ppc64/kernel/pci.c                        |   46 
 arch/ppc64/kernel/pci_direct_iommu.c           |    3 
 arch/ppc64/kernel/pci_dn.c                     |    3 
 arch/ppc64/kernel/pci_iommu.c                  |   21 
 arch/ppc64/kernel/pmac.h                       |   31 
 arch/ppc64/kernel/pmac_feature.c               |  767 ------
 arch/ppc64/kernel/pmac_pci.c                   |  793 ------
 arch/ppc64/kernel/pmac_setup.c                 |  525 ----
 arch/ppc64/kernel/pmac_smp.c                   |  330 ---
 arch/ppc64/kernel/pmac_time.c                  |  195 --
 arch/ppc64/kernel/ppc_ksyms.c                  |   20 
 arch/ppc64/kernel/prom.c                       |    7 
 arch/ppc64/kernel/prom_init.c                  |    1 
 arch/ppc64/kernel/ptrace.c                     |  363 ---
 arch/ppc64/kernel/rtas-proc.c                  |    1 
 arch/ppc64/kernel/rtas_pci.c                   |    9 
 arch/ppc64/kernel/rtc.c                        |   48 
 arch/ppc64/kernel/signal.c                     |    2 
 arch/ppc64/kernel/smp.c                        |   40 
 arch/ppc64/kernel/syscalls.c                   |  263 --
 arch/ppc64/kernel/traps.c                      |  568 ----
 arch/ppc64/kernel/vdso64/sigtramp.S            |    1 
 arch/ppc64/kernel/vecemu.c                     |  346 ---
 arch/ppc64/kernel/vmlinux.lds.S                |   17 
 arch/ppc64/lib/Makefile                        |   15 
 arch/ppc64/lib/strcase.c                       |   31 
 arch/ppc64/lib/string.S                        |  106 -
 arch/ppc64/mm/Makefile                         |   11 
 arch/ppc64/mm/init.c                           |  950 -------
 arch/ppc64/oprofile/Kconfig                    |   23 
 arch/ppc64/xmon/Makefile                       |    5 
 arch/ppc64/xmon/setjmp.S                       |   73 -
 drivers/block/viodasd.c                        |    9 
 drivers/cdrom/viocd.c                          |    9 
 drivers/char/hvc_vio.c                         |    2 
 drivers/char/hvcs.c                            |    5 
 drivers/char/mem.c                             |    4 
 drivers/char/viotape.c                         |    9 
 drivers/ide/ppc/pmac.c                         |   80 -
 drivers/macintosh/ans-lcd.c                    |   10 
 drivers/macintosh/apm_emu.c                    |    8 
 drivers/macintosh/macio_sysfs.c                |   26 
 drivers/macintosh/mediabay.c                   |   56 
 drivers/macintosh/smu.c                        |    4 
 drivers/macintosh/via-cuda.c                   |    1 
 drivers/macintosh/via-pmu.c                    |  142 +
 drivers/macintosh/via-pmu68k.c                 |   15 
 drivers/net/bmac.c                             |    1 
 drivers/net/ibmveth.c                          |   14 
 drivers/net/iseries_veth.c                     |   18 
 drivers/net/mace.c                             |    1 
 drivers/net/mv643xx_eth.c                      |    3 
 drivers/pcmcia/Kconfig                         |   10 
 drivers/pcmcia/Makefile                        |    1 
 drivers/pcmcia/m8xx_pcmcia.c                   | 1290 ++++++++++
 drivers/scsi/ibmvscsi/ibmvscsi.c               |    9 
 drivers/video/fbmem.c                          |    2 
 fs/proc/proc_misc.c                            |    8 
 include/asm-powerpc/a.out.h                    |   36 
 include/asm-powerpc/atomic.h                   |   45 
 include/asm-powerpc/auxvec.h                   |    8 
 include/asm-powerpc/backlight.h                |    9 
 include/asm-powerpc/bug.h                      |   81 +
 include/asm-powerpc/byteorder.h                |   11 
 include/asm-powerpc/checksum.h                 |   47 
 include/asm-powerpc/cputable.h                 |  427 +++
 include/asm-powerpc/dbdma.h                    |    0 
 include/asm-powerpc/dma.h                      |   91 -
 include/asm-powerpc/elf.h                      |   96 -
 include/asm-powerpc/firmware.h                 |   10 
 include/asm-powerpc/grackle.h                  |    7 
 include/asm-powerpc/hardirq.h                  |   16 
 include/asm-powerpc/heathrow.h                 |    0 
 include/asm-powerpc/hw_irq.h                   |  114 +
 include/asm-powerpc/i8259.h                    |   12 
 include/asm-powerpc/iommu.h                    |   41 
 include/asm-powerpc/irq.h                      |  168 +
 include/asm-powerpc/kdebug.h                   |   11 
 include/asm-powerpc/keylargo.h                 |    0 
 include/asm-powerpc/kmap_types.h               |   33 
 include/asm-powerpc/kprobes.h                  |    7 
 include/asm-powerpc/lmb.h                      |    2 
 include/asm-powerpc/machdep.h                  |  284 ++
 include/asm-powerpc/macio.h                    |    0 
 include/asm-powerpc/mediabay.h                 |    0 
 include/asm-powerpc/mpic.h                     |   14 
 include/asm-powerpc/of_device.h                |    7 
 include/asm-powerpc/ohare.h                    |    0 
 include/asm-powerpc/oprofile_impl.h            |   24 
 include/asm-powerpc/pSeries_reconfig.h         |    0 
 include/asm-powerpc/parport.h                  |    6 
 include/asm-powerpc/pmac_feature.h             |    0 
 include/asm-powerpc/pmac_low_i2c.h             |    0 
 include/asm-powerpc/pmc.h                      |   46 
 include/asm-powerpc/posix_types.h              |   40 
 include/asm-powerpc/ppc-pci.h                  |    6 
 include/asm-powerpc/ppc_asm.h                  |  511 ++++
 include/asm-powerpc/processor.h                |  281 ++
 include/asm-powerpc/prom.h                     |  219 ++
 include/asm-powerpc/reg.h                      |  297 ++
 include/asm-powerpc/rtas.h                     |    8 
 include/asm-powerpc/rtc.h                      |   78 +
 include/asm-powerpc/rwsem.h                    |   18 
 include/asm-powerpc/scatterlist.h              |   45 
 include/asm-powerpc/seccomp.h                  |   11 
 include/asm-powerpc/sections.h                 |   20 
 include/asm-powerpc/semaphore.h                |    6 
 include/asm-powerpc/smu.h                      |    0 
 include/asm-powerpc/spinlock_types.h           |    4 
 include/asm-powerpc/sstep.h                    |    4 
 include/asm-powerpc/statfs.h                   |   60 
 include/asm-powerpc/synch.h                    |   51 
 include/asm-powerpc/system.h                   |  363 +++
 include/asm-powerpc/thread_info.h              |   59 
 include/asm-powerpc/time.h                     |  226 ++
 include/asm-powerpc/types.h                    |   37 
 include/asm-powerpc/uninorth.h                 |    0 
 include/asm-powerpc/unistd.h                   |   91 -
 include/asm-powerpc/vga.h                      |   22 
 include/asm-powerpc/vio.h                      |   22 
 include/asm-powerpc/xmon.h                     |   12 
 include/asm-ppc/a.out.h                        |   26 
 include/asm-ppc/auxvec.h                       |   14 
 include/asm-ppc/bug.h                          |   58 
 include/asm-ppc/byteorder.h                    |   76 -
 include/asm-ppc/cache.h                        |   13 
 include/asm-ppc/checksum.h                     |  107 -
 include/asm-ppc/cpm2.h                         |    3 
 include/asm-ppc/cputable.h                     |  129 -
 include/asm-ppc/elf.h                          |  151 -
 include/asm-ppc/hw_irq.h                       |   74 -
 include/asm-ppc/i8259.h                        |   11 
 include/asm-ppc/io.h                           |   11 
 include/asm-ppc/kmap_types.h                   |   25 
 include/asm-ppc/machdep.h                      |    4 
 include/asm-ppc/mmu_context.h                  |    6 
 include/asm-ppc/mpc8260.h                      |    4 
 include/asm-ppc/mpc85xx.h                      |    3 
 include/asm-ppc/mpc8xx.h                       |    4 
 include/asm-ppc/open_pic.h                     |    3 
 include/asm-ppc/page.h                         |   18 
 include/asm-ppc/parport.h                      |   18 
 include/asm-ppc/pci-bridge.h                   |    5 
 include/asm-ppc/pci.h                          |    6 
 include/asm-ppc/perfmon.h                      |   22 
 include/asm-ppc/pgtable.h                      |    2 
 include/asm-ppc/posix_types.h                  |  111 -
 include/asm-ppc/ppc_asm.h                      |  350 ---
 include/asm-ppc/processor.h                    |  201 --
 include/asm-ppc/ptrace.h                       |    2 
 include/asm-ppc/rwsem.h                        |  177 -
 include/asm-ppc/scatterlist.h                  |   25 
 include/asm-ppc/seccomp.h                      |   10 
 include/asm-ppc/sections.h                     |   33 
 include/asm-ppc/semaphore.h                    |  108 -
 include/asm-ppc/smp.h                          |   28 
 include/asm-ppc/spinlock.h                     |    8 
 include/asm-ppc/spinlock_types.h               |   20 
 include/asm-ppc/statfs.h                       |    8 
 include/asm-ppc/system.h                       |   28 
 include/asm-ppc/thread_info.h                  |  107 -
 include/asm-ppc/types.h                        |   69 -
 include/asm-ppc/xmon.h                         |   17 
 include/asm-ppc64/a.out.h                      |   39 
 include/asm-ppc64/abs_addr.h                   |    7 
 include/asm-ppc64/atomic.h                     |  197 --
 include/asm-ppc64/bitops.h                     |    2 
 include/asm-ppc64/bootinfo.h                   |   70 -
 include/asm-ppc64/btext.h                      |    1 
 include/asm-ppc64/bug.h                        |   69 -
 include/asm-ppc64/cputable.h                   |  167 -
 include/asm-ppc64/dart.h                       |   59 
 include/asm-ppc64/dbdma.h                      |    2 
 include/asm-ppc64/dma.h                        |  329 ---
 include/asm-ppc64/futex.h                      |    2 
 include/asm-ppc64/hardirq.h                    |   27 
 include/asm-ppc64/hw_irq.h                     |  104 -
 include/asm-ppc64/iSeries/HvCallPci.h          |  533 ----
 include/asm-ppc64/iSeries/iSeries_irq.h        |    8 
 include/asm-ppc64/iSeries/iSeries_pci.h        |   88 -
 include/asm-ppc64/io.h                         |    2 
 include/asm-ppc64/irq.h                        |  120 -
 include/asm-ppc64/keylargo.h                   |    2 
 include/asm-ppc64/kmap_types.h                 |   23 
 include/asm-ppc64/machdep.h                    |  185 -
 include/asm-ppc64/macio.h                      |    2 
 include/asm-ppc64/memory.h                     |   61 
 include/asm-ppc64/mmu.h                        |    7 
 include/asm-ppc64/of_device.h                  |    2 
 include/asm-ppc64/page.h                       |    8 
 include/asm-ppc64/pci-bridge.h                 |   22 
 include/asm-ppc64/pci.h                        |    2 
 include/asm-ppc64/pgtable.h                    |    2 
 include/asm-ppc64/pmac_feature.h               |    2 
 include/asm-ppc64/pmac_low_i2c.h               |    2 
 include/asm-ppc64/pmc.h                        |   31 
 include/asm-ppc64/ppc32.h                      |   14 
 include/asm-ppc64/ppc_asm.h                    |  242 --
 include/asm-ppc64/processor.h                  |  558 ----
 include/asm-ppc64/prom.h                       |    4 
 include/asm-ppc64/scatterlist.h                |   31 
 include/asm-ppc64/sections.h                   |   29 
 include/asm-ppc64/smp.h                        |    1 
 include/asm-ppc64/statfs.h                     |   61 
 include/asm-ppc64/system.h                     |   20 
 include/asm-ppc64/tce.h                        |   64 +
 include/asm-ppc64/time.h                       |  124 -
 include/asm-ppc64/tlbflush.h                   |    7 
 include/asm-ppc64/udbg.h                       |    3 
 include/asm-ppc64/uninorth.h                   |    2 
 include/asm-ppc64/unistd.h                     |  486 ----
 include/asm-ppc64/vga.h                        |   50 
 include/linux/fsl_devices.h                    |   13 
 include/linux/zutil.h                          |    1 
 kernel/irq/handle.c                            |    6 
 lib/zlib_inflate/inflate.c                     |    1 
 565 files changed, 50073 insertions(+), 22537 deletions(-)
 create mode 100644 arch/powerpc/Kconfig
 create mode 100644 arch/powerpc/Kconfig.debug
 create mode 100644 arch/powerpc/Makefile
 create mode 100644 arch/powerpc/kernel/Makefile
 create mode 100644 arch/powerpc/kernel/asm-offsets.c
 rename arch/{ppc64/kernel/binfmt_elf32.c => powerpc/kernel/binfmt_elf32.c} (93%)
 create mode 100644 arch/powerpc/kernel/btext.c
 rename arch/{ppc/kernel/cputable.c => powerpc/kernel/cputable.c} (55%)
 create mode 100644 arch/powerpc/kernel/entry_32.S
 rename arch/{ppc64/kernel/entry.S => powerpc/kernel/entry_64.S} (96%)
 create mode 100644 arch/powerpc/kernel/fpu.S
 create mode 100644 arch/powerpc/kernel/head_32.S
 create mode 100644 arch/powerpc/kernel/head_44x.S
 create mode 100644 arch/powerpc/kernel/head_4xx.S
 create mode 100644 arch/powerpc/kernel/head_64.S
 create mode 100644 arch/powerpc/kernel/head_8xx.S
 create mode 100644 arch/powerpc/kernel/head_fsl_booke.S
 create mode 100644 arch/powerpc/kernel/idle_6xx.S
 rename arch/{ppc64/kernel/idle_power4.S => powerpc/kernel/idle_power4.S} (92%)
 rename arch/{ppc64/kernel/init_task.c => powerpc/kernel/init_task.c} (100%)
 rename arch/{ppc64/kernel/lparmap.c => powerpc/kernel/lparmap.c} (100%)
 create mode 100644 arch/powerpc/kernel/misc_32.S
 create mode 100644 arch/powerpc/kernel/misc_64.S
 rename arch/{ppc64/kernel/of_device.c => powerpc/kernel/of_device.c} (98%)
 rename arch/{ppc64/kernel/pmc.c => powerpc/kernel/pmc.c} (76%)
 create mode 100644 arch/powerpc/kernel/ppc_ksyms.c
 rename arch/{ppc64/kernel/process.c => powerpc/kernel/process.c} (58%)
 create mode 100644 arch/powerpc/kernel/prom.c
 create mode 100644 arch/powerpc/kernel/prom_init.c
 rename arch/{ppc/kernel/ptrace.c => powerpc/kernel/ptrace.c} (82%)
 rename arch/{ppc64/kernel/ptrace32.c => powerpc/kernel/ptrace32.c} (97%)
 rename arch/{ppc64/kernel/rtas.c => powerpc/kernel/rtas.c} (64%)
 create mode 100644 arch/powerpc/kernel/semaphore.c
 create mode 100644 arch/powerpc/kernel/setup-common.c
 create mode 100644 arch/powerpc/kernel/setup_32.c
 rename arch/{ppc64/kernel/setup.c => powerpc/kernel/setup_64.c} (70%)
 rename arch/{ppc64/kernel/signal32.c => powerpc/kernel/signal_32.c} (59%)
 rename arch/{ppc64/kernel/sys_ppc32.c => powerpc/kernel/sys_ppc32.c} (77%)
 create mode 100644 arch/powerpc/kernel/syscalls.c
 create mode 100644 arch/powerpc/kernel/systbl.S
 rename arch/{ppc64/kernel/time.c => powerpc/kernel/time.c} (61%)
 create mode 100644 arch/powerpc/kernel/traps.c
 rename arch/{ppc/kernel/vecemu.c => powerpc/kernel/vecemu.c} (100%)
 rename arch/{ppc64/kernel/vector.S => powerpc/kernel/vector.S} (63%)
 rename arch/{ppc64/kernel/vio.c => powerpc/kernel/vio.c} (100%)
 create mode 100644 arch/powerpc/kernel/vmlinux.lds.S
 create mode 100644 arch/powerpc/lib/Makefile
 create mode 100644 arch/powerpc/lib/checksum_32.S
 rename arch/{ppc64/lib/checksum.S => powerpc/lib/checksum_64.S} (100%)
 create mode 100644 arch/powerpc/lib/copy_32.S
 rename arch/{ppc64/lib/copypage.S => powerpc/lib/copypage_64.S} (100%)
 rename arch/{ppc64/lib/copyuser.S => powerpc/lib/copyuser_64.S} (100%)
 create mode 100644 arch/powerpc/lib/div64.S
 rename arch/{ppc64/lib/e2a.c => powerpc/lib/e2a.c} (100%)
 rename arch/{ppc64/lib/locks.c => powerpc/lib/locks.c} (98%)
 create mode 100644 arch/powerpc/lib/mem_64.S
 rename arch/{ppc64/lib/memcpy.S => powerpc/lib/memcpy_64.S} (100%)
 create mode 100644 arch/powerpc/lib/rheap.c
 rename arch/{ppc64/lib/sstep.c => powerpc/lib/sstep.c} (96%)
 create mode 100644 arch/powerpc/lib/strcase.c
 create mode 100644 arch/powerpc/lib/string.S
 rename arch/{ppc64/lib/usercopy.c => powerpc/lib/usercopy_64.c} (100%)
 create mode 100644 arch/powerpc/mm/44x_mmu.c
 create mode 100644 arch/powerpc/mm/4xx_mmu.c
 create mode 100644 arch/powerpc/mm/Makefile
 rename arch/{ppc64/mm/fault.c => powerpc/mm/fault.c} (68%)
 create mode 100644 arch/powerpc/mm/fsl_booke_mmu.c
 create mode 100644 arch/powerpc/mm/hash_low_32.S
 rename arch/{ppc64/mm/hash_low.S => powerpc/mm/hash_low_64.S} (100%)
 rename arch/{ppc64/mm/hash_native.c => powerpc/mm/hash_native_64.c} (97%)
 rename arch/{ppc64/mm/hash_utils.c => powerpc/mm/hash_utils_64.c} (90%)
 rename arch/{ppc64/mm/hugetlbpage.c => powerpc/mm/hugetlbpage.c} (100%)
 rename arch/{ppc64/mm/imalloc.c => powerpc/mm/imalloc.c} (100%)
 create mode 100644 arch/powerpc/mm/init_32.c
 create mode 100644 arch/powerpc/mm/init_64.c
 rename arch/{ppc64/kernel/lmb.c => powerpc/mm/lmb.c} (77%)
 create mode 100644 arch/powerpc/mm/mem.c
 rename arch/{ppc64/mm/mmap.c => powerpc/mm/mmap.c} (100%)
 create mode 100644 arch/powerpc/mm/mmu_context_32.c
 create mode 100644 arch/powerpc/mm/mmu_context_64.c
 create mode 100644 arch/powerpc/mm/mmu_decl.h
 rename arch/{ppc64/mm/numa.c => powerpc/mm/numa.c} (100%)
 create mode 100644 arch/powerpc/mm/pgtable_32.c
 create mode 100644 arch/powerpc/mm/pgtable_64.c
 create mode 100644 arch/powerpc/mm/ppc_mmu_32.c
 rename arch/{ppc64/mm/slb.c => powerpc/mm/slb.c} (100%)
 rename arch/{ppc64/mm/slb_low.S => powerpc/mm/slb_low.S} (100%)
 rename arch/{ppc64/mm/stab.c => powerpc/mm/stab.c} (100%)
 create mode 100644 arch/powerpc/mm/tlb_32.c
 rename arch/{ppc64/mm/tlb.c => powerpc/mm/tlb_64.c} (88%)
 rename arch/{ppc/oprofile/Kconfig => powerpc/oprofile/Kconfig} (100%)
 rename arch/{ppc64/oprofile/Makefile => powerpc/oprofile/Makefile} (63%)
 rename arch/{ppc64/oprofile/common.c => powerpc/oprofile/common.c} (54%)
 rename arch/{ppc/oprofile/op_model_fsl_booke.c => powerpc/oprofile/op_model_fsl_booke.c} (99%)
 rename arch/{ppc64/oprofile/op_model_power4.c => powerpc/oprofile/op_model_power4.c} (100%)
 rename arch/{ppc64/oprofile/op_model_rs64.c => powerpc/oprofile/op_model_rs64.c} (99%)
 create mode 100644 arch/powerpc/platforms/4xx/Kconfig
 create mode 100644 arch/powerpc/platforms/4xx/Makefile
 create mode 100644 arch/powerpc/platforms/85xx/Kconfig
 create mode 100644 arch/powerpc/platforms/85xx/Makefile
 create mode 100644 arch/powerpc/platforms/8xx/Kconfig
 create mode 100644 arch/powerpc/platforms/Makefile
 create mode 100644 arch/powerpc/platforms/apus/Kconfig
 create mode 100644 arch/powerpc/platforms/chrp/Makefile
 create mode 100644 arch/powerpc/platforms/chrp/chrp.h
 create mode 100644 arch/powerpc/platforms/chrp/nvram.c
 create mode 100644 arch/powerpc/platforms/chrp/pci.c
 create mode 100644 arch/powerpc/platforms/chrp/pegasos_eth.c
 create mode 100644 arch/powerpc/platforms/chrp/setup.c
 create mode 100644 arch/powerpc/platforms/chrp/smp.c
 create mode 100644 arch/powerpc/platforms/chrp/time.c
 create mode 100644 arch/powerpc/platforms/embedded6xx/Kconfig
 create mode 100644 arch/powerpc/platforms/iseries/Kconfig
 create mode 100644 arch/powerpc/platforms/iseries/Makefile
 rename include/asm-ppc64/iSeries/HvCallHpt.h => arch/powerpc/platforms/iseries/call_hpt.h (94%)
 create mode 100644 arch/powerpc/platforms/iseries/call_pci.h
 rename include/asm-ppc64/iSeries/HvCallSm.h => arch/powerpc/platforms/iseries/call_sm.h (89%)
 rename arch/{ppc64/kernel/iSeries_htab.c => powerpc/platforms/iseries/htab.c} (96%)
 rename arch/{ppc64/kernel/hvCall.S => powerpc/platforms/iseries/hvcall.S} (82%)
 rename arch/{ppc64/kernel/HvCall.c => powerpc/platforms/iseries/hvlog.c} (98%)
 rename arch/{ppc64/kernel/HvLpConfig.c => powerpc/platforms/iseries/hvlpconfig.c} (95%)
 rename arch/{ppc64/kernel/iSeries_iommu.c => powerpc/platforms/iseries/iommu.c} (86%)
 rename include/asm-ppc64/iSeries/ItIplParmsReal.h => arch/powerpc/platforms/iseries/ipl_parms.h (93%)
 rename arch/{ppc64/kernel/iSeries_irq.c => powerpc/platforms/iseries/irq.c} (97%)
 create mode 100644 arch/powerpc/platforms/iseries/irq.h
 create mode 100644 arch/powerpc/platforms/iseries/ksyms.c
 rename arch/{ppc64/kernel/LparData.c => powerpc/platforms/iseries/lpardata.c} (94%)
 rename arch/{ppc64/kernel/ItLpQueue.c => powerpc/platforms/iseries/lpevents.c} (74%)
 rename include/asm-ppc64/iSeries/IoHriMainStore.h => arch/powerpc/platforms/iseries/main_store.h (97%)
 rename arch/{ppc64/kernel/mf.c => powerpc/platforms/iseries/mf.c} (97%)
 create mode 100644 arch/powerpc/platforms/iseries/misc.S
 rename arch/{ppc64/kernel/iSeries_pci.c => powerpc/platforms/iseries/pci.c} (86%)
 create mode 100644 arch/powerpc/platforms/iseries/pci.h
 rename arch/{ppc64/kernel/iSeries_proc.c => powerpc/platforms/iseries/proc.c} (94%)
 rename include/asm-ppc64/iSeries/IoHriProcessorVpd.h => arch/powerpc/platforms/iseries/processor_vpd.h (94%)
 rename include/asm-ppc64/iSeries/HvReleaseData.h => arch/powerpc/platforms/iseries/release_data.h (92%)
 rename arch/{ppc64/kernel/iSeries_setup.c => powerpc/platforms/iseries/setup.c} (53%)
 rename arch/{ppc64/kernel/iSeries_setup.h => powerpc/platforms/iseries/setup.h} (86%)
 rename arch/{ppc64/kernel/iSeries_smp.c => powerpc/platforms/iseries/smp.c} (63%)
 rename include/asm-ppc64/iSeries/ItSpCommArea.h => arch/powerpc/platforms/iseries/spcomm_area.h (87%)
 rename arch/{ppc64/kernel/iSeries_vio.c => powerpc/platforms/iseries/vio.c} (100%)
 rename arch/{ppc64/kernel/viopath.c => powerpc/platforms/iseries/viopath.c} (100%)
 rename include/asm-ppc64/iSeries/ItVpdAreas.h => arch/powerpc/platforms/iseries/vpd_areas.h (95%)
 rename arch/{ppc64/kernel/iSeries_VpdInfo.c => powerpc/platforms/iseries/vpdinfo.c} (92%)
 create mode 100644 arch/powerpc/platforms/maple/Makefile
 create mode 100644 arch/powerpc/platforms/maple/maple.h
 rename arch/{ppc64/kernel/maple_pci.c => powerpc/platforms/maple/pci.c} (99%)
 rename arch/{ppc64/kernel/maple_setup.c => powerpc/platforms/maple/setup.c} (93%)
 rename arch/{ppc64/kernel/maple_time.c => powerpc/platforms/maple/time.c} (95%)
 create mode 100644 arch/powerpc/platforms/powermac/Makefile
 create mode 100644 arch/powerpc/platforms/powermac/backlight.c
 create mode 100644 arch/powerpc/platforms/powermac/cache.S
 create mode 100644 arch/powerpc/platforms/powermac/cpufreq.c
 create mode 100644 arch/powerpc/platforms/powermac/feature.c
 rename arch/{ppc64/kernel/pmac_low_i2c.c => powerpc/platforms/powermac/low_i2c.c} (100%)
 rename arch/{ppc64/kernel/pmac_nvram.c => powerpc/platforms/powermac/nvram.c} (51%)
 create mode 100644 arch/powerpc/platforms/powermac/pci.c
 create mode 100644 arch/powerpc/platforms/powermac/pic.c
 create mode 100644 arch/powerpc/platforms/powermac/pic.h
 create mode 100644 arch/powerpc/platforms/powermac/pmac.h
 create mode 100644 arch/powerpc/platforms/powermac/setup.c
 create mode 100644 arch/powerpc/platforms/powermac/sleep.S
 create mode 100644 arch/powerpc/platforms/powermac/smp.c
 create mode 100644 arch/powerpc/platforms/powermac/time.c
 create mode 100644 arch/powerpc/platforms/prep/Kconfig
 create mode 100644 arch/powerpc/platforms/pseries/Kconfig
 create mode 100644 arch/powerpc/platforms/pseries/Makefile
 rename arch/{ppc64/kernel/pSeries_hvCall.S => powerpc/platforms/pseries/hvCall.S} (100%)
 rename arch/{ppc64/kernel/pSeries_iommu.c => powerpc/platforms/pseries/iommu.c} (97%)
 rename arch/{ppc64/kernel/pSeries_lpar.c => powerpc/platforms/pseries/lpar.c} (99%)
 rename arch/{ppc64/kernel/pSeries_nvram.c => powerpc/platforms/pseries/nvram.c} (100%)
 rename arch/{ppc64/kernel/pSeries_pci.c => powerpc/platforms/pseries/pci.c} (99%)
 rename arch/{ppc64/kernel/ras.c => powerpc/platforms/pseries/ras.c} (99%)
 rename arch/{ppc64/kernel/pSeries_reconfig.c => powerpc/platforms/pseries/reconfig.c} (100%)
 create mode 100644 arch/powerpc/platforms/pseries/rtas-fw.c
 create mode 100644 arch/powerpc/platforms/pseries/rtas-fw.h
 rename arch/{ppc64/kernel/pSeries_setup.c => powerpc/platforms/pseries/setup.c} (93%)
 rename arch/{ppc64/kernel/pSeries_smp.c => powerpc/platforms/pseries/smp.c} (91%)
 rename arch/{ppc64/kernel/pSeries_vio.c => powerpc/platforms/pseries/vio.c} (100%)
 rename arch/{ppc64/kernel/xics.c => powerpc/platforms/pseries/xics.c} (98%)
 rename include/asm-ppc64/xics.h => arch/powerpc/platforms/pseries/xics.h (85%)
 create mode 100644 arch/powerpc/sysdev/Makefile
 rename arch/{ppc/syslib/dcr.S => powerpc/sysdev/dcr.S} (100%)
 create mode 100644 arch/powerpc/sysdev/grackle.c
 rename arch/{ppc/syslib/i8259.c => powerpc/sysdev/i8259.c} (78%)
 rename arch/{ppc/syslib/indirect_pci.c => powerpc/sysdev/indirect_pci.c} (100%)
 rename arch/{ppc64/kernel/mpic.c => powerpc/sysdev/mpic.c} (97%)
 rename arch/{ppc64/kernel/u3_iommu.c => powerpc/sysdev/u3_iommu.c} (89%)
 create mode 100644 arch/powerpc/xmon/Makefile
 rename arch/{ppc64/xmon/ansidecl.h => powerpc/xmon/ansidecl.h} (100%)
 rename arch/{ppc64/xmon/nonstdio.h => powerpc/xmon/nonstdio.h} (100%)
 rename arch/{ppc64/xmon/ppc-dis.c => powerpc/xmon/ppc-dis.c} (100%)
 rename arch/{ppc64/xmon/ppc-opc.c => powerpc/xmon/ppc-opc.c} (100%)
 rename arch/{ppc64/xmon/ppc.h => powerpc/xmon/ppc.h} (100%)
 create mode 100644 arch/powerpc/xmon/setjmp.S
 create mode 100644 arch/powerpc/xmon/start_32.c
 rename arch/{ppc64/xmon/start.c => powerpc/xmon/start_64.c} (100%)
 create mode 100644 arch/powerpc/xmon/start_8xx.c
 rename arch/{ppc64/xmon/subr_prf.c => powerpc/xmon/subr_prf.c} (92%)
 rename arch/{ppc64/xmon/xmon.c => powerpc/xmon/xmon.c} (87%)
 delete mode 100644 arch/ppc/kernel/fpu.S
 delete mode 100644 arch/ppc/kernel/perfmon.c
 delete mode 100644 arch/ppc/kernel/signal.c
 delete mode 100644 arch/ppc/kernel/syscalls.c
 delete mode 100644 arch/ppc/kernel/vector.S
 delete mode 100644 arch/ppc/oprofile/Makefile
 delete mode 100644 arch/ppc/oprofile/common.c
 delete mode 100644 arch/ppc/oprofile/op_impl.h
 create mode 100644 arch/ppc/platforms/chrp_nvram.c
 delete mode 100644 arch/ppc/syslib/of_device.c
 delete mode 100644 arch/ppc64/boot/zlib.c
 delete mode 100644 arch/ppc64/boot/zlib.h
 delete mode 100644 arch/ppc64/kernel/HvLpEvent.c
 delete mode 100644 arch/ppc64/kernel/cputable.c
 delete mode 100644 arch/ppc64/kernel/i8259.c
 delete mode 100644 arch/ppc64/kernel/i8259.h
 delete mode 100644 arch/ppc64/kernel/pmac.h
 delete mode 100644 arch/ppc64/kernel/pmac_feature.c
 delete mode 100644 arch/ppc64/kernel/pmac_pci.c
 delete mode 100644 arch/ppc64/kernel/pmac_setup.c
 delete mode 100644 arch/ppc64/kernel/pmac_smp.c
 delete mode 100644 arch/ppc64/kernel/pmac_time.c
 delete mode 100644 arch/ppc64/kernel/ptrace.c
 delete mode 100644 arch/ppc64/kernel/syscalls.c
 delete mode 100644 arch/ppc64/kernel/traps.c
 delete mode 100644 arch/ppc64/kernel/vecemu.c
 delete mode 100644 arch/ppc64/lib/strcase.c
 delete mode 100644 arch/ppc64/mm/Makefile
 delete mode 100644 arch/ppc64/mm/init.c
 delete mode 100644 arch/ppc64/oprofile/Kconfig
 delete mode 100644 arch/ppc64/xmon/Makefile
 delete mode 100644 arch/ppc64/xmon/setjmp.S
 create mode 100644 drivers/pcmcia/m8xx_pcmcia.c
 create mode 100644 include/asm-powerpc/a.out.h
 rename include/{asm-ppc/atomic.h => asm-powerpc/atomic.h} (76%)
 rename include/{asm-ppc64/auxvec.h => asm-powerpc/auxvec.h} (73%)
 rename include/{asm-ppc/backlight.h => asm-powerpc/backlight.h} (68%)
 create mode 100644 include/asm-powerpc/bug.h
 rename include/{asm-ppc64/byteorder.h => asm-powerpc/byteorder.h} (90%)
 rename include/{asm-ppc64/checksum.h => asm-powerpc/checksum.h} (78%)
 create mode 100644 include/asm-powerpc/cputable.h
 rename include/{asm-ppc/dbdma.h => asm-powerpc/dbdma.h} (100%)
 rename include/{asm-ppc/dma.h => asm-powerpc/dma.h} (90%)
 rename include/{asm-ppc64/elf.h => asm-powerpc/elf.h} (88%)
 rename include/{asm-ppc64/firmware.h => asm-powerpc/firmware.h} (94%)
 create mode 100644 include/asm-powerpc/grackle.h
 rename include/{asm-ppc/hardirq.h => asm-powerpc/hardirq.h} (61%)
 rename include/{asm-ppc/heathrow.h => asm-powerpc/heathrow.h} (100%)
 create mode 100644 include/asm-powerpc/hw_irq.h
 create mode 100644 include/asm-powerpc/i8259.h
 rename include/{asm-ppc64/iommu.h => asm-powerpc/iommu.h} (69%)
 rename include/{asm-ppc/irq.h => asm-powerpc/irq.h} (76%)
 rename include/{asm-ppc64/kdebug.h => asm-powerpc/kdebug.h} (80%)
 rename include/{asm-ppc/keylargo.h => asm-powerpc/keylargo.h} (100%)
 create mode 100644 include/asm-powerpc/kmap_types.h
 rename include/{asm-ppc64/kprobes.h => asm-powerpc/kprobes.h} (93%)
 rename include/{asm-ppc64/lmb.h => asm-powerpc/lmb.h} (100%)
 create mode 100644 include/asm-powerpc/machdep.h
 rename include/{asm-ppc/macio.h => asm-powerpc/macio.h} (100%)
 rename include/{asm-ppc/mediabay.h => asm-powerpc/mediabay.h} (100%)
 rename arch/ppc64/kernel/mpic.h => include/asm-powerpc/mpic.h (96%)
 rename include/{asm-ppc/of_device.h => asm-powerpc/of_device.h} (92%)
 rename include/{asm-ppc/ohare.h => asm-powerpc/ohare.h} (100%)
 rename include/{asm-ppc64/oprofile_impl.h => asm-powerpc/oprofile_impl.h} (73%)
 rename include/{asm-ppc64/pSeries_reconfig.h => asm-powerpc/pSeries_reconfig.h} (100%)
 rename include/{asm-ppc64/parport.h => asm-powerpc/parport.h} (84%)
 rename include/{asm-ppc/pmac_feature.h => asm-powerpc/pmac_feature.h} (100%)
 rename include/{asm-ppc/pmac_low_i2c.h => asm-powerpc/pmac_low_i2c.h} (100%)
 create mode 100644 include/asm-powerpc/pmc.h
 rename include/{asm-ppc64/posix_types.h => asm-powerpc/posix_types.h} (84%)
 rename arch/ppc64/kernel/pci.h => include/asm-powerpc/ppc-pci.h (90%)
 create mode 100644 include/asm-powerpc/ppc_asm.h
 create mode 100644 include/asm-powerpc/processor.h
 create mode 100644 include/asm-powerpc/prom.h
 rename include/{asm-ppc/reg.h => asm-powerpc/reg.h} (70%)
 rename include/{asm-ppc64/rtas.h => asm-powerpc/rtas.h} (98%)
 create mode 100644 include/asm-powerpc/rtc.h
 rename include/{asm-ppc64/rwsem.h => asm-powerpc/rwsem.h} (89%)
 create mode 100644 include/asm-powerpc/scatterlist.h
 rename include/{asm-ppc64/seccomp.h => asm-powerpc/seccomp.h} (59%)
 create mode 100644 include/asm-powerpc/sections.h
 rename include/{asm-ppc64/semaphore.h => asm-powerpc/semaphore.h} (94%)
 rename include/{asm-ppc64/smu.h => asm-powerpc/smu.h} (100%)
 rename include/{asm-ppc64/spinlock_types.h => asm-powerpc/spinlock_types.h} (79%)
 rename include/{asm-ppc64/sstep.h => asm-powerpc/sstep.h} (85%)
 create mode 100644 include/asm-powerpc/statfs.h
 create mode 100644 include/asm-powerpc/synch.h
 create mode 100644 include/asm-powerpc/system.h
 rename include/{asm-ppc64/thread_info.h => asm-powerpc/thread_info.h} (69%)
 create mode 100644 include/asm-powerpc/time.h
 rename include/{asm-ppc64/types.h => asm-powerpc/types.h} (63%)
 rename include/{asm-ppc/uninorth.h => asm-powerpc/uninorth.h} (100%)
 rename include/{asm-ppc/unistd.h => asm-powerpc/unistd.h} (89%)
 rename include/{asm-ppc/vga.h => asm-powerpc/vga.h} (60%)
 rename include/{asm-ppc64/vio.h => asm-powerpc/vio.h} (92%)
 create mode 100644 include/asm-powerpc/xmon.h
 delete mode 100644 include/asm-ppc/a.out.h
 delete mode 100644 include/asm-ppc/auxvec.h
 delete mode 100644 include/asm-ppc/bug.h
 delete mode 100644 include/asm-ppc/byteorder.h
 delete mode 100644 include/asm-ppc/checksum.h
 delete mode 100644 include/asm-ppc/cputable.h
 delete mode 100644 include/asm-ppc/elf.h
 delete mode 100644 include/asm-ppc/hw_irq.h
 delete mode 100644 include/asm-ppc/i8259.h
 delete mode 100644 include/asm-ppc/kmap_types.h
 delete mode 100644 include/asm-ppc/parport.h
 delete mode 100644 include/asm-ppc/perfmon.h
 delete mode 100644 include/asm-ppc/posix_types.h
 delete mode 100644 include/asm-ppc/ppc_asm.h
 delete mode 100644 include/asm-ppc/processor.h
 delete mode 100644 include/asm-ppc/rwsem.h
 delete mode 100644 include/asm-ppc/scatterlist.h
 delete mode 100644 include/asm-ppc/seccomp.h
 delete mode 100644 include/asm-ppc/sections.h
 delete mode 100644 include/asm-ppc/semaphore.h
 delete mode 100644 include/asm-ppc/spinlock_types.h
 delete mode 100644 include/asm-ppc/statfs.h
 delete mode 100644 include/asm-ppc/thread_info.h
 delete mode 100644 include/asm-ppc/types.h
 delete mode 100644 include/asm-ppc/xmon.h
 delete mode 100644 include/asm-ppc64/a.out.h
 delete mode 100644 include/asm-ppc64/atomic.h
 delete mode 100644 include/asm-ppc64/bootinfo.h
 delete mode 100644 include/asm-ppc64/bug.h
 delete mode 100644 include/asm-ppc64/cputable.h
 create mode 100644 include/asm-ppc64/dart.h
 delete mode 100644 include/asm-ppc64/dbdma.h
 delete mode 100644 include/asm-ppc64/dma.h
 delete mode 100644 include/asm-ppc64/hardirq.h
 delete mode 100644 include/asm-ppc64/hw_irq.h
 delete mode 100644 include/asm-ppc64/iSeries/HvCallPci.h
 delete mode 100644 include/asm-ppc64/iSeries/iSeries_irq.h
 delete mode 100644 include/asm-ppc64/iSeries/iSeries_pci.h
 delete mode 100644 include/asm-ppc64/irq.h
 delete mode 100644 include/asm-ppc64/keylargo.h
 delete mode 100644 include/asm-ppc64/kmap_types.h
 delete mode 100644 include/asm-ppc64/machdep.h
 delete mode 100644 include/asm-ppc64/macio.h
 delete mode 100644 include/asm-ppc64/memory.h
 delete mode 100644 include/asm-ppc64/of_device.h
 delete mode 100644 include/asm-ppc64/pmac_feature.h
 delete mode 100644 include/asm-ppc64/pmac_low_i2c.h
 delete mode 100644 include/asm-ppc64/pmc.h
 delete mode 100644 include/asm-ppc64/ppc_asm.h
 delete mode 100644 include/asm-ppc64/processor.h
 delete mode 100644 include/asm-ppc64/scatterlist.h
 delete mode 100644 include/asm-ppc64/sections.h
 delete mode 100644 include/asm-ppc64/statfs.h
 create mode 100644 include/asm-ppc64/tce.h
 delete mode 100644 include/asm-ppc64/time.h
 delete mode 100644 include/asm-ppc64/uninorth.h
 delete mode 100644 include/asm-ppc64/unistd.h
 delete mode 100644 include/asm-ppc64/vga.h

Andy Fleming:
      ppc32: 85xx PHY Platform Update

Andy Whitcroft:
      ppc64 memory model depends on NUMA

Becky Bruce:
      powerpc: Merge bug.h
      powerpc: Merge elf.h
      powerpc: merge atomic.h, memory.h
      powerpc: merge semaphore.h
      powerpc: merge byteorder.h
      powerpc: Merge types.h
      powerpc: Fix types.h
      ppc: Fix m82xx_pci build

Benjamin Herrenschmidt:
      ppc64: Store virtual address in TLB flush batches

David Gibson:
      powerpc: Fix use of LOADBASE in merge tree
      powerpc: Another maple merge tree fix
      powerpc: Merge ppc64 pmc.[ch] with ppc32 perfmon.[ch]
      Fix broken initialization of conswitchp for ARCH=ppc64
      powerpc: Merge thread_info.h
      powerpc: Fix handling of fpscr on 64-bit
      powerpc: Purge bootinfo.h
      powerpc: Merge parport.h
      powerpc: Don't use kmalloc() for kernel stacks
      powerpc: Remove dregs of bootinfo.h
      powerpc: Move xics.[ch] into platforms/pseries

jdl@freescale.com:
      powerpc: Merge asm-ppc*/posix_types.h

Jon Loeliger:
      powerpc: Merge kmap_types.h
      powerpc: Remove sections use from ppc
      powerpc: Remove sections use from ppc64 and drivers
      powerpc: Remove section free() and linker script bits
      powerpc: Merge simplified sections.h into asm-powerpc
      powerpc: Merge asm-ppc*/dma.h
      powerpc: Merge asm-ppc*/seccomp.h, drop TIF_32BIT check
      powerpc: Merge asm-ppc*/rwsem.h

Kumar Gala:
      powerpc: Merged ppc_asm.h
      ppc32: Removed non-inlined versions of local_irq* functions
      ppc32: Allow user to individual select CHRP/PMAC/PREP config
      ppc32: Allow user to individual select CHRP/PMAC/PREP config
      powerpc: unified signature of timer_interrupt() between ppc32/ppc64
      powerpc: merge include/asm-ppc*/auxvec.h into include/asm-powerpc/auxvec.h
      powerpc: merge include/asm-ppc*/spinlock_types.h into include/asm-powerpc/spinlock_types.h
      powerpc: merge include/asm-ppc*/statfs.h into include/asm-powerpc/statfs.h
      powerpc: Fix compiling of ppc32
      powerpc: merged hw_irq.h
      powerpc: Fix building of power3 config on ppc32
      powerpc: merged asm/cputable.h
      ppc32: make cur_cpu_spec a single pointer instead of an array
      powerpc: replace use of _GLOBAL with .globl
      powerpc: Some more fixes to allow building for a Book-E processor
      ppc32: replace use of _GLOBAL with .globl for ppc32
      powerpc: Make sure we have an RTC before trying to adjust it
      powerpc: some prom.c cleanups
      powerpc: merge include/asm-ppc*/checksum.h into include/asm-powerpc/checksum.h
      powerpc: Add support for Book-E timer config to generic_calibrate_decr
      powerpc: Some minor cleanups to setup_32.c
      powerpc: Fix warning related to do_dabr
      powerpc: Moved dcr support to arch/powerpc
      powerpc: only build idle_6xx for 6xx

Lee Nicks:
      ppc: prevent GCC 4 from generating AltiVec instructions in kernel

linuxppc@jdl.com:
      powerpc: Revised merge asm-ppc*/hardirq.h
      powerpc: Merge asm-ppc*/vga.h

Marcelo Tosatti:
      ppc32 8xx: use io accessor macros instead of direct memory reference
      MPC8xx PCMCIA driver
      ppc32: #ifdef out ALTIVEC specific code in __switch_to

Matt Porter:
      ppc32: Cleanup AMCC PPC44x eval board U-Boot support

Michael Ellerman:
      ppc64 iSeries: Move iSeries ppc_md functions into a machdep_calls struct
      ppc46 iSeries: Make some generic irq code compile for iSeries
      ppc64 iSeries: Update create_pte_mapping to replace iSeries_bolt_kernel()
      ppc64 iSeries: Make stab_initialize() work on iSeries
      ppc64 iSeries: Make smp_release_cpus() callable on iSeries
      ppc64 iSeries: Create a fake flat device tree on iSeries
      ppc64 iSeries: Call early_setup() on iSeries
      ppc64 iSeries: Move memory setup into iSeries device tree
      ppc64 iSeries: Move setup of systemcfg->platform into iSeries device tree
      ppc64 iSeries: Define /cpus in iSeries device tree
      powerpc: Don't blow away load_addr in start_thread
      powerpc: Fix mmap returning 64 bit addresses
      powerpc: Remove duplicate definition of set_tb()
      powerpc: Remove trailing \n" in HMT macros
      powerpc: Move firmware.h into include/asm-powerpc
      powerpc: Move ras.c into arch/powerpc/platforms/pseries

Nicolas DET:
      chrp_pegasos_eth: Added Marvell Discovery II SRAM support
      mv643xx_eth_showsram: Added information message when using the SRAM

Olaf Hering:
      ppc32: update xmon help text
      ppc32: nvram driver for chrp
      Add modalias for pmac network drivers
      ppc64 boot: remove include from lib/zlib_inflate/inflate.c
      ppc64 boot: remove include from include/linux/zutil.h
      ppc64 boot: missing include for size_t
      ppc64 boot: remove zlib
      ppc64 boot: remove need for imagesize.c
      ppc64 boot: move gunzip function before use
      ppc64 boot: bootfiles depend on linker script
      ppc64 boot: cleanup linker script
      ppc64 boot: use memset to clear bss
      ppc64 boot: fix typo in asm comments
      ppc64 boot: remove global initializers
      ppc64 boot: make the zImage relocateable
      ppc64 boot: proof that reloc works
      ppc64 boot: print firmware provided stackpointer
      ppc64: AC Power handling broken for desktops
      ppc64: compile nls_cp437 and nls_iso8859_1 into the kernel in defconfig
      ppc64: reenable make install with defconfig
      ppc64: change name of target file during make install
      ppc64: remove duplicate local variable in set_preferred_console

Olof Johansson:
      ppc64: Updated Olof iommu updates 1/3
      ppc64: Updated Olof iommu updates 2/3
      ppc64: Updated Olof misc updates 3/3

Paul Mackerras:
      Revert "ppc32: Allow user to individual select CHRP/PMAC/PREP config"
      Merge from Linus' tree.
      powerpc: Merge enough to start building in arch/powerpc.
      Merge refs/heads/devtree from rsync://oak/kernels/iseries/work/.git 
      ppc64: Fix typo in iommu cleanups that broke pmac build.
      powerpc: Fix building in the old arch's boot directory for now
      powerpc: Fixes to get the merged kernel to boot on powermac.
      Don't call a NULL ack function in the generic IRQ code.
      Merge Stephen Rothwell's patches
      Merge by hand from Linus' tree.
      powerpc: Get merged kernel to compile and run on 32-bit SMP powermac.
      Merge rsync://ozlabs.org/sfr-git/for-paulus/
      ppc32: export a few more things where they are defined
      ppc32: remove obsolete klock_info definition
      powerpc: Define 32/64 bit asm macros and use them in fpu.S
      powerpc: Merge in the ppc64 version of the prom code.
      powerpc: Merge lmb.c and make MM initialization use it.
      powerpc: Remove 64-bit cpu support from ppc32.
      powerpc: Merge of_device.c and of_device.h
      powerpc: Use the merged of_device.c with ARCH=powerpc
      powerpc: Merge traps.c a bit more
      powerpc: Define a _sdata symbol
      powerpc: Fix idle.c compile warning
      powerpc: Use SPRN_xxx rather than xxx for SPR numbers
      powerpc: Make some #includes explicit.
      powerpc: Merged processor.h.
      ppc64: Use the merged lmb routines
      powerpc: Rename files to have consistent _32/_64 suffixes
      powerpc: Merge arch/ppc64/mm to arch/powerpc/mm
      powerpc: move pSeries files to arch/powerpc/platforms/pseries
      ppc64: Use SPRN_ prefix for special purpose register names
      powerpc: rename powermac files to remove pmac_ prefix
      powerpc: Merge Kconfig.debug
      powerpc: Use reg.h instead of processor.h when we just want reg names
      powerpc: Use arch/powerpc/mm and arch/powerpc/lib for 64-bit
      powerpc: make process.c suitable for both 32-bit and 64-bit
      powerpc: Introduce entry_{32,64}.S, misc_{32,64}.S, systbl.S
      powerpc: Make prom_init.c suitable for both 32-bit and 64-bit
      powerpc: Reduce the 32/64-bit differences in traps.c
      powerpc: Reduce the 32/64-bit diffs in vmlinux.lds.S
      powerpc: Fix bug caused by negation of 64-bit reloc_offset value
      powerpc: move lparmap.c to arch/powerpc/kernel
      powerpc: Get 64-bit configs to compile with ARCH=powerpc
      powerpc: Get iseries to compile with ARCH=powerpc
      powerpc: Merge asm/irq.h
      powerpc: Merge asm/unistd.h
      powerpc: Fix off-by-one error in prom_init.c
      powerpc: Fix compilation for 32-bit configs
      powerpc: Start merging 64-bit support into powermac files
      powerpc: Make building the boot image work for both 32-bit and 64-bit
      powerpc: Merged asm/backlight.h
      powerpc: Merged asm/i8259.h
      powerpc: Remove 83xx from arch/powerpc/platforms/Makefile for now
      powerpc: Merged asm/xmon.h
      powerpc: Remove xmon.h include from arch/powerpc/platforms/powermac/pic.c
      powerpc: Remove debug messages from setup_64.c
      ppc: Adapt to asm-powerpc/irq.h irq_canonicalize changes
      ppc: Various minor compile fixes
      ppc64: Use merged versions of init_task.c and process.c.
      ppc64: compile fix - define execve in misc.S
      Merge from Linus' tree
      powerpc: Move default hash table size calculation to hash_utils_64.c
      powerpc: Bring in some changes made to arch/ppc and include/asm-ppc64
      ppc64: Remove duplicate versions of some headers
      powerpc: Initialize btext subsystem later, after prom_init
      powerpc: Merge syscalls.c and sys_ppc32.c.
      ppc: Use the merged of_device.c from arch/powerpc/kernel
      ppc: Fix various compile errors resulting from ptrace.c merge
      powerpc: Clear the BSS at the start of early_init with ARCH=ppc
      powerpc: Make CONFIG_PROC_DEVICETREE independent of CONFIG_PPC_OF
      powerpc: Fix various compile errors with ARCH=ppc, ppc64 and powerpc
      Merge rsync://oak/kernels/iseries/work/
      ppc: Minor smp changes for consistency with ppc64
      powerpc: Merge machdep.h
      ppc: declare smp_ops in asm/smp.h, since platform setup code needs it
      powerpc: Eliminate a compile warning in signal_32.c
      powerpc: Move ptrace32.c from arch/ppc64 to arch/powerpc
      ppc64: Minor compilation fixes
      powerpc: Merge time.c and asm/time.h.
      powerpc: Fix a branch-too-far link error for 32-bit targets
      powerpc: Fix a corner case in __div64_32
      ppc64: Change ppc_md.get_cpuinfo to ppc_md.show_cpuinfo
      powerpc: Move smp_mpic_message_pass into mpic.c
      powerpc: Fix places where ppc_md.show_[per]cpuinfo was treated as int
      powerpc: Merge various powermac-related header files.
      ppc: rename pci_assign_all_busses to pci_assign_all_buses
      ppc64: Move init_boot_text call and conswitchp init into setup_arch
      powerpc: Move some calculations from xxx_calibrate_decr to time_init
      ppc64: Use the merged mpic.c
      powerpc/ppc/ppc64: Various compile fixes.
      powerpc: Fix some bugs in the new merged time code
      powerpc: Move agp_special_page export to where it is defined
      ppc64: Fix delivery of RT signals to 32-bit processes.
      ppc64/powerpc: Fix time initialization on SMP systems
      ppc64: Add a `primary' argument to pci_process_bridge_OF_ranges
      ppc64: Rearrange btext initialization for consistency with ppc32
      ppc64: Simplify secondary CPU startup on powermacs
      powerpc: Make set_rtc_time() return error code from lower-level function
      powerpc: Merge in 64-bit powermac support.
      ppc64: Use arch/powerpc/platforms/powermac for powermac build.
      Merge changes from linux-2.6 by hand
      powerpc: Fix time code for 601 processors
      powerpc: Run on old powermacs.
      powerpc: Make coff boot wrapper load the kernel at 8M
      ppc: Use the indirect_pci.c from arch/powerpc/sysdev
      powerpc: Merge i8259.c into arch/powerpc/sysdev
      powerpc: Merge rtas.c into arch/powerpc/kernel
      powerpc: Pull common bits of setup_{32,64}.c into setup-common.c
      powerpc: Pull out MPC106 (grackle) initialization code into its own file
      powerpc: Fix interrupt-tree parsing
      powerpc: Don't limit pmac_get_rtc_time to return only positive values
      powerpc: Merge 32-bit CHRP support.
      powerpc: Fixes to get the Longtrail CHRP a bit further
      power: Update the multiple inclusion protection symbol on machdep.h
      powerpc32: Limit memory to lowmem if !CONFIG_HIGHMEM.
      powerpc: Fix incorrect timer register addresses in mpic.c
      powerpc: 32-bit powermac needs the mpc106 code
      powerpc: Remove common stuff from setup_64.c
      powerpc: undeprecate the old OF device tree accessors for now
      ppc64: remove arch/ppc64/kernel/setup.c
      powerpc: remove duplicate screen_info from setup_32.c
      powerpc: 32-bit CHRP SMP fixes
      powerpc: Introduce toreal/fromreal assembly macros
      powerpc: Fix new-world powermac detection
      powerpc: Move U3 IOMMU driver to arch/powerpc/sysdev
      ppc64: Include arch/powerpc/kernel/setup-common.o
      ppc64: Use the correct prototypes for i8259 functions
      Merge in v2.6.14 by hand
      Merge git://oak/home/sfr/kernels/iseries/work/
      powerpc: Rename asm offset TRAP to _TRAP for 32-bit
      powerpc: Make single-stepping emulation (mostly) usable on 32-bit
      powerpc: Merge xmon
      powerpc: Add -mno-altivec for ARCH=powerpc builds
      powerpc: Merge maple support code to arch/powerpc/platforms/maple
      powerpc: 32-bit needs cur_cpu_spec exported too
      powerpc: import a gfp_t fix to arch/powerpc/mm/pgtable_32.c
      powerpc: Remove T command from xmon help text since it no longer exists
      powerpc: Fix time setting bug on 32-bit
      powerpc: Fix bug arising from having multiple memory_limit variables
      ppc: remove duplicate export of cur_cpu_spec
      Merge ../linux-2.6 by hand
      powerpc: apply recent changes to merged code
      powerpc: import a fix from arch/ppc/mm/pgtable.c

Roland Dreier:
      ppc: make phys_mem_access_prot() work with pfns instead of addresses

scwhab@suse.de:
      Add modalias to macio sysfs attributes

Stephen Rothwell:
      powerpc: Move arch/ppc*/kernel/vecemu.c to arch/powerpc
      powerpc: Merge include/asm-ppc*/a.out.h into include/asm-powerpc
      powerpc: Move arch/ppc*/oprofile/Kconfig to arch/powerpc
      Merge arch/ppc*/oprofile/Makefile into arch/powerpc/oprofile
      powerpc: rename op_ppc{32,64}_model to op_powerpc_model
      powerpc: merge oprofile headers
      powerpc: merge the rest of arch/ppc*/oprofile
      powerpc: reduce oprofile/common.c differences
      ppc64 iSeries: Don't create linux,boot-cpu
      powerpc: clean up after powermac build merge
      ppc64 g5: merge tree build fix
      powerpc: Create arch/powerpc/platforms/iseries
      powerpc: Move HvLpConfig.c to powerpc arch
      powerpc: Move LparData.c to powerpc platforms
      powerpc: move iSeries_setup.[ch] and mf.c into platforms/iseries
      powerpc: move ItLpQueue.c to powerpc/platforms/iseries
      powerpc: move hvCall.s to powerpc/platforms/iseries
      powerpc: Merge HvLpEvent.c into lpevents.c
      powerpc: move iSeries_proc.c to powerpc/platforms/iseries
      powerpc: Move iSeries_htab.c to powerpc/platforms/iseries
      powerpc: Move iSeries_iommu.c to powerpc/platforms/iseries
      powerpc: Move iSeries_pci.c to powerpc/platform/iseries
      powerpc: Move iSeries_irq.c to powerpc/platorms/iseries
      powerpc: Move iSeries_VpdInfo.c to powerpc/platforms/iseries
      powerpc: Move iSeries_vio.c to powerpc/platforms/iseries
      powerpc: Move iSeries_smp.c to powerpc/platforms/iseries
      powerpc: Move viopath.c to powerpc/platforms/iseries
      powerpc: Make powerpc pmac 32 bit build again
      powerpc: move more iSeries code
      ppc64 iSeries: use device_node instead of iSeries_Device_node
      ppc64 iseries: move some iSeries include files
      powerpc: merge asm-offsets.c
      powerpc: remove old vector.S files
      powerpc: more cleanup of powerpc/kernel
      powerpc: Move lparmap.c to powerpc/platforms
      powerpc: merge idle_power4.S and trapc.s
      ppc64: simplify the build a little
      powerpc: make iSeries build
      powerpc: make iSeries boot
      powerpc: pci_dn's should point to their device_node's
      powerpc: make iSeries boot again
      powerpc: consolidate cputable.c
      powerpc: create 32 bit LOADADDR macro
      powerpc: make 64 bit binaries work
      ppc64: merge binfmt_elf32.c
      ppc64: fix arch/ppc64/kernel/Makefile
      ppc64: use powerpc of_device.c
      powerpc: merge ptrace.c
      powerpc: fix uname -m
      powerpc: move iSeries/iSeries_pci.h to platforms/iseries
      powerpc: remove ISERIES_[SUB]BUS macros
      powerpc: eliminate DsaAddr from pci_dn
      powerpc: move iSeries/HvCallHpt.h to platforms/iseries/call_hpt.h
      powerpc: move iSeries/HvCallPci.h to platforms/iseries/call_pci.h
      powerpc: fix 32bit LOADADDR macro
      ppc32: use L1_CACHE_SHIFT/L1_CACHE_BYTES
      powerpc: merge ppc signal.c and ppc64 signal32.c
      powerpc: change sys32_ to compat_sys_
      powerpc: Merge arch/ppc64/kernel/vio.c into arch/powerpc/kernel/vio.c
      powerpc: Move include/asm-ppc64/vio.h to include/asm-powerpc/vio.h
      powerpc: don't duplicate name between vio_driver and device_driver
      powerpc: iseries: Fix a bogus comment
      powerpc: set the driver.owner field for all vio drivers
      powerpc: Add a shutdown member to vio_driver
      ppc64: make dma_addr_t 64 bits
      powerpc: merge scatterlist.h
      ppc64: use the merged syscall table
      ppc64: use checksum_64.S from powerpc
      ppc64: use e2a.c from powerpc/lib
      ppc64: use copypage_64.S from powerpc/lib
      ppc64: use copyuser_64.S from powerpc/lib
      ppc64: use lockc.c from powerpc/lib
      ppc64: use memcpy_64.S from powerpc/lib
      ppc64: use sstep.c from powerpc/lib
      ppc64: user strcase.c from powerpc/lib
      ppc64: use usercopy_64.c from powerpc/lib
      ppc64: use mem_64.S from powerpc/lib

Vitaly Bordug:
      ppc32: ppc_sys fixes for 8xx and 82xx

^ permalink raw reply

* Re: exception vectors
From: Hollis Blanchard @ 2005-10-31  2:28 UTC (permalink / raw)
  To: Ingmar; +Cc: linuxppc-dev list
In-Reply-To: <20051031002926.M71008@quicknet.nl>

On Oct 30, 2005, at 6:35 PM, Ingmar wrote:
>
> I am trying to overwrite the exception vector space of an ibook G4 :).

Why?

> I have set up (for every exception) a small piece of code, that's a=20
> prefix of a
> handler to be called. My problem is, that writing the =93small=94 =
chunks=20
> of code to
> the exception vector space gives no problem(so it seams) but writing=20=

> all the
> pieces of code as one chunk gives a exception [dsi, dsisr 0x42000000],=20=

> this
> indicates a store problem.

Code please. You're just calling memcpy?

> I have tried different modes of copying, mmu on/off, also chanced the=20=

> WING bit,
> switched the exception prefix on.

You could not have gotten a DSI if you disabled the MMU...

> I don't believe putting the exception vectors to there =93place=94 one =
by=20
> one is the
> right way, in the Linux kernel the kernel get relocated and the code=20=

> comes into
> place. I have taken this as an example, unfortunately to to result =
:(..

So you are not trying to overwrite Linux's functioning exception=20
handlers, but rather trying to write your own OS?

>  - Am I overlooking something?
>  - Is the a =93standard way=94 to overwrite the exception vector space =
of=20
> a powerpc?

Do you think this is a common task? :)

-Hollis

^ permalink raw reply

* Re: exception vectors
From: Benjamin Herrenschmidt @ 2005-10-31  2:17 UTC (permalink / raw)
  To: Ingmar; +Cc: linuxppc-dev list
In-Reply-To: <20051031002926.M71008@quicknet.nl>

On Mon, 2005-10-31 at 01:35 +0100, Ingmar wrote:
> Hi all,
> 
> I am trying to overwrite the exception vector space of an ibook G4 :).
> 
> I have set up (for every exception) a small piece of code, that's a prefix of a
> handler to be called. My problem is, that writing the “small” chunks of code to
> the exception vector space gives no problem(so it seams) but writing all the
> pieces of code as one chunk gives a exception [dsi, dsisr 0x42000000], this
> indicates a store problem.
> 
> I have tried different modes of copying, mmu on/off, also chanced the WING bit,
> switched the exception prefix on.
> 
> I don't believe putting the exception vectors to there “place” one by one is the
> right way, in the Linux kernel the kernel get relocated and the code comes into
> place. I have taken this as an example, unfortunately to to result :(..
> 
>  - Am I overlooking something?
>  - Is the a “standard way” to overwrite the exception vector space of a powerpc?

Well, you typically do this with the MMU disabled and making sure you
don't take an exception while copying over them...

Ben.

^ permalink raw reply

* Re: use of phy_connect() in drivers/net/gianfar.c ?
From: Matthew McClintock @ 2005-10-31  0:41 UTC (permalink / raw)
  To: Wolfgang Denk; +Cc: linuxppc-dev, Jeff Garzik
In-Reply-To: <20051030151847.C4383353416@atlas.denx.de>

On Sun, 2005-10-30 at 08:18 -0700, Wolfgang Denk wrote:

> > As far as I understand there are patches in the -mm tree with
> contain=20
> > the updates for the Gianfar driver. The issue is due to a
>=20
> Do you happen to know of a specific (set of) patch(es)? URL?

I believe this is the patch, however Andy can let you know  for sure on
Monday if I am wrong.

http://ozlabs.org/pipermail/linuxppc-dev/2005-October/020178.html

>=20
> > synchronization issue with the new PHY abstraction layer that was
> added.
>=20
> Yes, obviously. But I am still so na=C3=AFve to expect that  such  change=
s=20
> would not make it untested (the code is not even compile clean) to an=20
> official kernel release like 2.6.14 ?

I assure you we made our best effort to get it all in, but it did not
work out like we wanted.

-Matthew

^ permalink raw reply

* exception vectors
From: Ingmar @ 2005-10-31  0:35 UTC (permalink / raw)
  To: linuxppc-dev list
In-Reply-To: <1130645036.29054.229.camel@gaston>

Hi all,

I am trying to overwrite the exception vector space of an ibook G4 :).

I have set up (for every exception) a small piece of code, that's a prefix of a
handler to be called. My problem is, that writing the “small” chunks of code to
the exception vector space gives no problem(so it seams) but writing all the
pieces of code as one chunk gives a exception [dsi, dsisr 0x42000000], this
indicates a store problem.

I have tried different modes of copying, mmu on/off, also chanced the WING bit,
switched the exception prefix on.

I don't believe putting the exception vectors to there “place” one by one is the
right way, in the Linux kernel the kernel get relocated and the code comes into
place. I have taken this as an example, unfortunately to to result :(..

 - Am I overlooking something?
 - Is the a “standard way” to overwrite the exception vector space of a powerpc?

ThankZ,
  Ingmar

^ permalink raw reply

* PowerPC PVR version bug (G4 etc.)
From: Matt Sealey @ 2005-10-30 23:38 UTC (permalink / raw)
  To: linuxppc-dev


There is a small, innocuous but annoying processor version reporting bug.

/proc/cpuinfo for my 1Ghz 7447 says

revision : 0.1 (pvr 8002 0101)

In fact the processor is version 1.1. You can see it is properly encoded
but the macro used to decode it is (in asm-ppc/reg.h):

#define PVR_MAJ(pvr)	(((pvr) >>  4) & 0xF)	/* Major revision field */
#define PVR_MIN(pvr)	(((pvr) >>  0) & 0xF)	/* Minor revision field */

When Freescale processors are detected, it sets maj and min to the results
of these macros.

Then it prints:

seq_printf(m, "revision\t: %hd.%hd (pvr %04x %04x)\n",
	maj, min, PVR_VER(pvr), PVR_REV(pvr));

Obviously for standalone Freescale processors, at least this is plain wrong;
the correct shift is >> 8 for the major revision field. There is a comment
above the PVR_ macros that this is an IBM encoding scheme, so..

Any chance of a minor fix for this? It will affect every G4 processor ever
made which is a lot of chips in a lot of machines, and for systems that can
use a 7447, 7447A, 7448 there are two or three PVRs (7448 especially which
has a 1.1 and a 2.1 version) that can produce a 0.1 result which may cause
problems if someone accidentally decides to grep that string and ignore the
PVR.

As I said it's innocuous but it's there.

Thanks :)

-- 
Matt Sealey <matt@genesi-usa.com>
Manager, Genesi, Developer Relations

^ permalink raw reply

* Re: 30 bits DMA and ppc
From: Olof Johansson @ 2005-10-30 22:02 UTC (permalink / raw)
  To: Benjamin Herrenschmidt; +Cc: linuxppc-dev list, bcm43xx-dev
In-Reply-To: <1130708514.29054.292.camel@gaston>

On Mon, Oct 31, 2005 at 08:41:54AM +1100, Benjamin Herrenschmidt wrote:
> > Yep, the table is already split once, and I'm not sure in retrospect how
> > useful that split was anyway, it can maybe go away. Switching it around
> > shouldn't be a big issue.
> 
> No real need to split permanently... the search could be restricted to a
> given range easily.

Yeah, that's what it does now too, if it can't find anything in the
"right" part of the table, it'll try the other. So other devices would
use the same section if the "regular" table got full.


-Olof

^ permalink raw reply

* Re: 30 bits DMA and ppc
From: Benjamin Herrenschmidt @ 2005-10-30 21:41 UTC (permalink / raw)
  To: Olof Johansson; +Cc: linuxppc-dev list, bcm43xx-dev
In-Reply-To: <20051030213517.GA11327@pb15.lixom.net>

> The non-iommu case might want to do that for other devices as well,
> i.e. 32-bit limited ones on 64-bit machines.

Yup, that would be useful with some 3rd party bridges that don't have an
iommu ... :)

> Yep, the table is already split once, and I'm not sure in retrospect how
> useful that split was anyway, it can maybe go away. Switching it around
> shouldn't be a big issue.

No real need to split permanently... the search could be restricted to a
given range easily.

Ben.

^ permalink raw reply

* Re: 30 bits DMA and ppc
From: Olof Johansson @ 2005-10-30 21:35 UTC (permalink / raw)
  To: Benjamin Herrenschmidt; +Cc: linuxppc-dev list, bcm43xx-dev
In-Reply-To: <1130706859.29054.283.camel@gaston>

On Mon, Oct 31, 2005 at 08:14:18AM +1100, Benjamin Herrenschmidt wrote:
> 
> > Keep in mind that those 16MB are cache inhibited. Not sure you'd want
> > that for the bounce buffer. And you can't map the same page as cacheable
> > or you'll end up in inconsistent state. I guess you could remap the 14MB
> > as 4K cacheable pages somewhere else.
> 
> Euh... I think that's exactly what we do :) We _unmap_ the 16Mb page
> from the linear mapping, and we remap a part of it using ioremap() (thus
> as 4k pages) in the DART driver... The remaining bits are thus not
> mapped at all, there is no problem using __ioremap() to get a cacheable
> mapping there.

Sure, that would work.

> > Some of the Infiniband and Myrinet adapters like to map as much as they
> > possibly can. I'm not sure what the likeliness of them being used on a
> > machine at the same time as one of these crippled devices is though.
> 
> Why would this be a problem ? The infiniband driver would hopefully have
> a sane dma_mask, and thus it's mapping requests wouldn't hit the swiotlb
> code path.

Not a problem, I was just thinking out loud. IOMMU pressure might be
higher on these systems than the average one, but there should still be
enough room.

> > Sounds reasonable to me too. I guess time will tell how hairy it gets,
> > implementation-wise. The implementation could also be nicely abstracted
> > away and isolated thanks to Stephen's per-device-dma-ops stuff.
> 
> Yes, though that's not strictly necessary. The dma_mask should be enough
> to tell us wether to use the normal code path or the swiotlb one. So if
> swiotlb is enabled, it could just be added to the normal code path for
> the non-iommu case.

The non-iommu case might want to do that for other devices as well,
i.e. 32-bit limited ones on 64-bit machines.

> For the iommu case, I'm not sure. I think we don't
> need bounce buffering. I could fairly easily have the DART code limit
> allocations to a given DMA mask. The TCE one may have more issues since
> the DMA window of a given slot may not fit the requirements, but in that
> case, it's probably just a matter of failing all mapping requests.

Yep, the table is already split once, and I'm not sure in retrospect how
useful that split was anyway, it can maybe go away. Switching it around
shouldn't be a big issue.


-Olof

^ permalink raw reply

* Re: [PATCH 2.6.14] mm: 8xx MM fix for
From: Benjamin Herrenschmidt @ 2005-10-30 21:16 UTC (permalink / raw)
  To: pantelis.antoniou; +Cc: Dan Malek, linuxppc-embedded
In-Reply-To: <200510302203.25390.pantelis.antoniou@gmail.com>

On Sun, 2005-10-30 at 23:03 +0300, Pantelis Antoniou wrote:
> Latest MMU changes caused 8xx to stop working. Flushing tlb of the faulting
> address fixes the problem.

Ugh ?

What is the problem precisely ? This is just a dodgy workaround for an
unexplained problem. Normally, the kenrel _WILL_ cause a tlb flush after
manipulating a PTE.

Ben.

> ---
> commit 978e2f36b1ae53e37ba27b3ab8f1c5ddbb8c8a10
> tree 7dd0e403c240162b1925db0834d694f4b4a0e95e
> parent ca02ea5aebcda886d1552c6af73ca96c02bf9fed
> author Pantelis Antoniou <panto@pantathon> Sun, 30 Oct 2005 21:53:48 +0200
> committer Pantelis Antoniou <panto@pantathon> Sun, 30 Oct 2005 21:53:48 +0200
> 
>  arch/ppc/mm/fault.c |   13 +++++++++++++
>  1 files changed, 13 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/ppc/mm/fault.c b/arch/ppc/mm/fault.c
> --- a/arch/ppc/mm/fault.c
> +++ b/arch/ppc/mm/fault.c
> @@ -240,6 +240,19 @@ good_area:
>  			goto bad_area;
>  		if (!(vma->vm_flags & (VM_READ | VM_EXEC)))
>  			goto bad_area;
> +
> +#ifdef CONFIG_8xx
> +		{
> +		/* 8xx is retarded; news at 11 */
> +		pte_t *ptep = NULL;
> +
> +		if (get_pteptr(mm, address, &ptep) && pte_present(*ptep))
> +			_tlbie(address);
> +
> +		if (ptep != NULL)
> +			pte_unmap(ptep);
> +		}
> +#endif
>  	}
>  
>  	/*

^ permalink raw reply

* Re: 30 bits DMA and ppc
From: Benjamin Herrenschmidt @ 2005-10-30 21:14 UTC (permalink / raw)
  To: Olof Johansson; +Cc: linuxppc-dev list, bcm43xx-dev
In-Reply-To: <20051030175956.GB7039@pb15.lixom.net>


> Keep in mind that those 16MB are cache inhibited. Not sure you'd want
> that for the bounce buffer. And you can't map the same page as cacheable
> or you'll end up in inconsistent state. I guess you could remap the 14MB
> as 4K cacheable pages somewhere else.

Euh... I think that's exactly what we do :) We _unmap_ the 16Mb page
from the linear mapping, and we remap a part of it using ioremap() (thus
as 4k pages) in the DART driver... The remaining bits are thus not
mapped at all, there is no problem using __ioremap() to get a cacheable
mapping there.

> Some of the Infiniband and Myrinet adapters like to map as much as they
> possibly can. I'm not sure what the likeliness of them being used on a
> machine at the same time as one of these crippled devices is though.

Why would this be a problem ? The infiniband driver would hopefully have
a sane dma_mask, and thus it's mapping requests wouldn't hit the swiotlb
code path.
. 
> Besides, they usually back off a bit from allocating everything in the
> system, so there should be some room.
> 
> > I tend to prefer the later solution ...
> 
> Sounds reasonable to me too. I guess time will tell how hairy it gets,
> implementation-wise. The implementation could also be nicely abstracted
> away and isolated thanks to Stephen's per-device-dma-ops stuff.

Yes, though that's not strictly necessary. The dma_mask should be enough
to tell us wether to use the normal code path or the swiotlb one. So if
swiotlb is enabled, it could just be added to the normal code path for
the non-iommu case. For the iommu case, I'm not sure. I think we don't
need bounce buffering. I could fairly easily have the DART code limit
allocations to a given DMA mask. The TCE one may have more issues since
the DMA window of a given slot may not fit the requirements, but in that
case, it's probably just a matter of failing all mapping requests.

Ben.

^ permalink raw reply

* [PATCH 2.6.14] mm: 8xx MM fix for
From: Pantelis Antoniou @ 2005-10-30 20:03 UTC (permalink / raw)
  To: Benjamin Herrenschmidt; +Cc: Dan Malek, linuxppc-embedded

Latest MMU changes caused 8xx to stop working. Flushing tlb of the faulting
address fixes the problem.

---
commit 978e2f36b1ae53e37ba27b3ab8f1c5ddbb8c8a10
tree 7dd0e403c240162b1925db0834d694f4b4a0e95e
parent ca02ea5aebcda886d1552c6af73ca96c02bf9fed
author Pantelis Antoniou <panto@pantathon> Sun, 30 Oct 2005 21:53:48 +0200
committer Pantelis Antoniou <panto@pantathon> Sun, 30 Oct 2005 21:53:48 +0200

 arch/ppc/mm/fault.c |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/arch/ppc/mm/fault.c b/arch/ppc/mm/fault.c
--- a/arch/ppc/mm/fault.c
+++ b/arch/ppc/mm/fault.c
@@ -240,6 +240,19 @@ good_area:
 			goto bad_area;
 		if (!(vma->vm_flags & (VM_READ | VM_EXEC)))
 			goto bad_area;
+
+#ifdef CONFIG_8xx
+		{
+		/* 8xx is retarded; news at 11 */
+		pte_t *ptep = NULL;
+
+		if (get_pteptr(mm, address, &ptep) && pte_present(*ptep))
+			_tlbie(address);
+
+		if (ptep != NULL)
+			pte_unmap(ptep);
+		}
+#endif
 	}
 
 	/*

^ permalink raw reply

* Re: 30 bits DMA and ppc
From: Olof Johansson @ 2005-10-30 17:59 UTC (permalink / raw)
  To: Benjamin Herrenschmidt; +Cc: linuxppc-dev list, bcm43xx-dev
In-Reply-To: <1130645036.29054.229.camel@gaston>

On Sun, Oct 30, 2005 at 03:03:55PM +1100, Benjamin Herrenschmidt wrote:

> However, what I can do is have the architecture code reserve a pool of
> memory at boot if the machine main RAM is bigger than 1Gb, to use for
> bounce-buffering. On the G5 with more than 2Gb, this is even easier
> since I already have to blow away a 16Mb page for use by the IOMMU, but
> the IOMMU only uses 2Mb in there, so I have about 14Mb that I could
> re-use for that. On 32 bits machine, I can just reserve something early
> during boot.

Keep in mind that those 16MB are cache inhibited. Not sure you'd want
that for the bounce buffer. And you can't map the same page as cacheable
or you'll end up in inconsistent state. I guess you could remap the 14MB
as 4K cacheable pages somewhere else.

> Now, how to actually make use of that pool. One way is to hack something
> specific inside the bcm43xx driver. The pool can then be easily cut in
> regions: the descriptor rings buffers, and 2 pools, one for Rx and one
> for Tx. The allocation inside of those pools can be done as simple ring
> buffer too due to the inherently ordered processing of packets.
> 
> However, the above would require arch specific hacks, and would only
> work for one card in the system (too bad if you plug a cardbus one).
> 
> Another possibility that might be more interesting is to use swiotlb.
> This is a somewhat generic bounce-buffering implementation of the DMA
> mapping routines that is used by ia64 and x86_64 when no IOMMU is
> available. It will automatically do nothing if the address fits the DMA
> mask so it shouldn't add much overhead to other drivers and would "make
> things work" transparently. In addition, for G5s with more than 2Gb of
> RAM (which have an iommu), I could modify the iommu code to take into
> account the DMA mask when allocating DMA virtual space. (The later would
> have a slight risk of failure, but I doubt it will happen in practice,
> as it would mean one has more than 1Gb of pending DMA at a given point
> in time).

Some of the Infiniband and Myrinet adapters like to map as much as they
possibly can. I'm not sure what the likeliness of them being used on a
machine at the same time as one of these crippled devices is though.
Besides, they usually back off a bit from allocating everything in the
system, so there should be some room.

> I tend to prefer the later solution ...

Sounds reasonable to me too. I guess time will tell how hairy it gets,
implementation-wise. The implementation could also be nicely abstracted
away and isolated thanks to Stephen's per-device-dma-ops stuff.


-Olof

^ permalink raw reply


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox