-------- In message <97808.1513774311_at_critter.freebsd.dk>, Poul-Henning Kamp writes: >Does anybody have a working example of getting onewire sensors >working on beagleboneblack ? Ok, with some hints from the usual IRC channel I managed to figure it out: cd /boot/dfb mv am335x-boneblack.dtb _am335x-boneblack.dtb dtc -I dtb -O dts -o am335x-boneblack.dts _am335x-boneblack.dtb patch am335x-boneblack.dts (see below) dtc -I dts -O dtb -o am335x-boneblack.dtb am335x-boneblack.dts echo "owc_load=YES" >> /boot/loader.conf echo "ow_load=YES" >> /boot/loader.conf echo "ow_temp_load=YES" >> /boot/loader.conf The patching of am335x-boneblack.dts is black magic, but this patch worked for me: root_at_beaglebone:/boot/dtb # diff -u *dts --- _am335x-boneblack.dts 2017-07-21 11:24:18.229468000 +0000 +++ am335x-boneblack.dts 2017-07-21 19:19:35.166447000 +0000 _at__at_ -2149,6 +2149,14 _at__at_ status = "disabled"; }; + // first number (0x36, 0x4b) refers to "phandle" of gpio# + // second number is bit on that *cpu* GPIO + // not sure if the third matter, but 1 works. + onewire0 { compatible = "w1-gpio"; gpios = <0x36 30 1>; }; // P9::11 + onewire1 { compatible = "w1-gpio"; gpios = <0x36 31 1>; }; // P9::13 + onewire2 { compatible = "w1-gpio"; gpios = <0x4b 16 1>; }; // P9::15 + onewire3 { compatible = "w1-gpio"; gpios = <0x36 3 1>; }; // P9::21 + __symbols__ { l4_wkup = "/ocp/l4_wkup_at_44c00000"; wkup_m3 = "/ocp/l4_wkup_at_44c00000/wkup_m3_at_100000"; Either device tree overlays just plain don't work, I can't figure out how to write them (p=0.5). I sure get why getting people hooked on FreeBSD with RPi's and BeagleBones is not happening :-/ -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk_at_FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence.Received on Wed Dec 20 2017 - 22:06:16 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:14 UTC