RobertCNelson / bb-kernel

MIT License
130 stars 102 forks source link

drivers: misc: mikrobus add support for alternate Click ID EEPROM #68

Closed vaishnavachath closed 2 years ago

vaishnavachath commented 2 years ago

Hi @RobertCNelson , The following patch adds support for alternate mikroBUS click ID EEPROM, Part No. DS28E36 in addition to the original Click ID 1Wire EEPROM DS28EC20, the changes have been tested(with overlay changes) on v5.15 kernel, needs update in overlay to resolve the pinmux conflict(UART4 and PWM), please let me know what is the best way to fix this(currently mikroBUS driver probe fails when failing to set the pinmux state)

Test Log ( DS28EC20):

debian@beaglebone:~$ uname -a
Linux beaglebone 5.15.2-bone9 #1xross PREEMPT Sun Nov 21 00:10:01 IST 2021 armv7l GNU/Linux
debian@beaglebone:~$ cat /etc/dogtag 
BeagleBoard.org Debian Buster IoT mikroBUS Image 2021-10-29
debian@beaglebone:~$ dmesg |grep -e mikrobus -e wire
[    1.735820] Driver for 1-wire Dallas network protocol.
[    2.129544] mikrobus:mikrobus_port_register: registering port mikrobus-0 
[    2.129767] mikrobus mikrobus-0: mikrobus port 0 eeprom empty probing default eeprom
[    2.198785] w1_master_driver w1_bus_master1: Attaching one wire slave 43.0000017b5366 crc bd
[    2.259216] mikrobus:mikrobus_port_scan_eeprom: manifest start address is 0x0 
[    3.156290] mikrobus_manifest:mikrobus_manifest_attach_device: parsed device 1, driver=fb_ssd1306, protocol=11, reg=0
[    3.156341] mikrobus_manifest:mikrobus_manifest_attach_device: device 1, number of properties=5
[    3.156370] mikrobus_manifest:mikrobus_manifest_attach_device: device 1, number of gpio resource=2
[    3.156382] mikrobus_manifest:mikrobus_manifest_parse:  OLEDB Click manifest parsed with 1 devices
[    3.156487] mikrobus mikrobus-0: registering device : fb_ssd1306
[    3.156506] mikrobus mikrobus-0:  adding lookup table : spi0.0
debian@beaglebone:~$ 

Test Log ( DS28E36):


debian@beaglebone:~$ uname -a
Linux beaglebone 5.15.2-bone9 #1xross PREEMPT Sun Nov 21 00:10:01 IST 2021 armv7l GNU/Linux
debian@beaglebone:~$ cat /etc/dogtag 
BeagleBoard.org Debian Buster IoT mikroBUS Image 2021-10-29
debian@beaglebone:~$ dmesg |grep -e mikrobus -e wire
[    1.736600] Driver for 1-wire Dallas network protocol.
[    2.129824] mikrobus:mikrobus_port_register: registering port mikrobus-0 
[    2.130048] mikrobus mikrobus-0: mikrobus port 0 eeprom empty probing default eeprom
[    2.198814] w1_master_driver w1_bus_master1: Attaching one wire slave 4c.0000000fdd8f crc 24
[    2.233081] mikrobus:mikrobus_port_scan_eeprom: manifest start address is 0x0 
[    4.432397] mikrobus_manifest:mikrobus_manifest_attach_device: parsed device 1, driver=fb_ssd1351, protocol=11, reg=0
[    4.432444] mikrobus_manifest:mikrobus_manifest_attach_device: device 1, number of properties=7
[    4.432469] mikrobus_manifest:mikrobus_manifest_attach_device: device 1, number of gpio resource=2
[    4.432482] mikrobus_manifest:mikrobus_manifest_parse:  OLEDC Click manifest parsed with 1 devices
[    4.432577] mikrobus mikrobus-0: registering device : fb_ssd1351
[    4.432596] mikrobus mikrobus-0:  adding lookup table : spi0.0
debian@beaglebone:~$