
Hi, I am trying to read SPD data from dimm though I2c. as the board that i am using it has different I2c register so it is difficult to match with the register used in u-boot. Can i get the information about /*----------------------------------------------------------------------------- | IIC Register Offsets '----------------------------------------------------------------------------*/ #define IICMDBUF 0x00 #define IICSDBUF 0x02 #define IICLMADR 0x04 #define IICHMADR 0x05 #define IICCNTL 0x06 #define IICMDCNTL 0x07 #define IICSTS 0x08 #define IICEXTSTS 0x09 #define IICLSADR 0x0A #define IICHSADR 0x0B #define IICCLKDIV 0x0C #define IICINTRMSK 0x0D #define IICXFRCNT 0x0E #define IICXTCNTLSS 0x0F #define IICDIRECTCNTL 0x10
these register to that it will be easy for me to match with the register that i am using. Regards, Ronny
The INTERNET now has a personality. YOURS! See your Yahoo! Homepage. http://in.yahoo.com/

Hi Ronny,
On Thursday 04 February 2010 15:30:35 Ronny D wrote:
I am trying to read SPD data from dimm though I2c. as the board that i am using it has different I2c register so it is difficult to match with the register used in u-boot.
Which platform are you using? PPC4xx? Or something else?
Can i get the information about /*-------------------------------------------------------------------------
| IIC Register Offsets
'-------------------------------------------------------------------------- --*/ #define IICMDBUF 0x00 #define IICSDBUF 0x02 #define IICLMADR 0x04 #define IICHMADR 0x05 #define IICCNTL 0x06 #define IICMDCNTL 0x07 #define IICSTS 0x08 #define IICEXTSTS 0x09 #define IICLSADR 0x0A #define IICHSADR 0x0B #define IICCLKDIV 0x0C #define IICINTRMSK 0x0D #define IICXFRCNT 0x0E #define IICXTCNTLSS 0x0F #define IICDIRECTCNTL 0x10
these register to that it will be easy for me to match with the register that i am using.
These defines above are not available in U-Boot any more. I switched to using a struct s while ago:
struct ppc4xx_i2c { u8 mdbuf; u8 res1; u8 sdbuf; ...
You are using PPC4xx, right?
Cheers, Stefan
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office@denx.de

Hi Stefan,
I am using ppc440 for customized board.
U-boot version that i am using is u-boot-2009.11. Here i am searching for the ppc4xx_i2c structure but not able to get it. on the other hand i have seen the i2c register macros used in i2c_transfer call.
~Ronny
--- On Thu, 4/2/10, Stefan Roese sr@denx.de wrote:
From: Stefan Roese sr@denx.de Subject: Re: I2C Register To: "Ronny D" ronny_d37@yahoo.com Cc: u-boot@lists.denx.de Date: Thursday, 4 February, 2010, 2:53 PM
Hi Ronny,
On Thursday 04 February 2010 15:30:35 Ronny D wrote:
I am trying to read SPD data from dimm though I2c. as the board that i am using it has different I2c register so it is difficult to match with the register used in u-boot.
Which platform are you using? PPC4xx? Or something else?
Can i get the information about /*-------------------------------------------------------------------------
| IIC Register Offsets
'-------------------------------------------------------------------------- --*/ #define IICMDBUF 0x00 #define IICSDBUF 0x02 #define IICLMADR 0x04 #define IICHMADR 0x05 #define IICCNTL 0x06 #define IICMDCNTL 0x07 #define IICSTS 0x08 #define IICEXTSTS 0x09 #define IICLSADR 0x0A #define IICHSADR 0x0B #define IICCLKDIV 0x0C #define IICINTRMSK 0x0D #define IICXFRCNT 0x0E #define IICXTCNTLSS 0x0F #define IICDIRECTCNTL 0x10
these register to that it will be easy for me to match with the register that i am using.
These defines above are not available in U-Boot any more. I switched to using a struct s while ago:
struct ppc4xx_i2c { u8 mdbuf; u8 res1; u8 sdbuf; ...
You are using PPC4xx, right?
Cheers, Stefan
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office@denx.de
Your Mail works best with the New Yahoo Optimized IE8. Get it NOW! http://downloads.yahoo.com/in/internetexplorer/

Hi Ronny,
On Friday 05 February 2010 06:43:20 Ronny D wrote:
I am using ppc440 for customized board.
So is this a "normal" AMCC PPC4xx (e.g. 440GX...) or a custom PPC4xx chip? If it's a common 4xx, then the normal PPC4xx I2C code should just work for you as well.
U-boot version that i am using is u-boot-2009.11.
That is before the restructuring. For new work please use the latest version from the git repository.
Here i am searching for the ppc4xx_i2c structure but not able to get it. on the other hand i have seen the i2c register macros used in i2c_transfer call.
Again, 2009-11 is already outdated. I reworked the I2C stuff in the meantime. Try the latest version and take a look at:
cpu/ppc4xx/i2c.c include/4xx_i2c.h
Cheers, Stefan
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office@denx.de

It is not a normal AMCC PPC4xx, its a customized PPC4xx chip. so I2C code wont work for me as it is.
i will have to map my register with i2c register used by u-boot.
Now i have downloaded latest u-boot version(Jan 25 2010 12:37 Link u-boot-latest.tar.bz2 -> u-boot-2009.11.1.tar.bz2) from ftp.
still ppc4xx_i2c structure i could not found.
~Ronny.
--- On Thu, 4/2/10, Stefan Roese sr@denx.de wrote: Hi Ronny,
On Friday 05 February 2010 06:43:20 Ronny D wrote:
I am using ppc440 for customized board.
So is this a "normal" AMCC PPC4xx (e.g. 440GX...) or a custom PPC4xx chip? If it's a common 4xx, then the normal PPC4xx I2C code should just work for you as well.
U-boot version that i am using is u-boot-2009.11.
That is before the restructuring. For new work please use the latest version from the git repository.
Here i am searching for the ppc4xx_i2c structure but not able to get it. on the other hand i have seen the i2c register macros used in i2c_transfer call.
Again, 2009-11 is already outdated. I reworked the I2C stuff in the meantime. Try the latest version and take a look at:
cpu/ppc4xx/i2c.c include/4xx_i2c.h
Cheers, Stefan
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: off...@denx.de _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
The INTERNET now has a personality. YOURS! See your Yahoo! Homepage. http://in.yahoo.com/

On Friday 05 February 2010 07:41:27 Ronny D wrote:
It is not a normal AMCC PPC4xx, its a customized PPC4xx chip. so I2C code wont work for me as it is.
I see. So you should probably not base your I2C driver code on the PPC4xx code. Perhaps you could use the soft_i2c code, where you only need some GPIO's to control the I2C signals.
i will have to map my register with i2c register used by u-boot.
Now i have downloaded latest u-boot version(Jan 25 2010 12:37 Link u-boot-latest.tar.bz2 -> u-boot-2009.11.1.tar.bz2) from ftp.
still ppc4xx_i2c structure i could not found.
That's because the source code on the FTP server is reflecting the last release version. Please use the latest version from the git repository instead:
http://git.denx.de/?p=u-boot.git;a=summary
There is also the possibility to download a snapshort in this web page, if you can't use git for some reason.
Cheers, Stefan
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office@denx.de

Stefan,
My Customized ppc4xx I2C interface provides two I2C controllers. so i think we will have to use Hard I2C ( because i will have to modify the same in kernel too).
Shall i used the same i2c driver from u-boot by modifying the register or write my own driver for it?
i found the ppc4xx_i2c structure, but can i get the information about the each parameter or register used in that structure.
~Ronny
--- On Fri, 5/2/10, Stefan Roese sr@denx.de wrote:
From: Stefan Roese sr@denx.de Subject: Re: I2C Register To: "Ronny D" ronny_d37@yahoo.com Cc: u-boot@lists.denx.de Date: Friday, 5 February, 2010, 7:24 AM
On Friday 05 February 2010 07:41:27 Ronny D wrote:
It is not a normal AMCC PPC4xx, its a customized PPC4xx chip. so I2C code wont work for me as it is.
I see. So you should probably not base your I2C driver code on the PPC4xx code. Perhaps you could use the soft_i2c code, where you only need some GPIO's to control the I2C signals.
i will have to map my register with i2c register used by u-boot.
Now i have downloaded latest u-boot version(Jan 25 2010 12:37 Link u-boot-latest.tar.bz2 -> u-boot-2009.11.1.tar.bz2) from ftp.
still ppc4xx_i2c structure i could not found.
That's because the source code on the FTP server is reflecting the last release version. Please use the latest version from the git repository instead:
http://git.denx.de/?p=u-boot.git;a=summary
There is also the possibility to download a snapshort in this web page, if you can't use git for some reason.
Cheers, Stefan
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office@denx.de
Your Mail works best with the New Yahoo Optimized IE8. Get it NOW! http://downloads.yahoo.com/in/internetexplorer/

Ronny,
On Friday 05 February 2010 09:22:59 Ronny D wrote:
My Customized ppc4xx I2C interface provides two I2C controllers. so i think we will have to use Hard I2C ( because i will have to modify the same in kernel too).
Yes, this would be best. But if you can map the I2C pins via pin multiplexing to some GPIO pins, you could use the existing soft_i2c driver.
Shall i used the same i2c driver from u-boot by modifying the register or write my own driver for it?
I have no idea, since I don't have any infos about your I2C controller. I don't know if it is similar to any of the supported controllers. So you need to check this yourself.
i found the ppc4xx_i2c structure, but can i get the information about the each parameter or register used in that structure.
From the PPC4xx user manuals. For example the PPC440EPx. You can download those manual from the AppliedMicro (AMCC) web site.
Cheers, Stefan
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office@denx.de

Hi Stefan,
I am using customized ppc440 based board. We need u-boot in little endian. Will it possible to compile the u-boot source in little endian for ppc440?
Regards, Ronny D
The INTERNET now has a personality. YOURS! See your Yahoo! Homepage. http://in.yahoo.com/

Dear Ronny D,
In message 143206.74847.qm@web46114.mail.sp1.yahoo.com you wrote:
I am using customized ppc440 based board. We need u-boot in little endian. Will it possible to compile the u-boot source in little endian for ppc440?
The natural byte order for the Power Architecture is Big Endian. We do not support Littel Endian mode on Power.
I have to admit that I doubt if efforts to implement LE mode on Power make any sense - as mentioned, BE is the natural byte order, and usually it's much easier to explicitly convert date when accessing LE devices as we're doing for example when accessing the PCI bus.
I recommend to reconsider your plans.
Best regards,
Wolfgang Denk
participants (3)
-
Ronny D
-
Stefan Roese
-
Wolfgang Denk