I am trying to get the SPI bus to work, unfortunately it will not change
states. Is there something obvious that I am missing. I believe that this
ties into my previous post on strace and is the reason that I cannot my LCD
to work. Thanks in advance to those that respond to this post.
Linux beaglebone 4.1.15-ti-r43 #1 SMP PREEMPT Thu Jan 21 22:33:31 UTC 2016
armv7l GNU/Linux
BeagleBoard.org Debian Image 2015-11-12
root@beaglebone:~# . ~/.profile
root@beaglebone:~# echo $SLOTS
/sys/devices/platform/bone_capemgr/slots
root@beaglebone:~# echo $PINS
/sys/kernel/debug/pinctrl/44e10800.pinmux/pins
root@beaglebone:~# ls
DM-SPI-Test-00A0.dtbo DM-SPI-Test.dtbo DM-SPI-Test.dts bb.org-overlays
boneDeviceTree exploringBB git
root@beaglebone:~# dtc -O dtb -o DM-SPI-Test-00A0.dtbo -b 0 -@
DM-SPI-Test.dts
root@beaglebone:~# cp DM-SPI-Test-00A0.dtbo /lib/firmware
root@beaglebone:~# cd /lib/firmware
root@beaglebone:/lib/firmware# ls
ADAFRUIT-SPI0-00A0.dtbo BB-UART3-00A0.dtbo PyBBIO-gpio0_11-00A0.dtbo
PyBBIO-gpio1_3-00A0.dtbo PyBBIO-gpio3_19-00A0.dtbo
ADAFRUIT-SPI1-00A0.dtbo BB-UART4-00A0.dtbo PyBBIO-gpio0_12-00A0.dtbo
PyBBIO-gpio1_30-00A0.dtbo PyBBIO-gpio3_21-00A0.dtbo
ADAFRUIT-UART1-00A0.dtbo BB-UART5-00A0.dtbo PyBBIO-gpio0_13-00A0.dtbo
PyBBIO-gpio1_31-00A0.dtbo PyBBIO-usr0-00A0.dtbo
ADAFRUIT-UART2-00A0.dtbo BB-W1-P9.12-00A0.dtbo PyBBIO-gpio0_14-00A0.dtbo
PyBBIO-gpio1_4-00A0.dtbo PyBBIO-usr1-00A0.dtbo
ADAFRUIT-UART4-00A0.dtbo DM-SPI-Test-00A0.dtbo PyBBIO-gpio0_15-00A0.dtbo
PyBBIO-gpio1_5-00A0.dtbo PyBBIO-usr2-00A0.dtbo
ADAFRUIT-UART5-00A0.dtbo DVK530-LCD4-01-00A0.dtbo PyBBIO-gpio0_2-00A0.dtbo
PyBBIO-gpio1_6-00A0.dtbo PyBBIO-usr3-00A0.dtbo
BB-ADC-00A0.dtbo LICENCE.atheros_firmware PyBBIO-gpio0_20-00A0.dtbo
PyBBIO-gpio1_7-00A0.dtbo bone_eqep0-00A0.dtbo
BB-BBBMINI-00A0.dtbo LICENCE.broadcom_bcm43xx PyBBIO-gpio0_22-00A0.dtbo
PyBBIO-gpio2_1-00A0.dtbo bone_eqep1-00A0.dtbo
BB-BONE-AUDI-02-00A0.dtbo LICENCE.rtlwifi_firmware.txt
PyBBIO-gpio0_23-00A0.dtbo PyBBIO-gpio2_10-00A0.dtbo bone_eqep2-00A0.dtbo
BB-BONE-BACONE-00A0.dtbo LICENCE.ti-connectivity PyBBIO-gpio0_26-00A0.dtbo
PyBBIO-gpio2_11-00A0.dtbo bone_eqep2b.dtbo
BB-BONE-CRYPTO-00A0.dtbo NL-AB-BBBC-00D0.dtbo PyBBIO-gpio0_27-00A0.dtbo
PyBBIO-gpio2_12-00A0.dtbo brcm
BB-BONE-DVID-01-00A3.dtbo PyBBIO-ADC-00A0.dtbo PyBBIO-gpio0_3-00A0.dtbo
PyBBIO-gpio2_13-00A0.dtbo cape-CBB-Serial-r01.dtbo
BB-BONE-LCD3-01-00A2.dtbo PyBBIO-AIN0-00A0.dtbo PyBBIO-gpio0_30-00A0.dtbo
PyBBIO-gpio2_14-00A0.dtbo cape-bone-ibb-00A0.dtbo
BB-BONE-LCD4-01-00A1.dtbo PyBBIO-AIN1-00A0.dtbo PyBBIO-gpio0_31-00A0.dtbo
PyBBIO-gpio2_15-00A0.dtbo cape-univ-audio-00A0.dtbo
BB-BONE-LCD7-01-00A3.dtbo PyBBIO-AIN2-00A0.dtbo PyBBIO-gpio0_4-00A0.dtbo
PyBBIO-gpio2_16-00A0.dtbo cape-univ-emmc-00A0.dtbo
BB-BONE-REPLICAP-00B1.dtbo PyBBIO-AIN3-00A0.dtbo PyBBIO-gpio0_5-00A0.dtbo
PyBBIO-gpio2_17-00A0.dtbo cape-univ-hdmi-00A0.dtbo
BB-BONE-SERL-03-00A1.dtbo PyBBIO-AIN4-00A0.dtbo PyBBIO-gpio0_7-00A0.dtbo
PyBBIO-gpio2_2-00A0.dtbo cape-universal-00A0.dtbo
BB-BONE-WTHR-01-00B0.dtbo PyBBIO-AIN5-00A0.dtbo PyBBIO-gpio0_8-00A0.dtbo
PyBBIO-gpio2_22-00A0.dtbo cape-universaln-00A0.dtbo
BB-CAN1-00A0.dtbo PyBBIO-AIN6-00A0.dtbo PyBBIO-gpio0_9-00A0.dtbo
PyBBIO-gpio2_23-00A0.dtbo carl9170-1.fw
BB-I2C1-00A0.dtbo PyBBIO-AIN7-00A0.dtbo PyBBIO-gpio1_0-00A0.dtbo
PyBBIO-gpio2_24-00A0.dtbo dev-USB-PWR-CTL-00A1.dtbo
BB-I2C1-PCA9685-00A0.dtbo PyBBIO-ecap0-00A0.dtbo PyBBIO-gpio1_1-00A0.dtbo
PyBBIO-gpio2_25-00A0.dtbo htc_9271.fw
BB-I2C2-0A00.dtbo PyBBIO-ecap1-00A0.dtbo PyBBIO-gpio1_12-00A0.dtbo
PyBBIO-gpio2_3-00A0.dtbo mt7601u.bin
BB-RELAY-4PORT-00A0.dtbo PyBBIO-ehrpwm1-00A0.dtbo PyBBIO-gpio1_13-00A0.dtbo
PyBBIO-gpio2_4-00A0.dtbo rtlwifi
BB-RTC-01-00A0.dtbo PyBBIO-ehrpwm2-00A0.dtbo PyBBIO-gpio1_14-00A0.dtbo
PyBBIO-gpio2_5-00A0.dtbo ti-connectivity
BB-SPI0-MCP3008-00A0.dtbo PyBBIO-epwmss0-00A0.dtbo
PyBBIO-gpio1_15-00A0.dtbo PyBBIO-gpio2_6-00A0.dtbo univ-all-00A0.dtbo
BB-SPI1-01-00A0.dtbo PyBBIO-epwmss1-00A0.dtbo PyBBIO-gpio1_16-00A0.dtbo
PyBBIO-gpio2_7-00A0.dtbo univ-emmc-00A0.dtbo
BB-SPIDEV1-00A0.dtbo PyBBIO-epwmss2-00A0.dtbo PyBBIO-gpio1_17-00A0.dtbo
PyBBIO-gpio2_8-00A0.dtbo univ-hdmi-00A0.dtbo
BB-SPIDEV1.dtbo PyBBIO-eqep0-00A0.dtbo PyBBIO-gpio1_18-00A0.dtbo
PyBBIO-gpio2_9-00A0.dtbo univ-nhdmi-00A0.dtbo
BB-SPIDEV1A1-00A0.dtbo PyBBIO-eqep1-00A0.dtbo PyBBIO-gpio1_19-00A0.dtbo
PyBBIO-gpio3_14-00A0.dtbo
BB-UART1-00A0.dtbo PyBBIO-eqep2-00A0.dtbo PyBBIO-gpio1_2-00A0.dtbo
PyBBIO-gpio3_15-00A0.dtbo
BB-UART2-00A0.dtbo PyBBIO-eqep2b-00A0.dtbo PyBBIO-gpio1_28-00A0.dtbo
PyBBIO-gpio3_16-00A0.dtbo
BB-UART2-RTSCTS-00A0.dtbo PyBBIO-gpio0_10-00A0.dtbo
PyBBIO-gpio1_29-00A0.dtbo PyBBIO-gpio3_17-00A0.dtbo
root@beaglebone:/lib/firmware# cat $SLOTS
0: PF---- -1
1: PF---- -1
2: PF---- -1
3: PF---- -1
root@beaglebone:/lib/firmware# cat $PINS|grep 950
pin 84 (44e10950.0) 00000037 pinctrl-single
root@beaglebone:/lib/firmware# cat $PINS|grep 954
pin 85 (44e10954.0) 00000037 pinctrl-single
root@beaglebone:/lib/firmware# cat $PINS|grep 958
pin 86 (44e10958.0) 00000037 pinctrl-single
root@beaglebone:/lib/firmware# cat $PINS|grep 95c
pin 87 (44e1095c.0) 00000037 pinctrl-single
root@beaglebone:/lib/firmware# echo DM-SPI-Test > $SLOTS
root@beaglebone:/lib/firmware# cat $PINS|grep 950
pin 84 (44e10950.0) 00000037 pinctrl-single
root@beaglebone:/lib/firmware# cat $PINS|grep 954
pin 85 (44e10954.0) 00000037 pinctrl-single
root@beaglebone:/lib/firmware# cat $PINS|grep 958
pin 86 (44e10958.0) 00000037 pinctrl-single
root@beaglebone:/lib/firmware# cat $PINS|grep 95c
pin 87 (44e1095c.0) 00000037 pinctrl-single
Here is the code ...
/*
* Copyright (C) 2013 CircuitCo
*
* Virtual cape for SPI0 on connector pins P9.22 P9.21 P9.18 P9.17
*
* 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/;
/ {
compatible = "ti,beaglebone", "ti,beaglebone-black";
/* identification */
part-number = "DM-SPI-Test";
version = "00A0";
/* state the resources this cape uses */
exclusive-use =
/* the pin header uses */
"P9.17", /* spi0_cs0 */
"P9.18", /* spi0_d1 */
"P9.21", /* spi0_d0 */
"P9.22", /* spi0_sclk */
/* the hardware ip uses */
"spi0";
fragment@0 {
target = <&am33xx_pinmux>;
__overlay__ {
/* default state has all gpios released and mode set to uart1 */
bb_spi0_pins: pinmux_bb_spi0_pins {
pinctrl-single,pins = <
0x150 0x30 /* spi0_sclk.spi0_sclk, INPUT_PULLUP | MODE0 */
/* state the resources this cape uses */
exclusive-use =
/* the pin header uses */
"P9.17", /* spi0_cs0 */
"P9.18", /* spi0_d1 */
"P9.21", /* spi0_d0 */
"P9.22", /* spi0_sclk */
/* the hardware ip uses */
"spi0";
fragment@0 {
target = <&am33xx_pinmux>;
__overlay__ {
/* default state has all gpios released and mode set to uart1 */
bb_spi0_pins: pinmux_bb_spi0_pins {
pinctrl-single,pins = <
0x150 0x30 /* spi0_sclk.spi0_sclk, INPUT_PULLUP | MODE0 */
0x154 0x30 /* spi0_d0.spi0_d0, INPUT_PULLUP | MODE0 */
0x158 0x10 /* spi0_d1.spi0_d1, OUTPUT_PULLUP | MODE0 */
0x15c 0x10 /* spi0_cs0.spi0_cs0, OUTPUT_PULLUP | MODE0 */
>;
};
};
};
fragment@1 {
target = <&spi0>; /* spi0 is numbered correctly */
__overlay__ {
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&bb_spi0_pins>;
0x15c 0x10 /* spi0_cs0.spi0_cs0, OUTPUT_PULLUP | MODE0 */
>;
};
};
};
fragment@1 {
target = <&spi0>; /* spi0 is numbered correctly */
__overlay__ {
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&bb_spi0_pins>;
channel@0 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "spidev";
reg = <0>;
spi-max-frequency = <16000000>;
spi-cpha;
};
channel@1 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "spidev";
reg = <1>;
#size-cells = <0>;
compatible = "spidev";
reg = <0>;
spi-max-frequency = <16000000>;
spi-cpha;
};
channel@1 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "spidev";
reg = <1>;
spi-max-frequency = <16000000>;
};
};
};
};
};
};
};
};
--
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].
For more options, visit https://groups.google.com/d/optout.