Skip to content

Instantly share code, notes, and snippets.

@pdp7
Last active August 24, 2016 09:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pdp7/25ea49ce87bfa1fc95cd02a5618ce34d to your computer and use it in GitHub Desktop.
Save pdp7/25ea49ce87bfa1fc95cd02a5618ce34d to your computer and use it in GitHub Desktop.
fbtft with ili9341 adafruit tft lcd. Debian 7.11 (2016-06-15) with 4.1.29-bone22

Display

Debian 7.11 (2016-06-15) with 4.1.29-bone22

Why does this happen?

fb_ili9340 spi1.0: fbtft_request_gpios: gpio_request_one('dc'=48) failed with -16
fb_ili9340: probe of spi1.0 failed with error -16
root@beaglebone:~# cat /sys/devices/platform/bone_capemgr/slots
 0: PF----  -1 
 1: PF----  -1 
 2: PF----  -1 
 3: PF----  -1 
 4: P-O-L-   0 Override Board Name,00A0,Override Manuf,univ-all

root@beaglebone:~# cat /etc/debian_version 
7.11

root@beaglebone:~# cat /etc/dogtag 
BeagleBoard.org Debian Image 2016-06-15

root@beaglebone:~# uname -a
Linux beaglebone 4.1.29-bone22 #1 Fri Aug 5 15:16:03 UTC 2016 armv7l GNU/Linux

Attempt to configure pins and load fbtft:

root@beaglebone:~# config-pin P9.28 spi
root@beaglebone:~# config-pin P9.29 spi
root@beaglebone:~# config-pin P9.30 spi
root@beaglebone:~# config-pin P9.31 spi

root@beaglebone:~# config-pin P9.12 gpio
root@beaglebone:~# config-pin P9.15 gpio

root@beaglebone:~# dmesg -C

root@beaglebone:~# cat /etc/debian_version 
7.11

root@beaglebone:~# find /sys |grep slots
/sys/devices/platform/bone_capemgr/slots
/sys/firmware/devicetree/base/bone_capemgr/#slots

root@beaglebone:~# cat /sys/devices/platform/bone_capemgr/slots
 0: PF----  -1 
 1: PF----  -1 
 2: PF----  -1 
 3: PF----  -1 
 4: P-O-L-   0 Override Board Name,00A0,Override Manuf,univ-all
 
root@beaglebone:~# modprobe fbtft_device busnum=1 name=adafruit22a gpios=dc:48,reset:60

root@beaglebone:~# dmesg
[  575.996579] fbtft: module is from the staging directory, the quality is unknown, you have been warned.
[  576.011020] fbtft_device: module is from the staging directory, the quality is unknown, you have been warned.
[  576.018676] spidev spi1.0: spidev spi1.0 16000kHz 8 bits mode=0x01
[  576.018726] spidev spi1.1: spidev spi1.1 16000kHz 8 bits mode=0x00
[  576.018757] spidev spi2.0: spidev spi2.0 16000kHz 8 bits mode=0x01
[  576.018788] spidev spi2.1: spidev spi2.1 16000kHz 8 bits mode=0x00
[  576.019170] spidev spi1.0: Deleting spi1.0
[  576.024999] fbtft_device: GPIOS used by 'adafruit22a':
[  576.025036] fbtft_device: 'dc' = GPIO48
[  576.025054] fbtft_device: 'reset' = GPIO60
[  576.025096] spidev spi1.1: spidev spi1.1 16000kHz 8 bits mode=0x00
[  576.025127] spidev spi2.0: spidev spi2.0 16000kHz 8 bits mode=0x01
[  576.025156] spidev spi2.1: spidev spi2.1 16000kHz 8 bits mode=0x00
[  576.025185] spi spi1.0: fb_ili9340 spi1.0 32000kHz 8 bits mode=0x00
[  576.058621] fb_ili9340: module is from the staging directory, the quality is unknown, you have been warned.
[  576.065094] fb_ili9340 spi1.0: fbtft_request_gpios: gpio_request_one('dc'=48) failed with -16
[  576.074218] fb_ili9340: probe of spi1.0 failed with error -16

bone-debian-7.5-2014-05-14-2gb with Linux 3.8.13-bone50


root@beaglebone:~# cat /sys/devices/bone_capemgr.9/slots
0: 54:PF---
1: 55:PF---
2: 56:PF---
3: 57:PF---
4: ff:P-O-- Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G
5: ff:P-O-- Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI
6: ff:P-O-- Bone-Black-HDMIN,00A0,Texas Instrument,BB-BONELT-HDMIN
7: ff:P-O-L Override Board Name,00A0,Override Manuf,BB-SPIDEV1

root@beaglebone:~# dmesg -C

root@beaglebone:~# modprobe fbtft_device busnum=1 name=adafruit22a gpios=dc:48,reset:60

root@beaglebone:~# dmesg
[ 75.683734] fbtft_device: SPI devices registered:
[ 75.683802] fbtft_device: spidev spi1.1 16000kHz 8 bits mode=0x00
[ 75.683834] fbtft_device: spidev spi1.0 16000kHz 8 bits mode=0x01
[ 75.683857] fbtft_device: 'fb' Platform devices registered:
[ 75.683988] fbtft_device: omapfb id=-1 pdata? yes
[ 75.684076] fbtft_device: Deleting spi1.0
[ 75.687527] fbtft_device: GPIOS used by 'adafruit22a':
[ 75.687565] fbtft_device: 'dc' = GPIO48
[ 75.687587] fbtft_device: 'reset' = GPIO60
[ 75.687608] fbtft_device: SPI devices registered:
[ 75.687638] fbtft_device: spidev spi1.1 16000kHz 8 bits mode=0x00
[ 75.687667] fbtft_device: fb_ili9340 spi1.0 32000kHz 8 bits mode=0x00
[ 76.083387] Console: switching to colour frame buffer device 60x53
[ 76.087880] graphics fb0: fb_ili9340 frame buffer, 240x320, 150 KiB video memory, 4 KiB DMA buffer memory, fps=20, spi1.0 at 32 MHz
@pdp7
Copy link
Author

pdp7 commented Aug 24, 2016

cdsteinkuehler/beaglebone-universal-io
https://github.com/cdsteinkuehler/beaglebone-universal-io

bbb pin map:
http://beagleboard.org/static/images/cape-headers-spi.png
http://beagleboard.org/static/images/cape-headers.png

Support for Adafruit 2.8" TFT LCD with ILI9341? #400
notro/fbtft#400

bbb fbtft: fb_ili9340 adafruit22a spi debug
https://gist.github.com/pdp7/c62f54573992dfafd003

BeagleBone Black: build fbtft drivers for latest Linux 3.8 kernel
https://www.element14.com/community/community/designcenter/single-board-computers/next-gen_beaglebone/blog/2015/11/19/beaglebone-black-build-fbtft-drivers-for-latest-linux-3813-kernel

Patchwork dt: bindings: Remove focaltech,ft6236 binding
https://patchwork.kernel.org/patch/9269027/

Patchwork [v3] input: touchscreen: Remove duplicate ft6236 driver
https://patchwork.kernel.org/patch/9264845/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment