Re: device tree variations

2008-10-21 Thread Benjamin Herrenschmidt

 Thanks.  The fdt_del_node approach works pretty nicely.  I added a
 dt_ops hook since fdt is static in libfdt-wrapper.c.

 .../...

David says your patch is ok, However it's not in the right form. Could
you repost it please with a proper changeset comment and signed-off-by:
line ?

Thanks !

Cheers,
Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] Support for relocatable kdump kernel

2008-10-21 Thread Michael Ellerman
On Mon, 2008-10-20 at 15:04 +0530, Mohan Kumar M wrote:
 Michael Ellerman wrote:
   #ifdef CONFIG_CRASH_DUMP
  +#ifdef CONFIG_RELOCATABLE
  +
  +static inline void reserve_kdump_trampoline(void) { ; }
  +static inline void setup_kdump_trampoline(void) { ; }
  +
  +#else
   
   extern void reserve_kdump_trampoline(void);
   extern void setup_kdump_trampoline(void);
   
  +#endif /* CONFIG_RELOCATABLE */
  
  You've disabled the else case with your Kconfig changes, so you should
  just rip all that code out.
 
 I made Kconfig changes only to the 64 bit powerpc path and still the 32 
 bit powerpc code uses the legacy kdump code. So we need to retain some 
 of legacy kdump code.

Does it? I see CONFIG_CRASH_DUMP depending on PPC64, so there is no
32-bit kdump possible. Or is someone working on it out-of-tree?

  diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
  index e409338..5b12b10 100644
  --- a/arch/powerpc/kernel/head_64.S
  +++ b/arch/powerpc/kernel/head_64.S
  @@ -97,6 +97,14 @@ __secondary_hold_spinloop:
   __secondary_hold_acknowledge:
.llong  0x0
   
  + /* This flag is set only for kdump kernels so that */
  + /* it will be relocatable. Purgatory code user space kexec-tools */
  + /* sets this flag. Do not move this variable as purgatory code */
  + /* relies on the position of this variables */
  + .globl  __kdump_flag
  +__kdump_flag:
  + .llong  0x0
  
  I guess the __ matches the other flags here, it's not the prettiest
  though. For client code (like in iommu.c) it'd be nice to have static
  inline, perhaps is_kdump_kernel() that hides this.
  
 Do you expect a function to do the checking in iommu.c?

You'd use the function in iommu.c, but it should be defined in some
header.

   #ifdef CONFIG_PPC_ISERIES
/*
 * At offset 0x20, there is a pointer to iSeries LPAR data.
  @@ -1384,8 +1392,13 @@ _STATIC(__after_prom_start)
/* process relocations for the final address of the kernel */
lis r25,[EMAIL PROTECTED]   /* compute virtual base of kernel */
sldir25,r25,32
  +#ifdef CONFIG_CRASH_DUMP
  + ld  r7,__kdump_flag-_stext(r26)
  + cmpldi  cr0,r7,1/* relocatable kernel ? */
  
  You don't use the signature here?
 
 kexec-tools check the signature and based on the signature it sets 
 __kdump_flag to 1 (or 0). So kernel code just checks whether its set or not.

OK. Does old purgatory ensure that the register is 0? Otherwise I think
it's possible that a new kernel could get confused by cruft left in that
register by an old purgatory - causing the 2nd kernel to think it's a
kdump kernel when it shouldn't be.

  @@ -1401,9 +1414,21 @@ _STATIC(__after_prom_start)
beq 9f  /* have already put us at zero */
li  r6,0x100/* Start offset, the first 0x100 */
/* bytes were copied earlier.*/
  -#ifdef CONFIG_RELOCATABLE
  +
  +#ifdef CONFIG_CRASH_DUMP
  +/*
  + * Check if the kernel has to be running as relocatable kernel based on 
  the
  + * variable __kdump_flag, if it is set the kernel is treated as 
  relocatble
  + * kernel, otherwise it will be moved to PHYSICAL_START
  + */
  + ld  r7,__kdump_flag-_stext(r26)
  + cmpldi  cr0,r7,1
  + bne regular
  +
li  r5,__end_interrupts - _stext/* just copy interrupts */
  -#else
  + b   5f
  +regular:
  +#endif
lis r5,(copy_to_here - _stext)@ha
addir5,r5,(copy_to_here - _stext)@l /* # bytes of memory to copy */
  
  I'm jet lagged to hell, so I'm not sure I can trust my parsing of this.
  But I think this definitely breaks CONFIG_RELOCATABLE without
  CRASH_DUMP, and I'm not sure it's right otherwise.
 
 Hmmm, I compiled and tried the kernel with 3 config option combinations: 
 1. CONFIG_RELOCATABLE and CONFIG_CRASH_DUMP 2. CONFIG_RELOCATABLE 3. 
 Without CONFIG_RELOCATABLE (without CONFIG_CRASH_DUMP)
 
 All of the above 3 combinations worked. This patch relies on Pauls' 
 patch5 in the relocatable kernel patcheset.

OK if you've tested.

cheers

-- 
Michael Ellerman
OzLabs, IBM Australia Development Lab

wwweb: http://michael.ellerman.id.au
phone: +61 2 6212 1183 (tie line 70 21183)

We do not inherit the earth from our ancestors,
we borrow it from our children. - S.M.A.R.T Person


signature.asc
Description: This is a digitally signed message part
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Re: [PATCH] igb: add IGB_DCA instead of selecting INTEL_IOATDMA

2008-10-21 Thread Jeff Garzik

Jeff Kirsher wrote:

Add a bool IGB_DCA defined to y if IGB and DCA are enabled, but IGB isn't y 
while DCA=m.  And thus remove the need to select INTEL_IOATDMA when IGB is 
enabled, so that non-x86 architectures can build the igb driver.
Based on work/patch from Brice Goglin [EMAIL PROTECTED]

Signed-off-by: Jeff Kirsher [EMAIL PROTECTED]


applied


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: powerpc: delete prom_strtoul and prom_memparse

2008-10-21 Thread Michael Ellerman
On Mon, 2008-10-20 at 23:03 -0500, Milton Miller wrote:
 These functions should have been static, and inspection shows they
 are no longer used.   (We used to parse mem= but we now defer that
 to early_param).

Actually the last user was the crashkernel= handling, but that was
removed a while ago too, my bad.

Acked-by: Michael Ellerman [EMAIL PROTECTED]

cheers

-- 
Michael Ellerman
OzLabs, IBM Australia Development Lab

wwweb: http://michael.ellerman.id.au
phone: +61 2 6212 1183 (tie line 70 21183)

We do not inherit the earth from our ancestors,
we borrow it from our children. - S.M.A.R.T Person


signature.asc
Description: This is a digitally signed message part
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Bug in genirq: record trigger type

2008-10-21 Thread Benjamin Herrenschmidt
On Mon, 2008-10-20 at 22:05 +, Linux Kernel Mailing List wrote:
 Gitweb: 
 http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0c5d1eb77a8be917b638344a22afe1398236482b
 Commit: 0c5d1eb77a8be917b638344a22afe1398236482b
 Parent: d6d5aeb661fc14655c417f3582ae7ec52985d2a8
 Author: David Brownell [EMAIL PROTECTED]
 AuthorDate: Wed Oct 1 14:46:18 2008 -0700
 Committer:  Ingo Molnar [EMAIL PROTECTED]
 CommitDate: Thu Oct 2 10:24:09 2008 +0200

This one is obviously broken and breaks booting on a whole bunch of
machines (including powermac's and thus my G5, it's never good when my
own machine breaks !).

Nice to see 3 SOB's and one Ack and nobody caught the obvious bug :-)

   desc = irq_desc + irq;
 - if (desc-chip-set_type) {
 - spin_lock_irqsave(desc-lock, flags);
 - ret = desc-chip-set_type(irq, type);
 - spin_unlock_irqrestore(desc-lock, flags);
 - }
 + if (type == IRQ_TYPE_NONE)
 + return 0;
 +
 + spin_lock_irqsave(desc-lock, flags);
 + ret = __irq_set_trigger(desc, irq, flags);
  type maybe ?

 + spin_unlock_irqrestore(desc-lock, flags);
   return ret;
  }

I have to run so no patch until tomorrow unless somebody beats me to it.

Cheers,
Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


[REGRESSION 2.6.27] i2c-mpc not probing on linkstation (was Re: [PATCH] powerpc: enable heap randomization for linkstations)

2008-10-21 Thread Guennadi Liakhovetski
On Mon, 20 Oct 2008, Jon Smirl wrote:

 On Mon, Oct 20, 2008 at 1:55 AM, Guennadi Liakhovetski
 [EMAIL PROTECTED] wrote:
  On Sun, 19 Oct 2008, Jon Smirl wrote:
 
  Is i2c-mpc built into your kernel? It's not going to module auto-load
  because the names don't match - fsl-i2c and i2c-mpc.
 
  It is built into the kernel.
 
 Put a printk in it's init function to make sure it is initializing.

I don't need that, I see it here:

/sys/bus/of_platform/drivers/mpc-i2c

 Next thing I do is put printks over in arch/powerpc/.. to tell me
 which strings from the device tree are being looked for.
 
 You can also look in /proc/device_tree and make sure fsl-i2c is in there.
 
 When you find the problem is will probably be something simple like a
 mismatch between _ and -. I have been down this path before and spent
 a day figuring out why a module wouldn't load and it was a simple
 typo.

Thanks, I know, that I can find the reason and, probably, a fix after a 
day of printk debugging. The thing is - I don't have this day, and I am 
sure there are people on this list, who can spot and fix the problem 
within minutes, that's why I posted it here after I realised, that 2 hours 
of me searching for the problem didn't bring any result.

Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


[PATCH] genirq: fix set_irq_type() when recording trigger type

2008-10-21 Thread Ingo Molnar

* Benjamin Herrenschmidt [EMAIL PROTECTED] wrote:

 On Mon, 2008-10-20 at 22:05 +, Linux Kernel Mailing List wrote:
  Gitweb: 
  http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0c5d1eb77a8be917b638344a22afe1398236482b
  Commit: 0c5d1eb77a8be917b638344a22afe1398236482b
  Parent: d6d5aeb661fc14655c417f3582ae7ec52985d2a8
  Author: David Brownell [EMAIL PROTECTED]
  AuthorDate: Wed Oct 1 14:46:18 2008 -0700
  Committer:  Ingo Molnar [EMAIL PROTECTED]
  CommitDate: Thu Oct 2 10:24:09 2008 +0200
[...]
  Signed-off-by: David Brownell [EMAIL PROTECTED]
  Signed-off-by: Andrew Morton [EMAIL PROTECTED]
  Acked-by: Thomas Gleixner [EMAIL PROTECTED]
  Signed-off-by: Ingo Molnar [EMAIL PROTECTED]
 
 This one is obviously broken and breaks booting on a whole bunch of 
 machines (including powermac's and thus my G5, it's never good when my 
 own machine breaks !).
 
 Nice to see 3 SOB's and one Ack and nobody caught the obvious bug :-)

that patch came from -mm towards us shortly before the merge window. 
Once we had it integrated Chris Friesen reported a boot hang on a G5, 
and there's a fix pending for the bug, see it below.

Will send it to Linus expressly. Fortunately only a minority of Linux 
users will ever run a box that uses set_irq_type() - but yes it needs to 
be fixed.

Ingo

--
From aac4ddd11a8d0e402ddc3fbc75204cb64efa0aac Mon Sep 17 00:00:00 2001
From: Chris Friesen [EMAIL PROTECTED]
Date: Mon, 20 Oct 2008 12:41:58 -0600
Subject: [PATCH] genirq: fix set_irq_type() when recording trigger type

In set_irq_type() we want to pass the type rather than the current
interrupt state.

Signed-off-by: Chris Friesen [EMAIL PROTECTED]
Signed-off-by: Ingo Molnar [EMAIL PROTECTED]
---
 kernel/irq/chip.c |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c
index 4895fde..3de6ea3 100644
--- a/kernel/irq/chip.c
+++ b/kernel/irq/chip.c
@@ -127,7 +127,7 @@ int set_irq_type(unsigned int irq, unsigned int type)
return 0;
 
spin_lock_irqsave(desc-lock, flags);
-   ret = __irq_set_trigger(desc, irq, flags);
+   ret = __irq_set_trigger(desc, irq, type);
spin_unlock_irqrestore(desc-lock, flags);
return ret;
 }
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: Bug in genirq: record trigger type

2008-10-21 Thread Ingo Molnar

* Yinghai Lu [EMAIL PROTECTED] wrote:

 On Mon, Oct 20, 2008 at 11:32 PM, Benjamin Herrenschmidt
 [EMAIL PROTECTED] wrote:
  On Mon, 2008-10-20 at 22:05 +, Linux Kernel Mailing List wrote:
  Gitweb: 
  http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0c5d1eb77a8be917b638344a22afe1398236482b
  Commit: 0c5d1eb77a8be917b638344a22afe1398236482b
  Parent: d6d5aeb661fc14655c417f3582ae7ec52985d2a8
  Author: David Brownell [EMAIL PROTECTED]
  AuthorDate: Wed Oct 1 14:46:18 2008 -0700
  Committer:  Ingo Molnar [EMAIL PROTECTED]
  CommitDate: Thu Oct 2 10:24:09 2008 +0200
 
  This one is obviously broken and breaks booting on a whole bunch of
  machines (including powermac's and thus my G5, it's never good when my
  own machine breaks !).
 
  Nice to see 3 SOB's and one Ack and nobody caught the obvious bug :-)
 
desc = irq_desc + irq;
  - if (desc-chip-set_type) {
  - spin_lock_irqsave(desc-lock, flags);
  - ret = desc-chip-set_type(irq, type);
  - spin_unlock_irqrestore(desc-lock, flags);
  - }
  + if (type == IRQ_TYPE_NONE)
  + return 0;
  +
  + spin_lock_irqsave(desc-lock, flags);
  + ret = __irq_set_trigger(desc, irq, flags);
   type maybe ?
 
  + spin_unlock_irqrestore(desc-lock, flags);
return ret;
   }
 
  I have to run so no patch until tomorrow unless somebody beats me to it.
 
 there is patch about it, but somehow get lost.

should be all sorted now, the fix is below.

Ingo

--
From aac4ddd11a8d0e402ddc3fbc75204cb64efa0aac Mon Sep 17 00:00:00 2001
From: Chris Friesen [EMAIL PROTECTED]
Date: Mon, 20 Oct 2008 12:41:58 -0600
Subject: [PATCH] genirq: fix set_irq_type() when recording trigger type

In set_irq_type() we want to pass the type rather than the current
interrupt state.

Signed-off-by: Chris Friesen [EMAIL PROTECTED]
Signed-off-by: Ingo Molnar [EMAIL PROTECTED]
---
 kernel/irq/chip.c |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c
index 4895fde..3de6ea3 100644
--- a/kernel/irq/chip.c
+++ b/kernel/irq/chip.c
@@ -127,7 +127,7 @@ int set_irq_type(unsigned int irq, unsigned int type)
return 0;
 
spin_lock_irqsave(desc-lock, flags);
-   ret = __irq_set_trigger(desc, irq, flags);
+   ret = __irq_set_trigger(desc, irq, type);
spin_unlock_irqrestore(desc-lock, flags);
return ret;
 }
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: Bug in genirq: record trigger type

2008-10-21 Thread Benjamin Herrenschmidt
On Tue, 2008-10-21 at 09:28 +0200, Ingo Molnar wrote:

 From: Chris Friesen [EMAIL PROTECTED]
 Date: Mon, 20 Oct 2008 12:41:58 -0600
 Subject: [PATCH] genirq: fix set_irq_type() when recording trigger type
 
 In set_irq_type() we want to pass the type rather than the current
 interrupt state.
 
 Signed-off-by: Chris Friesen [EMAIL PROTECTED]
 Signed-off-by: Ingo Molnar [EMAIL PROTECTED]

Acked-by: Benjamin Herrenschmidt [EMAIL PROTECTED]

 ---
  kernel/irq/chip.c |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c
 index 4895fde..3de6ea3 100644
 --- a/kernel/irq/chip.c
 +++ b/kernel/irq/chip.c
 @@ -127,7 +127,7 @@ int set_irq_type(unsigned int irq, unsigned int type)
   return 0;
  
   spin_lock_irqsave(desc-lock, flags);
 - ret = __irq_set_trigger(desc, irq, flags);
 + ret = __irq_set_trigger(desc, irq, type);
   spin_unlock_irqrestore(desc-lock, flags);
   return ret;
  }

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: Bug in genirq: record trigger type

2008-10-21 Thread Ingo Molnar

* Benjamin Herrenschmidt [EMAIL PROTECTED] wrote:

 On Tue, 2008-10-21 at 09:28 +0200, Ingo Molnar wrote:
 
  From: Chris Friesen [EMAIL PROTECTED]
  Date: Mon, 20 Oct 2008 12:41:58 -0600
  Subject: [PATCH] genirq: fix set_irq_type() when recording trigger type
  
  In set_irq_type() we want to pass the type rather than the current
  interrupt state.
  
  Signed-off-by: Chris Friesen [EMAIL PROTECTED]
  Signed-off-by: Ingo Molnar [EMAIL PROTECTED]
 
 Acked-by: Benjamin Herrenschmidt [EMAIL PROTECTED]

thx, added your ack to the commit as well.

Ingo
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [RFC PATCH 0/5] patches for a network-based hvc backend (s390)

2008-10-21 Thread Hendrik Brueckner
On Tue, Oct 21, 2008 at 10:23:37AM +1100, Benjamin Herrenschmidt wrote:
 What's the status with that patch serie ? Is this 2.6.28 material ?
It is 2.6.28 material.
 Alan, are you ok with those ? Hendrik, have there been any respin other
 than v2 of patch 4/5 ?
The other patches have not been changed.

fyi: patch 1/5 (hangup notifier) applies successfully with an offset
of 2 lines due to commit eef2622a9fcfa96407ea72c7c9cd20ad45e6
(hvc_console: Fix free_irq in spinlocked section).


 I can merge it via powerpc but it's getting late in the merge window...
Thanks... that would be really great!

Regards
Hendrik

-- 
Hendrik Brueckner
D/3303 Linux on System z Development
Tel: +49 7031 16-1073
Fax: +49 7031 16-3456
eMail: [EMAIL PROTECTED]
IBM Deutschland Research  Development GmbH, Schoenaicher Str. 220, 71032 
Boeblingen

IBM Deutschland Research  Development GmbH
Vorsitzender des Aufsichtsrats: Martin Jetter
Geschaeftsfuehrung: Erich Baier
Sitz der Gesellschaft: Boeblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


[git pull] Please pull from powerpc.git next branch

2008-10-21 Thread Benjamin Herrenschmidt
Hi Linus !

This is the remaining powerpc bits for this merge window (minus -maybe-
some kdump related stuff that Paul we'll see tomorrow, in any case,
it's not in this batch).

Nothing terribly fancy, mostly bug fixes, a few new embedded boards,
some serious fixes to Cell SPU oprofile.

A few things outside of arch/powerpc / drivers/of that should either
have appropriate ack's or be powerpc specific drivers unless I screwed
up.

Cheers,
Ben.

The following changes since commit 2515ddc6db8eb49a79f0fe5e67ff09ac7c81eab4:
  Paul Mundt (1):
binfmt_elf_fdpic: Update for cputime changes.

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc.git master

Andre Detsch (2):
  powerpc/spufs: Improve search of node for contexts with SPU affinity
  powerpc/spufs: Explain conditional decrement of aff_sched_count

Anton Vorontsov (3):
  powerpc: Remove device_type = board_control properties in .dts files
  powerpc/83xx: Add support for MCU microcontroller in .dts files
  powerpc/83xx: Add DS1339 RTC support for MPC8349E-mITX boards .dts

Benjamin Herrenschmidt (4):
  Merge commit 'jwb/jwb-next'
  Merge commit 'gcl/gcl-next'
  Merge commit 'kumar/kumar-for-2.6.28'
  Merge commit 'origin' into master

Carl Love (1):
  powerpc/oprofile: Fix mutex locking for cell spu-oprofile

Ed Swarthout (1):
  powerpc/85xx: Fix mpc8536ds dma interrupt numbers

Grant Likely (2):
  powerpc/52xx: Make cuImage more robust in locating immr node.
  powerpc: Add missing cuImage.initrd.% target

Jason Jin (1):
  powerpc/85xx: Enable enhanced functions for 8536 TSEC

Jeremy Kerr (6):
  powerpc/spufs: sputrace: Only enable logging on open(), prevent multiple 
openers
  powerpc/spufs: sputrace: Don't block until the read buffer is full
  powerpc/spufs: Use state_mutex for switch_log locking, and prevent 
multiple openers
  powerpc/spufs: Don't require full buffer in switch_log read
  powerpc/spufs: Don't spu_acquire_saved unnecessarily in regs read
  powerpc/spufs: Use kmalloc rather than kzalloc for switch log buffer

Jon Smirl (1):
  of: Format string bug in drivers/of/of_i2c.c

Jon Tollefson (1):
  powerpc/numa: Make memory reserve code more robust

Josh Boyer (6):
  powerpc/40x: AMCC PowerPC 405EZ Acadia DTS
  powerpc/40x: Add AMCC PowerPC 405EZ to cputable
  powerpc/40x: Add PowerPC 40x simple platform support
  powerpc/40x: Add cuboot wrapper for Acadia board
  powerpc/40x: Add PowerPC 405EZ Acadia defconfig
  ibm_newemac: Fix new MAL feature handling

Kumar Gala (3):
  powerpc: Fix build issue with CONFIG_RELOCATABLE=y
  powerpc: Remove Kconfig support for PPC_MERGE
  powerpc/85xx: Move mpc8572ds.dts to address-cells/size-cells = 2

Mike Ditto (1):
  powerpc: Fix boot wrapper memcmp() called with zero length argument

Milton Miller (4):
  powerpc: Find and destroy possible stale kernel added properties
  powerpc: Use cpu_thread_in_core in smp_init for of_spin_map
  powerpc: Always trim numa memory to lmb_end_of_DRAM()
  powerpc: Delete unused prom_strtoul and prom_memparse

Nathan Fontenot (1):
  powerpc/pseries: Validate PFN in pseries_remove_lmb()

Niklaus Giger (1):
  powerpc/40x: Add support for Netstal HCU4 board

Paul Mackerras (1):
  powerpc: Revert CHRP boot wrapper to real-base = 12MB on 32-bit

Sebastian Siewior (1):
  powerpc/boot: Compare _start against ei.loadsize instead ei.memsize

Steven A. Falco (1):
  powerpc/4xx: Add PowerPC 4xx GPIO driver

Wolfgang Ocker (1):
  of/spi: Support specifying chip select as active high via device tree

Wolfram Sang (3):
  powerpc/mpc5200: Don't touch pipelining for MPC5200B
  powerpc/mpc5200: Refactor FEC mdio read/write routines
  i2c-cpm: Suppress autoprobing for devices

roel kluin (1):
  powerpc: Unsigned speed cannot be negative in udbg_16559.c

 Documentation/powerpc/booting-without-of.txt |2 +
 Documentation/powerpc/dts-bindings/fsl/board.txt |4 +-
 arch/powerpc/Kconfig |3 -
 arch/powerpc/boot/Makefile   |7 +-
 arch/powerpc/boot/addnote.c  |   41 +-
 arch/powerpc/boot/cuboot-52xx.c  |4 +
 arch/powerpc/boot/cuboot-acadia.c|  174 
 arch/powerpc/boot/dts/acadia.dts |  224 ++
 arch/powerpc/boot/dts/hcu4.dts   |  168 
 arch/powerpc/boot/dts/mpc8315erdb.dts|8 +
 arch/powerpc/boot/dts/mpc832x_mds.dts|2 +-
 arch/powerpc/boot/dts/mpc8349emitx.dts   |   16 +
 arch/powerpc/boot/dts/mpc8349emitxgp.dts |8 +
 arch/powerpc/boot/dts/mpc834x_mds.dts|2 +-
 arch/powerpc/boot/dts/mpc836x_mds.dts|2 +-
 arch/powerpc/boot/dts/mpc8377_rdb.dts|8 +
 arch/powerpc/boot/dts/mpc8378_rdb.dts|8 +
 

Re: Bug in genirq: record trigger type

2008-10-21 Thread David Brownell
On Monday 20 October 2008, Benjamin Herrenschmidt wrote:
 This one is obviously broken and breaks booting on a whole bunch of
 machines (including powermac's and thus my G5, it's never good when my
 own machine breaks !).
 
 Nice to see 3 SOB's and one Ack and nobody caught the obvious bug :-)

As you saw, that one's fixed.  Chris' patch unfortunately didn't
get integrated right away.


I'm a bit more curious about another potential issue though ... as
described in the patch comment:

 - Make set_irq_type() usage match request_irq() usage:
* IRQ_TYPE_NONE should be a NOP; succeed, so irq_chip methods
  won't have to handle that case any more (many do it wrong).

It might be a bit more accurate to say irq_chip.set_type() methods
are *inconsistent* in handling IRQ_TYPE_NONE.  Previously the
set_irq_type() method would pass that down to irq_chip code. 

I had observed two behaviors, but I thought I observed a third one
in some of the PowerPC code:

 (1) ignore it ... matching request_irq() usage
 (2) return an error ... nasty
 (3) assign some irq_chip-specific trigger mode

That third behavior might cause a bit of trouble, but I think
it was only used during platform init.  Someone more attuned
to PowerPC might want to check ...

- Dave

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: build failure on powerpc with current -git

2008-10-21 Thread Stephen Rothwell
Hi Paulus,

On Tue, 21 Oct 2008 16:33:10 +1100 Paul Mackerras [EMAIL PROTECTED] wrote:

 It's a bug in older versions of ld (including 2.16.1) that's fixed in
 the current version (2.18).  However, this patch appears to work
 around the problem - at least, it let me build a 32-bit kernel with a
 cross-toolchain including a 2.16.1 ld.  Let me know if this gets it
 working for you.

With that patch applied I got these errors for a powerpc ppc64_defconfig
build (linux-next).

/usr/bin/objcopy: Warning: '/dev/null' is not an ordinary file
make[2]: *** [arch/powerpc/boot/zImage.pmac] Error 1
make[2]: *** Waiting for unfinished jobs
/usr/bin/objcopy: Warning: '/dev/null' is not an ordinary file
make[2]: *** [arch/powerpc/boot/zImage.pseries] Error 1
-- 
Cheers,
Stephen Rothwell[EMAIL PROTECTED]
http://www.canb.auug.org.au/~sfr/


pgpfcEtTU2z6E.pgp
Description: PGP signature
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Re: Bug in genirq: record trigger type

2008-10-21 Thread Benjamin Herrenschmidt
On Tue, 2008-10-21 at 01:01 -0700, David Brownell wrote:
 
 I'm a bit more curious about another potential issue though ... as
 described in the patch comment:
 
  - Make set_irq_type() usage match request_irq() usage:
 * IRQ_TYPE_NONE should be a NOP; succeed, so irq_chip methods
   won't have to handle that case any more (many do it wrong).
 
 It might be a bit more accurate to say irq_chip.set_type() methods
 are *inconsistent* in handling IRQ_TYPE_NONE.  Previously the
 set_irq_type() method would pass that down to irq_chip code. 
 
 I had observed two behaviors, but I thought I observed a third one
 in some of the PowerPC code:
 
  (1) ignore it ... matching request_irq() usage
  (2) return an error ... nasty
  (3) assign some irq_chip-specific trigger mode
 
 That third behavior might cause a bit of trouble, but I think
 it was only used during platform init.  Someone more attuned
 to PowerPC might want to check ...

Ok, I wrote a lot of the port of powerpc stuff to genirq so I supposed
I'm the person to do that sweep :-) I'll have a look tomorrow.

Thanks for the heads up,

Cheers,
Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: Bug in genirq: record trigger type

2008-10-21 Thread Yinghai Lu
On Mon, Oct 20, 2008 at 11:32 PM, Benjamin Herrenschmidt
[EMAIL PROTECTED] wrote:
 On Mon, 2008-10-20 at 22:05 +, Linux Kernel Mailing List wrote:
 Gitweb: 
 http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0c5d1eb77a8be917b638344a22afe1398236482b
 Commit: 0c5d1eb77a8be917b638344a22afe1398236482b
 Parent: d6d5aeb661fc14655c417f3582ae7ec52985d2a8
 Author: David Brownell [EMAIL PROTECTED]
 AuthorDate: Wed Oct 1 14:46:18 2008 -0700
 Committer:  Ingo Molnar [EMAIL PROTECTED]
 CommitDate: Thu Oct 2 10:24:09 2008 +0200

 This one is obviously broken and breaks booting on a whole bunch of
 machines (including powermac's and thus my G5, it's never good when my
 own machine breaks !).

 Nice to see 3 SOB's and one Ack and nobody caught the obvious bug :-)

   desc = irq_desc + irq;
 - if (desc-chip-set_type) {
 - spin_lock_irqsave(desc-lock, flags);
 - ret = desc-chip-set_type(irq, type);
 - spin_unlock_irqrestore(desc-lock, flags);
 - }
 + if (type == IRQ_TYPE_NONE)
 + return 0;
 +
 + spin_lock_irqsave(desc-lock, flags);
 + ret = __irq_set_trigger(desc, irq, flags);
  type maybe ?

 + spin_unlock_irqrestore(desc-lock, flags);
   return ret;
  }

 I have to run so no patch until tomorrow unless somebody beats me to it.

there is patch about it, but somehow get lost.

YH
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: mmc spi bindings

2008-10-21 Thread Anton Vorontsov
On Mon, Oct 20, 2008 at 08:44:30PM -0400, Jon Smirl wrote:
 Anton, is your mmc_spi driver (of_mmc_spi.c) going in any time soon?

Let's hope in 2.6.29. The 2.6.28 merge window is about to close. :-/

 I've been running it in my local tree for several months.

Ditto. ;-)

-- 
Anton Vorontsov
email: [EMAIL PROTECTED]
irc://irc.freenode.net/bd2
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 01/35] x86: clean up speedctep-centrino and reduce cpumask_t usage

2008-10-21 Thread Mike Travis
Stephen Rothwell wrote:
 Hi Mike,
 
 Just a first small thing:
 
 On Mon, 20 Oct 2008 10:03:20 -0700 Mike Travis [EMAIL PROTECTED] wrote:
 1) The #ifdef CONFIG_HOTPLUG_CPU seems unnecessary these days.
 2) The loop can simply skip over offline cpus, rather than creating a tmp 
 mask.
 3) set_mask is set to either a single cpu or all online cpus in a policy.
Since it's just used for set_cpus_allowed(), any offline cpus in a policy
don't matter, so we can just use cpumask_of_cpu() or the policy-cpus.

 From: Rusty Russell [EMAIL PROTECTED]
 Signed-off-by: Rusty Russell [EMAIL PROTECTED]
 Signed-off-by: Mike Travis [EMAIL PROTECTED]
 
 The From: line should be the first nonempty line in the mail to get the
 attribution correct.
 

Ahh, ok, thanks!
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 18/35] cpumask: add nr_cpumask_bits

2008-10-21 Thread Rusty Russell
On Tuesday 21 October 2008 04:03:37 Mike Travis wrote:
 When nr_cpu_ids is set to CONFIG_NR_CPUS then references to nr_cpu_ids
 will return the maximum index of the configured NR_CPUS (+1) instead
 of the maximum index of the possible number of cpus (+1).  This results
 in extra unused memory being allocated by functions that are setting up
 arrays of structs to keep track of per cpu items.

1) I like the name in this context: it's a beacon of sanity after NR_CPUS and
   nr_cpu_ids.  But it's not so clearly a win when general code uses it:

if (cpumask_first(mymask) == nr_cpumask_bits) ...

   vs:
   
if (cpumask_first(mymask) == nr_cpu_ids) ...

2) This breaks anyone who tests that the iterators etc. return == nr_cpu_ids.
   One of the other patches tried to change them from NR_CPUS to nr_cpu_ids,
   that should now be revisited  reaudited.

3) Noone should be naively allocating * nr_cpu_ids arrays, they should be
   using per-cpu pointers.  Not doing so wastes memory on non-contiguous
   processor systems.

4) It should be a constant not be dependent on CONFIG_CPUMASK_OFFSTACK, but
   rather as it was on NR_CPUS  BITS_PER_LONG.  I think that's the sweet
   spot, and should also make your 2MB gain vanish.

That's why I suggested a max_possible_cpu() function, and using that for those 
who really want to do allocations, who should be audited anyway, see (3).  I 
don't want it as prominent as nr_cpu_ids, which is usually the Right Thing, 
and always safe.

Cheers,
Rusty.
PS.  I have part of a patch for this...
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 18/35] cpumask: add nr_cpumask_bits

2008-10-21 Thread Mike Travis
Rusty Russell wrote:
 On Tuesday 21 October 2008 04:03:37 Mike Travis wrote:
 When nr_cpu_ids is set to CONFIG_NR_CPUS then references to nr_cpu_ids
 will return the maximum index of the configured NR_CPUS (+1) instead
 of the maximum index of the possible number of cpus (+1).  This results
 in extra unused memory being allocated by functions that are setting up
 arrays of structs to keep track of per cpu items.
 
 1) I like the name in this context: it's a beacon of sanity after NR_CPUS and
nr_cpu_ids.  But it's not so clearly a win when general code uses it:
 
   if (cpumask_first(mymask) == nr_cpumask_bits) ...
 
vs:

   if (cpumask_first(mymask) == nr_cpu_ids) ...

I think the correct use for iterators would be:

if (cpumask_first(mymask) = nr_cpu_ids)

... since nr_cpu_ids is guaranteed to be = nr_cpumask_bits.  And 
nr_cpumask_bits
is not really meant to be used anywhere except in the bit operations supporting
the cpumask_* operators.

 2) This breaks anyone who tests that the iterators etc. return == nr_cpu_ids.

I think that's broken anyways... ;-)

One of the other patches tried to change them from NR_CPUS to nr_cpu_ids,
that should now be revisited  reaudited.

The change from NR_CPUS to nr_cpu_ids is ok, but it should also be changed from:

(x == NR_CPUS)
to:
(x = nr_cpu_ids)
 
 3) Noone should be naively allocating * nr_cpu_ids arrays, they should be
using per-cpu pointers.  Not doing so wastes memory on non-contiguous
processor systems.

The problem often arises where an array is allocated that will use the
cpu as an index into the array.  They can be changed eventually to use a
percpu pointer, but in the interim keeping nr_cpu_ids intact maintains
compatibility without allocating unused memory.

 4) It should be a constant not be dependent on CONFIG_CPUMASK_OFFSTACK, but
rather as it was on NR_CPUS  BITS_PER_LONG.  I think that's the sweet
spot, and should also make your 2MB gain vanish.

I'll run the test again but most likely the result will be an extra 1Mb of
unused memory instead. ;-)  One other note, that test compile used the default
config [and NR_CPUS=128] which turns off a lot of functions.  A typical distro
config will have many more options turned on.

And the beauty of using a separate flag to enable variable length cpumasks,
is there may be cases where an arch or specific system config wants a multiple
word cpumask on the stack for performance reasons (like cache or node locality,
avoidance of the kmalloc's, etc.)

 That's why I suggested a max_possible_cpu() function, and using that for 
 those 
 who really want to do allocations, who should be audited anyway, see (3).  I 
 don't want it as prominent as nr_cpu_ids, which is usually the Right Thing, 
 and always safe.

We could change all refs from nr_cpu_ids to max_possible_cpu but wouldn't
we still be leaving a window open where it could be incorrectly used?
So far all the cpumask conversions allow for mixed-use cpumask (i.e.,
cpumask_t and struct cpumask *) by maintaining backwards compatility,
until everything is eventually sorted out.  Keeping nr_cpu_ids representing
the same value maintains this compatibility bridge.

The most correct way would be to use the (not yet implemented) zero
based PERCPU allocator.  Slightly less efficient would be to allocate
node local memory for each struct, in a loop using a per cpu pointer
and for_each_possible_cpu().

 Cheers,
 Rusty.
 PS.  I have part of a patch for this...

But as I've said, it's not critical to the new functionality...

Thanks!
Mike
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: powerpc: find and destroy possible stale kernel added properties

2008-10-21 Thread Matt Sealey



Milton Miller wrote:
 
+	/* remove any stale propertys so ours can be found */


s/propertys/properties

?

--
Matt Sealey [EMAIL PROTECTED]
Genesi, Manager, Developer Relations
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


RE: [RFC/PATCH] pci: Workaround invalid P2P bridge bus numbers

2008-10-21 Thread Ayman El-Khashab
Benjamin Herrenschmidt wrote:

 
 Ayman, can you double check that this variant of the patch still
 fixes your problem ? Thanks !
 

I've tried it out and it is working correctly with my devices.  The
subordinate bus numbers on all the ports are correct.

Best Regards,
Ayman
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: Please pull from 'for-2.6.28' branch

2008-10-21 Thread Anton Vorontsov
On Tue, Oct 21, 2008 at 12:47:37AM +0400, Anton Vorontsov wrote:
 On Mon, Oct 20, 2008 at 02:32:21PM -0500, Kumar Gala wrote:
 
  On Oct 20, 2008, at 2:17 PM, Anton Vorontsov wrote:
 
  Hi Kumar,
 
  On Mon, Oct 20, 2008 at 01:04:36PM -0500, Kumar Gala wrote:
  Please pull from 'for-2.6.28' branch of
 
master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc.git  
  for-2.6.28
 
  Could you tell the status of this patch?
 
  [1/4] powerpc/QE: implement QE Pin Multiplexing API
  http://patchwork.ozlabs.org/patch/4897/
 
  I reposted it several times (w/o changes), received no comments.
  If it's ok, could you merge it for 2.6.28?
 
  Sorry, I was thinking this patch required an OF interface change getting 
  accepted... is that true?
 
 Benjamin merged the OF patch, it's in the Linus' tree already.

Maybe I was unclear... The OF interface change was accepted,
so the QE pinmux patch doesn't depend on anything.. Thus, can we
please merge the patch? It is needed for the FHCI USB driver,
which I still hope could get in into the 2.6.28-rc2, since it
is self-sufficient new feature that can't break anything.

Thanks and sorry for the annoyance,

-- 
Anton Vorontsov
email: [EMAIL PROTECTED]
irc://irc.freenode.net/bd2
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: Please pull from 'for-2.6.28' branch

2008-10-21 Thread Kumar Gala


On Oct 21, 2008, at 9:41 AM, Anton Vorontsov wrote:



Maybe I was unclear... The OF interface change was accepted,
so the QE pinmux patch doesn't depend on anything.. Thus, can we
please merge the patch? It is needed for the FHCI USB driver,
which I still hope could get in into the 2.6.28-rc2, since it
is self-sufficient new feature that can't break anything.

Thanks and sorry for the annoyance,


I understood, just haven't had time to look at these patches.  I don't  
know if this is likely to make it into 2.6.28.


- k
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc: enable heap randomization for linkstations

2008-10-21 Thread Scott Wood
On Mon, Oct 20, 2008 at 12:28:09AM +0200, Guennadi Liakhovetski wrote:
 On Sun, 19 Oct 2008, Jon Smirl wrote:
  That should match:
  
  [EMAIL PROTECTED] {
  #address-cells = 1;
  #size-cells = 0;
  cell-index = 0;
  compatible = fsl-i2c;
  reg = 0x80003000 0x1000;
  interrupts = 5 2;
  interrupt-parent = mpic;
  
  [EMAIL PROTECTED] {
  device_type = rtc;
  compatible = ricoh,rs5c372a;
  reg = 0x32;
  };
  };
 
 It should, but it doesn't.

Is the parent of the i2c node covered by the list passed to
of_platform_bus_probe() on this board?

-Scott
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc: enable heap randomization for linkstations

2008-10-21 Thread Guennadi Liakhovetski
On Tue, 21 Oct 2008, Scott Wood wrote:

 On Mon, Oct 20, 2008 at 12:28:09AM +0200, Guennadi Liakhovetski wrote:
  On Sun, 19 Oct 2008, Jon Smirl wrote:
   That should match:
   
 [EMAIL PROTECTED] {
 #address-cells = 1;
 #size-cells = 0;
 cell-index = 0;
 compatible = fsl-i2c;
 reg = 0x80003000 0x1000;
 interrupts = 5 2;
 interrupt-parent = mpic;
   
 [EMAIL PROTECTED] {
 device_type = rtc;
 compatible = ricoh,rs5c372a;
 reg = 0x32;
 };
 };
  
  It should, but it doesn't.
 
 Is the parent of the i2c node covered by the list passed to
 of_platform_bus_probe() on this board?

You mean something like this:

static __initdata struct of_device_id storcenter_of_bus[] = {
{ .name = soc, },
{},
};

static int __init storcenter_device_probe(void)
{
of_platform_bus_probe(NULL, storcenter_of_bus, NULL);
return 0;
}
machine_device_initcall(storcenter, storcenter_device_probe);

? No, linkstation doesn't do that. Somehow, as this API has been 
introduced, linkstation has been left aside:-(

Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc: enable heap randomization for linkstations

2008-10-21 Thread Scott Wood

Guennadi Liakhovetski wrote:

static __initdata struct of_device_id storcenter_of_bus[] = {
{ .name = soc, },
{},
};


Add .compatible = simple-bus to the list.


static int __init storcenter_device_probe(void)
{
of_platform_bus_probe(NULL, storcenter_of_bus, NULL);
return 0;
}
machine_device_initcall(storcenter, storcenter_device_probe);

? No, linkstation doesn't do that. Somehow, as this API has been 
introduced, linkstation has been left aside:-(


This is almost as much of a FAQ as interrupt mapping...  I'm wondering 
if we should have stuck with a default list, and added a call to 
of_platform_bus_probe by common code that could be overridden by some 
board flag if really necessary, rather than have a bunch of 
duplication-with-mutation in the platform files.


-Scott
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: Please pull from 'for-2.6.28' branch

2008-10-21 Thread Timur Tabi
On Tue, Oct 21, 2008 at 9:49 AM, Kumar Gala [EMAIL PROTECTED] wrote:
 I understood, just haven't had time to look at these patches.  I don't know
 if this is likely to make it into 2.6.28.

I ack'd the QE library portions of these patches back in April.  Sure,
a lot has changed since then, but what's the point of having a merge
window if you don't actually merge the code?

-- 
Timur Tabi
Linux kernel developer at Freescale
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: Kernel Oops when run ifconfig on MPC8360MDS board

2008-10-21 Thread mike zheng
Enable the debug flag on ucc_geth.c: there is the dmesg:

ucc_geth_open: IN
ucc_geth_startup: IN
Machine check in kernel mode.
Caused by (from SRR1=49030): Transfer error ack signal
Oops: machine check, sig: 7
NIP: C0126910 XER: 2000 LR: C01268D0 SP: CFD0DD80 REGS: cfd0dcd0
TRAP: 0200Not tainted
MSR: 00049030 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 11
TASK = cfd0c000[398] 'ifconfig' Last syscall: 54
last math cfd0c000 last altivec 
GPR00:  CFD0DD80 CFD0C000  1032 CC10E000 C0247264 C04D1F74
GPR08: BA2E8BA3 D110 C01EE55C  4808 100235F8  
GPR16:   1002 1002 9032 CFD0DE78  
GPR24: 8914 C000 C01D CFD0DDB8 D100 C0586D20 C0269C20 
Call backtrace:
C0126890 C00D59D0 C00D761C C012F400 C0130DD4 C01746B4 C017712C
C0127770 C004D8B0 C0005ABC  10001214 100023C4 0FEC4E00



On Tue, Oct 21, 2008 at 12:26 AM, mike zheng [EMAIL PROTECTED] wrote:
 Oh, I forgot to metion just now. The linux is based on a custom built
 kernel 2.4.22, not from Freescale.

 On 10/20/08, mike zheng [EMAIL PROTECTED] wrote:
 On 10/20/08, Kim Phillips [EMAIL PROTECTED] wrote:
  On Mon, 20 Oct 2008 15:00:33 -0700
  mike zheng [EMAIL PROTECTED] wrote:
 
   I have following kernel Oops when I run ifconfig to setup the UEC0 of
   MPC8360MDS board. There is no hardware problem, the UEC0 runs well
   under Uboot.
 
  does this occur on vanilla u-boot and kernel versions?  if so, which
  ones, and on what board revision?
 
 The kernel Oops happened under Linux when I try to use ifconfig to
 setup the eth0. Under Uboot, the UEC0 works fine. I am able to do
 ping, tftp via the ethernet port.


   Call backtrace:
   C0126890 C00D59D0 C00D761C C012F400 C0130DD4 C01746B4 C017712C
   C0127770 C004D8B0 C0005ABC  10001214 100023C4 0FEC4E00
   
 
  might want to turn on verbose debugging while you're at it.

 Which flag shall I turned on? I am not formaliar to the network driver. 
 Thanks!
 
  Kim
 


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: Please pull from 'for-2.6.28' branch

2008-10-21 Thread Kumar Gala


On Oct 21, 2008, at 10:35 AM, Timur Tabi wrote:

On Tue, Oct 21, 2008 at 9:49 AM, Kumar Gala  
[EMAIL PROTECTED] wrote:
I understood, just haven't had time to look at these patches.  I  
don't know

if this is likely to make it into 2.6.28.


I ack'd the QE library portions of these patches back in April.  Sure,
a lot has changed since then, but what's the point of having a merge
window if you don't actually merge the code?


The point is to attempt to get code merged.  There is only so much a  
maintainer can do during or before the window.  The fact that Ben had  
issues with the OF patch caused me to ignore this change until that  
got resolved.  Since that was resolved close to the merge window this  
particular set of patches suffered.


- k
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] Support for relocatable kdump kernel

2008-10-21 Thread Mohan Kumar M

Michael Ellerman wrote:


Does it? I see CONFIG_CRASH_DUMP depending on PPC64, so there is no
32-bit kdump possible. Or is someone working on it out-of-tree?



IIUC Anton Vorontsov is working on the 32-bit kdump kernel support.


Do you expect a function to do the checking in iommu.c?


You'd use the function in iommu.c, but it should be defined in some
header.


Yeah, I will do that.


OK. Does old purgatory ensure that the register is 0? Otherwise I think
it's possible that a new kernel could get confused by cruft left in that
register by an old purgatory - causing the 2nd kernel to think it's a
kdump kernel when it shouldn't be.


__kdump_flag is by default is 0 and old purgatory code even won't know 
that it need to modify __kdump_flag. So unless __kdump_flag is 1, the 
kernel will behave as a normal one.


Regards,
Mohan.
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 1/2] powerpc/83xx: add DS1339 RTC support for MPC8349E-mITX boards

2008-10-21 Thread Scott Wood
On Fri, Oct 17, 2008 at 10:56:59PM +0400, Anton Vorontsov wrote:
 diff --git a/arch/powerpc/boot/dts/mpc8349emitx.dts 
 b/arch/powerpc/boot/dts/mpc8349emitx.dts
 index 5cedf37..7fc5414 100644
 --- a/arch/powerpc/boot/dts/mpc8349emitx.dts
 +++ b/arch/powerpc/boot/dts/mpc8349emitx.dts
 @@ -83,6 +83,14 @@
   interrupts = 15 0x8;
   interrupt-parent = ipic;
   dfsrr;
 +
 + [EMAIL PROTECTED] {
 + device_type = rtc;
 + compatible = dallas,ds1339;
 + reg = 0x68;
 + interrupts = 18 0x8;
 + interrupt-parent = ipic;
 + };

Why are we adding more device_types?

-Scott
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 1/2] powerpc/83xx: add DS1339 RTC support for MPC8349E-mITX boards

2008-10-21 Thread Kumar Gala


On Oct 21, 2008, at 1:23 PM, Scott Wood wrote:


On Fri, Oct 17, 2008 at 10:56:59PM +0400, Anton Vorontsov wrote:
diff --git a/arch/powerpc/boot/dts/mpc8349emitx.dts b/arch/powerpc/ 
boot/dts/mpc8349emitx.dts

index 5cedf37..7fc5414 100644
--- a/arch/powerpc/boot/dts/mpc8349emitx.dts
+++ b/arch/powerpc/boot/dts/mpc8349emitx.dts
@@ -83,6 +83,14 @@
interrupts = 15 0x8;
interrupt-parent = ipic;
dfsrr;
+
+   [EMAIL PROTECTED] {
+   device_type = rtc;
+   compatible = dallas,ds1339;
+   reg = 0x68;
+   interrupts = 18 0x8;
+   interrupt-parent = ipic;
+   };


Why are we adding more device_types?


I think the 'rtc' device_type is legacy from OF.

- k
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 1/2] powerpc/83xx: add DS1339 RTC support for MPC8349E-mITX boards

2008-10-21 Thread Scott Wood

Kumar Gala wrote:

On Oct 21, 2008, at 1:23 PM, Scott Wood wrote:

Why are we adding more device_types?


I think the 'rtc' device_type is legacy from OF.


Yes, and it advertises a run-time service that we do not and cannot 
support.  We should not have it in flat trees.


-Scott
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 1/2] powerpc/83xx: add DS1339 RTC support for MPC8349E-mITX boards

2008-10-21 Thread Anton Vorontsov
On Tue, Oct 21, 2008 at 01:23:44PM -0500, Scott Wood wrote:
 On Fri, Oct 17, 2008 at 10:56:59PM +0400, Anton Vorontsov wrote:
  diff --git a/arch/powerpc/boot/dts/mpc8349emitx.dts 
  b/arch/powerpc/boot/dts/mpc8349emitx.dts
  index 5cedf37..7fc5414 100644
  --- a/arch/powerpc/boot/dts/mpc8349emitx.dts
  +++ b/arch/powerpc/boot/dts/mpc8349emitx.dts
  @@ -83,6 +83,14 @@
  interrupts = 15 0x8;
  interrupt-parent = ipic;
  dfsrr;
  +
  +   [EMAIL PROTECTED] {
  +   device_type = rtc;
  +   compatible = dallas,ds1339;
  +   reg = 0x68;
  +   interrupts = 18 0x8;
  +   interrupt-parent = ipic;
  +   };
 
 Why are we adding more device_types?

It seems that CHRP is using the device_type for rtc devices, which
means that real OF also provide it. But I guess we don't need it,
right? Then we should cleanup all the boards.
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


[PATCH] powerpc: Remove device_type = rtc properties in .dts files

2008-10-21 Thread Anton Vorontsov
We don't want to encourage the device_type usage. It isn't used in the
code, so we can simply remove it from the dts files.

Suggested-by: Scott Wood [EMAIL PROTECTED]
Signed-off-by: Anton Vorontsov [EMAIL PROTECTED]
---
 arch/powerpc/boot/dts/kuroboxHD.dts  |1 -
 arch/powerpc/boot/dts/kuroboxHG.dts  |1 -
 arch/powerpc/boot/dts/lite5200.dts   |1 -
 arch/powerpc/boot/dts/lite5200b.dts  |1 -
 arch/powerpc/boot/dts/motionpro.dts  |1 -
 arch/powerpc/boot/dts/mpc8315erdb.dts|1 -
 arch/powerpc/boot/dts/mpc8349emitx.dts   |1 -
 arch/powerpc/boot/dts/mpc8349emitxgp.dts |1 -
 arch/powerpc/boot/dts/mpc8377_rdb.dts|1 -
 arch/powerpc/boot/dts/mpc8378_rdb.dts|1 -
 arch/powerpc/boot/dts/mpc8379_rdb.dts|1 -
 arch/powerpc/boot/dts/pcm030.dts |2 --
 arch/powerpc/boot/dts/tqm5200.dts|1 -
 13 files changed, 0 insertions(+), 14 deletions(-)

diff --git a/arch/powerpc/boot/dts/kuroboxHD.dts 
b/arch/powerpc/boot/dts/kuroboxHD.dts
index 2e5a1a1..8d725d1 100644
--- a/arch/powerpc/boot/dts/kuroboxHD.dts
+++ b/arch/powerpc/boot/dts/kuroboxHD.dts
@@ -76,7 +76,6 @@  add flash parts, rtc, ??
interrupt-parent = mpic;
 
[EMAIL PROTECTED] {
-   device_type = rtc;
compatible = ricoh,rs5c372a;
reg = 0x32;
};
diff --git a/arch/powerpc/boot/dts/kuroboxHG.dts 
b/arch/powerpc/boot/dts/kuroboxHG.dts
index e4916e6..b13a11e 100644
--- a/arch/powerpc/boot/dts/kuroboxHG.dts
+++ b/arch/powerpc/boot/dts/kuroboxHG.dts
@@ -76,7 +76,6 @@  add flash parts, rtc, ??
interrupt-parent = mpic;
 
[EMAIL PROTECTED] {
-   device_type = rtc;
compatible = ricoh,rs5c372a;
reg = 0x32;
};
diff --git a/arch/powerpc/boot/dts/lite5200.dts 
b/arch/powerpc/boot/dts/lite5200.dts
index 2cf9a87..3f7a5dc 100644
--- a/arch/powerpc/boot/dts/lite5200.dts
+++ b/arch/powerpc/boot/dts/lite5200.dts
@@ -130,7 +130,6 @@
 
[EMAIL PROTECTED] { // Real time clock
compatible = fsl,mpc5200-rtc;
-   device_type = rtc;
reg = 0x800 0x100;
interrupts = 1 5 0 1 6 0;
interrupt-parent = mpc5200_pic;
diff --git a/arch/powerpc/boot/dts/lite5200b.dts 
b/arch/powerpc/boot/dts/lite5200b.dts
index 7bd5b9c..63e3bb4 100644
--- a/arch/powerpc/boot/dts/lite5200b.dts
+++ b/arch/powerpc/boot/dts/lite5200b.dts
@@ -130,7 +130,6 @@
 
[EMAIL PROTECTED] { // Real time clock
compatible = fsl,mpc5200b-rtc,fsl,mpc5200-rtc;
-   device_type = rtc;
reg = 0x800 0x100;
interrupts = 1 5 0 1 6 0;
interrupt-parent = mpc5200_pic;
diff --git a/arch/powerpc/boot/dts/motionpro.dts 
b/arch/powerpc/boot/dts/motionpro.dts
index 9e3c921..52ba6f9 100644
--- a/arch/powerpc/boot/dts/motionpro.dts
+++ b/arch/powerpc/boot/dts/motionpro.dts
@@ -248,7 +248,6 @@
fsl5200-clocking;
 
[EMAIL PROTECTED] {
-   device_type = rtc;
compatible = dallas,ds1339;
reg = 0x68;
};
diff --git a/arch/powerpc/boot/dts/mpc8315erdb.dts 
b/arch/powerpc/boot/dts/mpc8315erdb.dts
index 6b85067..d3d3097 100644
--- a/arch/powerpc/boot/dts/mpc8315erdb.dts
+++ b/arch/powerpc/boot/dts/mpc8315erdb.dts
@@ -117,7 +117,6 @@
interrupt-parent = ipic;
dfsrr;
[EMAIL PROTECTED] {
-   device_type = rtc;
compatible = dallas,ds1339;
reg = 0x68;
};
diff --git a/arch/powerpc/boot/dts/mpc8349emitx.dts 
b/arch/powerpc/boot/dts/mpc8349emitx.dts
index 2c9d54a..d86c6a3 100644
--- a/arch/powerpc/boot/dts/mpc8349emitx.dts
+++ b/arch/powerpc/boot/dts/mpc8349emitx.dts
@@ -85,7 +85,6 @@
dfsrr;
 
[EMAIL PROTECTED] {
-   device_type = rtc;
compatible = dallas,ds1339;
reg = 0x68;
interrupts = 18 0x8;
diff --git a/arch/powerpc/boot/dts/mpc8349emitxgp.dts 
b/arch/powerpc/boot/dts/mpc8349emitxgp.dts
index fa40647..fd4bbc4 100644
--- a/arch/powerpc/boot/dts/mpc8349emitxgp.dts
+++ b/arch/powerpc/boot/dts/mpc8349emitxgp.dts
@@ -83,7 +83,6 @@
dfsrr;
 
[EMAIL PROTECTED] {
-   device_type = rtc;
 

Re: [PATCH] powerpc: Remove device_type = rtc properties in .dts files

2008-10-21 Thread Grant Likely
2008/10/21 Anton Vorontsov [EMAIL PROTECTED]:
 We don't want to encourage the device_type usage. It isn't used in the
 code, so we can simply remove it from the dts files.

 Suggested-by: Scott Wood [EMAIL PROTECTED]
 Signed-off-by: Anton Vorontsov [EMAIL PROTECTED]

Acked-by: Grant Likely [EMAIL PROTECTED]

 ---
  arch/powerpc/boot/dts/kuroboxHD.dts  |1 -
  arch/powerpc/boot/dts/kuroboxHG.dts  |1 -
  arch/powerpc/boot/dts/lite5200.dts   |1 -
  arch/powerpc/boot/dts/lite5200b.dts  |1 -
  arch/powerpc/boot/dts/motionpro.dts  |1 -
  arch/powerpc/boot/dts/mpc8315erdb.dts|1 -
  arch/powerpc/boot/dts/mpc8349emitx.dts   |1 -
  arch/powerpc/boot/dts/mpc8349emitxgp.dts |1 -
  arch/powerpc/boot/dts/mpc8377_rdb.dts|1 -
  arch/powerpc/boot/dts/mpc8378_rdb.dts|1 -
  arch/powerpc/boot/dts/mpc8379_rdb.dts|1 -
  arch/powerpc/boot/dts/pcm030.dts |2 --
  arch/powerpc/boot/dts/tqm5200.dts|1 -
  13 files changed, 0 insertions(+), 14 deletions(-)

 diff --git a/arch/powerpc/boot/dts/kuroboxHD.dts 
 b/arch/powerpc/boot/dts/kuroboxHD.dts
 index 2e5a1a1..8d725d1 100644
 --- a/arch/powerpc/boot/dts/kuroboxHD.dts
 +++ b/arch/powerpc/boot/dts/kuroboxHD.dts
 @@ -76,7 +76,6 @@  add flash parts, rtc, ??
interrupt-parent = mpic;

[EMAIL PROTECTED] {
 -   device_type = rtc;
compatible = ricoh,rs5c372a;
reg = 0x32;
};
 diff --git a/arch/powerpc/boot/dts/kuroboxHG.dts 
 b/arch/powerpc/boot/dts/kuroboxHG.dts
 index e4916e6..b13a11e 100644
 --- a/arch/powerpc/boot/dts/kuroboxHG.dts
 +++ b/arch/powerpc/boot/dts/kuroboxHG.dts
 @@ -76,7 +76,6 @@  add flash parts, rtc, ??
interrupt-parent = mpic;

[EMAIL PROTECTED] {
 -   device_type = rtc;
compatible = ricoh,rs5c372a;
reg = 0x32;
};
 diff --git a/arch/powerpc/boot/dts/lite5200.dts 
 b/arch/powerpc/boot/dts/lite5200.dts
 index 2cf9a87..3f7a5dc 100644
 --- a/arch/powerpc/boot/dts/lite5200.dts
 +++ b/arch/powerpc/boot/dts/lite5200.dts
 @@ -130,7 +130,6 @@

[EMAIL PROTECTED] {   // Real time clock
compatible = fsl,mpc5200-rtc;
 -   device_type = rtc;
reg = 0x800 0x100;
interrupts = 1 5 0 1 6 0;
interrupt-parent = mpc5200_pic;
 diff --git a/arch/powerpc/boot/dts/lite5200b.dts 
 b/arch/powerpc/boot/dts/lite5200b.dts
 index 7bd5b9c..63e3bb4 100644
 --- a/arch/powerpc/boot/dts/lite5200b.dts
 +++ b/arch/powerpc/boot/dts/lite5200b.dts
 @@ -130,7 +130,6 @@

[EMAIL PROTECTED] {   // Real time clock
compatible = fsl,mpc5200b-rtc,fsl,mpc5200-rtc;
 -   device_type = rtc;
reg = 0x800 0x100;
interrupts = 1 5 0 1 6 0;
interrupt-parent = mpc5200_pic;
 diff --git a/arch/powerpc/boot/dts/motionpro.dts 
 b/arch/powerpc/boot/dts/motionpro.dts
 index 9e3c921..52ba6f9 100644
 --- a/arch/powerpc/boot/dts/motionpro.dts
 +++ b/arch/powerpc/boot/dts/motionpro.dts
 @@ -248,7 +248,6 @@
fsl5200-clocking;

[EMAIL PROTECTED] {
 -   device_type = rtc;
compatible = dallas,ds1339;
reg = 0x68;
};
 diff --git a/arch/powerpc/boot/dts/mpc8315erdb.dts 
 b/arch/powerpc/boot/dts/mpc8315erdb.dts
 index 6b85067..d3d3097 100644
 --- a/arch/powerpc/boot/dts/mpc8315erdb.dts
 +++ b/arch/powerpc/boot/dts/mpc8315erdb.dts
 @@ -117,7 +117,6 @@
interrupt-parent = ipic;
dfsrr;
[EMAIL PROTECTED] {
 -   device_type = rtc;
compatible = dallas,ds1339;
reg = 0x68;
};
 diff --git a/arch/powerpc/boot/dts/mpc8349emitx.dts 
 b/arch/powerpc/boot/dts/mpc8349emitx.dts
 index 2c9d54a..d86c6a3 100644
 --- a/arch/powerpc/boot/dts/mpc8349emitx.dts
 +++ b/arch/powerpc/boot/dts/mpc8349emitx.dts
 @@ -85,7 +85,6 @@
dfsrr;

[EMAIL PROTECTED] {
 -   device_type = rtc;
compatible = dallas,ds1339;
reg = 0x68;
interrupts = 18 0x8;
 diff --git a/arch/powerpc/boot/dts/mpc8349emitxgp.dts 
 b/arch/powerpc/boot/dts/mpc8349emitxgp.dts
 index fa40647..fd4bbc4 100644
 --- a/arch/powerpc/boot/dts/mpc8349emitxgp.dts
 +++ b/arch/powerpc/boot/dts/mpc8349emitxgp.dts
 @@ 

Re: [1/1] powerpc: Update page in counter for CMM

2008-10-21 Thread Brian King
Milton Miller wrote:
 X-Patchwork-Id: 5144
 diff -puN arch/powerpc/mm/fault.c~powerpc_vrm_mm_pressure 
 arch/powerpc/mm/fault.c
 --- linux-2.6/arch/powerpc/mm/fault.c~powerpc_vrm_mm_pressure
 2008-10-20 17:13:25.0 -0500
 +++ linux-2.6-bjking1/arch/powerpc/mm/fault.c2008-10-20 
 17:13:25.0 -0500
 ..
 @@ -318,9 +320,11 @@ good_area:
  goto do_sigbus;
  BUG();
  }
 -if (ret  VM_FAULT_MAJOR)
 +if (ret  VM_FAULT_MAJOR) {
  current-maj_flt++;
 -else
 +if (firmware_has_feature(FW_FEATURE_CMO))
 +atomic_inc((atomic_t *)((get_lppaca()-page_ins)));
 +} else
  current-min_flt++;
  up_read(mm-mmap_sem);
  return 0;
 
 (1) why do we need atomic_inc and the hundreds or thousands of cycles to
 do the atomic inc in a per-cpu area?

We don't. I've now removed it.

 (2) assuming we make this a normal increment, should we keep the
 feature test or just do it unconditionally (ie is the additional load
 and branch worse that just doing the load and store of the counter --
 the address was previously reserved, right?  (no question if
 it has to be atomic).

Simplified patch on the way...

 Ramble things one might consider
 
 Ben asked if we need to worry about the hypervisor clearing the
 count.  If they treat it as a only-incrementing then we don't need
 to worry.  And since its only an indicator, then we may not care
 about a big count by them interrupting between the load and store

This is a read only field from the hypervisor's perspective. They
shouldn't be clearing it.

 If we are worried about linux preemption, then we need to disable
 it to avoid crossing cpu variables or  getting to this point multiple
 times.  (I have not looked at the context to see if we are already
 disabled).

Looks to me like linux preemption is a possibility in this code, so
I've added the code to disable preemption around the increment.

-Brian

-- 
Brian King
Linux on Power Virtualization
IBM Linux Technology Center


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


[PATCHv2 1/1] powerpc: Update page in counter for CMM

2008-10-21 Thread Brian King
A new field has been added to the VPA as a method for
the client OS to communicate to firmware the number of
page ins it is performing when running collaborative
memory overcommit. The hypervisor will use this information
to better determine if a partition is experiencing memory
pressure and needs more memory allocated to it.

Signed-off-by: Brian King [EMAIL PROTECTED]
---

 arch/powerpc/include/asm/lppaca.h |3 ++-
 arch/powerpc/kernel/paca.c|1 +
 arch/powerpc/mm/fault.c   |7 +--
 3 files changed, 8 insertions(+), 3 deletions(-)

diff -puN arch/powerpc/mm/fault.c~powerpc_vrm_mm_pressure 
arch/powerpc/mm/fault.c
--- linux-2.6/arch/powerpc/mm/fault.c~powerpc_vrm_mm_pressure   2008-10-20 
17:13:25.0 -0500
+++ linux-2.6-bjking1/arch/powerpc/mm/fault.c   2008-10-21 14:52:24.0 
-0500
@@ -318,9 +318,12 @@ good_area:
goto do_sigbus;
BUG();
}
-   if (ret  VM_FAULT_MAJOR)
+   if (ret  VM_FAULT_MAJOR) {
current-maj_flt++;
-   else
+   preempt_disable();
+   get_lppaca()-page_ins++;
+   preempt_enable();
+   } else
current-min_flt++;
up_read(mm-mmap_sem);
return 0;
diff -puN arch/powerpc/include/asm/lppaca.h~powerpc_vrm_mm_pressure 
arch/powerpc/include/asm/lppaca.h
--- linux-2.6/arch/powerpc/include/asm/lppaca.h~powerpc_vrm_mm_pressure 
2008-10-20 17:13:25.0 -0500
+++ linux-2.6-bjking1/arch/powerpc/include/asm/lppaca.h 2008-10-21 
13:46:45.0 -0500
@@ -133,7 +133,8 @@ struct lppaca {
 //=
 // CACHE_LINE_4-5 0x0180 - 0x027F Contains PMC interrupt data
 //=
-   u8  pmc_save_area[256]; // PMC interrupt Area   x00-xFF
+   u32 page_ins;   // CMO Hint - # page ins by OS  
x00-x04
+   u8  pmc_save_area[252]; // PMC interrupt Area   x04-xFF
 } __attribute__((__aligned__(0x400)));
 
 extern struct lppaca lppaca[];
diff -puN arch/powerpc/kernel/paca.c~powerpc_vrm_mm_pressure 
arch/powerpc/kernel/paca.c
--- linux-2.6/arch/powerpc/kernel/paca.c~powerpc_vrm_mm_pressure
2008-10-20 17:13:25.0 -0500
+++ linux-2.6-bjking1/arch/powerpc/kernel/paca.c2008-10-20 
17:13:25.0 -0500
@@ -37,6 +37,7 @@ struct lppaca lppaca[] = {
.end_of_quantum = 0xul,
.slb_count = 64,
.vmxregs_in_use = 0,
+   .page_ins = 0,
},
 };
 
_
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: hugetlbfs for ppc440 - kernel BUG

2008-10-21 Thread Benjamin Herrenschmidt
On Tue, 2007-07-10 at 13:38 -0500, Satya wrote:
 hello,
 I am trying to implement hugetlbfs on the IBM Bluegene/L IO node
 (ppc440) and I have a big problem as well as a few questions to ask
 the group. I patched a 2.6.21.6 linux kernel (manually) with Edi
 Shmueli's hugetlbfs implementation (found here:
 http://patchwork.ozlabs.org/linuxppc/patch?id=8427) for this. I did
 have to make slight changes (described at the end) to make it work.
 My test program is a shortened version of a sys v shared memory
 example described in Documentation/vm/hugetlbpage.txt

Hi !

The patchwork link unfortunately didn't survive the transition to
patchwork 2.

Do you know what's the status of Hugetlb support for 44x ? Is there any
plan to release that for upstream inclusion ?

Cheers,
Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


[PATCH] powerpc: Add del_node function to allow early boot code to prune inapplicable devices.

2008-10-21 Thread Mike Ditto
Reposting in proper format...

Some platforms have variants that can share most of a flat device tree but need
a few devices selectively pruned at boot time.  This adds del_node() to ops.h
to allow access to the existing fdt_del_node().

Signed-off-by: Mike Ditto [EMAIL PROTECTED]
---

Index: arch/powerpc/boot/ops.h
===
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 ops.h
--- arch/powerpc/boot/ops.h 11 Oct 2008 02:51:35 -  1.1.1.1
+++ arch/powerpc/boot/ops.h 18 Oct 2008 02:06:45 -
@@ -40,6 +40,7 @@
const int buflen);
int (*setprop)(const void *phandle, const char *name,
const void *buf, const int buflen);
+   int (*del_node)(const void *phandle);
void *(*get_parent)(const void *phandle);
/* The node must not already exist. */
void *(*create_node)(const void *parent, const char *name);
@@ -124,6 +125,11 @@
return dt_ops.setprop(devp, name, buf, strlen(buf) + 1);

return -1;
+}
+
+static inline int del_node(const void *devp)
+{
+   return dt_ops.del_node ? dt_ops.del_node(devp) : -1;
 }

 static inline void *get_parent(const char *devp)
Index: arch/powerpc/boot/libfdt-wrapper.c
===
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 libfdt-wrapper.c
--- arch/powerpc/boot/libfdt-wrapper.c  11 Oct 2008 02:51:35 -  1.1.1.1
+++ arch/powerpc/boot/libfdt-wrapper.c  17 Oct 2008 22:08:44 -
@@ -105,6 +105,11 @@
return check_err(rc);
 }

+static int fdt_wrapper_del_node(const void *devp)
+{
+   return fdt_del_node(fdt, devp_offset(devp));
+}
+
 static void *fdt_wrapper_get_parent(const void *devp)
 {
return offset_devp(fdt_parent_offset(fdt, devp_offset(devp)));
@@ -173,6 +178,7 @@
dt_ops.create_node = fdt_wrapper_create_node;
dt_ops.find_node_by_prop_value = fdt_wrapper_find_node_by_prop_value;
dt_ops.find_node_by_compatible = fdt_wrapper_find_node_by_compatible;
+   dt_ops.del_node = fdt_wrapper_del_node;
dt_ops.get_path = fdt_wrapper_get_path;
dt_ops.finalize = fdt_wrapper_finalize;

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


RE: [RFC/PATCH] pci: Workaround invalid P2P bridge bus numbers

2008-10-21 Thread Benjamin Herrenschmidt
On Tue, 2008-10-21 at 09:36 -0500, Ayman El-Khashab wrote:
  Ayman, can you double check that this variant of the patch still
  fixes your problem ? Thanks !
  
 
 I've tried it out and it is working correctly with my devices.  The
 subordinate bus numbers on all the ports are correct.

Thanks !

Cheers,
Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: hugetlbfs for ppc440 - kernel BUG

2008-10-21 Thread Benjamin Herrenschmidt
On Tue, 2008-10-21 at 15:46 -0700, Satya wrote:
 Ben,
 Look here: http://www-unix.mcs.anl.gov/zeptoos/hugepages/

Thanks. What is the status ? Do they work fine ? Are they going to be
re-submitted for inclusion ?

Cheers,
Ben.

 thanks,
 ./satya
 
 On Tue, Oct 21, 2008 at 1:47 PM, Benjamin Herrenschmidt
 [EMAIL PROTECTED] wrote:
 On Tue, 2007-07-10 at 13:38 -0500, Satya wrote:
  hello,
  I am trying to implement hugetlbfs on the IBM Bluegene/L IO
 node
  (ppc440) and I have a big problem as well as a few questions
 to ask
  the group. I patched a 2.6.21.6 linux kernel (manually) with
 Edi
  Shmueli's hugetlbfs implementation (found here:
  http://patchwork.ozlabs.org/linuxppc/patch?id=8427) for
 this. I did
  have to make slight changes (described at the end) to make
 it work.
  My test program is a shortened version of a sys v shared
 memory
  example described in Documentation/vm/hugetlbpage.txt
 
 
 Hi !
 
 The patchwork link unfortunately didn't survive the transition
 to
 patchwork 2.
 
 Do you know what's the status of Hugetlb support for 44x ? Is
 there any
 plan to release that for upstream inclusion ?
 
 Cheers,
 Ben.
 
 
 

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [RFC/PATCH] pci: Workaround invalid P2P bridge bus numbers

2008-10-21 Thread Jesse Barnes
On Tuesday, October 21, 2008 3:33 pm Benjamin Herrenschmidt wrote:
 On Tue, 2008-10-21 at 09:36 -0500, Ayman El-Khashab wrote:
   Ayman, can you double check that this variant of the patch still
   fixes your problem ? Thanks !
 
  I've tried it out and it is working correctly with my devices.  The
  subordinate bus numbers on all the ports are correct.

 Thanks !

Great, pushed to linux-next.

Thanks,
Jesse


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc: Add del_node function to allow early boot code to prune inapplicable devices.

2008-10-21 Thread Grant Likely
On Tue, Oct 21, 2008 at 02:32:29PM -0700, Mike Ditto wrote:
 Reposting in proper format...
 
 Some platforms have variants that can share most of a flat device tree but 
 need
 a few devices selectively pruned at boot time.  This adds del_node() to ops.h
 to allow access to the existing fdt_del_node().
 
 Signed-off-by: Mike Ditto [EMAIL PROTECTED]

Looks good to me.

Acked-by: Grant Likely [EMAIL PROTECTED]

 ---
 
 Index: arch/powerpc/boot/ops.h
 ===
 retrieving revision 1.1.1.1
 diff -u -r1.1.1.1 ops.h
 --- arch/powerpc/boot/ops.h   11 Oct 2008 02:51:35 -  1.1.1.1
 +++ arch/powerpc/boot/ops.h   18 Oct 2008 02:06:45 -
 @@ -40,6 +40,7 @@
   const int buflen);
   int (*setprop)(const void *phandle, const char *name,
   const void *buf, const int buflen);
 + int (*del_node)(const void *phandle);
   void *(*get_parent)(const void *phandle);
   /* The node must not already exist. */
   void *(*create_node)(const void *parent, const char *name);
 @@ -124,6 +125,11 @@
   return dt_ops.setprop(devp, name, buf, strlen(buf) + 1);
 
   return -1;
 +}
 +
 +static inline int del_node(const void *devp)
 +{
 + return dt_ops.del_node ? dt_ops.del_node(devp) : -1;
  }
 
  static inline void *get_parent(const char *devp)
 Index: arch/powerpc/boot/libfdt-wrapper.c
 ===
 retrieving revision 1.1.1.1
 diff -u -r1.1.1.1 libfdt-wrapper.c
 --- arch/powerpc/boot/libfdt-wrapper.c11 Oct 2008 02:51:35 -  
 1.1.1.1
 +++ arch/powerpc/boot/libfdt-wrapper.c17 Oct 2008 22:08:44 -
 @@ -105,6 +105,11 @@
   return check_err(rc);
  }
 
 +static int fdt_wrapper_del_node(const void *devp)
 +{
 + return fdt_del_node(fdt, devp_offset(devp));
 +}
 +
  static void *fdt_wrapper_get_parent(const void *devp)
  {
   return offset_devp(fdt_parent_offset(fdt, devp_offset(devp)));
 @@ -173,6 +178,7 @@
   dt_ops.create_node = fdt_wrapper_create_node;
   dt_ops.find_node_by_prop_value = fdt_wrapper_find_node_by_prop_value;
   dt_ops.find_node_by_compatible = fdt_wrapper_find_node_by_compatible;
 + dt_ops.del_node = fdt_wrapper_del_node;
   dt_ops.get_path = fdt_wrapper_get_path;
   dt_ops.finalize = fdt_wrapper_finalize;
 
 ___
 Linuxppc-dev mailing list
 Linuxppc-dev@ozlabs.org
 https://ozlabs.org/mailman/listinfo/linuxppc-dev
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] Implement polling for 5200FEC to make netconsole work.

2008-10-21 Thread Jon Smirl
Is anyone going to pick this up?

On Sat, Oct 18, 2008 at 5:40 PM, Jon Smirl [EMAIL PROTECTED] wrote:
 Implement polling for 5200FEC to make netconsole work. Tested on Phytec 
 pcm030 and Efika.

 Signed-off-by: Jon Smirl [EMAIL PROTECTED]
 ---
  drivers/net/fec_mpc52xx.c |   18 ++
  1 files changed, 18 insertions(+), 0 deletions(-)

 diff --git a/drivers/net/fec_mpc52xx.c b/drivers/net/fec_mpc52xx.c
 index 4e4f683..aec3b97 100644
 --- a/drivers/net/fec_mpc52xx.c
 +++ b/drivers/net/fec_mpc52xx.c
 @@ -401,6 +401,21 @@ static int mpc52xx_fec_hard_start_xmit(struct sk_buff 
 *skb, struct net_device *d
return 0;
  }

 +#ifdef CONFIG_NET_POLL_CONTROLLER
 +static void mpc52xx_fec_poll_controller(struct net_device *dev)
 +{
 +   struct mpc52xx_fec_priv *priv = netdev_priv(dev);
 +
 +   disable_irq(priv-t_irq);
 +   mpc52xx_fec_tx_interrupt(priv-t_irq, dev);
 +   enable_irq(priv-t_irq);
 +   disable_irq(priv-r_irq);
 +   mpc52xx_fec_rx_interrupt(priv-r_irq, dev);
 +   enable_irq(priv-r_irq);
 +}
 +#endif
 +
 +
  /* This handles BestComm transmit task interrupts
  */
  static irqreturn_t mpc52xx_fec_tx_interrupt(int irq, void *dev_id)
 @@ -926,6 +941,9 @@ mpc52xx_fec_probe(struct of_device *op, const struct 
 of_device_id *match)
ndev-tx_timeout= mpc52xx_fec_tx_timeout;
ndev-watchdog_timeo= FEC_WATCHDOG_TIMEOUT;
ndev-base_addr = mem.start;
 +#ifdef CONFIG_NET_POLL_CONTROLLER
 +   ndev-poll_controller = mpc52xx_fec_poll_controller;
 +#endif

priv-t_irq = priv-r_irq = ndev-irq = NO_IRQ; /* IRQ are free for 
 now */






-- 
Jon Smirl
[EMAIL PROTECTED]
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] Implement polling for 5200FEC to make netconsole work.

2008-10-21 Thread Grant Likely
On Tue, Oct 21, 2008 at 5:41 PM, Jon Smirl [EMAIL PROTECTED] wrote:
 Is anyone going to pick this up?

I'm looking at it, but I'm not picking it up for .28.  It's
non-trivial enough that I would have needed to have it before the
merge window opened to get it into .28.

g.


 On Sat, Oct 18, 2008 at 5:40 PM, Jon Smirl [EMAIL PROTECTED] wrote:
 Implement polling for 5200FEC to make netconsole work. Tested on Phytec 
 pcm030 and Efika.

 Signed-off-by: Jon Smirl [EMAIL PROTECTED]
 ---
  drivers/net/fec_mpc52xx.c |   18 ++
  1 files changed, 18 insertions(+), 0 deletions(-)

 diff --git a/drivers/net/fec_mpc52xx.c b/drivers/net/fec_mpc52xx.c
 index 4e4f683..aec3b97 100644
 --- a/drivers/net/fec_mpc52xx.c
 +++ b/drivers/net/fec_mpc52xx.c
 @@ -401,6 +401,21 @@ static int mpc52xx_fec_hard_start_xmit(struct sk_buff 
 *skb, struct net_device *d
return 0;
  }

 +#ifdef CONFIG_NET_POLL_CONTROLLER
 +static void mpc52xx_fec_poll_controller(struct net_device *dev)
 +{
 +   struct mpc52xx_fec_priv *priv = netdev_priv(dev);
 +
 +   disable_irq(priv-t_irq);
 +   mpc52xx_fec_tx_interrupt(priv-t_irq, dev);
 +   enable_irq(priv-t_irq);
 +   disable_irq(priv-r_irq);
 +   mpc52xx_fec_rx_interrupt(priv-r_irq, dev);
 +   enable_irq(priv-r_irq);
 +}
 +#endif
 +
 +
  /* This handles BestComm transmit task interrupts
  */
  static irqreturn_t mpc52xx_fec_tx_interrupt(int irq, void *dev_id)
 @@ -926,6 +941,9 @@ mpc52xx_fec_probe(struct of_device *op, const struct 
 of_device_id *match)
ndev-tx_timeout= mpc52xx_fec_tx_timeout;
ndev-watchdog_timeo= FEC_WATCHDOG_TIMEOUT;
ndev-base_addr = mem.start;
 +#ifdef CONFIG_NET_POLL_CONTROLLER
 +   ndev-poll_controller = mpc52xx_fec_poll_controller;
 +#endif

priv-t_irq = priv-r_irq = ndev-irq = NO_IRQ; /* IRQ are free for 
 now */






 --
 Jon Smirl
 [EMAIL PROTECTED]




-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCHv2 1/1] powerpc: Update page in counter for CMM

2008-10-21 Thread Benjamin Herrenschmidt

 - if (ret  VM_FAULT_MAJOR)
 + if (ret  VM_FAULT_MAJOR) {
   current-maj_flt++;
 - else
 + preempt_disable();
 + get_lppaca()-page_ins++;
 + preempt_enable();
 + } else

That isn't going to work very well on 32-bit or non-pseries
platforms :-)

We need either something like a ppc_md. callback or at least a test for
firmware feature... (which probably still needs an ifdef to build on
32 bit).

Cheers,
Ben.

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc: Add del_node function to allow early boot code to prune inapplicable devices.

2008-10-21 Thread Benjamin Herrenschmidt
On Tue, 2008-10-21 at 17:33 -0600, Grant Likely wrote:
 On Tue, Oct 21, 2008 at 02:32:29PM -0700, Mike Ditto wrote:
  Reposting in proper format...
  
  Some platforms have variants that can share most of a flat device tree but 
  need
  a few devices selectively pruned at boot time.  This adds del_node() to 
  ops.h
  to allow access to the existing fdt_del_node().
  
  Signed-off-by: Mike Ditto [EMAIL PROTECTED]
 
 Looks good to me.
 
 Acked-by: Grant Likely [EMAIL PROTECTED]

little nit: The patch doesn't quite have the right form.

Patches to the kernel are expected to apply with -p1, so
for example, the patch line contains:

arch/powerpc/boot/ops.h

It should be

something/arch/powerpc/boot/ops.h

I've fixed it up manually so no need to re-submit, but you'll know next
time :-)

Cheers,
Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc: Add del_node function to allow early boot code to prune inapplicable devices.

2008-10-21 Thread Mike Ditto
Benjamin Herrenschmidt wrote:
 I've fixed it up manually so no need to re-submit, but you'll know next
 time :-)

Thanks!
-=] Mike [=-
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 2/7] i2c: add info-archdata field

2008-10-21 Thread Benjamin Herrenschmidt
On Fri, 2008-10-17 at 11:21 +0200, Jean Delvare wrote:
 Hi Anton,
 
 On Thu, 16 Oct 2008 21:12:53 +0400, Anton Vorontsov wrote:
  If present the info-archdata is copied into the dev-archdata.
  Some (OpenFirmware) platforms need it.
  
  Signed-off-by: Anton Vorontsov [EMAIL PROTECTED]
  ---

So who's pushing this one ? Jean ?

Cheers,
Ben.

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 4/7] gpiolib: implement dev_gpiochip_{add,remove} calls

2008-10-21 Thread Benjamin Herrenschmidt

 But it doesn't work as a module (i.e. OF-specific bits should be
 always in-kernel).

Why not ?

Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 4/7] gpiolib: implement dev_gpiochip_{add,remove} calls

2008-10-21 Thread Anton Vorontsov
On Wed, Oct 22, 2008 at 11:29:20AM +1100, Benjamin Herrenschmidt wrote:
 
  But it doesn't work as a module (i.e. OF-specific bits should be
  always in-kernel).
 
 Why not ?

If say X driver loads prior to bus-notifier module (where we fill
the platform data), then X.0 device will try to probe w/o platform
data and will fail. The only way to re-probe things is to rmmod X 
insmod of_pdata_filler_X  insmod X. So things depend on the module
load order.

The obvious solution is to link the OF stuff into the module, but
this also won't work, since modules have only one entry (and exit)
point. So there is no way* to hook our OF helpers into the module.

* Well, there is one solution to this problem. We can implement
arch-specific init_module and cleanup_module entry/exit points,
where we can load/unload the OF hooks. This is quite easy, but
may look ugly. I could show the drafts.

-- 
Anton Vorontsov
email: [EMAIL PROTECTED]
irc://irc.freenode.net/bd2
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: hugetlbfs for ppc440 - kernel BUG

2008-10-21 Thread Satya
Ben,
Look here: http://www-unix.mcs.anl.gov/zeptoos/hugepages/

thanks,
./satya

On Tue, Oct 21, 2008 at 1:47 PM, Benjamin Herrenschmidt 
[EMAIL PROTECTED] wrote:

 On Tue, 2007-07-10 at 13:38 -0500, Satya wrote:
  hello,
  I am trying to implement hugetlbfs on the IBM Bluegene/L IO node
  (ppc440) and I have a big problem as well as a few questions to ask
  the group. I patched a 2.6.21.6 linux kernel (manually) with Edi
  Shmueli's hugetlbfs implementation (found here:
  http://patchwork.ozlabs.org/linuxppc/patch?id=8427) for this. I did
  have to make slight changes (described at the end) to make it work.
  My test program is a shortened version of a sys v shared memory
  example described in Documentation/vm/hugetlbpage.txt

 Hi !

 The patchwork link unfortunately didn't survive the transition to
 patchwork 2.

 Do you know what's the status of Hugetlb support for 44x ? Is there any
 plan to release that for upstream inclusion ?

 Cheers,
 Ben.



___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Re: hugetlbfs for ppc440 - kernel BUG

2008-10-21 Thread Satya
On Tue, Oct 21, 2008 at 3:46 PM, Satya [EMAIL PROTECTED] wrote:

 Ben,
 Look here: http://www-unix.mcs.anl.gov/zeptoos/hugepages/

 thanks,
 ./satya


 On Tue, Oct 21, 2008 at 1:47 PM, Benjamin Herrenschmidt 
 [EMAIL PROTECTED] wrote:

 On Tue, 2007-07-10 at 13:38 -0500, Satya wrote:
  hello,
  I am trying to implement hugetlbfs on the IBM Bluegene/L IO node
  (ppc440) and I have a big problem as well as a few questions to ask
  the group. I patched a 2.6.21.6 linux kernel (manually) with Edi
  Shmueli's hugetlbfs implementation (found here:
  http://patchwork.ozlabs.org/linuxppc/patch?id=8427) for this. I did
  have to make slight changes (described at the end) to make it work.
  My test program is a shortened version of a sys v shared memory
  example described in Documentation/vm/hugetlbpage.txt

 Hi !

 The patchwork link unfortunately didn't survive the transition to
 patchwork 2.

 Do you know what's the status of Hugetlb support for 44x ? Is there any
 plan to release that for upstream inclusion ?

 Cheers,
 Ben.




whoops, sorry for top-posting. Here is a patch that worked at that time:
http://www-unix.mcs.anl.gov/zeptoos/hugepages/hugetlbpage_44x.patch

I didn't follow up after this to get it merged upstream. Also I don't know
if hugetlb core has changed to deal with PTEs in high memory.

./satya
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

[PATCH] powerpc: Don't use a 16G page if beyond mem= limits

2008-10-21 Thread Jon Tollefson

If mem= is used on the boot command line to limit memory then the memory block 
where a 16G page resides may not be available.

Thanks to Michael Ellerman for finding the problem.

Signed-off-by: Jon Tollefson [EMAIL PROTECTED]
---

arch/powerpc/mm/hash_utils_64.c |6 --
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/mm/hash_utils_64.c b/arch/powerpc/mm/hash_utils_64.c
index 5c64af1..8d5b475 100644
--- a/arch/powerpc/mm/hash_utils_64.c
+++ b/arch/powerpc/mm/hash_utils_64.c
@@ -382,8 +382,10 @@ static int __init htab_dt_scan_hugepage_blocks(unsigned 
long node,
printk(KERN_INFO Huge page(16GB) memory: 
addr = 0x%lX size = 0x%lX pages = %d\n,
phys_addr, block_size, expected_pages);
-   lmb_reserve(phys_addr, block_size * expected_pages);
-   add_gpage(phys_addr, block_size, expected_pages);
+   if (phys_addr + (16 * GB) = lmb_end_of_DRAM()) {
+   lmb_reserve(phys_addr, block_size * expected_pages);
+   add_gpage(phys_addr, block_size, expected_pages);
+   }
return 0;
}
#endif /* CONFIG_HUGETLB_PAGE */



___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc: Remove device_type = rtc properties in .dts files

2008-10-21 Thread David Gibson
On Tue, Oct 21, 2008 at 10:58:44PM +0400, Anton Vorontsov wrote:
 We don't want to encourage the device_type usage. It isn't used in the
 code, so we can simply remove it from the dts files.
 
 Suggested-by: Scott Wood [EMAIL PROTECTED]
 Signed-off-by: Anton Vorontsov [EMAIL PROTECTED]
Acked-by: David Gibson [EMAIL PROTECTED]

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc: Add del_node function to allow early boot code to prune inapplicable devices.

2008-10-21 Thread David Gibson
On Tue, Oct 21, 2008 at 02:32:29PM -0700, Mike Ditto wrote:
 Reposting in proper format...
 
 Some platforms have variants that can share most of a flat device tree but 
 need
 a few devices selectively pruned at boot time.  This adds del_node() to ops.h
 to allow access to the existing fdt_del_node().
 
 Signed-off-by: Mike Ditto [EMAIL PROTECTED]
Acked-by: David Gibson [EMAIL PROTECTED]

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: hugetlbfs for ppc440 - kernel BUG

2008-10-21 Thread David Gibson
On Wed, Oct 22, 2008 at 09:53:13AM +1100, Benjamin Herrenschmidt wrote:
 On Tue, 2008-10-21 at 15:46 -0700, Satya wrote:
  Ben,
  Look here: http://www-unix.mcs.anl.gov/zeptoos/hugepages/
 
 Thanks. What is the status ? Do they work fine ? Are they going to be
 re-submitted for inclusion ?

Hrm.  Last I looked at the 440 hugepage patches they appeared to have
several serious bugs (I was surprised they worked at all).  I had
meant to fix them up and push, but I never quite got around to it.
I'll have at this link later today.

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 4/7] gpiolib: implement dev_gpiochip_{add,remove} calls

2008-10-21 Thread Anton Vorontsov
On Wed, Oct 22, 2008 at 05:03:47AM +0400, Anton Vorontsov wrote:
 On Wed, Oct 22, 2008 at 11:29:20AM +1100, Benjamin Herrenschmidt wrote:
  
   But it doesn't work as a module (i.e. OF-specific bits should be
   always in-kernel).
  
  Why not ?
 
 If say X driver loads prior to bus-notifier module (where we fill
 the platform data), then X.0 device will try to probe w/o platform
 data and will fail. The only way to re-probe things is to rmmod X 
 insmod of_pdata_filler_X  insmod X. So things depend on the module
 load order.

Thinking about it more, I started recalling other issues. The bus
notifier chain doesn't replay previous events, so we also have to
register the notifier before the _devices_ are registered. And this
ruins the whole approach. :-/ Yeah, that's why I abandoned the bus
notifier idea.

-- 
Anton Vorontsov
email: [EMAIL PROTECTED]
irc://irc.freenode.net/bd2
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 4/7] gpiolib: implement dev_gpiochip_{add,remove} calls

2008-10-21 Thread Benjamin Herrenschmidt
On Wed, 2008-10-22 at 05:03 +0400, Anton Vorontsov wrote:
 If say X driver loads prior to bus-notifier module (where we fill
 the platform data), then X.0 device will try to probe w/o platform
 data and will fail. The only way to re-probe things is to rmmod X 
 insmod of_pdata_filler_X  insmod X. So things depend on the module
 load order.
 
 The obvious solution is to link the OF stuff into the module, but
 this also won't work, since modules have only one entry (and exit)
 point. So there is no way* to hook our OF helpers into the module.

Well, right, we need the bus notifier to be registered before any
device gets added ... which mean from the same module_init that
registers the bus itself. A bit annoying ...

 * Well, there is one solution to this problem. We can implement
 arch-specific init_module and cleanup_module entry/exit points,
 where we can load/unload the OF hooks. This is quite easy, but
 may look ugly. I could show the drafts.

Yuck :-)

Cheers,
Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 4/7] gpiolib: implement dev_gpiochip_{add,remove} calls

2008-10-21 Thread Benjamin Herrenschmidt
On Wed, 2008-10-22 at 05:42 +0400, Anton Vorontsov wrote:
 
 Thinking about it more, I started recalling other issues. The bus
 notifier chain doesn't replay previous events, so we also have to
 register the notifier before the _devices_ are registered. And this
 ruins the whole approach. :-/ Yeah, that's why I abandoned the bus
 notifier idea.

The notifier can be registered before the devices, though it's a little
bit fishy and fragile.

Easier I suppose to just have OF specific hooks in the bus code.

Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


[PATCH] Support for relocatable kdump kernel

2008-10-21 Thread Michael Ellerman
From: Mohan Kumar M [EMAIL PROTECTED]

This adds relocatable kernel support for kdump. With this one can
use the same regular kernel to capture the kdump. A signature (0xfeed1234)
is passed in r6 from panic code to the next kernel through kexec_sequence
and purgatory code. The signature is used to differentiate between
kdump kernel and non-kdump kernels.

The purgatory code compares the signature and sets the __kdump_flag in
head_64.S.  During the boot up, kernel code checks __kdump_flag and if it
is set, the kernel will behave as relocatable kdump kernel. This kernel
will boot at the address where it was loaded by kexec-tools ie. at the
address reserved through crashkernel boot parameter.

CONFIG_CRASH_DUMP depends on CONFIG_RELOCATABLE option to build kdump
kernel as relocatable. So the same kernel can be used as production and
kdump kernel.

This patch incorporates the changes suggested by Paul Mackerras to avoid
GOT use and to avoid two copies of the code.

Signed-off-by: Paul Mackerras [EMAIL PROTECTED]
Signed-off-by: Mohan Kumar M [EMAIL PROTECTED]
Signed-off-by: Michael Ellerman [EMAIL PROTECTED]
---
 Documentation/kdump/kdump.txt  |   14 +-
 arch/powerpc/Kconfig   |   10 +---
 arch/powerpc/include/asm/kdump.h   |   17 ++--
 arch/powerpc/kernel/crash_dump.c   |2 +
 arch/powerpc/kernel/head_64.S  |   39 +++---
 arch/powerpc/kernel/iommu.c|   69 +---
 arch/powerpc/kernel/machine_kexec.c|2 +
 arch/powerpc/kernel/machine_kexec_64.c |   13 --
 arch/powerpc/kernel/misc_64.S  |9 +++-
 arch/powerpc/platforms/cell/ras.c  |6 +-
 arch/powerpc/platforms/pseries/iommu.c |6 +-
 11 files changed, 121 insertions(+), 66 deletions(-)

diff --git a/Documentation/kdump/kdump.txt b/Documentation/kdump/kdump.txt
index 0705040..3f4bc84 100644
--- a/Documentation/kdump/kdump.txt
+++ b/Documentation/kdump/kdump.txt
@@ -109,7 +109,8 @@ There are two possible methods of using Kdump.
 2) Or use the system kernel binary itself as dump-capture kernel and there is
no need to build a separate dump-capture kernel. This is possible
only with the architecutres which support a relocatable kernel. As
-   of today, i386, x86_64 and ia64 architectures support relocatable kernel.
+   of today, i386, x86_64, ppc64 and ia64 architectures support relocatable
+   kernel.
 
 Building a relocatable kernel is advantageous from the point of view that
 one does not have to build a second kernel for capturing the dump. But
@@ -207,8 +208,15 @@ Dump-capture kernel config options (Arch Dependent, i386 
and x86_64)
 Dump-capture kernel config options (Arch Dependent, ppc64)
 --
 
-*  Make and install the kernel and its modules. DO NOT add this kernel
-   to the boot loader configuration files.
+1) Enable Build a kdump crash kernel support under Kernel options:
+
+   CONFIG_CRASH_DUMP=y
+
+2)   Enable Build a relocatable kernel support
+
+   CONFIG_RELOCATABLE=y
+
+   Make and install the kernel and its modules.
 
 Dump-capture kernel config options (Arch Dependent, ia64)
 --
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 369d93e..5b15278 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -323,13 +323,11 @@ config KEXEC
 
 config CRASH_DUMP
bool Build a kdump crash kernel
-   depends on PPC_MULTIPLATFORM  PPC64
+   depends on PPC_MULTIPLATFORM  PPC64  RELOCATABLE
help
  Build a kernel suitable for use as a kdump capture kernel.
- The kernel will be linked at a different address than normal, and
- so can only be used for Kdump.
-
- Don't change this unless you know what you are doing.
+ The same kernel binary can be used as production kernel and dump
+ capture kernel.
 
 config PHYP_DUMP
bool Hypervisor-assisted dump (EXPERIMENTAL)
@@ -829,11 +827,9 @@ config PAGE_OFFSET
default 0xc000
 config KERNEL_START
hex
-   default 0xc200 if CRASH_DUMP
default 0xc000
 config PHYSICAL_START
hex
-   default 0x0200 if CRASH_DUMP
default 0x
 endif
 
diff --git a/arch/powerpc/include/asm/kdump.h b/arch/powerpc/include/asm/kdump.h
index f6c93c7..a503da9 100644
--- a/arch/powerpc/include/asm/kdump.h
+++ b/arch/powerpc/include/asm/kdump.h
@@ -9,6 +9,12 @@
  * Reserve to the end of the FWNMI area, see head_64.S */
 #define KDUMP_RESERVE_LIMIT0x1 /* 64K */
 
+/*
+ * Used to differentiate between relocatable kdump kernel and other
+ * kernels
+ */
+#define KDUMP_SIGNATURE0xfeed1234
+
 #ifdef CONFIG_CRASH_DUMP
 
 #define KDUMP_TRAMPOLINE_START 0x0100
@@ -19,17 +25,18 @@
 #endif /* CONFIG_CRASH_DUMP */
 
 #ifndef __ASSEMBLY__
-#ifdef CONFIG_CRASH_DUMP
 
+extern unsigned long __kdump_flag;
+
+#if 

Re: build failure on powerpc with current -git

2008-10-21 Thread Paul Mackerras
Stephen Rothwell writes:

 On Tue, 21 Oct 2008 16:33:10 +1100 Paul Mackerras [EMAIL PROTECTED] wrote:
 
  It's a bug in older versions of ld (including 2.16.1) that's fixed in
  the current version (2.18).  However, this patch appears to work
  around the problem - at least, it let me build a 32-bit kernel with a
  cross-toolchain including a 2.16.1 ld.  Let me know if this gets it
  working for you.
 
 With that patch applied I got these errors for a powerpc ppc64_defconfig
 build (linux-next).
 
 /usr/bin/objcopy: Warning: '/dev/null' is not an ordinary file

Hmmm, so do I, and in fact the arch/powerpc/boot/wrapper change now
seems to be unnecessary with my cross-compile setup (which has ld
2.16.1), whereas yesterday I'm sure it got errors.  Weird.

Chris, could you try just the following change (my previous patch
without the arch/powerpc/boot/wrapper change) and let me know if it
fixes things with the ld you use?

Paul.
---
diff --git a/arch/powerpc/kernel/vmlinux.lds.S 
b/arch/powerpc/kernel/vmlinux.lds.S
index b39c27e..384dca5 100644
--- a/arch/powerpc/kernel/vmlinux.lds.S
+++ b/arch/powerpc/kernel/vmlinux.lds.S
@@ -187,6 +187,7 @@ SECTIONS
*(.machine.desc)
__machine_desc_end = . ;
}
+#ifdef CONFIG_RELOCATABLE
. = ALIGN(8);
.dynsym : AT(ADDR(.dynsym) - LOAD_OFFSET) { *(.dynsym) }
.dynstr : AT(ADDR(.dynstr) - LOAD_OFFSET) { *(.dynstr) }
@@ -202,6 +203,7 @@ SECTIONS
__rela_dyn_start = .;
*(.rela*)
}
+#endif
 
/* Fake ELF header containing RPA note; for addnote */
.fakeelf : AT(ADDR(.fakeelf) - LOAD_OFFSET) { *(.fakeelf) }
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 3/7] of: fill the archdata for I2C devices

2008-10-21 Thread Grant Likely
On Thu, Oct 16, 2008 at 09:12:56PM +0400, Anton Vorontsov wrote:
 For I2C devices we just setting the the node pointer in the archdata.
 This is needed so that the other code would know device's node.
 
 Signed-off-by: Anton Vorontsov [EMAIL PROTECTED]

Looks okay to me.

Acked-by: Grant Likely [EMAIL PROTECTED]
 ---
  drivers/of/of_i2c.c |   11 +++
  1 files changed, 11 insertions(+), 0 deletions(-)
 
 diff --git a/drivers/of/of_i2c.c b/drivers/of/of_i2c.c
 index 6a98dc8..f9e18ed 100644
 --- a/drivers/of/of_i2c.c
 +++ b/drivers/of/of_i2c.c
 @@ -24,6 +24,7 @@ void of_register_i2c_devices(struct i2c_adapter *adap,
  
   for_each_child_of_node(adap_node, node) {
   struct i2c_board_info info = {};
 + struct dev_archdata dev_ad = {};
   const u32 *addr;
   int len;
  
 @@ -41,6 +42,9 @@ void of_register_i2c_devices(struct i2c_adapter *adap,
  
   info.addr = *addr;
  
 + dev_archdata_set_node(dev_ad, node);
 + info.archdata = dev_ad;
 +
   request_module(info.type);
  
   result = i2c_new_device(adap, info);
 @@ -51,6 +55,13 @@ void of_register_i2c_devices(struct i2c_adapter *adap,
   irq_dispose_mapping(info.irq);
   continue;
   }
 +
 + /*
 +  * Get the node to not lose the dev_archdata-of_node.
 +  * Currently there is no way to put it back, as well as no
 +  * of_unregister_i2c_devices() call.
 +  */
 + of_node_get(node);
   }
  }
  EXPORT_SYMBOL(of_register_i2c_devices);
 -- 
 1.5.6.3
 
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 4/7] gpiolib: implement dev_gpiochip_{add,remove} calls

2008-10-21 Thread Grant Likely
On Wed, Oct 22, 2008 at 01:28:17PM +1100, Benjamin Herrenschmidt wrote:
 On Wed, 2008-10-22 at 05:42 +0400, Anton Vorontsov wrote:
  
  Thinking about it more, I started recalling other issues. The bus
  notifier chain doesn't replay previous events, so we also have to
  register the notifier before the _devices_ are registered. And this
  ruins the whole approach. :-/ Yeah, that's why I abandoned the bus
  notifier idea.
 
 The notifier can be registered before the devices, though it's a little
 bit fishy and fragile.
 
 Easier I suppose to just have OF specific hooks in the bus code.

Every time I think about the problem, this is the conclusion that I come
to.  Either have OF specific hooks in the probe/remove functions; or
have separate probe/remove for OF created instances of a device.

g.
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 4/7] gpiolib: implement dev_gpiochip_{add,remove} calls

2008-10-21 Thread David Brownell
On Tuesday 21 October 2008, Benjamin Herrenschmidt wrote:
 The notifier can be registered before the devices, though it's a little
 bit fishy and fragile.
 
 Easier I suppose to just have OF specific hooks in the bus code.

Like what I suggested:  chip-aware OF glue drivers.  The relevant
bus code being the of_platform_bus_type infrastructure.

Example:  instead of Anton's patch #6 modifying the existing pca953x
driver, an of_pca953x driver that knows how to poke around in the OF
device attributes to (a) create the pca953x_platform_data, (b) call
i2c_register_board_info() to make that available later, and then
finally (c) vanish, since it's not needed any longer.

Better that than either the $SUBJECT patch, or modifying gpiolib to
grow OF-specific hooks ... hooks that can at best solve *one* of the
problems:  which GPIO numbers to use with this chip.  The platform
data does solve other problems(*) like:  (i) how to initialize the
polarity inversion register, (ii) arranging to set up other devices
only after their GPIOs are ready, (iii) initializing things that
device drivers won't always know about, or which may need to be
set up before such drivers are available.

- Dave

(*) A trivial example of (ii) would be LEDs driven by those GPIOs.

A less trivial example:  see arch/arm/mach-davinci/board-evm.c
in current GIT.  There are three pcf8574 I2C expanders used for
various things ... LEDs, audio PLL, device power supplies, reset
lines for external devices, more.
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] Support for relocatable kdump kernel

2008-10-21 Thread Milton Miller

On Wed Oct 22 at 14:38:10 EST in 2008, Michael Ellerman wrote:

This adds relocatable kernel support for kdump. With this one can
use the same regular kernel to capture the kdump. A signature 
(0xfeed1234)
is passed in r6 from panic code to the next kernel through 
kexec_sequence

and purgatory code. The signature is used to differentiate between
kdump kernel and non-kdump kernels.


I object to this signature being passed from the kernel.  The
purgatory code should be modified to set this based on a memory
variable in its space, and that varable should be set by the
userspace code code that prepares purgatory.  (The standard
kexec-tools has library code to do this and we already use it
to tell purgatory the location of the device tree and kernel).


The purgatory code compares the signature and sets the __kdump_flag in
head_64.S.  During the boot up, kernel code checks __kdump_flag and if 
it

is set, the kernel will behave as relocatable kdump kernel. This kernel
will boot at the address where it was loaded by kexec-tools ie. at the
address reserved through crashkernel boot parameter.


I was hoping for a more generic test, but I haven't had the time to
write code for this so I'll accept this part for now.



CONFIG_CRASH_DUMP depends on CONFIG_RELOCATABLE option to build kdump
kernel as relocatable. So the same kernel can be used as production and
kdump kernel.






diff --git a/arch/powerpc/include/asm/kdump.h 
b/arch/powerpc/include/asm/kdump.h

index f6c93c7..a503da9 100644
--- a/arch/powerpc/include/asm/kdump.h
+++ b/arch/powerpc/include/asm/kdump.h
@@ -9,6 +9,12 @@
  * Reserve to the end of the FWNMI area, see head_64.S */
 #define KDUMP_RESERVE_LIMIT0x1 /* 64K */

+/*
+ * Used to differentiate between relocatable kdump kernel and other
+ * kernels
+ */
+#define KDUMP_SIGNATURE0xfeed1234
+


This can go


 #ifdef CONFIG_CRASH_DUMP

 #define KDUMP_TRAMPOLINE_START 0x0100
@@ -19,17 +25,18 @@
 #endif /* CONFIG_CRASH_DUMP */

 #ifndef __ASSEMBLY__
-#ifdef CONFIG_CRASH_DUMP

+extern unsigned long __kdump_flag;
+


This will not be needed.  It will only be referenced by the
assembly code in head.S.


+#if defined(CONFIG_CRASH_DUMP)  !defined(CONFIG_RELOCATABLE)
 extern void reserve_kdump_trampoline(void);
 extern void setup_kdump_trampoline(void);
-
-#else /* !CONFIG_CRASH_DUMP */
-
+#else
+/* !CRASH_DUMP || RELOCATABLE */
 static inline void reserve_kdump_trampoline(void) { ; }
 static inline void setup_kdump_trampoline(void) { ; }
+#endif

-#endif /* CONFIG_CRASH_DUMP */
 #endif /* __ASSEMBLY__ */

 #endif /* __PPC64_KDUMP_H */
diff --git a/arch/powerpc/kernel/crash_dump.c 
b/arch/powerpc/kernel/crash_dump.c

index 97e0563..19671ac 100644
--- a/arch/powerpc/kernel/crash_dump.c
+++ b/arch/powerpc/kernel/crash_dump.c
@@ -30,6 +30,7 @@
 /* Stores the physical address of elf header of crash image. */
 unsigned long long elfcorehdr_addr = ELFCORE_ADDR_MAX;

+#ifndef CONFIG_RELOCATABLE


is this done somewhere else for the relocatable case?
a comment pointing to where would be helpful.


 void __init reserve_kdump_trampoline(void)
 {
lmb_reserve(0, KDUMP_RESERVE_LIMIT);
@@ -68,6 +69,7 @@ void __init setup_kdump_trampoline(void)

DBG( - setup_kdump_trampoline()\n);
 }
+#endif /* CONFIG_RELOCATABLE */

 /*
  * Note: elfcorehdr_addr is not just limited to vmcore. It is also 
used by
diff --git a/arch/powerpc/kernel/head_64.S 
b/arch/powerpc/kernel/head_64.S

index 84856be..69489bd 100644
--- a/arch/powerpc/kernel/head_64.S
+++ b/arch/powerpc/kernel/head_64.S
@@ -97,6 +97,12 @@ __secondary_hold_spinloop:
 __secondary_hold_acknowledge:
.llong  0x0

+   /* This flag is set by purgatory if we should be a kdump 
kernel. */

+   /* Do not move this variable as purgatory knows about it. */
+   .globl  __kdump_flag
+__kdump_flag:
+   .llong  0x0
+
 #ifdef CONFIG_PPC_ISERIES
/*
 * At offset 0x20, there is a pointer to iSeries LPAR data.
@@ -1384,7 +1390,13 @@ _STATIC(__after_prom_start)
/* process relocations for the final address of the kernel */
lis r25,PAGE_OFFSET at highest  /* compute virtual 
base of kernel */

sldir25,r25,32
-   mr  r3,r25
+#ifdef CONFIG_CRASH_DUMP
+   ld  r7,__kdump_flag-_stext(r26)
+   cmpldi  cr0,r7,1/* kdump kernel ? - stay where we are 
*/

+   bne 1f
+   add r25,r25,r26
+#endif
+1: mr  r3,r25
bl  .relocate
 #endif

@@ -1398,11 +1410,26 @@ _STATIC(__after_prom_start)
li  r3,0/* target addr */
mr. r4,r26  /* In some cases the loader 
may  */
beq 9f  /* have already put us at zero 
*/

-   lis r5,(copy_to_here - _stext)@ha
-   addir5,r5,(copy_to_here - _stext)@l /* # bytes of memory 
to copy */
li  r6,0x100/* Start offset, the first 
0x100 */
/* 

[git pull] Please pull from powerpc.git next branch

2008-10-21 Thread Benjamin Herrenschmidt
Hi Linus !

Here's some additions to yesterday's pull request. Mostly things that
slipped through the cracks, for example, for the hvc_console work
there was some confusion as to who was going to merge it, and the
kdump bits I mentioned yesterday that were getting some
rebasing/massaging. The rest is either trivial enough or bug fixes,

That should now bit it for the features for this merge window

The following changes since commit a02efb906d12c9d4eb2ab7c59049ba9545e5412d:
  Benjamin Herrenschmidt (1):
Merge commit 'origin' into master

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc.git master

Becky Bruce (1):
  powerpc: Move memory size print into common show_cpuinfo for 32-bit

David Gibson (1):
  powerpc: Further compile fixup for STRICT_MM_TYPECHECKS

Hendrik Brueckner (5):
  hvc_console: Add a hangup notifier for backends
  hvc_console: Add tty driver flag TTY_DRIVER_RESET_TERMIOS
  hvc_console: Fix loop if put_char() returns 0
  hvc_console: Add support for tty window resizing
  hvc_console: Remove __devexit annotation of hvc_remove()

Jon Tollefson (1):
  powerpc: Don't use a 16G page if beyond mem= limits

Michael Neuling (1):
  powerpc: Remove empty #else from signal_64.c

Mike Ditto (1):
  powerpc: Add del_node() for early boot code to prune inapplicable devices.

Mohan Kumar M (1):
  powerpc: Support for relocatable kdump kernel

 Documentation/kdump/kdump.txt  |   14 +++-
 arch/powerpc/Kconfig   |   10 +--
 arch/powerpc/boot/libfdt-wrapper.c |6 ++
 arch/powerpc/boot/ops.h|6 ++
 arch/powerpc/include/asm/kdump.h   |   17 +++--
 arch/powerpc/kernel/crash_dump.c   |2 +
 arch/powerpc/kernel/head_64.S  |   39 +--
 arch/powerpc/kernel/iommu.c|   69 ++-
 arch/powerpc/kernel/machine_kexec.c|2 +
 arch/powerpc/kernel/machine_kexec_64.c |   13 +++-
 arch/powerpc/kernel/misc_64.S  |9 ++-
 arch/powerpc/kernel/pci-common.c   |3 +-
 arch/powerpc/kernel/setup-common.c |7 ++
 arch/powerpc/kernel/signal_64.c|2 -
 arch/powerpc/mm/hash_utils_64.c|6 +-
 arch/powerpc/platforms/85xx/ksi8560.c  |4 -
 arch/powerpc/platforms/85xx/mpc85xx_ads.c  |4 -
 arch/powerpc/platforms/85xx/mpc85xx_cds.c  |4 -
 arch/powerpc/platforms/85xx/sbc8548.c  |4 -
 arch/powerpc/platforms/85xx/sbc8560.c  |4 -
 arch/powerpc/platforms/85xx/stx_gp3.c  |4 -
 arch/powerpc/platforms/85xx/tqm85xx.c  |4 -
 arch/powerpc/platforms/86xx/gef_sbc610.c   |2 -
 arch/powerpc/platforms/86xx/mpc86xx_hpcn.c |2 -
 arch/powerpc/platforms/86xx/sbc8641d.c |2 -
 arch/powerpc/platforms/cell/ras.c  |6 +-
 arch/powerpc/platforms/embedded6xx/c2k.c   |3 -
 arch/powerpc/platforms/embedded6xx/prpmc2800.c |3 -
 arch/powerpc/platforms/pseries/iommu.c |6 +-
 drivers/char/hvc_console.c |   86 
 drivers/char/hvc_console.h |   12 +++-
 drivers/char/hvc_irq.c |5 ++
 drivers/char/hvc_iseries.c |1 +
 drivers/char/hvc_vio.c |1 +
 drivers/char/hvc_xen.c |1 +
 drivers/char/virtio_console.c  |1 +
 36 files changed, 238 insertions(+), 126 deletions(-)


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev