Go to advanced search

by PhilE
Wed Jun 19, 2019 2:10 pm
Forum: Interfacing (DSI, CSI, I2C, etc.)
Topic: I2C is broken by latest commit
Replies: 10
Views: 382

Re: I2C is broken by latest commit

I've commented on the original Pull Request to rpi-4.19.y (https://github.com/raspberrypi/linux/pull/3011), but the problem is caused by: 1. a failure to detect that the clock provider hadn't yet been initialised, 2. which causes clock registration to proceed without a name for the parent clock, 3. ...
by PhilE
Wed Jun 19, 2019 7:55 am
Forum: Interfacing (DSI, CSI, I2C, etc.)
Topic: I2C is broken by latest commit
Replies: 10
Views: 382

Re: I2C is broken by latest commit

Yes - that breaks it. Leave it with me...
by PhilE
Tue Jun 18, 2019 4:48 pm
Forum: Interfacing (DSI, CSI, I2C, etc.)
Topic: I2C is broken by latest commit
Replies: 10
Views: 382

Re: I2C is broken by latest commit

I'm not seeing this at the moment. Error 12 is ENOMEM - which model of RPi are you testing with?
by PhilE
Wed Jun 12, 2019 9:17 am
Forum: Device Tree
Topic: Rpi Hat -Device Tree
Replies: 4
Views: 199

Re: Rpi Hat -Device Tree

In terms of documentation, there is (ahem) the guide I wrote many years ago: https://www.raspberrypi.org/documentati ... ce-tree.md

It's a bit long, but it should at least touch on most topics.
by PhilE
Wed Jun 12, 2019 7:59 am
Forum: Device Tree
Topic: Rpi Hat -Device Tree
Replies: 4
Views: 199

Re: Rpi Hat -Device Tree

The I2C interfaces are described by Device Tree, but the device nodes are disabled by default. The usual RPi way of enabling them for Linux ("dtparam=i2c_arm=on" or "$ sudo dtparam i2c_arm=on") has the effect of changing the "status" property from "disabled" to "okay". DT parameters are essentially ...
by PhilE
Mon Jun 10, 2019 8:36 am
Forum: Device Tree
Topic: [SOLVED] Which dtb for which model?
Replies: 3
Views: 573

Re: [SOLVED] Which dtb for which model?

The bcm27*.dts files are the downstream (written and hosted by Raspberry Pi) device tree files, while bcm28*.dts are the official Linux support files from kernel.org. The differences between upstream and downstream kernel builds vary from configuration changes (some options just not being enabled) t...
by PhilE
Tue May 28, 2019 9:52 am
Forum: Device Tree
Topic: Buildroot Pi Zero Ethernet Gadget issues
Replies: 11
Views: 2137

Re: Buildroot Pi Zero Ethernet Gadget issues

Merely loading the dwc2 module isn't enough - the kernel doesn't know what to do with it. Instead, use Device Tree to declare which address range and interrupt the driver should use by adding the following to config.txt: dtoverlay=dwc2,dr_mode=peripheral You should then be able to remove the explici...
by PhilE
Fri May 24, 2019 3:59 pm
Forum: Device Tree
Topic: AD7766
Replies: 7
Views: 979

Re: AD7766

Is your solution something that could be generally used by others? Would you be prepared to share it here? I'd be happy to add the overlay to the standard kernel set, even if it is only used as an example.
by PhilE
Fri May 24, 2019 1:00 pm
Forum: C/C++
Topic: Memory barriers for GPIO access
Replies: 12
Views: 1242

Re: Memory barriers for GPIO access

A lack of synchronisation between cores (including ARM-to-VPU) can easily lead to classic read-modify-write non-atomic update problems, but fortunately there are a few factors in our favour: 1. High speed manipulation of GPIOs is more likely to be changing the drive on an output pin high or low, and...
by PhilE
Thu May 23, 2019 12:51 pm
Forum: Device Tree
Topic: Add spidev0.2 device
Replies: 1
Views: 303

Re: Add spidev0.2 device

Yes you can. The Linux SPI subsystem can use arbitrary GPIOs as extra chip select lines. In fact, the BCM2835 SPI driver chooses to use software/GPIO chip selects in preference to the ones driven by the SPI interfaces to work around some limitations. You can base your interface on the spi0-cs overla...
by PhilE
Mon May 20, 2019 8:57 am
Forum: Device Tree
Topic: AD7766
Replies: 7
Views: 979

Re: AD7766

I have no experience with the iio subsystem. What do you think this result is telling you?
by PhilE
Fri May 17, 2019 8:11 am
Forum: Compute Module
Topic: SDIO1 CM3+ WILC1000
Replies: 46
Views: 2855

Re: SDIO1 CM3+ WILC1000

It needs to have been processed by the "depmod" utility (i.e. you will have to run depmod) along with all of the other modules - I don't think you can add modules one at a time - so it should be somewhere under /lib/modules/<kernel_version>, but I don't think it matters precisely where.
by PhilE
Fri May 17, 2019 7:38 am
Forum: Compute Module
Topic: SDIO1 CM3+ WILC1000
Replies: 46
Views: 2855

Re: SDIO1 CM3+ WILC1000

You can compile with:

Code: Select all

$ dtc [email protected] -I dts -O dtb -o sdio-overlay-final.dtbo sdio-overlay-final.dts
However, I would make the name something more meaningful like wilc_sdio.dtbo. Whatever name you choose, copy the .dtbo to /boot/overlays and add "dtoverlay=your_name.dtbo" to config.txt.
by PhilE
Fri May 17, 2019 6:37 am
Forum: Device Tree
Topic: mmc1 SDIO clock changing
Replies: 7
Views: 2998

Re: mmc1 SDIO clock changing

That's no longer necessary - instead you just add "dtparam=sdio_overclock=25" (for 25MHz) to config.txt.
by PhilE
Wed May 15, 2019 2:08 pm
Forum: Device Tree
Topic: AD7766
Replies: 7
Views: 979

Re: AD7766

Any unresolved references at the point where the overlay is applied to the base DTB will prevent the overlay from being applied. "gpio" is a label declared in the base DTBs, so that should work. The driver does seem to want a valid "mclk", and will fail without one; you'll have to find out what is n...
by PhilE
Wed May 15, 2019 10:20 am
Forum: Compute Module
Topic: ISM43362
Replies: 6
Views: 433

Re: ISM43362

You can try adding "dtparam=sdio_overclock=25" to config.txt.
by PhilE
Tue May 14, 2019 3:13 pm
Forum: Device Tree
Topic: AD7766
Replies: 7
Views: 979

Re: AD7766

Here's your overlay with added indentation, and a clue: /dts-v1/; /plugin/; / { compatible = "brcm,bcm2835", "brcm,bcm2836", "brcm,bcm2708", "brcm,bcm2709"; /* the spi config binding everything together */ [email protected] { target = <&spi0>; __overlay__ { /* needed to avoid dtc warning */ #address-cells ...
by PhilE
Wed May 08, 2019 8:50 am
Forum: Interfacing (DSI, CSI, I2C, etc.)
Topic: Connect RPI3 and Goodix Touchscreen
Replies: 4
Views: 283

Re: Connect RPI3 and Goodix Touchscreen

[ Moved to Interfacing ]
by PhilE
Fri May 03, 2019 10:47 am
Forum: Compute Module
Topic: SD card reader question
Replies: 6
Views: 331

Re: SD card reader question

The SD interfaces are limited to single data rate - 4 bits at 50MHz = 25MB/s theoretical maximum. In practise you lose throughput due to response latencies, but you can overclock the interfaces a bit - many cards will run happily at 80+MHz, but it is technically out of spec.
by PhilE
Fri May 03, 2019 8:19 am
Forum: Advanced users
Topic: New RT (Real Time) kernel branch
Replies: 40
Views: 11646

Re: New RT (Real Time) kernel branch

There may be a point in your project where real-time responsiveness becomes an issue, but you are a long way from there yet. CPU intensive tasks are limited by clock speed and RAM access speed (both of which may be reduced if the processor is too hot or under-powered). The laws of physics make it ha...
by PhilE
Thu May 02, 2019 8:53 pm
Forum: Advanced users
Topic: New RT (Real Time) kernel branch
Replies: 40
Views: 11646

Re: New RT (Real Time) kernel branch

Where's the realtime, latency-sensitive element? This just sounds like some straight-forward number crunching on data from a file, where throughput should be all that matters. Is it even multithreaded?
by PhilE
Thu May 02, 2019 12:20 pm
Forum: Advanced users
Topic: New RT (Real Time) kernel branch
Replies: 40
Views: 11646

Re: New RT (Real Time) kernel branch

To see where the effort needs to go, split the problem in two: replace the wait & capture part with something that uses fixed samples (or pre-captured samples in memory), then see how quickly your processing (prediction?) can run. Only if it's quick enough to handle samples in realtime (faster than ...
by PhilE
Thu May 02, 2019 8:47 am
Forum: Advanced users
Topic: New RT (Real Time) kernel branch
Replies: 40
Views: 11646

Re: New RT (Real Time) kernel branch

I have a neural network, already trained, for the Iris classification. Using tjrob real time code, the neural network ran in 14 ms average, but I would like to make run even faster, like 1 or 2 ms. Does anyone have suggestions on how to do it? What makes you think that your code would ran faster wi...
by PhilE
Wed May 01, 2019 8:51 am
Forum: Compute Module
Topic: RaspPi Compute Module & Microchips LAN9514
Replies: 2
Views: 256

Re: RaspPi Compute Module & Microchips LAN9514

ethtool (sudo apt-get install ethtool) gives you control over the PHY and speed negotiation. Something like "sudo ethtool -s eth0 speed 100 duplex full" should do the trick. You could run this from /etc/rc.local, or add/extend a systemd service to do it for you.
by PhilE
Wed May 01, 2019 8:17 am
Forum: Device Tree
Topic: Device Tree Changes for Interfacing LAN951X with CM3+
Replies: 4
Views: 613

Re: Device Tree Changes for Interfacing LAN951X with CM3+

To clarify - would that most likely be through the use of the base DTB and overlays in conjunction with the Linux PINCTRL Subsystem? Or by other means, such as the GPIO Subsystem? Yes - either of those are better than the dt-blob because i) the kernel is aware of those settings, and ii) custom dt-b...

Go to advanced search