All of lore.kernel.org
 help / color / mirror / Atom feed
* Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox
@ 2009-03-02  9:43 Rogério Brito
  2009-03-03  2:48 ` Tony Breeds
  2009-03-04  0:07   ` Guennadi Liakhovetski
  0 siblings, 2 replies; 13+ messages in thread
From: Rogério Brito @ 2009-03-02  9:43 UTC (permalink / raw)
  To: linux-kernel

Hi there.

I tried to compile a new kernel for my (powerpc) Kurobox HD (an embedded
system that has a Freescale processor), but it seems that the
compilation fails, with both my usual config file and with the shipped
linkstation_defconfig file.

I get the following error during compilation (actually a
cross-compilation):

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
arch/powerpc/platforms/built-in.o: In function `linkstation_setup_arch':
linkstation.c:(.init.text+0x218): undefined reference to `physmap_set_partitions'
drivers/built-in.o:(__ksymtab+0x9f8): undefined reference to `physmap_set_partitions'
make: *** [.tmp_vmlinux1] Error 1
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

I didn't have such problems with, say, kernel 2.6.28. If anybody could
help, I would be glad to test any patches.

(Well, I already tried "blindly" adding an EXPORT_SYMBOL to
physmap_set_partitions under the mtd subtree, but it wasn't enough to
fix this issue).


Thanks in advance for any help, Rogério Brito.

-- 
Rogério Brito : rbrito@{mackenzie,ime.usp}.br : GPG key 1024D/7C2CAEB8
http://www.ime.usp.br/~rbrito : http://meusite.mackenzie.com.br/rbrito
Projects: algorithms.berlios.de : lame.sf.net : vrms.alioth.debian.org

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox
  2009-03-02  9:43 Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox Rogério Brito
@ 2009-03-03  2:48 ` Tony Breeds
  2009-03-03  8:34   ` [PATCH] powerpc: fix the defaults for the linkstation MTD device (was: Re: Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox) Rogério Brito
  2009-03-04  0:07   ` Guennadi Liakhovetski
  1 sibling, 1 reply; 13+ messages in thread
From: Tony Breeds @ 2009-03-03  2:48 UTC (permalink / raw)
  To: Rogério Brito; +Cc: linux-kernel

On Mon, Mar 02, 2009 at 06:43:03AM -0300, Rogério Brito wrote:

<snip>

> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> arch/powerpc/platforms/built-in.o: In function `linkstation_setup_arch':
> linkstation.c:(.init.text+0x218): undefined reference to `physmap_set_partitions'
> drivers/built-in.o:(__ksymtab+0x9f8): undefined reference to `physmap_set_partitions'
> make: *** [.tmp_vmlinux1] Error 1
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> 
> I didn't have such problems with, say, kernel 2.6.28. If anybody could
> help, I would be glad to test any patches.
> 
> (Well, I already tried "blindly" adding an EXPORT_SYMBOL to
> physmap_set_partitions under the mtd subtree, but it wasn't enough to
> fix this issue).

Looks to me like you need to define CONFIG_MTD_PHYSMAP_COMPAT in your .config.


Yours Tony

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH] powerpc: fix the defaults for the linkstation MTD device (was: Re: Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox)
  2009-03-03  2:48 ` Tony Breeds
@ 2009-03-03  8:34   ` Rogério Brito
  2009-03-04  7:46     ` Guennadi Liakhovetski
  0 siblings, 1 reply; 13+ messages in thread
From: Rogério Brito @ 2009-03-03  8:34 UTC (permalink / raw)
  To: linux-kernel; +Cc: Tony Breeds, Kumar Gala, torvalds

Hi, Tony and other people.

On Mar 03 2009, Tony Breeds wrote:
> On Mon, Mar 02, 2009 at 06:43:03AM -0300, Rogério Brito wrote:
> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> > arch/powerpc/platforms/built-in.o: In function `linkstation_setup_arch':
> > linkstation.c:(.init.text+0x218): undefined reference to `physmap_set_partitions'
> > drivers/built-in.o:(__ksymtab+0x9f8): undefined reference to `physmap_set_partitions'
> > make: *** [.tmp_vmlinux1] Error 1
> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> 
> Looks to me like you need to define CONFIG_MTD_PHYSMAP_COMPAT in your
> .config.

Right. This was the fix. The attached diff to update the defconfig is
included below.

Please, note that it wasn't sufficient to only to define
CONFIG_MTD_PHYSMAP_COMPAT. 

The default values for CONFIG_MTD_PHYSMAP_{START,LEN,BANKWIDTH} weren't
correct (and, as a result, no MTD was detected on my kurobox and this
was a regression regarding 2.6.28).

This patch makes the compilation succeed and the MTD device work again.
Already tested and in production.


Signed-off-by: Rogério Brito <rbrito@ime.usp.br>


---

--- linux/arch/powerpc/configs/linkstation_defconfig.old	2009-03-03 05:11:38.000000000 -0300
+++ linux/arch/powerpc/configs/linkstation_defconfig	2009-03-03 05:11:54.000000000 -0300
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.29-rc2
-# Mon Jan 26 15:35:29 2009
+# Linux kernel version: 2.6.29-rc6
+# Tue Mar  3 05:10:59 2009
 #
 # CONFIG_PPC64 is not set
 
@@ -71,6 +71,15 @@
 # CONFIG_BSD_PROCESS_ACCT is not set
 # CONFIG_TASKSTATS is not set
 # CONFIG_AUDIT is not set
+
+#
+# RCU Subsystem
+#
+CONFIG_CLASSIC_RCU=y
+# CONFIG_TREE_RCU is not set
+# CONFIG_PREEMPT_RCU is not set
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_PREEMPT_RCU_TRACE is not set
 CONFIG_IKCONFIG=y
 CONFIG_IKCONFIG_PROC=y
 CONFIG_LOG_BUF_SHIFT=14
@@ -88,6 +97,7 @@
 # CONFIG_IPC_NS is not set
 # CONFIG_USER_NS is not set
 # CONFIG_PID_NS is not set
+# CONFIG_NET_NS is not set
 CONFIG_BLK_DEV_INITRD=y
 CONFIG_INITRAMFS_SOURCE=""
 CONFIG_CC_OPTIMIZE_FOR_SIZE=y
@@ -153,11 +163,6 @@
 # CONFIG_DEFAULT_CFQ is not set
 # CONFIG_DEFAULT_NOOP is not set
 CONFIG_DEFAULT_IOSCHED="anticipatory"
-CONFIG_CLASSIC_RCU=y
-# CONFIG_TREE_RCU is not set
-# CONFIG_PREEMPT_RCU is not set
-# CONFIG_TREE_RCU_TRACE is not set
-# CONFIG_PREEMPT_RCU_TRACE is not set
 # CONFIG_FREEZER is not set
 
 #
@@ -294,7 +299,6 @@
 #
 # Networking options
 #
-# CONFIG_NET_NS is not set
 CONFIG_COMPAT_NET_DEV_OPS=y
 CONFIG_PACKET=y
 CONFIG_PACKET_MMAP=y
@@ -560,7 +564,10 @@
 #
 # CONFIG_MTD_COMPLEX_MAPPINGS is not set
 CONFIG_MTD_PHYSMAP=y
-# CONFIG_MTD_PHYSMAP_COMPAT is not set
+CONFIG_MTD_PHYSMAP_COMPAT=y
+CONFIG_MTD_PHYSMAP_START=0xffc00000
+CONFIG_MTD_PHYSMAP_LEN=0x400000
+CONFIG_MTD_PHYSMAP_BANKWIDTH=1
 # CONFIG_MTD_PHYSMAP_OF is not set
 # CONFIG_MTD_INTEL_VR_NOR is not set
 # CONFIG_MTD_PLATRAM is not set
@@ -617,13 +624,19 @@
 # CONFIG_BLK_DEV_HD is not set
 CONFIG_MISC_DEVICES=y
 # CONFIG_PHANTOM is not set
-# CONFIG_EEPROM_93CX6 is not set
 # CONFIG_SGI_IOC4 is not set
 # CONFIG_TIFM_CORE is not set
 # CONFIG_ICS932S401 is not set
 # CONFIG_ENCLOSURE_SERVICES is not set
 # CONFIG_HP_ILO is not set
 # CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+# CONFIG_EEPROM_AT24 is not set
+CONFIG_EEPROM_LEGACY=m
+# CONFIG_EEPROM_93CX6 is not set
 CONFIG_HAVE_IDE=y
 # CONFIG_IDE is not set
 
@@ -1037,8 +1050,6 @@
 # Miscellaneous I2C Chip support
 #
 # CONFIG_DS1682 is not set
-# CONFIG_EEPROM_AT24 is not set
-CONFIG_EEPROM_LEGACY=m
 # CONFIG_SENSORS_PCF8574 is not set
 # CONFIG_PCF8575 is not set
 # CONFIG_SENSORS_PCA9539 is not set


-- 
Rogério Brito : rbrito@{mackenzie,ime.usp}.br : GPG key 1024D/7C2CAEB8
http://www.ime.usp.br/~rbrito : http://meusite.mackenzie.com.br/rbrito
Projects: algorithms.berlios.de : lame.sf.net : vrms.alioth.debian.org

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox
  2009-03-02  9:43 Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox Rogério Brito
@ 2009-03-04  0:07   ` Guennadi Liakhovetski
  2009-03-04  0:07   ` Guennadi Liakhovetski
  1 sibling, 0 replies; 13+ messages in thread
From: Guennadi Liakhovetski @ 2009-03-04  0:07 UTC (permalink / raw)
  To: Rogério Brito; +Cc: linux-kernel, linuxppc-dev

On Mon, 2 Mar 2009, Rogério Brito wrote:

> Hi there.
> 
> I tried to compile a new kernel for my (powerpc) Kurobox HD (an embedded
> system that has a Freescale processor), but it seems that the
> compilation fails, with both my usual config file and with the shipped
> linkstation_defconfig file.
> 
> I get the following error during compilation (actually a
> cross-compilation):
> 
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> arch/powerpc/platforms/built-in.o: In function `linkstation_setup_arch':
> linkstation.c:(.init.text+0x218): undefined reference to `physmap_set_partitions'
> drivers/built-in.o:(__ksymtab+0x9f8): undefined reference to `physmap_set_partitions'
> make: *** [.tmp_vmlinux1] Error 1
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Yes, linkstation and storcenter have to migrate to the "physmap-flash" 
platform driver. For now you can define in your .config

CONFIG_MTD_PHYSMAP=y
CONFIG_MTD_PHYSMAP_COMPAT=y
CONFIG_MTD_PHYSMAP_START=0xffc00000
CONFIG_MTD_PHYSMAP_LEN=0x400000
CONFIG_MTD_PHYSMAP_BANKWIDTH=1

(I hope the numbers are correct, just found them in my local tree, don't 
remember any more what exactly they configure, please, double-check.) And 
yes, it must be fixed in the mainline. I'll see if I find time for this, 
maybe tomorrow (actually, already today.)

Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox
@ 2009-03-04  0:07   ` Guennadi Liakhovetski
  0 siblings, 0 replies; 13+ messages in thread
From: Guennadi Liakhovetski @ 2009-03-04  0:07 UTC (permalink / raw)
  To: Rogério Brito; +Cc: linuxppc-dev, linux-kernel

On Mon, 2 Mar 2009, Rog=C3=A9rio Brito wrote:

> Hi there.
>=20
> I tried to compile a new kernel for my (powerpc) Kurobox HD (an embedded
> system that has a Freescale processor), but it seems that the
> compilation fails, with both my usual config file and with the shipped
> linkstation_defconfig file.
>=20
> I get the following error during compilation (actually a
> cross-compilation):
>=20
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> arch/powerpc/platforms/built-in.o: In function `linkstation_setup_arch':
> linkstation.c:(.init.text+0x218): undefined reference to `physmap_set_par=
titions'
> drivers/built-in.o:(__ksymtab+0x9f8): undefined reference to `physmap_set=
_partitions'
> make: *** [.tmp_vmlinux1] Error 1
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Yes, linkstation and storcenter have to migrate to the "physmap-flash"=20
platform driver. For now you can define in your .config

CONFIG_MTD_PHYSMAP=3Dy
CONFIG_MTD_PHYSMAP_COMPAT=3Dy
CONFIG_MTD_PHYSMAP_START=3D0xffc00000
CONFIG_MTD_PHYSMAP_LEN=3D0x400000
CONFIG_MTD_PHYSMAP_BANKWIDTH=3D1

(I hope the numbers are correct, just found them in my local tree, don't=20
remember any more what exactly they configure, please, double-check.) And=
=20
yes, it must be fixed in the mainline. I'll see if I find time for this,=20
maybe tomorrow (actually, already today.)

Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox
  2009-03-04  0:07   ` Guennadi Liakhovetski
  (?)
@ 2009-03-04  1:04     ` Rogério Brito
  -1 siblings, 0 replies; 13+ messages in thread
From: Rogério Brito @ 2009-03-04  1:04 UTC (permalink / raw)
  To: Guennadi Liakhovetski, Tony Breeds, Rafael J. Wysocki,
	Kernel Testers List, Kumar Gala, paulus
  Cc: linux-kernel, linuxppc-dev, Anton Blanchard

On Mar 04 2009, Guennadi Liakhovetski wrote:
> Yes, linkstation and storcenter have to migrate to the "physmap-flash" 
> platform driver. For now you can define in your .config
> 
> CONFIG_MTD_PHYSMAP=y
> CONFIG_MTD_PHYSMAP_COMPAT=y
> CONFIG_MTD_PHYSMAP_START=0xffc00000
> CONFIG_MTD_PHYSMAP_LEN=0x400000
> CONFIG_MTD_PHYSMAP_BANKWIDTH=1

I did that already yesterday. Please, see my patch at
http://marc.info/?l=linux-kernel&m=123606933628020&w=4

And the entry at bugzilla:
http://bugzilla.kernel.org/show_bug.cgi?id=12811

> (I hope the numbers are correct, just found them in my local tree, don't 
> remember any more what exactly they configure, please, double-check.)

Yes, I had them in my tree also. And it is tested already, up and
running and in production for 17 hours.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
rbrito@lutz:~$ uptime
 22:03:16 up 17:06,  1 user,  load average: 0.16, 0.03, 0.01
rbrito@lutz:~$ 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

> And yes, it must be fixed in the mainline. I'll see if I find time for
> this, maybe tomorrow (actually, already today.)

Please, Cc me any relevant patches, as I'm not subscribed to all those
lists.


Regards, Rogério Brito.

-- 
Rogério Brito : rbrito@{mackenzie,ime.usp}.br : GPG key 1024D/7C2CAEB8
http://www.ime.usp.br/~rbrito : http://meusite.mackenzie.com.br/rbrito
Projects: algorithms.berlios.de : lame.sf.net : vrms.alioth.debian.org

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox
@ 2009-03-04  1:04     ` Rogério Brito
  0 siblings, 0 replies; 13+ messages in thread
From: Rogério Brito @ 2009-03-04  1:04 UTC (permalink / raw)
  To: Guennadi Liakhovetski, Tony Breeds, Rafael J. Wysocki,
	Kernel Testers List, Kumar Gala, paulus
  Cc: linuxppc-dev, linux-kernel, Anton Blanchard

On Mar 04 2009, Guennadi Liakhovetski wrote:
> Yes, linkstation and storcenter have to migrate to the "physmap-flash" 
> platform driver. For now you can define in your .config
> 
> CONFIG_MTD_PHYSMAP=y
> CONFIG_MTD_PHYSMAP_COMPAT=y
> CONFIG_MTD_PHYSMAP_START=0xffc00000
> CONFIG_MTD_PHYSMAP_LEN=0x400000
> CONFIG_MTD_PHYSMAP_BANKWIDTH=1

I did that already yesterday. Please, see my patch at
http://marc.info/?l=linux-kernel&m=123606933628020&w=4

And the entry at bugzilla:
http://bugzilla.kernel.org/show_bug.cgi?id=12811

> (I hope the numbers are correct, just found them in my local tree, don't 
> remember any more what exactly they configure, please, double-check.)

Yes, I had them in my tree also. And it is tested already, up and
running and in production for 17 hours.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
rbrito@lutz:~$ uptime
 22:03:16 up 17:06,  1 user,  load average: 0.16, 0.03, 0.01
rbrito@lutz:~$ 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

> And yes, it must be fixed in the mainline. I'll see if I find time for
> this, maybe tomorrow (actually, already today.)

Please, Cc me any relevant patches, as I'm not subscribed to all those
lists.


Regards, Rogério Brito.

-- 
Rogério Brito : rbrito@{mackenzie,ime.usp}.br : GPG key 1024D/7C2CAEB8
http://www.ime.usp.br/~rbrito : http://meusite.mackenzie.com.br/rbrito
Projects: algorithms.berlios.de : lame.sf.net : vrms.alioth.debian.org

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox
@ 2009-03-04  1:04     ` Rogério Brito
  0 siblings, 0 replies; 13+ messages in thread
From: Rogério Brito @ 2009-03-04  1:04 UTC (permalink / raw)
  To: Guennadi Liakhovetski, Tony Breeds, Rafael J. Wysocki,
	Kernel Testers List, Kumar
  Cc: linux-kernel, linuxppc-dev, Anton Blanchard

On Mar 04 2009, Guennadi Liakhovetski wrote:
> Yes, linkstation and storcenter have to migrate to the "physmap-flash" 
> platform driver. For now you can define in your .config
> 
> CONFIG_MTD_PHYSMAP=y
> CONFIG_MTD_PHYSMAP_COMPAT=y
> CONFIG_MTD_PHYSMAP_START=0xffc00000
> CONFIG_MTD_PHYSMAP_LEN=0x400000
> CONFIG_MTD_PHYSMAP_BANKWIDTH=1

I did that already yesterday. Please, see my patch at
http://marc.info/?l=linux-kernel&m=123606933628020&w=4

And the entry at bugzilla:
http://bugzilla.kernel.org/show_bug.cgi?id=12811

> (I hope the numbers are correct, just found them in my local tree, don't 
> remember any more what exactly they configure, please, double-check.)

Yes, I had them in my tree also. And it is tested already, up and
running and in production for 17 hours.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
rbrito@lutz:~$ uptime
 22:03:16 up 17:06,  1 user,  load average: 0.16, 0.03, 0.01
rbrito@lutz:~$ 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

> And yes, it must be fixed in the mainline. I'll see if I find time for
> this, maybe tomorrow (actually, already today.)

Please, Cc me any relevant patches, as I'm not subscribed to all those
lists.


Regards, Rogério Brito.

-- 
Rogério Brito : rbrito@{mackenzie,ime.usp}.br : GPG key 1024D/7C2CAEB8
http://www.ime.usp.br/~rbrito : http://meusite.mackenzie.com.br/rbrito
Projects: algorithms.berlios.de : lame.sf.net : vrms.alioth.debian.org

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] powerpc: fix the defaults for the linkstation MTD device (was: Re: Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox)
  2009-03-03  8:34   ` [PATCH] powerpc: fix the defaults for the linkstation MTD device (was: Re: Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox) Rogério Brito
@ 2009-03-04  7:46     ` Guennadi Liakhovetski
  2009-03-04 21:45       ` [PATCH] powerpc: fix the defaults for the linkstation MTD device Rogério Brito
  0 siblings, 1 reply; 13+ messages in thread
From: Guennadi Liakhovetski @ 2009-03-04  7:46 UTC (permalink / raw)
  To: Rogério Brito; +Cc: linux-kernel, Tony Breeds, Kumar Gala, torvalds

On Tue, 3 Mar 2009, Rogério Brito wrote:

> Hi, Tony and other people.
> 
> On Mar 03 2009, Tony Breeds wrote:
> > On Mon, Mar 02, 2009 at 06:43:03AM -0300, Rogério Brito wrote:
> > > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> > > arch/powerpc/platforms/built-in.o: In function `linkstation_setup_arch':
> > > linkstation.c:(.init.text+0x218): undefined reference to `physmap_set_partitions'
> > > drivers/built-in.o:(__ksymtab+0x9f8): undefined reference to `physmap_set_partitions'
> > > make: *** [.tmp_vmlinux1] Error 1
> > > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> > 
> > Looks to me like you need to define CONFIG_MTD_PHYSMAP_COMPAT in your
> > .config.
> 
> Right. This was the fix. The attached diff to update the defconfig is
> included below.
> 
> Please, note that it wasn't sufficient to only to define
> CONFIG_MTD_PHYSMAP_COMPAT. 
> 
> The default values for CONFIG_MTD_PHYSMAP_{START,LEN,BANKWIDTH} weren't
> correct (and, as a result, no MTD was detected on my kurobox and this
> was a regression regarding 2.6.28).
> 
> This patch makes the compilation succeed and the MTD device work again.
> Already tested and in production.

No, I don't think this is a proper fix. Remember, the kernel has to at 
least compile not only with defconfigs, but with all valid configurations. 
So, at the very least you would also have to

 static void __init linkstation_setup_arch(void)
 {
 	struct device_node *np;
-#ifdef CONFIG_MTD_PHYSMAP
+#ifdef CONFIG_MTD_PHYSMAP_COMPAT
 	physmap_set_partitions(linkstation_physmap_partitions,
 			       ARRAY_SIZE(linkstation_physmap_partitions));
 #endif

in linkstation.c. In fact, this is a fix, not changing defconfig, which 
actually strictly speaking is not necessary. If only it fixes a 
regression, that defconfig used to provide mtd devices, now it no longer 
does.

But even this I don't think is a proper fix. A proper fix would be to 
remove flash definitions from linkstation.c completely. Maybe we should 
add them to kuroboxH?.dts, similar to mgcoge.dts and define 
CONFIG_MTD_PHYSMAP_OF, or we can define CONFIG_MTD_CMDLINE_PARTS and rely 
on the user providing a map on the command line. I don't know what is the 
currently preferred way, Kumar? Notice, while fixing linkstation, one 
should also fix storcenter.

Thanks
Guennadi

> Signed-off-by: Rogério Brito <rbrito@ime.usp.br>
> 
> 
> ---
> 
> --- linux/arch/powerpc/configs/linkstation_defconfig.old	2009-03-03 05:11:38.000000000 -0300
> +++ linux/arch/powerpc/configs/linkstation_defconfig	2009-03-03 05:11:54.000000000 -0300
> @@ -1,7 +1,7 @@
>  #
>  # Automatically generated make config: don't edit
> -# Linux kernel version: 2.6.29-rc2
> -# Mon Jan 26 15:35:29 2009
> +# Linux kernel version: 2.6.29-rc6
> +# Tue Mar  3 05:10:59 2009
>  #
>  # CONFIG_PPC64 is not set
>  
> @@ -71,6 +71,15 @@
>  # CONFIG_BSD_PROCESS_ACCT is not set
>  # CONFIG_TASKSTATS is not set
>  # CONFIG_AUDIT is not set
> +
> +#
> +# RCU Subsystem
> +#
> +CONFIG_CLASSIC_RCU=y
> +# CONFIG_TREE_RCU is not set
> +# CONFIG_PREEMPT_RCU is not set
> +# CONFIG_TREE_RCU_TRACE is not set
> +# CONFIG_PREEMPT_RCU_TRACE is not set
>  CONFIG_IKCONFIG=y
>  CONFIG_IKCONFIG_PROC=y
>  CONFIG_LOG_BUF_SHIFT=14
> @@ -88,6 +97,7 @@
>  # CONFIG_IPC_NS is not set
>  # CONFIG_USER_NS is not set
>  # CONFIG_PID_NS is not set
> +# CONFIG_NET_NS is not set
>  CONFIG_BLK_DEV_INITRD=y
>  CONFIG_INITRAMFS_SOURCE=""
>  CONFIG_CC_OPTIMIZE_FOR_SIZE=y
> @@ -153,11 +163,6 @@
>  # CONFIG_DEFAULT_CFQ is not set
>  # CONFIG_DEFAULT_NOOP is not set
>  CONFIG_DEFAULT_IOSCHED="anticipatory"
> -CONFIG_CLASSIC_RCU=y
> -# CONFIG_TREE_RCU is not set
> -# CONFIG_PREEMPT_RCU is not set
> -# CONFIG_TREE_RCU_TRACE is not set
> -# CONFIG_PREEMPT_RCU_TRACE is not set
>  # CONFIG_FREEZER is not set
>  
>  #
> @@ -294,7 +299,6 @@
>  #
>  # Networking options
>  #
> -# CONFIG_NET_NS is not set
>  CONFIG_COMPAT_NET_DEV_OPS=y
>  CONFIG_PACKET=y
>  CONFIG_PACKET_MMAP=y
> @@ -560,7 +564,10 @@
>  #
>  # CONFIG_MTD_COMPLEX_MAPPINGS is not set
>  CONFIG_MTD_PHYSMAP=y
> -# CONFIG_MTD_PHYSMAP_COMPAT is not set
> +CONFIG_MTD_PHYSMAP_COMPAT=y
> +CONFIG_MTD_PHYSMAP_START=0xffc00000
> +CONFIG_MTD_PHYSMAP_LEN=0x400000
> +CONFIG_MTD_PHYSMAP_BANKWIDTH=1
>  # CONFIG_MTD_PHYSMAP_OF is not set
>  # CONFIG_MTD_INTEL_VR_NOR is not set
>  # CONFIG_MTD_PLATRAM is not set
> @@ -617,13 +624,19 @@
>  # CONFIG_BLK_DEV_HD is not set
>  CONFIG_MISC_DEVICES=y
>  # CONFIG_PHANTOM is not set
> -# CONFIG_EEPROM_93CX6 is not set
>  # CONFIG_SGI_IOC4 is not set
>  # CONFIG_TIFM_CORE is not set
>  # CONFIG_ICS932S401 is not set
>  # CONFIG_ENCLOSURE_SERVICES is not set
>  # CONFIG_HP_ILO is not set
>  # CONFIG_C2PORT is not set
> +
> +#
> +# EEPROM support
> +#
> +# CONFIG_EEPROM_AT24 is not set
> +CONFIG_EEPROM_LEGACY=m
> +# CONFIG_EEPROM_93CX6 is not set
>  CONFIG_HAVE_IDE=y
>  # CONFIG_IDE is not set
>  
> @@ -1037,8 +1050,6 @@
>  # Miscellaneous I2C Chip support
>  #
>  # CONFIG_DS1682 is not set
> -# CONFIG_EEPROM_AT24 is not set
> -CONFIG_EEPROM_LEGACY=m
>  # CONFIG_SENSORS_PCF8574 is not set
>  # CONFIG_PCF8575 is not set
>  # CONFIG_SENSORS_PCA9539 is not set
> 
> 
> -- 
> Rogério Brito : rbrito@{mackenzie,ime.usp}.br : GPG key 1024D/7C2CAEB8
> http://www.ime.usp.br/~rbrito : http://meusite.mackenzie.com.br/rbrito
> Projects: algorithms.berlios.de : lame.sf.net : vrms.alioth.debian.org
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 

---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] powerpc: fix the defaults for the linkstation MTD device
  2009-03-04  7:46     ` Guennadi Liakhovetski
@ 2009-03-04 21:45       ` Rogério Brito
  2009-03-05 23:25           ` Guennadi Liakhovetski
  0 siblings, 1 reply; 13+ messages in thread
From: Rogério Brito @ 2009-03-04 21:45 UTC (permalink / raw)
  To: Guennadi Liakhovetski
  Cc: linux-kernel, Tony Breeds, Kumar Gala, torvalds, rbrito

On Mar 04 2009, Guennadi Liakhovetski wrote:
> On Tue, 3 Mar 2009, Rogério Brito wrote:
> > Please, note that it wasn't sufficient to only to define
> > CONFIG_MTD_PHYSMAP_COMPAT. 
> > 
> > The default values for CONFIG_MTD_PHYSMAP_{START,LEN,BANKWIDTH} weren't
> > correct (and, as a result, no MTD was detected on my kurobox and this
> > was a regression regarding 2.6.28).
> > 
> > This patch makes the compilation succeed and the MTD device work again.
> > Already tested and in production.
> 
> No, I don't think this is a proper fix.

Indeed. I agree completely. I just don't know if the changes to 2.6.29
would be a good thing at this point in time. I guess that a proper fix
can be made by the next merge window.

> Remember, the kernel has to at least compile not only with defconfigs,
> but with all valid configurations.

That is, of course, the right thing to do.  Unfortunately, the programs
are not exactly in that good shape. :-(

We all know that the kernel is a critical part of the operating system,
but it probably fails with "valid configurations" (how do we tell one?)
if we issue a randconfig or something like that.

Proving correctness is something that we should do, but it gets quite
hard with very big projects like the kernel (no, this isn't an excuse
for not doing it), and, as a consequence, We have to draw the line
somewhere and do quite a good amount of regression testing.

That's the easiest path to achieve something slightly closer to being
correct (emphasis on the "easiest" part) and I humbly think that it is a
good thing that lusers (me! me! me!) are testing less widely used kernel
settings.

> So, at the very least you would also have to
> 
>  static void __init linkstation_setup_arch(void)
>  {
>  	struct device_node *np;
> -#ifdef CONFIG_MTD_PHYSMAP
> +#ifdef CONFIG_MTD_PHYSMAP_COMPAT
>  	physmap_set_partitions(linkstation_physmap_partitions,
>  			       ARRAY_SIZE(linkstation_physmap_partitions));
>  #endif
> 
> in linkstation.c. In fact, this is a fix, not changing defconfig, which 
> actually strictly speaking is not necessary. If only it fixes a 
> regression, that defconfig used to provide mtd devices, now it no longer 
> does.

Right.

> But even this I don't think is a proper fix.

Agreed.

> A proper fix would be to remove flash definitions from linkstation.c
> completely.  Maybe we should add them to kuroboxH?.dts, similar to
> mgcoge.dts and define CONFIG_MTD_PHYSMAP_OF, or we can define
> CONFIG_MTD_CMDLINE_PARTS and rely on the user providing a map on the
> command line. I don't know what is the currently preferred way, Kumar?
> Notice, while fixing linkstation, one should also fix storcenter.

I know nothing about the storcenter, owning just a Kurobox HD.

But, yes, I'm not exactly sure where to hardcode the settings. If on the
C code (is linkstation.c used by any other hardware?), if in the config
file or in the device tree file. It sounds to me like the most
reasonable choice would be to:

* have it in the device tree file, if the data is fixed for each type of
  machine.

* have it in the .config file, if those data change among the same
  type of hardware, so that the user doesn't have to mess with the
  device tree sources (which can break parsing them etc).


Regards, Rogério Brito.

-- 
Rogério Brito : rbrito@{mackenzie,ime.usp}.br : GPG key 1024D/7C2CAEB8
http://www.ime.usp.br/~rbrito : http://meusite.mackenzie.com.br/rbrito
Projects: algorithms.berlios.de : lame.sf.net : vrms.alioth.debian.org

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH] powerpc: fix linkstation and storcenter compilation breakage
  2009-03-04 21:45       ` [PATCH] powerpc: fix the defaults for the linkstation MTD device Rogério Brito
  2009-03-05 23:25           ` Guennadi Liakhovetski
@ 2009-03-05 23:25           ` Guennadi Liakhovetski
  0 siblings, 0 replies; 13+ messages in thread
From: Guennadi Liakhovetski @ 2009-03-05 23:25 UTC (permalink / raw)
  To: Rogério Brito
  Cc: Guennadi Liakhovetski, linux-kernel, Tony Breeds, Kumar Gala,
	torvalds, linux-mtd, dwmw2

Defining flash partition table in platform code is deprecated, and due to 
recent changes linkstation and storcenter do not compile any more with 
their default configurations because of undefined references to 
physmap_set_partitions(). Instead of fixing them by using the correct 
kernel configuration macro in preprocessor conditional, remove partition 
table definitions altogether. Instead add support for partition definition 
on the command-line and in device tree to the default configurations.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
---
Kumar, could you push this up ASAP, please? This fixes

[Bug #12811] undefined reference to `physmap_set_partitions' on powerpc

diff --git a/arch/powerpc/configs/linkstation_defconfig b/arch/powerpc/configs/linkstation_defconfig
index aa5855a..15900dc 100644
--- a/arch/powerpc/configs/linkstation_defconfig
+++ b/arch/powerpc/configs/linkstation_defconfig
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.29-rc2
-# Mon Jan 26 15:35:29 2009
+# Linux kernel version: 2.6.29-rc6
+# Fri Mar  6 00:07:38 2009
 #
 # CONFIG_PPC64 is not set
 
@@ -71,6 +71,15 @@ CONFIG_POSIX_MQUEUE=y
 # CONFIG_BSD_PROCESS_ACCT is not set
 # CONFIG_TASKSTATS is not set
 # CONFIG_AUDIT is not set
+
+#
+# RCU Subsystem
+#
+CONFIG_CLASSIC_RCU=y
+# CONFIG_TREE_RCU is not set
+# CONFIG_PREEMPT_RCU is not set
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_PREEMPT_RCU_TRACE is not set
 CONFIG_IKCONFIG=y
 CONFIG_IKCONFIG_PROC=y
 CONFIG_LOG_BUF_SHIFT=14
@@ -88,6 +97,7 @@ CONFIG_NAMESPACES=y
 # CONFIG_IPC_NS is not set
 # CONFIG_USER_NS is not set
 # CONFIG_PID_NS is not set
+# CONFIG_NET_NS is not set
 CONFIG_BLK_DEV_INITRD=y
 CONFIG_INITRAMFS_SOURCE=""
 CONFIG_CC_OPTIMIZE_FOR_SIZE=y
@@ -153,11 +163,6 @@ CONFIG_DEFAULT_AS=y
 # CONFIG_DEFAULT_CFQ is not set
 # CONFIG_DEFAULT_NOOP is not set
 CONFIG_DEFAULT_IOSCHED="anticipatory"
-CONFIG_CLASSIC_RCU=y
-# CONFIG_TREE_RCU is not set
-# CONFIG_PREEMPT_RCU is not set
-# CONFIG_TREE_RCU_TRACE is not set
-# CONFIG_PREEMPT_RCU_TRACE is not set
 # CONFIG_FREEZER is not set
 
 #
@@ -294,7 +299,6 @@ CONFIG_NET=y
 #
 # Networking options
 #
-# CONFIG_NET_NS is not set
 CONFIG_COMPAT_NET_DEV_OPS=y
 CONFIG_PACKET=y
 CONFIG_PACKET_MMAP=y
@@ -508,8 +512,8 @@ CONFIG_MTD_CONCAT=y
 CONFIG_MTD_PARTITIONS=y
 # CONFIG_MTD_TESTS is not set
 # CONFIG_MTD_REDBOOT_PARTS is not set
-# CONFIG_MTD_CMDLINE_PARTS is not set
-# CONFIG_MTD_OF_PARTS is not set
+CONFIG_MTD_CMDLINE_PARTS=y
+CONFIG_MTD_OF_PARTS=y
 # CONFIG_MTD_AR7_PARTS is not set
 
 #
@@ -587,7 +591,6 @@ CONFIG_MTD_PHYSMAP=y
 # LPDDR flash memory drivers
 #
 # CONFIG_MTD_LPDDR is not set
-# CONFIG_MTD_QINFO_PROBE is not set
 
 #
 # UBI - Unsorted block images
@@ -617,13 +620,19 @@ CONFIG_BLK_DEV_RAM_SIZE=8192
 # CONFIG_BLK_DEV_HD is not set
 CONFIG_MISC_DEVICES=y
 # CONFIG_PHANTOM is not set
-# CONFIG_EEPROM_93CX6 is not set
 # CONFIG_SGI_IOC4 is not set
 # CONFIG_TIFM_CORE is not set
 # CONFIG_ICS932S401 is not set
 # CONFIG_ENCLOSURE_SERVICES is not set
 # CONFIG_HP_ILO is not set
 # CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+# CONFIG_EEPROM_AT24 is not set
+CONFIG_EEPROM_LEGACY=m
+# CONFIG_EEPROM_93CX6 is not set
 CONFIG_HAVE_IDE=y
 # CONFIG_IDE is not set
 
@@ -839,6 +848,7 @@ CONFIG_R8169=y
 # CONFIG_QLA3XXX is not set
 # CONFIG_ATL1 is not set
 # CONFIG_ATL1E is not set
+# CONFIG_ATL1C is not set
 # CONFIG_JME is not set
 CONFIG_NETDEV_10000=y
 # CONFIG_CHELSIO_T1 is not set
@@ -1037,8 +1047,6 @@ CONFIG_I2C_MPC=y
 # Miscellaneous I2C Chip support
 #
 # CONFIG_DS1682 is not set
-# CONFIG_EEPROM_AT24 is not set
-CONFIG_EEPROM_LEGACY=m
 # CONFIG_SENSORS_PCF8574 is not set
 # CONFIG_PCF8575 is not set
 # CONFIG_SENSORS_PCA9539 is not set
diff --git a/arch/powerpc/configs/storcenter_defconfig b/arch/powerpc/configs/storcenter_defconfig
index 86512c8..9490346 100644
--- a/arch/powerpc/configs/storcenter_defconfig
+++ b/arch/powerpc/configs/storcenter_defconfig
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.29-rc2
-# Mon Jan 26 15:35:46 2009
+# Linux kernel version: 2.6.29-rc6
+# Fri Mar  6 00:09:08 2009
 #
 # CONFIG_PPC64 is not set
 
@@ -71,6 +71,15 @@ CONFIG_SYSVIPC_SYSCTL=y
 # CONFIG_BSD_PROCESS_ACCT is not set
 # CONFIG_TASKSTATS is not set
 # CONFIG_AUDIT is not set
+
+#
+# RCU Subsystem
+#
+CONFIG_CLASSIC_RCU=y
+# CONFIG_TREE_RCU is not set
+# CONFIG_PREEMPT_RCU is not set
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_PREEMPT_RCU_TRACE is not set
 # CONFIG_IKCONFIG is not set
 CONFIG_LOG_BUF_SHIFT=14
 CONFIG_GROUP_SCHED=y
@@ -144,11 +153,6 @@ CONFIG_IOSCHED_CFQ=y
 CONFIG_DEFAULT_CFQ=y
 # CONFIG_DEFAULT_NOOP is not set
 CONFIG_DEFAULT_IOSCHED="cfq"
-CONFIG_CLASSIC_RCU=y
-# CONFIG_TREE_RCU is not set
-# CONFIG_PREEMPT_RCU is not set
-# CONFIG_TREE_RCU_TRACE is not set
-# CONFIG_PREEMPT_RCU_TRACE is not set
 # CONFIG_FREEZER is not set
 
 #
@@ -377,8 +381,8 @@ CONFIG_MTD=y
 CONFIG_MTD_PARTITIONS=y
 # CONFIG_MTD_TESTS is not set
 # CONFIG_MTD_REDBOOT_PARTS is not set
-# CONFIG_MTD_CMDLINE_PARTS is not set
-# CONFIG_MTD_OF_PARTS is not set
+CONFIG_MTD_CMDLINE_PARTS=y
+CONFIG_MTD_OF_PARTS=y
 # CONFIG_MTD_AR7_PARTS is not set
 
 #
@@ -452,7 +456,6 @@ CONFIG_MTD_PHYSMAP=y
 # LPDDR flash memory drivers
 #
 # CONFIG_MTD_LPDDR is not set
-# CONFIG_MTD_QINFO_PROBE is not set
 
 #
 # UBI - Unsorted block images
@@ -478,13 +481,19 @@ CONFIG_BLK_DEV=y
 # CONFIG_BLK_DEV_HD is not set
 CONFIG_MISC_DEVICES=y
 # CONFIG_PHANTOM is not set
-# CONFIG_EEPROM_93CX6 is not set
 # CONFIG_SGI_IOC4 is not set
 # CONFIG_TIFM_CORE is not set
 # CONFIG_ICS932S401 is not set
 # CONFIG_ENCLOSURE_SERVICES is not set
 # CONFIG_HP_ILO is not set
 # CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+# CONFIG_EEPROM_AT24 is not set
+# CONFIG_EEPROM_LEGACY is not set
+# CONFIG_EEPROM_93CX6 is not set
 CONFIG_HAVE_IDE=y
 CONFIG_IDE=y
 
@@ -677,6 +686,7 @@ CONFIG_R8169=y
 # CONFIG_QLA3XXX is not set
 # CONFIG_ATL1 is not set
 # CONFIG_ATL1E is not set
+# CONFIG_ATL1C is not set
 # CONFIG_JME is not set
 # CONFIG_NETDEV_10000 is not set
 # CONFIG_TR is not set
@@ -818,8 +828,6 @@ CONFIG_I2C_MPC=y
 # Miscellaneous I2C Chip support
 #
 # CONFIG_DS1682 is not set
-# CONFIG_EEPROM_AT24 is not set
-# CONFIG_EEPROM_LEGACY is not set
 # CONFIG_SENSORS_PCF8574 is not set
 # CONFIG_PCF8575 is not set
 # CONFIG_SENSORS_PCA9539 is not set
@@ -1159,6 +1167,7 @@ CONFIG_JFFS2_RTIME=y
 # CONFIG_SYSV_FS is not set
 # CONFIG_UFS_FS is not set
 # CONFIG_NETWORK_FILESYSTEMS is not set
+CONFIG_EXPORTFS=m
 
 #
 # Partition Types
diff --git a/arch/powerpc/platforms/embedded6xx/linkstation.c b/arch/powerpc/platforms/embedded6xx/linkstation.c
index 2ca7be6..244f997 100644
--- a/arch/powerpc/platforms/embedded6xx/linkstation.c
+++ b/arch/powerpc/platforms/embedded6xx/linkstation.c
@@ -12,7 +12,6 @@
 
 #include <linux/kernel.h>
 #include <linux/initrd.h>
-#include <linux/mtd/physmap.h>
 #include <linux/of_platform.h>
 
 #include <asm/time.h>
@@ -22,39 +21,6 @@
 
 #include "mpc10x.h"
 
-static struct mtd_partition linkstation_physmap_partitions[] = {
-	{
-		.name   = "mtd_firmimg",
-		.offset = 0x000000,
-		.size   = 0x300000,
-	},
-	{
-		.name   = "mtd_bootcode",
-		.offset = 0x300000,
-		.size   = 0x070000,
-	},
-	{
-		.name   = "mtd_status",
-		.offset = 0x370000,
-		.size   = 0x010000,
-	},
-	{
-		.name   = "mtd_conf",
-		.offset = 0x380000,
-		.size   = 0x080000,
-	},
-	{
-		.name   = "mtd_allflash",
-		.offset = 0x000000,
-		.size   = 0x400000,
-	},
-	{
-		.name   = "mtd_data",
-		.offset = 0x310000,
-		.size   = 0x0f0000,
-	},
-};
-
 static __initdata struct of_device_id of_bus_ids[] = {
 	{ .type = "soc", },
 	{ .compatible = "simple-bus", },
@@ -99,10 +65,6 @@ static int __init linkstation_add_bridge(struct device_node *dev)
 static void __init linkstation_setup_arch(void)
 {
 	struct device_node *np;
-#ifdef CONFIG_MTD_PHYSMAP
-	physmap_set_partitions(linkstation_physmap_partitions,
-			       ARRAY_SIZE(linkstation_physmap_partitions));
-#endif
 
 	/* Lookup PCI host bridges */
 	for_each_compatible_node(np, "pci", "mpc10x-pci")
diff --git a/arch/powerpc/platforms/embedded6xx/storcenter.c b/arch/powerpc/platforms/embedded6xx/storcenter.c
index 8864e48..613070e 100644
--- a/arch/powerpc/platforms/embedded6xx/storcenter.c
+++ b/arch/powerpc/platforms/embedded6xx/storcenter.c
@@ -14,7 +14,6 @@
 #include <linux/kernel.h>
 #include <linux/pci.h>
 #include <linux/initrd.h>
-#include <linux/mtd/physmap.h>
 #include <linux/of_platform.h>
 
 #include <asm/system.h>
@@ -26,32 +25,6 @@
 #include "mpc10x.h"
 
 
-#ifdef CONFIG_MTD_PHYSMAP
-static struct mtd_partition storcenter_physmap_partitions[] = {
-	{
-		.name   = "kernel",
-		.offset = 0x000000,
-		.size   = 0x170000,
-	},
-	{
-		.name   = "rootfs",
-		.offset = 0x170000,
-		.size   = 0x590000,
-	},
-	{
-		.name   = "uboot",
-		.offset = 0x700000,
-		.size   = 0x040000,
-	},
-	{
-		.name   = "config",
-		.offset = 0x740000,
-		.size   = 0x0c0000,
-	},
-};
-#endif
-
-
 static __initdata struct of_device_id storcenter_of_bus[] = {
 	{ .name = "soc", },
 	{},
@@ -96,11 +69,6 @@ static void __init storcenter_setup_arch(void)
 {
 	struct device_node *np;
 
-#ifdef CONFIG_MTD_PHYSMAP
-	physmap_set_partitions(storcenter_physmap_partitions,
-			       ARRAY_SIZE(storcenter_physmap_partitions));
-#endif
-
 	/* Lookup PCI host bridges */
 	for_each_compatible_node(np, "pci", "mpc10x-pci")
 		storcenter_add_bridge(np);

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH] powerpc: fix linkstation and storcenter compilation breakage
@ 2009-03-05 23:25           ` Guennadi Liakhovetski
  0 siblings, 0 replies; 13+ messages in thread
From: Guennadi Liakhovetski @ 2009-03-05 23:25 UTC (permalink / raw)
  To: Rogério Brito
  Cc: linux-kernel, linux-mtd, dwmw2, torvalds, Guennadi Liakhovetski

Defining flash partition table in platform code is deprecated, and due to 
recent changes linkstation and storcenter do not compile any more with 
their default configurations because of undefined references to 
physmap_set_partitions(). Instead of fixing them by using the correct 
kernel configuration macro in preprocessor conditional, remove partition 
table definitions altogether. Instead add support for partition definition 
on the command-line and in device tree to the default configurations.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
---
Kumar, could you push this up ASAP, please? This fixes

[Bug #12811] undefined reference to `physmap_set_partitions' on powerpc

diff --git a/arch/powerpc/configs/linkstation_defconfig b/arch/powerpc/configs/linkstation_defconfig
index aa5855a..15900dc 100644
--- a/arch/powerpc/configs/linkstation_defconfig
+++ b/arch/powerpc/configs/linkstation_defconfig
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.29-rc2
-# Mon Jan 26 15:35:29 2009
+# Linux kernel version: 2.6.29-rc6
+# Fri Mar  6 00:07:38 2009
 #
 # CONFIG_PPC64 is not set
 
@@ -71,6 +71,15 @@ CONFIG_POSIX_MQUEUE=y
 # CONFIG_BSD_PROCESS_ACCT is not set
 # CONFIG_TASKSTATS is not set
 # CONFIG_AUDIT is not set
+
+#
+# RCU Subsystem
+#
+CONFIG_CLASSIC_RCU=y
+# CONFIG_TREE_RCU is not set
+# CONFIG_PREEMPT_RCU is not set
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_PREEMPT_RCU_TRACE is not set
 CONFIG_IKCONFIG=y
 CONFIG_IKCONFIG_PROC=y
 CONFIG_LOG_BUF_SHIFT=14
@@ -88,6 +97,7 @@ CONFIG_NAMESPACES=y
 # CONFIG_IPC_NS is not set
 # CONFIG_USER_NS is not set
 # CONFIG_PID_NS is not set
+# CONFIG_NET_NS is not set
 CONFIG_BLK_DEV_INITRD=y
 CONFIG_INITRAMFS_SOURCE=""
 CONFIG_CC_OPTIMIZE_FOR_SIZE=y
@@ -153,11 +163,6 @@ CONFIG_DEFAULT_AS=y
 # CONFIG_DEFAULT_CFQ is not set
 # CONFIG_DEFAULT_NOOP is not set
 CONFIG_DEFAULT_IOSCHED="anticipatory"
-CONFIG_CLASSIC_RCU=y
-# CONFIG_TREE_RCU is not set
-# CONFIG_PREEMPT_RCU is not set
-# CONFIG_TREE_RCU_TRACE is not set
-# CONFIG_PREEMPT_RCU_TRACE is not set
 # CONFIG_FREEZER is not set
 
 #
@@ -294,7 +299,6 @@ CONFIG_NET=y
 #
 # Networking options
 #
-# CONFIG_NET_NS is not set
 CONFIG_COMPAT_NET_DEV_OPS=y
 CONFIG_PACKET=y
 CONFIG_PACKET_MMAP=y
@@ -508,8 +512,8 @@ CONFIG_MTD_CONCAT=y
 CONFIG_MTD_PARTITIONS=y
 # CONFIG_MTD_TESTS is not set
 # CONFIG_MTD_REDBOOT_PARTS is not set
-# CONFIG_MTD_CMDLINE_PARTS is not set
-# CONFIG_MTD_OF_PARTS is not set
+CONFIG_MTD_CMDLINE_PARTS=y
+CONFIG_MTD_OF_PARTS=y
 # CONFIG_MTD_AR7_PARTS is not set
 
 #
@@ -587,7 +591,6 @@ CONFIG_MTD_PHYSMAP=y
 # LPDDR flash memory drivers
 #
 # CONFIG_MTD_LPDDR is not set
-# CONFIG_MTD_QINFO_PROBE is not set
 
 #
 # UBI - Unsorted block images
@@ -617,13 +620,19 @@ CONFIG_BLK_DEV_RAM_SIZE=8192
 # CONFIG_BLK_DEV_HD is not set
 CONFIG_MISC_DEVICES=y
 # CONFIG_PHANTOM is not set
-# CONFIG_EEPROM_93CX6 is not set
 # CONFIG_SGI_IOC4 is not set
 # CONFIG_TIFM_CORE is not set
 # CONFIG_ICS932S401 is not set
 # CONFIG_ENCLOSURE_SERVICES is not set
 # CONFIG_HP_ILO is not set
 # CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+# CONFIG_EEPROM_AT24 is not set
+CONFIG_EEPROM_LEGACY=m
+# CONFIG_EEPROM_93CX6 is not set
 CONFIG_HAVE_IDE=y
 # CONFIG_IDE is not set
 
@@ -839,6 +848,7 @@ CONFIG_R8169=y
 # CONFIG_QLA3XXX is not set
 # CONFIG_ATL1 is not set
 # CONFIG_ATL1E is not set
+# CONFIG_ATL1C is not set
 # CONFIG_JME is not set
 CONFIG_NETDEV_10000=y
 # CONFIG_CHELSIO_T1 is not set
@@ -1037,8 +1047,6 @@ CONFIG_I2C_MPC=y
 # Miscellaneous I2C Chip support
 #
 # CONFIG_DS1682 is not set
-# CONFIG_EEPROM_AT24 is not set
-CONFIG_EEPROM_LEGACY=m
 # CONFIG_SENSORS_PCF8574 is not set
 # CONFIG_PCF8575 is not set
 # CONFIG_SENSORS_PCA9539 is not set
diff --git a/arch/powerpc/configs/storcenter_defconfig b/arch/powerpc/configs/storcenter_defconfig
index 86512c8..9490346 100644
--- a/arch/powerpc/configs/storcenter_defconfig
+++ b/arch/powerpc/configs/storcenter_defconfig
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.29-rc2
-# Mon Jan 26 15:35:46 2009
+# Linux kernel version: 2.6.29-rc6
+# Fri Mar  6 00:09:08 2009
 #
 # CONFIG_PPC64 is not set
 
@@ -71,6 +71,15 @@ CONFIG_SYSVIPC_SYSCTL=y
 # CONFIG_BSD_PROCESS_ACCT is not set
 # CONFIG_TASKSTATS is not set
 # CONFIG_AUDIT is not set
+
+#
+# RCU Subsystem
+#
+CONFIG_CLASSIC_RCU=y
+# CONFIG_TREE_RCU is not set
+# CONFIG_PREEMPT_RCU is not set
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_PREEMPT_RCU_TRACE is not set
 # CONFIG_IKCONFIG is not set
 CONFIG_LOG_BUF_SHIFT=14
 CONFIG_GROUP_SCHED=y
@@ -144,11 +153,6 @@ CONFIG_IOSCHED_CFQ=y
 CONFIG_DEFAULT_CFQ=y
 # CONFIG_DEFAULT_NOOP is not set
 CONFIG_DEFAULT_IOSCHED="cfq"
-CONFIG_CLASSIC_RCU=y
-# CONFIG_TREE_RCU is not set
-# CONFIG_PREEMPT_RCU is not set
-# CONFIG_TREE_RCU_TRACE is not set
-# CONFIG_PREEMPT_RCU_TRACE is not set
 # CONFIG_FREEZER is not set
 
 #
@@ -377,8 +381,8 @@ CONFIG_MTD=y
 CONFIG_MTD_PARTITIONS=y
 # CONFIG_MTD_TESTS is not set
 # CONFIG_MTD_REDBOOT_PARTS is not set
-# CONFIG_MTD_CMDLINE_PARTS is not set
-# CONFIG_MTD_OF_PARTS is not set
+CONFIG_MTD_CMDLINE_PARTS=y
+CONFIG_MTD_OF_PARTS=y
 # CONFIG_MTD_AR7_PARTS is not set
 
 #
@@ -452,7 +456,6 @@ CONFIG_MTD_PHYSMAP=y
 # LPDDR flash memory drivers
 #
 # CONFIG_MTD_LPDDR is not set
-# CONFIG_MTD_QINFO_PROBE is not set
 
 #
 # UBI - Unsorted block images
@@ -478,13 +481,19 @@ CONFIG_BLK_DEV=y
 # CONFIG_BLK_DEV_HD is not set
 CONFIG_MISC_DEVICES=y
 # CONFIG_PHANTOM is not set
-# CONFIG_EEPROM_93CX6 is not set
 # CONFIG_SGI_IOC4 is not set
 # CONFIG_TIFM_CORE is not set
 # CONFIG_ICS932S401 is not set
 # CONFIG_ENCLOSURE_SERVICES is not set
 # CONFIG_HP_ILO is not set
 # CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+# CONFIG_EEPROM_AT24 is not set
+# CONFIG_EEPROM_LEGACY is not set
+# CONFIG_EEPROM_93CX6 is not set
 CONFIG_HAVE_IDE=y
 CONFIG_IDE=y
 
@@ -677,6 +686,7 @@ CONFIG_R8169=y
 # CONFIG_QLA3XXX is not set
 # CONFIG_ATL1 is not set
 # CONFIG_ATL1E is not set
+# CONFIG_ATL1C is not set
 # CONFIG_JME is not set
 # CONFIG_NETDEV_10000 is not set
 # CONFIG_TR is not set
@@ -818,8 +828,6 @@ CONFIG_I2C_MPC=y
 # Miscellaneous I2C Chip support
 #
 # CONFIG_DS1682 is not set
-# CONFIG_EEPROM_AT24 is not set
-# CONFIG_EEPROM_LEGACY is not set
 # CONFIG_SENSORS_PCF8574 is not set
 # CONFIG_PCF8575 is not set
 # CONFIG_SENSORS_PCA9539 is not set
@@ -1159,6 +1167,7 @@ CONFIG_JFFS2_RTIME=y
 # CONFIG_SYSV_FS is not set
 # CONFIG_UFS_FS is not set
 # CONFIG_NETWORK_FILESYSTEMS is not set
+CONFIG_EXPORTFS=m
 
 #
 # Partition Types
diff --git a/arch/powerpc/platforms/embedded6xx/linkstation.c b/arch/powerpc/platforms/embedded6xx/linkstation.c
index 2ca7be6..244f997 100644
--- a/arch/powerpc/platforms/embedded6xx/linkstation.c
+++ b/arch/powerpc/platforms/embedded6xx/linkstation.c
@@ -12,7 +12,6 @@
 
 #include <linux/kernel.h>
 #include <linux/initrd.h>
-#include <linux/mtd/physmap.h>
 #include <linux/of_platform.h>
 
 #include <asm/time.h>
@@ -22,39 +21,6 @@
 
 #include "mpc10x.h"
 
-static struct mtd_partition linkstation_physmap_partitions[] = {
-	{
-		.name   = "mtd_firmimg",
-		.offset = 0x000000,
-		.size   = 0x300000,
-	},
-	{
-		.name   = "mtd_bootcode",
-		.offset = 0x300000,
-		.size   = 0x070000,
-	},
-	{
-		.name   = "mtd_status",
-		.offset = 0x370000,
-		.size   = 0x010000,
-	},
-	{
-		.name   = "mtd_conf",
-		.offset = 0x380000,
-		.size   = 0x080000,
-	},
-	{
-		.name   = "mtd_allflash",
-		.offset = 0x000000,
-		.size   = 0x400000,
-	},
-	{
-		.name   = "mtd_data",
-		.offset = 0x310000,
-		.size   = 0x0f0000,
-	},
-};
-
 static __initdata struct of_device_id of_bus_ids[] = {
 	{ .type = "soc", },
 	{ .compatible = "simple-bus", },
@@ -99,10 +65,6 @@ static int __init linkstation_add_bridge(struct device_node *dev)
 static void __init linkstation_setup_arch(void)
 {
 	struct device_node *np;
-#ifdef CONFIG_MTD_PHYSMAP
-	physmap_set_partitions(linkstation_physmap_partitions,
-			       ARRAY_SIZE(linkstation_physmap_partitions));
-#endif
 
 	/* Lookup PCI host bridges */
 	for_each_compatible_node(np, "pci", "mpc10x-pci")
diff --git a/arch/powerpc/platforms/embedded6xx/storcenter.c b/arch/powerpc/platforms/embedded6xx/storcenter.c
index 8864e48..613070e 100644
--- a/arch/powerpc/platforms/embedded6xx/storcenter.c
+++ b/arch/powerpc/platforms/embedded6xx/storcenter.c
@@ -14,7 +14,6 @@
 #include <linux/kernel.h>
 #include <linux/pci.h>
 #include <linux/initrd.h>
-#include <linux/mtd/physmap.h>
 #include <linux/of_platform.h>
 
 #include <asm/system.h>
@@ -26,32 +25,6 @@
 #include "mpc10x.h"
 
 
-#ifdef CONFIG_MTD_PHYSMAP
-static struct mtd_partition storcenter_physmap_partitions[] = {
-	{
-		.name   = "kernel",
-		.offset = 0x000000,
-		.size   = 0x170000,
-	},
-	{
-		.name   = "rootfs",
-		.offset = 0x170000,
-		.size   = 0x590000,
-	},
-	{
-		.name   = "uboot",
-		.offset = 0x700000,
-		.size   = 0x040000,
-	},
-	{
-		.name   = "config",
-		.offset = 0x740000,
-		.size   = 0x0c0000,
-	},
-};
-#endif
-
-
 static __initdata struct of_device_id storcenter_of_bus[] = {
 	{ .name = "soc", },
 	{},
@@ -96,11 +69,6 @@ static void __init storcenter_setup_arch(void)
 {
 	struct device_node *np;
 
-#ifdef CONFIG_MTD_PHYSMAP
-	physmap_set_partitions(storcenter_physmap_partitions,
-			       ARRAY_SIZE(storcenter_physmap_partitions));
-#endif
-
 	/* Lookup PCI host bridges */
 	for_each_compatible_node(np, "pci", "mpc10x-pci")
 		storcenter_add_bridge(np);

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH] powerpc: fix linkstation and storcenter compilation breakage
@ 2009-03-05 23:25           ` Guennadi Liakhovetski
  0 siblings, 0 replies; 13+ messages in thread
From: Guennadi Liakhovetski @ 2009-03-05 23:25 UTC (permalink / raw)
  To: Rogério Brito
  Cc: linux-kernel, Kumar Gala, Tony Breeds, linux-mtd, dwmw2,
	torvalds, Guennadi Liakhovetski

Defining flash partition table in platform code is deprecated, and due to 
recent changes linkstation and storcenter do not compile any more with 
their default configurations because of undefined references to 
physmap_set_partitions(). Instead of fixing them by using the correct 
kernel configuration macro in preprocessor conditional, remove partition 
table definitions altogether. Instead add support for partition definition 
on the command-line and in device tree to the default configurations.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
---
Kumar, could you push this up ASAP, please? This fixes

[Bug #12811] undefined reference to `physmap_set_partitions' on powerpc

diff --git a/arch/powerpc/configs/linkstation_defconfig b/arch/powerpc/configs/linkstation_defconfig
index aa5855a..15900dc 100644
--- a/arch/powerpc/configs/linkstation_defconfig
+++ b/arch/powerpc/configs/linkstation_defconfig
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.29-rc2
-# Mon Jan 26 15:35:29 2009
+# Linux kernel version: 2.6.29-rc6
+# Fri Mar  6 00:07:38 2009
 #
 # CONFIG_PPC64 is not set
 
@@ -71,6 +71,15 @@ CONFIG_POSIX_MQUEUE=y
 # CONFIG_BSD_PROCESS_ACCT is not set
 # CONFIG_TASKSTATS is not set
 # CONFIG_AUDIT is not set
+
+#
+# RCU Subsystem
+#
+CONFIG_CLASSIC_RCU=y
+# CONFIG_TREE_RCU is not set
+# CONFIG_PREEMPT_RCU is not set
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_PREEMPT_RCU_TRACE is not set
 CONFIG_IKCONFIG=y
 CONFIG_IKCONFIG_PROC=y
 CONFIG_LOG_BUF_SHIFT=14
@@ -88,6 +97,7 @@ CONFIG_NAMESPACES=y
 # CONFIG_IPC_NS is not set
 # CONFIG_USER_NS is not set
 # CONFIG_PID_NS is not set
+# CONFIG_NET_NS is not set
 CONFIG_BLK_DEV_INITRD=y
 CONFIG_INITRAMFS_SOURCE=""
 CONFIG_CC_OPTIMIZE_FOR_SIZE=y
@@ -153,11 +163,6 @@ CONFIG_DEFAULT_AS=y
 # CONFIG_DEFAULT_CFQ is not set
 # CONFIG_DEFAULT_NOOP is not set
 CONFIG_DEFAULT_IOSCHED="anticipatory"
-CONFIG_CLASSIC_RCU=y
-# CONFIG_TREE_RCU is not set
-# CONFIG_PREEMPT_RCU is not set
-# CONFIG_TREE_RCU_TRACE is not set
-# CONFIG_PREEMPT_RCU_TRACE is not set
 # CONFIG_FREEZER is not set
 
 #
@@ -294,7 +299,6 @@ CONFIG_NET=y
 #
 # Networking options
 #
-# CONFIG_NET_NS is not set
 CONFIG_COMPAT_NET_DEV_OPS=y
 CONFIG_PACKET=y
 CONFIG_PACKET_MMAP=y
@@ -508,8 +512,8 @@ CONFIG_MTD_CONCAT=y
 CONFIG_MTD_PARTITIONS=y
 # CONFIG_MTD_TESTS is not set
 # CONFIG_MTD_REDBOOT_PARTS is not set
-# CONFIG_MTD_CMDLINE_PARTS is not set
-# CONFIG_MTD_OF_PARTS is not set
+CONFIG_MTD_CMDLINE_PARTS=y
+CONFIG_MTD_OF_PARTS=y
 # CONFIG_MTD_AR7_PARTS is not set
 
 #
@@ -587,7 +591,6 @@ CONFIG_MTD_PHYSMAP=y
 # LPDDR flash memory drivers
 #
 # CONFIG_MTD_LPDDR is not set
-# CONFIG_MTD_QINFO_PROBE is not set
 
 #
 # UBI - Unsorted block images
@@ -617,13 +620,19 @@ CONFIG_BLK_DEV_RAM_SIZE=8192
 # CONFIG_BLK_DEV_HD is not set
 CONFIG_MISC_DEVICES=y
 # CONFIG_PHANTOM is not set
-# CONFIG_EEPROM_93CX6 is not set
 # CONFIG_SGI_IOC4 is not set
 # CONFIG_TIFM_CORE is not set
 # CONFIG_ICS932S401 is not set
 # CONFIG_ENCLOSURE_SERVICES is not set
 # CONFIG_HP_ILO is not set
 # CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+# CONFIG_EEPROM_AT24 is not set
+CONFIG_EEPROM_LEGACY=m
+# CONFIG_EEPROM_93CX6 is not set
 CONFIG_HAVE_IDE=y
 # CONFIG_IDE is not set
 
@@ -839,6 +848,7 @@ CONFIG_R8169=y
 # CONFIG_QLA3XXX is not set
 # CONFIG_ATL1 is not set
 # CONFIG_ATL1E is not set
+# CONFIG_ATL1C is not set
 # CONFIG_JME is not set
 CONFIG_NETDEV_10000=y
 # CONFIG_CHELSIO_T1 is not set
@@ -1037,8 +1047,6 @@ CONFIG_I2C_MPC=y
 # Miscellaneous I2C Chip support
 #
 # CONFIG_DS1682 is not set
-# CONFIG_EEPROM_AT24 is not set
-CONFIG_EEPROM_LEGACY=m
 # CONFIG_SENSORS_PCF8574 is not set
 # CONFIG_PCF8575 is not set
 # CONFIG_SENSORS_PCA9539 is not set
diff --git a/arch/powerpc/configs/storcenter_defconfig b/arch/powerpc/configs/storcenter_defconfig
index 86512c8..9490346 100644
--- a/arch/powerpc/configs/storcenter_defconfig
+++ b/arch/powerpc/configs/storcenter_defconfig
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.29-rc2
-# Mon Jan 26 15:35:46 2009
+# Linux kernel version: 2.6.29-rc6
+# Fri Mar  6 00:09:08 2009
 #
 # CONFIG_PPC64 is not set
 
@@ -71,6 +71,15 @@ CONFIG_SYSVIPC_SYSCTL=y
 # CONFIG_BSD_PROCESS_ACCT is not set
 # CONFIG_TASKSTATS is not set
 # CONFIG_AUDIT is not set
+
+#
+# RCU Subsystem
+#
+CONFIG_CLASSIC_RCU=y
+# CONFIG_TREE_RCU is not set
+# CONFIG_PREEMPT_RCU is not set
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_PREEMPT_RCU_TRACE is not set
 # CONFIG_IKCONFIG is not set
 CONFIG_LOG_BUF_SHIFT=14
 CONFIG_GROUP_SCHED=y
@@ -144,11 +153,6 @@ CONFIG_IOSCHED_CFQ=y
 CONFIG_DEFAULT_CFQ=y
 # CONFIG_DEFAULT_NOOP is not set
 CONFIG_DEFAULT_IOSCHED="cfq"
-CONFIG_CLASSIC_RCU=y
-# CONFIG_TREE_RCU is not set
-# CONFIG_PREEMPT_RCU is not set
-# CONFIG_TREE_RCU_TRACE is not set
-# CONFIG_PREEMPT_RCU_TRACE is not set
 # CONFIG_FREEZER is not set
 
 #
@@ -377,8 +381,8 @@ CONFIG_MTD=y
 CONFIG_MTD_PARTITIONS=y
 # CONFIG_MTD_TESTS is not set
 # CONFIG_MTD_REDBOOT_PARTS is not set
-# CONFIG_MTD_CMDLINE_PARTS is not set
-# CONFIG_MTD_OF_PARTS is not set
+CONFIG_MTD_CMDLINE_PARTS=y
+CONFIG_MTD_OF_PARTS=y
 # CONFIG_MTD_AR7_PARTS is not set
 
 #
@@ -452,7 +456,6 @@ CONFIG_MTD_PHYSMAP=y
 # LPDDR flash memory drivers
 #
 # CONFIG_MTD_LPDDR is not set
-# CONFIG_MTD_QINFO_PROBE is not set
 
 #
 # UBI - Unsorted block images
@@ -478,13 +481,19 @@ CONFIG_BLK_DEV=y
 # CONFIG_BLK_DEV_HD is not set
 CONFIG_MISC_DEVICES=y
 # CONFIG_PHANTOM is not set
-# CONFIG_EEPROM_93CX6 is not set
 # CONFIG_SGI_IOC4 is not set
 # CONFIG_TIFM_CORE is not set
 # CONFIG_ICS932S401 is not set
 # CONFIG_ENCLOSURE_SERVICES is not set
 # CONFIG_HP_ILO is not set
 # CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+# CONFIG_EEPROM_AT24 is not set
+# CONFIG_EEPROM_LEGACY is not set
+# CONFIG_EEPROM_93CX6 is not set
 CONFIG_HAVE_IDE=y
 CONFIG_IDE=y
 
@@ -677,6 +686,7 @@ CONFIG_R8169=y
 # CONFIG_QLA3XXX is not set
 # CONFIG_ATL1 is not set
 # CONFIG_ATL1E is not set
+# CONFIG_ATL1C is not set
 # CONFIG_JME is not set
 # CONFIG_NETDEV_10000 is not set
 # CONFIG_TR is not set
@@ -818,8 +828,6 @@ CONFIG_I2C_MPC=y
 # Miscellaneous I2C Chip support
 #
 # CONFIG_DS1682 is not set
-# CONFIG_EEPROM_AT24 is not set
-# CONFIG_EEPROM_LEGACY is not set
 # CONFIG_SENSORS_PCF8574 is not set
 # CONFIG_PCF8575 is not set
 # CONFIG_SENSORS_PCA9539 is not set
@@ -1159,6 +1167,7 @@ CONFIG_JFFS2_RTIME=y
 # CONFIG_SYSV_FS is not set
 # CONFIG_UFS_FS is not set
 # CONFIG_NETWORK_FILESYSTEMS is not set
+CONFIG_EXPORTFS=m
 
 #
 # Partition Types
diff --git a/arch/powerpc/platforms/embedded6xx/linkstation.c b/arch/powerpc/platforms/embedded6xx/linkstation.c
index 2ca7be6..244f997 100644
--- a/arch/powerpc/platforms/embedded6xx/linkstation.c
+++ b/arch/powerpc/platforms/embedded6xx/linkstation.c
@@ -12,7 +12,6 @@
 
 #include <linux/kernel.h>
 #include <linux/initrd.h>
-#include <linux/mtd/physmap.h>
 #include <linux/of_platform.h>
 
 #include <asm/time.h>
@@ -22,39 +21,6 @@
 
 #include "mpc10x.h"
 
-static struct mtd_partition linkstation_physmap_partitions[] = {
-	{
-		.name   = "mtd_firmimg",
-		.offset = 0x000000,
-		.size   = 0x300000,
-	},
-	{
-		.name   = "mtd_bootcode",
-		.offset = 0x300000,
-		.size   = 0x070000,
-	},
-	{
-		.name   = "mtd_status",
-		.offset = 0x370000,
-		.size   = 0x010000,
-	},
-	{
-		.name   = "mtd_conf",
-		.offset = 0x380000,
-		.size   = 0x080000,
-	},
-	{
-		.name   = "mtd_allflash",
-		.offset = 0x000000,
-		.size   = 0x400000,
-	},
-	{
-		.name   = "mtd_data",
-		.offset = 0x310000,
-		.size   = 0x0f0000,
-	},
-};
-
 static __initdata struct of_device_id of_bus_ids[] = {
 	{ .type = "soc", },
 	{ .compatible = "simple-bus", },
@@ -99,10 +65,6 @@ static int __init linkstation_add_bridge(struct device_node *dev)
 static void __init linkstation_setup_arch(void)
 {
 	struct device_node *np;
-#ifdef CONFIG_MTD_PHYSMAP
-	physmap_set_partitions(linkstation_physmap_partitions,
-			       ARRAY_SIZE(linkstation_physmap_partitions));
-#endif
 
 	/* Lookup PCI host bridges */
 	for_each_compatible_node(np, "pci", "mpc10x-pci")
diff --git a/arch/powerpc/platforms/embedded6xx/storcenter.c b/arch/powerpc/platforms/embedded6xx/storcenter.c
index 8864e48..613070e 100644
--- a/arch/powerpc/platforms/embedded6xx/storcenter.c
+++ b/arch/powerpc/platforms/embedded6xx/storcenter.c
@@ -14,7 +14,6 @@
 #include <linux/kernel.h>
 #include <linux/pci.h>
 #include <linux/initrd.h>
-#include <linux/mtd/physmap.h>
 #include <linux/of_platform.h>
 
 #include <asm/system.h>
@@ -26,32 +25,6 @@
 #include "mpc10x.h"
 
 
-#ifdef CONFIG_MTD_PHYSMAP
-static struct mtd_partition storcenter_physmap_partitions[] = {
-	{
-		.name   = "kernel",
-		.offset = 0x000000,
-		.size   = 0x170000,
-	},
-	{
-		.name   = "rootfs",
-		.offset = 0x170000,
-		.size   = 0x590000,
-	},
-	{
-		.name   = "uboot",
-		.offset = 0x700000,
-		.size   = 0x040000,
-	},
-	{
-		.name   = "config",
-		.offset = 0x740000,
-		.size   = 0x0c0000,
-	},
-};
-#endif
-
-
 static __initdata struct of_device_id storcenter_of_bus[] = {
 	{ .name = "soc", },
 	{},
@@ -96,11 +69,6 @@ static void __init storcenter_setup_arch(void)
 {
 	struct device_node *np;
 
-#ifdef CONFIG_MTD_PHYSMAP
-	physmap_set_partitions(storcenter_physmap_partitions,
-			       ARRAY_SIZE(storcenter_physmap_partitions));
-#endif
-
 	/* Lookup PCI host bridges */
 	for_each_compatible_node(np, "pci", "mpc10x-pci")
 		storcenter_add_bridge(np);

^ permalink raw reply related	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2009-03-06 20:51 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-03-02  9:43 Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox Rogério Brito
2009-03-03  2:48 ` Tony Breeds
2009-03-03  8:34   ` [PATCH] powerpc: fix the defaults for the linkstation MTD device (was: Re: Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox) Rogério Brito
2009-03-04  7:46     ` Guennadi Liakhovetski
2009-03-04 21:45       ` [PATCH] powerpc: fix the defaults for the linkstation MTD device Rogério Brito
2009-03-05 23:25         ` [PATCH] powerpc: fix linkstation and storcenter compilation breakage Guennadi Liakhovetski
2009-03-05 23:25           ` Guennadi Liakhovetski
2009-03-05 23:25           ` Guennadi Liakhovetski
2009-03-04  0:07 ` Linux 2.6.29-rc6 bombs while compiling a kernel for a linkstation/kurobox Guennadi Liakhovetski
2009-03-04  0:07   ` Guennadi Liakhovetski
2009-03-04  1:04   ` Rogério Brito
2009-03-04  1:04     ` Rogério Brito
2009-03-04  1:04     ` Rogério Brito

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.