From: kernel test robot <lkp@intel.com>
To: Thomas Zimmermann <tzimmermann@suse.de>,
tzungbi@kernel.org, briannorris@chromium.org,
jwerner@chromium.org, javierm@redhat.com,
maarten.lankhorst@linux.intel.com, mripard@kernel.org,
airlied@gmail.com, simona@ffwll.ch
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
chrome-platform@lists.linux.dev, dri-devel@lists.freedesktop.org,
Thomas Zimmermann <tzimmermann@suse.de>
Subject: Re: [PATCH 8/8] drm/sysfb: corebootdrm: Add DRM driver for coreboot framebuffers
Date: Thu, 15 Jan 2026 06:12:45 +0800 [thread overview]
Message-ID: <202601150622.i0pTAj9w-lkp@intel.com> (raw)
In-Reply-To: <20260108145058.56943-9-tzimmermann@suse.de>
Hi Thomas,
kernel test robot noticed the following build errors:
[auto build test ERROR on chrome-platform/for-next]
[also build test ERROR on drm-misc/drm-misc-next daeinki-drm-exynos/exynos-drm-next drm/drm-next drm-i915/for-linux-next drm-i915/for-linux-next-fixes linus/master chrome-platform/for-firmware-next v6.19-rc5 next-20260114]
[cannot apply to drm-tip/drm-tip]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Thomas-Zimmermann/firmware-google-Do-sysfb-test-before-creating-coreboot-framebuffer/20260108-225542
base: https://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux.git for-next
patch link: https://lore.kernel.org/r/20260108145058.56943-9-tzimmermann%40suse.de
patch subject: [PATCH 8/8] drm/sysfb: corebootdrm: Add DRM driver for coreboot framebuffers
config: s390-allmodconfig (https://download.01.org/0day-ci/archive/20260115/202601150622.i0pTAj9w-lkp@intel.com/config)
compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260115/202601150622.i0pTAj9w-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202601150622.i0pTAj9w-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/gpu/drm/sysfb/corebootdrm.c:225:8: error: call to undeclared function 'devm_aperture_acquire_for_coreboot_device'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
225 | ret = devm_aperture_acquire_for_coreboot_device(cbdev, fb_pgbase, fb_pgsize);
| ^
drivers/gpu/drm/sysfb/corebootdrm.c:225:8: note: did you mean 'devm_aperture_acquire_for_platform_device'?
include/linux/aperture.h:19:5: note: 'devm_aperture_acquire_for_platform_device' declared here
19 | int devm_aperture_acquire_for_platform_device(struct platform_device *pdev,
| ^
1 error generated.
vim +/devm_aperture_acquire_for_coreboot_device +225 drivers/gpu/drm/sysfb/corebootdrm.c
162
163 /*
164 * Init / Cleanup
165 */
166
167 static int corebootdrm_device_init(struct corebootdrm_device *cdev, struct coreboot_device *cbdev)
168 {
169 const struct lb_framebuffer *fb = &cbdev->framebuffer;
170 struct drm_sysfb_device *sysfb = &cdev->sysfb;
171 struct drm_device *dev = &sysfb->dev;
172 const struct drm_format_info *format;
173 int width, height, pitch;
174 u64 address;
175 int width_mm = 0, height_mm = 0;
176 resource_size_t fb_size, fb_base, fb_pgbase, fb_pgsize;
177 struct resource *res, *mem = NULL;
178 void __iomem *screen_base;
179 struct drm_plane *primary_plane;
180 struct drm_crtc *crtc;
181 struct drm_encoder *encoder;
182 struct drm_connector *connector;
183 unsigned long max_width, max_height;
184 size_t nformats;
185 int ret;
186
187 /*
188 * Hardware settings
189 */
190
191 format = corebootdrm_get_format_fb(dev, fb);
192 if (!format)
193 return -EINVAL;
194 width = corebootdrm_get_width_fb(dev, fb);
195 if (width < 0)
196 return width;
197 height = corebootdrm_get_height_fb(dev, fb);
198 if (height < 0)
199 return height;
200 pitch = corebootdrm_get_pitch_fb(dev, format, width, fb);
201 if (pitch < 0)
202 return pitch;
203 address = corebootdrm_get_address_fb(dev, height, pitch, fb);
204 if (!address)
205 return -EINVAL;
206
207 sysfb->fb_mode = drm_sysfb_mode(width, height, width_mm, height_mm);
208 sysfb->fb_format = format;
209 sysfb->fb_pitch = pitch;
210
211 drm_dbg(dev, "display mode={" DRM_MODE_FMT "}\n", DRM_MODE_ARG(&sysfb->fb_mode));
212 drm_dbg(dev, "framebuffer format=%p4cc, size=%dx%d, pitch=%d byte\n",
213 &format->format, width, height, pitch);
214
215 /*
216 * Memory management
217 */
218
219 fb_base = address;
220 fb_size = pitch * height;
221
222 fb_pgbase = round_down(fb_base, PAGE_SIZE);
223 fb_pgsize = fb_base - fb_pgbase + round_up(fb_size, PAGE_SIZE);
224
> 225 ret = devm_aperture_acquire_for_coreboot_device(cbdev, fb_pgbase, fb_pgsize);
226 if (ret) {
227 drm_err(dev, "could not acquire memory range %pr: %d\n", res, ret);
228 return ret;
229 }
230
231 drm_dbg(dev, "using I/O memory framebuffer at %pr\n", res);
232
233 mem = devm_request_mem_region(&cbdev->dev, fb_pgbase, fb_pgsize, dev_name(&cbdev->dev));
234 if (!mem) {
235 /*
236 * We cannot make this fatal. Sometimes this comes from magic
237 * spaces our resource handlers simply don't know about. Use
238 * the I/O-memory resource as-is and try to map that instead.
239 */
240 drm_warn(dev, "could not acquire memory region %pr\n", res);
241 mem = res;
242 }
243
244 screen_base = devm_ioremap_wc(&cbdev->dev, fb_pgbase, fb_pgsize);
245 if (!screen_base)
246 return -ENOMEM;
247
248 iosys_map_set_vaddr_iomem(&sysfb->fb_addr, screen_base);
249
250 /*
251 * Modesetting
252 */
253
254 ret = drmm_mode_config_init(dev);
255 if (ret)
256 return ret;
257
258 max_width = max_t(unsigned long, width, DRM_SHADOW_PLANE_MAX_WIDTH);
259 max_height = max_t(unsigned long, height, DRM_SHADOW_PLANE_MAX_HEIGHT);
260
261 dev->mode_config.min_width = width;
262 dev->mode_config.max_width = max_width;
263 dev->mode_config.min_height = height;
264 dev->mode_config.max_height = max_height;
265 dev->mode_config.preferred_depth = format->depth;
266 dev->mode_config.funcs = &corebootdrm_mode_config_funcs;
267
268 /* Primary plane */
269
270 nformats = drm_sysfb_build_fourcc_list(dev, &format->format, 1,
271 cdev->formats, ARRAY_SIZE(cdev->formats));
272
273 primary_plane = &cdev->primary_plane;
274 ret = drm_universal_plane_init(dev, primary_plane, 0, &corebootdrm_primary_plane_funcs,
275 cdev->formats, nformats,
276 corebootdrm_primary_plane_format_modifiers,
277 DRM_PLANE_TYPE_PRIMARY, NULL);
278 if (ret)
279 return ret;
280 drm_plane_helper_add(primary_plane, &corebootdrm_primary_plane_helper_funcs);
281 drm_plane_enable_fb_damage_clips(primary_plane);
282
283 /* CRTC */
284
285 crtc = &cdev->crtc;
286 ret = drm_crtc_init_with_planes(dev, crtc, primary_plane, NULL,
287 &corebootdrm_crtc_funcs, NULL);
288 if (ret)
289 return ret;
290 drm_crtc_helper_add(crtc, &corebootdrm_crtc_helper_funcs);
291
292 /* Encoder */
293
294 encoder = &cdev->encoder;
295 ret = drm_encoder_init(dev, encoder, &corebootdrm_encoder_funcs,
296 DRM_MODE_ENCODER_NONE, NULL);
297 if (ret)
298 return ret;
299 encoder->possible_crtcs = drm_crtc_mask(crtc);
300
301 /* Connector */
302
303 connector = &cdev->connector;
304 ret = drm_connector_init(dev, connector, &corebootdrm_connector_funcs,
305 DRM_MODE_CONNECTOR_Unknown);
306 if (ret)
307 return ret;
308 drm_connector_helper_add(connector, &corebootdrm_connector_helper_funcs);
309 drm_connector_set_panel_orientation_with_quirk(connector,
310 DRM_MODE_PANEL_ORIENTATION_UNKNOWN,
311 width, height);
312
313 ret = drm_connector_attach_encoder(connector, encoder);
314 if (ret)
315 return ret;
316
317 drm_mode_config_reset(dev);
318
319 return 0;
320 }
321
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2026-01-14 22:13 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-08 14:19 [PATCH 0/8] drm, coreboot: Add DRM coreboot driver Thomas Zimmermann
2026-01-08 14:19 ` [PATCH 1/8] firmware: google: Do sysfb test before creating coreboot framebuffer Thomas Zimmermann
2026-01-08 16:55 ` Julius Werner
2026-01-09 9:17 ` Thomas Zimmermann
2026-01-09 10:21 ` Javier Martinez Canillas
2026-01-13 22:32 ` Julius Werner
2026-01-14 8:13 ` Thomas Zimmermann
2026-01-14 20:32 ` Julius Werner
2026-01-08 14:19 ` [PATCH 2/8] firmware: google: Init coreboot bus with subsys_initcall() Thomas Zimmermann
2026-01-09 10:24 ` Javier Martinez Canillas
2026-01-08 14:19 ` [PATCH 3/8] firmware: google: Clean up include statements in coreboot_table.h Thomas Zimmermann
2026-01-09 10:24 ` Javier Martinez Canillas
2026-01-08 14:19 ` [PATCH 4/8] firmware: google: Export coreboot driver and device interfaces Thomas Zimmermann
2026-01-09 10:26 ` Javier Martinez Canillas
2026-01-08 14:19 ` [PATCH 5/8] video/aperture: Support coreboot devices Thomas Zimmermann
2026-01-09 10:30 ` Javier Martinez Canillas
2026-01-08 14:19 ` [PATCH 6/8] drm/sysfb: Remove duplicate declarations Thomas Zimmermann
2026-01-09 10:31 ` Javier Martinez Canillas
2026-01-14 9:02 ` Thomas Zimmermann
2026-01-08 14:19 ` [PATCH 7/8] drm/sysfb: Generalize pixel-format matching Thomas Zimmermann
2026-01-09 10:32 ` Javier Martinez Canillas
2026-01-08 14:19 ` [PATCH 8/8] drm/sysfb: corebootdrm: Add DRM driver for coreboot framebuffers Thomas Zimmermann
2026-01-14 21:49 ` kernel test robot
2026-01-14 22:12 ` kernel test robot [this message]
2026-01-08 18:10 ` [PATCH 0/8] drm, coreboot: Add DRM coreboot driver Brian Norris
2026-01-09 8:50 ` Thomas Zimmermann
2026-01-09 10:37 ` Javier Martinez Canillas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202601150622.i0pTAj9w-lkp@intel.com \
--to=lkp@intel.com \
--cc=airlied@gmail.com \
--cc=briannorris@chromium.org \
--cc=chrome-platform@lists.linux.dev \
--cc=dri-devel@lists.freedesktop.org \
--cc=javierm@redhat.com \
--cc=jwerner@chromium.org \
--cc=llvm@lists.linux.dev \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=simona@ffwll.ch \
--cc=tzimmermann@suse.de \
--cc=tzungbi@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox