On 05/06/2023 10:47, Amit Pundir wrote:
This is a follow-up of the upstream discussion, https://lore.kernel.org/linux-kernel/20230124182857.1524912-1-amit.pundir@xxxxxxxxxx/T/#u, around adding a reserved memory region in sdm845-db845c for the framebuffer memory (the splash region set up by the bootloader) but the general opinion was to avoid adding that reserved memory for the headless DB845c usecase. So this patch splits the sdm845-db845c into a common dtsi, a new sdm845-db845-headless DT, which disables the mdss display subsystem, and a new sdm845-db845c DT with an additional reserved-memory region for the framebuffer.
The bootloader always sets up this memory region, it's defined in XBL. If someone is building a product based on db845c SoM they would need to modify XBL to free up this memory, at that point I think a new DT would make sense.
Given that we only found that this was missing because the kernel randomly allocated memory there and it broke things, marking the region as reserved is a fix, not reserving it is a bug.
The original patch makes sense, imo this region should go in sdm845.dtsi as almost all devices utilise this.
I have a pair of patches [1][2] to fix this on sdm845 and sdm850, but I haven't sent them yet as there doesn't seem to be a consensus on this. Would this be ok with everyone given the above?
[1]: https://gitlab.com/sdm845-mainline/linux/-/commit/784f04850b56238c63c30dfea400c7a9ea8fda97 [2]: https://gitlab.com/sdm845-mainline/linux/-/commit/52f7ac40c6524be0edad5f4416ed76dbf3298dab
The default sdm845-db845c.dtb remains pretty much the same (with an exception of additional reserved-memory region), while others can use sdm845-db845c-headless.dtb for their headless systems. Signed-off-by: Amit Pundir <amit.pundir@xxxxxxxxxx>