162306a36Sopenharmony_ci======================== 262306a36Sopenharmony_ciKernel driver w1_ds28e04 362306a36Sopenharmony_ci======================== 462306a36Sopenharmony_ci 562306a36Sopenharmony_ciSupported chips: 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci * Maxim DS28E04-100 4096-Bit Addressable 1-Wire EEPROM with PIO 862306a36Sopenharmony_ci 962306a36Sopenharmony_cisupported family codes: 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci ================= ==== 1262306a36Sopenharmony_ci W1_FAMILY_DS28E04 0x1C 1362306a36Sopenharmony_ci ================= ==== 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ciAuthor: Markus Franke, <franke.m@sebakmt.com> <franm@hrz.tu-chemnitz.de> 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ciDescription 1862306a36Sopenharmony_ci----------- 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ciSupport is provided through the sysfs files "eeprom" and "pio". CRC checking 2162306a36Sopenharmony_ciduring memory accesses can optionally be enabled/disabled via the device 2262306a36Sopenharmony_ciattribute "crccheck". The strong pull-up can optionally be enabled/disabled 2362306a36Sopenharmony_civia the module parameter "w1_strong_pullup". 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ciMemory Access 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci A read operation on the "eeprom" file reads the given amount of bytes 2862306a36Sopenharmony_ci from the EEPROM of the DS28E04. 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ci A write operation on the "eeprom" file writes the given byte sequence 3162306a36Sopenharmony_ci to the EEPROM of the DS28E04. If CRC checking mode is enabled only 3262306a36Sopenharmony_ci fully aligned blocks of 32 bytes with valid CRC16 values (in bytes 30 3362306a36Sopenharmony_ci and 31) are allowed to be written. 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ciPIO Access 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci The 2 PIOs of the DS28E04-100 are accessible via the "pio" sysfs file. 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_ci The current status of the PIO's is returned as an 8 bit value. Bit 0/1 4062306a36Sopenharmony_ci represent the state of PIO_0/PIO_1. Bits 2..7 do not care. The PIO's are 4162306a36Sopenharmony_ci driven low-active, i.e. the driver delivers/expects low-active values. 42