On Sat, Mar 2, 2019 at 8:23 AM <[email protected]> wrote: > > I have a prototype cape with the EEROM programmed as follows: > > root@beaglebone2GB:/home/john/One-Wire# cat > /sys/bus/i2c/devices/1-0057/eeprom | hexdump -C > 00000000 aa 55 33 ee 41 30 4f 6e 65 57 69 72 65 20 70 6c |.U3.A0OneWire pl| > 00000010 75 73 20 43 41 4e 62 75 73 00 00 00 00 00 00 00 |us CANbus.......| > 00000020 00 00 00 00 00 00 30 30 41 30 41 75 74 6f 41 72 |......00A0AutoAr| > 00000030 74 69 73 61 6e 73 20 49 6e 63 42 42 2d 57 31 2d |tisans IncBB-W1-| > 00000040 50 38 2e 31 31 00 00 00 00 00 00 00 00 00 00 00 |P8.11...........| > 00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| > * > 00000130 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| > * > 00008000 > r > > Needless to say with the demise of the $SLOTS concept this tutorial is no > longer valid so I'd like to rewrite it so it is valid. > https://www.cs.sfu.ca/CourseCentral/433/bfraser/other/2016-student-howtos/DS18B20Thermometer.pdf > > Using this dts as a guide > https://github.com/beagleboard/bb.org-overlays/blob/5741f63c1ee922333dca02d9763edae03d477c96/src/arm/BB-CAN0-00A0.dts > > I've modified the BB-W1-P9.12-00A0.dts to become BB-W1-P8.11-00A0.dts shown > below. > > debian@ebb:~/bb.org-overlays/src/arm$ cat BB-W1-P8.11* > /* > * Copyright (C) 2015 Robert Nelson <[email protected]> > * > * Virtual cape for onewire on connector pin P8.11 > * derived from BB-W1-P9.12-00A0.dts > * by John Dammeyer MAR2019 > * > * This program is free software; you can redistribute it and/or modify > * it under the terms of the GNU General Public License version 2 as > * published by the Free Software Foundation. > */ > > /dts-v1/; > /plugin/; > > #include <dt-bindings/board/am335x-bbw-bbb-base.h> > #include <dt-bindings/gpio/gpio.h> > #include <dt-bindings/pinctrl/am33xx.h> > > / { > compatible = "ti,beaglebone", "ti,beaglebone-black", > "ti,beaglebone-green"; > > /* identification */ > part-number = "BB-W1-P8.11"; > version = "00A0"; > > /* state the resources this cape uses */ > exclusive-use = > /* the pin header uses */ > "P8.11"; > > /* > * Free up the pins used by the cape from the pinmux helpers. > */ > fragment@0 { > target = <&ocp>; > __overlay__ { > P8_11_pinmux { status = "disabled"; }; > }; > }; > > fragment@1 { > target = <&am33xx_pinmux>; > __overlay__ { > > dallas_w1_pins: pinmux_dallas_w1_pins { > pinctrl-single,pins = < > BONE_P8_11 0x37 > >; > }; > }; > }; > > fragment@2 { > target-path="/"; > __overlay__ { > > onewire { > status = "okay"; > pinctrl-names = "default"; > pinctrl-0 = <&dallas_w1_pins>; > > compatible = "w1-gpio"; > gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>; > }; > }; > }; > }; > > Next, following the document I ran ./install.sh from the > debian@ebb:~/bb.org-overlays$ folder which ran DTS on each of the files and > then copied them to /lib/firmware and then created a new initramfs. With a > few warnings. > > update-initramfs: Generating /boot/initrd.img-4.14.94-ti-94 > WARNING: Setting CRYPTSETUP in /etc/initramfs-tools/initramfs.conf is > deprecated and will stop working in the future. Use > /etc/cryptsetup-initramfs/conf-hook instead. > cryptsetup: WARNING: failed to detect canonical device of /dev/mmcblk0p1 > cryptsetup: WARNING: could not determine root device from /etc/fstab > './tools/beaglebone-universal-io/config-pin' -> > '/usr/local/bin/config-pin'cape overlays have been built and added to > /lib/firmware & /boot/initrd.img-4.14.94-ti-r94, please reboot > > Not sure about those errors.
Well it's a warning for cryptsetup, are you using cryptsetup?? > At this point I'm guessing the echo > $SLOTS isn't needed since the new dtbo > is now part of the initramfs image has it as part of the boot process. Actually this is for the old "slots" too.. > Plugging in the cape and starting up the beagle should theoretically then > make a One Wire device available on pin P8.11? Plug in a debug cable into J1 and dump the U-Boot serial log and we can find out.. > If the DTS file included the definitions from the example BB-CAN0-00A0.dts > and the prototype board contained a CAN bus bus driver connected to P9.19, > P9.20 would, on power up those pins then be used by the One Wire code and the > CAN bus code? Yes, > Is the difference then that a rebuilding of the initrd image is required for > creating custom capes? Is there a short cut? The initrd is not required for u-boot overlays. > Am I right that this is way more difficult than the echo to $SLOTS since it > involves a build and reboot after each edit while developing the custom cape > dts file? No you are incorrect, it's the "same".. In the old days after you echo a slot, and then decide to "remove it", you'd have to reboot anyways as the echo 0 would eventually cause an oops.. > Again, is there an easier way rather than compiling every single dts file > with the ./install.sh script? ./install.sh is just for the lazy, so it does everything, just run make src/arm/BB-W1-P8.11-00A0.dtbo sudo make install Regards, -- Robert Nelson https://rcn-ee.com/ -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/CAOCHtYiU1x2Xx1SniNFg4j0D2hCKz2Czj9fDM1q86NcBXQYLkQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
