* 30 bits DMA and ppc
From: Benjamin Herrenschmidt @ 2005-10-30 4:03 UTC (permalink / raw)
To: bcm43xx-dev; +Cc: linuxppc-dev list
Hi !
I was thinking about the best ways to deal with the 30 bits limitation
of the Broadcom chips for DMA on PowerMacs. No emergency there, we still
need to have a working bcm43xx driver and the developpement can be done
with <= 1Gb of RAM, but it will have to be addressed at one point as we
are getting closer to something that is useable :)
I will not implement something like GFP_DMA, I think. It just sucks too
much...
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.
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).
I tend to prefer the later solution ...
Anybody with strong disagreement with using swiotlb on PPC ? The choice
of wether to allocate RAM for it at boot and how much can be done per
platform and based on the amount of real RAM (for example, on pmac, I
suppose I would only allocate some if the physical RAM is more than 1Gb
since that's the limitation of those Broadcom chips and I don't see any
other potential user for it).
Besides, it may end up being useful for some crappy embedded stuffs (no
name here :)
Ben.
^ permalink raw reply
* [PATCH] PPC: Basic enablement for new 15" PowerBook
From: Olof Johansson @ 2005-10-30 4:42 UTC (permalink / raw)
To: linuxppc-dev
Hi,
Partial enablement patch for the new PowerBooks (hires revisions).
This enables the ATA controller, Gigabit ethernet and basic AGP setup.
Still remaining is to get the touchpad to work, the simple change of
just adding the new USB ids isn't enough. Sleep isn't working quite yet
either but this will give a kernel that can be used for installation
and basic use for now.
It's a qualified guess that the new 17" is PowerBook5,9, but until it's
confirmed there's not much use in adding it to the pmac_feature table.
Signed-off-by: Olof Johansson <olof@lixom.net>
Index: linux-2.6.14/arch/ppc/platforms/pmac_feature.c
===================================================================
--- linux-2.6.14.orig/arch/ppc/platforms/pmac_feature.c 2005-10-29 23:07:09.000000000 -0500
+++ linux-2.6.14/arch/ppc/platforms/pmac_feature.c 2005-10-29 23:26:33.000000000 -0500
@@ -2317,6 +2317,10 @@ static struct pmac_mb_def pmac_mb_defs[]
PMAC_TYPE_UNKNOWN_INTREPID, intrepid_features,
PMAC_MB_MAY_SLEEP | PMAC_MB_HAS_FW_POWER | PMAC_MB_MOBILE,
},
+ { "PowerBook5,8", "PowerBook G4 15\"",
+ PMAC_TYPE_UNKNOWN_INTREPID, intrepid_features,
+ PMAC_MB_MAY_SLEEP | PMAC_MB_HAS_FW_POWER | PMAC_MB_MOBILE,
+ },
{ "PowerBook6,1", "PowerBook G4 12\"",
PMAC_TYPE_UNKNOWN_INTREPID, intrepid_features,
PMAC_MB_MAY_SLEEP | PMAC_MB_HAS_FW_POWER | PMAC_MB_MOBILE,
Index: linux-2.6.14/drivers/ide/ppc/pmac.c
===================================================================
--- linux-2.6.14.orig/drivers/ide/ppc/pmac.c 2005-10-29 23:07:09.000000000 -0500
+++ linux-2.6.14/drivers/ide/ppc/pmac.c 2005-10-29 23:13:44.000000000 -0500
@@ -1664,11 +1664,16 @@ static struct macio_driver pmac_ide_maci
};
static struct pci_device_id pmac_ide_pci_match[] = {
- { PCI_VENDOR_ID_APPLE, PCI_DEVICE_ID_APPLE_UNI_N_ATA, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
- { PCI_VENDOR_ID_APPLE, PCI_DEVICE_ID_APPLE_IPID_ATA100, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
- { PCI_VENDOR_ID_APPLE, PCI_DEVICE_ID_APPLE_K2_ATA100, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+ { PCI_VENDOR_ID_APPLE, PCI_DEVICE_ID_APPLE_UNI_N_ATA,
+ PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+ { PCI_VENDOR_ID_APPLE, PCI_DEVICE_ID_APPLE_IPID_ATA100,
+ PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+ { PCI_VENDOR_ID_APPLE, PCI_DEVICE_ID_APPLE_K2_ATA100,
+ PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
{ PCI_VENDOR_ID_APPLE, PCI_DEVICE_ID_APPLE_SH_ATA,
PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+ { PCI_VENDOR_ID_APPLE, PCI_DEVICE_ID_APPLE_IPID2_ATA,
+ PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
};
static struct pci_driver pmac_ide_pci_driver = {
Index: linux-2.6.14/drivers/net/sungem.c
===================================================================
--- linux-2.6.14.orig/drivers/net/sungem.c 2005-10-29 23:07:09.000000000 -0500
+++ linux-2.6.14/drivers/net/sungem.c 2005-10-29 23:12:58.000000000 -0500
@@ -128,6 +128,8 @@ static struct pci_device_id gem_pci_tbl[
PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
{ PCI_VENDOR_ID_APPLE, PCI_DEVICE_ID_APPLE_SH_SUNGEM,
PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
+ { PCI_VENDOR_ID_APPLE, PCI_DEVICE_ID_APPLE_IPID2_GMAC,
+ PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
{0, }
};
Index: linux-2.6.14/include/linux/pci_ids.h
===================================================================
--- linux-2.6.14.orig/include/linux/pci_ids.h 2005-10-29 23:07:09.000000000 -0500
+++ linux-2.6.14/include/linux/pci_ids.h 2005-10-29 23:12:58.000000000 -0500
@@ -913,6 +915,10 @@
#define PCI_DEVICE_ID_APPLE_SH_FW 0x0052
#define PCI_DEVICE_ID_APPLE_U3L_AGP 0x0058
#define PCI_DEVICE_ID_APPLE_U3H_AGP 0x0059
+#define PCI_DEVICE_ID_APPLE_IPID2_AGP 0x0066
+#define PCI_DEVICE_ID_APPLE_IPID2_ATA 0x0069
+#define PCI_DEVICE_ID_APPLE_IPID2_FW 0x006a
+#define PCI_DEVICE_ID_APPLE_IPID2_GMAC 0x006b
#define PCI_DEVICE_ID_APPLE_TIGON3 0x1645
#define PCI_VENDOR_ID_YAMAHA 0x1073
Index: linux-2.6.14/drivers/char/agp/uninorth-agp.c
===================================================================
--- linux-2.6.14.orig/drivers/char/agp/uninorth-agp.c 2005-10-29 23:07:09.000000000 -0500
+++ linux-2.6.14/drivers/char/agp/uninorth-agp.c 2005-10-29 23:12:58.000000000 -0500
@@ -557,6 +557,10 @@ static struct agp_device_ids uninorth_ag
.device_id = PCI_DEVICE_ID_APPLE_U3H_AGP,
.chipset_name = "U3H",
},
+ {
+ .device_id = PCI_DEVICE_ID_APPLE_IPID2_AGP,
+ .chipset_name = "UniNorth/Intrepid2",
+ },
};
static int __devinit agp_uninorth_probe(struct pci_dev *pdev,
^ permalink raw reply
* Re: [Bcm43xx-dev] 30 bits DMA and ppc
From: Michael Buesch @ 2005-10-30 8:47 UTC (permalink / raw)
To: Benjamin Herrenschmidt; +Cc: linuxppc-dev list, bcm43xx-dev
In-Reply-To: <1130645036.29054.229.camel@gaston>
[-- Attachment #1: Type: text/plain, Size: 698 bytes --]
On Sunday 30 October 2005 05:03, Benjamin Herrenschmidt wrote:
[snip]
> 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).
[snap]
I think we should not need to modify the driver.
Drivers already set the DMA mask. As far as I can see, this mask
is currently (mostly) ignored on PPC and i386 (at least).
As far as I can see, PPC ignores it completely and i386 allocates in the
GFP_DMA region, if DMA is limited.
So I would say, it should be possible to use this mask
with some bounce buffers, as you suggested. That sounds like a good
solution to me. It's worth a try.
--
Greetings Michael.
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply
* fcc_enet multicast support.
From: Wartan Hachaturow @ 2005-10-30 13:52 UTC (permalink / raw)
To: linuxppc-embedded
Hello.
For quite some time set_multicast_list() is commented out in fcc_enet.c,
because it is said to be broken.
What were particular reasons to do that, i.e., where exactly is it broken?
P.S. I've seen this question in archives, but it hasn't been answered back =
then,
so I thought it's time to pose it again :)
--
Regards, Wartan.
^ permalink raw reply
* Re: use of phy_connect() in drivers/net/gianfar.c ?
From: Wolfgang Denk @ 2005-10-30 15:18 UTC (permalink / raw)
To: Matthew McClintock; +Cc: Jeff Garzik, linuxppc-dev
In-Reply-To: <1130632707.7470.16.camel@localhost.localdomain>
Dear Matthew,
in message <1130632707.7470.16.camel@localhost.localdomain> you wrote:
>
> As far as I understand there are patches in the -mm tree with contain
> the updates for the Gianfar driver. The issue is due to a
Do you happen to know of a specific (set of) patch(es)? URL?
> synchronization issue with the new PHY abstraction layer that was added.
Yes, obviously. But I am still so naïve to expect that such changes
would not make it untested (the code is not even compile clean) to an
official kernel release like 2.6.14 ?
> I know Andy will not be back at his computer until Monday, you can wait
> until then or look for the patch in the -mm tree.
Is there a git repository somewhere for the mm tree?
Best regards,
Wolfgang Denk
--
Software Engineering: Embedded and Realtime Systems, Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
(null cookie; hope that's ok)
^ permalink raw reply
* Re: ayuda
From: Hollis Blanchard @ 2005-10-30 17:44 UTC (permalink / raw)
To: Doug Carrillo; +Cc: Linux PPC Dev
In-Reply-To: <BAY14-F28EE9562AD50489238A8C8B96D0@phx.gbl>
On Oct 29, 2005, at 7:26 PM, Doug Carrillo wrote:
> Hola, tengo una G3 PPC, deseo instalar linux
>
> Cual distribucion me sirve?
There is a list of PPC distributions at
http://penguinppc.org/about/distributions.php .
-Hollis
^ 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
* [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: 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
* 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: 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: 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 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
* 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
* 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
* 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
* 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: 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
* 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: 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
* 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: 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: 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
* [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 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
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox