| From ccc1e73fa963c06a533d222420a3302bcdd82bc5 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Tue, 21 Sep 2021 22:21:02 +0100 |
| Subject: video: fbdev: gbefb: Only instantiate device when built for IP32 |
| |
| From: Mark Brown <broonie@kernel.org> |
| |
| [ Upstream commit 11b8e2bb986d23157e82e267fb8cc6b281dfdee9 ] |
| |
| The gbefb driver not only registers a driver but also the device for that |
| driver. This is all well and good when run on the IP32 machines that are |
| supported by the driver but since the driver supports building with |
| COMPILE_TEST we might also be building on other platforms which do not have |
| this hardware and will crash instantiating the driver. Add an IS_ENABLED() |
| check so we compile out the device registration if we don't have the Kconfig |
| option for the machine enabled. |
| |
| Fixes: 552ccf6b259d290c0c ("video: fbdev: gbefb: add COMPILE_TEST support") |
| Signed-off-by: Mark Brown <broonie@kernel.org> |
| Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> |
| Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> |
| Link: https://patchwork.freedesktop.org/patch/msgid/20210921212102.30803-1-broonie@kernel.org |
| Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/video/fbdev/gbefb.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/drivers/video/fbdev/gbefb.c b/drivers/video/fbdev/gbefb.c |
| index c5b99a4861e8..6b4d5a7f3e15 100644 |
| --- a/drivers/video/fbdev/gbefb.c |
| +++ b/drivers/video/fbdev/gbefb.c |
| @@ -1267,7 +1267,7 @@ static struct platform_device *gbefb_device; |
| static int __init gbefb_init(void) |
| { |
| int ret = platform_driver_register(&gbefb_driver); |
| - if (!ret) { |
| + if (IS_ENABLED(CONFIG_SGI_IP32) && !ret) { |
| gbefb_device = platform_device_alloc("gbefb", 0); |
| if (gbefb_device) { |
| ret = platform_device_add(gbefb_device); |
| -- |
| 2.33.0 |
| |