| công cụ tìm kiếm bảng dữ liệu linh kiện điện tử |
|
UM0851 bảng dữ liệu(PDF) 84 Page - STMicroelectronics |
|
|
|||||||||||||||||||||||||||||
UM0851 bảng dữ liệu(HTML) 84 Page - STMicroelectronics |
|
84 / 245 page ![]() Communication device drivers UM0851 84/245 Doc ID 16604 Rev 2 This shows four different I2C chip devices, all controlled by the same EEPROM driver. To locate the controlling driver,you can look in the /sys/bus/i2c/drivers directory or in the directory of the chip device itself and read the name file. $ cat /sys/devices/platform/spear_i2c.6/i2c-0/0-0050/name eeprom Read and write To read and write from the user space, you need binary attribute. The structure used for this is: static struct bin_attribute eeprom_attr = { .attr = { .name = "eeprom", .mode = S_IRWXUGO, .owner = THIS_MODULE, }, .size = EEPROM_SIZE, .read = eeprom_read, } Cleaning up When the I2C chip device is removed from the system, by unloading either the I2C bus driver or the I2C chip driver, the I2C core calls the detach_client() function specified in the struct i2c_driver. This is usually a simple function, as it can be seen in the example driver's implementation. static int eeprom_detach_client(struct i2c_client *client) { int err; sysfs_remove_bin_file(&client->dev.kobj, &xxx_attr); err = i2c_detach_client(client); if (err) return err; kfree(i2c_get_clientdata(client)); return 0; } While the i2c_attach_client() function is called to register the struct i2c_client with the I2C core, the i2c_detach_client() function is used to unregister it. If that function succeeds, the memory the driver has allocated for the I2C device needs to be freed before returning from the function. This example driver does not specifically remove the sysfs files from the sysfs core. This step is done automatically in the driver core within the i2c_detach_client() function. But if necessary, you can remove the file manually using a call to device_remove_file. 4.5.5 I2C driver performance The driver performance was evaluated using the following setup: ● Target device: SPEAr600 – CPU: 332 MHz - AHB: 166 MHz - DDR: 333 MHz – M24C04 EEPROM (size: 512 Bytes, block size: 16 Bytes) |
|
Link URL |
| Cho đến nay ALLDATASHEET có giúp ích cho doanh nghiệp của bạn hay không? [ DONATE ] |
Alldatasheet là | Quảng cáo | Liên lạc với chúng tôi | Chính sách bảo mật | Liên kết đến bảng dữ liệu | Trao đổi link | Tìm kiếm theo nhà sản xuất All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |