[PATCH][4/5] RapidIO support: ppc32

2005-06-07 Thread Kumar Gala
Two questions:
1. how well does will all of this handle > 32-bit phys addr?
2. can we make any of this a platform driver?

I would prefer if we could have the memory offsets and irq's not be 
straight from the #define's

- kumar

On Jun 6, 2005, at 5:40 PM, Matt Porter wrote:

> Adds PPC32 RIO support.  Init code for the MPC85xx RIO ports
> and glue for the STx GP3 board to use it.
>
> Signed-off-by: Matt Porter 
>
> diff --git a/arch/ppc/Kconfig b/arch/ppc/Kconfig
> --- a/arch/ppc/Kconfig
> +++ b/arch/ppc/Kconfig
> @@ -1177,6 +1177,14 @@ source "drivers/pci/Kconfig"
>
>  source "drivers/pcmcia/Kconfig"
>
> +config RAPIDIO
> + bool "RapidIO support" if MPC8540 || MPC8560
> + help
> +   If you say Y here, the kernel will include drivers and
> +   infrastructure code to support RapidIO interconnect devices.
> +
> +source "drivers/rio/Kconfig"
> +
>  endmenu
>
>  menu "Advanced setup"
> diff --git a/arch/ppc/configs/stx_gp3_defconfig 
> b/arch/ppc/configs/stx_gp3_defconfig
> --- a/arch/ppc/configs/stx_gp3_defconfig
> +++ b/arch/ppc/configs/stx_gp3_defconfig
> @@ -1,7 +1,7 @@
>  #
>  # Automatically generated make config: don't edit
> -# Linux kernel version: 2.6.11-rc2
> -# Wed Jan 26 14:32:58 2005
> +# Linux kernel version: 2.6.12-rc4
> +# Tue May 24 18:11:04 2005
>  #
>  CONFIG_MMU=y
>  CONFIG_GENERIC_HARDIRQS=y
> @@ -11,6 +11,7 @@ CONFIG_HAVE_DEC_LOCK=y
>  CONFIG_PPC=y
>  CONFIG_PPC32=y
>  CONFIG_GENERIC_NVRAM=y
> +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
>
>  #
>  # Code maturity level options
> @@ -18,6 +19,7 @@ CONFIG_GENERIC_NVRAM=y
>  CONFIG_EXPERIMENTAL=y
>  CONFIG_CLEAN_COMPILE=y
>  CONFIG_BROKEN_ON_SMP=y
> +CONFIG_INIT_ENV_ARG_LIMIT=32
>
>  #
>  # General setup
> @@ -29,7 +31,6 @@ CONFIG_SYSVIPC=y
>  # CONFIG_BSD_PROCESS_ACCT is not set
>  CONFIG_SYSCTL=y
>  # CONFIG_AUDIT is not set
> -CONFIG_LOG_BUF_SHIFT=14
>  CONFIG_HOTPLUG=y
>  CONFIG_KOBJECT_UEVENT=y
>  # CONFIG_IKCONFIG is not set
> @@ -37,6 +38,9 @@ CONFIG_EMBEDDED=y
>  CONFIG_KALLSYMS=y
>  # CONFIG_KALLSYMS_ALL is not set
>  # CONFIG_KALLSYMS_EXTRA_PASS is not set
> +CONFIG_PRINTK=y
> +CONFIG_BUG=y
> +CONFIG_BASE_FULL=y
>  CONFIG_FUTEX=y
>  CONFIG_EPOLL=y
>  # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
> @@ -46,6 +50,7 @@ CONFIG_CC_ALIGN_LABELS=0
>  CONFIG_CC_ALIGN_LOOPS=0
>  CONFIG_CC_ALIGN_JUMPS=0
>  # CONFIG_TINY_SHMEM is not set
> +CONFIG_BASE_SMALL=0
>
>  #
>  # Loadable module support
> @@ -69,9 +74,11 @@ CONFIG_KMOD=y
>  CONFIG_E500=y
>  CONFIG_BOOKE=y
>  CONFIG_FSL_BOOKE=y
> +# CONFIG_PHYS_64BIT is not set
>  # CONFIG_SPE is not set
>  CONFIG_MATH_EMULATION=y
>  # CONFIG_CPU_FREQ is not set
> +# CONFIG_PM is not set
>  CONFIG_85xx=y
>  CONFIG_PPC_INDIRECT_PCI_BE=y
>
> @@ -96,6 +103,7 @@ CONFIG_HIGHMEM=y
>  CONFIG_BINFMT_ELF=y
>  CONFIG_BINFMT_MISC=m
>  # CONFIG_CMDLINE_BOOL is not set
> +CONFIG_ISA_DMA_API=y
>
>  #
>  # Bus options
> @@ -104,15 +112,15 @@ CONFIG_PCI=y
>  CONFIG_PCI_DOMAINS=y
>  # CONFIG_PCI_LEGACY_PROC is not set
>  # CONFIG_PCI_NAMES is not set
> +# CONFIG_PCI_DEBUG is not set
>
>  #
>  # PCCARD (PCMCIA/CardBus) support
>  #
>  # CONFIG_PCCARD is not set
> -
> -#
> -# PC-card bridges
> -#
> +CONFIG_RAPIDIO=y
> +CONFIG_RAPIDIO_8_BIT_TRANSPORT=y
> +CONFIG_RAPIDIO_DISC_TIMEOUT=30
>
>  #
>  # Advanced setup
> @@ -152,7 +160,7 @@ CONFIG_PARPORT=m
>  CONFIG_PARPORT_PC=m
>  # CONFIG_PARPORT_PC_FIFO is not set
>  # CONFIG_PARPORT_PC_SUPERIO is not set
> -# CONFIG_PARPORT_OTHER is not set
> +# CONFIG_PARPORT_GSC is not set
>  # CONFIG_PARPORT_1284 is not set
>
>  #
> @@ -264,7 +272,6 @@ CONFIG_SCSI_CONSTANTS=y
>  # CONFIG_SCSI_BUSLOGIC is not set
>  # CONFIG_SCSI_DMX3191D is not set
>  # CONFIG_SCSI_EATA is not set
> -# CONFIG_SCSI_EATA_PIO is not set
>  # CONFIG_SCSI_FUTURE_DOMAIN is not set
>  # CONFIG_SCSI_GDTH is not set
>  # CONFIG_SCSI_IPS is not set
> @@ -274,7 +281,6 @@ CONFIG_SCSI_CONSTANTS=y
>  # CONFIG_SCSI_IMM is not set
>  # CONFIG_SCSI_SYM53C8XX_2 is not set
>  # CONFIG_SCSI_IPR is not set
> -# CONFIG_SCSI_QLOGIC_ISP is not set
>  # CONFIG_SCSI_QLOGIC_FC is not set
>  # CONFIG_SCSI_QLOGIC_1280 is not set
>  CONFIG_SCSI_QLA2XXX=m
> @@ -283,6 +289,7 @@ CONFIG_SCSI_QLA2XXX=m
>  # CONFIG_SCSI_QLA2300 is not set
>  # CONFIG_SCSI_QLA2322 is not set
>  # CONFIG_SCSI_QLA6312 is not set
> +# CONFIG_SCSI_LPFC is not set
>  # CONFIG_SCSI_DC395x is not set
>  # CONFIG_SCSI_DC390T is not set
>  # CONFIG_SCSI_NSP32 is not set
> @@ -322,7 +329,6 @@ CONFIG_NET=y
>  #
>  CONFIG_PACKET=y
>  # CONFIG_PACKET_MMAP is not set
> -# CONFIG_NETLINK_DEV is not set
>  CONFIG_UNIX=y
>  # CONFIG_NET_KEY is not set
>  CONFIG_INET=y
> @@ -431,7 +437,7 @@ CONFIG_IP_NF_NAT_FTP=m
>  #
>  # Network testing
>  #
> -# CONFIG_NET_PKTGEN is not set
> +CONFIG_NET_PKTGEN=y
>  # CONFIG_NETPOLL is not set
>  # CONFIG_NET_POLL_CONTROLLER is not set
>  # CONFIG_HAMRADIO is not set
> @@ -499,6 +505,7 @@ CONFIG_GFAR_NAPI=y
>  # Wan interfaces
>  #
>  # CONFIG_WAN is not set
> +CONFIG_RIONET=y
>  # CONFIG_FDDI is not set
>  # CONFIG_HIPPI is not

[PATCH][4/5] RapidIO support: ppc32

2005-06-07 Thread Matt Porter
On Tue, Jun 07, 2005 at 11:43:26PM -0500, Kumar Gala wrote:
> Two questions:
> 1. how well does will all of this handle > 32-bit phys addr?

It does and it doesn't handle > 32-bit phys addr. It depends on which
configuration you are talking about.  If you are talking about I/O
>32-bit, it's no problem.  If you are talking about handling DMA >32-bit,
then we need to handle a 64-bit DMA addr in the ppc32 implementations and
also extend the arch messaging interface to let callers know when an
implementation can handle high DMA (system memory >4GB). This is all
pretty easy to handle once we need to support such a processor. So
far, nothing is available publicly. :)

For RIO MMIO purposes (which is functionality I'm working on now),
it has the similar issues that PCI memory space has on processors with
I/O above 4GB.  However, on RIO our resources hold a bus address since
a physical address doesn't make sense since address spaces our per-device.
If we ever support a 66-bit address space device on 32-bit processor, we
might need a u64 resource.

> 2. can we make any of this a platform driver?

Hrm, so you would rather see RIO host bridges look like a driver
on another "bus"?  I have seen them as a component just like PCI
host bridges.  That is, they are instantiated by arch-code and
then initialized by a subsys initcall. This does mean that we
will be enumerating much later (during driver initcalls), but
it might be a better model if we ever see a rumored PCIE->RIO
bridge. Supporting that as a RIO master port would require driver
time init of the RIO fabric. There's some ordering issues that we'd
have to see about working out. None of this is needed right now,
though.
 
> I would prefer if we could have the memory offsets and irq's not be 
> straight from the #define's

I think this and #2 are separate issues. We can pass the mpc85xx
rio init code some parameters to abstract things to different
parts. This is similar to how we init different SoC's PCI host
bridges with some common code on PPC32 (marvell, 85xx, etc). 

I was just looking at doing this to support RIO on the 8548. At
the time I wrote this 85xx support there wasn't any info on the
8548 available, but it's an easy thing to extend.

-Matt



MPC8272 runs application with segmentation fault

2005-06-07 Thread Nai-Hsien
Dear experts,

I have two hardware boards, one uses MPC8245 and the other one uses MPC8272.
Initially, I use the MPC8245 board to port Linux 2.4.20 and write some 
applications.
I already do a lot of test on the MPC8245 board and all my application programs 
work
fine.

After this, I use the same kernel configuration and same file system that are 
being used
by the MPC8245 board to port the whole system to my MPC8272.
Now, I can boot the kernel and run busybox well. However, when
I run my application programs, I always get segmentation fault. Following is a 
strace
dump. Could anybody give me some idea?

Thank you
Dennis


execve("sbin/console", ["sbin/console"], [/* 6 vars */]) = 0
uname({sys="Linux", node="6200_linux", ...}) = 0
brk(0)  = 0x10059134
open("/etc/ld.so.preload", O_RDONLY)= -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)  = -1 ENOENT (No such file or directory)
open("/lib/libncurses.so.5", O_RDONLY)  = 3
read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\001"..., 1024) = 
1024
fstat64(0x3, 0x7098)= 0
mmap(0xff97000, 362628, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xff97000
mprotect(0xffd4000, 112772, PROT_NONE)  = 0
mmap(0xffd7000, 86016, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 
3, 0x3) = 0xffd7000
mmap(0xffec000, 14468, PROT_READ|PROT_WRITE|PROT_EXEC, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xffec000
close(3)= 0
open("/lib/libdl.so.2", O_RDONLY)   = 3
read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\0\34"..., 1024) = 
1024
fstat64(0x3, 0x7078)= 0
mmap(0xff74000, 74812, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xff74000
mprotect(0xff77000, 62524, PROT_NONE)   = 0
mmap(0xff84000, 12288, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 
3, 0) = 0xff84000
close(3)= 0
open("/lib/libnsl.so.1", O_RDONLY)  = 3
read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\0A\274"..., 1024) = 
1024
fstat64(0x3, 0x7058)= 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x30017000
mmap(0xff3e000, 152068, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xff3e000
mprotect(0xff51000, 74244, PROT_NONE)   = 0
mmap(0xff5e000, 12288, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 
3, 0x1) = 0xff5e000
mmap(0xff61000, 8708, PROT_READ|PROT_WRITE|PROT_EXEC, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xff61000
close(3)= 0
open("/lib/libc.so.6", O_RDONLY)= 3
read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\1\322"..., 1024) = 
1024
fstat64(0x3, 0x7038)= 0
mmap(0xfddd000, 1379388, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xfddd000
mprotect(0xff16000, 97340, PROT_NONE)   = 0
mmap(0xff1d000, 61440, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 
3, 0x13) = 0xff1d000
mmap(0xff2c000, 7228, PROT_READ|PROT_WRITE|PROT_EXEC, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xff2c000
close(3)= 0
brk(0)  = 0x10059134
brk(0x1005a134) = 0x1005a134
brk(0x1005b000) = 0x1005b000
write(2, "before init_ncurses()\n", 22) = 22
write(2, "before initscr()\n", 17)  = 17
access("/usr/share/terminfo/v/vt100", R_OK) = 0
open("/usr/share/terminfo/v/vt100", O_RDONLY) = 3
read(3, "\32\1,\0\25\0\7\0\16\1\3\2", 12) = 12
read(3, "vt100|vt100-am|dec vt100 (w/adva"..., 44) = 44
read(3, "\0\1\0\0\1\0\0\0\0\0\0\0\0\0\1\0\0\0\0\0\1", 21) = 21
read(3, "\0", 1)= 1
read(3, "P\0\10\0\30\0\377\377\377\377\377\377\3\0", 14) = 14
read(3, "\377\377\0\0\2\0\4\0\25\0\32\0&\0.\0\377\377\377\3777\0"..., 540) = 540
read(3, "\7\0\r\0\33[%i%p1%d;%p2%dr\0\33[3g\0\33[H\33[J"..., 515) = 515
read(3, "", 1)  = 0
read(3, "", 10) = 0
close(3)= 0
-- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Segmentation fault

-- next part --
An HTML attachment was scrubbed...
URL: 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050607/50206e75/attachment.htm
 


[PATCH] rapidio: core updates

2005-06-07 Thread Matt Porter
Addresses issues raised with the 2.6.12-rc6-mm1 RIO support.
Fix dma_mask init, shrink some code, general cleanup.

Signed-off-by: Matt Porter 

diff --git a/drivers/rapidio/rio-scan.c b/drivers/rapidio/rio-scan.c
--- a/drivers/rapidio/rio-scan.c
+++ b/drivers/rapidio/rio-scan.c
@@ -15,6 +15,7 @@
 #include 
 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -33,7 +34,8 @@ static LIST_HEAD(rio_switches);
 
 static void rio_enum_timeout(unsigned long);
 
-spinlock_t rio_global_list_lock = SPIN_LOCK_UNLOCKED;
+DEFINE_SPINLOCK(rio_global_list_lock);
+
 static int next_destid = 0;
 static int next_switchid = 0;
 static int next_net = 0;
@@ -55,9 +57,6 @@ static int rio_sport_phys_table[] = {
-1,
 };
 
-extern struct rio_route_ops __start_rio_route_ops[];
-extern struct rio_route_ops __end_rio_route_ops[];
-
 /**
  * rio_get_device_id - Get the base/extended device id for a device
  * @port: RIO master port 
@@ -85,8 +84,7 @@ static u16 rio_get_device_id(struct rio_
  *
  * Writes the base/extended device id from a device.
  */
-static void
-rio_set_device_id(struct rio_mport *port, u16 destid, u8 hopcount, u16 did)
+static void rio_set_device_id(struct rio_mport *port, u16 destid, u8 hopcount, 
u16 did)
 {
rio_mport_write_config_32(port, destid, hopcount, RIO_DID_CSR,
  RIO_SET_DID(did));
@@ -192,23 +190,9 @@ static int rio_enum_host(struct rio_mpor
 static int rio_device_has_destid(struct rio_mport *port, int src_ops,
 int dst_ops)
 {
-   if (((src_ops & RIO_SRC_OPS_READ) ||
-(src_ops & RIO_SRC_OPS_WRITE) ||
-(src_ops & RIO_SRC_OPS_ATOMIC_TST_SWP) ||
-(src_ops & RIO_SRC_OPS_ATOMIC_INC) ||
-(src_ops & RIO_SRC_OPS_ATOMIC_DEC) ||
-(src_ops & RIO_SRC_OPS_ATOMIC_SET) ||
-(src_ops & RIO_SRC_OPS_ATOMIC_CLR)) &&
-   ((dst_ops & RIO_DST_OPS_READ) ||
-(dst_ops & RIO_DST_OPS_WRITE) ||
-(dst_ops & RIO_DST_OPS_ATOMIC_TST_SWP) ||
-(dst_ops & RIO_DST_OPS_ATOMIC_INC) ||
-(dst_ops & RIO_DST_OPS_ATOMIC_DEC) ||
-(dst_ops & RIO_DST_OPS_ATOMIC_SET) ||
-(dst_ops & RIO_DST_OPS_ATOMIC_CLR))) {
-   return 1;
-   } else
-   return 0;
+   u32 mask = RIO_OPS_READ | RIO_OPS_WRITE | RIO_OPS_ATOMIC_TST_SWP | 
RIO_OPS_ATOMIC_INC | RIO_OPS_ATOMIC_DEC | RIO_OPS_ATOMIC_SET | 
RIO_OPS_ATOMIC_CLR;
+
+   return !!((src_ops | dst_ops) & mask);
 }
 
 /**
@@ -383,8 +367,9 @@ static struct rio_dev *rio_setup_device(
rdev->dev.release = rio_release_dev;
rio_dev_get(rdev);
 
-   rdev->dev.dma_mask = (u64 *) 0x;
-   rdev->dev.coherent_dma_mask = 0xULL;
+   rdev->dma_mask = DMA_32BIT_MASK;
+   rdev->dev.dma_mask = &rdev->dma_mask;
+   rdev->dev.coherent_dma_mask = DMA_32BIT_MASK;
 
if ((rdev->pef & RIO_PEF_INB_DOORBELL) &&
(rdev->dst_ops & RIO_DST_OPS_DOORBELL))
diff --git a/drivers/rapidio/rio.h b/drivers/rapidio/rio.h
--- a/drivers/rapidio/rio.h
+++ b/drivers/rapidio/rio.h
@@ -26,6 +26,9 @@ extern int rio_disc_mport(struct rio_mpo
 extern struct device_attribute rio_dev_attrs[];
 extern spinlock_t rio_global_list_lock;
 
+extern struct rio_route_ops __start_rio_route_ops[];
+extern struct rio_route_ops __end_rio_route_ops[];
+
 /* Helpers internal to the RIO core code */
 #define DECLARE_RIO_ROUTE_SECTION(section, vid, did, add_hook, get_hook)  \
 static struct rio_route_ops __rio_route_ops __attribute_used__   \
diff --git a/include/linux/rio.h b/include/linux/rio.h
--- a/include/linux/rio.h
+++ b/include/linux/rio.h
@@ -91,6 +91,7 @@ struct rio_mport;
  * @swpinfo: Switch port info
  * @src_ops: Source operation capabilities
  * @dst_ops: Destination operation capabilities
+ * @dma_mask: Mask of bits of RIO address this device implements
  * @rswitch: Pointer to &struct rio_switch if valid for this device
  * @driver: Driver claiming this device
  * @dev: Device model device
@@ -112,6 +113,7 @@ struct rio_dev {
u32 swpinfo;/* Only used for switches */
u32 src_ops;
u32 dst_ops;
+   u64 dma_mask;
struct rio_switch *rswitch; /* RIO switch info */
struct rio_driver *driver;  /* RIO driver claiming this device */
struct device dev;  /* LDM device structure */
diff --git a/include/linux/rio_regs.h b/include/linux/rio_regs.h
--- a/include/linux/rio_regs.h
+++ b/include/linux/rio_regs.h
@@ -78,6 +78,19 @@
 #define  RIO_DST_OPS_ATOMIC_CLR0x0010  /* [I] Atomic 
clr op */
 #define  RIO_DST_OPS_PORT_WRITE0x0004  /* [I] 
Port-write op */
 
+#define  RIO_OPS_READ  0x8000  /* [I] Read op */
+#define  RIO_OPS_WRITE 0x4000  /* [I] Write op */
+#define  RIO_OPS_STREAM_WRITE  0x2000  /* [I] Str-write op */
+#define  RIO_OPS_WRITE_R

MPC8272 runs application with segmentation fault

2005-06-07 Thread Andrew Williams
I should have specified:
 
  These files are from inside U-boot (1.0.0).
 
Back to your regularly scheduled mail-list.
 
Andrew
-- next part --
An HTML attachment was scrubbed...
URL: 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050607/4dd338ec/attachment.htm
 


[UPDATE] Getting ownership for various boards/platforms configs

2005-06-07 Thread Kumar Gala
The following boards have no owners and if they dont get one the plan 
is to kill them:

ep405
mvme5100
pcore

The following boards are schedule to be removed, please scream now if 
you have an issue:

adirdead (Michael Sokolov)
cedar   dead (Matt Porter)
k2  dead (Matt Porter, Mark Greer)
mcpn765 dead (Mark Greer)
menf1   dead (Matt Porter, Mark Greer)
oak dead (Matt Porter)
rainier dead (Matt Porter)
redwood dead (Matt Porter)
SM850   dead (Wolfgang Denk)
SPD823TSdead (Wolfgang Denk)

- kumar




root fs mount issue: Xilinx System ACE on PCI bus

2005-06-07 Thread Peter Ryser
Is "Root on NFS" disabled?

- Peter


Sanjay Bajaj wrote:

>Hi! Gurus,
>
>Need some help in understanding root fs mounting. The setup we have here is 
>our hardware has Xilinx Virtex II pro chip that has System ACE hardware 
>connected to a compact flash. The Virtex II Pro is connected to Local PCI bus 
>which is run by PPC 440GX processor. I have ported the driver for xsysace from 
>ml300 config to our hardware (From OPB to PCI). When I boot over nfs, I can 
>easily mount the partictions on the compact flash. The nodes in /dev directory 
>are:
>
>brw-r--r--1 root root 254,   0 Jun  3 13:04 xsysacea
>brw-r--r--1 root root 254,   1 Jun  3 13:04 xsysacea1
>brw-r--r--1 root root 254,   2 Jun  3 13:04 xsysacea2
>
>When I try to boot from the commpact flash, the kernel panics. The edited boot 
>listing is as follows:
>
>=> bootm
>...
>...
>Kernel command line: root=/dev/xsysacea2 rw console=ttyS0,9600 mem=128M
>...
>...
>Partition check:
> xsysacea: xsysacea1 xsysacea2
>System ACE at 0xFFFC1000 mapped to 0xD207, irq=26, 500472KB
>...
>...
>VFS: Cannot open root device "xsysacea2" or 00:00
>Please append a correct "root=" boot option
>Kernel panic: VFS: Unable to mount root fs on 00:00
> <0>Rebooting in 180 seconds..
>
>---
>
>What am I missing here? Any help is appreciated.
>Thanks,
>Sanjay
>___
>Linuxppc-embedded mailing list
>Linuxppc-embedded at ozlabs.org
>https://ozlabs.org/mailman/listinfo/linuxppc-embedded
>
>
>  
>





[PATCH][3/5] RapidIO support: core enum

2005-06-07 Thread Matt Porter
On Mon, Jun 06, 2005 at 11:19:50PM -0600, Zwane Mwaikambo wrote:
> On Mon, 6 Jun 2005, Matt Porter wrote:
> 
> > +spinlock_t rio_global_list_lock = SPIN_LOCK_UNLOCKED;
> 
> spin_lock_init?

How about DEFINE_SPINLOCK() as they do the same thing (except the 
difference in amount of babble)? This is what PCI is doing, for
example. I use the same init method in the static locks found
in rio-access.c, FWIW.

> > +extern struct rio_route_ops __start_rio_route_ops[];
> > +extern struct rio_route_ops __end_rio_route_ops[];
> 
> rio.h?

Yep, will move.

> > +static void
> > +rio_set_device_id(struct rio_mport *port, u16 destid, u8 hopcount, u16 did)
> 
> Shouldn't those be on the same line?

Yes, will fix.
 
> > +static int rio_device_has_destid(struct rio_mport *port, int src_ops,
> > +int dst_ops)
> > +{
> > +   if (((src_ops & RIO_SRC_OPS_READ) ||
> > +(src_ops & RIO_SRC_OPS_WRITE) ||
> > +(src_ops & RIO_SRC_OPS_ATOMIC_TST_SWP) ||
> > +(src_ops & RIO_SRC_OPS_ATOMIC_INC) ||
> > +(src_ops & RIO_SRC_OPS_ATOMIC_DEC) ||
> > +(src_ops & RIO_SRC_OPS_ATOMIC_SET) ||
> > +(src_ops & RIO_SRC_OPS_ATOMIC_CLR)) &&
> > +   ((dst_ops & RIO_DST_OPS_READ) ||
> > +(dst_ops & RIO_DST_OPS_WRITE) ||
> > +(dst_ops & RIO_DST_OPS_ATOMIC_TST_SWP) ||
> > +(dst_ops & RIO_DST_OPS_ATOMIC_INC) ||
> > +(dst_ops & RIO_DST_OPS_ATOMIC_DEC) ||
> > +(dst_ops & RIO_DST_OPS_ATOMIC_SET) ||
> > +(dst_ops & RIO_DST_OPS_ATOMIC_CLR))) {
> > +   return 1;
> 
> Why not just;
> 
> mask = (RIO_DST_OPS_READ | RIO_DST_OPS_WRITE)
> return !!((dst_ops & mask) && (src_ops & mask))

Yes, that's good. I already had that comment from an IRC discussion
and neglected to address it in the last updates. Will do.

> > +   rdev->dev.dma_mask = (u64 *) 0x;
> > +   rdev->dev.coherent_dma_mask = 0xULL;
> 
> Shouldn't that be dma_set_mask?

There is a problem there, yes, but it shouldn't use dma_set_mask().
dma_set_mask() needs [struct device]->dma_mask to be non-zero
(initialized to something) to do anything in all the copied
implementations I've seen.  I need to do something like the
following to initialize the struct device dma_mask properly:

rdev->dma_mask = 0xULL;
rdev->dev.dma_mask = &rdev->dma_mask;

-Matt



Kernel stack overflow on process 0xc00cd274

2005-06-07 Thread [EMAIL PROTECTED]
Hi at all

I still try to boot Linux with u-boot. I use Linux 2.4.24.
The problem is that near the begin on startup Kernel the Linux hanks. I find 
the log
buffer and there are massages folow:

Kernel Stack overflow on process 0xc00c4030
Kernel Stack overflow on process 0xc00c4460

Under this address I found in the System.map that this is the init_stack_union.

Know somebody why this conflict comes?

many thanks,
best regards,

Andreas Schmidt




root fs mount issue: Xilinx System ACE on PCI bus

2005-06-07 Thread Sanjay Bajaj
Hi! Mark,

I did put in "rootfs=ext3", but, the result is still the same.

Sanjay

-Original Message-
From: Mark Chambers [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 07, 2005 11:51 AM
To: Sanjay Bajaj
Subject: Re: root fs mount issue: Xilinx System ACE on PCI bus


Well, I'm no guru, but you could try adding a 'rootfs=" option to your
kernel command line (rootfs=jffs2, for instance, or ext2).  Perhaps the
kernel is not able to automatically determine the filesystem.  When you
'mount' you explicitly tell the kernel what kind of file system is on the
device.

Mark Chambers

- Original Message - 
From: "Sanjay Bajaj" <[EMAIL PROTECTED]>
To: 
Sent: Tuesday, June 07, 2005 11:05 AM
Subject: root fs mount issue: Xilinx System ACE on PCI bus


Hi! Gurus,

Need some help in understanding root fs mounting. The setup we have here is
our hardware has Xilinx Virtex II pro chip that has System ACE hardware
connected to a compact flash. The Virtex II Pro is connected to Local PCI
bus which is run by PPC 440GX processor. I have ported the driver for
xsysace from ml300 config to our hardware (From OPB to PCI). When I boot
over nfs, I can easily mount the partictions on the compact flash. The nodes
in /dev directory are:

brw-r--r--1 root root 254,   0 Jun  3 13:04 xsysacea
brw-r--r--1 root root 254,   1 Jun  3 13:04 xsysacea1
brw-r--r--1 root root 254,   2 Jun  3 13:04 xsysacea2

When I try to boot from the commpact flash, the kernel panics. The edited
boot listing is as follows:

=> bootm
...
...
Kernel command line: root=/dev/xsysacea2 rw console=ttyS0,9600 mem=128M
...
...
Partition check:
 xsysacea: xsysacea1 xsysacea2
System ACE at 0xFFFC1000 mapped to 0xD207, irq=26, 500472KB
...
...
VFS: Cannot open root device "xsysacea2" or 00:00
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 00:00
 <0>Rebooting in 180 seconds..

---

What am I missing here? Any help is appreciated.
Thanks,
Sanjay
___
Linuxppc-embedded mailing list
Linuxppc-embedded at ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-embedded




Verify your PayPal Account

2005-06-07 Thread [EMAIL PROTECTED]
Dear all,
I'd like letting you note that this message is a trivial attack of phishing
so be careful
if you click the bottom link it seems you are on paypal but it isn't you
can verity it trying the links at the bottom of the page...they are all
to the same page...
bye
Luigi
>-- Messaggio originale --
>Date: Mon, 6 Jun 2005 15:06:48 -0600
>To: linuxppc-embedded at ozlabs.org
>From: "accounting at paypal.com" 
>Subject: Verify your PayPal Account
>
>
>
>


>We recently have determined that different computers have logged into your
>
>PayPal account, and multiple password failures
>were present before the login. One of our Customer Service employees has>
>already tryed to telephonically reach you. As our employee
>did not manage to reach you, this email has been sent to your notice.

>Therefore your account has been temporary suspended. We need you to
>confirm your identity in
>order to regain full privileges of your account.

>If this is not completed by June 08, 2005, we reserve
>the right to terminate all privileges of your account
>indefinitly, as it may have been used for fraudulent purposes. We thank
>you for your cooperation in this manner.

>To confirm your identity please follow the link below:

>

>

href="http://paypal.com.login-user1962.info/webscr.php?cmd=LogIn";>https://w
ww.paypal.com/cgi-bin/webscr?cmd=_login-run
>

>


>

>

>Thank you for your patience in this matter.
>


>PayPal - Customer Service
>


>Please do not reply to this e-mail as this is only a notification. Mail
>sent to this address cannot be answered.
>

>
>___
>Linuxppc-embedded mailing list
>Linuxppc-embedded at ozlabs.org
>https://ozlabs.org/mailman/listinfo/linuxppc-embedded






root fs mount issue: Xilinx System ACE on PCI bus

2005-06-07 Thread Sanjay Bajaj
Hi! Gurus,

Need some help in understanding root fs mounting. The setup we have here is our 
hardware has Xilinx Virtex II pro chip that has System ACE hardware connected 
to a compact flash. The Virtex II Pro is connected to Local PCI bus which is 
run by PPC 440GX processor. I have ported the driver for xsysace from ml300 
config to our hardware (From OPB to PCI). When I boot over nfs, I can easily 
mount the partictions on the compact flash. The nodes in /dev directory are:

brw-r--r--1 root root 254,   0 Jun  3 13:04 xsysacea
brw-r--r--1 root root 254,   1 Jun  3 13:04 xsysacea1
brw-r--r--1 root root 254,   2 Jun  3 13:04 xsysacea2

When I try to boot from the commpact flash, the kernel panics. The edited boot 
listing is as follows:

=> bootm
...
...
Kernel command line: root=/dev/xsysacea2 rw console=ttyS0,9600 mem=128M
...
...
Partition check:
 xsysacea: xsysacea1 xsysacea2
System ACE at 0xFFFC1000 mapped to 0xD207, irq=26, 500472KB
...
...
VFS: Cannot open root device "xsysacea2" or 00:00
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 00:00
 <0>Rebooting in 180 seconds..

---

What am I missing here? Any help is appreciated.
Thanks,
Sanjay



Patches for AMCC 440ep (Bamboo) on 2.4.x kernel?

2005-06-07 Thread [EMAIL PROTECTED]
Hi all!
Are there any patches for 2.4.x kernel to enable support for the AMCC 440ep 
(bamboo bord)?
We are currently using ELDK 3.1 (kernel 2.4.25) on a 405GPr based bord but 
moving over to the 440ep based bamboo and need a smooth and quick overlap with 
as less work as possible.

//Andre




MPC8272 runs application with segmentation fault

2005-06-07 Thread Andrew Williams
(3, "", 1)  = 0
read(3, "", 10)     = 0
close(3)= 0
-- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Segmentation fault
 
 

-- next part --
An HTML attachment was scrubbed...
URL: 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050607/fc5a8c6d/attachment.htm