From 2e4170b63bf05afe55a706dfc14c50ff1c6aa305 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Wed, 5 Apr 2017 16:23:40 -0600 Subject: video: arm: rpi: Move the video query out of the driver Add a function to get the video size to the msg handler and remove it from the video driver. Signed-off-by: Simon Glass Acked-by: Anatolij Gustschin --- drivers/video/bcm2835.c | 20 +++----------------- 1 file changed, 3 insertions(+), 17 deletions(-) (limited to 'drivers') diff --git a/drivers/video/bcm2835.c b/drivers/video/bcm2835.c index cc6454f10d4..eb137be11ca 100644 --- a/drivers/video/bcm2835.c +++ b/drivers/video/bcm2835.c @@ -9,6 +9,7 @@ #include #include #include +#include #include DECLARE_GLOBAL_DATA_PTR; @@ -18,12 +19,6 @@ vidinfo_t panel_info; static u32 bcm2835_pitch; -struct msg_query { - struct bcm2835_mbox_hdr hdr; - struct bcm2835_mbox_tag_physical_w_h physical_w_h; - u32 end_tag; -}; - struct msg_setup { struct bcm2835_mbox_hdr hdr; struct bcm2835_mbox_tag_physical_w_h physical_w_h; @@ -40,27 +35,18 @@ struct msg_setup { void lcd_ctrl_init(void *lcdbase) { - ALLOC_CACHE_ALIGN_BUFFER(struct msg_query, msg_query, 1); ALLOC_CACHE_ALIGN_BUFFER(struct msg_setup, msg_setup, 1); int ret; - u32 w, h; + int w, h; u32 fb_start, fb_end; debug("bcm2835: Query resolution...\n"); - - BCM2835_MBOX_INIT_HDR(msg_query); - BCM2835_MBOX_INIT_TAG_NO_REQ(&msg_query->physical_w_h, - GET_PHYSICAL_W_H); - ret = bcm2835_mbox_call_prop(BCM2835_MBOX_PROP_CHAN, &msg_query->hdr); + ret = bcm2835_get_video_size(&w, &h); if (ret) { - printf("bcm2835: Could not query display resolution\n"); /* FIXME: How to disable the LCD to prevent errors? hang()? */ return; } - w = msg_query->physical_w_h.body.resp.width; - h = msg_query->physical_w_h.body.resp.height; - debug("bcm2835: Setting up display for %d x %d\n", w, h); BCM2835_MBOX_INIT_HDR(msg_setup); -- cgit v1.3.1