LinuxPPC-Dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH 3/5] leds: implement OpenFirmare GPIO LEDs driver
From: Anton Vorontsov @ 2008-03-26 23:07 UTC (permalink / raw)
  To: Matt Sealey; +Cc: linuxppc-dev, Richard Purdie
In-Reply-To: <47EABA4B.1000105@genesi-usa.com>

On Wed, Mar 26, 2008 at 09:04:11PM +0000, Matt Sealey wrote:
> Can someone throw me a link to the GPIO spec being implemented here (yes,
> I would like docs too!) or a pointer to the relevant DTS which implements
> it?
>
> Supporting GPIO in the device tree is something that has been undefined
> for ages, and I seem to not be able to find the supporting DTS patches for
> this implementation in patchwork..??

Here the last respin starts:

http://ozlabs.org/pipermail/linuxppc-dev/2008-March/052881.html

> Grant Likely wrote:
>> On Wed, Mar 26, 2008 at 2:24 PM, Anton Vorontsov
>> <avorontsov@ru.mvista.com> wrote:
>>> Despite leds-gpio and leds-of-gpio similar names and purposes, there
>>>  is actually very few code can be shared between the two (both drivers
>>>  are mostly the driver bindings anyway).
>>>
>>>  Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
>>
>> Other than the fact that it needs some documentation of the binding in
>> booting-without-of.txt, it looks pretty good to me.

Thanks, will document it.

-- 
Anton Vorontsov
email: cbouatmailru@gmail.com
irc://irc.freenode.net/bd2

^ permalink raw reply

* Re: [PATCH] scanlog_init cleanup, minor fixes
From: Nathan Lynch @ 2008-03-26 23:09 UTC (permalink / raw)
  To: Michael Ellerman; +Cc: linuxppc-dev
In-Reply-To: <1206571210.7482.0.camel@concordia.ozlabs.ibm.com>

Michael Ellerman wrote:
> > +	/* Ideally we could allocate a buffer < 4G */
> > +	data = kzalloc(RTAS_DATA_BUF_SIZE, GFP_KERNEL);
> > +	if (!data)
> > +		goto err;
> 
> Not your bug, but what happens if data is > 4G? Kaboom?

An old RPA doc (scan-log-dump isn't specified in PAPR) says the buffer
should be "contiguous real storage", so... yeah, probably.  That's why
I preserved the comment.  Will fix if I get access to a machine to
test this code more thoroughly (plenty of other issues in this file,
too).

^ permalink raw reply

* Re: [PATCH] scanlog_init cleanup, minor fixes
From: Michael Ellerman @ 2008-03-26 23:21 UTC (permalink / raw)
  To: Nathan Lynch; +Cc: linuxppc-dev
In-Reply-To: <20080326230959.GI7137@localdomain>

[-- Attachment #1: Type: text/plain, Size: 917 bytes --]

On Wed, 2008-03-26 at 18:09 -0500, Nathan Lynch wrote:
> Michael Ellerman wrote:
> > > +	/* Ideally we could allocate a buffer < 4G */
> > > +	data = kzalloc(RTAS_DATA_BUF_SIZE, GFP_KERNEL);
> > > +	if (!data)
> > > +		goto err;
> > 
> > Not your bug, but what happens if data is > 4G? Kaboom?
> 
> An old RPA doc (scan-log-dump isn't specified in PAPR) says the buffer
> should be "contiguous real storage", so... yeah, probably.  That's why
> I preserved the comment.  Will fix if I get access to a machine to
> test this code more thoroughly (plenty of other issues in this file,
> too).

Cool, no point changing it if we can't test it.

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

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply

* Re: Which Kernel for Ocotea (440GX)?
From: Wolfgang Wegner @ 2008-03-26 23:18 UTC (permalink / raw)
  To: Wolfgang Denk; +Cc: linuxppc-dev
In-Reply-To: <20080325224533.97BF3243A7@gemini.denx.de>

Hi Wolfgang,

On Tue, Mar 25, 2008 at 11:45:33PM +0100, Wolfgang Denk wrote:
> 
> You can find Ocotea support (still arch/ppc only) in our kenrel
> repository - see git://www.denx.de/git/linux-2.6-denx.git
> 
> I think if you just followed the links on AMCC's web site they should
> have taken you there, too. Please let me know if this didn't work for
> some reason.

thank you very much, I fetched the kernel and at least it built
correctly.

It seems I am still doing something wrong with configuration, but as
I am getting this far, it should be possible to solve. I just wanted
to give feedback in time that the build is OK.

Thank you and best regards,
Wolfgang

At the moment this is what I get:

=> bootm 0x400000                                                               
## Booting image at 00400000 ...                                                
   Image Name:   Linux                                                          
   Created:      2008-03-26  23:12:26 UTC                                       
   Image Type:   PowerPC Linux Kernel Image (gzip compressed)                   
   Data Size:    1428044 Bytes =  1.4 MB                                        
   Load Address: 00000000                                                       
   Entry Point:  00000000                                                       
   Verifying Checksum ... OK                                                    
   Uncompressing Kernel Image ... OK                                            
id mach(): done                                                                 
MMU:enter                                                                       
MMU:hw init                                                                     
MMU:mapin                                                                       
MMU:setio                                                                       
MMU:exit                                                                        
setup_arch: enter                                                               
setup_arch: bootmem                                                             
ocp: exit                                                                       
arch: exit                                                                      

^ permalink raw reply

* Re: [RESEND][POWERPC] mpc5200: Amalgamated dts fixes and updates
From: David Gibson @ 2008-03-26 23:28 UTC (permalink / raw)
  To: Matt Sealey; +Cc: linuxppc-dev, Anatolij Gustschin, Paul Mackerras
In-Reply-To: <47EAD4DA.5050907@genesi-usa.com>

On Wed, Mar 26, 2008 at 10:57:30PM +0000, Matt Sealey wrote:
> David Gibson wrote:
>> On Wed, Mar 26, 2008 at 03:16:47PM -0600, Grant Likely wrote:
>>> On Wed, Mar 26, 2008 at 3:02 PM, Matt Sealey <matt@genesi-usa.com> wrote:
>>>> Bartlomiej Sieka wrote:
>>>>  > +
>>>>  > +                     phy0:ethernet-phy@0 {
>>>>  > +                             device_type = "ethernet-phy";@0"
>>>>  > +                             reg = <0>;
>>>>  > +                     };
>>>>
>>>>  What's the parsing of this pan out to? What does it mean?
>>>>
>>>>  Having colons in device names is totally contrary to OF device naming
>>>>  spec. Does the part after the colon have a special meaning to the DTC?
>>> "phy0:" is a label used by dtc.
>>> "ethernet-phy@0" is the node name.
>> I would suggest a space after the colon though, to make this clearer.
>> That's the style I've been using in all my dts files.
>
> I would suggest taking a hint from C structures...
>
> ethernet-phy@0 {
> 	name = "ethernet-phy";
> 	reg = <0>;
> 	foo = bar;
> } phy0;
>
> I mean, this is really intuitive, we all do this every day...

That's a terrible analogy though.  The OF name is in no way like a
structure's type, which is what would go there.  Plus it separates the
label from the top of the node which will make it harder to read.

The label syntax is already based on C labels, and can be used more
places than just nodes.  Putting a space should make it rather
clearer, and is also closer to normal C style (how many people would
write
	out:return(err);

-- 
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

^ permalink raw reply

* Re: [PATCH 1/2] [MTD] Add support for RAM & ROM mappings in the physmap_of MTD driver.
From: David Gibson @ 2008-03-26 23:37 UTC (permalink / raw)
  To: Segher Boessenkool; +Cc: ben, linux-mtd, linuxppc-dev
In-Reply-To: <777c028aa41fe870542afdb4fa7d2db6@kernel.crashing.org>

On Wed, Mar 26, 2008 at 04:34:58PM +0100, Segher Boessenkool wrote:
>>>>      {
>>>> +        .compatible    = "physmap-ram",
>>>> +        .data        = (void *)"map_ram",
>>>> +    },
>>>> +    {
>>>> +        .compatible    = "physmap-rom",
>>>> +        .data        = (void *)"map_rom",
>>>> +    },
>>
>>> Why the cast?  It's redundant afaics.
>>
>>   To be in line with the surrounding code...
>
> I see _that_, but it's not a great argument IMNSHO.  Could I trick
> you into preceding this patch with a cleanup patch for the existing
> casts?

Hrm.  Much as I generally dislike redundant casts, these ones do serve
to inform the reader that the data field is not always a string, which
they might otherwise assume.

-- 
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

^ permalink raw reply

* Re: DTS question
From: David Gibson @ 2008-03-26 23:40 UTC (permalink / raw)
  To: Segher Boessenkool; +Cc: Scott Wood, linuxppc-dev, Sean MacLennan
In-Reply-To: <f789af657dc6001f6337218db90825c5@kernel.crashing.org>

On Wed, Mar 26, 2008 at 04:32:28PM +0100, Segher Boessenkool wrote:
>>>> Well.. stock ticker is the new convention.  IEEE1275 used IEEE
>>>> assigned OUI strings (Organization Unique Identifiers).  Often those
>>>> are the same as the stock ticker, but not always.
>>>
>>> Erm, an OUI is a 24-bit number.  I think you're confusing something
>>> here.
>>
>> Yes, I think I am.  I somehow had the impression that in addition to
>> the 24-bit OUIs used in MAC addresses, there were also string-form
>> OUIs assigned.
>
> Perhaps, I'm not an expert on this organisational stuff (wow, big
> understatement).  OF uses only the six-hex-digit form though (with
> a prepended 0, to make it unique).
>
>>> Note that a stock symbol needs to be written in uppercase; in lowercase,
>>> it is just a random name that has no collision protection.
>>
>> Um.. bit too late for that.  AFAIK, uppercase has been used by
>> *no-one* for stock ticker derived vendor IDs.
>
> No, it's used quite a lot actually.  Not in DTS files though ;-)

Sorry, yes, I was meaning specifically in recent, flattened-device
tree practice (which is the context in which the "use stock ticker"
recommendation has been made.

> It doesn't matter a lot, lowercase names are perfectly valid, you just
> don't get the nice non-collision reassurance you would get if you used
> a name in one of the namespaces reserved for that purpose.
>
> It's probably best to not use an uppercase stock symbol if you don't
> have approval from the company in question anyway -- we use a
> lowercase name (i.e. in the "free-for-all" space) for our messed up
> bindings, the companies use an uppercase name (in the stock-ticker
> namespace) for their own, incompatible, messed-up bindings, and
> everyone is happy.  Or something like that.

-- 
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

^ permalink raw reply

* Re: Which Kernel for Ocotea (440GX)? - working now
From: Wolfgang Wegner @ 2008-03-26 23:38 UTC (permalink / raw)
  To: Wolfgang Denk; +Cc: linuxppc-dev
In-Reply-To: <20080325224533.97BF3243A7@gemini.denx.de>

Hi again,

sorry for the confusion, I forgot to activate the serial console support,
now the kernel is booting up fine until it tries to mount the root
fs.

Thanks again,
Wolfgang

^ permalink raw reply

* RE: ppc platform for AMCC-440EPx - ELDK to the rescue
From: Dave Cogley @ 2008-03-26 22:56 UTC (permalink / raw)
  To: linuxppc-embedded
In-Reply-To: <20080326222247.337AB242FC@gemini.denx.de>

Wolfgang,

Could you provide an explanation between the two architectures in the ELDK?


I am also using a Sequoia "spin off" and am trying to determine why I would
want to use the "powerpc" architecture vs. the "ppc" architecture.  

Thanks,
Dave

-----Original Message-----
From: linuxppc-embedded-bounces+dcogley=uslinc.com@ozlabs.org
[mailto:linuxppc-embedded-bounces+dcogley=uslinc.com@ozlabs.org] On Behalf
Of Wolfgang Denk
Sent: Wednesday, March 26, 2008 3:23 PM
To: Steve Heflin
Cc: linuxppc-embedded@ozlabs.org
Subject: Re: ppc platform for AMCC-440EPx - ELDK to the rescue

In message <20080326130837.762DBDE2FB@ozlabs.org> you wrote:
> I finally resolved my nightmare of getting linux-2.6.24/5... to work 
> on my AMCC-440Epx - Sequoia spinoff board. Following a clue I derived 
> from a reply from Wolfgang Denx, I went to the DENX Engineering site 
> where I discoved and downloaded the ELDK for the ppc_4xxFP. the ELDK 
> uses the ppc platform instead of the powerpc platform.  FINALLY the 

This is not exactly correct. Actually it supports both.

> Also, I fail to see what the DTS virtualization layer of the hardware 
> buys us. When debugging, it's so much harder to use than the ppc 
> platform's straight forward and standard methodologies.  I can't 
> understand to goal to eliminate the ppc platform, especially given 
> the fact that DENX's ELDK is still using it with Linux 2.6.24.2 !!

You miss the fact that the ELDK has full  support  for  arch/powerpc,
and  that  some  board configurations in our kernel (for example, all
MPC5200 based ones)  are  available  in  arch/powerpc  configurations
only.

But then - what's the difference? All it takes is a  redefinition  of
the ARCH envrionment variable in your shell...

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
I've got a bad feeling about this.
_______________________________________________
Linuxppc-embedded mailing list
Linuxppc-embedded@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-embedded

^ permalink raw reply

* [patch 0/6] PS3 patches for 2.6.26
From: Geoff Levand @ 2008-03-27  0:36 UTC (permalink / raw)
  To: paulus; +Cc: linuxppc-dev, jgarzik

Paul and Jeff,

This is a small set of PS3 patches for 2.6.26.  Patches
1-5 are ready to apply to the powerpc tree.

Patch 6 for the network driver needs an ACK by Jeff.


  [1/6] PS3: Fix unlikely typo in ps3_get_irq
  [2/6] PS3: Add ps3_get_speid routine
  [3/6] PS3: Bootwrapper improvements
  [4/6] PS3: Save power in busy loops on halt
  [5/6] PS3: Sys-manager Wake-on-LAN support
  [6/6] PS3: Gelic network driver Wake-on-LAN support


-Geoff

-- 

^ permalink raw reply

* [patch 1/6] PS3: Fix unlikely typo in ps3_get_irq
From: Geoff Levand @ 2008-03-27  0:37 UTC (permalink / raw)
  To: paulus; +Cc: linuxppc-dev, Roel Kluin
In-Reply-To: <20080327001821.827672589@am.sony.com>

From: Roel Kluin <12o3l@tiscali.nl>

Fix a typo bug 'unlikely(x) == y' and add an unlikely() call to
an unlikely code path in the PS3 interrupt routine ps3_get_irq().

Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
---
 arch/powerpc/platforms/ps3/interrupt.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/arch/powerpc/platforms/ps3/interrupt.c
+++ b/arch/powerpc/platforms/ps3/interrupt.c
@@ -709,7 +709,7 @@ static unsigned int ps3_get_irq(void)
 	asm volatile("cntlzd %0,%1" : "=r" (plug) : "r" (x));
 	plug &= 0x3f;
 
-	if (unlikely(plug) == NO_IRQ) {
+	if (unlikely(plug == NO_IRQ)) {
 		pr_debug("%s:%d: no plug found: thread_id %lu\n", __func__,
 			__LINE__, pd->thread_id);
 		dump_bmp(&per_cpu(ps3_private, 0));

-- 

^ permalink raw reply

* [patch 2/6] PS3: Add ps3_get_speid routine
From: Geoff Levand @ 2008-03-27  0:37 UTC (permalink / raw)
  To: paulus; +Cc: linuxppc-dev, Takashi Yamamoto
In-Reply-To: <20080327001821.827672589@am.sony.com>

From: Takashi Yamamoto <TakashiA.Yamamoto@jp.sony.com>

Add a new routine ps3_get_speid() which returns the logical
SPE ID.  This ID is needed for profiling support.

Signed-off-by: Takashi Yamamoto <TakashiA.Yamamoto@jp.sony.com>
Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
---
 arch/powerpc/platforms/ps3/spu.c |    7 +++++++
 1 file changed, 7 insertions(+)

--- a/arch/powerpc/platforms/ps3/spu.c
+++ b/arch/powerpc/platforms/ps3/spu.c
@@ -27,6 +27,7 @@
 #include <asm/spu.h>
 #include <asm/spu_priv1.h>
 #include <asm/lv1call.h>
+#include <asm/ps3.h>
 
 #include "../cell/spufs/spufs.h"
 #include "platform.h"
@@ -140,6 +141,12 @@ static void _dump_areas(unsigned int spe
 	pr_debug("%s:%d: shadow:  %lxh\n", func, line, shadow);
 }
 
+inline u64 ps3_get_spe_id(void *arg)
+{
+	return spu_pdata(arg)->spe_id;
+}
+EXPORT_SYMBOL_GPL(ps3_get_spe_id);
+
 static unsigned long get_vas_id(void)
 {
 	unsigned long id;

-- 

^ permalink raw reply

* [patch 3/6] PS3: Bootwrapper improvements
From: Geoff Levand @ 2008-03-27  0:38 UTC (permalink / raw)
  To: paulus; +Cc: linuxppc-dev
In-Reply-To: <20080327001821.827672589@am.sony.com>

Improve the debuging support of the PS3 bootwraper code:

 o Increase the size of the PS3 bootwrapper overlay from 256 to 512 bytes to
   allow for more debugging code in the overlay.
 o Use the dot symbol to set the size of __system_reset_overlay.  The
   asembler will then emit an error if the overlay code is too big.
 o Remove some unused instructions.
 o Update the text describing the PS3 bootwrapper overlay.
 o Add a check for null pointer writes.
 o Change hcall return value from s64.

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
---
 arch/powerpc/boot/ps3-head.S |   25 ++++++++++++++++---------
 arch/powerpc/boot/ps3.c      |   21 +++++++++++++--------
 arch/powerpc/boot/wrapper    |   21 +++++++++++----------
 3 files changed, 40 insertions(+), 27 deletions(-)

--- a/arch/powerpc/boot/ps3-head.S
+++ b/arch/powerpc/boot/ps3-head.S
@@ -27,8 +27,9 @@
 /*
  * __system_reset_overlay - The PS3 first stage entry.
  *
- * The bootwraper build script copies the 0x100 bytes at symbol
- * __system_reset_overlay to offset 0x100 of the rom image.
+ * The bootwraper build script copies the 512 bytes at symbol
+ * __system_reset_overlay to offset 0x100 of the rom image.  This symbol
+ * must occupy 512 or less bytes.
  *
  * The PS3 has a single processor with two threads.
  */
@@ -47,8 +48,6 @@ __system_reset_overlay:
 
 	mfspr	r3, 0x88
 	cntlzw.	r3, r3
-	li	r4, 0
-	li	r5, 0
 	beq	1f
 
 	/* Secondary goes to __secondary_hold in kernel. */
@@ -57,8 +56,14 @@ __system_reset_overlay:
 	mtctr	r4
 	bctr
 
-	/* Primary delays then goes to _zimage_start in wrapper. */
 1:
+	/* Save the value at addr zero for a null pointer write check later. */
+
+	li	r4, 0
+	lwz	r3, 0(r4)
+
+	/* Primary delays then goes to _zimage_start in wrapper. */
+
 	or	31, 31, 31 /* db16cyc */
 	or	31, 31, 31 /* db16cyc */
 
@@ -67,16 +72,18 @@ __system_reset_overlay:
 	mtctr	r4
 	bctr
 
+	. = __system_reset_overlay + 512
+
 /*
  * __system_reset_kernel - Place holder for the kernel reset vector.
  *
- * The bootwrapper build script copies 0x100 bytes from offset 0x100
+ * The bootwrapper build script copies 512 bytes from offset 0x100
  * of the rom image to the symbol __system_reset_kernel.  At runtime
- * the bootwrapper program copies the 0x100 bytes at __system_reset_kernel
- * to ram address 0x100.  This symbol must occupy 0x100 bytes.
+ * the bootwrapper program copies the 512 bytes at __system_reset_kernel
+ * to ram address 0x100.  This symbol must occupy 512 bytes.
  */
 
 	.globl __system_reset_kernel
 __system_reset_kernel:
 
-	. = __system_reset_kernel + 0x100
+	. = __system_reset_kernel + 512
--- a/arch/powerpc/boot/ps3.c
+++ b/arch/powerpc/boot/ps3.c
@@ -27,10 +27,10 @@
 #include "page.h"
 #include "ops.h"
 
-extern s64 lv1_panic(u64 in_1);
-extern s64 lv1_get_logical_partition_id(u64 *out_1);
-extern s64 lv1_get_logical_ppe_id(u64 *out_1);
-extern s64 lv1_get_repository_node_value(u64 in_1, u64 in_2, u64 in_3,
+extern int lv1_panic(u64 in_1);
+extern int lv1_get_logical_partition_id(u64 *out_1);
+extern int lv1_get_logical_ppe_id(u64 *out_1);
+extern int lv1_get_repository_node_value(u64 in_1, u64 in_2, u64 in_3,
 	u64 in_4, u64 in_5, u64 *out_1, u64 *out_2);
 
 #ifdef DEBUG
@@ -46,6 +46,7 @@ BSS_STACK(4096);
  * edit the command line passed to vmlinux (by setting /chosen/bootargs).
  * The buffer is put in it's own section so that tools may locate it easier.
  */
+
 static char cmdline[COMMAND_LINE_SIZE]
 	__attribute__((__section__("__builtin_cmdline")));
 
@@ -75,7 +76,7 @@ static void ps3_exit(void)
 
 static int ps3_repository_read_rm_size(u64 *rm_size)
 {
-	s64 result;
+	int result;
 	u64 lpar_id;
 	u64 ppe_id;
 	u64 v2;
@@ -114,11 +115,11 @@ void ps3_copy_vectors(void)
 {
 	extern char __system_reset_kernel[];
 
-	memcpy((void *)0x100, __system_reset_kernel, 0x100);
-	flush_cache((void *)0x100, 0x100);
+	memcpy((void *)0x100, __system_reset_kernel, 512);
+	flush_cache((void *)0x100, 512);
 }
 
-void platform_init(void)
+void platform_init(unsigned long null_check)
 {
 	const u32 heapsize = 0x1000000 - (u32)_end; /* 16MiB */
 	void *chosen;
@@ -151,6 +152,10 @@ void platform_init(void)
 
 	printf(" flat tree at 0x%lx\n\r", ft_addr);
 
+	if (*(unsigned long *)0 != null_check)
+		printf("null check failed: %lx != %lx\n\r", *(unsigned long *)0,
+			(unsigned long)null_check);
+
 	((kernel_entry_t)0)(ft_addr, 0, NULL);
 
 	ps3_exit();
--- a/arch/powerpc/boot/wrapper
+++ b/arch/powerpc/boot/wrapper
@@ -298,15 +298,16 @@ treeboot*)
     exit 0
     ;;
 ps3)
-    # The ps3's loader supports loading gzipped binary images from flash
-    # rom to addr zero. The loader enters the image at addr 0x100.  A
-    # bootwrapper overlay is use to arrange for the kernel to be loaded
-    # to addr zero and to have a suitable bootwrapper entry at 0x100.
-    # To construct the rom image, 0x100 bytes from offset 0x100 in the
-    # kernel is copied to the bootwrapper symbol __system_reset_kernel.
-    # The 0x100 bytes at the bootwrapper symbol __system_reset_overlay is
-    # then copied to offset 0x100.  At runtime the bootwrapper program
-    # copies the 0x100 bytes at __system_reset_kernel to addr 0x100.
+    # The ps3's loader supports loading a gzipped binary image from flash
+    # rom to ram addr zero. The loader then enters the system reset
+    # vector at addr 0x100.  A bootwrapper overlay is used to arrange for
+    # a binary image of the kernel to be at addr zero, and yet have a
+    # suitable bootwrapper entry at 0x100.  To construct the final rom
+    # image 512 bytes from offset 0x100 is copied to the bootwrapper
+    # place holder at symbol __system_reset_kernel.  The 512 bytes of the
+    # bootwrapper entry code at symbol __system_reset_overlay is then
+    # copied to offset 0x100.  At runtime the bootwrapper program copies
+    # the data at __system_reset_kernel back to addr 0x100.
 
     system_reset_overlay=0x`${CROSS}nm "$ofile" \
         | grep ' __system_reset_overlay$'       \
@@ -317,7 +318,7 @@ ps3)
         | cut -d' ' -f1`
     system_reset_kernel=`printf "%d" $system_reset_kernel`
     overlay_dest="256"
-    overlay_size="256"
+    overlay_size="512"
 
     ${CROSS}objcopy -O binary "$ofile" "$ofile.bin"
 

-- 

^ permalink raw reply

* [patch 4/6] PS3: Save power in busy loops on halt
From: Geoff Levand @ 2008-03-27  0:38 UTC (permalink / raw)
  To: paulus; +Cc: Geert Uytterhoeven, linuxppc-dev
In-Reply-To: <20080327001821.827672589@am.sony.com>

From: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>

PS3 save power on halt:
  - Replace infinite busy loops by smarter loops calling
    lv1_pause() to save power.
  - Add ps3_halt() and ps3_sys_manager_halt().
  - Add __noreturn annotations.

Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
---
 arch/powerpc/platforms/ps3/setup.c |   12 +++++++++++-
 drivers/ps3/ps3-sys-manager.c      |   30 ++++++++++++++++++++----------
 drivers/ps3/sys-manager-core.c     |   16 ++++++++++------
 include/asm-powerpc/ps3.h          |    5 +++--
 4 files changed, 44 insertions(+), 19 deletions(-)

--- a/arch/powerpc/platforms/ps3/setup.c
+++ b/arch/powerpc/platforms/ps3/setup.c
@@ -95,6 +95,14 @@ static void ps3_power_off(void)
 	ps3_sys_manager_power_off(); /* never returns */
 }
 
+static void ps3_halt(void)
+{
+	DBG("%s:%d\n", __func__, __LINE__);
+
+	smp_send_stop();
+	ps3_sys_manager_halt(); /* never returns */
+}
+
 static void ps3_panic(char *str)
 {
 	DBG("%s:%d %s\n", __func__, __LINE__, str);
@@ -105,7 +113,8 @@ static void ps3_panic(char *str)
 	printk("   Please press POWER button.\n");
 	printk("\n");
 
-	while(1);
+	while(1)
+		lv1_pause(1);
 }
 
 #if defined(CONFIG_FB_PS3) || defined(CONFIG_FB_PS3_MODULE) || \
@@ -266,6 +275,7 @@ define_machine(ps3) {
 	.progress			= ps3_progress,
 	.restart			= ps3_restart,
 	.power_off			= ps3_power_off,
+	.halt				= ps3_halt,
 #if defined(CONFIG_KEXEC)
 	.kexec_cpu_down			= ps3_kexec_cpu_down,
 	.machine_kexec			= default_machine_kexec,
--- a/drivers/ps3/ps3-sys-manager.c
+++ b/drivers/ps3/ps3-sys-manager.c
@@ -24,6 +24,7 @@
 #include <linux/reboot.h>
 
 #include <asm/firmware.h>
+#include <asm/lv1call.h>
 #include <asm/ps3.h>
 
 #include "vuart.h"
@@ -581,6 +582,23 @@ fail_id:
 	return -EIO;
 }
 
+static void ps3_sys_manager_fin(struct ps3_system_bus_device *dev)
+{
+	ps3_sys_manager_send_request_shutdown(dev);
+
+	pr_emerg("System Halted, OK to turn off power\n");
+
+	while (ps3_sys_manager_handle_msg(dev)) {
+		/* pause until next DEC interrupt */
+		lv1_pause(0);
+	}
+
+	while (1) {
+		/* pause, ignoring DEC interrupt */
+		lv1_pause(1);
+	}
+}
+
 /**
  * ps3_sys_manager_final_power_off - The final platform machine_power_off routine.
  *
@@ -602,12 +620,8 @@ static void ps3_sys_manager_final_power_
 
 	ps3_sys_manager_send_next_op(dev, PS3_SM_NEXT_OP_SYS_SHUTDOWN,
 		PS3_SM_WAKE_DEFAULT);
-	ps3_sys_manager_send_request_shutdown(dev);
-
-	pr_emerg("System Halted, OK to turn off power\n");
 
-	while (1)
-		ps3_sys_manager_handle_msg(dev);
+	ps3_sys_manager_fin(dev);
 }
 
 /**
@@ -639,12 +653,8 @@ static void ps3_sys_manager_final_restar
 	ps3_sys_manager_send_attr(dev, 0);
 	ps3_sys_manager_send_next_op(dev, PS3_SM_NEXT_OP_SYS_REBOOT,
 		PS3_SM_WAKE_DEFAULT);
-	ps3_sys_manager_send_request_shutdown(dev);
-
-	pr_emerg("System Halted, OK to turn off power\n");
 
-	while (1)
-		ps3_sys_manager_handle_msg(dev);
+	ps3_sys_manager_fin(dev);
 }
 
 /**
--- a/drivers/ps3/sys-manager-core.c
+++ b/drivers/ps3/sys-manager-core.c
@@ -19,6 +19,7 @@
  */
 
 #include <linux/kernel.h>
+#include <asm/lv1call.h>
 #include <asm/ps3.h>
 
 /**
@@ -50,10 +51,7 @@ void ps3_sys_manager_power_off(void)
 	if (ps3_sys_manager_ops.power_off)
 		ps3_sys_manager_ops.power_off(ps3_sys_manager_ops.dev);
 
-	printk(KERN_EMERG "System Halted, OK to turn off power\n");
-	local_irq_disable();
-	while (1)
-		(void)0;
+	ps3_sys_manager_halt();
 }
 
 void ps3_sys_manager_restart(void)
@@ -61,8 +59,14 @@ void ps3_sys_manager_restart(void)
 	if (ps3_sys_manager_ops.restart)
 		ps3_sys_manager_ops.restart(ps3_sys_manager_ops.dev);
 
-	printk(KERN_EMERG "System Halted, OK to turn off power\n");
+	ps3_sys_manager_halt();
+}
+
+void ps3_sys_manager_halt(void)
+{
+	pr_emerg("System Halted, OK to turn off power\n");
 	local_irq_disable();
 	while (1)
-		(void)0;
+		lv1_pause(1);
 }
+
--- a/include/asm-powerpc/ps3.h
+++ b/include/asm-powerpc/ps3.h
@@ -434,8 +434,9 @@ struct ps3_sys_manager_ops {
 };
 
 void ps3_sys_manager_register_ops(const struct ps3_sys_manager_ops *ops);
-void ps3_sys_manager_power_off(void);
-void ps3_sys_manager_restart(void);
+void __noreturn ps3_sys_manager_power_off(void);
+void __noreturn ps3_sys_manager_restart(void);
+void __noreturn ps3_sys_manager_halt(void);
 
 struct ps3_prealloc {
     const char *name;

-- 

^ permalink raw reply

* [patch 5/6] PS3: Sys-manager Wake-on-LAN support
From: Geoff Levand @ 2008-03-27  0:39 UTC (permalink / raw)
  To: paulus; +Cc: linuxppc-dev, jgarzik
In-Reply-To: <20080327001821.827672589@am.sony.com>

Add Wake-on-LAN support to the PS3 system-manager.  Other OS WOL
support was introduced in PS3 system firmware 2.20.

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
---
 drivers/ps3/ps3-sys-manager.c |   46 ++++++++++++++++++++++++++++++++++++++++--
 include/asm-powerpc/ps3.h     |    2 +
 2 files changed, 46 insertions(+), 2 deletions(-)

--- a/drivers/ps3/ps3-sys-manager.c
+++ b/drivers/ps3/ps3-sys-manager.c
@@ -188,6 +188,7 @@ enum ps3_sys_manager_next_op {
  * controller, and bluetooth controller.
  * @PS3_SM_WAKE_RTC:
  * @PS3_SM_WAKE_RTC_ERROR:
+ * @PS3_SM_WAKE_W_O_L: Ether or wireless LAN.
  * @PS3_SM_WAKE_P_O_R: Power on reset.
  *
  * Additional wakeup sources when specifying PS3_SM_NEXT_OP_SYS_SHUTDOWN.
@@ -201,10 +202,19 @@ enum ps3_sys_manager_wake_source {
 	PS3_SM_WAKE_DEFAULT   = 0,
 	PS3_SM_WAKE_RTC       = 0x00000040,
 	PS3_SM_WAKE_RTC_ERROR = 0x00000080,
+	PS3_SM_WAKE_W_O_L     = 0x00000400,
 	PS3_SM_WAKE_P_O_R     = 0x80000000,
 };
 
 /**
+ * user_wake_sources - User specified wakeup sources.
+ *
+ * Logical OR of enum ps3_sys_manager_wake_source types.
+ */
+
+static u32 user_wake_sources = PS3_SM_WAKE_DEFAULT;
+
+/**
  * enum ps3_sys_manager_cmd - Command from system manager to guest.
  *
  * The guest completes the actions needed, then acks or naks the command via
@@ -619,7 +629,7 @@ static void ps3_sys_manager_final_power_
 	ps3_vuart_cancel_async(dev);
 
 	ps3_sys_manager_send_next_op(dev, PS3_SM_NEXT_OP_SYS_SHUTDOWN,
-		PS3_SM_WAKE_DEFAULT);
+		user_wake_sources);
 
 	ps3_sys_manager_fin(dev);
 }
@@ -652,12 +662,44 @@ static void ps3_sys_manager_final_restar
 
 	ps3_sys_manager_send_attr(dev, 0);
 	ps3_sys_manager_send_next_op(dev, PS3_SM_NEXT_OP_SYS_REBOOT,
-		PS3_SM_WAKE_DEFAULT);
+		user_wake_sources);
 
 	ps3_sys_manager_fin(dev);
 }
 
 /**
+ * ps3_sys_manager_get_wol - Get wake-on-lan setting.
+ */
+
+int ps3_sys_manager_get_wol(void)
+{
+	pr_debug("%s:%d\n", __func__, __LINE__);
+
+	return (user_wake_sources & PS3_SM_WAKE_W_O_L) != 0;
+}
+EXPORT_SYMBOL_GPL(ps3_sys_manager_get_wol);
+
+/**
+ * ps3_sys_manager_set_wol - Set wake-on-lan setting.
+ */
+
+void ps3_sys_manager_set_wol(int state)
+{
+	static DEFINE_MUTEX(mutex);
+
+	mutex_lock(&mutex);
+
+	pr_debug("%s:%d: %d\n", __func__, __LINE__, state);
+
+	if (state)
+		user_wake_sources |= PS3_SM_WAKE_W_O_L;
+	else
+		user_wake_sources &= ~PS3_SM_WAKE_W_O_L;
+	mutex_unlock(&mutex);
+}
+EXPORT_SYMBOL_GPL(ps3_sys_manager_set_wol);
+
+/**
  * ps3_sys_manager_work - Asynchronous read handler.
  *
  * Signaled when PS3_SM_RX_MSG_LEN_MIN bytes arrive at the vuart port.
--- a/include/asm-powerpc/ps3.h
+++ b/include/asm-powerpc/ps3.h
@@ -437,6 +437,8 @@ void ps3_sys_manager_register_ops(const 
 void __noreturn ps3_sys_manager_power_off(void);
 void __noreturn ps3_sys_manager_restart(void);
 void __noreturn ps3_sys_manager_halt(void);
+int ps3_sys_manager_get_wol(void);
+void ps3_sys_manager_set_wol(int state);
 
 struct ps3_prealloc {
     const char *name;

-- 

^ permalink raw reply

* [patch 6/6] PS3: Gelic network driver Wake-on-LAN support
From: Geoff Levand @ 2008-03-27  0:39 UTC (permalink / raw)
  To: paulus; +Cc: linuxppc-dev, jgarzik
In-Reply-To: <20080327001821.827672589@am.sony.com>

From: Masakazu Mokuno <mokuno@sm.sony.co.jp>

Add Wake-on-LAN support to the PS3 Gelic network driver.
Other OS WOL support was introduced in PS3 system firmware
2.20.

Signed-off-by: Masakazu Mokuno <mokuno@sm.sony.co.jp>
Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
---
 drivers/net/ps3_gelic_net.c |   81 ++++++++++++++++++++++++++++++++++++++++++++
 drivers/net/ps3_gelic_net.h |   20 ++++++++++
 2 files changed, 101 insertions(+)

--- a/drivers/net/ps3_gelic_net.c
+++ b/drivers/net/ps3_gelic_net.c
@@ -1266,6 +1266,85 @@ int gelic_net_set_rx_csum(struct net_dev
 	return 0;
 }
 
+static void gelic_net_get_wol(struct net_device *netdev,
+			      struct ethtool_wolinfo *wol)
+{
+	if (0 <= ps3_compare_firmware_version(2, 2, 0))
+		wol->supported = WAKE_MAGIC;
+	else
+		wol->supported = 0;
+
+	wol->wolopts = ps3_sys_manager_get_wol() ? wol->supported : 0;
+	memset(&wol->sopass, 0, sizeof(wol->sopass));
+}
+static int gelic_net_set_wol(struct net_device *netdev,
+			     struct ethtool_wolinfo *wol)
+{
+	int status;
+	struct gelic_card *card;
+	u64 v1, v2;
+
+	if (ps3_compare_firmware_version(2, 2, 0) < 0 ||
+	    !capable(CAP_NET_ADMIN))
+		return -EPERM;
+
+	if (wol->wolopts & ~WAKE_MAGIC)
+		return -EINVAL;
+
+	card = netdev_card(netdev);
+	if (wol->wolopts & WAKE_MAGIC) {
+		status = lv1_net_control(bus_id(card), dev_id(card),
+					 GELIC_LV1_SET_WOL,
+					 GELIC_LV1_WOL_MAGIC_PACKET,
+					 0, GELIC_LV1_WOL_MP_ENABLE,
+					 &v1, &v2);
+		if (status) {
+			pr_info("%s: enabling WOL failed %d\n", __func__,
+				status);
+			status = -EIO;
+			goto done;
+		}
+		status = lv1_net_control(bus_id(card), dev_id(card),
+					 GELIC_LV1_SET_WOL,
+					 GELIC_LV1_WOL_ADD_MATCH_ADDR,
+					 0, GELIC_LV1_WOL_MATCH_ALL,
+					 &v1, &v2);
+		if (!status)
+			ps3_sys_manager_set_wol(1);
+		else {
+			pr_info("%s: enabling WOL filter failed %d\n",
+				__func__, status);
+			status = -EIO;
+		}
+	} else {
+		status = lv1_net_control(bus_id(card), dev_id(card),
+					 GELIC_LV1_SET_WOL,
+					 GELIC_LV1_WOL_MAGIC_PACKET,
+					 0, GELIC_LV1_WOL_MP_DISABLE,
+					 &v1, &v2);
+		if (status) {
+			pr_info("%s: disabling WOL failed %d\n", __func__,
+				status);
+			status = -EIO;
+			goto done;
+		}
+		status = lv1_net_control(bus_id(card), dev_id(card),
+					 GELIC_LV1_SET_WOL,
+					 GELIC_LV1_WOL_DELETE_MATCH_ADDR,
+					 0, GELIC_LV1_WOL_MATCH_ALL,
+					 &v1, &v2);
+		if (!status)
+			ps3_sys_manager_set_wol(0);
+		else {
+			pr_info("%s: removing WOL filter failed %d\n",
+				__func__, status);
+			status = -EIO;
+		}
+	}
+done:
+	return status;
+}
+
 static struct ethtool_ops gelic_ether_ethtool_ops = {
 	.get_drvinfo	= gelic_net_get_drvinfo,
 	.get_settings	= gelic_ether_get_settings,
@@ -1274,6 +1353,8 @@ static struct ethtool_ops gelic_ether_et
 	.set_tx_csum	= ethtool_op_set_tx_csum,
 	.get_rx_csum	= gelic_net_get_rx_csum,
 	.set_rx_csum	= gelic_net_set_rx_csum,
+	.get_wol	= gelic_net_get_wol,
+	.set_wol	= gelic_net_set_wol,
 };
 
 /**
--- a/drivers/net/ps3_gelic_net.h
+++ b/drivers/net/ps3_gelic_net.h
@@ -182,12 +182,32 @@ enum gelic_lv1_net_control_code {
 	GELIC_LV1_GET_ETH_PORT_STATUS	= 2,
 	GELIC_LV1_SET_NEGOTIATION_MODE	= 3,
 	GELIC_LV1_GET_VLAN_ID		= 4,
+	GELIC_LV1_SET_WOL		= 5,
 	GELIC_LV1_GET_CHANNEL           = 6,
 	GELIC_LV1_POST_WLAN_CMD		= 9,
 	GELIC_LV1_GET_WLAN_CMD_RESULT	= 10,
 	GELIC_LV1_GET_WLAN_EVENT	= 11
 };
 
+/* for GELIC_LV1_SET_WOL */
+enum gelic_lv1_wol_command {
+	GELIC_LV1_WOL_MAGIC_PACKET	= 1,
+	GELIC_LV1_WOL_ADD_MATCH_ADDR	= 6,
+	GELIC_LV1_WOL_DELETE_MATCH_ADDR	= 7,
+};
+
+/* for GELIC_LV1_WOL_MAGIC_PACKET */
+enum gelic_lv1_wol_mp_arg {
+	GELIC_LV1_WOL_MP_DISABLE	= 0,
+	GELIC_LV1_WOL_MP_ENABLE		= 1,
+};
+
+/* for GELIC_LV1_WOL_{ADD,DELETE}_MATCH_ADDR */
+enum gelic_lv1_wol_match_arg {
+	GELIC_LV1_WOL_MATCH_INDIVIDUAL	= 0,
+	GELIC_LV1_WOL_MATCH_ALL		= 1,
+};
+
 /* status returened from GET_ETH_PORT_STATUS */
 enum gelic_lv1_ether_port_status {
 	GELIC_LV1_ETHER_LINK_UP		= 0x0000000000000001L,

-- 

^ permalink raw reply

* Re: [patch 5/6] PS3: Sys-manager Wake-on-LAN support
From: Benjamin Herrenschmidt @ 2008-03-27  0:53 UTC (permalink / raw)
  To: Geoff Levand; +Cc: linuxppc-dev, paulus, jgarzik
In-Reply-To: <47EAECA8.5030707@am.sony.com>


On Wed, 2008-03-26 at 17:39 -0700, Geoff Levand wrote:
> Add Wake-on-LAN support to the PS3 system-manager.  Other OS WOL
> support was introduced in PS3 system firmware 2.20.

There is no sleep in the first place tho :-) Or does this power it up /
boot it using WoL packets ?

Cheers,
Ben.

> Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
> ---
>  drivers/ps3/ps3-sys-manager.c |   46 ++++++++++++++++++++++++++++++++++++++++--
>  include/asm-powerpc/ps3.h     |    2 +
>  2 files changed, 46 insertions(+), 2 deletions(-)
> 
> --- a/drivers/ps3/ps3-sys-manager.c
> +++ b/drivers/ps3/ps3-sys-manager.c
> @@ -188,6 +188,7 @@ enum ps3_sys_manager_next_op {
>   * controller, and bluetooth controller.
>   * @PS3_SM_WAKE_RTC:
>   * @PS3_SM_WAKE_RTC_ERROR:
> + * @PS3_SM_WAKE_W_O_L: Ether or wireless LAN.
>   * @PS3_SM_WAKE_P_O_R: Power on reset.
>   *
>   * Additional wakeup sources when specifying PS3_SM_NEXT_OP_SYS_SHUTDOWN.
> @@ -201,10 +202,19 @@ enum ps3_sys_manager_wake_source {
>  	PS3_SM_WAKE_DEFAULT   = 0,
>  	PS3_SM_WAKE_RTC       = 0x00000040,
>  	PS3_SM_WAKE_RTC_ERROR = 0x00000080,
> +	PS3_SM_WAKE_W_O_L     = 0x00000400,
>  	PS3_SM_WAKE_P_O_R     = 0x80000000,
>  };
>  
>  /**
> + * user_wake_sources - User specified wakeup sources.
> + *
> + * Logical OR of enum ps3_sys_manager_wake_source types.
> + */
> +
> +static u32 user_wake_sources = PS3_SM_WAKE_DEFAULT;
> +
> +/**
>   * enum ps3_sys_manager_cmd - Command from system manager to guest.
>   *
>   * The guest completes the actions needed, then acks or naks the command via
> @@ -619,7 +629,7 @@ static void ps3_sys_manager_final_power_
>  	ps3_vuart_cancel_async(dev);
>  
>  	ps3_sys_manager_send_next_op(dev, PS3_SM_NEXT_OP_SYS_SHUTDOWN,
> -		PS3_SM_WAKE_DEFAULT);
> +		user_wake_sources);
>  
>  	ps3_sys_manager_fin(dev);
>  }
> @@ -652,12 +662,44 @@ static void ps3_sys_manager_final_restar
>  
>  	ps3_sys_manager_send_attr(dev, 0);
>  	ps3_sys_manager_send_next_op(dev, PS3_SM_NEXT_OP_SYS_REBOOT,
> -		PS3_SM_WAKE_DEFAULT);
> +		user_wake_sources);
>  
>  	ps3_sys_manager_fin(dev);
>  }
>  
>  /**
> + * ps3_sys_manager_get_wol - Get wake-on-lan setting.
> + */
> +
> +int ps3_sys_manager_get_wol(void)
> +{
> +	pr_debug("%s:%d\n", __func__, __LINE__);
> +
> +	return (user_wake_sources & PS3_SM_WAKE_W_O_L) != 0;
> +}
> +EXPORT_SYMBOL_GPL(ps3_sys_manager_get_wol);
> +
> +/**
> + * ps3_sys_manager_set_wol - Set wake-on-lan setting.
> + */
> +
> +void ps3_sys_manager_set_wol(int state)
> +{
> +	static DEFINE_MUTEX(mutex);
> +
> +	mutex_lock(&mutex);
> +
> +	pr_debug("%s:%d: %d\n", __func__, __LINE__, state);
> +
> +	if (state)
> +		user_wake_sources |= PS3_SM_WAKE_W_O_L;
> +	else
> +		user_wake_sources &= ~PS3_SM_WAKE_W_O_L;
> +	mutex_unlock(&mutex);
> +}
> +EXPORT_SYMBOL_GPL(ps3_sys_manager_set_wol);
> +
> +/**
>   * ps3_sys_manager_work - Asynchronous read handler.
>   *
>   * Signaled when PS3_SM_RX_MSG_LEN_MIN bytes arrive at the vuart port.
> --- a/include/asm-powerpc/ps3.h
> +++ b/include/asm-powerpc/ps3.h
> @@ -437,6 +437,8 @@ void ps3_sys_manager_register_ops(const 
>  void __noreturn ps3_sys_manager_power_off(void);
>  void __noreturn ps3_sys_manager_restart(void);
>  void __noreturn ps3_sys_manager_halt(void);
> +int ps3_sys_manager_get_wol(void);
> +void ps3_sys_manager_set_wol(int state);
>  
>  struct ps3_prealloc {
>      const char *name;
> 

^ permalink raw reply

* Re: [patch 5/6] PS3: Sys-manager Wake-on-LAN support
From: Geoff Levand @ 2008-03-27  1:04 UTC (permalink / raw)
  To: benh; +Cc: linuxppc-dev, paulus, jgarzik
In-Reply-To: <1206579226.6926.64.camel@pasglop>

Hi,

Benjamin Herrenschmidt wrote:
> On Wed, 2008-03-26 at 17:39 -0700, Geoff Levand wrote:
>> Add Wake-on-LAN support to the PS3 system-manager.  Other OS WOL
>> support was introduced in PS3 system firmware 2.20.
> 
> There is no sleep in the first place tho :-) Or does this power it up /
> boot it using WoL packets ?

Whenever that red light in ON in the front, the system is in 'stand by'
mode.  If you setup WOL before entering standby mode (by using linux
poweroff command, pressing the power button, etc.), you can wake it up:

  On ps3
  # ethtool -s eth0 wol g
  # shutdown -h now

  by remote host (eth1 is connected to the subnet which PS3 resides in)
  # etherwake -i eth1 aa:bb:cc:dd:ee:ff


I plan to send out a how-to to the ceb-oss-dev ML in the next day or so.

-Geoff

^ permalink raw reply

* Re: ppc platform for AMCC-440EPx - ELDK to the rescue
From: Josh Boyer @ 2008-03-27  1:03 UTC (permalink / raw)
  To: Dave Cogley; +Cc: linuxppc-embedded
In-Reply-To: <006e01c88f94$9dafe020$2001a8c0@DCOGLEYNEW>

On Wed, 26 Mar 2008 15:56:23 -0700
"Dave Cogley" <dcogley@uslinc.com> wrote:

> Wolfgang,
> 
> Could you provide an explanation between the two architectures in the ELDK?
> 
> 
> I am also using a Sequoia "spin off" and am trying to determine why I would
> want to use the "powerpc" architecture vs. the "ppc" architecture.  

arch/ppc is being removed entirely from the kernel.org kernels in June.

josh

^ permalink raw reply

* Re: ppc platform for AMCC-440EPx - ELDK to the rescue
From: Josh Boyer @ 2008-03-27  1:08 UTC (permalink / raw)
  To: Steve Heflin; +Cc: linuxppc-embedded
In-Reply-To: <20080326130837.762DBDE2FB@ozlabs.org>

On Wed, 26 Mar 2008 09:08:03 -0400
Steve Heflin <sheflin@newagemicro.com> wrote:

>  FINALLY the 
> early debugging console output worked, which doesn't work at all 
> using the powerpc platform (and yes, I had the correct port address 
> configured). 

It should work.  It did when the board support was first brought in to
arch/powerpc. If it doesn't now, I consider that a regression that needs
fixing, at least for Sequoia itself.
 
> Looking back at the powerpc platform, I don't see how to disable the 
> Host Bridge initialization without disabling the entire PCI 
> bus.  This board does have 2 devices hooked on the PCI bus, just no 
> need for a Host Bridge.

As Scott said, how would you talk to any PCI device without the host
bridge being configured and enabled?

> Also, I fail to see what the DTS virtualization layer of the hardware 
> buys us. When debugging, it's so much harder to use than the ppc 
> platform's straight forward and standard methodologies.  I can't 

There are tradeoffs, yes.

> understand to goal to eliminate the ppc platform, especially given 
> the fact that DENX's ELDK is still using it with Linux 2.6.24.2 !!

The ELDK uses both arch/ppc and arch/powerpc.  I consider them quite
reasonable people, and foresee them eventually switching to
arch/powerpc over time.  In fact, their efforts are a large part of the
continued progress of 4xx on arch/powerpc.

josh

^ permalink raw reply

* Re: PPC upstream kernel ignored DABR bug
From: Josh Boyer @ 2008-03-27  1:47 UTC (permalink / raw)
  To: Josh Boyer
  Cc: Arnd Bergmann, linuxppc-dev, Paul Mackerras, Jan, Kratochvil,
	Roland McGrath
In-Reply-To: <20080326155732.6b01240f@zod.rchland.ibm.com>

On Wed, 26 Mar 2008 15:57:32 -0500
Josh Boyer <jwboyer@linux.vnet.ibm.com> wrote:

> On Wed, 12 Mar 2008 18:47:45 -0700 (PDT)
> Roland McGrath <roland@redhat.com> wrote:
> 
> > The only machine I have at home for testing powerpc is an Apple G5,
> > supplied to me by IBM.  It says:
> > 	cpu             : PPC970FX, altivec supported
> > 	revision        : 3.0 (pvr 003c 0300)
> > so I am guessing this document applies to the chips I have.  Since I can't
> > test on other chips myself, it is plausible from what I've seen that there
> > is no mysterious kernel problem and only this hardware problem.  The
> > description of the hardware problem would not make me think that it would
> > behave this way, but it is not very detailed or precise, or at least does
> > not seem so to a reader not expert on powerpc.
> 
> I ran the testcase on my older G5 today with:
> 
> cpu             : PPC970, altivec supported
> revision        : 2.2 (pvr 0039 0202)
> 
> and it also failed after a few iterations.  This was with
> 2.6.25-0.121.rc5.git4.fc9 as the kernel, which is fairly close to mainline.  At the least, this doesn't seem to be 970FX related.  I'll try building a vanilla 2.6.25-rc7 later this evening to see if that makes a difference.

Still failed with a -vanilla build of 2.6.25-rc7.

josh

^ permalink raw reply

* 回复: Could PowerPC(IBM power blade,  js 21, 8844) boot via usb key?
From: Kelvin Lin @ 2008-03-27  1:54 UTC (permalink / raw)
  To: linuxppc-dev
In-Reply-To: <680109.97825.qm@web45304.mail.sp1.yahoo.com>

[-- Attachment #1: Type: text/plain, Size: 1920 bytes --]

Does anyone know about it?
   
  Thanks a lot.

Kelvin Lin <kelvin_q_lin@yahoo.com> 写道:
    Hi guys,
   
  I created a PReP partition in usb key and then did "dd" and something like that to configure yaboot on it.
   
  But the key point is that, when I boot power blade, there is not usb key in the bootable list. I mean, there are just:
   1.        -      Ethernet
                  ( loc=U788D.001.99DXC6K-P1-T7 )
 2.        -      Ethernet
                  ( loc=U788D.001.99DXC6K-P1-T8 )
 3.        -      USB CD-ROM
                  ( loc=U788D.001.99DXC6K-P1-T1-L1-L3 )
 4.        1      SCSI 36401 MB Harddisk, part=1 ()
                  ( loc=U788D.001.99DXC6K-P1-T10-L1-L0 )
   
  My usb key is Kingston's DataTraveler 2GB.
   
  Then I change another Sandisk cruzer 2GB usb key, it shows as follows in the boot menu:
   
   1.        -      Ethernet
                  ( loc=U788D.001.99DXC6K-P1-T7 )
 2.        -      Ethernet
                  ( loc=U788D.001.99DXC6K-P1-T8 )
 3.        -      USB CD-ROM
                  ( loc=U788D.001.99DXC6K-P1-T1-L1-L3 )
 4.        1      SCSI 36401 MB Harddisk, part=1 ()
                  ( loc=U788D.001.99DXC6K-P1-T10-L1-L0 )
 5.        -      USB CD-ROM
                  ( loc=U788D.001.99DXC6K-P1-T1-L1-L2-L1-L0 )

  But this item 5 USB CD-ROM is simulated by Sandisk, not the actual usb key. I can't boot my server via item 5.
   
  Could IBM power blade, js 21, 8844 boot via usb key? If not, could you please provide official doc to prove it. Because I have to persuade my boss to give up it. -:)
   
  Any comment is appreciated. Thanks a lot in advanced.
   
  Kelvin.
    
---------------------------------
  雅虎邮箱,您的终生邮箱!_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

       
---------------------------------
 雅虎邮箱,您的终生邮箱!

[-- Attachment #2: Type: text/html, Size: 3802 bytes --]

^ permalink raw reply

* [PATCH] [POWERPC] Remove CONFIG_PCI_LEGACY from pasemi_defconfig
From: Stephen Rothwell @ 2008-03-27  3:27 UTC (permalink / raw)
  To: Olof Johansson; +Cc: ppc-dev

This should eliminate several build warnings and only removes the
possibility of building some ISDN drivers that we don't build anyway.

It was done by copying pasemi_defconfig to .config, removing
CONFIG_PCI_LEGACY, running make oldconfig and taking the defaults for
everything except CONFIG_PCI_LEGACY.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 arch/powerpc/configs/pasemi_defconfig |  139 ++++++++++++++++++++++-----------
 1 files changed, 93 insertions(+), 46 deletions(-)

Olof,  you should review this carefully to see if anything got turned off
that you need (e.g. CONFIG_MTD_NAND_PASEMI) or turned on that you don't
want (e.g. "Conflicting RTC option has been selected, check GEN_RTC and
RTC").  I have built this config.  This patch is on top of the powerpc
master tree.

diff --git a/arch/powerpc/configs/pasemi_defconfig b/arch/powerpc/configs/pasemi_defconfig
index 797f0df..419ca4e 100644
--- a/arch/powerpc/configs/pasemi_defconfig
+++ b/arch/powerpc/configs/pasemi_defconfig
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.24-rc6
-# Tue Jan 15 10:26:10 2008
+# Linux kernel version: 2.6.25-rc6
+# Thu Mar 27 13:56:20 2008
 #
 CONFIG_PPC64=y
 
@@ -27,6 +27,7 @@ CONFIG_GENERIC_TIME=y
 CONFIG_GENERIC_TIME_VSYSCALL=y
 CONFIG_GENERIC_CLOCKEVENTS=y
 CONFIG_GENERIC_HARDIRQS=y
+CONFIG_HAVE_SETUP_PER_CPU_AREA=y
 CONFIG_IRQ_PER_CPU=y
 CONFIG_RWSEM_XCHGADD_ALGORITHM=y
 CONFIG_ARCH_HAS_ILOG2_U32=y
@@ -67,17 +68,23 @@ CONFIG_SYSVIPC_SYSCTL=y
 # CONFIG_POSIX_MQUEUE is not set
 # CONFIG_BSD_PROCESS_ACCT is not set
 # CONFIG_TASKSTATS is not set
-# CONFIG_USER_NS is not set
-# CONFIG_PID_NS is not set
 # CONFIG_AUDIT is not set
 # CONFIG_IKCONFIG is not set
 CONFIG_LOG_BUF_SHIFT=17
 # CONFIG_CGROUPS is not set
+CONFIG_GROUP_SCHED=y
 CONFIG_FAIR_GROUP_SCHED=y
-CONFIG_FAIR_USER_SCHED=y
-# CONFIG_FAIR_CGROUP_SCHED is not set
+# CONFIG_RT_GROUP_SCHED is not set
+CONFIG_USER_SCHED=y
+# CONFIG_CGROUP_SCHED is not set
 CONFIG_SYSFS_DEPRECATED=y
+CONFIG_SYSFS_DEPRECATED_V2=y
 # CONFIG_RELAY is not set
+CONFIG_NAMESPACES=y
+# CONFIG_UTS_NS is not set
+# CONFIG_IPC_NS is not set
+# CONFIG_USER_NS is not set
+# CONFIG_PID_NS is not set
 CONFIG_BLK_DEV_INITRD=y
 CONFIG_INITRAMFS_SOURCE=""
 # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
@@ -91,11 +98,13 @@ CONFIG_HOTPLUG=y
 CONFIG_PRINTK=y
 CONFIG_BUG=y
 CONFIG_ELF_CORE=y
+CONFIG_COMPAT_BRK=y
 CONFIG_BASE_FULL=y
 CONFIG_FUTEX=y
 CONFIG_ANON_INODES=y
 CONFIG_EPOLL=y
 CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
 CONFIG_EVENTFD=y
 CONFIG_SHMEM=y
 CONFIG_VM_EVENT_COUNTERS=y
@@ -103,6 +112,15 @@ CONFIG_SLUB_DEBUG=y
 # CONFIG_SLAB is not set
 CONFIG_SLUB=y
 # CONFIG_SLOB is not set
+CONFIG_PROFILING=y
+# CONFIG_MARKERS is not set
+CONFIG_OPROFILE=y
+CONFIG_HAVE_OPROFILE=y
+# CONFIG_KPROBES is not set
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_PROC_PAGE_MONITOR=y
+CONFIG_SLABINFO=y
 CONFIG_RT_MUTEXES=y
 # CONFIG_TINY_SHMEM is not set
 CONFIG_BASE_SMALL=0
@@ -130,6 +148,7 @@ CONFIG_DEFAULT_AS=y
 # CONFIG_DEFAULT_CFQ is not set
 # CONFIG_DEFAULT_NOOP is not set
 CONFIG_DEFAULT_IOSCHED="anticipatory"
+CONFIG_CLASSIC_RCU=y
 
 #
 # Platform support
@@ -140,8 +159,8 @@ CONFIG_PPC_MULTIPLATFORM=y
 # CONFIG_PPC_86xx is not set
 # CONFIG_PPC_PSERIES is not set
 # CONFIG_PPC_ISERIES is not set
-# CONFIG_PPC_MPC52xx is not set
-# CONFIG_PPC_MPC5200 is not set
+# CONFIG_PPC_MPC512x is not set
+# CONFIG_PPC_MPC5121 is not set
 # CONFIG_PPC_PMAC is not set
 # CONFIG_PPC_MAPLE is not set
 CONFIG_PPC_PASEMI=y
@@ -159,6 +178,7 @@ CONFIG_PPC_PASEMI_MDIO=y
 # CONFIG_PPC_IBM_CELL_BLADE is not set
 # CONFIG_PQ2ADS is not set
 CONFIG_PPC_NATIVE=y
+# CONFIG_IPIC is not set
 CONFIG_MPIC=y
 # CONFIG_MPIC_WEIRD is not set
 # CONFIG_PPC_I8259 is not set
@@ -189,7 +209,6 @@ CONFIG_CPU_FREQ_GOV_ONDEMAND=y
 # CPU Frequency drivers
 #
 CONFIG_PPC_PASEMI_CPUFREQ=y
-# CONFIG_CPM2 is not set
 # CONFIG_FSL_ULI1575 is not set
 
 #
@@ -204,16 +223,20 @@ CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
 # CONFIG_HZ_300 is not set
 CONFIG_HZ_1000=y
 CONFIG_HZ=1000
+# CONFIG_SCHED_HRTICK is not set
 CONFIG_PREEMPT_NONE=y
 # CONFIG_PREEMPT_VOLUNTARY is not set
 # CONFIG_PREEMPT is not set
-# CONFIG_PREEMPT_BKL is not set
 CONFIG_BINFMT_ELF=y
+CONFIG_COMPAT_BINFMT_ELF=y
 # CONFIG_BINFMT_MISC is not set
 CONFIG_FORCE_MAX_ZONEORDER=9
 CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y
 CONFIG_IOMMU_VMERGE=y
+CONFIG_IOMMU_HELPER=y
 CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
+CONFIG_ARCH_HAS_WALK_MEMORY=y
+CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
 # CONFIG_KEXEC is not set
 # CONFIG_CRASH_DUMP is not set
 # CONFIG_IRQ_ALL_CPUS is not set
@@ -236,12 +259,12 @@ CONFIG_ZONE_DMA_FLAG=1
 CONFIG_BOUNCE=y
 CONFIG_PPC_HAS_HASH_64K=y
 CONFIG_PPC_64K_PAGES=y
+# CONFIG_PPC_SUBPAGE_PROT is not set
 # CONFIG_SCHED_SMT is not set
 CONFIG_PROC_DEVICETREE=y
 # CONFIG_CMDLINE_BOOL is not set
 # CONFIG_PM is not set
 # CONFIG_SECCOMP is not set
-# CONFIG_WANT_DEVICE_TREE is not set
 CONFIG_ISA_DMA_API=y
 
 #
@@ -256,7 +279,7 @@ CONFIG_PCI_SYSCALL=y
 # CONFIG_PCIEPORTBUS is not set
 CONFIG_ARCH_SUPPORTS_MSI=y
 CONFIG_PCI_MSI=y
-CONFIG_PCI_LEGACY=y
+# CONFIG_PCI_LEGACY is not set
 # CONFIG_PCI_DEBUG is not set
 CONFIG_PCCARD=y
 CONFIG_PCMCIA_DEBUG=y
@@ -290,6 +313,7 @@ CONFIG_XFRM=y
 CONFIG_XFRM_USER=y
 # CONFIG_XFRM_SUB_POLICY is not set
 # CONFIG_XFRM_MIGRATE is not set
+# CONFIG_XFRM_STATISTICS is not set
 CONFIG_NET_KEY=y
 # CONFIG_NET_KEY_MIGRATE is not set
 CONFIG_INET=y
@@ -346,6 +370,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
 #
 # CONFIG_NET_PKTGEN is not set
 # CONFIG_HAMRADIO is not set
+# CONFIG_CAN is not set
 # CONFIG_IRDA is not set
 # CONFIG_BT is not set
 # CONFIG_AF_RXRPC is not set
@@ -441,8 +466,10 @@ CONFIG_MTD_NAND=y
 CONFIG_MTD_NAND_IDS=y
 # CONFIG_MTD_NAND_DISKONCHIP is not set
 # CONFIG_MTD_NAND_CAFE is not set
+# CONFIG_MTD_NAND_PASEMI is not set
 # CONFIG_MTD_NAND_PLATFORM is not set
 # CONFIG_MTD_ALAUDA is not set
+# CONFIG_MTD_NAND_FSL_ELBC is not set
 # CONFIG_MTD_ONENAND is not set
 
 #
@@ -465,7 +492,7 @@ CONFIG_BLK_DEV_LOOP=y
 CONFIG_BLK_DEV_RAM=y
 CONFIG_BLK_DEV_RAM_COUNT=16
 CONFIG_BLK_DEV_RAM_SIZE=16384
-CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
+# CONFIG_BLK_DEV_XIP is not set
 # CONFIG_CDROM_PKTCDVD is not set
 # CONFIG_ATA_OVER_ETH is not set
 CONFIG_MISC_DEVICES=y
@@ -473,11 +500,13 @@ CONFIG_MISC_DEVICES=y
 # CONFIG_EEPROM_93CX6 is not set
 # CONFIG_SGI_IOC4 is not set
 # CONFIG_TIFM_CORE is not set
+# CONFIG_ENCLOSURE_SERVICES is not set
+CONFIG_HAVE_IDE=y
 CONFIG_IDE=y
 CONFIG_BLK_DEV_IDE=y
 
 #
-# Please see Documentation/ide.txt for help/info on IDE drives
+# Please see Documentation/ide/ide.txt for help/info on IDE drives
 #
 # CONFIG_BLK_DEV_IDE_SATA is not set
 CONFIG_BLK_DEV_IDEDISK=y
@@ -485,6 +514,7 @@ CONFIG_IDEDISK_MULTI_MODE=y
 # CONFIG_BLK_DEV_IDECS is not set
 # CONFIG_BLK_DEV_DELKIN is not set
 CONFIG_BLK_DEV_IDECD=y
+CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
 # CONFIG_BLK_DEV_IDETAPE is not set
 # CONFIG_BLK_DEV_IDEFLOPPY is not set
 CONFIG_BLK_DEV_IDESCSI=y
@@ -500,7 +530,6 @@ CONFIG_IDE_PROC_FS=y
 #
 # PCI IDE chipsets support
 #
-# CONFIG_IDEPCI_PCIBUS_ORDER is not set
 # CONFIG_BLK_DEV_GENERIC is not set
 # CONFIG_BLK_DEV_OPTI621 is not set
 # CONFIG_BLK_DEV_AEC62XX is not set
@@ -528,7 +557,6 @@ CONFIG_IDE_PROC_FS=y
 # CONFIG_BLK_DEV_TRM290 is not set
 # CONFIG_BLK_DEV_VIA82CXXX is not set
 # CONFIG_BLK_DEV_TC86C001 is not set
-# CONFIG_IDE_ARM is not set
 # CONFIG_BLK_DEV_IDEDMA is not set
 CONFIG_IDE_ARCH_OBSOLETE_INIT=y
 # CONFIG_BLK_DEV_HD is not set
@@ -593,6 +621,7 @@ CONFIG_SCSI_LOWLEVEL=y
 # CONFIG_SCSI_IPS is not set
 # CONFIG_SCSI_INITIO is not set
 # CONFIG_SCSI_INIA100 is not set
+# CONFIG_SCSI_MVSAS is not set
 # CONFIG_SCSI_STEX is not set
 # CONFIG_SCSI_SYM53C8XX_2 is not set
 # CONFIG_SCSI_IPR is not set
@@ -646,6 +675,7 @@ CONFIG_ATA_GENERIC=y
 # CONFIG_PATA_MPIIX is not set
 # CONFIG_PATA_OLDPIIX is not set
 # CONFIG_PATA_NETCELL is not set
+# CONFIG_PATA_NINJA32 is not set
 # CONFIG_PATA_NS87410 is not set
 # CONFIG_PATA_NS87415 is not set
 # CONFIG_PATA_OPTI is not set
@@ -699,7 +729,6 @@ CONFIG_DUMMY=y
 # CONFIG_EQUALIZER is not set
 # CONFIG_TUN is not set
 # CONFIG_VETH is not set
-# CONFIG_IP1000 is not set
 # CONFIG_ARCNET is not set
 CONFIG_PHYLIB=y
 
@@ -715,6 +744,7 @@ CONFIG_MARVELL_PHY=y
 # CONFIG_SMSC_PHY is not set
 # CONFIG_BROADCOM_PHY is not set
 # CONFIG_ICPLUS_PHY is not set
+# CONFIG_REALTEK_PHY is not set
 # CONFIG_FIXED_PHY is not set
 # CONFIG_MDIO_BITBANG is not set
 CONFIG_NET_ETHERNET=y
@@ -742,6 +772,7 @@ CONFIG_NET_PCI=y
 # CONFIG_NE2K_PCI is not set
 # CONFIG_8139CP is not set
 # CONFIG_8139TOO is not set
+# CONFIG_R6040 is not set
 # CONFIG_SIS900 is not set
 # CONFIG_EPIC100 is not set
 # CONFIG_SUNDANCE is not set
@@ -754,6 +785,9 @@ CONFIG_E1000=y
 CONFIG_E1000_NAPI=y
 # CONFIG_E1000_DISABLE_PACKET_SPLIT is not set
 # CONFIG_E1000E is not set
+# CONFIG_E1000E_ENABLED is not set
+# CONFIG_IP1000 is not set
+# CONFIG_IGB is not set
 # CONFIG_NS83820 is not set
 # CONFIG_HAMACHI is not set
 # CONFIG_YELLOWFIN is not set
@@ -779,6 +813,7 @@ CONFIG_NETDEV_10000=y
 CONFIG_PASEMI_MAC=y
 # CONFIG_MLX4_CORE is not set
 # CONFIG_TEHUTI is not set
+# CONFIG_BNX2X is not set
 # CONFIG_TR is not set
 
 #
@@ -802,7 +837,6 @@ CONFIG_PASEMI_MAC=y
 # CONFIG_PPP is not set
 # CONFIG_SLIP is not set
 # CONFIG_NET_FC is not set
-# CONFIG_SHAPER is not set
 # CONFIG_NETCONSOLE is not set
 # CONFIG_NETPOLL is not set
 # CONFIG_NET_POLL_CONTROLLER is not set
@@ -861,6 +895,7 @@ CONFIG_VT_CONSOLE=y
 CONFIG_HW_CONSOLE=y
 # CONFIG_VT_HW_CONSOLE_BINDING is not set
 # CONFIG_SERIAL_NONSTANDARD is not set
+# CONFIG_NOZOMI is not set
 
 #
 # Serial drivers
@@ -897,6 +932,7 @@ CONFIG_GEN_RTC_X=y
 # CONFIG_SYNCLINK_CS is not set
 # CONFIG_CARDMAN_4000 is not set
 # CONFIG_CARDMAN_4040 is not set
+# CONFIG_IPWIRELESS is not set
 CONFIG_RAW_DRIVER=y
 CONFIG_MAX_RAW_DEVS=256
 # CONFIG_HANGCHECK_TIMER is not set
@@ -944,13 +980,12 @@ CONFIG_I2C_PASEMI=y
 #
 # Miscellaneous I2C Chip support
 #
-# CONFIG_SENSORS_DS1337 is not set
-# CONFIG_SENSORS_DS1374 is not set
 # CONFIG_DS1682 is not set
 CONFIG_SENSORS_EEPROM=y
 # CONFIG_SENSORS_PCF8574 is not set
-# CONFIG_SENSORS_PCA9539 is not set
+# CONFIG_PCF8575 is not set
 # CONFIG_SENSORS_PCF8591 is not set
+# CONFIG_TPS65010 is not set
 # CONFIG_SENSORS_MAX6875 is not set
 # CONFIG_SENSORS_TSL2550 is not set
 # CONFIG_I2C_DEBUG_CORE is not set
@@ -975,6 +1010,7 @@ CONFIG_HWMON_VID=y
 # CONFIG_SENSORS_ADM1031 is not set
 # CONFIG_SENSORS_ADM9240 is not set
 # CONFIG_SENSORS_ADT7470 is not set
+# CONFIG_SENSORS_ADT7473 is not set
 # CONFIG_SENSORS_ATXP1 is not set
 # CONFIG_SENSORS_DS1621 is not set
 # CONFIG_SENSORS_I5K_AMB is not set
@@ -1004,6 +1040,7 @@ CONFIG_SENSORS_LM90=y
 # CONFIG_SENSORS_SMSC47M1 is not set
 # CONFIG_SENSORS_SMSC47M192 is not set
 # CONFIG_SENSORS_SMSC47B397 is not set
+# CONFIG_SENSORS_ADS7828 is not set
 # CONFIG_SENSORS_THMC50 is not set
 # CONFIG_SENSORS_VIA686A is not set
 # CONFIG_SENSORS_VT1211 is not set
@@ -1013,9 +1050,11 @@ CONFIG_SENSORS_LM90=y
 # CONFIG_SENSORS_W83792D is not set
 # CONFIG_SENSORS_W83793 is not set
 # CONFIG_SENSORS_W83L785TS is not set
+# CONFIG_SENSORS_W83L786NG is not set
 # CONFIG_SENSORS_W83627HF is not set
 # CONFIG_SENSORS_W83627EHF is not set
 # CONFIG_HWMON_DEBUG_CHIP is not set
+# CONFIG_THERMAL is not set
 # CONFIG_WATCHDOG is not set
 
 #
@@ -1183,6 +1222,7 @@ CONFIG_SND_VERBOSE_PROCFS=y
 # CONFIG_SND_BT87X is not set
 # CONFIG_SND_CA0106 is not set
 # CONFIG_SND_CMIPCI is not set
+# CONFIG_SND_OXYGEN is not set
 # CONFIG_SND_CS4281 is not set
 # CONFIG_SND_CS46XX is not set
 # CONFIG_SND_CS5530 is not set
@@ -1208,6 +1248,7 @@ CONFIG_SND_VERBOSE_PROCFS=y
 # CONFIG_SND_HDA_INTEL is not set
 # CONFIG_SND_HDSP is not set
 # CONFIG_SND_HDSPM is not set
+# CONFIG_SND_HIFIER is not set
 # CONFIG_SND_ICE1712 is not set
 # CONFIG_SND_ICE1724 is not set
 # CONFIG_SND_INTEL8X0 is not set
@@ -1225,6 +1266,7 @@ CONFIG_SND_VERBOSE_PROCFS=y
 # CONFIG_SND_TRIDENT is not set
 # CONFIG_SND_VIA82XX is not set
 # CONFIG_SND_VIA82XX_MODEM is not set
+# CONFIG_SND_VIRTUOSO is not set
 # CONFIG_SND_VX222 is not set
 # CONFIG_SND_YMFPCI is not set
 
@@ -1259,6 +1301,10 @@ CONFIG_SND_USB_USX2Y=y
 #
 
 #
+# ALSA SoC audio for Freescale SOCs
+#
+
+#
 # Open Sound System
 #
 # CONFIG_SOUND_PRIME is not set
@@ -1280,6 +1326,7 @@ CONFIG_USB_ARCH_HAS_OHCI=y
 CONFIG_USB_ARCH_HAS_EHCI=y
 CONFIG_USB=y
 # CONFIG_USB_DEBUG is not set
+# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set
 
 #
 # Miscellaneous USB options
@@ -1293,9 +1340,9 @@ CONFIG_USB_DEVICEFS=y
 # USB Host Controller Drivers
 #
 CONFIG_USB_EHCI_HCD=y
-# CONFIG_USB_EHCI_SPLIT_ISO is not set
 # CONFIG_USB_EHCI_ROOT_HUB_TT is not set
 # CONFIG_USB_EHCI_TT_NEWSCHED is not set
+CONFIG_USB_EHCI_HCD_PPC_OF=y
 # CONFIG_USB_ISP116X_HCD is not set
 CONFIG_USB_OHCI_HCD=y
 CONFIG_USB_OHCI_HCD_PPC_OF=y
@@ -1348,10 +1395,6 @@ CONFIG_USB_LIBUSUAL=y
 #
 # USB port drivers
 #
-
-#
-# USB Serial Converter support
-#
 # CONFIG_USB_SERIAL is not set
 
 #
@@ -1377,16 +1420,9 @@ CONFIG_USB_LIBUSUAL=y
 # CONFIG_USB_TRANCEVIBRATOR is not set
 # CONFIG_USB_IOWARRIOR is not set
 # CONFIG_USB_TEST is not set
-
-#
-# USB DSL modem support
-#
-
-#
-# USB Gadget Support
-#
 # CONFIG_USB_GADGET is not set
 # CONFIG_MMC is not set
+# CONFIG_MEMSTICK is not set
 # CONFIG_NEW_LEDS is not set
 # CONFIG_INFINIBAND is not set
 CONFIG_EDAC=y
@@ -1399,6 +1435,10 @@ CONFIG_EDAC_MM_EDAC=y
 CONFIG_EDAC_PASEMI=y
 CONFIG_RTC_LIB=y
 CONFIG_RTC_CLASS=y
+
+#
+# Conflicting RTC option has been selected, check GEN_RTC and RTC
+#
 CONFIG_RTC_HCTOSYS=y
 CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
 # CONFIG_RTC_DEBUG is not set
@@ -1425,6 +1465,7 @@ CONFIG_RTC_DRV_DS1307=y
 # CONFIG_RTC_DRV_PCF8563 is not set
 # CONFIG_RTC_DRV_PCF8583 is not set
 # CONFIG_RTC_DRV_M41T80 is not set
+# CONFIG_RTC_DRV_S35390A is not set
 
 #
 # SPI RTC drivers
@@ -1434,9 +1475,10 @@ CONFIG_RTC_DRV_DS1307=y
 # Platform RTC drivers
 #
 # CONFIG_RTC_DRV_CMOS is not set
+# CONFIG_RTC_DRV_DS1511 is not set
 # CONFIG_RTC_DRV_DS1553 is not set
-# CONFIG_RTC_DRV_STK17TA8 is not set
 # CONFIG_RTC_DRV_DS1742 is not set
+# CONFIG_RTC_DRV_STK17TA8 is not set
 # CONFIG_RTC_DRV_M48T86 is not set
 # CONFIG_RTC_DRV_M48T59 is not set
 # CONFIG_RTC_DRV_V3020 is not set
@@ -1444,6 +1486,7 @@ CONFIG_RTC_DRV_DS1307=y
 #
 # on-CPU RTC drivers
 #
+# CONFIG_DMADEVICES is not set
 
 #
 # Userspace I/O
@@ -1471,12 +1514,10 @@ CONFIG_FS_POSIX_ACL=y
 # CONFIG_XFS_FS is not set
 # CONFIG_GFS2_FS is not set
 # CONFIG_OCFS2_FS is not set
-# CONFIG_MINIX_FS is not set
-# CONFIG_ROMFS_FS is not set
+CONFIG_DNOTIFY=y
 CONFIG_INOTIFY=y
 CONFIG_INOTIFY_USER=y
 # CONFIG_QUOTA is not set
-CONFIG_DNOTIFY=y
 CONFIG_AUTOFS_FS=y
 CONFIG_AUTOFS4_FS=y
 # CONFIG_FUSE_FS is not set
@@ -1536,8 +1577,10 @@ CONFIG_JFFS2_RTIME=y
 # CONFIG_JFFS2_RUBIN is not set
 # CONFIG_CRAMFS is not set
 # CONFIG_VXFS_FS is not set
+# CONFIG_MINIX_FS is not set
 # CONFIG_HPFS_FS is not set
 # CONFIG_QNX4FS_FS is not set
+# CONFIG_ROMFS_FS is not set
 # CONFIG_SYSV_FS is not set
 # CONFIG_UFS_FS is not set
 CONFIG_NETWORK_FILESYSTEMS=y
@@ -1629,7 +1672,6 @@ CONFIG_NLS_ISO8859_1=y
 # CONFIG_NLS_KOI8_U is not set
 # CONFIG_NLS_UTF8 is not set
 # CONFIG_DLM is not set
-# CONFIG_UCC_SLOW is not set
 
 #
 # Library routines
@@ -1647,11 +1689,7 @@ CONFIG_PLIST=y
 CONFIG_HAS_IOMEM=y
 CONFIG_HAS_IOPORT=y
 CONFIG_HAS_DMA=y
-CONFIG_INSTRUMENTATION=y
-CONFIG_PROFILING=y
-CONFIG_OPROFILE=y
-# CONFIG_KPROBES is not set
-# CONFIG_MARKERS is not set
+CONFIG_HAVE_LMB=y
 
 #
 # Kernel hacking
@@ -1670,6 +1708,7 @@ CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
 # CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_SLUB_STATS is not set
 # CONFIG_DEBUG_RT_MUTEXES is not set
 # CONFIG_RT_MUTEX_TESTER is not set
 # CONFIG_DEBUG_SPINLOCK is not set
@@ -1682,9 +1721,9 @@ CONFIG_DEBUG_BUGVERBOSE=y
 # CONFIG_DEBUG_VM is not set
 # CONFIG_DEBUG_LIST is not set
 # CONFIG_DEBUG_SG is not set
-# CONFIG_FORCED_INLINING is not set
 # CONFIG_BOOT_PRINTK_DELAY is not set
 # CONFIG_RCU_TORTURE_TEST is not set
+# CONFIG_BACKTRACE_SELF_TEST is not set
 # CONFIG_FAULT_INJECTION is not set
 # CONFIG_SAMPLES is not set
 # CONFIG_DEBUG_STACKOVERFLOW is not set
@@ -1710,7 +1749,9 @@ CONFIG_ASYNC_MEMCPY=y
 CONFIG_ASYNC_XOR=y
 CONFIG_CRYPTO=y
 CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_AEAD=y
 CONFIG_CRYPTO_BLKCIPHER=y
+# CONFIG_CRYPTO_SEQIV is not set
 CONFIG_CRYPTO_HASH=y
 CONFIG_CRYPTO_MANAGER=y
 CONFIG_CRYPTO_HMAC=y
@@ -1729,6 +1770,9 @@ CONFIG_CRYPTO_CBC=y
 # CONFIG_CRYPTO_PCBC is not set
 # CONFIG_CRYPTO_LRW is not set
 # CONFIG_CRYPTO_XTS is not set
+# CONFIG_CRYPTO_CTR is not set
+# CONFIG_CRYPTO_GCM is not set
+# CONFIG_CRYPTO_CCM is not set
 # CONFIG_CRYPTO_CRYPTD is not set
 CONFIG_CRYPTO_DES=y
 # CONFIG_CRYPTO_FCRYPT is not set
@@ -1743,11 +1787,14 @@ CONFIG_CRYPTO_AES=y
 # CONFIG_CRYPTO_KHAZAD is not set
 # CONFIG_CRYPTO_ANUBIS is not set
 # CONFIG_CRYPTO_SEED is not set
+# CONFIG_CRYPTO_SALSA20 is not set
 # CONFIG_CRYPTO_DEFLATE is not set
 # CONFIG_CRYPTO_MICHAEL_MIC is not set
 # CONFIG_CRYPTO_CRC32C is not set
 # CONFIG_CRYPTO_CAMELLIA is not set
 # CONFIG_CRYPTO_TEST is not set
-# CONFIG_CRYPTO_AUTHENC is not set
+CONFIG_CRYPTO_AUTHENC=y
+# CONFIG_CRYPTO_LZO is not set
 CONFIG_CRYPTO_HW=y
+# CONFIG_CRYPTO_DEV_HIFN_795X is not set
 # CONFIG_PPC_CLOCK is not set
-- 
1.5.4.4

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

^ permalink raw reply related

* Re: [PATCH] [POWERPC] Remove CONFIG_PCI_LEGACY from pasemi_defconfig
From: Olof Johansson @ 2008-03-27  3:41 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: ppc-dev
In-Reply-To: <20080327142743.82c4f0fb.sfr@canb.auug.org.au>

Hi,

On Thu, Mar 27, 2008 at 02:27:43PM +1100, Stephen Rothwell wrote:

> Olof,  you should review this carefully to see if anything got turned off
> that you need (e.g. CONFIG_MTD_NAND_PASEMI) or turned on that you don't
> want (e.g. "Conflicting RTC option has been selected, check GEN_RTC and
> RTC").  I have built this config.  This patch is on top of the powerpc
> master tree.

I've already requested Paul to pull a defconfig update that includes
all changes besides the PCI_LEGACY disabling. Since it's not critical,
I'll do the same change in the for-2.6.26 branch but let the pull request
for 2.6.25 be as-is, if that's OK with you. This is of course with the
hopes that Paul will pull and push it before the .25 release.


Thanks,

-Olof

^ permalink raw reply

* Re: DTS question
From: Sean MacLennan @ 2008-03-27  3:42 UTC (permalink / raw)
  To: David Gibson; +Cc: Scott Wood, linuxppc-dev
In-Reply-To: <20080326234043.GC8005@localhost.localdomain>

On Thu, 27 Mar 2008 10:40:43 +1100
"David Gibson" <david@gibson.dropbear.id.au> wrote:

> >>> Note that a stock symbol needs to be written in uppercase; in
> >>> lowercase, it is just a random name that has no collision
> >>> protection.  
> >>
> >> Um.. bit too late for that.  AFAIK, uppercase has been used by
> >> *no-one* for stock ticker derived vendor IDs.  
> >
> > No, it's used quite a lot actually.  Not in DTS files though ;-)  
> 
> Sorry, yes, I was meaning specifically in recent, flattened-device
> tree practice (which is the context in which the "use stock ticker"
> recommendation has been made.
> 
> > It doesn't matter a lot, lowercase names are perfectly valid, you
> > just don't get the nice non-collision reassurance you would get if
> > you used a name in one of the namespaces reserved for that purpose.
> >
> > It's probably best to not use an uppercase stock symbol if you don't
> > have approval from the company in question anyway -- we use a
> > lowercase name (i.e. in the "free-for-all" space) for our messed up
> > bindings, the companies use an uppercase name (in the stock-ticker
> > namespace) for their own, incompatible, messed-up bindings, and
> > everyone is happy.  Or something like that.  

Ack, now I am confused. Should I use lower or upper case? 

To be honest the upper case looks weird since none of the other names
have any uppercase characters.

Cheers,
   Sean

^ permalink raw reply


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox