[PATCH] powerpc: 85xx: TQM8548: DTS file fixes and cleanup

2008-08-17 Thread Wolfgang Grandegger
Due to the missing compatible property for the SOC, the MPC I2C buses are
not found any more. This patch fixes this issue. Furthermore it corrects
the name of the SOC node and adds the missing I2C node for the RTC.

Signed-off-by: Wolfgang Grandegger <[EMAIL PROTECTED]>
---
 arch/powerpc/boot/dts/tqm8548-bigflash.dts |8 +++-
 arch/powerpc/boot/dts/tqm8548.dts  |3 ++-
 2 files changed, 9 insertions(+), 2 deletions(-)

Index: linux-2.6-galak/arch/powerpc/boot/dts/tqm8548.dts
===
--- linux-2.6-galak.orig/arch/powerpc/boot/dts/tqm8548.dts
+++ linux-2.6-galak/arch/powerpc/boot/dts/tqm8548.dts
@@ -50,13 +50,14 @@
reg = <0x 0x>;  // Filled in by U-Boot
};
 
-   [EMAIL PROTECTED] {
+   [EMAIL PROTECTED] {
#address-cells = <1>;
#size-cells = <1>;
device_type = "soc";
ranges = <0x0 0xe000 0x10>;
reg = <0xe000 0x1000>;  // CCSRBAR
bus-frequency = <0>;
+   compatible = "fsl,mpc8548-immr", "simple-bus";
 
[EMAIL PROTECTED] {
compatible = "fsl,mpc8548-memory-controller";
Index: linux-2.6-galak/arch/powerpc/boot/dts/tqm8548-bigflash.dts
===
--- linux-2.6-galak.orig/arch/powerpc/boot/dts/tqm8548-bigflash.dts
+++ linux-2.6-galak/arch/powerpc/boot/dts/tqm8548-bigflash.dts
@@ -50,13 +50,14 @@
reg = <0x 0x>;  // Filled in by U-Boot
};
 
-   [EMAIL PROTECTED] {
+   [EMAIL PROTECTED] {
#address-cells = <1>;
#size-cells = <1>;
device_type = "soc";
ranges = <0x0 0xa000 0x10>;
reg = <0xa000 0x1000>;  // CCSRBAR
bus-frequency = <0>;
+   compatible = "fsl,mpc8548-immr", "simple-bus";
 
[EMAIL PROTECTED] {
compatible = "fsl,mpc8548-memory-controller";
@@ -83,6 +84,11 @@
interrupts = <43 2>;
interrupt-parent = <&mpic>;
dfsrr;
+
+   [EMAIL PROTECTED] {
+   compatible = "dallas,ds1337";
+   reg = <0x68>;
+   };
};
 
[EMAIL PROTECTED] {
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc: 85xx: add proper OF bus ids for the TQM85xx

2008-08-17 Thread Wolfgang Grandegger
Wolfgang Grandegger wrote:
> Jon Loeliger wrote:
>> Wolfgang Grandegger wrote:
>>
>>> Ah, I see. For the TQM8548 adding the following compatible line:
>>>
>>> [EMAIL PROTECTED] {
>>> ...
>>> compatible = "fsl,mpc8548-immr", "simple-bus";
>>>
>>
>>
>> H. While you are there, I think you should drop
>> the "8548" part of "soc8548" to get just "[EMAIL PROTECTED]".
> 
> Well, right. I'm going to check the tqm8548.dts file more carefully.

Looking into 2.6.27-rc3, I realized that these issues have not yet been
fixed :-(. I just sent out a patch for 2.6.27 doing so:

  http://ozlabs.org/pipermail/linuxppc-dev/2008-August/061725.html

Thanks.

Wolfgang.

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


Re: [PATCH] powerpc: 85xx: add proper OF bus ids for the TQM85xx

2008-08-17 Thread Jon Loeliger
> Wolfgang Grandegger wrote:
> > Jon Loeliger wrote:
> >>
> >> H. While you are there, I think you should drop
> >> the "8548" part of "soc8548" to get just "[EMAIL PROTECTED]".
> > 
> > Well, right. I'm going to check the tqm8548.dts file more carefully.
> 
> Looking into 2.6.27-rc3, I realized that these issues have not yet been
> fixed :-(. I just sent out a patch for 2.6.27 doing so:
> 
>   http://ozlabs.org/pipermail/linuxppc-dev/2008-August/061725.html

Thanks!

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


[PATCH] ibm_newemac: Don't call dev_mc_add() before device is registered

2008-08-17 Thread Benjamin Herrenschmidt
We must not call dev_mc_add() from within our HW configure which happens
before we initialize and register the netdev. Do it in open() instead.

Thanks to Sebastian Siewior for tracking it down. 

Signed-off-by: Benjamin Herrenschmidt <[EMAIL PROTECTED]>
---

This fixes an uninitialized spinlock warning (and possibly more).

Please apply.

Cheers,
Ben.

Index: linux-work/drivers/net/ibm_newemac/core.c
===
--- linux-work.orig/drivers/net/ibm_newemac/core.c  2008-08-14 
13:36:10.0 +1000
+++ linux-work/drivers/net/ibm_newemac/core.c   2008-08-14 13:42:10.0 
+1000
@@ -663,9 +663,6 @@ static int emac_configure(struct emac_in
if (emac_phy_gpcs(dev->phy.mode))
emac_mii_reset_phy(&dev->phy);
 
-   /* Required for Pause packet support in EMAC */
-   dev_mc_add(ndev, default_mcast_addr, sizeof(default_mcast_addr), 1);
-
return 0;
 }
 
@@ -1150,6 +1147,9 @@ static int emac_open(struct net_device *
} else
netif_carrier_on(dev->ndev);
 
+   /* Required for Pause packet support in EMAC */
+   dev_mc_add(ndev, default_mcast_addr, sizeof(default_mcast_addr), 1);
+
emac_configure(dev);
mal_poll_add(dev->mal, &dev->commac);
mal_enable_tx_channel(dev->mal, dev->mal_tx_chan);


___
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 1/3] powerpc: make CMO paging space pool ID and page size available

2008-08-17 Thread Paul Mackerras
Robert Jennings writes:

> During platform setup, save off the primary/secondary paging space pool IDs
> and the page size.  Added accessors in hvcall.h for these variables.
> 
> Submitted-by: Robert Jennings <[EMAIL PROTECTED]>

What's this "Submitted-by"?  Did you mean to type "Signed-off-by"?

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


Re: bug in lmb_enforce_memory_limit()

2008-08-17 Thread Michael Ellerman
On Fri, 2008-08-15 at 19:57 -0700, David Miller wrote:
> From: Michael Ellerman <[EMAIL PROTECTED]>
> Date: Sat, 16 Aug 2008 10:46:22 +1000
> 
> > On Fri, 2008-08-15 at 15:25 -0700, David Miller wrote:
> > > Sounds great.  Mind if I push the following to Linus?
> > 
> > Looks good to me.
> > 
> > I'll test it on Monday. I don't know if I have a system with memory
> > holes to test on, but I take it you do?

Works for me.

Although I can't find a system with holes (the newer hypervisors make
things look contiguous I think), so I can't really test the interesting
case.

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: bug in lmb_enforce_memory_limit()

2008-08-17 Thread David Miller
From: Michael Ellerman <[EMAIL PROTECTED]>
Date: Mon, 18 Aug 2008 12:00:32 +1000

> Although I can't find a system with holes (the newer hypervisors make
> things look contiguous I think), so I can't really test the interesting
> case.

I have several so I'll make sure it works in such cases :)
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


[PATCH] Fix memory leak in arch/powerpc/sysdev/qe_lib/uuc_fast.c ucc_fast_init()

2008-08-17 Thread Tony Breeds
In kernel bugzilla 11364 Daniel Marjamäki notes that if the an the ioremap
fails we'll return -ENOMEM without kfree()ing uccf.

Add a kfree on the error path.

Signed-off-by: Tony Breeds <[EMAIL PROTECTED]>
---
 arch/powerpc/sysdev/qe_lib/ucc_fast.c |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/arch/powerpc/sysdev/qe_lib/ucc_fast.c 
b/arch/powerpc/sysdev/qe_lib/ucc_fast.c
index 1aecb07..3455abc 100644
--- a/arch/powerpc/sysdev/qe_lib/ucc_fast.c
+++ b/arch/powerpc/sysdev/qe_lib/ucc_fast.c
@@ -208,6 +208,7 @@ int ucc_fast_init(struct ucc_fast_info * uf_info, struct 
ucc_fast_private ** ucc
uccf->uf_regs = ioremap(uf_info->regs, sizeof(struct ucc_fast));
if (uccf->uf_regs == NULL) {
printk(KERN_ERR "%s: Cannot map UCC registers\n", __func__);
+   kfree(uccf);
return -ENOMEM;
}
 
-- 
1.5.6.3

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

[PATCH 1/2] powerpc: Turn get/set_hard_smp_proccessor_id into inlines

2008-08-17 Thread Benjamin Herrenschmidt
They don't need to be macros, and having them as inline
functions avoids warnings about unused variables on some
configurations when the argument isn't evaluated.

Signed-off-by: Benjamin Herrenschmidt <[EMAIL PROTECTED]>
---

 arch/powerpc/include/asm/smp.h |   39 +--
 1 file changed, 29 insertions(+), 10 deletions(-)

--- linux-work.orig/arch/powerpc/include/asm/smp.h  2008-08-18 
11:57:47.0 +1000
+++ linux-work/arch/powerpc/include/asm/smp.h   2008-08-18 12:03:55.0 
+1000
@@ -56,9 +56,16 @@ extern int smp_hw_index[];
 
 #define raw_smp_processor_id() (current_thread_info()->cpu)
 #define hard_smp_processor_id()(smp_hw_index[smp_processor_id()])
-#define get_hard_smp_processor_id(cpu) (smp_hw_index[(cpu)])
-#define set_hard_smp_processor_id(cpu, phys)\
-   (smp_hw_index[(cpu)] = (phys))
+
+static inline int get_hard_smp_processor_id(int cpu)
+{
+   return smp_hw_index[cpu];
+}
+
+static inline void set_hard_smp_processor_id(int cpu, int phys)
+{
+   smp_hw_index[cpu] = phys;
+}
 #endif
 
 DECLARE_PER_CPU(cpumask_t, cpu_sibling_map);
@@ -92,9 +99,15 @@ extern void __cpu_die(unsigned int cpu);
 #endif /* CONFIG_SMP */
 
 #ifdef CONFIG_PPC64
-#define get_hard_smp_processor_id(CPU) (paca[(CPU)].hw_cpu_id)
-#define set_hard_smp_processor_id(CPU, VAL) \
-   do { (paca[(CPU)].hw_cpu_id = (VAL)); } while (0)
+static inline int get_hard_smp_processor_id(int cpu)
+{
+   return paca[cpu].hw_cpu_id;
+}
+
+static inline void set_hard_smp_processor_id(int cpu, int phys)
+{
+   paca[cpu].hw_cpu_id = phys;
+}
 
 extern void smp_release_cpus(void);
 
@@ -102,10 +115,16 @@ extern void smp_release_cpus(void);
 /* 32-bit */
 #ifndef CONFIG_SMP
 extern int boot_cpuid_phys;
-#define get_hard_smp_processor_id(cpu) boot_cpuid_phys
-#define set_hard_smp_processor_id(cpu, phys)
-#endif
-#endif
+static inline int get_hard_smp_processor_id(int cpu)
+{
+   return boot_cpuid_phys;
+}
+
+static inline void set_hard_smp_processor_id(int cpu, int phys)
+{
+}
+#endif /* !CONFIG_SMP */
+#endif /* !CONFIG_PPC64 */
 
 extern int smt_enabled_at_boot;
 
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [Bugme-new] [Bug 11027] New: random forward time jumps

2008-08-17 Thread Tony Breeds
On Thu, Jul 03, 2008 at 07:02:20PM -0700, Andrew Morton wrote:
> On Fri, 4 Jul 2008 11:50:22 +1000 Tony Breeds <[EMAIL PROTECTED]> wrote:
> 
> > On Thu, Jul 03, 2008 at 05:59:32PM -0700, Andrew Morton wrote:
> >  
> > > Nope, the only account matching .*ppc.* and .*power.* is
> > > [EMAIL PROTECTED]  (I have elevated bugzilla perms
> > > so I can can query the users list) (everyone should have this - it's
> > > handy).
> > > 
> > > There is a category "Platform Specific/Hardware"/PPC-64.  Those go to
> > > [EMAIL PROTECTED]
> > 
> > Can you get this changed to [EMAIL PROTECTED]
> > (obvisouly this'll need to be created)?
> >  
> > > There is a category "Platform Specific/Hardware"/PPC-62.  Those go to
> > > [EMAIL PROTECTED]
> > > 
> > > So setting a watch on both those accounts would suit.
> > 
> > Then the linuxppc-dev "person" can watch both of them.  Seems slightly
> > more "offical".
> > 
> > > Or you can just ignore it all.  I screen all bugzilla reports and will
> > > ensure that suitable people know about them.
> > 
> > Yeah we could but it'd be easier for you if we didn't :)
> > 
> 
> umm, Martin, can you please advise?

Did we get anywhere with this?  I'm currently watching
[EMAIL PROTECTED] and [EMAIL PROTECTED] but I feel a little
like a perv ;P

Yours Tony

  linux.conf.auhttp://www.marchsouth.org/
  Jan 19 - 24 2009 The Australian Linux Technical Conference!

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


[PATCH 2/2] powerpc: Make CPU sysfs PMC & cache topology used on 32-bit

2008-08-17 Thread Benjamin Herrenschmidt
The file arch/powerpc/kernel/sysfs.c is currently only compiled
for 64-bit kernels. It contain code to register CPU sysdevs in
sysfs and add various properties such as cache topology and
raw access by root to PMCs. A lot of that can be re-used as
is on 32-bits.

This makes the file built for both, with appropriate ifdef'ing
for the few bits that are really 64-bit specific, and adds some
support for the raw PMCs for 75x and 74xx processors.

Signed-off-by: Benjamin Herrenschmidt <[EMAIL PROTECTED]>
---

 arch/powerpc/include/asm/cputable.h |1 
 arch/powerpc/kernel/Makefile|4 -
 arch/powerpc/kernel/cputable.c  |   24 +++
 arch/powerpc/kernel/setup_32.c  |   11 ---
 arch/powerpc/kernel/sysfs.c |  106 ++--
 arch/powerpc/oprofile/op_model_power4.c |4 -
 6 files changed, 117 insertions(+), 33 deletions(-)

--- linux-work.orig/arch/powerpc/kernel/Makefile2008-08-12 
13:13:58.0 +1000
+++ linux-work/arch/powerpc/kernel/Makefile 2008-08-18 12:43:43.0 
+1000
@@ -27,13 +27,13 @@ endif
 obj-y  := cputable.o ptrace.o syscalls.o \
   irq.o align.o signal_32.o pmc.o vdso.o \
   init_task.o process.o systbl.o idle.o \
-  signal.o
+  signal.o sysfs.o
 obj-y  += vdso32/
 obj-$(CONFIG_PPC64)+= setup_64.o sys_ppc32.o \
   signal_64.o ptrace32.o \
   paca.o cpu_setup_ppc970.o \
   cpu_setup_pa6t.o \
-  firmware.o sysfs.o nvram_64.o
+  firmware.o nvram_64.o
 obj-$(CONFIG_PPC64)+= vdso64/
 obj-$(CONFIG_ALTIVEC)  += vecemu.o vector.o
 obj-$(CONFIG_PPC_970_NAP)  += idle_power4.o
Index: linux-work/arch/powerpc/kernel/cputable.c
===
--- linux-work.orig/arch/powerpc/kernel/cputable.c  2008-07-28 
09:48:39.0 +1000
+++ linux-work/arch/powerpc/kernel/cputable.c   2008-08-18 12:43:43.0 
+1000
@@ -610,6 +610,7 @@ static struct cpu_spec __initdata cpu_sp
.icache_bsize   = 32,
.dcache_bsize   = 32,
.num_pmcs   = 4,
+   .pmc_type   = PPC_PMC_IBM,
.cpu_setup  = __setup_cpu_750cx,
.machine_check  = machine_check_generic,
.platform   = "ppc750",
@@ -623,6 +624,7 @@ static struct cpu_spec __initdata cpu_sp
.icache_bsize   = 32,
.dcache_bsize   = 32,
.num_pmcs   = 4,
+   .pmc_type   = PPC_PMC_IBM,
.cpu_setup  = __setup_cpu_750cx,
.machine_check  = machine_check_generic,
.platform   = "ppc750",
@@ -636,6 +638,7 @@ static struct cpu_spec __initdata cpu_sp
.icache_bsize   = 32,
.dcache_bsize   = 32,
.num_pmcs   = 4,
+   .pmc_type   = PPC_PMC_IBM,
.cpu_setup  = __setup_cpu_750cx,
.machine_check  = machine_check_generic,
.platform   = "ppc750",
@@ -649,6 +652,7 @@ static struct cpu_spec __initdata cpu_sp
.icache_bsize   = 32,
.dcache_bsize   = 32,
.num_pmcs   = 4,
+   .pmc_type   = PPC_PMC_IBM,
.cpu_setup  = __setup_cpu_750,
.machine_check  = machine_check_generic,
.platform   = "ppc750",
@@ -662,6 +666,7 @@ static struct cpu_spec __initdata cpu_sp
.icache_bsize   = 32,
.dcache_bsize   = 32,
.num_pmcs   = 4,
+   .pmc_type   = PPC_PMC_IBM,
.cpu_setup  = __setup_cpu_750,
.machine_check  = machine_check_generic,
.platform   = "ppc750",
@@ -675,6 +680,7 @@ static struct cpu_spec __initdata cpu_sp
.icache_bsize   = 32,
.dcache_bsize   = 32,
.num_pmcs   = 4,
+   .pmc_type   = PPC_PMC_IBM,
.cpu_setup  = __setup_cpu_750,
.machine_check  = machine_check_generic,
.platform   = "ppc750",
@@ -688,6 +694,7 @@ static struct cpu_spec __initdata cpu_sp
.icache_bsize   = 32,
.dcache_bsize   = 32,
 

[git pull] Please pull powerpc.git merge branch

2008-08-17 Thread Paul Mackerras
Linus,

Please pull from the 'merge' branch of

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

to get fixes for various bugs on powerpc, as listed below.

Thanks,
Paul.

 arch/powerpc/include/asm/hvcall.h   |   22 +
 arch/powerpc/include/asm/irqflags.h |5 +-
 arch/powerpc/include/asm/mmu_context.h  |1 
 arch/powerpc/include/asm/systbl.h   |2 -
 arch/powerpc/kernel/head_32.S   |2 -
 arch/powerpc/kernel/lparcfg.c   |5 ++
 arch/powerpc/kernel/misc_32.S   |2 -
 arch/powerpc/kernel/module.c|   15 --
 arch/powerpc/kernel/sys_ppc32.c |   57 ---
 arch/powerpc/platforms/pseries/plpar_wrappers.h |   27 ++-
 arch/powerpc/platforms/pseries/setup.c  |   28 ---
 11 files changed, 78 insertions(+), 88 deletions(-)

Benjamin Herrenschmidt (2):
  powerpc: Fix loss of vdso on fork on 32-bit
  powerpc: Fix lockdep IRQ tracing bug

Brian King (1):
  powerpc: Fix CMM page loaning on 64k page kernel with 4k hardware pages

Christoph Hellwig (1):
  powerpc: Use generic compat_sys_old_readdir

Paul Collins (1):
  powerpc/kexec: Fix up KEXEC_CONTROL_CODE_SIZE missed during conversion

Robert Jennings (2):
  powerpc: Make CMO paging space pool ID and page size available
  powerpc: Add CMO enabled flag and paging space data to lparcfg

Rocky Craig (1):
  powerpc: Fix TLB invalidation on boot on 32-bit

Steven Rostedt (1):
  powerpc: Remove dead module_find_bug code

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