Re: [PATCH v2 2/5] media: qcom: camss: Convert to per-VFE pointer for power-domain linkages

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 26/10/2023 21:08, Konrad Dybcio wrote:
+    if (vfe->id >= camss->res->vfe_num)
          return 0;
P.S. this seems better suited for some warning, I think

Noo this indicates VFE lite !

power-domains = <VFE_0>,
                <VFE_1>,
                <TITAN_TOP>; // the controller pd

vfe-set = <VFE_0>, // has its own PD vfe->id = 0
          <VFE_1>, // has its own PD vfe->id = 1
          <VFE_LITE_N>; // has no PD vfe->id = 2

The basic problem this series fixes is magic indexing.

In the first instance, using named power-domains so that the ordering of declaration doesn't matter and we don't have funky code inferring if a power-domain belongs to the TOP or not.

Secondly though, which is what the first patch in the series does - is as I rebased I realised the VFE/VFE Lite thing was still there.

what vfe->id >= camss->res->vfe_num does is checks to see if the vfe->id <= a VFE not a VFE Lite id.

in other words we have yet another magic indexing problem requiring VFE_LITE_N to always be declared after VFE.

The solution here is

1. Make the driver support not caring about indexes any more
   This series.
2. Name the power-domains in the various dtsis
   Populating the struct resources in CAMSS to match
   Next series
3. Gate new SoCs to _require_ named pds
   Deprecate the legacy indexing support of 'n' kernel releases
4. Profit

So yeah the check above is I'm sorry to say not an error at all it implies VFE Lite...

---
bod



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux