SEEPROM(4)
π seeprom(4) β the kernel interfaces manual, bestie edition
okay so this is the page for seeprom, from the Kernel Interfaces Manual β it's the driver for the 24-series I2C EEPROMs and honestly it's a whole vibe. tiny little memory chips, big main character energy. let's get into it π
β¨ NAME β¨
seeprom β the 24-series I2C EEPROM driver. that's it, that's the name, slay.
πΈ SYNOPSIS πΈ
seeprom0 at iic0 addr 0x51: AT24Cxx or compatible EEPROM: size 256
seeprom16 at iic1 addr 0x57: power-supply: size 8192
look at those two lines just existing. first one is your classic EEPROM moment, second one is out here with addr 0x57 and a whole power-supply situation. iconic behavior tbh π
π¦ DESCRIPTION π¦
so the seeprom driver is literally the support system for the ATMEL 24-series of I2C EEPROMs β plus all the compatibles, because these chips come from a whole variety of vendors and honestly good for them. the Philips PCF8582 is supported too, since it's compatible with the AT24C02. no cap, it just works π«Ά
you get to the contents of the memory through a character device. that's the doorway, that's the access point, that's how we're doing this.
the size of the EEPROM is either read from the firmware, or you can set it yourself using the flags keyword in the kernel configuration. the value of the flag is the EEPROM size in Kbit. and the mapping? absolutely essential, so here it is, do not lose it β¨
flags1 β EEPROM size in bytes: 128flags2 β EEPROM size in bytes: 256flags4 β EEPROM size in bytes: 512flags8 β EEPROM size in bytes: 1024flags16 β EEPROM size in bytes: 2048flags32 β EEPROM size in bytes: 4096flags64 β EEPROM size in bytes: 8192flags128 β EEPROM size in bytes: 16384flags256 β EEPROM size in bytes: 32768flags512 β EEPROM size in bytes: 65536
yes bestie, the flag doubles every time. it's giving powers of two. it's giving math. we love her π
π§ EXAMPLES π§
indirect configuration
seeprom* at iic? addr 0x51 flags 0x2
direct configuration
seeprom* at iic? addr?
two ways to do the thing, pick your fighter π₯
π SEE ALSO π
iic(4)β go read it, it's the whole I2C bus situation
π HISTORY π
the seeprom device appeared in NetBSD 2.0. vintage. retro. a classic. we stan a legacy icon β
π BUGS π
okay listen, we gotta be honest here, not everything is perfect and that's fine:
AT24C1024EEPROM's are not supported. π not me finding out like this- Software write protection on the
AT34CxxEEPROMs is not supported. so don't count on it, fr fr - the
seepromdriver reads and writes one byte at a time to be compatible with all controllers. slow and steady, one byte at a time, that's the whole strategy π’
lowkey important: those first two are real limitations, not a vibe β don't go planning around features that aren't there. π
and that's the page!! mwah π this one came from Debian, dated October 25, 2013 β so yes, she's been around a minute, and she still ate. go forth and read your EEPROMs responsibly πβ¨
π¦ where this page comes from
- nixpkgs unstable: netbsd-source 11.0
- Copyright (c) 2007 The NetBSD Foundation, Inc
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms