Gawd, I can't even get the math right.  8 blocks of 4096 make up 32K. 

At the moment I suspect one of my 320x240 displays might be toast.  Even the 
Python code doesn't light up the screen and that used to work.  But it was way 
back on an OS with $SLOTs.
John


> -----Original Message-----
> From: [email protected] [mailto:[email protected]] On 
> Behalf Of John Dammeyer
> Sent: May-21-21 9:40 AM
> To: [email protected]
> Subject: RE: [beagleboard] Re: ioctl messages to Beagle SPI port.
> 
> Thanks Dennis,
> 
> 
> > -----Original Message-----
> > From: [email protected] [mailto:[email protected]] On 
> > Behalf Of Dennis Lee Bieber
> > "John Dammeyer" <[email protected]> wrote:
> >
> >
> > >The sad thing is that Derek Molloy's book, only in passing refers to 
> > >enabling the SPI port, and the book, in trying to also deal with
> the
> > pocket beagle pins leaves out things where repetition is actually 
> > beneficial.  Maybe somewhere it says that you have to use config-
> pin
> > to set up SPI.  I missed it.  I think in Chapter 8 page 363 needs a bit of 
> > work.
> >
> >     One: you have to look at the default pin-mux tables -- the default for
> > many is as GPIO.
> >
> >     Two: config-pin is discussed in chapter 6 (which also has a
> > hard-to-read version of the tables). It doesn't mention SPI explicitly, but
> > does mention that the tool is used in later chapters.
> 
> My posting from
> Fri 14/05/2021
> RE: [beagleboard] Configure CAN0 with buildroot
> 
> talks about using config-pin for CAN bus.  I spent so much time a number of 
> years ago learning about SLOTs and spending time even
> writing my own DTS for a proto board that has a 1-wire sensor.   The Logic 
> Supply CAN cape dts was also used.
> 
> I can't seem to completely unlearn (if that's the right term) and now still 
> get very confused as to what to use and when.
> 
> So I guess I should have remembered that on the 14th of May I did use 
> config-pin for CAN so it must also be needed for SPI.
> 
> 
> >
> > debian@beaglebone:~$
> > /opt/source/bb.org-overlays/tools/beaglebone-universal-io/config-pin -i
> > p9_18
> > Pin name: P9_18
> > Function if no cape loaded: gpio
> > Function if cape loaded: default gpio gpio_pu gpio_pd gpio_input spi i2c
> > pwm pru_uart
> 
> I've done that with the pins.  But again my incorrect assumption was that the 
> OS was intelligent enough that if I do:
> 
> static const char *device = "/dev/spidev1.0";
>       fd = open(device, O_RDWR);
>       if (fd < 0)
>               pabort("can't open device");
> 
> One of two things happen.  Either It opens the SPI bus which includes 
> everything that config-pin does or it fails because config-pin
> wasn't done.
> In fact I believe that until the config-pin operations on the SPI pins is 
> done that the /dev/spidev1.0 shouldn't exist.  That they are
> there is incorrect information.
> 
> But this is 'human factors engineering" which the Beagle (Linux?) lacks in a 
> big way.
> 
> 
> > >Oh and none of this explains why the ioctl regardless of C or Pascal
> > >
> can't handle more than 4096 data bytes while the Python code can when sending 
> a large bitmap to the SPI port.
> ...
> > debian@beaglebone:~$ cat /sys/module/spidev/parameters/bufsiz
> > 4096
> > debian@beaglebone:~$
> 
> How did you know to look at this file to determine the SPI buf size?
> 
> I see that it's a read only file.
> debian@ebb:~$ ls -al /sys/module/spidev/parameters/bufsiz
>        -r--r--r-- 1 root gpio 4096 May 20 16:45 
> /sys/module/spidev/parameters/bufsiz
> 
> The code I'm adapting from a 128x128 display sends out a 512x512 lenna.jpg 
> compressed into a smaller window.  Even so any sort of
> bit map object that is 128x128x16 for example is 32K in size.  So no matter 
> what sort of canvas I draw on inside the application, to
> render it out to an SPI display still requires 9 blocks of 4096 bytes.
> 
> I'll look into that.  Really don't want to write in Python.
> 
> >     A lot of that is a bit out-of-date -- references to kernel 3.8! Though
> > I do have to admit I can't find where in Adafruit_BBIO it might do that
> > set-up -- it doesn't seem to be done in the above spidev Python interface,
> > which is used by (now deprecated in favor of blinka/circuitpython)
> > Adafruit_BBIO... And I can't find a config change in blinka or
> > Adafruit_PureIO. {PureIO may not invoke the above spidev module, so how
> > /it/ handles large blocks is unknown}
> 
> I was going to suggest that the BBB is now an out of date product but
> https://www.digikey.ca/en/products/detail/beagleboard-by-seeed-studio/102110420/12719590
> shows over 4000 in stock.  So maybe not?
> 
> John Dammeyer
> 
> 
> > --
> > Dennis L Bieber
> >
> > --
> > 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/peifag10s2ohjmb53f5naa8hcgmtmhc9go%404ax.com.
> 
> --
> 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/004f01d74e5f%24e220f7b0%24a662e710%24%40autoartisans.com.

-- 
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/005901d74e61%24efac9c20%24cf05d460%24%40autoartisans.com.

Reply via email to