Today xen-fbfront supports specifying the display size via module
parameters only. Add support for specifying the size via Xenstore in
order to enable doing this easily via the domain's Xen configuration.
Add an error message in case the configured display size conflicts
with video memory size.
Signed-off-by: Juergen Gross <[email protected]>
---
drivers/video/fbdev/xen-fbfront.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/drivers/video/fbdev/xen-fbfront.c b/drivers/video/fbdev/xen-fbfront.c
index 3ee309c..46f6396 100644
--- a/drivers/video/fbdev/xen-fbfront.c
+++ b/drivers/video/fbdev/xen-fbfront.c
@@ -18,6 +18,8 @@
* frame buffer.
*/
+#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
+
#include <linux/console.h>
#include <linux/kernel.h>
#include <linux/errno.h>
@@ -380,10 +382,18 @@ static int xenfb_probe(struct xenbus_device *dev,
video[KPARAM_MEM] = val;
}
+ video[KPARAM_WIDTH] = xenbus_read_unsigned(dev->otherend, "width",
+ video[KPARAM_WIDTH]);
+ video[KPARAM_HEIGHT] = xenbus_read_unsigned(dev->otherend, "height",
+ video[KPARAM_HEIGHT]);
+
/* If requested res does not fit in available memory, use default */
fb_size = video[KPARAM_MEM] * 1024 * 1024;
if (video[KPARAM_WIDTH] * video[KPARAM_HEIGHT] * XENFB_DEPTH / 8
> fb_size) {
+ pr_warn("display parameters %d,%d,%d invalid, use defaults\n",
+ video[KPARAM_MEM], video[KPARAM_WIDTH],
+ video[KPARAM_HEIGHT]);
video[KPARAM_WIDTH] = XENFB_WIDTH;
video[KPARAM_HEIGHT] = XENFB_HEIGHT;
fb_size = XENFB_DEFAULT_FB_LEN;
--
2.10.2
On 03/23/2017 08:53 AM, Juergen Gross wrote:
> Today xen-fbfront supports specifying the display size via module
> parameters only. Add support for specifying the size via Xenstore in
> order to enable doing this easily via the domain's Xen configuration.
>
> Add an error message in case the configured display size conflicts
> with video memory size.
>
> Signed-off-by: Juergen Gross <[email protected]>
Reviewed-by: Boris Ostrovsky <[email protected]>
On 23/03/17 13:53, Juergen Gross wrote:
> Today xen-fbfront supports specifying the display size via module
> parameters only. Add support for specifying the size via Xenstore in
> order to enable doing this easily via the domain's Xen configuration.
>
> Add an error message in case the configured display size conflicts
> with video memory size.
>
> Signed-off-by: Juergen Gross <[email protected]>
Bartlomiej, any comments? Can you please take this patch or should I
carry it through the Xen tree?
Juergen
> ---
> drivers/video/fbdev/xen-fbfront.c | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/drivers/video/fbdev/xen-fbfront.c b/drivers/video/fbdev/xen-fbfront.c
> index 3ee309c..46f6396 100644
> --- a/drivers/video/fbdev/xen-fbfront.c
> +++ b/drivers/video/fbdev/xen-fbfront.c
> @@ -18,6 +18,8 @@
> * frame buffer.
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include <linux/console.h>
> #include <linux/kernel.h>
> #include <linux/errno.h>
> @@ -380,10 +382,18 @@ static int xenfb_probe(struct xenbus_device *dev,
> video[KPARAM_MEM] = val;
> }
>
> + video[KPARAM_WIDTH] = xenbus_read_unsigned(dev->otherend, "width",
> + video[KPARAM_WIDTH]);
> + video[KPARAM_HEIGHT] = xenbus_read_unsigned(dev->otherend, "height",
> + video[KPARAM_HEIGHT]);
> +
> /* If requested res does not fit in available memory, use default */
> fb_size = video[KPARAM_MEM] * 1024 * 1024;
> if (video[KPARAM_WIDTH] * video[KPARAM_HEIGHT] * XENFB_DEPTH / 8
> > fb_size) {
> + pr_warn("display parameters %d,%d,%d invalid, use defaults\n",
> + video[KPARAM_MEM], video[KPARAM_WIDTH],
> + video[KPARAM_HEIGHT]);
> video[KPARAM_WIDTH] = XENFB_WIDTH;
> video[KPARAM_HEIGHT] = XENFB_HEIGHT;
> fb_size = XENFB_DEFAULT_FB_LEN;
>
On Wednesday, April 05, 2017 10:18:43 AM Juergen Gross wrote:
> On 23/03/17 13:53, Juergen Gross wrote:
> > Today xen-fbfront supports specifying the display size via module
> > parameters only. Add support for specifying the size via Xenstore in
> > order to enable doing this easily via the domain's Xen configuration.
> >
> > Add an error message in case the configured display size conflicts
> > with video memory size.
> >
> > Signed-off-by: Juergen Gross <[email protected]>
>
> Bartlomiej, any comments? Can you please take this patch or should I
> carry it through the Xen tree?
Looks fine to me, I will queue it for 4.12 on Friday.
Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics
Hi,
On Thursday, March 23, 2017 10:13:44 AM Boris Ostrovsky wrote:
> On 03/23/2017 08:53 AM, Juergen Gross wrote:
> > Today xen-fbfront supports specifying the display size via module
> > parameters only. Add support for specifying the size via Xenstore in
> > order to enable doing this easily via the domain's Xen configuration.
> >
> > Add an error message in case the configured display size conflicts
> > with video memory size.
> >
> > Signed-off-by: Juergen Gross <[email protected]>
>
> Reviewed-by: Boris Ostrovsky <[email protected]>
Patch queued for 4.12, thanks.
Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics