[PATCH] ppc32: Support for Freescale PQ2FADS

2006-04-13 Thread Wade Farnsworth
From: Wade Farnsworth <[EMAIL PROTECTED]>

Adds support for the Freescale PQ2FADS board.

Signed-off-by: Wade Farnsworth 

---

This patch makes use of PHYLIB, and as such requires the following
patches from Vitaly Bordug :

ppc32: Fix string comparing in platform_notify_map
PAL: Support of the fixed PHY
FS_ENET: use PAL for mii management

This supercedes the previous patch posted on April 4.

 arch/ppc/Kconfig   |2
 arch/ppc/configs/pq2fads_defconfig |  783 +++
 arch/ppc/platforms/Makefile|1
 arch/ppc/platforms/pq2ads.h|   17
 arch/ppc/platforms/pq2ads_pd.h |   15
 arch/ppc/platforms/pq2fads_setup.c |  248 
 arch/ppc/syslib/m82xx_pci.c|5
 arch/ppc/syslib/pq2_sys.c  |   10
 8 files changed, 1075 insertions(+), 6 deletions(-)

diff -uprN linux-2.6-orig/arch/ppc/Kconfig linux-2.6-new/arch/ppc/Kconfig
--- linux-2.6-orig/arch/ppc/Kconfig 2006-04-11 11:00:08.0 -0700
+++ linux-2.6-new/arch/ppc/Kconfig  2006-04-11 11:14:52.0 -0700
@@ -731,7 +731,7 @@ endchoice
 
 config PQ2ADS
bool
-   depends on ADS8272
+   depends on ADS8272 || PQ2FADS
default y
 
 config TQM8xxL
diff -uprN linux-2.6-orig/arch/ppc/configs/pq2fads_defconfig 
linux-2.6-new/arch/ppc/configs/pq2fads_defconfig
--- linux-2.6-orig/arch/ppc/configs/pq2fads_defconfig   1969-12-31 
17:00:00.0 -0700
+++ linux-2.6-new/arch/ppc/configs/pq2fads_defconfig2006-04-11 
11:34:30.0 -0700
@@ -0,0 +1,783 @@
+#
+# Automatically generated make config: don't edit
+# Linux kernel version: 2.6.17-rc1
+# Tue Apr 11 11:34:23 2006
+#
+CONFIG_MMU=y
+CONFIG_GENERIC_HARDIRQS=y
+CONFIG_RWSEM_XCHGADD_ALGORITHM=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_PPC=y
+CONFIG_PPC32=y
+CONFIG_GENERIC_NVRAM=y
+CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
+CONFIG_ARCH_MAY_HAVE_PC_FDC=y
+
+#
+# Code maturity level options
+#
+CONFIG_EXPERIMENTAL=y
+CONFIG_BROKEN_ON_SMP=y
+CONFIG_INIT_ENV_ARG_LIMIT=32
+
+#
+# General setup
+#
+CONFIG_LOCALVERSION=""
+CONFIG_LOCALVERSION_AUTO=y
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+# CONFIG_POSIX_MQUEUE is not set
+# CONFIG_BSD_PROCESS_ACCT is not set
+CONFIG_SYSCTL=y
+# CONFIG_AUDIT is not set
+# CONFIG_IKCONFIG is not set
+# CONFIG_RELAY is not set
+CONFIG_INITRAMFS_SOURCE=""
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_EMBEDDED=y
+# CONFIG_KALLSYMS is not set
+# CONFIG_HOTPLUG is not set
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+# CONFIG_EPOLL is not set
+CONFIG_SHMEM=y
+CONFIG_SLAB=y
+CONFIG_DOUBLEFAULT=y
+# CONFIG_TINY_SHMEM is not set
+CONFIG_BASE_SMALL=0
+# CONFIG_SLOB is not set
+
+#
+# Loadable module support
+#
+# CONFIG_MODULES is not set
+
+#
+# Block layer
+#
+# CONFIG_LBD is not set
+# CONFIG_BLK_DEV_IO_TRACE is not set
+# CONFIG_LSF is not set
+
+#
+# IO Schedulers
+#
+CONFIG_IOSCHED_NOOP=y
+CONFIG_IOSCHED_AS=y
+CONFIG_IOSCHED_DEADLINE=y
+CONFIG_IOSCHED_CFQ=y
+CONFIG_DEFAULT_AS=y
+# CONFIG_DEFAULT_DEADLINE is not set
+# CONFIG_DEFAULT_CFQ is not set
+# CONFIG_DEFAULT_NOOP is not set
+CONFIG_DEFAULT_IOSCHED="anticipatory"
+
+#
+# Processor
+#
+CONFIG_6xx=y
+# CONFIG_40x is not set
+# CONFIG_44x is not set
+# CONFIG_8xx is not set
+# CONFIG_E200 is not set
+# CONFIG_E500 is not set
+CONFIG_PPC_FPU=y
+# CONFIG_KEXEC is not set
+# CONFIG_CPU_FREQ is not set
+# CONFIG_WANT_EARLY_SERIAL is not set
+CONFIG_EMBEDDEDBOOT=y
+CONFIG_PPC_STD_MMU=y
+
+#
+# Platform options
+#
+
+#
+# Freescale Ethernet driver platform-specific options
+#
+# CONFIG_PPC_PREP is not set
+# CONFIG_APUS is not set
+# CONFIG_KATANA is not set
+# CONFIG_WILLOW is not set
+# CONFIG_CPCI690 is not set
+# CONFIG_POWERPMC250 is not set
+# CONFIG_CHESTNUT is not set
+# CONFIG_SPRUCE is not set
+# CONFIG_HDPU is not set
+# CONFIG_EV64260 is not set
+# CONFIG_LOPEC is not set
+# CONFIG_MVME5100 is not set
+# CONFIG_PPLUS is not set
+# CONFIG_PRPMC750 is not set
+# CONFIG_PRPMC800 is not set
+# CONFIG_SANDPOINT is not set
+# CONFIG_RADSTONE_PPC7D is not set
+# CONFIG_PAL4 is not set
+# CONFIG_GEMINI is not set
+# CONFIG_EST8260 is not set
+# CONFIG_SBC82xx is not set
+# CONFIG_SBS8260 is not set
+# CONFIG_RPX8260 is not set
+# CONFIG_TQM8260 is not set
+# CONFIG_ADS8272 is not set
+CONFIG_PQ2FADS=y
+# CONFIG_LITE5200 is not set
+# CONFIG_MPC834x_SYS is not set
+# CONFIG_EV64360 is not set
+CONFIG_PQ2ADS=y
+CONFIG_8260=y
+CONFIG_CPM2=y
+# CONFIG_PC_KEYBOARD is not set
+# CONFIG_SMP is not set
+# CONFIG_HIGHMEM is not set
+# CONFIG_HZ_100 is not set
+CONFIG_HZ_250=y
+# CONFIG_HZ_1000 is not set
+CONFIG_HZ=250
+CONFIG_PREEMPT_NONE=y
+# CONFIG_PREEMPT_VOLUNTARY is not set
+# CONFIG_PREEMPT is not set
+CONFIG_SELECT_MEMORY_MODEL=y
+CONFIG_FLATMEM_MANUAL=y
+# CONFIG_DISCONTIGMEM_MANUAL is not set
+# CONFIG_SPARSEMEM_MANUAL is not set
+CONFIG_FLATMEM=y
+CONFIG_FLAT_NODE_MEM_MAP=y
+# CONFIG_SPARSEMEM_STATIC is not set
+CONFIG

[PATCH] ppc32: Support for Freescale PQ2FADS

2006-04-06 Thread Wade Farnsworth
On Thu, 2006-04-06 at 09:06, Wade Farnsworth wrote:
> On Thu, 2006-04-06 at 07:05, Vitaly Bordug wrote:
> > 
> > Though I doubt if new boards are accepting to ppc/ currently, it's nice to 
> > have a patch 
> > available. BTW, I suggest to use phy abstraction and updated fs_enet 
> > (submitted here recently)

> > > +CONFIG_USB_ARCH_HAS_HCD=y
> > > +CONFIG_USB_ARCH_HAS_OHCI=y
> > 
> > Not sure this is required as well.
> 
> I'll disable this as well.

Looking at drivers/usb/Kconfig, these are actually enabled by default if
CONFIG_PCI is enabled.  CONFIG_USB then depends on
CONFIG_USB_ARCH_HAS_HCD.

> 
> 
> 
> > > +#ifdef CONFIG_PQ2FADS
> > > +#define F2_RXCLK 13
> > > +#define F2_TXCLK 14
> > > +#else
> > >  #define F2_RXCLK 15
> > >  #define F2_TXCLK 16
> > > +#endif
> > >  
> > Hmm, this should go into the board-specific header - here should exist just 
> > a "reasonable default" (pq2ads.h in this context). 
> > 
> > 
> > >  /* FCC3 Clock Source Configuration.  These can be redefined in the board 
> > > specific file.
> > > Can only choose from CLK13-16 */
> > > +#ifdef CONFIG_PQ2FADS
> > > +#define F3_RXCLK 15
> > > +#define F3_TXCLK 16
> > > +#else
> > >  #define F3_RXCLK 13
> > >  #define F3_TXCLK 14
> > > +#endif
> > >  
> > ditto.
> 
> Ok, I'll move these defines into pq2ads.h
> 

Also, moving the defines into pq2ads.h results in some nasty warning
messages.  I'll put some #ifndef's around the #define's in pq2ads_pd.h
to squelch them.

-Wade




[PATCH] ppc32: Support for Freescale PQ2FADS

2006-04-06 Thread Wade Farnsworth
On Thu, 2006-04-06 at 07:05, Vitaly Bordug wrote:
> 
> Though I doubt if new boards are accepting to ppc/ currently, it's nice to 
> have a patch 
> available. BTW, I suggest to use phy abstraction and updated fs_enet 
> (submitted here recently)

I'll look into that.

> 
> Some more notes below.


> > +CONFIG_INPUT=y
> 
> This is useless for the board iirc.

> >
> > +CONFIG_SOUND_GAMEPORT=y
> ditto.

Yes, you're right.  I'm not sure why I had those enabled.


> > +CONFIG_USB_ARCH_HAS_HCD=y
> > +CONFIG_USB_ARCH_HAS_OHCI=y
> 
> Not sure this is required as well.

I'll disable this as well.



> > +#ifdef CONFIG_PQ2FADS
> > +#define F2_RXCLK   13
> > +#define F2_TXCLK   14
> > +#else
> >  #define F2_RXCLK   15
> >  #define F2_TXCLK   16
> > +#endif
> >  
> Hmm, this should go into the board-specific header - here should exist just a 
> "reasonable default" (pq2ads.h in this context). 
> 
> 
> >  /* FCC3 Clock Source Configuration.  These can be redefined in the board 
> > specific file.
> > Can only choose from CLK13-16 */
> > +#ifdef CONFIG_PQ2FADS
> > +#define F3_RXCLK   15
> > +#define F3_TXCLK   16
> > +#else
> >  #define F3_RXCLK   13
> >  #define F3_TXCLK   14
> > +#endif
> >  
> ditto.

Ok, I'll move these defines into pq2ads.h

Thanks for the feedback.  I'll make the changes and resubmit.

-Wade Farnsworth




[PATCH] ppc32: Support for Freescale PQ2FADS

2006-04-04 Thread Wade Farnsworth
From: Wade Farnsworth <[EMAIL PROTECTED]>

Adds support for the Freescale PQ2FADS board.

Signed-off-by: Wade Farnsworth 

---

 arch/ppc/Kconfig   |2
 arch/ppc/configs/pq2fads_defconfig |  712 +++
 arch/ppc/platforms/Makefile|1
 arch/ppc/platforms/pq2ads.h|   10
 arch/ppc/platforms/pq2ads_pd.h |   11
 arch/ppc/platforms/pq2fads_setup.c |  235 
 arch/ppc/syslib/m82xx_pci.c|5
 7 files changed, 975 insertions(+), 1 deletion(-)

diff --git a/arch/ppc/Kconfig b/arch/ppc/Kconfig
--- a/arch/ppc/Kconfig
+++ b/arch/ppc/Kconfig
@@ -731,7 +731,7 @@ endchoice
 
 config PQ2ADS
bool
-   depends on ADS8272
+   depends on ADS8272 || PQ2FADS
default y
 
 config TQM8xxL
diff --git a/arch/ppc/configs/pq2fads_defconfig 
b/arch/ppc/configs/pq2fads_defconfig
new file mode 100644
--- /dev/null
+++ b/arch/ppc/configs/pq2fads_defconfig
@@ -0,0 +1,712 @@
+#
+# Automatically generated make config: don't edit
+# Linux kernel version: 2.6.10_mvl401
+# Thu Mar 23 14:28:38 2006
+#
+CONFIG_MMU=y
+CONFIG_GENERIC_HARDIRQS=y
+CONFIG_RWSEM_GENERIC_SPINLOCK=y
+CONFIG_ASM_SEMAPHORES=y
+CONFIG_HAVE_DEC_LOCK=y
+CONFIG_PPC=y
+CONFIG_PPC32=y
+CONFIG_GENERIC_NVRAM=y
+
+#
+# Code maturity level options
+#
+CONFIG_EXPERIMENTAL=y
+CONFIG_CLEAN_COMPILE=y
+CONFIG_BROKEN_ON_SMP=y
+
+#
+# General setup
+#
+CONFIG_LOCALVERSION=""
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SEMMNI=128
+CONFIG_SYSVIPC_SEMMSL=250
+# CONFIG_POSIX_MQUEUE is not set
+# CONFIG_BSD_PROCESS_ACCT is not set
+CONFIG_SYSCTL=y
+# CONFIG_AUDIT is not set
+CONFIG_LOG_BUF_SHIFT=14
+# CONFIG_HOTPLUG is not set
+CONFIG_KOBJECT_UEVENT=y
+# CONFIG_IKCONFIG is not set
+CONFIG_EMBEDDED=y
+# CONFIG_KALLSYMS is not set
+CONFIG_FUTEX=y
+# CONFIG_EPOLL is not set
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_SHMEM=y
+CONFIG_CC_ALIGN_FUNCTIONS=0
+CONFIG_CC_ALIGN_LABELS=0
+CONFIG_CC_ALIGN_LOOPS=0
+CONFIG_CC_ALIGN_JUMPS=0
+# CONFIG_BOOT_FLIGHT_RECORDER is not set
+CONFIG_LOCKLESS=y
+CONFIG_BOOT_FLIGHT_BUFFERS=4
+CONFIG_BOOT_FLIGHT_SIZE=524288
+CONFIG_FLIGHT_PROC_BUFFERS=8
+CONFIG_FLIGHT_PROC_SIZE=8192
+CONFIG_NEWEV=y
+CONFIG_CSTM=y
+# CONFIG_TINY_SHMEM is not set
+
+#
+# Loadable module support
+#
+# CONFIG_MODULES is not set
+
+#
+# Processor
+#
+CONFIG_6xx=y
+# CONFIG_40x is not set
+# CONFIG_44x is not set
+# CONFIG_POWER3 is not set
+# CONFIG_POWER4 is not set
+# CONFIG_8xx is not set
+# CONFIG_E200 is not set
+# CONFIG_E500 is not set
+CONFIG_PPC_FPU=y
+# CONFIG_CPU_FREQ is not set
+CONFIG_EMBEDDEDBOOT=y
+CONFIG_PPC_STD_MMU=y
+
+#
+# Platform options
+#
+
+#
+# Freescale Ethernet driver platform-specific options
+#
+# CONFIG_PPC_MULTIPLATFORM is not set
+# CONFIG_APUS is not set
+# CONFIG_KATANA is not set
+# CONFIG_WILLOW is not set
+# CONFIG_CPCI690 is not set
+# CONFIG_PCORE is not set
+# CONFIG_POWERPMC250 is not set
+# CONFIG_CHESTNUT is not set
+# CONFIG_SPRUCE is not set
+# CONFIG_EV64260 is not set
+# CONFIG_LOPEC is not set
+# CONFIG_MCPN765 is not set
+# CONFIG_MVME5100 is not set
+# CONFIG_PPLUS is not set
+# CONFIG_PRPMC750 is not set
+# CONFIG_PRPMC800 is not set
+# CONFIG_SANDPOINT is not set
+# CONFIG_ADIR is not set
+# CONFIG_K2 is not set
+# CONFIG_PAL4 is not set
+# CONFIG_GEMINI is not set
+# CONFIG_EST8260 is not set
+# CONFIG_SBC82xx is not set
+# CONFIG_SBS8260 is not set
+# CONFIG_RPX8260 is not set
+# CONFIG_TQM8260 is not set
+# CONFIG_ADS8272 is not set
+CONFIG_PQ2FADS=y
+# CONFIG_LITE5200 is not set
+# CONFIG_MPC834x_SYS is not set
+CONFIG_PQ2ADS=y
+CONFIG_8260=y
+CONFIG_CPM2=y
+# CONFIG_PC_KEYBOARD is not set
+# CONFIG_SMP is not set
+CONFIG_PREEMPT_NONE=y
+# CONFIG_PREEMPT_VOLUNTARY is not set
+# CONFIG_PREEMPT_DESKTOP is not set
+# CONFIG_PREEMPT_RT is not set
+# CONFIG_PREEMPT_SOFTIRQS is not set
+# CONFIG_PREEMPT_HARDIRQS is not set
+# CONFIG_PREEMPT_BKL is not set
+# CONFIG_HIGHMEM is not set
+# CONFIG_HIGH_RES_TIMERS is not set
+CONFIG_BINFMT_ELF=y
+# CONFIG_BINFMT_MISC is not set
+# CONFIG_CMDLINE_BOOL is not set
+
+#
+# Bus options
+#
+CONFIG_PCI=y
+CONFIG_PCI_DOMAINS=y
+CONFIG_PCI_8260=y
+# CONFIG_8260_PCI9 is not set
+# CONFIG_PCI_LEGACY_PROC is not set
+# CONFIG_PCI_NAMES is not set
+
+#
+# Advanced setup
+#
+# CONFIG_ADVANCED_OPTIONS is not set
+
+#
+# Default settings for advanced configuration options are used
+#
+CONFIG_HIGHMEM_START=0xfe00
+CONFIG_LOWMEM_SIZE=0x3000
+CONFIG_KERNEL_START=0xc000
+CONFIG_TASK_SIZE=0x8000
+CONFIG_BOOT_LOAD=0x0040
+
+#
+# Device Drivers
+#
+
+#
+# Generic Driver Options
+#
+CONFIG_STANDALONE=y
+CONFIG_PREVENT_FIRMWARE_BUILD=y
+
+#
+# Memory Technology Devices (MTD)
+#
+# CONFIG_MTD is not set
+
+#
+# Parallel port support
+#
+# CONFIG_PARPORT is not set
+
+#
+# Plug and Play support
+#
+
+#
+# Block devices
+#
+# CONFIG_BLK_DEV_FD is not set
+# CONFIG_BLK_CPQ_DA is not set
+# CONFIG_BLK_CPQ_CISS_DA is not set
+# CONFIG_BLK_DEV_DAC960 is not set
+# CONFIG_BL

[PATCH 6/6] MTD defines for Luan

2006-03-01 Thread Wade Farnsworth
This fixes the defines for MTD support in the Luan platform file.

--Wade

Signed off by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: luan-mtd-defs.patch
Type: text/x-patch
Size: 1412 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20060301/f1ceffd2/attachment.bin
 


[PATCH 5/6] Clock and power management define fixes for 440SP

2006-03-01 Thread Wade Farnsworth
This fixes the clock and power management defines on the 440SP.

--Wade

Signed off by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: luan-cpm.patch
Type: text/x-patch
Size: 2672 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20060301/8667493c/attachment.bin
 


[PATCH 4/6] L2 Cache support for 440SP

2006-03-01 Thread Wade Farnsworth
This adds L2 Cache support for the 440SP.

--Wade

Signed off by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: luan-l2c.patch
Type: text/x-patch
Size: 636 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20060301/29449566/attachment.bin
 


[PATCH 3/6] PCIX fixes and enhancements for 440SP & Luan

2006-03-01 Thread Wade Farnsworth
This patch allows each bridge on the 440SP to be configured for both
host and adapter mode.  Previously, PCIX0 was configured for adapter
mode only.

Also fixes PCIXn_IO_BASE for PCIX1 and 2.

Signed off by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: luan-pcix.patch
Type: text/x-patch
Size: 4304 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20060301/08ee9b91/attachment.bin
 


[PATCH 2/6] Add UIC settings for 440SP & Luan

2006-03-01 Thread Wade Farnsworth
This adds the necessary structures for the UIC polarity and triggering
on the 440SP & Luan.

-Wade

Signed off by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: luan-uic.patch
Type: text/x-patch
Size: 1590 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20060301/42c05e04/attachment.bin
 


[PATCH 1/6] Support for UART 2 on 440SP and Luan

2006-03-01 Thread Wade Farnsworth
This fixes the IRQ number for UART 2 on the 440SP and adds support to
ibm440gx_get_clocks() for it.  It also enables the UART on the Luan.

--Wade

Signed off by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: luan-uart2.patch
Type: text/x-patch
Size: 2731 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20060301/3f19a965/attachment.bin
 


[PATCH 0/6] AMCC 440SP/Luan board enhancements & fixes

2006-03-01 Thread Wade Farnsworth
Greetings,

The following patches are enhancements and/or fixes for the AMCC 440SP
SoC and the Luan board.  Most notably there is support for UART2 and the
L2 Cache, as well as increased flexibility for the PCIX bridges.

--Wade Farnsworth




Transmit timeouts on 440GX Ocotea on 10baseT-HD network

2005-12-07 Thread Wade Farnsworth
On Wed, 2005-12-07 at 10:35, Eugene Surovegin wrote:
> Hmm, I think this should have been fixed in the latest 2.6. Check 
> that you tree has this patch:
> 
>   [PATCH] ibm_emac: fix graceful stop timeout handling
> 
> It went in on 01 Dec. Although this fix assumed FDX operation for 
> timeouts, without collisions. Maybe I was too optimistic thinking that 
> nobody uses 10/HDX :).

That was my first thought as well, but I've tried it with the patch, and
still get the timeouts.

> 
> Try making STOP_TIMEOUT_10 bigger, say twice as big.

That doesn't seem to help any.

> 
> If this doesn't help, I'll send you patch with enables some additional 
> debugging, so I can check that stop you are experiencing is the same 
> problem I had last month.

Much appreciated.  Thanks!

Regards,

Wade Farnsworth




Transmit timeouts on 440GX Ocotea on 10baseT-HD network

2005-12-07 Thread Wade Farnsworth
On Wed, 2005-12-07 at 08:15, Wade Farnsworth wrote:
> Hi Eugene,
> 
> I'm seeing some "NETDEV WATCHDOG: eth0: transmit timed out" messages on
> the Ocotea when it's connected to a 10baseT hub, and it's put under
> heavy load.  I'm using the most current 2.6 git tree.
> 
> This can be reproduced by ssh'ing into the Ocotea and running the
> command "ping  -A -s 1200", then also doing the same ping
> command from the host to the Ocotea.  The pings will be successful for a
> short time, then all transmits on the Ocotea will stop for a few seconds
> (usually preceded by a few duplicate packets).  Transmits begin again
> once the timeout occurs. /proc/net/dev doesn't report any errors, just a
> few dropped packets.
> 
> Do you know what might be causing the EMAC to stop transmitting in this
> situation?

One more data point to consider:  I ran this test on an Ebony board, but
don't encounter any timeouts.  Do you know of any 440GX-specific issues
that might cause this?

Thanks again,

Wade Farnsworth




Transmit timeouts on 440GX Ocotea on 10baseT-HD network

2005-12-07 Thread Wade Farnsworth
Hi Eugene,

I'm seeing some "NETDEV WATCHDOG: eth0: transmit timed out" messages on
the Ocotea when it's connected to a 10baseT hub, and it's put under
heavy load.  I'm using the most current 2.6 git tree.

This can be reproduced by ssh'ing into the Ocotea and running the
command "ping  -A -s 1200", then also doing the same ping
command from the host to the Ocotea.  The pings will be successful for a
short time, then all transmits on the Ocotea will stop for a few seconds
(usually preceded by a few duplicate packets).  Transmits begin again
once the timeout occurs. /proc/net/dev doesn't report any errors, just a
few dropped packets.

Do you know what might be causing the EMAC to stop transmitting in this
situation?

Thanks,

Wade Farnsworth




[PATCH] Add support for USB to 440EP platform files

2005-09-19 Thread Wade Farnsworth
This adds support for the USB host and device interfaces on the 440EP to
the appropriate platform-specific files.

Signed off by: John Otken 
Signed off by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: 440ep-ppc-usb.patch
Type: text/x-patch
Size: 2374 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050919/2e875886/attachment.bin
 


[PATCH] add field to struct ocp_func_emac_data for platform-specific unsupported PHY features

2005-08-11 Thread Wade Farnsworth
On Mon, 2005-08-08 at 16:44, Matt Porter wrote:
(snip)
> 
> Could you update this field (and related usages) to be "phy_ftr_exc"?
> For "Excluded phy features".  Eugene and I discussed this on IRC and
> think it's a better name...for one it starts with the phy_ prefix like
> other related phy data. Except for that, it's ready for upstream.
> 
> Thanks,
> Matt

Here is the updated patch with the field renamed to "phy_ftr_exc"
instead of "feat_unsupp".

-Wade Farnsworth

Signed-off-by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: ibm-emac-phy-feat-exc-ppc.patch
Type: text/x-patch
Size: 3264 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050811/4db41b2b/attachment.bin
 


[PATCH] add field to struct ocp_func_emac_data for platform-specific unsupported PHY features

2005-08-05 Thread Wade Farnsworth
Hello all,

This patch adds a field to struct ocp_func_emac_data that allows
platform-specific unsupported PHY features to be passed in to the
ibm_emac ethernet driver.

This patch also adds some logic for the Bamboo eval board to populate
this field based on the dip switches on the board.  This is a workaround
for the improperly biased RJ-45 sockets on the Rev. 0 Bamboo.  See the
comments in bamboo.c for more information on this bug.

-Wade Farnsworth

Signed-off by: Wade Farnsworth 
-- next part --
--- linux-2.6/arch/ppc/platforms/4xx/bamboo.c   2005-08-03 13:33:41.0 
-0700
+++ linux-2.6-dev/arch/ppc/platforms/4xx/bamboo.c   2005-08-02 
10:51:00.0 -0700
@@ -123,33 +123,69 @@ bamboo_map_irq(struct pci_dev *dev, unsi
 
 static void __init bamboo_set_emacdata(void)
 {
-   unsigned char * selection1_base;
+   u8 * base_addr;
struct ocp_def *def;
struct ocp_func_emac_data *emacdata;
-   u8 selection1_val;
+   u8 val;
int mode;
+   u32 unsupported = 0;
 
-   selection1_base = ioremap64(BAMBOO_FPGA_SELECTION1_REG_ADDR, 16);
-   selection1_val = readb(selection1_base);
-   iounmap((void *) selection1_base);
-   if (BAMBOO_SEL_MII(selection1_val))
+   base_addr = ioremap64(BAMBOO_FPGA_SELECTION1_REG_ADDR, 16);
+   val = readb(base_addr);
+   iounmap((void *) base_addr);
+   if (BAMBOO_SEL_MII(val))
mode = PHY_MODE_MII;
-   else if (BAMBOO_SEL_RMII(selection1_val))
+   else if (BAMBOO_SEL_RMII(val))
mode = PHY_MODE_RMII;
else
mode = PHY_MODE_SMII;
 
-   /* Set mac_addr and phy mode for each EMAC */
+   /*
+* SW2 on the Bamboo is used for ethernet configuration and is accessed
+* via the CONFIG2 register in the FPGA.  If the ANEG pin is set,
+* overwrite the supported features with the settings in SW2.
+*
+* This is used as a workaround for the improperly biased RJ-45 sockets
+* on the Rev. 0 Bamboo.  By default only 10baseT is functional.
+* Removing inductors L17 and L18 from the board allows 100baseT, but
+* disables 10baseT.  The Rev. 1 has no such limitations.
+*/
+
+   base_addr = ioremap64(BAMBOO_FPGA_CONFIG2_REG_ADDR, 8);
+   val = readb(base_addr);
+   iounmap((void *) base_addr);
+   if (!BAMBOO_AUTONEGOTIATE(val)) {
+   unsupported |= SUPPORTED_Autoneg;
+   if (BAMBOO_FORCE_100Mbps(val)) {
+   unsupported |= SUPPORTED_10baseT_Full;
+   unsupported |= SUPPORTED_10baseT_Half;
+   if (BAMBOO_FULL_DUPLEX_EN(val))
+   unsupported |= SUPPORTED_100baseT_Half;
+   else
+   unsupported |= SUPPORTED_100baseT_Full;
+   } else {
+   unsupported |= SUPPORTED_100baseT_Full;
+   unsupported |= SUPPORTED_100baseT_Half;
+   if (BAMBOO_FULL_DUPLEX_EN(val))
+   unsupported |= SUPPORTED_10baseT_Half;
+   else
+   unsupported |= SUPPORTED_10baseT_Full;
+   }
+   }
+   
+   /* Set mac_addr, phy mode and unsupported phy features for each EMAC */
 
def = ocp_get_one_device(OCP_VENDOR_IBM, OCP_FUNC_EMAC, 0);
emacdata = def->additions;
memcpy(emacdata->mac_addr, __res.bi_enetaddr, 6);
emacdata->phy_mode = mode;
+   emacdata->feat_unsupp = unsupported;
 
def = ocp_get_one_device(OCP_VENDOR_IBM, OCP_FUNC_EMAC, 1);
emacdata = def->additions;
memcpy(emacdata->mac_addr, __res.bi_enet1addr, 6);
emacdata->phy_mode = mode;
+   emacdata->feat_unsupp = unsupported;
 }
 
 static int
--- linux-2.6/include/asm-ppc/ibm_ocp.h 2005-08-03 13:34:08.0 -0700
+++ linux-2.6-dev/include/asm-ppc/ibm_ocp.h 2005-08-02 10:49:42.0 
-0700
@@ -67,6 +67,7 @@ struct ocp_func_emac_data {
int phy_mode;   /* PHY type or configurable mode */
u8  mac_addr[6];/* EMAC mac address */
u32 phy_map;/* EMAC phy map */
+   u32 feat_unsupp;/* Unsupported phy features */
 };
 
 /* Sysfs support */


Musbhsfc USB gadget appears in latest 440EP/Bamboo patch

2005-07-28 Thread Wade Farnsworth
On Thu, 2005-07-28 at 13:39, John Otken wrote:
> Hi Wade,
> 
> In your most recent patch for the Bamboo board, you added an entry for the 
> 440EP's "musbhsfc" USB device/gadget.  I do not see a driver in the 2.6 tree 
> for this device.  Did I overlook something or perhaps you are working on it?  
> Thanks in advances for any information.
> 
> John Otken

Hi John,

I'm currently working on a driver for the on-board USB device.

-Wade




[PATCH 3/3] MTD support for the Bamboo board

2005-07-26 Thread Wade Farnsworth
On Tue, 2005-07-26 at 09:40, Eugene Surovegin wrote:
> On Tue, Jul 26, 2005 at 09:06:14AM -0700, Wade Farnsworth wrote:
> > This adds MTD support for the Bamboo board.
> > 
> > Signed-off by: Wade Farnsworth 
> 
> > diff -uprN linux-2.6.12/drivers/mtd/maps/Kconfig.orig 
> > linux-2.6.12-440ep/drivers/mtd/maps/Kconfig.orig
> > --- linux-2.6.12/drivers/mtd/maps/Kconfig.orig  1969-12-31 
> > 17:00:00.0 -0700
> > +++ linux-2.6.12-440ep/drivers/mtd/maps/Kconfig.orig2005-07-25 
> > 11:31:51.0 -0700
> 
> This hunk seems to be bogus.
> 
> > diff -uprN linux-2.6.12/drivers/mtd/maps/Makefile.orig 
> > linux-2.6.12-440ep/drivers/mtd/maps/Makefile.orig
> > --- linux-2.6.12/drivers/mtd/maps/Makefile.orig 1969-12-31 
> > 17:00:00.0 -0700
> > +++ linux-2.6.12-440ep/drivers/mtd/maps/Makefile.orig   2005-07-25 
> > 11:31:51.0 -0700
> 
> Ditto.
> 
> > diff -uprN linux-2.6.12/drivers/mtd/nand/Kconfig.orig 
> > linux-2.6.12-440ep/drivers/mtd/nand/Kconfig.orig
> > --- linux-2.6.12/drivers/mtd/nand/Kconfig.orig  1969-12-31 
> > 17:00:00.0 -0700
> > +++ linux-2.6.12-440ep/drivers/mtd/nand/Kconfig.orig2005-07-25 
> > 11:31:51.0 -0700
> 
> Ditto

Oops.  Sorry about that.  This patch removes the bogus hunks.

Signed-off by: Wade Farnsworth 


-- next part --
A non-text attachment was scrubbed...
Name: 440ep-mtd.patch
Type: text/x-patch
Size: 21076 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050726/8f60f44c/attachment.bin
 


[PATCH 3/3] MTD support for the Bamboo board

2005-07-26 Thread Wade Farnsworth
This adds MTD support for the Bamboo board.

Signed-off by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: 440ep-mtd.patch
Type: text/x-patch
Size: 56380 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050726/dab8109c/attachment.bin
 


[PATCH 2/3] IBM EMAC support for the PPC440EP

2005-07-26 Thread Wade Farnsworth
This adds support to the IBM EMAC ethernet driver for the 440EP.

Signed-off by: Wade Farnsworth 


-- next part --
A non-text attachment was scrubbed...
Name: 440ep-net.patch
Type: text/x-patch
Size: 2788 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050726/ef88c5e6/attachment.bin
 


[PATCH 1/3] PPC440EP SoC and Bamboo board support

2005-07-26 Thread Wade Farnsworth
Hello,

This adds support for the AMCC PPC440EP SoC and the Bamboo reference
board.  This patch makes use of fpu.S.

Signed-off by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: 440ep-ppc.patch
Type: text/x-patch
Size: 58807 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050726/e35722dd/attachment.bin
 


[PATCH 3/3] PPC440EP: MTD support for the Bamboo Board

2005-04-07 Thread Wade Farnsworth
On Wed, 2005-04-06 at 17:58, Josh Boyer wrote:
> On Wed, 2005-04-06 at 10:33 -0700, Wade Farnsworth wrote:
> 
> Cool beans.  Can't wait to test this out tomorrow.  Just a couple comments.
> 
> 
> 
> > +struct ppc440ep_ndfc_regs {
> > +   uint cmd;
> > +   uint addr;
> > +   uint data;
> > +   uint reserved1;
> > +   uint ecc0;
> > +   uint ecc1;
> > +   uint ecc2;
> > +   uint ecc3;
> > +   uint ecc4;
> > +   uint ecc5;
> > +   uint ecc6;
> > +   uint ecc7;
> > +   uint b0cr;
> > +   uint b1cr;
> > +   uint b2cr;
> > +   uint b3cr;
> > +   uint cr;
> > +   uint sr;
> > +   uint hwctl;
> > +   uint reserved2;
> > +   uint revid;
> > +};
> 
> These ecc registers actually have a use...
> 
> 
> 
> > +
> > +   /* Set address of NAND IO lines (Using Linear Data Access Region) */
> > +   this->IO_ADDR_R = (void __iomem *) ((ulong) bamboo_ndfc + 0x1000);
> > +   this->IO_ADDR_W = (void __iomem *) ((ulong) bamboo_ndfc + 0x1000);
> > +   /* Reference hardware control function */
> > +   this->hwcontrol  = bamboo_nand0_hwcontrol;
> > +   /* Set command delay time */
> > +   this->chip_delay = 12;
> > +   this->eccmode= NAND_ECC_SOFT;
> > +   this->write_byte = bamboo_nand0_write_byte;
> > +   this->read_byte  = bamboo_nand0_read_byte;
> > +   this->write_buf  = bamboo_nand0_write_buf;
> > +   this->read_buf   = bamboo_nand0_read_buf;
> > +   this->verify_buf = bamboo_nand0_verify_buf;
> > +   this->dev_ready  = bamboo_dev_ready;
> 
> 
> 
> > +   /* Link the private data with the MTD structure */
> > +   bamboo_nand1_mtd->priv = this;
> > +
> > +   /* Set address of NAND IO lines (Using Linear Data Access Region) */
> > +   this->IO_ADDR_R = (void __iomem *) ((ulong) bamboo_ndfc + 0x1000);
> > +   this->IO_ADDR_W = (void __iomem *) ((ulong) bamboo_ndfc + 0x1000);
> > +   /* Reference hardware control function */
> > +   this->hwcontrol  = bamboo_nand1_hwcontrol;
> > +   /* Set command delay time */
> > +   this->chip_delay = 25;
> > +   this->eccmode= NAND_ECC_SOFT;
> > +   this->write_byte = bamboo_nand1_write_byte;
> > +   this->read_byte  = bamboo_nand1_read_byte;
> > +   this->write_buf  = bamboo_nand1_write_buf;
> > +   this->read_buf   = bamboo_nand1_read_buf;
> > +   this->verify_buf = bamboo_nand1_verify_buf;
> > +   this->dev_ready  = NULL;
> 
> ... so any reason why NAND_ECC_SOFT is used instead of making use of the
> ECC registers that come with the NDFC?

Mainly because I haven't looked at what it would take to get HW ECC
working yet.  I'll look at this when I have time, but until then at
least the NAND flashes are functional.

> 
> Overall, I think the patch looks good.  Care to send it to the MTD
> maintainers so it gets in their CVS tree?

Will do.

-Wade





[PATCH 1/3] PPC440EP SoC and Bamboo board support

2005-04-06 Thread Wade Farnsworth
On Wed, 2005-04-06 at 10:37, Eugene Surovegin wrote:
> On Wed, Apr 06, 2005 at 10:21:25AM -0700, Wade Farnsworth wrote:
> > 
> > This patch adds support for the IBM/AMCC PPC440EP SoC and the Bamboo
> > reference board.
> 
> [snip]
> 
> > + * Bamboo external IRQ triggering/polarity settings
> > + */
> > +unsigned char ppc4xx_uic_ext_irq_cfg[] __initdata = {
> > +   (IRQ_SENSE_LEVEL | IRQ_POLARITY_NEGATIVE), /* IRQ0: Ethernet 
> > transceiver */
> > +   (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* IRQ1: Expansion connector 
> > */
> > +   (IRQ_SENSE_LEVEL | IRQ_POLARITY_NEGATIVE), /* IRQ2: PCI slot 0 */
> > +   (IRQ_SENSE_LEVEL | IRQ_POLARITY_NEGATIVE), /* IRQ3: PCI slot 1 */
> > +   (IRQ_SENSE_LEVEL | IRQ_POLARITY_NEGATIVE), /* IRQ4: PCI slot 2 */
> > +   (IRQ_SENSE_LEVEL | IRQ_POLARITY_NEGATIVE), /* IRQ5: PCI slot 3 */
> > +   (IRQ_SENSE_EDGE  | IRQ_POLARITY_NEGATIVE), /* IRQ6: SMI pushbutton */
> > +   (IRQ_SENSE_LEVEL | IRQ_POLARITY_NEGATIVE), /* IRQ7: EXT */
> > +   (IRQ_SENSE_LEVEL | IRQ_POLARITY_NEGATIVE), /* IRQ8: EXT */
> > +   (IRQ_SENSE_LEVEL | IRQ_POLARITY_NEGATIVE), /* IRQ9: EXT */
> > +};
> 
> You need to define ppc4xx_core_uic_cfg[] in ibm440ep.c for this thing 
> to work, otherwise it's ignored.

Thanks, Eugene.  This patch includes that array.

-Wade

Signed-off by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: ibm440ep-ppc.patch
Type: text/x-patch
Size: 61725 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050406/410b528a/attachment.bin
 


[PATCH 2/3] PPC440EP: IBM EMAC support for the Bamboo board

2005-04-06 Thread Wade Farnsworth
Oops, this should be Patch 2/3.

-Wade




[PATCH 3/3] PPC440EP: MTD support for the Bamboo Board

2005-04-06 Thread Wade Farnsworth
This adds MTD support for the Bamboo board.

-Wade Farnsworth
-- next part --
A non-text attachment was scrubbed...
Name: ibm440ep-mtd.patch
Type: text/x-patch
Size: 21155 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050406/b5dff001/attachment.bin
 


[PATCH 1/3] PPC440EP: IBM EMAC support for the Bamboo board

2005-04-06 Thread Wade Farnsworth
This adds support for the Bamboo board in the EMAC driver.

Jason McMullan pointed out to me that for the Bamboo Rev. 0 to boot from
ethernet, the ANEG pin on SW2 needs to be turned off.  If we use this,
we can avoid using the PVR to determine which board rev, we're running
on.  This patch addresses this.

Comments would be appreciated.

-Wade Farnsworth

Signed-off by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: ibm440ep-ibm_emac.patch
Type: text/x-patch
Size: 2782 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050406/9eee7935/attachment.bin
 


[PATCH 1/3] PPC440EP SoC and Bamboo board support

2005-04-06 Thread Wade Farnsworth
Hi all,

This patch adds support for the IBM/AMCC PPC440EP SoC and the Bamboo
reference board.

-Wade Farnsworth

Signed-off by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: ibm440ep-ppc.patch
Type: text/x-patch
Size: 61322 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050406/9ca259fc/attachment.bin
 


440EP FPU patch

2005-03-31 Thread Wade Farnsworth
On Fri, 2005-03-18 at 12:30, Tom Rini wrote:
> On Fri, Mar 18, 2005 at 01:43:11PM -0500, Jason McMullan wrote:
> > On Fri, 2005-03-18 at 10:06 -0600, Kumar Gala wrote:
> > > Can you build your patch for the lopec_defconfig and fix the errors 
> > > associated with enabling altivec.
> > > 
> > > Looks like you need to include asm/offset.h & asm/page.h in vector.S, 
> > > however there is another build error after that.
> > 
> > Thanks! That also found a linking bug, fixed in this patch.. Please
> > double check the call in 'AltiVecUnavalible' in head.S, and the re-load
> > of 'ctr' at the end of load_up_altivec, as I do not have an AltiVec
> > machine here.
> 
> No dice:
> VFS: Mounted root (nfs filesystem) readonly.
> Freeing unused kernel memory: 100k init 4k prep
> floating point used in kernel (task=c03816b0, pc=c000d664)
> Doing some objdump'ing, that's the start of load_up_altivec.

Hi Jason and Tom,

Has there been any more progress on this patch?

Thanks,
Wade Farnsworth




[PATCH 3/3] PPC440EP IBM EMAC support

2005-03-28 Thread Wade Farnsworth
On Tue, 2005-03-15 at 13:37, Matt Porter wrote:
> On Tue, Mar 15, 2005 at 11:22:16AM -0800, Eugene Surovegin wrote:
> > On Tue, Mar 15, 2005 at 11:58:54AM -0700, Wade Farnsworth wrote:
> > > This patch adds support to the IBM EMAC ethernet driver for the 440EP.
> > > 
> > > Regards,
> > > Wade Farnsworth
> > > 
> > > Signed-off-by: Wade Farnsworth 
> > > 
> > 
> > > --- linux-2.6.11-bk7/drivers/net/ibm_emac/ibm_emac_phy.c  2005-03-02 
> > > 00:38:13.0 -0700
> > > +++ linux-2.6.11-bk7-440ep/drivers/net/ibm_emac/ibm_emac_phy.c
> > > 2005-03-11 16:32:01.0 -0700
> > > @@ -27,6 +27,12 @@
> > >  
> > >  #include "ibm_emac_phy.h"
> > >  
> > > +#ifdef CONFIG_BAMBOO
> > > +#define BAMBOO_REV0 (mfspr(PVR) == PVR_440EP_RA)
> > > +#else
> > > +#define BAMBOO_REV0 0
> > > +#endif
> > > +
> > 
> > I really don't like it. Chip revision doesn't imply which board 
> > this code is running on. Please, think of some other way to do this or 
> > drop this completely.
> 
> Wade and I talked about this one before and there is no direct way
> to detect the board revision on this platform. Given that, I
> think that if the PVR of the 440EP in a Bamboo board does imply
> the board revision, then this is appropriate.

I emailed AMCC support about the 440EP eval board revision situation and
(finally) got a reply.

It seems there are no plans to replace the Rev 0 boards with Rev 1
boards.  It is, therefore, conceivable that some users will have Rev 0
boards, and will need the workaround in the patch.  Others will have Rev
1 boards, which work fine with the current version of the driver.

So it looks like there will have to be some sort of way to determine
which board the kernel is running on.  According to AMCC, all Rev 0's
have the 440EP Rev A processor and all Rev 1's have the 440EP Rev B
processor.  AMCC also says that the best way for software to determine
to determine which board rev it is running on is to either use the PVR
or the JTAG ID.  I agree this is not an ideal solution, but it seems to
be the best one.

I am, however, open to suggestions, if anyone knows of a better
solution.

Thanks,
-Wade Farnsworth




[PATCH 1/3] PPC440EP SoC and Bamboo board support

2005-03-16 Thread Wade Farnsworth
On Wed, 2005-03-16 at 10:26, Jason McMullan wrote:
> Do you need a 'special' toolchain to work around Errata 42 (isync before
> blrl) for user-space, or are the kernel-land fixes sufficient?

Yes, this work around also needs to be in gcc.  I know this has been
fixed in MontaVista's toolchain, but I don't know if the work around has
been pushed up to the main gcc tree.

-Wade Farnsworth




[PATCH 1/3] PPC440EP SoC and Bamboo board support

2005-03-16 Thread Wade Farnsworth
On Tue, 2005-03-15 at 18:43, Josh Boyer wrote:
> On Tue, 2005-03-15 at 10:17 -0700, Wade Farnsworth wrote:
> > Hello all,
> > 
> > This adds support for the IBM/AMCC PPC440EP SoC and the Bamboo reference
> > board.  Any comments would be appreciated.
> 
> Isn't the NAND chip on that board a 64MiB chip?  If so, the
> BAMBOO_NAND_FLASH_SIZE define is wrong.  It should be 0x400.
> 
> Also, are there any plans to add MTD support for the NAND controller
> found on those boards?
> 
> thx,
> josh

Yes, you're right.  I'll fix that.

I'm working on MTD support, including support for the NAND controller.

Thanks,
Wade Farnsworth




[PATCH 1/3] PPC440EP SoC and Bamboo board support

2005-03-15 Thread Wade Farnsworth
On Tue, 2005-03-15 at 13:58, Jason McMullan wrote:
> I think your setup for BAMBOO_PCIL0_PTM1MS is actually incorrect.
> According to the AMCC 440EP docs, BAMBOO_PCIL0_PTM1MS is a mask,
> so the correct code should look more like:
> 
> memory_size = 0x - (memory_size - 1);
>   PCI_WRITEL(memory_size | 1, BAMBOO_PCIL0_PTM1MS);
> 
> (assuming 'memory_size' is a power of 2)

Jason,

I think you're right.  Your way is much more concise too.

Thanks,
Wade Farnsworth




[PATCH 1/3] PPC440EP SoC and Bamboo board support

2005-03-15 Thread Wade Farnsworth
On Tue, 2005-03-15 at 11:41, Eugene Surovegin wrote:

[snip]

> 
> > diff -uprN linux-2.6.11-bk7/include/asm-ppc/reg.h 
> > linux-2.6.11-bk7-440ep/include/asm-ppc/reg.h
> > --- linux-2.6.11-bk7/include/asm-ppc/reg.h  2005-03-11 16:25:22.0 
> > -0700
> > +++ linux-2.6.11-bk7-440ep/include/asm-ppc/reg.h2005-03-14 
> > 10:05:47.0 -0700
> > @@ -449,6 +449,8 @@
> >  #define PVR_STB03XXX   0x4031
> >  #define PVR_NP405H 0x4141
> >  #define PVR_NP405L 0x4161
> > +#define PVR_440EP_RA   0x42221850
> > +#define PVR_440EP_RB   0x422218D3
> 
> 
> I don't think it's needed. There are plans to get rid of all not-used 
> PVR defines.

The PVR for the Rev A is needed for a workaround in the IBM EMAC code
(see patch 3/3).  If there is a better way to do this, or if it would be
better to put the PVR define somewhere else, please let me know.

Thanks for your comments.

Regards,
Wade Farnsworth




[PATCH 3/3] PPC440EP IBM EMAC support

2005-03-15 Thread Wade Farnsworth
This patch adds support to the IBM EMAC ethernet driver for the 440EP.

Regards,
Wade Farnsworth

Signed-off-by: Wade Farnsworth 

-- next part --
An embedded and charset-unspecified text was scrubbed...
Name: ibm440ep-ibm_emac.patch
Url: 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050315/6c5cbc97/attachment.txt
 


[PATCH 2/3] PPC440EP: ibm_emac phy mode bug fix

2005-03-15 Thread Wade Farnsworth
This patch fixes a bug in drivers/net/ibm_emac/ibm_emac_core.c where if
the MDI0 bit is set in the ZMII_FER register, then the phy mode is not
detected properly, and SMII is selected by default.  This only occurs on
platforms where the phy_mode field of struct ocp_func_emac_data is not
used.

Regards,
Wade Farnsworth

Signed-off-by: Wade Farnsworth 

-- next part --
An embedded and charset-unspecified text was scrubbed...
Name: ibm440ep-ibm_emac-bugfix.patch
Url: 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050315/6c18a936/attachment.txt
 


[PATCH 1/3] PPC440EP SoC and Bamboo board support

2005-03-15 Thread Wade Farnsworth
Hello all,

This adds support for the IBM/AMCC PPC440EP SoC and the Bamboo reference
board.  Any comments would be appreciated.

Regards,
Wade Farnsworth

Signed-off-by: Wade Farnsworth 
-- next part --
A non-text attachment was scrubbed...
Name: ibm440ep-ppc.patch
Type: text/x-patch
Size: 82336 bytes
Desc: not available
Url : 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050315/4a67c59b/attachment.bin