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 beagleboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to