Re: [PATCH] Add support for the digsy MTC board.

2009-02-03 Thread Grzegorz Bernacki
Grant Likely wrote:
> On Mon, Feb 2, 2009 at 4:58 PM, Wolfgang Denk  wrote:
>> Dear Grzegorz Bernacki,
>>
>> In message <49872268.10...@semihalf.com> you wrote:
 We also had this kind of problem - after feeding some nfs options it
 worked :

 rsize=8192,wsize=8192,soft,intr,tcp,nolock
>>> it seems that it helps.
>> Can you please find out which of these changes is the relevant part?
> 
> Probably the ",tcp" bit
> 
> g.
> 
Yes, it's 'tcp'

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


Re: [PATCH 3/3] drm: Make drm_local_map use a resource_size_t offset

2009-02-03 Thread Dave Airlie
On Tue, Feb 3, 2009 at 7:21 AM, Benjamin Herrenschmidt
 wrote:
>
>>
>> Could this comment instead be maybe:
>>
>> Because the kernel-userspace ABI is fixed at a 32-bit offset, while PCI
>> resources may live above that, we ignore the map offset for maps of type
>> _DRM_FRAMEBUFFER or _DRM_REGISTERS.  It is assumed that each driver will
>> have only one resource of each type.
>>
>> (I want to remember later what exact ABI problem was in question)
>
> Fair enough. I'll repost.
>

Don't worry I've applied the patches with Erics comment replacing your one.

All 3 are queued in drm-next.

Dave.

> Cheers,
> Ben.
>
>
> --
> Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
> software. With Adobe AIR, Ajax developers can use existing skills and code to
> build responsive, highly engaging applications that combine the power of local
> resources and data with the reach of the web. Download the Adobe AIR SDK and
> Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
> --
> ___
> Dri-devel mailing list
> dri-de...@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/dri-devel
>
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


therm_adt746x: CPU fan speed inversion

2009-02-03 Thread Michel Dänzer

On my PowerBook5,8, every now and then (haven't figured out any pattern
to when it happens) the therm_adt746x module stops controlling the fan
speed properly. The problem seems to be that the fan speed range is
inverted, i.e. the fan stops when therm_adt746x thinks it's setting it
to full speed and vice versa. See below for a log of therm_adt746x
loaded with verbose=1 while the problem is in effect; while it looks
like the fan speed ramps up and down again, the GNOME sensors applet
agrees with my ears that the opposite happened. I haven't found any way
to recover from this other than rebooting.

Has anyone else seen this? Any ideas what the problem could be, or how
to track it down?

FWIW I'm currently running 2.6.28 kernels self-built from the kernel.org
stable tree, but I first noticed this a long time ago, possibly forever
since I've used this module. Now it's finally bothered me enough to
report it. :)


[150811.783627] adt746x: version 1 (supported)
[150811.783639] adt746x: Thermostat bus: 0, address: 0x2e, limit_adjust: 0, 
fan_speed: -1
[150811.783648] sensor 0: CPU/INTREPID BOTTOMSIDE
[150811.783653] sensor 1: CPU BOTTOMSIDE
[150811.783658] sensor 2: PWR SUPPLY BOTTOMSIDE
[150811.800813] adt746x: ADT7467 initializing
[150811.803623] adt746x: Lowering max temperatures from 81, 80, 87 to 70, 50, 70
[150811.803699] adt746x: Setting speed to 0 for CPU BOTTOMSIDE fan.
[153827.141765] adt746x: Setting fans speed to 64 (limit exceeded by 0 on CPU 
BOTTOMSIDE) 
[153827.141773] adt746x: Setting speed to 64 for CPU BOTTOMSIDE fan.
[153861.697327] adt746x: Setting fans speed to 91 (limit exceeded by 2 on CPU 
BOTTOMSIDE) 
[153861.697335] adt746x: Setting speed to 91 for CPU BOTTOMSIDE fan.
[153898.391372] adt746x: Setting fans speed to 145 (limit exceeded by 4 on CPU 
BOTTOMSIDE) 
[153898.391379] adt746x: Setting speed to 145 for CPU BOTTOMSIDE fan.
[153936.733051] adt746x: Setting fans speed to 199 (limit exceeded by 6 on CPU 
BOTTOMSIDE) 
[153936.733059] adt746x: Setting speed to 199 for CPU BOTTOMSIDE fan.
[153977.150356] adt746x: Setting fans speed to 253 (limit exceeded by 8 on CPU 
BOTTOMSIDE) 
[153977.150363] adt746x: Setting speed to 253 for CPU BOTTOMSIDE fan.
[154017.403671] adt746x: Setting fans speed to 199 (limit exceeded by 6 on CPU 
BOTTOMSIDE) 
[154017.403682] adt746x: Setting speed to 199 for CPU BOTTOMSIDE fan.
[154047.440196] adt746x: Setting fans speed to 145 (limit exceeded by 4 on CPU 
BOTTOMSIDE) 
[154047.440208] adt746x: Setting speed to 145 for CPU BOTTOMSIDE fan.
[154073.466771] adt746x: Setting fans speed to 91 (limit exceeded by 2 on CPU 
BOTTOMSIDE) 
[154073.466783] adt746x: Setting speed to 91 for CPU BOTTOMSIDE fan.
[154101.502629] adt746x: Setting fans speed to 64 (limit exceeded by 0 on CPU 
BOTTOMSIDE) 
[154101.502640] adt746x: Setting speed to 64 for CPU BOTTOMSIDE fan.
[154153.606437] adt746x: Stopping fans.
[154153.606449] adt746x: Setting speed to 0 for CPU BOTTOMSIDE fan.


-- 
Earthling Michel Dänzer   |http://www.vmware.com
Libre software enthusiast |  Debian, X and DRI developer
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Re: [PATCH v2] Add support for the digsy MTC board.

2009-02-03 Thread Grzegorz Bernacki
Grant Likely wrote:
> Hey Grzegorz,
> 
> I've pulled your patch into my -next tree, but I made a few changes first:
> - I dropped the defconfig changes because they conflict with the
> defconfig update that Ben just pulled from me
> - I updated the .dts file to reflect changes I was already making to
> all the other .dts files
> - I added the digsy-mtc board to the Kconfig documentation.
> 
> I've pushed my whole queue of changes out to my -next tree.  Please
> pull it down and try it out.  (Note, this tree will get rebased at
> least once before I ask Ben to pull it, so be aware).  Make sure that
> I haven't broken your .dts file.  To get the defconfig change in, you
> can either send me another patch with just the defconfig change, or
> you can pop my version of your patch off the top of my -next tree and
> rebase your entire patch on top it.  Whatever you prefer.
> 
> One more note; the new digsy-mtc.dts file from my tree will probably
> not work with older kernels.  Kernels need to be backward compatible
> with older .dts files, but the same is not true for the other way
> around.
> 
> Here's my -next tree:
> 
> git://git.secretlab.ca/git/linux-2.6-mpc52xx next
> 

Hi Grant,

Thanks for pulling and updating my patch.
I got your tree and now I try to build kernel image for digsy, but I get
following errors:
arch/powerpc/platforms/52xx/mpc52xx_gpt.c:77: error: field 'of_gc' has 
incomplete type
arch/powerpc/platforms/52xx/mpc52xx_gpt.c: In function 
'mpc52xx_gpt_gpio_setup':arch/powerpc/platforms/52xx/mpc52xx_gpt.c:350: error: 
parameter name omitted
arch/powerpc/platforms/52xx/mpc52xx_gpt.c:350: error: parameter name omitted

They disappear when I add support for OF gpio, but I think that parts of 
mpc52xx_gpt.c file should be inside '#ifdef CONFIG_OF_GPIO' clause.

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


Re: [PATCH 3/3] drm: Make drm_local_map use a resource_size_t offset

2009-02-03 Thread Benjamin Herrenschmidt

> Don't worry I've applied the patches with Erics comment replacing your one.
> 
> All 3 are queued in drm-next.

Thanks !

I'll let you know when I finally get a chance to tackle the other
issues.

BTW. Do you guys want me to remove the drm_local_map_t typedef
completely in favor of struct drm_local_map ? I have a patch here going
part way through that, it's fairly trivial, so if you want it, I can
easily finish it.

Cheers,
Ben.


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


Re: [PowerPC] 2.6.29-rc3-git4 build break : truncated relocation

2009-02-03 Thread Benjamin Herrenschmidt
On Tue, 2009-02-03 at 14:50 +0530, Sachin P. Sant wrote:
> 2.6.29-rc3-git4 allyesconfig build breaks with following error

I think it's the recurrent problem of allyesconfig generating a kernel
too big for our linker especially when ftrace is enabled.

We need to see if it's worth the pain of working around it with the
toolchain guys. Probably not tho...

Ben.


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


Re: [PATCH 3/3] drm: Make drm_local_map use a resource_size_t offset

2009-02-03 Thread Dave Airlie
> 
> BTW. Do you guys want me to remove the drm_local_map_t typedef
> completely in favor of struct drm_local_map ? I have a patch here going
> part way through that, it's fairly trivial, so if you want it, I can
> easily finish it.

One less typedef is always welcome.

Dave.
> 
> Cheers,
> Ben.
> 
> 
> 
> --
> Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
> software. With Adobe AIR, Ajax developers can use existing skills and code to
> build responsive, highly engaging applications that combine the power of local
> resources and data with the reach of the web. Download the Adobe AIR SDK and
> Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
> --
> ___
> Dri-devel mailing list
> dri-de...@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/dri-devel
> 
> 
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] Add support for the digsy MTC board.

2009-02-03 Thread Andre Schwarz

Grant Likely wrote:

On Mon, Feb 2, 2009 at 4:58 PM, Wolfgang Denk  wrote:
  

Dear Grzegorz Bernacki,

In message <49872268.10...@semihalf.com> you wrote:


We also had this kind of problem - after feeding some nfs options it
worked :

rsize=8192,wsize=8192,soft,intr,tcp,nolock


it seems that it helps.
  

Can you please find out which of these changes is the relevant part?



Probably the ",tcp" bit

g.

  
yes - obviously the retry counter of lost udp packets is pretty small 
inside the nfs client or server.
The problem only occurs when there's fairly high traffic and/or low 
performance switches are used and UDP packets get lost frequently.


regards,
Andre

MATRIX VISION GmbH, Talstraße 16, DE-71570 Oppenweiler
Registergericht: Amtsgericht Stuttgart, HRB 271090
Geschäftsführer: Gerhard Thullner, Werner Armingeon, Uwe Furtner, Hans-Joachim 
Reich
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: Booting 2.6.29-rc3 on mpc8661d_hpcn failing

2009-02-03 Thread Martyn Welch

Benjamin Herrenschmidt wrote:

commit 64b3d0e8122b422e879b23d42f9e0e8efbbf9744
Author: Benjamin Herrenschmidt 

  powerpc/mm: Rework usage of _PAGE_COHERENT/NO_CACHE/GUARDED

I tried reverting it, but as I had kinda thought, that really didn't 
help.


I'm just recompiling to check that I didn't screw-up during the 
bisection.


Is this a chip that must not have M set ? Or something else ? You guys
have to help if you CC me, I have about 0 idea what a MPC8661d is :-)



Sorry, my fault. It's a Freescale SOC with two e600 cores. Beyond that, I'm afraid I'm a little out of my depth. 


Also, does 4c456a67f501b8b15542c7c21c28812bf88f484b help ?


I believe that to be included in 2.6.29-rc3 if my (rather rudimentary) git 
skills haven't let me down? The problem persists in 2.6.29-rc3.

Martyn

--
Martyn Welch MEng MPhil MIET (Principal Software Engineer)   T:+44(0)1327322748
GE Fanuc Intelligent Platforms Ltd,|Registered in England and Wales
Tove Valley Business Park, Towcester,  |(3828642) at 100 Barbirolli Square,
Northants, NN12 6PF, UK T:+44(0)1327359444 |Manchester,M2 3AB  VAT:GB 729849476
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH] powerpc/44x: Fix address decoding setup of PCI 2.x cells

2009-02-03 Thread Josh Boyer
On Mon, Feb 02, 2009 at 11:24:18AM +1100, Benjamin Herrenschmidt wrote:
>The PCI 2.x cells used on some 44x SoCs only let us configure the decode
>for the low 32-bit of the incoming PLB addresses. The top 4 bits (this
>is a 36-bit bus) are hard wired to different values depending on the
>specific SoC in use. Our code used to work "by accident" until I added
>support for the ISA memory holes and while at it added more validity
>checking of the addresses.
>
>This patch should bring it back to working condition. It still relies
>on the device-tree being correct but that's somewhat a pre-requisite
>for anything to work anyway.
>
>Signed-off-by: Benjamin Herrenschmidt 
>---
>
>This is untested. Geert, can you give it a go on Sequoia and let me
>know if it fixes your problem ?

Since Geert tested it somewhat successfully, perhaps we should get
this one into 2.6.29.  I have no other fixes outstanding, so feel
free to pull it in yourself.

Acked-by: Josh Boyer 

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


Re: [PATCH] powerpc/44x: Fix address decoding setup of PCI 2.x cells

2009-02-03 Thread Geert Uytterhoeven
On Tue, 3 Feb 2009, Josh Boyer wrote:
> On Mon, Feb 02, 2009 at 11:24:18AM +1100, Benjamin Herrenschmidt wrote:
> >The PCI 2.x cells used on some 44x SoCs only let us configure the decode
> >for the low 32-bit of the incoming PLB addresses. The top 4 bits (this
> >is a 36-bit bus) are hard wired to different values depending on the
> >specific SoC in use. Our code used to work "by accident" until I added
> >support for the ISA memory holes and while at it added more validity
> >checking of the addresses.
> >
> >This patch should bring it back to working condition. It still relies
> >on the device-tree being correct but that's somewhat a pre-requisite
> >for anything to work anyway.
> >
> >Signed-off-by: Benjamin Herrenschmidt 
> >---
> >
> >This is untested. Geert, can you give it a go on Sequoia and let me
> >know if it fixes your problem ?
> 
> Since Geert tested it somewhat successfully, perhaps we should get
> this one into 2.6.29.  I have no other fixes outstanding, so feel
> free to pull it in yourself.

Could it be my USB failures were due to the PPC440 USB host needing the various
CONFIG*USB*BIG_ENDIAN* options, which may conflict with USB hosts on PCI
plug-in cards?

The E1000 did work fine.

With kind regards,

Geert Uytterhoeven
Software Architect

Sony Techsoft Centre Europe
The Corporate Village · Da Vincilaan 7-D1 · B-1935 Zaventem · Belgium

Phone:+32 (0)2 700 8453
Fax:  +32 (0)2 700 8622
E-mail:   geert.uytterhoe...@sonycom.com
Internet: http://www.sony-europe.com/

A division of Sony Europe (Belgium) N.V.
VAT BE 0413.825.160 · RPR Brussels
Fortis · BIC GEBABEBB · IBAN BE41293037680010
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


2.6.29-rc3-git5 build failure : drivers/staging/panel

2009-02-03 Thread Sachin P. Sant

2.6.29-rc3-git5 randconfig build on powerpc fails with following error

CALLarch/powerpc/kernel/systbl_chk.sh
CALLarch/powerpc/kernel/prom_init_check.sh
CC [M]  drivers/staging/panel/panel.o
drivers/staging/panel/panel.c:625: error: conflicting types for set_bits
/home/sachin/linux-2.6.29-rc3-git5/arch/powerpc/include/asm/bitops.h:216: 
error: previous definition of set_bits was here
make[3]: *** [drivers/staging/panel/panel.o] Error 1
make[2]: *** [drivers/staging/panel] Error 2
make[1]: *** [drivers/staging] Error 2
make: *** [drivers] Error 2

Will provide .config if required.

Thanks
-Sachin

--

-
Sachin Sant
IBM Linux Technology Center
India Systems and Technology Labs
Bangalore, India
-

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


[Patch] fix lcd panel driver build failure

2009-02-03 Thread Sachin P. Sant

* Fix build break for lcd panel driver.

Signed-off-by : Sachin Sant 
---


* Fix build break for lcd panel driver.

Signed-off-by : Sachin Sant 
---

diff -Naurp a/drivers/staging/panel/panel.c b/drivers/staging/panel/panel.c
--- a/drivers/staging/panel/panel.c	2009-02-03 23:34:18.0 +0530
+++ b/drivers/staging/panel/panel.c	2009-02-03 23:33:16.0 +0530
@@ -622,7 +622,7 @@ static int set_ctrl_bits(void)
 }
 
 /* sets ctrl & data port bits according to current signals values */
-static void set_bits(void)
+static void panel_set_bits(void)
 {
 	set_data_bits();
 	set_ctrl_bits();
@@ -707,12 +707,12 @@ static void lcd_send_serial(int byte)
 	 */
 	for (bit = 0; bit < 8; bit++) {
 		bits.cl = BIT_CLR;	/* CLK low */
-		set_bits();
+		panel_set_bits();
 		bits.da = byte & 1;
-		set_bits();
+		panel_set_bits();
 		udelay(2);	/* maintain the data during 2 us before CLK up */
 		bits.cl = BIT_SET;	/* CLK high */
-		set_bits();
+		panel_set_bits();
 		udelay(1);	/* maintain the strobe during 1 us */
 		byte >>= 1;
 	}
@@ -727,7 +727,7 @@ static void lcd_backlight(int on)
 	/* The backlight is activated by seting the AUTOFEED line to +5V  */
 	spin_lock(&pprt_lock);
 	bits.bl = on;
-	set_bits();
+	panel_set_bits();
 	spin_unlock(&pprt_lock);
 }
 
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Re: 2.6.29-rc3-git5 build failure : drivers/staging/panel

2009-02-03 Thread Willy Tarreau
Hi,

On Tue, Feb 03, 2009 at 08:45:38PM +0530, Sachin P. Sant wrote:
> 2.6.29-rc3-git5 randconfig build on powerpc fails with following error
> 
> CALLarch/powerpc/kernel/systbl_chk.sh
> CALLarch/powerpc/kernel/prom_init_check.sh
> CC [M]  drivers/staging/panel/panel.o
> drivers/staging/panel/panel.c:625: error: conflicting types for set_bits
> /home/sachin/linux-2.6.29-rc3-git5/arch/powerpc/include/asm/bitops.h:216: 
> error: previous definition of set_bits was here
> make[3]: *** [drivers/staging/panel/panel.o] Error 1
> make[2]: *** [drivers/staging/panel] Error 2
> make[1]: *** [drivers/staging] Error 2
> make: *** [drivers] Error 2
> 
> Will provide .config if required.

I don't think any config will be needed. The problem is that we have
conflicting names between global and local functions. Could you please
try to rename "set_bits" as weel as the few references to this function
in panel.c ? I'd suggest you name it "panel_set_bits".

I can work on a patch if needed, but since the fix is really easy I'd
prefer to get a confirmation that it's enough.

Thanks for the report,
Willy

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


Re: [Patch] fix lcd panel driver build failure

2009-02-03 Thread Willy Tarreau
Thanks Sachin !

Greg, could you please merge this one into your staging tree ?

Thanks,
Willy

On Tue, Feb 03, 2009 at 09:10:58PM +0530, Sachin P. Sant wrote:
> * Fix build break for lcd panel driver.
> 
> Signed-off-by : Sachin Sant 

Signed-off-by: Willy Tarreau 

> ---
> 
> 

> * Fix build break for lcd panel driver.
> 
> Signed-off-by : Sachin Sant 
> ---
> 
> diff -Naurp a/drivers/staging/panel/panel.c b/drivers/staging/panel/panel.c
> --- a/drivers/staging/panel/panel.c   2009-02-03 23:34:18.0 +0530
> +++ b/drivers/staging/panel/panel.c   2009-02-03 23:33:16.0 +0530
> @@ -622,7 +622,7 @@ static int set_ctrl_bits(void)
>  }
>  
>  /* sets ctrl & data port bits according to current signals values */
> -static void set_bits(void)
> +static void panel_set_bits(void)
>  {
>   set_data_bits();
>   set_ctrl_bits();
> @@ -707,12 +707,12 @@ static void lcd_send_serial(int byte)
>*/
>   for (bit = 0; bit < 8; bit++) {
>   bits.cl = BIT_CLR;  /* CLK low */
> - set_bits();
> + panel_set_bits();
>   bits.da = byte & 1;
> - set_bits();
> + panel_set_bits();
>   udelay(2);  /* maintain the data during 2 us before CLK up 
> */
>   bits.cl = BIT_SET;  /* CLK high */
> - set_bits();
> + panel_set_bits();
>   udelay(1);  /* maintain the strobe during 1 us */
>   byte >>= 1;
>   }
> @@ -727,7 +727,7 @@ static void lcd_backlight(int on)
>   /* The backlight is activated by seting the AUTOFEED line to +5V  */
>   spin_lock(&pprt_lock);
>   bits.bl = on;
> - set_bits();
> + panel_set_bits();
>   spin_unlock(&pprt_lock);
>  }
>  

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


Re: Booting 2.6.29-rc3 on mpc8661d_hpcn failing

2009-02-03 Thread Martyn Welch

Martyn Welch wrote:

Benjamin Herrenschmidt wrote:

commit 64b3d0e8122b422e879b23d42f9e0e8efbbf9744
Author: Benjamin Herrenschmidt 

  powerpc/mm: Rework usage of _PAGE_COHERENT/NO_CACHE/GUARDED

I tried reverting it, but as I had kinda thought, that really 
didn't help.


I'm just recompiling to check that I didn't screw-up during the 
bisection.


Is this a chip that must not have M set ? Or something else ? You guys
have to help if you CC me, I have about 0 idea what a MPC8661d is :-)



Sorry, my fault. It's a Freescale SOC with two e600 cores. Beyond that, 
I'm afraid I'm a little out of my depth.

Also, does 4c456a67f501b8b15542c7c21c28812bf88f484b help ?


I believe that to be included in 2.6.29-rc3 if my (rather rudimentary) 
git skills haven't let me down? The problem persists in 2.6.29-rc3.




I've done a bit more investigation:

The primary CPU is spinning in smp_generic_give_timebase() waiting for "!tbsync->ack". The secondary CPU 
has made it into smp_generic_take_timebase() and has apparently (according to some printk's I put in there) set 
"tbsync->ack=1". After that I don't get any printk's, I guess that the one I have put in the 
"!tbsync->handshake" while loop is making it to the print buffer, but with both processors spinning it's 
not getting to the serial console.

At a guess, given that commit 64b3d0e8122b422e879b23d42f9e0e8efbbf9744 seems to be the 
point that it stopped working correctly, that "tbsync" is now somehow becoming 
cached?

Martyn

--
Martyn Welch MEng MPhil MIET (Principal Software Engineer)   T:+44(0)1327322748
GE Fanuc Intelligent Platforms Ltd,|Registered in England and Wales
Tove Valley Business Park, Towcester,  |(3828642) at 100 Barbirolli Square,
Northants, NN12 6PF, UK T:+44(0)1327359444 |Manchester,M2 3AB  VAT:GB 729849476
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [Patch] fix lcd panel driver build failure

2009-02-03 Thread Greg KH
On Tue, Feb 03, 2009 at 04:47:56PM +0100, Willy Tarreau wrote:
> Thanks Sachin !
> 
> Greg, could you please merge this one into your staging tree ?

I will do that, thanks.

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


Re: [PATCH v2] ftrace: On PowerPC we don't need frame pointers for CALLER_ADDRs

2009-02-03 Thread Ingo Molnar

* Anton Vorontsov  wrote:

> According to this discussion:
> 
> http://lkml.org/lkml/2008/7/25/338
> http://lkml.org/lkml/2008/7/26/72
> 
> Frame pointers do nothing useful on PowerPC, so lib/Kconfig.debug
> makes CONFIG_FRAME_POINTER unselectable on PPC targets. But ftrace.h
> requires CONFIG_FRAME_POINTER for CALLER_ADDR macros. [...]

hm, why not add PPC to FRAME_POINTERS list of architectures, and select it 
from the powerpc arch Kconfig? Does that cause complications somewhere?

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


linux2.6.23-rc2 enable apu for xilinx virtex4 ml403 board-ppc405

2009-02-03 Thread Li Jun (Aaron)
Hi,

I am now using impulse c and xilinx virtex4 ml403 board to do a project.

And I want to run the application through APU in the linux environment.

 

So I need to enable the apu for the linux 2.6.23-rc kernel. Then use cross
compiler(crosstool-0.43) to make zImage.

 

Does anybody have patch for linux 2.6 to enable apu/fpu? Or any guide for
this?

 

I am a new guy in this field, hope can get help!

 

Thanks very much!



 

Best regards,

Li Jun

 

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

Re: [PATCH v2] ftrace: On PowerPC we don't need frame pointers for CALLER_ADDRs

2009-02-03 Thread Anton Vorontsov
On Tue, Feb 03, 2009 at 05:06:45PM +0100, Ingo Molnar wrote:
> 
> * Anton Vorontsov  wrote:
> 
> > According to this discussion:
> > 
> > http://lkml.org/lkml/2008/7/25/338
> > http://lkml.org/lkml/2008/7/26/72
> > 
> > Frame pointers do nothing useful on PowerPC, so lib/Kconfig.debug
> > makes CONFIG_FRAME_POINTER unselectable on PPC targets. But ftrace.h
> > requires CONFIG_FRAME_POINTER for CALLER_ADDR macros. [...]
> 
> hm, why not add PPC to FRAME_POINTERS list of architectures, and select it 
> from the powerpc arch Kconfig? Does that cause complications somewhere?

-fno-omit-frame-pointers makes the code worse w/o any actual
benefit that we would use. Plus, there is a long standing bug in
gcc that makes -fno-omit-frame-pointer generate wrong code for PPC
targets:

http://lkml.org/lkml/2008/9/2/25

That is, the only tracer that needs[1] -fno-omit-frame-pointer is
"FUNCTION_TRCER", but we workaround the issue via -mno-sched-epilog,
quoting arch/powerpc/Makefile:

# Work around a gcc code-gen bug with -fno-omit-frame-pointer.
ifeq ($(CONFIG_FUNCTION_TRACER),y)
KBUILD_CFLAGS   += -mno-sched-epilog
endif

[1] Btw, why exactly do we need the -fno-omit-frame-pointer for
"FUNCTION_TRCER" tracer? Why just -pg isn't sufficient?..

-- 
Anton Vorontsov
email: cbouatmai...@gmail.com
irc://irc.freenode.net/bd2
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH v2] ftrace: On PowerPC we don't need frame pointers for CALLER_ADDRs

2009-02-03 Thread Steven Rostedt

On Tue, 2009-02-03 at 19:19 +0300, Anton Vorontsov wrote:
> On Tue, Feb 03, 2009 at 05:06:45PM +0100, Ingo Molnar wrote:

> [1] Btw, why exactly do we need the -fno-omit-frame-pointer for
> "FUNCTION_TRCER" tracer? Why just -pg isn't sufficient?..
> 

The problem is this that is in the toplevel Makefile:


ifdef CONFIG_FRAME_POINTER
KBUILD_CFLAGS   += -fno-omit-frame-pointer -fno-optimize-sibling-calls
else
KBUILD_CFLAGS   += -fomit-frame-pointer
endif


-pg is incompatible with -fomit-frame-pointer

-- Steve


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


Re: [PowerPC] 2.6.29-rc3-git4 build break : truncated relocation

2009-02-03 Thread Sachin P. Sant

Stephen Rothwell wrote:

Hi Sachin,

To make allyesconfig build currently, you need to turn
CONFIG_PROFILE_ALL_BRANCHES off.  It makes drivers/built-in.o too large
(increases the text size from about 32M to 47M) and the linker can't add
the usual trampolines because we prelink it.
  

Ok will enable this option. Thanks

--

-
Sachin Sant
IBM Linux Technology Center
India Systems and Technology Labs
Bangalore, India
-

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


Re: [PowerPC] 2.6.29-rc3-git4 build break : truncated relocation

2009-02-03 Thread Stephen Rothwell
Hi Sachin,

To make allyesconfig build currently, you need to turn
CONFIG_PROFILE_ALL_BRANCHES off.  It makes drivers/built-in.o too large
(increases the text size from about 32M to 47M) and the linker can't add
the usual trampolines because we prelink it.

Paulus suggested an old solution, but it seemed to hit a binutils
limitation.  I will have another try ...
-- 
Cheers,
Stephen Rothwells...@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/


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

[PATCH v2] ftrace: On PowerPC we don't need frame pointers for CALLER_ADDRs

2009-02-03 Thread Anton Vorontsov
According to this discussion:

http://lkml.org/lkml/2008/7/25/338
http://lkml.org/lkml/2008/7/26/72

Frame pointers do nothing useful on PowerPC, so lib/Kconfig.debug
makes CONFIG_FRAME_POINTER unselectable on PPC targets. But ftrace.h
requires CONFIG_FRAME_POINTER for CALLER_ADDR macros. Therefore
tracing is completely useless on PowerPC:

[...]
  -0   0X.h32us+:  0:140:R   + [000]  1733:120:S mvtsd
  -0   0X.h39us+: 0 (0)
  -0   0X..3   72us : 0 (0)
  -0   0X..3   73us :  0:140:R ==> [000]  1733:120:R mvtsd

This patch introduces a ARCH_HAS_NORMAL_FRAME_POINTERS Kconfig symbol,
when selected the CALLER_ADDR macros are available without the
FRAME_POINTER Kconfig symbol.

With this patch the trace output turns into:

[...]
  -0   0X.h32us+:  0:140:R   + [000]  1740:120:S mvtsd
  -0   0X.h39us+: hrtimer_wakeup (__run_hrtimer)
  -0   0X..3   87us : cpu_idle (__got2_end)
  -0   0X..3   89us :  0:140:R ==> [000]  1740:120:R mvtsd

Signed-off-by: Anton Vorontsov 
---

On Mon, Feb 02, 2009 at 09:04:15AM -0500, Steven Rostedt wrote:
[...]
> > > -#ifdef CONFIG_FRAME_POINTER
> > > +#if defined(CONFIG_FRAME_POINTER) || defined(CONFIG_PPC)
> 
> Perhaps we should add a HAVE_NORMAL_FRAME_POINTERS in 
> arch/powerpc/Kconfig under PPC and then we can change the above line to:
> 
> #if defined(CONFIG_FRAME_POINTERS) || \
>   defined(CONFIG_HAVE_NORMAL_FRAME_POINTERS)
> 
> This way when another arch wants to belong to this, we do not need to
> have a list of archs here.

Would it be better if we introduce ARCH_HAS_NORMAL_FRAME_POINTERS
in lib/Kconfig.debug, along with ARCH_WANT_FRAME_POINTERS?

Note that we can't use ARCH_WANT_FRAME_POINTERS for our needs since
that symbol is used for other (mostly cosmetic) purposes: whether we
we want CONFIG_FRAME_POINTER depend on CONFIG_DEBUG_KERNEL, and
whether frame pointers should be default =y (see commit
da4276b8299a6544dc41ac2485d3ffca5811b3fb).

 arch/powerpc/Kconfig   |1 +
 include/linux/ftrace.h |3 ++-
 lib/Kconfig.debug  |6 ++
 3 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 74cc312..d1c67bd 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -111,6 +111,7 @@ config PPC
select HAVE_FTRACE_MCOUNT_RECORD
select HAVE_DYNAMIC_FTRACE
select HAVE_FUNCTION_TRACER
+   select ARCH_HAS_NORMAL_FRAME_POINTERS
select ARCH_WANT_OPTIONAL_GPIOLIB
select HAVE_IDE
select HAVE_IOREMAP_PROT
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h
index 7840e71..ede3fe2 100644
--- a/include/linux/ftrace.h
+++ b/include/linux/ftrace.h
@@ -237,7 +237,8 @@ static inline void __ftrace_enabled_restore(int enabled)
 #endif
 }
 
-#ifdef CONFIG_FRAME_POINTER
+#if defined(CONFIG_FRAME_POINTER) || \
+   defined(CONFIG_ARCH_HAS_NORMAL_FRAME_POINTERS)
 /* TODO: need to fix this for ARM */
 # define CALLER_ADDR0 ((unsigned long)__builtin_return_address(0))
 # define CALLER_ADDR1 ((unsigned long)__builtin_return_address(1))
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 29044f5..808f4e2 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -579,6 +579,12 @@ config ARCH_WANT_FRAME_POINTERS
bool
help
 
+config ARCH_HAS_NORMAL_FRAME_POINTERS
+   bool
+   help
+ Architectures should select this symbol if their ABI implies
+ having a frame pointer.
+
 config FRAME_POINTER
bool "Compile the kernel with frame pointers"
depends on DEBUG_KERNEL && \
-- 
1.5.6.5

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


Re: [PATCH v2] ftrace: On PowerPC we don't need frame pointers for CALLER_ADDRs

2009-02-03 Thread Anton Vorontsov
On Tue, Feb 03, 2009 at 11:32:18AM -0500, Steven Rostedt wrote:
> 
> On Tue, 2009-02-03 at 19:19 +0300, Anton Vorontsov wrote:
> > On Tue, Feb 03, 2009 at 05:06:45PM +0100, Ingo Molnar wrote:
> 
> > [1] Btw, why exactly do we need the -fno-omit-frame-pointer for
> > "FUNCTION_TRCER" tracer? Why just -pg isn't sufficient?..
> > 
> 
> The problem is this that is in the toplevel Makefile:
> 
> 
> ifdef CONFIG_FRAME_POINTER
> KBUILD_CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
> else
> KBUILD_CFLAGS += -fomit-frame-pointer
> endif
> 
> 
> -pg is incompatible with -fomit-frame-pointer

Ah...

$ gcc -pg -fomit-frame-pointer -S c.c
gcc: -pg and -fomit-frame-pointer are incompatible

It's hard-coded in gcc, in the code that don't know about
architecture details.

But on PowerPC -O1 implies -fomit-frame-pointer, that is

gcc -pg -O1 -fno-omit-frame-pointer
and
gcc -pg -O1

produce different outputs. Thus -pg -O should be the same
as "-pg -O -fomit-framepointer".

-- 
Anton Vorontsov
email: cbouatmai...@gmail.com
irc://irc.freenode.net/bd2
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Calling wait_event_interruptible_timeout() in I2C wait functions

2009-02-03 Thread Timur Tabi
In i2c-mpc.c, the i2c_wait() function has this:

} else {
/* Interrupt mode */
result = wait_event_interruptible_timeout(i2c->queue,
(i2c->interrupt & CSR_MIF), timeout * HZ);

if (unlikely(result < 0)) {
pr_debug("I2C: wait interrupted\n");
writeccr(i2c, 0);
} else if (unlikely(!(i2c->interrupt & CSR_MIF))) {

That is, the driver calls wait_event_interruptible_timeout() to wait for
a response from the I2C controller after a read or write operation.

However, it appears that this is not common behavior for I2C driver.  In
fact, only these six drivers ever call wait_event_interruptible_timeout():

i2c-cpm.c
i2c-ibm_iic.c
i2c-mpc.c
i2c-taos-evm.c
i2c-iop3xx.c
i2c-mv64xxx.c

Although one would think that calling wait_event_interruptible_timeout()
is a good idea, it fails in one situation: when the abrupt termination
of a process causes an I2C operation to occur.  That is, you press ^C in
your application, and the driver issues a final I2C operation to shut
down the device.  In this situation, wait_event_interruptible_timeout()
returns -ERESTARTSYS, which is then passed up through
i2c_smbus_write_byte_data().

So my question is, is i2c-mpc.c wrong in using
wait_event_interruptible_timeout()?

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


Re: [PATCH v2] Add support for the digsy MTC board.

2009-02-03 Thread Grant Likely
On Tue, Feb 3, 2009 at 1:56 AM, Grzegorz Bernacki  wrote:
> Grant Likely wrote:
>> Hey Grzegorz,
>>
>> I've pulled your patch into my -next tree, but I made a few changes first:
>> - I dropped the defconfig changes because they conflict with the
>> defconfig update that Ben just pulled from me
>> - I updated the .dts file to reflect changes I was already making to
>> all the other .dts files
>> - I added the digsy-mtc board to the Kconfig documentation.
>>
>> I've pushed my whole queue of changes out to my -next tree.  Please
>> pull it down and try it out.  (Note, this tree will get rebased at
>> least once before I ask Ben to pull it, so be aware).  Make sure that
>> I haven't broken your .dts file.  To get the defconfig change in, you
>> can either send me another patch with just the defconfig change, or
>> you can pop my version of your patch off the top of my -next tree and
>> rebase your entire patch on top it.  Whatever you prefer.
>>
>> One more note; the new digsy-mtc.dts file from my tree will probably
>> not work with older kernels.  Kernels need to be backward compatible
>> with older .dts files, but the same is not true for the other way
>> around.
>>
>> Here's my -next tree:
>>
>> git://git.secretlab.ca/git/linux-2.6-mpc52xx next
>>
>
> Hi Grant,
>
> Thanks for pulling and updating my patch.
> I got your tree and now I try to build kernel image for digsy, but I get
> following errors:
> arch/powerpc/platforms/52xx/mpc52xx_gpt.c:77: error: field 'of_gc' has 
> incomplete type
> arch/powerpc/platforms/52xx/mpc52xx_gpt.c: In function 
> 'mpc52xx_gpt_gpio_setup':arch/powerpc/platforms/52xx/mpc52xx_gpt.c:350: 
> error: parameter name omitted
> arch/powerpc/platforms/52xx/mpc52xx_gpt.c:350: error: parameter name omitted
>
> They disappear when I add support for OF gpio, but I think that parts of
> mpc52xx_gpt.c file should be inside '#ifdef CONFIG_OF_GPIO' clause.

Good catch.  Thanks.

I've fixed the patch and I'll repost and refresh my tree shortly.

g.

-- 
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: [PATCH] powerpc/44x: Fix address decoding setup of PCI 2.x cells

2009-02-03 Thread Benjamin Herrenschmidt

> Could it be my USB failures were due to the PPC440 USB host needing the 
> various
> CONFIG*USB*BIG_ENDIAN* options, which may conflict with USB hosts on PCI
> plug-in cards?
> 
> The E1000 did work fine.

You need to enable support for both endians, that's supposed to work.

Ben.


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


Re: [PATCH v2] ftrace: On PowerPC we don't need frame pointers for CALLER_ADDRs

2009-02-03 Thread Benjamin Herrenschmidt
On Tue, 2009-02-03 at 21:59 +0300, Anton Vorontsov wrote:
> On Tue, Feb 03, 2009 at 11:32:18AM -0500, Steven Rostedt wrote:
> > 
> > On Tue, 2009-02-03 at 19:19 +0300, Anton Vorontsov wrote:
> > > On Tue, Feb 03, 2009 at 05:06:45PM +0100, Ingo Molnar wrote:
> > 
> > > [1] Btw, why exactly do we need the -fno-omit-frame-pointer for
> > > "FUNCTION_TRCER" tracer? Why just -pg isn't sufficient?..
> > > 
> > 
> > The problem is this that is in the toplevel Makefile:
> > 
> > 
> > ifdef CONFIG_FRAME_POINTER
> > KBUILD_CFLAGS   += -fno-omit-frame-pointer -fno-optimize-sibling-calls
> > else
> > KBUILD_CFLAGS   += -fomit-frame-pointer
> > endif
> > 

And don't forget the gcc bug that miscompiles function epilogues on ppc
with -fno-omit-frame-pointer (iirc), which we need to work around using
-mno-sched-epilog.

Currently, we set that only if CONFIG_FUNCTION_TRACER is set, ie, we
assume that we only set -fno-omit-frame-pointer when
CONFIG_FUNCTION_TRACER is set.

Ben.


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


Re: Booting 2.6.29-rc3 on mpc8661d_hpcn failing

2009-02-03 Thread Benjamin Herrenschmidt
On Tue, 2009-02-03 at 15:50 +, Martyn Welch wrote:
> 
> The primary CPU is spinning in smp_generic_give_timebase() waiting for
> "!tbsync->ack". The secondary CPU has made it into
> smp_generic_take_timebase() and has apparently (according to some
> printk's I put in there) set "tbsync->ack=1". After that I don't get
> any printk's, I guess that the one I have put in the "!
> tbsync->handshake" while loop is making it to the print buffer, but
> with both processors spinning it's not getting to the serial console.
> 
> At a guess, given that commit 64b3d0e8122b422e879b23d42f9e0e8efbbf9744
> seems to be the point that it stopped working correctly, that "tbsync"
> is now somehow becoming cached?
> 
Maybe we are missing the M bit in the mapping ?

Let's see... the kernel mapping is done via BATs on those guys (ie, e600
is a hash table based processor right ? some kind of 74xx). The code
that sets them up is in

arch/powerpc/mm/ppc_mmu_32.c

In mmu_mapin_ram() we call setbat() multiple times. The last argument is
the "flags" which is set to _PAGE_RAM. That should contain
_PAGE_COHERENT when CONFIG_SMP is set unless I screwed up. IE. _PAGE_RAM
is _PAGE_KERNEL | _PAGE_HWEXEC. _PAGE_KERNEL is _PAGE_BASE plus things,
and _PAGE_BASE should contains _PAGE_COHERENT if CONFIG_SMP or
CONFIG_PPC_STD_MMU are set and they should both be in your case.

setbat() itself will clear _PAGE_COHERENT under some circumstances
however. Either if the flags contain _PAGE_NO_CACHE, which should not be
the case here, or if the CPU feature bit CPU_FTR_NEED_COHERENT is -not-
set. I think that could be the cause of the problem.

CPU_FTR_NEED_COHERENT is set as part of CPU_FTR_COMMON if CONFIG_SMP
is set (among other things). So it -should- be set for you. since
CPU_FTR_COMMON should be OR'ed with all CPU table entries.

So I'm a bit at a loss here... unless something else went wrong.

Please let me know what you find out.

Cheers,
Ben.


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


FW: [PATCH] powerpc/mm: Export HPAGE_SHIFT

2009-02-03 Thread Roland Dreier
Forwarding Eli's patch below, since PowerPC guys may have missed it.  I
guess the question for Ben et al is whether there is any issue with
exporting HPAGE_SHIFT for modules (can be EXPORT_SYMBOL_GPL if you feel
it's an internal detail).  It would probably make sense to roll this
change into the mlx4 change that Eli alludes to below and merge through
my tree (with ppc maintainer acks of course), rather than splitting this
patch out and introducing cross-tree dependencies (and also separating
the rationale for the change from the change itself).

Thanks,
  Roland


Drivers may want to take advantage of the large pages used for memory obtained
from hugetlbfs. One example is mlx4_ib which can use much less MTT entries (in
the order of HPAGE_SIZE / PAGE_SIZE) when registering such memory, thus scale
significantly better when registering larger memory regions. Other drivers
could also benefit from this.

Signed-off-by: Eli Cohen 
---
 arch/powerpc/mm/hash_utils_64.c |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/arch/powerpc/mm/hash_utils_64.c b/arch/powerpc/mm/hash_utils_64.c
index 8d5b475..6cff8c7 100644
--- a/arch/powerpc/mm/hash_utils_64.c
+++ b/arch/powerpc/mm/hash_utils_64.c
@@ -104,6 +104,7 @@ int mmu_highuser_ssize = MMU_SEGSIZE_256M;
 u16 mmu_slb_size = 64;
 #ifdef CONFIG_HUGETLB_PAGE
 unsigned int HPAGE_SHIFT;
+EXPORT_SYMBOL(HPAGE_SHIFT);
 #endif
 #ifdef CONFIG_PPC_64K_PAGES
 int mmu_ci_restrictions;
-- 
1.6.1


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


Re: [PATCH 0/6] USB: Fixes for fsl_qe_udc driver

2009-02-03 Thread Greg KH
On Mon, Feb 02, 2009 at 06:50:04PM +0300, Anton Vorontsov wrote:
> On Tue, Jan 13, 2009 at 08:40:01AM -0800, Greg KH wrote:
> > On Tue, Jan 13, 2009 at 09:49:39AM -0600, Kumar Gala wrote:
> > > On Jan 6, 2009, at 10:53 PM, Greg KH wrote:
> > >> On Tue, Jan 06, 2009 at 10:44:13PM -0600, Kumar Gala wrote:
> > >>> On Dec 25, 2008, at 8:14 AM, Anton Vorontsov wrote:
> >  Hi all,
> > 
> >  Just resending some fixes that seem to be lost...
> > >>>
> > >>> Greg,
> > >>>
> > >>> What happened w/this patch set?
> > >>
> > >> As it was sent during the hollidays (on Christmas day at that), it's
> > >> still in my "to-review" queue.  I'll get to it in a few days after I
> > >> resync the USB tree with Linus.
> > >
> > > Any update on the review of these 6 patches?
> > 
> > It's in my queue, been busy with "real work" for a bit right now,
> > sorry...
> 
> Hello Greg,
> 
> Can you please look into these patches? I think they all are 2.6.29
> material, since the QE UDC driver is barely usable w/o these fixes.

My appologies, I've now applied them all and will queue them up to Linus
before .29 is out.

thanks,

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


Re: FW: [PATCH] powerpc/mm: Export HPAGE_SHIFT

2009-02-03 Thread Benjamin Herrenschmidt
On Tue, 2009-02-03 at 17:08 -0800, Roland Dreier wrote:
> Forwarding Eli's patch below, since PowerPC guys may have missed it.  I
> guess the question for Ben et al is whether there is any issue with
> exporting HPAGE_SHIFT for modules (can be EXPORT_SYMBOL_GPL if you feel
> it's an internal detail).  It would probably make sense to roll this
> change into the mlx4 change that Eli alludes to below and merge through
> my tree (with ppc maintainer acks of course), rather than splitting this
> patch out and introducing cross-tree dependencies (and also separating
> the rationale for the change from the change itself).
> 
> Thanks,
>   Roland
> 
> 
> Drivers may want to take advantage of the large pages used for memory obtained
> from hugetlbfs. One example is mlx4_ib which can use much less MTT entries (in
> the order of HPAGE_SIZE / PAGE_SIZE) when registering such memory, thus scale
> significantly better when registering larger memory regions. Other drivers
> could also benefit from this.

Except that we support multiple large page sizes nowadays ... I think
the size can be specified per mountpoint of hugetlbfs no ? Thus things
like mellanox would have to query the page size used for a given
mapping.

Do the generic hugetlbfs code provides such an API ? If not, we may need
to add one.

Cheers,
Ben.

> Signed-off-by: Eli Cohen 
> ---
>  arch/powerpc/mm/hash_utils_64.c |1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/powerpc/mm/hash_utils_64.c b/arch/powerpc/mm/hash_utils_64.c
> index 8d5b475..6cff8c7 100644
> --- a/arch/powerpc/mm/hash_utils_64.c
> +++ b/arch/powerpc/mm/hash_utils_64.c
> @@ -104,6 +104,7 @@ int mmu_highuser_ssize = MMU_SEGSIZE_256M;
>  u16 mmu_slb_size = 64;
>  #ifdef CONFIG_HUGETLB_PAGE
>  unsigned int HPAGE_SHIFT;
> +EXPORT_SYMBOL(HPAGE_SHIFT);
>  #endif
>  #ifdef CONFIG_PPC_64K_PAGES
>  int mmu_ci_restrictions;

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


Re: [PATCH 1/3] powerpc: bare minimum checkpoint/restart implementation

2009-02-03 Thread Benjamin Herrenschmidt

> +struct cr_hdr_cpu {
> + struct pt_regs pt_regs;
> + /* relevant fields from thread_struct */
> + double fpr[32][TS_FPRWIDTH];
> + unsigned int fpscr;
> + int fpexc_mode;
> + /* unsigned int align_ctl; this is never updated? */
> + unsigned long dabr;
> +};

Is there some version or other identification somewhere ? If not there
should be. ie, we're going to add things here. For example, what about
the vector registers ? Also, some CPUs will have more HW debug registers
than just the DABR (we plan to add support for all the BookE architected
IACs and DACs for example), etc...

Ben.


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


Re: [PATCH] powerpc: Ignore vmlinux.strip

2009-02-03 Thread Benjamin Herrenschmidt
On Wed, 2009-01-28 at 14:50 -0500, Sean MacLennan wrote:
> Not sure if this is PPC specific or not. I use the following patch to
> get a clean git status. Does nobody else see this file? Or am I missing
> a step somewhere?

Looks good actually.

> Cheers,
>Sean
> 
> Ignore the vmlinux.strip file.
> 
> Signed-off-by: Sean MacLennan 
> diff --git a/.gitignore b/.gitignore
> index 869e1a3..f7e924a 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -32,6 +32,7 @@
>  tags
>  TAGS
>  vmlinux
> +vmlinux.strip
>  System.map
>  Module.markers
>  Module.symvers
> ___
> 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 v2 1/4] Add platform support for AmigaOne

2009-02-03 Thread Benjamin Herrenschmidt

> + hose->first_busno = bus_range ? bus_range[0] : 0;
> + hose->last_busno = bus_range ? bus_range[1] : 0xff;
> +
> + setup_indirect_pci(hose, 0xfec00cf8, 0xfee00cfc, 0);

Minor in the context of amigaone but still... the above should come from
the device-tree... I suppose those are really just IO space addresses
cf8 and cfc, in which case, an option is to call that first:

> + /* Interpret the "ranges" property */
> + /* This also maps the I/O region and sets isa_io/mem_base */
> + pci_process_bridge_OF_ranges(hose, dev, 1);

And -then- use hose->io_resource.start + 0xcf8 / 0xcfc, the later can be
hard coded as they are pretty standard values.

Ben.


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


Re: [PATCH v2 2/4] Generic device tree for all AmigaOne boards

2009-02-03 Thread Benjamin Herrenschmidt
On Mon, 2009-02-02 at 22:39 +0100, Gerhard Pircher wrote:
> This device tree does not provide the correct CPU name, as various CPU
> models and revisions are used in AmigaOnes. Also the PCI root node does
> not contain a interrupt mapping property, as all boards have different
> interrupt routing. However the kernel can do a 1:1 mapping of all PCI
> interrupts, as only i8259 legacy interrupts are used.

Looks ok for the purpose, but please remove the commented bits etc...

Ben.

> Signed-off-by: Gerhard Pircher 
> ---
>  arch/powerpc/boot/dts/amigaone.dts |  183 
> 
>  1 files changed, 183 insertions(+), 0 deletions(-)
>  create mode 100644 arch/powerpc/boot/dts/amigaone.dts
> 
> diff --git a/arch/powerpc/boot/dts/amigaone.dts 
> b/arch/powerpc/boot/dts/amigaone.dts
> new file mode 100644
> index 000..54d49e0
> --- /dev/null
> +++ b/arch/powerpc/boot/dts/amigaone.dts
> @@ -0,0 +1,183 @@
> +/*
> + * AmigaOne Device Tree Source
> + *
> + * Copyright 2008 Gerhard Pircher (gerhard_pirc...@gmx.net)
> + *
> + * This program is free software; you can redistribute  it and/or modify it
> + * under  the terms of  the GNU General  Public License as published by the
> + * Free Software Foundation;  either version 2 of the  License, or (at your
> + * option) any later version.
> + */
> +
> +/dts-v1/;
> +
> +/ {
> + model = "AmigaOne";
> + compatible = "eyetech,amigaone";
> + coherency-off;
> + #address-cells = <1>;
> + #size-cells = <1>;
> +
> + cpus {
> + #cpus = <1>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + c...@0 {
> + device_type = "cpu";
> + reg = <0>;
> + d-cache-line-size = <32>;   // 32 bytes
> + i-cache-line-size = <32>;   // 32 bytes
> + d-cache-size = <32768>; // L1, 32K
> + i-cache-size = <32768>; // L1, 32K
> + timebase-frequency = <0>;   // 33.3 MHz, from U-boot
> + clock-frequency = <0>;  // From U-boot
> + bus-frequency = <0>;// From U-boot
> + };
> + };
> +
> + memory {
> + device_type = "memory";
> + reg = <0 0>;// From U-boot
> + };
> +
> + p...@8000 {
> + device_type = "pci";
> + compatible = "mai-logic,articia-s";
> + bus-frequency = <>;
> + bus-range = <0 0xff>;
> + ranges = <0x0100 0 0x 0xfe00 0 0x00c0   
> // PCI I/O
> +   0x0200 0 0x8000 0x8000 0 0x7d00   
> // PCI memory
> +   0x0200 0 0x 0xfd00 0 0x0100>; 
> // PCI alias memory (ISA)
> + 8259-interrupt-acknowledge = <0xfef0>;
> + // Do not define a interrupt-parent here, if there is no
> + // interrupt-map property.
> + #address-cells = <3>;
> + #size-cells = <2>;
> +
> + i...@7 {
> + device_type = "isa";
> + compatible = "pciclass,0601";
> + vendor-id = <0x1106>;
> + device-id = <0x0686>;
> + revision-id = <0x0010>;
> + class-code = <0x00060100>;
> + subsystem-id = <0>;
> + subsystem-vendor-id = <0>;
> + devsel-speed = <0x0001>;
> + min-grant = <0>;
> + max-latency = <0>;
> + /* First 64k for I/O at 0x0 on PCI mapped to 0x0 on 
> ISA. */
> + ranges = <0x0001 0 0x0100 0 0x 
> 0x0001>;
> + interrupt-parent = <&i8259>;
> + #interrupt-cells = <2>;
> + #address-cells = <2>;
> + #size-cells = <1>;
> +
> + dma-control...@0 {
> + compatible = "pnpPNP,200";
> + reg = <1 0x 0x0020
> +1 0x0080 0x0010
> +1 0x00c0 0x0020>;
> + /* Channel 4 reserverd, cascade mode, 2x32k 
> transfer/counter
> +  * widths and bus master capability.
> +  */
> +/*   dma = <0x4 0x4 0x20 0x20 0x1>; */
> + };
> +
> + i8259: interrupt-control...@20 {
> + device_type = "interrupt-controller";
> + compatible = "pnpPNP,000";
> + interrupt-controller;
> + reg = <1 0x0020 0x0002
> +   

Re: [PATCH] i2c: i2c-ibm_iic message can be confusing

2009-02-03 Thread Benjamin Herrenschmidt

> Acked-by: Jean Delvare 

Jean, you'll take that in your tree or should I take it in mine ?

Cheers,
Ben.


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


Re: [PATCH] powerpc: use common cpu_die

2009-02-03 Thread Benjamin Herrenschmidt

> --- work.git.orig/arch/powerpc/platforms/powermac/setup.c 2009-01-05 
> 02:09:08.0 -0600
> +++ work.git/arch/powerpc/platforms/powermac/setup.c  2009-01-05 
> 02:27:23.0 -0600
> @@ -672,7 +672,7 @@ static int pmac_pci_probe_mode(struct pc
>  /* access per cpu vars from generic smp.c */
>  DECLARE_PER_CPU(int, cpu_state);
>  
> -static void pmac_cpu_die(void)
> +static void pmac64_cpu_die(void)
>  {
>   /*

 .../...

> --- work.git.orig/arch/powerpc/platforms/powermac/smp.c   2009-01-05 
> 02:09:08.0 -0600
> +++ work.git/arch/powerpc/platforms/powermac/smp.c2009-01-05 
> 02:27:23.0 -0600
 .../...

>  
> -void cpu_die(void)
> +void pmac32_cpu_die(void)
>  {
>   local_irq_disable();
>   cpu_dead[smp_processor_id()] = 1;

Hi Milton ! Any chance you can move both pmac32 and pmac64 variants into
the same file ? 

Cheers,
Ben.


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


Re: [PATCH v2] Check name property to determine partition nodes.

2009-02-03 Thread Benjamin Herrenschmidt
On Fri, 2009-01-23 at 17:18 +0100, Benjamin Krill wrote:
> SLOF has a further node which could not be evaluate
> by the current routine. The current routine returns
> because the node hasn't the required reg property. As
> fix this patch adds a check to determine the partition
> child nodes. If the node is not an partition the number
> of total partitions will be decreased and loop continue
> with the next nodes.

Somebody on the MTD list is taking that ? David ? Or should I merge it
via powerpc ?

Cheers,
Ben.

> Signed-off-by: Benjamin Krill 
> ---
>  drivers/mtd/ofpart.c |7 +++
>  1 files changed, 7 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/mtd/ofpart.c b/drivers/mtd/ofpart.c
> index 9e45b3f..3e164f0 100644
> --- a/drivers/mtd/ofpart.c
> +++ b/drivers/mtd/ofpart.c
> @@ -46,6 +46,13 @@ int __devinit of_mtd_parse_partitions(struct device *dev,
>   const u32 *reg;
>   int len;
>  
> + /* check if this is a partition node */
> + partname = of_get_property(pp, "name", &len);
> + if (strcmp(partname, "partition") != 0) {
> + nr_parts--;
> + continue;
> + }
> +
>   reg = of_get_property(pp, "reg", &len);
>   if (!reg || (len != 2 * sizeof(u32))) {
>   of_node_put(pp);

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


Re: [PATCH] powerpc: rework dma-noncoherent to use generic vmap/vunmap functions

2009-02-03 Thread Benjamin Herrenschmidt
On Fri, 2009-01-09 at 15:58 +0300, Ilya Yanok wrote:
> This patch rewrites consistent dma allocations support to use vmalloc
> layer to allocate virtual memory space from vmalloc pool and get rid
> of CONFIG_CONSISTENT_{START,SIZE}.

So as commented before, please drop the defconfig updates.

I'm happy with the idea but I have a few nits with the implementation:

> -/*
>   * Allocate DMA-coherent memory space and return both the kernel remapped
>   * virtual and bus address for that space.
>   */
> @@ -151,19 +41,17 @@ void *
>  __dma_alloc_coherent(size_t size, dma_addr_t *handle, gfp_t gfp)
>  {
>   struct page *page;
> - struct vm_region *c;
>   unsigned long order;
> + void *v;
> + int i;
> + struct page *pages[PAGE_ALIGN(size)>>PAGE_SHIFT];

I'm not -too- fan of that page list one the stack up there.

I understand why you don't wantto kmalloc something here etc... but
that's what __vmalloc_area() does and it's somewhat useful to keep track
of the page array that way, it might prove handy in the future.

Might even be worth adding a generic patch to add a VM_COHERENT_DMA flag
so they can be listed as such and make sure you set the "caller" field
yourself with your own caller.

(Hint: look at the output of /proc/vmallocinfo)

Also, the mucking around with PG_Reserved shouldn't be of any use
anymore.

Cheers,
Ben.

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


Re: FW: [PATCH] powerpc/mm: Export HPAGE_SHIFT

2009-02-03 Thread Andrew Morton
On Wed, 04 Feb 2009 12:50:48 +1100 Benjamin Herrenschmidt 
 wrote:

> On Tue, 2009-02-03 at 17:08 -0800, Roland Dreier wrote:
> > Forwarding Eli's patch below, since PowerPC guys may have missed it.  I
> > guess the question for Ben et al is whether there is any issue with
> > exporting HPAGE_SHIFT for modules (can be EXPORT_SYMBOL_GPL if you feel
> > it's an internal detail).  It would probably make sense to roll this
> > change into the mlx4 change that Eli alludes to below and merge through
> > my tree (with ppc maintainer acks of course), rather than splitting this
> > patch out and introducing cross-tree dependencies (and also separating
> > the rationale for the change from the change itself).
> > 
> > Thanks,
> >   Roland
> > 
> > 
> > Drivers may want to take advantage of the large pages used for memory 
> > obtained
> > from hugetlbfs. One example is mlx4_ib which can use much less MTT entries 
> > (in
> > the order of HPAGE_SIZE / PAGE_SIZE) when registering such memory, thus 
> > scale
> > significantly better when registering larger memory regions. Other drivers
> > could also benefit from this.
> 
> Except that we support multiple large page sizes nowadays ... I think
> the size can be specified per mountpoint of hugetlbfs no ? Thus things
> like mellanox would have to query the page size used for a given
> mapping.
> 
> Do the generic hugetlbfs code provides such an API ? If not, we may need
> to add one.
> 

I think it's something like

huge_page_size(page_hstate(page))

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


[PATCH] powerpc: Wire up /proc/vmallocinfo to our ioremap()

2009-02-03 Thread Benjamin Herrenschmidt
This adds the necessary bits and pieces to powerpc implementation of
ioremap to benefit from caller tracking in /proc/vmallocinfo, at least
for ioremap's done after mem init as the older ones aren't tracked.

Note the small addition to the generic code exposing a __get_vm_area_caller()
which we need for the ppc64 implementation.

Signed-off-by: Benjamin Herrenschmidt 
---

Can some mm person review the generic bit and maybe ack it ?

Cheers,
Ben.
 
 arch/powerpc/include/asm/io.h|6 ++
 arch/powerpc/include/asm/machdep.h   |2 +-
 arch/powerpc/mm/pgtable_32.c |   14 +++---
 arch/powerpc/mm/pgtable_64.c |   25 +
 arch/powerpc/platforms/cell/io-workarounds.c |4 ++--
 arch/powerpc/platforms/iseries/setup.c   |2 +-
 include/linux/vmalloc.h  |3 +++
 mm/vmalloc.c |8 
 8 files changed, 49 insertions(+), 15 deletions(-)

--- linux-work.orig/arch/powerpc/include/asm/io.h   2009-02-04 
15:37:43.0 +1100
+++ linux-work/arch/powerpc/include/asm/io.h2009-02-04 15:38:30.0 
+1100
@@ -632,6 +632,9 @@ static inline void iosync(void)
  *   ioremap_flags and cannot be hooked (but can be used by a hook on one
  *   of the previous ones)
  *
+ * * __ioremap_caller is the same as above but takes an explicit caller
+ *   reference rather than using __builtin_return_address(0)
+ *
  * * __iounmap, is the low level implementation used by iounmap and cannot
  *   be hooked (but can be used by a hook on iounmap)
  *
@@ -646,6 +649,9 @@ extern void iounmap(volatile void __iome
 
 extern void __iomem *__ioremap(phys_addr_t, unsigned long size,
   unsigned long flags);
+extern void __iomem *__ioremap_caller(phys_addr_t, unsigned long size,
+ unsigned long flags, void *caller);
+
 extern void __iounmap(volatile void __iomem *addr);
 
 extern void __iomem * __ioremap_at(phys_addr_t pa, void *ea,
Index: linux-work/arch/powerpc/include/asm/machdep.h
===
--- linux-work.orig/arch/powerpc/include/asm/machdep.h  2009-02-04 
15:35:20.0 +1100
+++ linux-work/arch/powerpc/include/asm/machdep.h   2009-02-04 
15:35:25.0 +1100
@@ -90,7 +90,7 @@ struct machdep_calls {
void(*tce_flush)(struct iommu_table *tbl);
 
void __iomem *  (*ioremap)(phys_addr_t addr, unsigned long size,
-  unsigned long flags);
+  unsigned long flags, void *caller);
void(*iounmap)(volatile void __iomem *token);
 
 #ifdef CONFIG_PM
Index: linux-work/arch/powerpc/mm/pgtable_32.c
===
--- linux-work.orig/arch/powerpc/mm/pgtable_32.c2009-02-04 
15:40:22.0 +1100
+++ linux-work/arch/powerpc/mm/pgtable_32.c 2009-02-04 15:41:43.0 
+1100
@@ -129,7 +129,8 @@ pgtable_t pte_alloc_one(struct mm_struct
 void __iomem *
 ioremap(phys_addr_t addr, unsigned long size)
 {
-   return __ioremap(addr, size, _PAGE_NO_CACHE | _PAGE_GUARDED);
+   return __ioremap_caller(addr, size, _PAGE_NO_CACHE | _PAGE_GUARDED,
+   __builtin_return_address(0));
 }
 EXPORT_SYMBOL(ioremap);
 
@@ -143,13 +144,20 @@ ioremap_flags(phys_addr_t addr, unsigned
/* we don't want to let _PAGE_USER and _PAGE_EXEC leak out */
flags &= ~(_PAGE_USER | _PAGE_EXEC | _PAGE_HWEXEC);
 
-   return __ioremap(addr, size, flags);
+   return __ioremap_caller(addr, size, flags, __builtin_return_address(0));
 }
 EXPORT_SYMBOL(ioremap_flags);
 
 void __iomem *
 __ioremap(phys_addr_t addr, unsigned long size, unsigned long flags)
 {
+   return __ioremap_caller(addr, size, flags, __builtin_return_address(0));
+}
+
+void __iomem *
+__ioremap_caller(phys_addr_t addr, unsigned long size, unsigned long flags,
+void *caller)
+{
unsigned long v, i;
phys_addr_t p;
int err;
@@ -212,7 +220,7 @@ __ioremap(phys_addr_t addr, unsigned lon
 
if (mem_init_done) {
struct vm_struct *area;
-   area = get_vm_area(size, VM_IOREMAP);
+   area = get_vm_area_caller(size, VM_IOREMAP, caller);
if (area == 0)
return NULL;
v = (unsigned long) area->addr;
Index: linux-work/arch/powerpc/mm/pgtable_64.c
===
--- linux-work.orig/arch/powerpc/mm/pgtable_64.c2009-02-04 
15:31:20.0 +1100
+++ linux-work/arch/powerpc/mm/pgtable_64.c 2009-02-04 15:50:54.0 
+1100
@@ -144,8 +144,8 @@ void __iounmap_at(void *ea, unsigned lon
unmap_kernel_range((unsigned long)ea, size);
 }
 
-void __iomem * __ioremap(phys_addr_t addr, unsigned long size,
-   

Re: [PATCH 1/2] powerpc: G4 oprofile: variable number of counters

2009-02-03 Thread Benjamin Herrenschmidt
On Tue, 2009-01-06 at 14:55 +0200, Octavian Purdila wrote:
> For ppc750 processors which use 4 performance counters instead of the
> 6 G4 uses but otherwise is compatible with G4.
> 
> Signed-off-by: Octavian Purdila 
> ---
>  arch/powerpc/oprofile/op_model_7450.c |   21 +++--
>  1 files changed, 11 insertions(+), 10 deletions(-)
> 
> diff --git a/arch/powerpc/oprofile/op_model_7450.c 
> b/arch/powerpc/oprofile/op_model_7450.c
> index cc599eb..97348f5 100644
> --- a/arch/powerpc/oprofile/op_model_7450.c
> +++ b/arch/powerpc/oprofile/op_model_7450.c
> @@ -29,7 +29,7 @@
>  static unsigned long reset_value[OP_MAX_COUNTER];
>  
>  static int oprofile_running;
> -static u32 mmcr0_val, mmcr1_val, mmcr2_val;
> +static u32 mmcr0_val, mmcr1_val, mmcr2_val, ctrs;

This may be static but it's still a global scope as far as kernel
symbols are concerned. Care to give it a slightly better name ? num_pmcs
would probably be already more telling.

Cheers,
Ben.


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


Re: FW: [PATCH] powerpc/mm: Export HPAGE_SHIFT

2009-02-03 Thread Nick Piggin
On Wednesday 04 February 2009 16:13:29 Andrew Morton wrote:
> On Wed, 04 Feb 2009 12:50:48 +1100 Benjamin Herrenschmidt 
> > Do the generic hugetlbfs code provides such an API ? If not, we may need
> > to add one.
>
> I think it's something like
>
>   huge_page_size(page_hstate(page))

That would work if you have a page, yes. If you want to query which hugepage
sizes are available, then you probably want for_each_hstate() (which is only
within mm/hugetlb.c at the moment, but I have no objections to exporting it
and symbols it requires).

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


Re: FW: [PATCH] powerpc/mm: Export HPAGE_SHIFT

2009-02-03 Thread Roland Dreier
 > I think it's something like
 > 
 >  huge_page_size(page_hstate(page))

That would suit.  I assume the intention is for that to be usable by
driver modules on any architecture?

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


Re: FW: [PATCH] powerpc/mm: Export HPAGE_SHIFT

2009-02-03 Thread Andrew Morton
On Tue, 03 Feb 2009 22:16:08 -0800 Roland Dreier  wrote:

>  > I think it's something like
>  > 
>  >huge_page_size(page_hstate(page))
> 
> That would suit.  I assume the intention is for that to be usable by
> driver modules on any architecture?
> 

erm, you overestimate the amount of planning and forethought which goes
into these things ;)

The lack of any EXPORT_SYMBOL(size_to_hstate) is a broadish hint.

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


Re: FW: [PATCH] powerpc/mm: Export HPAGE_SHIFT

2009-02-03 Thread wli
On Wed, 04 Feb 2009 12:50:48 +1100 Benjamin Herrenschmidt 
>>> Do the generic hugetlbfs code provides such an API ? If not, we may need
>>> to add one.

On Wednesday 04 February 2009 16:13:29 Andrew Morton wrote:
>> I think it's something like
>>  huge_page_size(page_hstate(page))

On Wed, Feb 04, 2009 at 04:31:38PM +1100, Nick Piggin wrote:
> That would work if you have a page, yes. If you want to query which hugepage
> sizes are available, then you probably want for_each_hstate() (which is only
> within mm/hugetlb.c at the moment, but I have no objections to exporting it
> and symbols it requires).

Exciting things have happened in mm/hugetlb.c while I was out sick.
I've got quite some catching up to do.


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


Re: [PATCH] i2c: i2c-ibm_iic message can be confusing

2009-02-03 Thread Jean Delvare
Hi Ben,

On Wed, 04 Feb 2009 14:55:33 +1100, Benjamin Herrenschmidt wrote:
> 
> > Acked-by: Jean Delvare 
> 
> Jean, you'll take that in your tree or should I take it in mine ?

No, I'm not taking it, i2c-ibm_iic is under Ben Dooks' jurisdiction. So
it's up to either him or you.

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