On 01/07/2018 05:59 PM, Mark Grosen wrote:
> I am trying to get the kernel driver for the ssd1306 working with the PocketBeagle USB HUB cape which has a 64x32 SSD1306 display (https://www.tindie.com/products/microwavemont/oled-with-24-port-usb-hub-cape-for-pocketbeagle/) I know it is physically working as I can use it via user-mode I2C. I believe a small change is needed to support the unusual 64 pixel width of this board. I have built and loaded a new kernel and have a .dtbo
And what does your device tree overlay look like?
> loaded via u-boot with 4.4.88-ti-r128 kernel. It shows up in /proc/device-tree correctly (at least as far as I can tell - the entries match the dts values). I am missing how to get this connected to the framebuffer world - there is no /dev/fb0 showing up. I see the config options appear to be enabled (I am using the defconfig).
And which options did you enable/are enabled?
Looks alright to me. Is there any error in `dmesg`?
--
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...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/8d1b9f53-ab73-6bf4-92d0-ebcfb072bb06%40lechnology.com.
For more options, visit https://groups.google.com/d/optout.
mark@pocket:~$ dmesg | grep -P 'fb|ssd'[ 2.165499] ssd1307fb 1-003c: failed to get VBAT regulator: -19How does fbdev "find" the ssd1306?
On Mon, Jan 8, 2018 at 5:51 PM David Lechner <da...@lechnology.com> wrote:On 01/08/2018 07:27 PM, Mark Grosen wrote:
On Mon, Jan 8, 2018 at 10:08 AM David Lechner <da...@lechnology.com> wrote:
On 01/07/2018 05:59 PM, Mark Grosen wrote:
> I am trying to get the kernel driver for the ssd1306 working with the PocketBeagle USB HUB cape which has a 64x32 SSD1306 display (https://www.tindie.com/products/microwavemont/oled-with-24-port-usb-hub-cape-for-pocketbeagle/) I know it is physically working as I can use it via user-mode I2C. I believe a small change is needed to support the unusual 64 pixel width of this board. I have built and loaded a new kernel and have a .dtbo
And what does your device tree overlay look like?
/dts-v1/;/plugin/;
#include <dt-bindings/board/am335x-bbw-bbb-base.h>#include <dt-bindings/gpio/gpio.h>#include <dt-bindings/pinctrl/am33xx.h>
/ {fragment@0 {target = <&i2c1>;__overlay__ {status = "okay";
#address-cells = <1>;#size-cells = <0>;
ssd1306: oled@3c {compatible = "solomon,ssd1306fb-i2c";reg = <0x3c>;solomon,width = <64>;solomon,height = <32>;solomon,page-offset = <0>;
To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/CAL8ugEcSLFrFasGKqfX44iR-UDhzeNE9nt4u4Nfirj9oDnC20A%40mail.gmail.com.
The linux driver for this is an i2c driver. So the device tree node that you added will create an i2c device in the linux kernel (i.e. /sys/bus/i2c/devices/1-003c). Then udev sees that this device matches the compatible string of the "ssd1307fb" driver (you will see this listed in `lsmod`). This driver is bound to the device and calls the drivers probe function. This is where the error message is coming from. If the probe function had completed successfully, it would have registered a new fbdev device.
It looks like this error is a bug in the linux kernel that was fixed in kernel v4.11. <https://github.com/torvalds/linux/commit/cfc5b2b551d8c089079e754525839101b1b43624>.
You can work around this by adding a fixed regulator to the
device tree and adding it to your device. Or, if you are compiling
your own kernel anyway, you can grab the patch I linked.
To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/CAL8ugEcSLFrFasGKqfX44iR-UDhzeNE9nt4u4Nfirj9oDnC20A%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/fab14b2e-8b97-b6ff-80e5-626edd04d9fa%40lechnology.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/fab14b2e-8b97-b6ff-80e5-626edd04d9fa%40lechnology.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/CAL8ugEdJZPRwWuYzZm5KbEmjGH%2B%2BfjYMmU%2B8aoPvzE_3HQ9OGQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/ab8e70c0-1b4d-e3ec-d49c-26a75ff68a5d%40lechnology.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/CAL8ugEdhFwXkQZBG1qZ%3DaWKMVU9QmFy7X6%2B7-sjQ8ahZ0kJxtg%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/8ae81917-58cd-69f9-a175-7b218868af34%40lechnology.com.