ChanServ changed the topic of #armlinux to: ARM kernel talk [Upstream kernel, find your vendor forums for questions about their kernels] | https://libera.irclog.whitequark.org/armlinux
apritzel has quit [Ping timeout: 264 seconds]
heat has joined #armlinux
jclsn has quit [Ping timeout: 255 seconds]
jclsn has joined #armlinux
heat has quit [Quit: Leaving]
misanthropos has quit [Read error: Connection reset by peer]
jn has quit [Ping timeout: 255 seconds]
jn has joined #armlinux
jn has joined #armlinux
misanthropos has joined #armlinux
mvaittin has joined #armlinux
lain6141 has quit [Read error: Connection reset by peer]
lain6141 has joined #armlinux
lain6141 has quit [Changing host]
lain6141 has joined #armlinux
System_Error has quit [Remote host closed the connection]
a3f has joined #armlinux
shoragan has joined #armlinux
System_Error has joined #armlinux
mvaittin has quit [Ping timeout: 256 seconds]
Cat_ has joined #armlinux
Cat_ has quit [Quit: cat_]
Cat_ has joined #armlinux
amitk has joined #armlinux
Cat_ has quit [Remote host closed the connection]
Cat_ has joined #armlinux
Cat_ has quit [Client Quit]
Cat_ has joined #armlinux
Cat_ has quit [Remote host closed the connection]
frieder has joined #armlinux
nsaenz has joined #armlinux
DiamondGotCat has joined #armlinux
gclement has joined #armlinux
nsaenz has quit [Ping timeout: 246 seconds]
DiamondGotCat has quit [Quit: DiamondGotCat]
Cat_ has joined #armlinux
Cat_ has quit [Remote host closed the connection]
apritzel has joined #armlinux
apritzel has quit [Ping timeout: 252 seconds]
mvaittin has joined #armlinux
sszy has joined #armlinux
prabhakalad has quit [Quit: Konversation terminated!]
prabhakalad has joined #armlinux
vingu has quit [Quit: Leaving.]
vingu has joined #armlinux
headless has joined #armlinux
System_Error has quit [Remote host closed the connection]
nsaenz has joined #armlinux
rvalue- has joined #armlinux
rvalue has quit [Ping timeout: 264 seconds]
rvalue- is now known as rvalue
apritzel has joined #armlinux
lain6141 has quit [Read error: Connection reset by peer]
lain6141 has joined #armlinux
lain6141 has quit [Changing host]
lain6141 has joined #armlinux
headless has quit [Quit: Konversation terminated!]
System_Error has joined #armlinux
luispm has quit [Ping timeout: 264 seconds]
<ajb-linaro> who owns the platform DT bindings for Arm? Is it the kernel?
<maz> depends who you ask.
<ajb-linaro> maz the magic 8ball?
* ajb-linaro is actually thinking about the DT mostly firmware needs for CXL to then emit the right ACPI
<ukleinek> ajb-linaro: the official source for dts files is arch/*/boot/dts in the kernel.
<maz> ukleinek: these are the DTS. not the *bindings*.
<maz> and AFAIK, the kernel doesn't have exclusivity on either.
<bjdooks> magic 8 ball says dt binding outlook not good
<ardb> ajb-linaro: in which universe does CXL need DT to emit 'the right ACPI'?
<ardb> just so I can avoid it :-)
<ukleinek> maz: ah, right. Then let me correct: the official source for bindings is Documentation/devicetree/bindings in the kernel.
<ajb-linaro> ardb for -M virt something needs to tell firmware what the world looks like I guess. I though CXL would be self enumerating but apparently this is needed: https://gitlab.com/jic23/qemu/-/commit/ea905c137976f9a35242cc27e92f91c22e52d92e
<ardb> if the firmware needs QEMU's DT to make sense of QEMU's ACPI, something seems quite wrong
<ardb> I know DT serves two purposes here (informing the firmware and informing the OS)
<ajb-linaro> ardb I thought the firmware only got DT from QEMU - can it all be done ACPI only?
<ardb> all the ACPI tables are generated by QEMU and not interpreted by the firmware at all
<ardb> the firmware uses DT to discover the system topology (to the extent where it needs to)
<ardb> having to rely on both in parallel seems like a bad idea
<ajb-linaro> ardb I assume real world kernels would only see the ACPI - so do the firmwares maintain their own DT bindings which will never be seen by a kernel?
<ardb> real world OSes would see either DT or ACPI but not both
<ardb> firmware relies on DT bindings specified by Linux only afaik
<ardb> ram, cpus, gic, uart, virtio, pcie etc
<ajb-linaro> so the others are standardised by?
* ajb-linaro feels like this might be a rabbit hole
<bjdooks> or possibly the pit of despair
<robmur01> typical ACPI-providing firmware like EDK2 doesn't use DT at all, it just hard-codes the relevant details of the platform it's built for
<robmur01> TF-A uses DT to configure itself, with a mix of common bindings plus some of its own, e.g. https://trustedfirmware-a.readthedocs.io/en/latest/components/fconf/fconf_properties.html
luispm has joined #armlinux
<robmur01> U-Boot does much the same as well (with stuff like its boot phase properties)
<ajb-linaro> robmur01 this is the edge case of EDK2 for -M virt which is a dynamic machine that can have bits added or removed. A niche of a niche ;-)
<robmur01> In general, the rough canonicality of bindings goes DTSpec repo -> Linux -> target project
<robmur01> for something common like CXL I'd hope that bindings might be generic enough to go right to the top, but that's probably a question for #devicetree
<ajb-linaro> robmur01 DTSpec repo being https://github.com/devicetree-org/devicetree-specification?
<robmur01> ajb-linaro: bleh, sorry, I meant https://github.com/devicetree-org/dt-schema/ not the actual spec document
<ajb-linaro> robmur01 thanks
mvaittin has quit [Ping timeout: 256 seconds]
nsaenz has quit [Remote host closed the connection]
nsaenz has joined #armlinux
<ardb> ajb-linaro: the firmware doesn't consume that many other DT nodes
<ardb> pcie and virtio are used to discover block and network devices
<ardb> but none of the usual plumbing with cross-references between nodes for clocks and regulators is needed on a vm
<ardb> SMMUs aren't used either, although that may need to change for booting confidential VMs
<ardb> ajb-linaro: i would recommend using the PCIe host bridge to inform the firmware about CXL capabilities
<ardb> for things that the firmware needs to know about
<ardb> ACPI tables can be populated by QEMU directly
gclement has quit [Read error: Connection reset by peer]
gclement1 has joined #armlinux
<ajb-linaro> ardb so the firmware just probes the bridge itself and adds the entries to the ACPI tables? How come the kernel can't do that either?
<ardb> no QEMU creates the ACPI tables
<ardb> *iff* there is anything EFI needs to know re CXL it can be conveyed in a different manner
<ardb> like a pcie capability
<ardb> (assuming cxl does not already standardize that)
<ardb> the point is that the OS should follow the CXL spec, whereas QEMU and its firmware can collude and invent something else
<ardb> standardizing DT bindings for a private QEMU<->firmware ABI which does not exist on bare metal doesn't seem like the right approach to me
<ardb> we could even use fw_cfg if we wanted to
<ardb> but in general, we should avoid adding things to DT that are not meant for the OS's consumption
<ajb-linaro> ardb there is resistance to merging more ad-hoc hacks for QEMU<->firmware interactions - I guess because we don't want only one firmware to work when booting.
<ajb-linaro> this seems to be a gap
<ardb> resistance from the people that want everything to be DT and to vertically integrate everything?
dmart has joined #armlinux
<ardb> the firmware is part of the platform not the OS
<ardb> all the efforts to make it more generic miss the point that firmware is supposed to implement the opposite side of the abstraction that the OS interacts with
<ardb> if the abstraction is ACPI, DT metadata that describes CXL to the firmware should be carefully hidden from the OS
<ardb> making the use of DT unnecessary, and probably undesirable given the confusion and the blatant layering violations
<ardb> VMs are a very particular case where the platform is highly variable
marc|gonzalez has joined #armlinux
marc|gonzalez has left #armlinux [#armlinux]
lain6141 has quit [Read error: Connection reset by peer]
lain6141 has joined #armlinux
lain6141 has quit [Changing host]
lain6141 has joined #armlinux
System_Error has quit [Remote host closed the connection]
frieder has quit [Remote host closed the connection]
System_Error has joined #armlinux
Livio has joined #armlinux
monstr has joined #armlinux
Livio has quit [Ping timeout: 255 seconds]
tambarus has quit [Ping timeout: 268 seconds]
xvmt has quit [Ping timeout: 255 seconds]
xvmt has joined #armlinux
socksinspace has quit [Quit: maintenance]
System_Error has quit [Remote host closed the connection]
tambarus has joined #armlinux
System_Error has joined #armlinux
gclement1 has quit [Ping timeout: 264 seconds]
sszy has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
tambarus has quit [Read error: Connection reset by peer]
headless has joined #armlinux
tambarus has joined #armlinux
hanetzer1 has quit [Ping timeout: 255 seconds]
hanetzer has joined #armlinux
apritzel has quit [Ping timeout: 264 seconds]
socksinspace has joined #armlinux
<geertu> names
luispm has quit [Quit: Leaving]
<geertu> linusw__: I know it's getting late, but would you mind me sending a third pinctrl PR for v6.11? I had overlooked the latest version of paulbarker's RZ/G2L pinctrl enhancements, which are a hard dependency for the DTS parts.
<linusw__> geertu: just send it, I haven't gotten krzk:s Samsung PR yet either so there is still some days to go :)
<geertu> linusw__: Thx, will do tomorrow morning, after a final cycle in linux-next.
balrog has quit [Quit: Bye]
System_Error has quit [Remote host closed the connection]
siak has joined #armlinux
headless has quit [Quit: Konversation terminated!]
monstr has quit [Remote host closed the connection]
balrog has joined #armlinux
nsaenz has quit [Remote host closed the connection]
System_Error has joined #armlinux
apritzel has joined #armlinux
Livio has joined #armlinux
headless has joined #armlinux
siak has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
headless has quit [Quit: Konversation terminated!]
Livio has quit [Ping timeout: 268 seconds]
lain6141 has quit [Read error: Connection reset by peer]
lain6141 has joined #armlinux
lain6141 has joined #armlinux
lain6141 has quit [Changing host]