Per Jessen wrote:
>> You need to update your DTB, or create a fragment and merge it with
>> your current DT. Then, use this new DTB to boot your board.
>
> Right. It's good to get my suspicions confirmed, makes it easier to
> move in the right direction.
Thanks to Guillaume for getting me on the track. To those who might be
watching this thread - yes, it's working now!
Status: I'm reading three DS18x20 sensors connected to GPIO11. I'm
getting mostly good readings, but also quite a few bad ones (temp 85C).
I'll update the wiki-page as well as write an entry on my own blog, but
for those impatiently waiting -
I based everything on the DTB from the FriendlyCore eflasher image. It
has way more stuff than we have in the openSUSE JeOS ditto. I guess
the source is also available somewhere, but I started out with
decompiling to DTS.
a) Look for the entry "pinctrl@01c20800" and add a label 'gpio0:'
gpio0:pinctrl@01c20800
b) in this section, for instance above the 'csi' entry, add the
following:
ds1820_pins:w1_pins@0 {
label = "Dallas 1-wire";
pins = "PG11";
function = "gpio_in";
pull = <0x1>;
};
c) towards the end of the file, add this node:
onewire {
compatible = "w1-gpio";
pinctrl-names = "default";
pinctrl-0 = <&ds1820_pins>;
gpios = <&gpio0 0x0 203 0x1>;
status = "okay";
};
I added it after the "leds" node.
compile a new dtb:
dtc -b 0 -@ -I dts -O dtb your-new.dts >/boot/dtb/your-new.dtb
adjust your boot-script and reboot.
I am most certainly not very familiar with all of this, and it took a
lot of trial & error. Corrections and suggestions are very much
welcome.
For module 'w1-therm', I ended up adding 'strong_pullup=2' which reduced
the number of bad readings, a lot.
--
Per Jessen, Zürich (0.4°C)
http://www.dns24.ch/ - free dynamic DNS, made in Switzerland.
--
To unsubscribe, e-mail: [email protected]
To contact the owner, e-mail: [email protected]