Re: [PATCH v4 0/5] Add Qualcomm JPEG V4L2 encoder for SM8250
From: Bryan O'Donoghue
Date: Thu Jul 09 2026 - 06:32:14 EST
On 09/07/2026 08:33, Dmitry Baryshkov wrote:
Lets drop the bus idea then. I'm happy to close the conversation asIt think, this would close the path for upgrading existing platforms to
peer-nodes.
split the driver / bindings. If all IFE / PHY / etc. are subnodes of the
CAMSS, it is easy to play backwards compatibility tricks and
reinstantiate devices on the fly, pick up only certain resources, etc.
If they are sibling nodes, it becomes much more complicated.
I might be wrong here. Maybe we really should try a simple (heh)
experiment. We have your series which adds CSI PHY as a first class
citizen. And we have existing platforms where CSI PHYs were packed into
the camss node (and camss driver FWIW).
Which way of representing device nodes makes it easier to migrate
existing platform to the CSI PHY driver, while keeping compatibility
with old DTs (yeah, ABI, old DTs must continue to work)?
I agree with your concerns about old platform migration.
I will run the peer-node through the DT checker and if it spits out a problem we can re-evaluate. x1e will test both the old way and the new way - I'm prepared to take the pain of resolving this change on x1e, so that both dtb bindings work or rather continue to do so.. Either way we will resolve the debate here. I'd put Kona/sm8250 as "next up" for migration - I have one on the desk in front of me, so its easy to work with this.
camss {
reg = <1234>;
reg-names = "csiphy0";
}
csiphy0@1234{}
Is a legal DT declaration - if the csiphy@1234{} is missing use the old way, if not use the new way. if the phys = <> is found, then the driver will not request the csiphy regs - this means a new kernel will work with an old dtb.
I don't have that fallback logic in the CSIPHY series right now so I will add it in.
camss@{I think, it's a part of camss.
existing CSID/IFE
IFE SID stuff goes here
power-domains = TITAN_TOP_GDSC, IFE_GDSC
}
csiphy @ {
}
jpeg@ {
JPEG SID stuff goes here
power-domains = TITAN_TOP_GDSC, JPEG_GDSC
}
camnoc@ {
modelled as an ICC provider and consumed by
}