Re: [PATCH v4 00/13] ARM: dts: imx6ul: Add Variscite VAR-SOM-6UL and DART-6UL

From: Hugo Villeneuve

Date: Fri Oct 02 2026 - 11:19:25 EST


Hi Stefano,

On Fri, 2 Oct 2026 13:58:57 +0200
Stefano Radaelli <stefano.radaelli21@xxxxxxxxx> wrote:

> On Thu, Oct 01, 2026 at 02:43:44PM -0400, Hugo Villeneuve wrote:
>
> Hi Hugo,
>
> >
> > Great to know Variscite is adding support for the DART-6UL.
> >
>
> Thank you Hugo :)
> Over the past year, we have been prioritizing security and consistency
> by adopting a mainline-first approach.
> We have added support for almost all of our SOMs and configurations,
> as well as several driver changes and additions:
> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/log/?h=master&qt=author&q=Stefano+Radaelli
> And now it's time for the immortal i.MX6UL!
>
> >
> > Please work with the existing modular DTSI files, do not simply remove
> > them and reimplement them into your own files.
> >
>
> Agreed. Where possible, I’ll reuse the modular files you added and
> propose fix commits wherever changes are needed.
>
> >
> > I tested it and it works. But like I said, if adjustments need to be
> > made, they are welcome and can be done in a separate patch to fix it.
> > This sequencing is something not very well documented in Variscite
> > datasheets. I asked Variscite support to improve the documentation for
> > that aspect but it was not accepted.
> >
> >
> > > For the LWB5 option, the procedure enables WIFI_PWR, waits 10 ms,
> > > enables WLAN_EN and BT_EN, waits 200 ms, then lowers BT_EN before
> > > re-enumerating the SDIO device.
> > > The other Broadcom option does not use the separate WIFI_PWR step.
> > > The existing regulator and MMC power-sequence nodes do not express that
> > > complete, module-dependent procedure, particularly the BT_EN step during
> > > Wi-Fi initialization.
> > > The scripts also select the Bluetooth firmware according to the detected
> > > SDIO device.
> >
> > Firmware loading is handled properly by the kernel without external
> > scripts (tested with Concerto EVK).
> >
> >
> > > We use that procedure to avoid sequencing-related failures for our
> > > customers.
> > > This approach is not new to Variscite’s mainline DTS files.
> >
> > Yes, this is an old way of doing things, which may have been
> > appropriate in the past when proper support in the kernel was missing
> > to achieve the proper sequencing, but no longer true these days, unless
> > I am mistaken.
> >
>
> We are glad the kernel-managed sequence works on your Concerto EVK.
> However, it is wrong for the LWB5 module configuration we support:
> it does not follow the required power-up order and timing validated
> by Variscite.

Please detail exactly what is wrong so that it can be fixed. Better,
create a patch to fix/improve it.


> The sequence is based on the module requirements and has been tested
> in our labs and across customer configurations over many years.
> A successful test on your EVK does not show that it is correct for all
> the modules and configurations we ship.

Again, like I said before, if things are not optimal they can be
fixed/improved, not completely wiped out.

I can help you with this (test/implementation) if you explain the
problems properly.


> The GPL-2.0-only userspace scripts implement this required sequence.
> This is not a matter of preference or an old approach we kept by habit;
> replacing it with the sequence in the current DTS would risk breaking
> supported Variscite configurations.

Please be more specific.


> If a future kernel implementation can reproduce the complete,
> module-specific sequence, Variscite will be happy to update all affected
> DTS files to use it, after completing the necessary lab testing across
> the supported module variants and configurations.

You need to work with the existing kernel implementation, not delete it.

> If you need any additional material, datasheets, or other information
> from Variscite, please let me know at stefano.r@xxxxxxxxxxxxx.
> I’ll be happy to provide whatever is needed!

As mentioned before, please add the required timing
sequencing info to your datasheets, it will help everyone.


--
Hugo Villeneuve