11:07 Ermine: I didn't quite get it what "Scanout buffer". As far as I understand, it means framebuffer which device will send to the screen. But this definition means there can be at most one scanout buffer per display, and that seems wrong
11:10 Ermine: (sorry if my understanding is really wild)
11:45 K900: In what context?
13:10 Ermine: Oh, there are different meainings...
13:11 K900: In general, there is no fixed "scanout buffer" on modern GPUs
13:12 K900: The display hardware just reads from somewhere in VRAM
13:13 K900: But also this just feels like a very XY question
13:14 Ermine: I'm not trying to solve anything now, just clarifying terminology
13:17 K900: Well, did I answer your question then?
13:20 MrCooper: Ermine: "scanout buffer" is generally used to refer to a buffer which is currently being scanned out by a display plane
13:20 MrCooper: or which is intended to be scanned out
13:22 javierm: Ermine: I guess is in the context of simpledrm? (since you asked about simpledrm before)
13:24 Ermine: javierm: no, it's unrelated
13:30 Ermine: K900: sorry, but not quite
13:30 Ermine: MrCooper: thank you!
13:31 K900: The real answer is "it's complicated" because GPUs do all kinds of compositing and postprocessing in hardware
13:31 K900: So there may not even be a Scanout Buffer containing exactly what the display sees
13:48 Ermine: got it
13:52 Ermine: Actually there are slides on this topic which describes those... My bad
13:53 K900: Just keep in mind that whatever slides you find will probably be describing specific hardwre
13:53 K900: s/hardwre/hardware/
13:53 K900: Even if they don't say exactly what hardware they're describing
13:55 MrCooper: K900: scanout buffer is a generic concept, not a HW-specific one
13:56 K900: Yes, but slides describing a specific scanout pipeline will be pretty specific to the hardware
13:57 Ermine: "framebuffers -> plane -> CRTC -> encoder -> connector -> display" seems generic
13:57 K900: At that level of abstraction, more or less, yes
13:57 K900: But the exact operations supported in the pipeline will differ a lot
13:58 K900: And some steps may be skipped especially on mobile
13:59 Ermine: but it seems like the abstraction DRM maintains
14:00 K900: Yes, but not all hardware will have support for planes
14:02 K900: And some hardware will actually have the CRTC and encoder as one thing
21:40 Ermine: https://docs.kernel.org/gpu/drm-internals.html#memory-manager-initialization --- seems like some invalid link resulted in "See ? for details."
21:43 Ermine: Ah, it is just plain "?" in the doc source