[PATCH v2] video: simplefb: Map framebuffer region on probe on ARM64
Sumit Garg
sumit.garg at kernel.org
Mon Apr 13 13:15:24 CEST 2026
On Wed, Apr 08, 2026 at 02:04:28PM +0200, Luca Weiss wrote:
> The framebuffer buffer might not be mapped on some devices.
>
> This is #ifdef'ed for ARM64 since mmu_map_region() is not defined for
> any other architecture.
>
> Signed-off-by: Luca Weiss <luca.weiss at fairphone.com>
> ---
> Changes in v2:
> - Use ALIGN(plat->size, SZ_4K) instead of + 0x1000 (Casey)
> - Add log_warning in case framebuffer base is not 4k aligned (Casey)
> - Link to v1: https://lore.kernel.org/r/20260318-simplefb-map-v1-1-edec1ee81df1@fairphone.com
> ---
> drivers/video/simplefb.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
Acked-by: Sumit Garg <sumit.garg at oss.qualcomm.com>
-Sumit
>
> diff --git a/drivers/video/simplefb.c b/drivers/video/simplefb.c
> index 8d0772d4e51..4d238b936ac 100644
> --- a/drivers/video/simplefb.c
> +++ b/drivers/video/simplefb.c
> @@ -9,6 +9,8 @@
> #include <log.h>
> #include <video.h>
> #include <asm/global_data.h>
> +#include <asm/system.h>
> +#include <linux/sizes.h>
>
> static int simple_video_probe(struct udevice *dev)
> {
> @@ -37,6 +39,13 @@ static int simple_video_probe(struct udevice *dev)
> plat->base = base;
> plat->size = size;
>
> +#ifdef CONFIG_ARM64
> + /* The framebuffer buffer might not be mapped on some devices */
> + if (plat->base % SZ_4K)
> + log_warning("Framebuffer base %lx is not 4k aligned!\n", plat->base);
> + mmu_map_region((phys_addr_t)plat->base, (phys_addr_t)ALIGN(plat->size, SZ_4K), false);
> +#endif
> +
> video_set_flush_dcache(dev, true);
>
> debug("%s: Query resolution...\n", __func__);
>
> ---
> base-commit: 88dc2788777babfd6322fa655df549a019aa1e69
> change-id: 20260318-simplefb-map-abb9dba0eed1
>
> Best regards,
> --
> Luca Weiss <luca.weiss at fairphone.com>
>
More information about the U-Boot
mailing list