Re: [PATCH v2 10/10] drm/ofdrm: Support color management
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2022-08-05 00:34:38
Also in:
dri-devel, linux-fbdev
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2022-08-05 00:34:38
Also in:
dri-devel, linux-fbdev
On Wed, 2022-07-27 at 10:41 +0200, Thomas Zimmermann wrote:
quoted
quoted
+static void __iomem *ofdrm_mach64_cmap_ioremap(struct ofdrm_device *odev, + struct device_node *of_node, + u64 fb_base) +{ + struct drm_device *dev = &odev->dev; + u64 address; + void __iomem *cmap_base; + + address = fb_base & 0xff000000ul; + address += 0x7ff000; +It would be good to know where these addresses are coming from. Maybe some constant macros or a comment ? Same for the other places where addresses and offsets are used.I have no idea where these values come from. I took them from offb. And I suspect that some of these CMAP helpers could be further merged if only it was clear where the numbers come from. But as i don't have the equipment for testing, I took most of this literally as-is from offb.
Ancient black magic :-) Old ATI mach64 chips had the registers sitting at the end of the framebuffer. You can find an equivalent in drivers/video/aty/atyfb_base.c:atyfb_setup_generic(): raddr = addr + 0x7ff000UL; Cheers, Ben.