> On Jan 8, 2018, at 9:09 PM, Mark Grosen <[email protected]> wrote:
> 
> mark@pocket:~$ dmesg | grep -P 'fb|ssd'
> [    2.165499] ssd1307fb 1-003c: failed to get VBAT regulator: -19
> 
> How does fbdev "find" the ssd1306?

Question doesn’t quite make sense to me, but these fbtft drivers depend on and 
implement interfaces for fbdev, so it is by direct reference from the driver. 

More below...

> 
>> On Mon, Jan 8, 2018 at 5:51 PM David Lechner <[email protected]> wrote:
>>> On 01/08/2018 07:27 PM, Mark Grosen wrote:
>>>> On Mon, Jan 8, 2018 at 10:08 AM David Lechner <[email protected]> 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>;

I don’t see VBAT specified. Kinda odd that it’s default would cause a conflict. 
You might look at the device tree properties to see how it gets set. 

To avoid pin conflicts, I took the approach of creating a new dtb built using 
an include base file for my board with an fbtft display. 
https://github.com/RobertCNelson/dtb-rebuilder/blob/4.14-ti/src/arm/am335x-pocketbeagle-simplegaming.dts

A bit of looking at what VBAT is...
https://patchwork.kernel.org/patch/9515011/

Finally noticing this is a regulator, I would personally start out being lazy 
and grabbing an already existing static-on regulator like vmmcsd_fixed from 
https://github.com/RobertCNelson/dtb-rebuilder/blob/4.4-ti/src/arm/am335x-pocketbeagle-common.dtsi.
 

>>>                     };
>>>             };
>>>     };
>>> };
>>>  
>>>> 
>>>> > 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?
>>> 
>>> mark@pocket:~$ zcat /proc/config.gz | grep CONFIG_FB | grep -v '#'
>>> CONFIG_FB=y
>>> CONFIG_FB_CMDLINE=y
>>> CONFIG_FB_NOTIFY=y
>>> CONFIG_FB_CFB_FILLRECT=y
>>> CONFIG_FB_CFB_COPYAREA=y
>>> CONFIG_FB_CFB_IMAGEBLIT=y
>>> CONFIG_FB_SYS_FILLRECT=y
>>> CONFIG_FB_SYS_COPYAREA=y
>>> CONFIG_FB_SYS_IMAGEBLIT=y
>>> CONFIG_FB_SYS_FOPS=y
>>> CONFIG_FB_DEFERRED_IO=y
>>> CONFIG_FB_BACKLIGHT=y
>>> CONFIG_FB_MODE_HELPERS=y
>>> CONFIG_FB_TILEBLITTING=y
>>> CONFIG_FB_SMSCUFX=m
>>> CONFIG_FB_UDL=m
>>> CONFIG_FB_SIMPLE=y
>>> CONFIG_FB_SSD1307=y
>>>  
>>>>  
>> 
>> 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 [email protected].
>> 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.
> 
> -- 
> 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/CAL8ugEcSLFrFasGKqfX44iR-UDhzeNE9nt4u4Nfirj9oDnC20A%40mail.gmail.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
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/B7FD40F5-6B1D-45C3-AC93-035C888445F6%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to