mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-09-22 23:52:03 +00:00
video: Allow drivers to allocate the frame buffer themselves
When plat->base is set by driver then skip frame buffer reservation and allocation. Signed-off-by: Pali Rohár <pali@kernel.org>
This commit is contained in:
parent
515a2f7c02
commit
bd0df82369
1 changed files with 6 additions and 1 deletions
|
@ -33,7 +33,8 @@
|
|||
* information represents the requires size and alignment of the frame buffer
|
||||
* for the device. The values can be an over-estimate but cannot be too
|
||||
* small. The actual values will be suppled (in the same manner) by the bind()
|
||||
* method after relocation.
|
||||
* method after relocation. Additionally driver can allocate frame buffer
|
||||
* itself by setting plat->base.
|
||||
*
|
||||
* This information is then picked up by video_reserve() which works out how
|
||||
* much memory is needed for all devices. This is allocated between
|
||||
|
@ -78,6 +79,10 @@ static ulong alloc_fb(struct udevice *dev, ulong *addrp)
|
|||
if (!plat->size)
|
||||
return 0;
|
||||
|
||||
/* Allow drivers to allocate the frame buffer themselves */
|
||||
if (plat->base)
|
||||
return 0;
|
||||
|
||||
align = plat->align ? plat->align : 1 << 20;
|
||||
base = *addrp - plat->size;
|
||||
base &= ~(align - 1);
|
||||
|
|
Loading…
Reference in a new issue