#1626 closed defect

Can't seek in i2c eeprom devices

Reported by: Angus Gratton Owned by: Sebastian Huber
Priority: normal Milestone: 4.11
Component: score Version: 4.10
Severity: normal Keywords:
Cc: gedare@…, nick.withers@… Blocked By:
Blocking:

Description (last modified by Joel Sherrill)

lseek() doesn't seem to work when reading an I2C EEPROM on MVME3100 (PowerPC).

To reproduce:

  • Open EEPROM device
  • lseek() to some other offset
  • Read from EEPROM device

The read will complete as if the lseek() never occured.

Looking at the underlying i2c read functions in cpukit, I don't see any reference to offset, so I'm guessing this is unimplemented for I2C reads.

However, it appears that it did once work (EPICS on RTEMS uses lseek() to read NVRAM values from I2C EEPROM.)

Cheers - Angus

Attachments (1)

RTEMS Ticket 2139.patch (7.5 KB) - added by Nick Withers on Dec 5, 2013 at 2:41:39 AM.
Fix error return inconsistencies

Download all attachments as: .zip

Change History (7)

comment:1 Changed on Jul 20, 2010 at 4:54:44 AM by Angus Gratton

Summary: Can't seek i2c eeprom readsCan't seek in i2c eeprom devices

comment:2 Changed on Aug 13, 2013 at 8:36:35 AM by Nick Withers

Cc: Nick Withers added

Changed on Dec 5, 2013 at 2:41:39 AM by Nick Withers

Attachment: RTEMS Ticket 2139.patch added

Fix error return inconsistencies

comment:3 Changed on Dec 5, 2013 at 1:58:54 PM by Gedare Bloom

attachments.isobsolete: 01

comment:4 Changed on Dec 5, 2013 at 1:59:50 PM by Gedare Bloom

Cc: Gedare Bloom added

Replying to comment:2:

Please ignore this attachment and comment, my apologies, they were intended for
another ticket

I marked the attachment obsolete.

comment:5 Changed on Nov 23, 2014 at 4:18:55 PM by Joel Sherrill

Description: modified (diff)
Owner: changed from Joel Sherrill to Sebastian Huber
Status: newassigned

Nick.. please comment on the state of this. Do you have a new patch?

Sebastian.. is this still an issue?

comment:6 Changed on Nov 24, 2014 at 7:51:21 AM by Sebastian Huber

Resolution: wontfix
Status: assignedclosed

Something went wrong with the Bugzilla to trac conversion. The patch is completely unrelated to this ticket.

I will not work on a fixes for libi2c stuff. I suggest to use the new I2C framework. The new I2C EEPROM device supports lseek().

http://git.rtems.org/rtems/tree/cpukit/dev/i2c/eeprom.c

Note: See TracTickets for help on using tickets.