Skip to contentSkip to conversation

RapidIO on custom board (MPC8548 )

U-Boot-Users Adam Nowak 2 participants 2 messages May 18, 2008 – May 19, 2008

lore
Share & tools
lore

Adam Nowak

author
#0 lore raw

I have to configure the system (u-boot, kernel) and create the RIO driver. Could you advise me how to fix my current problem?

a) Kernel log:
...
Setting up RapidIO peer-to-peer network /soc8548 at e0000000/rapidi0
RIO: Of-device full name /soc8548 at e0000000/rapidio at c0000
RIO: LAW start 0x00000000c0000000, size 0x0000000020000000.
RIO: Regs start 0xe00c0000 size 0x00020000
[there are not any next messages, the board hung up]

b) Corresponding Source Code
The kernel hung up in the file linux-2.6.23/arch/powerpc/sysdev/fsl_rio.c
Function fsl_rio_setup() is executed but it hung on in_be32(regs_win + RIO_CCSR);

c) u-boot configuration
#define CONFIG_RIO 1
#define CFG_RIO_MEM_BASE 0xC0000000
#define CFG_RIO_MEM_SIZE 0x20000000 /* 512M */

d) Device Tree Source
rapidio at c0000 {
compatible = "fsl,rapidio-delta"; #address-cells = <2>;
#size-cells = <2>;
reg = <c0000 20000>;
ranges = <0 0 c0000000 20000000>; interrupt-parent = <&mpic>;
interrupts = <30 2 31 2 32 2 35 2 36 2 37 2 38 2>;
};

If you can not advise me on technical aspects, tell me please what I should read to understand initialization of RIO in the kernel.

Thanks,
Adam

#1 lore raw

Adam,

Make sure you have matching common transport sizes in your system - Section 4.4.3.16 RapidIO System Size in the 8548 manual.

Quoted 49 lines · Adam Nowak

I have to configure the system (u-boot, kernel) and create the RIO driver. Could you advise me how to fix my current problem?

a) Kernel log:
...
Setting up RapidIO peer-to-peer network /soc8548 at e0000000/rapidi0
RIO: Of-device full name /soc8548 at e0000000/rapidio at c0000
RIO: LAW start 0x00000000c0000000, size 0x0000000020000000.
RIO: Regs start 0xe00c0000 size 0x00020000
[there are not any next messages, the board hung up]

b) Corresponding Source Code
The kernel hung up in the file linux-2.6.23/arch/powerpc/sysdev/fsl_rio.c
Function fsl_rio_setup() is executed but it hung on in_be32(regs_win + RIO_CCSR);

c) u-boot configuration
#define CONFIG_RIO 1
#define CFG_RIO_MEM_BASE 0xC0000000
#define CFG_RIO_MEM_SIZE 0x20000000 /* 512M */

d) Device Tree Source
rapidio at c0000 {
compatible = "fsl,rapidio-delta"; #address-cells = <2>;
#size-cells = <2>;
reg = <c0000 20000>;
ranges = <0 0 c0000000 20000000>; interrupt-parent = <&mpic>;
interrupts = <30 2 31 2 32 2 35 2 36 2 37 2 38 2>;
};

If you can not advise me on technical aspects, tell me please what I should read to understand initialization of RIO in the kernel.

Thanks,
Adam

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
U-Boot-Users mailing list
U-Boot-Users at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users

Signature · 20 lines
John Traill
Systems Engineer
Network and Computing Systems Group

Freescale Semiconductor UK LTD
Colvilles Road
East Kilbride
Glasgow G75 0TG, Scotland

Tel: +44 (0) 1355 355494
Fax: +44 (0) 1355 261790

E-mail: john.traill at freescale.com

Registration Number: SC262720
VAT Number: GB831329053

[ ] General Business Use
[ ] Freescale Internal Use Only
[ ] Freescale Confidential Proprietary