Thread (4 messages) flat view 4 messages, 3 authors, 2008-07-30

Re: Writing to CPLD mapped to EBC Port of AMCC440EP

From: Henry Bausley <hidden>
Date: 2008-07-30 18:38:10

Our board is based upon the Yosemite.  But we have modified the CPLD and 
made our own custom hardware, thats why the parameters for ioremap are 
different.  The system is based on the 2.6.14-rtl that has worked absolutely 
perfect for a couple of years which we got from FSM Labs.

I am porting to the 2.6.24 kernel Denx with xenomai and had the problem.  It 
turns out the default value if the EBC0_CFG register  was 0x84400000 in the 
system and we needed to change it to 0xBC400000 to increase the Ready 
Timeout.  We were getting a machine check error.

Thank's a lot for your input!!!



----- Original Message ----- 
From: "Josh Boyer" <redacted>
To: "Henry Bausley" <redacted>
Cc: <redacted>
Sent: Tuesday, July 29, 2008 5:02 PM
Subject: Re: Writing to CPLD mapped to EBC Port of AMCC440EP

On Mon, 28 Jul 2008 16:40:35 -0700
"Henry Bausley" [off-list ref] wrote:
quoted
I am attempting to write to a CPLD mapped to the EBC port of a AMCC 
440EP.  When I attempt to write using an unsigned variable
ie. unsigned *pbase = (unsigned char *)ioremap64(0x8F000000,0x1000000);
I get a kernel access of bad area, sig: 11 fault.  However, if I change 
to an unsigned char ie. unsigned char *pbase = (unsigned char 
*)ioremap64(0x8F000000,
0x1000000); The system doesn't crash.  I need to write using an unsigned. 
Does any one have any ideas what I am doing wrong?
The documentation I have for the Bamboo board says the EPLD is at
address 0x80002000 and is only 8 bytes in size.  Similarly, the
Yosemite board CPLD is at 0x80002000 and is only 16 bytes in size.  Why
you are ioremapping 16MiB at 0x8F000000 I have no idea.

Also, the individual registers of the EPLD/CPLD on both boards are only
8 bits, so an unsigned char seems appropriate.  If you have a custom
board that does something totally different from how the eval boards
are set up, then I'm not sure many people will be able to help you
without documentation for that board.

josh 
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help