This patch enables or updates support for the CC770 and AN82527
CAN controller on the TQM8548 and TQM8xx boards.
CC: devicetree-disc...@lists.ozlabs.org
CC: linuxppc-...@ozlabs.org
CC: Kumar Gala
Signed-off-by: Wolfgang Grandegger
---
arch/powerpc/boot/dts/tqm8548-bigflash.dts | 19 ++
This driver works with both, static platform data and device tree
bindings. It has been tested on a TQM855L board with two AN82527
CAN controllers on the local bus.
CC: devicetree-disc...@lists.ozlabs.org
CC: linuxppc-...@ozlabs.org
CC: Kumar Gala
Signed-off-by: Wolfgang Grandegger
Acked-by: Mar
On Tue, 2011-11-29 at 19:47 -0600, Kumar Gala wrote:
> As Scott said, I was more asking about the 2nd patch in the sequence
> which did touch MTD. Since that one is dependent on this patch,
> wondering how we wanted to handle them.
I do not have time to review it, but it looks OK, so I'd suggest
Hello Ira,
In drivers/dma/dmaengine.c, we have below tight loop to check DMA completion in
mainline Linux:
do {
status = dma_async_is_tx_complete(chan, cookie, NULL, NULL);
if (time_after_eq(jiffies, dma_sync_wait_timeout)) {
printk(K
As of commit dd472da38, rwsem.h was moved into asm-generic.
This patch removes the arch file and points the build at
its new location.
Signed-off-by: Richard Kuo
---
arch/powerpc/include/asm/Kbuild |2 +
arch/powerpc/include/asm/rwsem.h | 132 --
2 files
Here are a number of patches I've put together based on some rather
strenuous testing of our oops and kdump paths.
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev
I've been seeing truncated output when people send system reset info
to me. We should see a backtrace for every CPU, but the panic() code
takes the box down before they all make it out to the console. The
panic code runs unlocked so we also see corrupted console output.
If we are going to panic, t
We have a lot of complicated logic that handles possible recursion between
kdump and a system reset exception. We can solve this in a much simpler
way using the same setjmp/longjmp tricks xmon does.
As a first step, this patch removes the old system reset code.
Signed-off-by: Anton Blanchard
---
We can handle recursion caused by system reset by reusing the crash
shutdown fault handler.
Since we don't have an OS triggerable NMI, if all CPUs don't make it
into kdump then we tell the user to issue a system reset. However if
we have a panic timeout set we cannot wait forever and must continue
Remove some unnecessary defines and fix some spelling mistakes.
Signed-off-by: Anton Blanchard
---
Index: linux-build/arch/powerpc/kernel/crash.c
===
--- linux-build.orig/arch/powerpc/kernel/crash.c2011-11-25
16:42:11.55401
Our die() code was based off a very old x86 version. Update it to
mirror the current x86 code.
Signed-off-by: Anton Blanchard
---
Index: linux-build/arch/powerpc/kernel/traps.c
===
--- linux-build.orig/arch/powerpc/kernel/traps.c
We've had a 180 second panic timeout on ppc64 for as long as I
can remember. This patch reduces it to 10 seconds on pseries for a few
reasons:
- Almost all pseries machines have a hypervisor console so panic
output will be available in a scrollback buffer.
- The 180 seconds impacts our availabi
I have an intermittent kdump fail where the hypervisor fails an H_EOI.
As a result our CPPR is never reset to 0xff and we no longer accept
interrupts.
This patch calls icp_hv_set_cppr to reset the CPPR if H_EOI fails,
fixing the kdump fail.
Signed-off-by: Anton Blanchard
---
- I'm still trying
If we enter the kdump code via system reset, wait a bit before
sending the IPI to capture all secondary CPUs. Without it we race
with the hypervisor that is issuing the system reset to each CPU.
If the IPI gets there first the system reset oops output then shows
the register state of the IPI handle
We might enter the secondary CPU capture code twice, eg if we have to
unstick some CPUs with a system reset. In this case we don't want to
overwrite the state on CPUs that had made it into the capture code OK,
so use the cpus_state_saved cpumask for that and make it local to
crash_ipi_callback.
Fo
Most distros use it so we may as well enable it and get regular compile
testing.
Signed-off-by: Anton Blanchard
---
Index: linux-powerpc/arch/powerpc/configs/ppc64_defconfig
===
--- linux-powerpc.orig/arch/powerpc/configs/ppc64_def
Benjamin Herrenschmidt wrote:
> On Fri, 2011-07-01 at 18:03 +0800, tiejun.chen wrote:
>> Here emulate_step() is called to emulate 'stwu'. Actually this is equivalent
>> to
>> 1> update pr_regs->gpr[1] = mem(old r1 + (-A))
>> 2> 'stw , mem<(old r1 + (-A)) >
>>
>> You should notice the stack based o
On Wed, Nov 30, 2011 at 12:23 AM, Tony Breeds wrote:
> From: Christoph Egger
>
> CONFIG_PPC47x doesn't exist in Kconfig, therefore removing all
> references for it from the source code.
>
> Signed-off-by: Christoph Egger
> ---
> arch/powerpc/mm/44x_mmu.c | 4
> 1 files changed, 0 insert
On Wed, Nov 30, 2011 at 12:48 AM, Benjamin Herrenschmidt
wrote:
> On Wed, 2011-11-30 at 16:23 +1100, Tony Breeds wrote:
>> Code copied from arch/powerpc/kernel/misc_32.S
>>
>> Signed-off-by: Tony Breeds
>> ---
>> arch/powerpc/boot/div64.S | 52
>> +
This patch enables or updates support for the CC770 and AN82527
CAN controller on the TQM8548 and TQM8xx boards.
CC: devicetree-disc...@lists.ozlabs.org
CC: linuxppc-...@ozlabs.org
CC: Kumar Gala
Signed-off-by: Wolfgang Grandegger
---
arch/powerpc/boot/dts/tqm8548-bigflash.dts | 19 ++
This driver works with both, static platform data and device tree
bindings. It has been tested on a TQM855L board with two AN82527
CAN controllers on the local bus.
CC: devicetree-disc...@lists.ozlabs.org
CC: linuxppc-...@ozlabs.org
CC: Kumar Gala
Signed-off-by: Wolfgang Grandegger
Acked-by: Mar
This patch series ports the cpuidle framework for ppc64 platform and
implements a cpuidle back-end driver for ppc64 (pSeries) platform.
Currently idle states are managed by pseries_{dedicated,shared}_idle_sleep()
routines in arch/powerpc/platforms/pseries/setup.c. There are
two idle states (snooze
This patch provides cpu_idle_wait() routine for the powerpc
platform which is required by the cpuidle subsystem. This
routine is required to change the idle handler on SMP systems.
The equivalent routine for x86 is in arch/x86/kernel/process.c
but the powerpc implementation is different.
cpuidle_d
This patch implements a back-end cpuidle driver for pSeries
based on pseries_dedicated_idle_loop and pseries_shared_idle_loop
routines. The driver is built only if CONFIG_CPU_IDLE is set. This
cpuidle driver uses global registration of idle states and
not per-cpu.
Signed-off-by: Deepthi Dharwar
This patch enables cpuidle for pSeries and pSeries_idle is
directly called from the idle loop. As a result of pSeries_idle, cpuidle
driver registered with cpuidle subsystem comes into action. On
failure of loading of the driver or cpuidle framework default idle
is executed as part of the function.
+#define mfdcrx(rn) \
+ ({ \
+ unsigned long rval; \
+ asm volatile("mfdcrx %0,%1" : "=r"(rval) : "g"(rn)); \
+ rval; \
+ })
"g" is never correct on PowerPC, you want "r" here. You can write
this as a static inline btw, you only need th
On Nov 29, 2011, at 11:24 PM, Tony Breeds wrote:
> Based on original work by David 'Shaggy' Kliekamp.
>
> Signed-off-by: Tony Breeds
> ---
> arch/powerpc/boot/Makefile |5 +-
> arch/powerpc/boot/dts/currituck.dts | 240 ++
> arch/powerpc/boo
On Nov 29, 2011, at 11:34 PM, Daniel Ng2 wrote:
>
> Hi,
>
> Does anyone know of any kernel support for the Freescale P2020-MSC8156 AMC
> board?-
>
> http://freescale.com.hk/webapp/sps/site/prod_summary.jsp?code=P2020-MSC8156AMCRD
>
> I am looking for platform-specific files ie. the ones that
This patch makes pseries_idle_driver not to be registered when
power_save=off kernel boot option is specified. The
cpuidle_disable variable used here is similar to
its usage on x86. If cpuidle_disable is set then
sysfs entries for cpuidle framework are not created
and the required drivers are not l
On Mon, Nov 28, 2011 at 5:59 PM, Scott Wood wrote:
> On 11/23/2011 10:47 AM, Josh Boyer wrote:
>> On Mon, Nov 14, 2011 at 12:41 AM, Suzuki K. Poulose
>> wrote:
>>> The current implementation of CONFIG_RELOCATABLE in BookE is based
>>> on mapping the page aligned kernel load address to KERNELBASE
Hi Ben,
I have a new 4xx tree setup now. Two small commits for the next
branch are queued up. I'd like to get the patch series from Suzie and
Tony included soon as well, but thought I'd start with these to get
things rolling.
Stephen, can you switch the linux-next tree to use this instead?
jos
Commit 46d026ac ("powerpc/85xx: consolidate of_platform_bus_probe calls")
replaced platform-specific of_device_id tables with a single function
that probes the most of the busses in 85xx device trees. If a specific
platform needed additional busses probed, then it could call
of_platform_bus_probe(
On Wed, Nov 30, 2011 at 09:57:47AM +, Shi Xuelin-B29237 wrote:
> Hello Ira,
>
> In drivers/dma/dmaengine.c, we have below tight loop to check DMA completion
> in mainline Linux:
>do {
> status = dma_async_is_tx_complete(chan, cookie, NULL, NULL);
> if (
> > +#define mfdcrx(rn) \
> > + ({ \
> > + unsigned long rval; \
> > + asm volatile("mfdcrx %0,%1" : "=r"(rval) : "g"(rn)); \
> > + rval; \
> > + })
>
> "g" is never correct on PowerPC, you want "r" here. You can write
> this as a static inline btw, you on
On Sun, 27 Nov 2011 14:37:52 +0100
acrux wrote:
>
> scsi subsystem with ipr driver fails to initialize with every kernel >=3.0.9
> and >=3.1.1
> Checked on YDL_Powerstation, IBM 9114-275, IBM 9123-710,
>
well, it seems this was already fixed by one of these two commits (only for
linux-3.2):
On Wed, 2011-11-30 at 06:43 -0500, Josh Boyer wrote:
>
> That doesn't look right. The code is there doing something, why is it
> just being removed? I would think the change would be to use
> CONFIG_PPC_47x?
>
> Or if the code there isn't needed any longer, the changelog should say
> why.
Ah r
On Wed, 2011-11-30 at 06:45 -0500, Josh Boyer wrote:
> On Wed, Nov 30, 2011 at 12:48 AM, Benjamin Herrenschmidt
> wrote:
> > On Wed, 2011-11-30 at 16:23 +1100, Tony Breeds wrote:
> >> Code copied from arch/powerpc/kernel/misc_32.S
> >>
> >> Signed-off-by: Tony Breeds
> >> ---
> >> arch/powerpc/b
On 11/30/2011 02:21 PM, Benjamin Herrenschmidt wrote:
> On Wed, 2011-11-30 at 06:45 -0500, Josh Boyer wrote:
>> On Wed, Nov 30, 2011 at 12:48 AM, Benjamin Herrenschmidt
>> wrote:
>>> On Wed, 2011-11-30 at 16:23 +1100, Tony Breeds wrote:
Code copied from arch/powerpc/kernel/misc_32.S
Hi Geoff,
On Wed, Nov 30, 2011 at 02:38, Geoff Levand wrote:
> Fix some PS3 build warnings when DEBUG is defined.
>
> Fixes warnings like these:
>
> format '%lx' expects type 'long unsigned int', but argument 7 has type 'u64'
>
> Signed-off-by: Geoff Levand
> ---
> arch/powerpc/platforms/ps3/r
On Wed, 2011-11-30 at 19:06 +0800, tiejun.chen wrote:
> > - Copy the exception frame we're about to unwind to just -below- the
> > new r1 value we want to write to. Then perform the write, and change
> > r1 to point to that copy of the frame.
> >
> > - Branch to restore: which will unwind every
On Tue, 2011-11-29 at 12:31 +0530, Tanmay Inamdar wrote:
> The AppliedMicro APM8018X embedded processor targets embedded applications
> that
> require low power and a small footprint. It features a PowerPC 405 processor
> core built in a 65nm low-power CMOS process with a five-stage pipeline
> ex
On Wed, Nov 30, 2011 at 4:03 PM, Benjamin Herrenschmidt
wrote:
> On Tue, 2011-11-29 at 12:31 +0530, Tanmay Inamdar wrote:
>> The AppliedMicro APM8018X embedded processor targets embedded applications
>> that
>> require low power and a small footprint. It features a PowerPC 405 processor
>> core b
On Wed, Nov 30, 2011 at 06:45:37AM -0500, Josh Boyer wrote:
> However, adding this code and wonderful and all but why do we need to
> add it? Changelog should say why.
Okay changelog updated to:
powerpc/boot: Add extended precision shifts to the boot wrapper.
The upcoming currituck
On Wed, Nov 30, 2011 at 02:09:20PM +0100, Segher Boessenkool wrote:
> >+#define mfdcrx(rn) \
> >+({ \
> >+unsigned long rval; \
> >+asm volatile("mfdcrx %0,%1" : "=r"(rval) : "g"(rn)); \
> >+rval; \
> >+})
>
> "g" is never correct on PowerPC, you wa
On Thu, Dec 01, 2011 at 10:30:27AM +1100, Tony Breeds wrote:
> Okay I'll change it to "i", mostly I used a #define to match the style
Of course I menat "r" here.
Yours Tony
pgp2a2sFjknsb.pgp
Description: PGP signature
___
Linuxppc-dev mailing list
Li
Hi Josh,
On Wed, 30 Nov 2011 10:14:52 -0500 Josh Boyer wrote:
>
> Stephen, can you switch the linux-next tree to use this instead?
>
> are available in the git repository at:
> git://git.infradead.org/users/jwboyer/powerpc-4xx.git next
I have switched to that now.
--
Cheers,
Stephen Rothwel
On Tue, Nov 29, 2011 at 01:58:29PM -0500, Kyle Moffett wrote:
> diff --git a/arch/powerpc/platforms/powermac/pic.c
> b/arch/powerpc/platforms/powermac/pic.c
> index 901bfbd..44f9774 100644
> --- a/arch/powerpc/platforms/powermac/pic.c
> +++ b/arch/powerpc/platforms/powermac/pic.c
> @@ -498,15 +498
On Wed, Nov 30, 2011 at 04:46:13PM +1100, Benjamin Herrenschmidt wrote:
> If you don't expect an sdr-base as part of the normal operations of that
> bridge, don't bring a message that makes me think something is wrong :-)
>
> Just changing the severity isn't enough. you should just remove the
> m
When issuing a system reset we almost always oops in the oops_to_nvram
code because multiple CPUs are using the deflate work area. Add a
spinlock to protect it.
To play it safe I'm using trylock to avoid locking up if the NVRAM
code oopses. This means we might miss multiple CPUs oopsing at exactl
On Thu, 2011-12-01 at 12:46 +1100, Anton Blanchard wrote:
> When issuing a system reset we almost always oops in the oops_to_nvram
> code because multiple CPUs are using the deflate work area. Add a
> spinlock to protect it.
>
> To play it safe I'm using trylock to avoid locking up if the NVRAM
>
Hi Ben,
> How would we miss ?
>
> trylock does loop on stwcx. failure, it doesn't loop if the lock is
> -taken-, so if the lock is only used for actually dealing with the
> oops the only "miss" is because somebody already got it... or am I
> missing something ?
I'm thinking of two CPUs that ente
On Tue, 2011-11-29 at 18:51 +0530, Prashant Bhole wrote:
> Hi,
> I am using custom 460ex board with kernel version 2.6.30.
> I noticed that page_alloc() is returning a page whose memory
> is already allocated by lmb_alloc() while unflattening the device
> tree. As per my knowledge the memory alloca
On Wed, Nov 30, 2011 at 05:20:22PM +1100, Benjamin Herrenschmidt wrote:
> On Wed, 2011-11-30 at 16:24 +1100, Tony Breeds wrote:
> > + plb {
> > + compatible = "ibm,plb-4xx", "ibm,plb4"; /* Could be PLB6,
> > doesn't matter */
>
> Then make it plb6 and add it to the probe list. Might h
On Wed, Nov 30, 2011 at 07:23:40AM -0600, Kumar Gala wrote:
> Split the board support patches from the SoC support.
Will do, as I said to Ben I was confused.
> This seems like it should be PVR_476FPE
Yup. Fixed.
Yours Tony
pgpmujvrlooRf.pgp
Description: PGP signature
___
On Thu, Dec 1, 2011 at 9:30 AM, Benjamin Herrenschmidt
wrote:
> On Tue, 2011-11-29 at 18:51 +0530, Prashant Bhole wrote:
>> Hi,
>> I am using custom 460ex board with kernel version 2.6.30.
>> I noticed that page_alloc() is returning a page whose memory
>> is already allocated by lmb_alloc() while
> > This should have been fixed in memblock in recent kernel, at least I
> > believe it is. It looks like this is caused by overlapping lmb_reserve()
> > at boot (or lmb_reserve() overlapping an lmb_alloc'ated region which
> > boils down to the same thing).
> >
> > Old lmb didn't deal with that we
On Thu, Dec 01, 2011 at 03:05:24PM +1100, Tony Breeds wrote:
> On Wed, Nov 30, 2011 at 05:20:22PM +1100, Benjamin Herrenschmidt wrote:
> > On Wed, 2011-11-30 at 16:24 +1100, Tony Breeds wrote:
> > > +void platform_init(void)
> > > +{
> > > + /* Cap the zImage to 512MB */
> >
> > Any reason ? If
Hi Josh !
I was helping Tony with some of the Currituck stuff when I noticed an
oddity...
So we have various "SoC" config symbols such as 440EP, 460SX, etc...
that in turn select various bits & pieces that enable support for that
SoC (such as EMAC4 support or FPU support). Those only act as "enab
There is an issue on FSL-BookE 64-bit devices (P5020) in which PCIe
devices that are capable of doing 64-bit DMAs (like an Intel e1000) do
not function and crash the kernel if we have >4G of memory in the system.
The reason is that the existing code only sets up one inbound window for
access to sy
On Tue, 2011-11-29 at 13:58 -0500, Kyle Moffett wrote:
> Don't open-code the OpenFirmware "dcr-reg" property lookup trying to map
> DCR resources. This makes the code a bit easier to read.
>
> Signed-off-by: Kyle Moffett
> ---
> arch/powerpc/sysdev/mpic.c |7 ++-
> 1 files changed, 2 in
On Tue, 2011-11-29 at 13:58 -0500, Kyle Moffett wrote:
> diff --git a/arch/powerpc/platforms/cell/setup.c
> b/arch/powerpc/platforms/cell/setup.c
> index cd00ca8..a0f5d28 100644
> --- a/arch/powerpc/platforms/cell/setup.c
> +++ b/arch/powerpc/platforms/cell/setup.c
> @@ -215,15 +202,6 @@ static vo
Patches 1 to 3
Modify the 44x PCI code to work with 476fpe/currituck.
Patch 4
Is an old patch by Christoph Egger that fell through the cracks somehow.
Patches 5 and 6
Modify the bootwrapper to handle 476fpe/currituck
Patch 7
The SoC support.
Patch 8
The curri
Signed-off-by: Tony Breeds
---
arch/powerpc/sysdev/ppc4xx_pci.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
This patch was somehow missed from the original series.
diff --git a/arch/powerpc/sysdev/ppc4xx_pci.c b/arch/powerpc/sysdev/ppc4xx_pci.c
index 862f11b..16f5eba 100644
---
Currituck doesn't need nor use SDR so aborting the pci setup if there is
no sdr-base would be bad.
Add a flag to ppc4xx_pciex_hwops for the backends to state if they need
SDR and then only complain and abort if they do and it's not found in
the device tree.
Signed-off-by: Tony Breeds
---
arch/p
Needed if you want to use swiotlb, harmless otherwise.
Signed-off-by: Tony Breeds
---
arch/powerpc/sysdev/ppc4xx_pci.c |6 ++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/arch/powerpc/sysdev/ppc4xx_pci.c b/arch/powerpc/sysdev/ppc4xx_pci.c
index ab3293a..45148ef 100644
-
From: Christoph Egger
CONFIG_PPC47x doesn't exist in Kconfig and no 476 processor calls this
function ppc44x_pin_tlb() as it has it's own ppc47x_pin_tlb().
This code is probably an artifact of the original 476 code that
shouldn't have made it upstream.
Signed-off-by: Christoph Egger
Signed-off
The upcomming currituck patches will need to do 64-bit shifts which will
fail with undefined symbol without this patch.
I looked at linking against libgcc but we can't guarantee that libgcc
was compiled with soft-float. Also Using ../lib/div64.S or
../kernel/misc_32.S, this will break the build a
Needed for currituck support.
Signed-off-by: Tony Breeds
---
arch/powerpc/boot/dcr.h |6 ++
1 files changed, 6 insertions(+), 0 deletions(-)
I chose to use a #define to keep with the style of m[tf]dcr in the same file.
diff --git a/arch/powerpc/boot/dcr.h b/arch/powerpc/boot/dcr.h
inde
Based on original work by David 'Shaggy' Kliekamp.
Signed-off-by: Tony Breeds
---
arch/powerpc/include/asm/reg.h |1 +
arch/powerpc/kernel/cputable.c | 14 +
arch/powerpc/kernel/head_44x.S |2 +
arch/powerpc/platforms/44x/Kconfig |4 ++
arch/powerpc/sysdev/ppc4x
Based on original work by David 'Shaggy' Kliekamp.
Signed-off-by: Tony Breeds
---
arch/powerpc/boot/Makefile |5 +-
arch/powerpc/boot/dts/currituck.dts | 237 ++
arch/powerpc/boot/treeboot-currituck.c | 119 +
arch/powerp
On Thu, Dec 01, 2011 at 06:39:16PM +1100, Tony Breeds wrote:
> Patches 1 to 3
> Modify the 44x PCI code to work with 476fpe/currituck.
> Patch 4
> Is an old patch by Christoph Egger that fell through the cracks
> somehow.
> Patches 5 and 6
> Modify the bootwrapper to
71 matches
Mail list logo