From mboxrd@z Thu Jan 1 00:00:00 1970 From: Frank Smith Date: Sun, 11 May 2003 20:50:35 -0300 Subject: [U-Boot-Users] strataflash.c References: <92E171C34A30D51193CA000103CE74F00379059A@CAREX> Message-ID: <03May11.204944adt.7308@dragon.appliedmicro.ns.ca> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi, The more I look into strataflash.c, the more I'm starting to think that it doesn't support x16 devices in x8 mode. The problem I see is that the 'portwidth' value is used to drive two things -- offset multiplier, and side of data reads/writes to the flash device. On a pure x16 device, the offset multiplier is 2 and the size of the data read/writes is 2. So portwidth is 2. On an x16 device in x8 mode, however, the offset multiplier is 2, but the size of data read/writes is 1. What should portwidth be...? I think the offset multiplier and size of data read/writes should be driven by *different* values. Or am I overlooking something obvious? Thanks, Frank. ----- Original Message ----- From: "Tom Guilliams" To: "'Frank Smith'" ; Sent: Friday, May 09, 2003 7:14 PM Subject: RE: [U-Boot-Users] strataflash.c > Frank, > > I can tell you I've had some problems with a x16 in x8 mode in > strataflash.c. Basically, the flash_detect_cfi() routine detects my > E28F128J3A chip as portwidth 2 (x16) and chipwidth 1 (x8). All the CFI info > is read correctly. However, any write accesses to chip (programming or > erasing) fail upon the calculated offset (it's incorrectly doubled because > of portwidth being 2). > > I had to manually force the portwidth to 1 (x8) after the flash_get_size() > routine to make everything behave for any flash operations. > > I don't think the "detect" logic is correct in terms of port and chip width > for "some" devices. However, the author - Brad Kemp - has said he's had > success on numerous other flash width devices. > > Your problem sounds exactly like mine. For a hack fix, set > > info->portwidth = 1; > > for the last thing flash_get_size() does before returning the size. > > Tom > > -----Original Message----- > From: Frank Smith [mailto:smith at amirix.com] > Sent: Friday, May 09, 2003 1:00 PM > To: u-boot-users at lists.sourceforge.net > Subject: [U-Boot-Users] strataflash.c > > > > Hello, > > I have a board with a couple of Intel RC28F320J3A Strataflash devices. One > device is wired to x16 mode, the other to x8 mode. > > I'm trying to use the strataflash.c driver with these flash chips. The > driver detects the flash that's in x16 mode, but not > the one in x8 mode. So I'm digging through the code to try to figure > out what's up. I've been successful in avoiding dealing with flash > programming code up until now in my life..... > > If anyone knows anything about whether strataflash.c was designed to work > with x16 devices in x8 mode, I'd love to hear from you! From what I've seen > so far, I'm tending to think that it doesn't. > > > Thanks, > Frank. > > > ------------------------------------------------------- > Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara The > only event dedicated to issues related to Linux enterprise solutions > www.enterpriselinuxforum.com > > _______________________________________________ > U-Boot-Users mailing list > U-Boot-Users at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/u-boot-users > > > ------------------------------------------------------- > Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara > The only event dedicated to issues related to Linux enterprise solutions > www.enterpriselinuxforum.com > > _______________________________________________ > U-Boot-Users mailing list > U-Boot-Users at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/u-boot-users >