Message ID | 20240226-fd-xml-shipped-v1-0-86bb6c3346d2@linaro.org (mailing list archive) |
---|---|
Headers | show |
Series | drm/msm: add support for regenerating shipped xml.h headers | expand |
On Mon, Feb 26, 2024 at 11:11 AM Dmitry Baryshkov <dmitry.baryshkov@linaro.org> wrote: > > Currently display-related register headers are generated from XML files > shipped withing Mesa source tree. This is not fully optimal: it requires > multi-stage process of the changes first being landed to Mesa and only > then synced to the kernel tree. > > Move original XML files to the kernel tree and generate header files if > required. > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Linus Torvalds is negative about version-controlling shipped copies. https://lore.kernel.org/all/CAHk-=wgSEi_ZrHdqr=20xv+d6dr5G895CbOAi8ok+7-CQUN=fQ@mail.gmail.com/ We are decreasing *_shipped files. This patch set will increase them. [Before] ./arch/powerpc/platforms/cell/spufs/spu_save_dump.h_shipped ./arch/powerpc/platforms/cell/spufs/spu_restore_dump.h_shipped ./fs/unicode/utf8data.c_shipped ./drivers/scsi/aic7xxx/aic7xxx_reg_print.c_shipped ./drivers/scsi/aic7xxx/aic79xx_seq.h_shipped ./drivers/scsi/aic7xxx/aic79xx_reg.h_shipped ./drivers/scsi/aic7xxx/aic79xx_reg_print.c_shipped ./drivers/scsi/aic7xxx/aic7xxx_reg.h_shipped ./drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped ./drivers/scsi/53c700_d.h_shipped ./drivers/net/wan/wanxlfw.inc_shipped ./drivers/tty/vt/defkeymap.c_shipped [After] ./arch/powerpc/platforms/cell/spufs/spu_save_dump.h_shipped ./arch/powerpc/platforms/cell/spufs/spu_restore_dump.h_shipped ./fs/unicode/utf8data.c_shipped ./drivers/scsi/aic7xxx/aic7xxx_reg_print.c_shipped ./drivers/scsi/aic7xxx/aic79xx_seq.h_shipped ./drivers/scsi/aic7xxx/aic79xx_reg.h_shipped ./drivers/scsi/aic7xxx/aic79xx_reg_print.c_shipped ./drivers/scsi/aic7xxx/aic7xxx_reg.h_shipped ./drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped ./drivers/scsi/53c700_d.h_shipped ./drivers/gpu/drm/msm/registers/dsi_phy_7nm.xml.h_shipped ./drivers/gpu/drm/msm/registers/dsi_phy_28nm_8960.xml.h_shipped ./drivers/gpu/drm/msm/registers/sfpb.xml.h_shipped ./drivers/gpu/drm/msm/registers/mdp_common.xml.h_shipped ./drivers/gpu/drm/msm/registers/dsi.xml.h_shipped ./drivers/gpu/drm/msm/registers/hdmi.xml.h_shipped ./drivers/gpu/drm/msm/registers/dsi_phy_14nm.xml.h_shipped ./drivers/gpu/drm/msm/registers/mdp5.xml.h_shipped ./drivers/gpu/drm/msm/registers/dsi_phy_10nm.xml.h_shipped ./drivers/gpu/drm/msm/registers/mdp4.xml.h_shipped ./drivers/gpu/drm/msm/registers/dsi_phy_28nm.xml.h_shipped ./drivers/gpu/drm/msm/registers/dsi_phy_20nm.xml.h_shipped ./drivers/net/wan/wanxlfw.inc_shipped ./drivers/tty/vt/defkeymap.c_shipped Of course, this is because those generated headers were version-controlled without _shipped, but now they have been renamed to *_shipped Since you are adding the original XML files, how about generating those headers all the time? For example see 7c0303ff7e67b637c47d8afee533ca9e2a02359b If you hide the tool behind DRM_MSM_GENERATE_HEADERS, nobody would notice the fact that drivers/gpu/drm/msm/headergen2/ is low quality code that sprinkle warnings. I cannot compile this patch set in the first place irrespective of DRM_MSM_GENERATE_HEADERS (presumably for a different reason) though. drivers/gpu/drm/msm/headergen2/rnndec.c: In function ‘rnndec_decodeval’: drivers/gpu/drm/msm/headergen2/rnndec.c:187:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 187 | asprintf (&res, "%s%s%s", ctx->colors->eval, ctmp, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/adreno/a5xx_preempt.c:5:10: fatal error: msm_gem.h: No such file or directory 5 | #include "msm_gem.h" | ^~~~~~~~~~~ compilation terminated. drivers/gpu/drm/msm/headergen2/rnndec.c:216:57: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 216 | asprintf (&res, "%s%s%s", color, bitfields[i]->name, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:218:57: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 218 | asprintf (&tmp, "%s | %s%s%s", res, color, bitfields[i]->name, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:230:41: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 230 | asprintf (&subval, "%s%#"PRIx64"%s", ctx->colors->err, field_val, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:235:41: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 235 | asprintf (&res, "%s%s%s = %s", ctx->colors->rname, bitfields[i]->name, ctx->colors->reset, subval); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:237:41: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 237 | asprintf (&tmp, "%s | %s%s%s = %s", res, ctx->colors->rname, bitfields[i]->name, ctx->colors->reset, subval); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:245:41: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 245 | asprintf (&res, "%s%#"PRIx64"%s", ctx->colors->err, value & ~mask, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:247:41: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 247 | asprintf (&tmp, "%s | %s%#"PRIx64"%s", res, ctx->colors->err, value & ~mask, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:253:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 253 | asprintf (&res, "%s0%s", ctx->colors->num, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:254:25: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 254 | asprintf (&tmp, "{ %s }", res); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:260:25: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 260 | asprintf (&res, "%s%#"PRIx64"%s", ctx->colors->num, value, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:264:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 264 | asprintf (&res, "%s-%lf%s", ctx->colors->num, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 265 | ((double)((UINT64_C(1) << width) - value)) / ((double)(1 << ti->radix)), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 266 | ctx->colors->reset); | ~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:271:25: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 271 | asprintf (&res, "%s%lf%s", ctx->colors->num, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 272 | ((double)value) / ((double)(1LL << ti->radix)), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 273 | ctx->colors->reset); | ~~~~~~~~~~~~~~~~~~~ CC [M] drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.o drivers/gpu/drm/msm/headergen2/rnndec.c:276:25: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 276 | asprintf (&res, "%sr%"PRIu64".%c%s", ctx->colors->num, (value >> 2), "xyzw"[value & 0x3], ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:279:25: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 279 | asprintf (&res, "%s%"PRIu64"%s", ctx->colors->num, value, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:283:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 283 | asprintf (&res, "%s-%"PRIi64"%s", ctx->colors->num, (UINT64_C(1) << width) - value, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:285:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 285 | asprintf (&res, "%s%"PRIi64"%s", ctx->colors->num, value, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:289:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 289 | asprintf (&res, "%sFALSE%s", ctx->colors->eval, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:291:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 291 | asprintf (&res, "%sTRUE%s", ctx->colors->eval, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:298:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 298 | asprintf(&res, "%s%f%s", ctx->colors->num, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 299 | val.d, ctx->colors->reset); | ~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:301:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 301 | asprintf(&res, "%s%f%s", ctx->colors->num, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 302 | val.f, ctx->colors->reset); | ~~~~~~~~~~~~~~~~~~~~~~~~~~ make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/adreno/a5xx_preempt.o] Error 1 make[6]: *** Waiting for unfinished jobs.... drivers/gpu/drm/msm/headergen2/rnndec.c:304:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 304 | asprintf(&res, "%s%f%s", ctx->colors->num, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 305 | float16(value), ctx->colors->reset); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:313:25: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 313 | asprintf (&res, "%s%#"PRIx64"%s", ctx->colors->num, value, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:317:17: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 317 | asprintf (&tmp, "%s | %s%#"PRIx64"%s", res, ctx->colors->err, value_orig & ~typeinfo_mask(ti), ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/adreno/a6xx_gpu.c:5:10: fatal error: msm_gem.h: No such file or directory 5 | #include "msm_gem.h" | ^~~~~~~~~~~ CC [M] drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.o compilation terminated. drivers/gpu/drm/msm/headergen2/rnndec.c: In function ‘trymatch’: drivers/gpu/drm/msm/headergen2/rnndec.c:394:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 394 | asprintf (&res->name, "%s%s%s", ctx->colors->rname, elems[i]->name, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:400:41: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 400 | asprintf (&tmp, "%s+%s%#"PRIx64"%s", res->name, ctx->colors->err, offset, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:424:41: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 424 | asprintf (&name, "%s%s%s", ctx->colors->rname, elems[i]->name, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:429:41: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 429 | asprintf (&tmp, "%s.%s", name, res->name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:439:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 439 | asprintf (&name, "%s%s%s", ctx->colors->rname, elems[i]->name, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:445:41: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 445 | asprintf (&tmp, "%s.%s", name, res->name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c:452:33: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 452 | asprintf (&tmp, "%s+%s%#"PRIx64"%s", name, ctx->colors->err, offset, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c: In function ‘appendidx’: drivers/gpu/drm/msm/headergen2/rnndec.c:332:17: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 332 | asprintf (&res, "%s[%s%s%s]", name, ctx->colors->eval, index_name, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/adreno/a6xx_gpu.o] Error 1 drivers/gpu/drm/msm/headergen2/rnndec.c:334:17: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 334 | asprintf (&res, "%s[%s%#"PRIx64"%s]", name, ctx->colors->num, idx, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/rnndec.c: In function ‘rnndec_decodeaddr’: drivers/gpu/drm/msm/headergen2/rnndec.c:477:9: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 477 | asprintf (&res->name, "%s%#"PRIx64"%s", ctx->colors->err, addr, ctx->colors->reset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/headergen2.c: In function ‘printtypeinfo’: drivers/gpu/drm/msm/headergen2/headergen2.c:159:25: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 159 | asprintf(&typename, "enum %s", ti->name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/headergen2.c: In function ‘printdelem’: drivers/gpu/drm/msm/headergen2/headergen2.c:245:17: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 245 | asprintf(&offsetfn, "__offset_%s", elem->name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/msm/headergen2/headergen2.c:254:17: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 254 | asprintf(®name, "REG_%s", elem->fullname); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/gpu/drm/msm/adreno/a4xx_gpu.h:7, from drivers/gpu/drm/msm/adreno/a4xx_gpu.c:4: drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: No such file or directory 15 | #include "msm_gpu.h" | ^~~~~~~~~~~ compilation terminated. make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/adreno/a4xx_gpu.o] Error 1 In file included from drivers/gpu/drm/msm/adreno/adreno_device.c:9: drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: No such file or directory 15 | #include "msm_gpu.h" | ^~~~~~~~~~~ compilation terminated. make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/adreno/adreno_device.o] Error 1 drivers/gpu/drm/msm/adreno/a5xx_gpu.c:12:10: fatal error: msm_gem.h: No such file or directory 12 | #include "msm_gem.h" | ^~~~~~~~~~~ compilation terminated. make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/adreno/a5xx_gpu.o] Error 1 In file included from drivers/gpu/drm/msm/adreno/a3xx_gpu.h:10, from drivers/gpu/drm/msm/adreno/a3xx_gpu.c:9: drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: No such file or directory 15 | #include "msm_gpu.h" | ^~~~~~~~~~~ compilation terminated. make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/adreno/a3xx_gpu.o] Error 1 In file included from drivers/gpu/drm/msm/adreno/a6xx_hfi.c:10: drivers/gpu/drm/msm/adreno/a6xx_gmu.h:12:10: fatal error: msm_drv.h: No such file or directory 12 | #include "msm_drv.h" | ^~~~~~~~~~~ compilation terminated. make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/adreno/a6xx_hfi.o] Error 1 In file included from drivers/gpu/drm/msm/adreno/a2xx_gpu.h:7, from drivers/gpu/drm/msm/adreno/a2xx_gpu.c:4: drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: No such file or directory 15 | #include "msm_gpu.h" | ^~~~~~~~~~~ compilation terminated. In file included from drivers/gpu/drm/msm/adreno/adreno_gpu.c:19: drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: No such file or directory 15 | #include "msm_gpu.h" | ^~~~~~~~~~~ compilation terminated. make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/adreno/a2xx_gpu.o] Error 1 make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/adreno/adreno_gpu.o] Error 1 In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h:13, from drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c:8: drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h:15:10: fatal error: msm_drv.h: No such file or directory 15 | #include "msm_drv.h" | ^~~~~~~~~~~ compilation terminated. In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c:26: drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h:15:10: fatal error: msm_drv.h: No such file or directory 15 | #include "msm_drv.h" | ^~~~~~~~~~~ compilation terminated. make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.o] Error 1 make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.o] Error 1 In file included from drivers/gpu/drm/msm/adreno/a5xx_gpu.h:7, from drivers/gpu/drm/msm/adreno/a5xx_power.c:6: drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: No such file or directory 15 | #include "msm_gpu.h" | ^~~~~~~~~~~ compilation terminated. make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/adreno/a5xx_power.o] Error 1 In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c:15: drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h:15:10: fatal error: msm_drv.h: No such file or directory 15 | #include "msm_drv.h" | ^~~~~~~~~~~ compilation terminated. make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.o] Error 1 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:21:10: fatal error: msm_drv.h: No such file or directory 21 | #include "msm_drv.h" | ^~~~~~~~~~~ compilation terminated. make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.o] Error 1 In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h:13, from drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c:6: drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h:15:10: fatal error: msm_drv.h: No such file or directory 15 | #include "msm_drv.h" | ^~~~~~~~~~~ compilation terminated. make[6]: *** [scripts/Makefile.build:243: drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.o] Error 1 In file included from drivers/gpu/drm/msm/adreno/a6xx_gpu.h:8, from drivers/gpu/drm/msm/adreno/a6xx_gmu.c:14: drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: No such file or directory 15 | #include "msm_gpu.h" | ^~~~~~~~~~~ compilation terminated. > --- > Dmitry Baryshkov (12): > kbuild: create destination directory for _shipped handling > drm/msm/mdp5: add writeback block bases > drm/msm/hdmi: drop qfprom.xml.h > drm/msm/dsi: drop mmss_cc.xml.h > drm/msm: use _shipped suffix for all xml.h files > drm/msm/headergen: import source files from freedreno/envytools > drm/msm/headergen: use asprintf instead of custom aprintf > drm/msm/headergen: don't output full file paths > drm/msm/headergen: generate _shipped files > drm/msm: import XML registers database > drm/msm: tie regeneration of shipped headers > drm/msm: sync shipped headers database > > drivers/gpu/drm/msm/Makefile | 80 +- > drivers/gpu/drm/msm/disp/mdp5/mdp5_cfg.h | 11 + > drivers/gpu/drm/msm/disp/mdp_common.xml.h | 111 -- > drivers/gpu/drm/msm/dsi/mmss_cc.xml.h | 131 -- > drivers/gpu/drm/msm/dsi/sfpb.xml.h | 70 - > drivers/gpu/drm/msm/hdmi/qfprom.xml.h | 61 - > drivers/gpu/drm/msm/headergen2/colors.c | 61 + > drivers/gpu/drm/msm/headergen2/colors.h | 49 + > drivers/gpu/drm/msm/headergen2/headergen2.c | 514 ++++++++ > drivers/gpu/drm/msm/headergen2/path.c | 64 + > drivers/gpu/drm/msm/headergen2/rnn.c | 1363 ++++++++++++++++++++ > drivers/gpu/drm/msm/headergen2/rnn.h | 243 ++++ > drivers/gpu/drm/msm/headergen2/rnndec.c | 550 ++++++++ > drivers/gpu/drm/msm/headergen2/rnndec.h | 59 + > drivers/gpu/drm/msm/headergen2/util.h | 113 ++ > drivers/gpu/drm/msm/headergen2/util/u_debug.h | 12 + > drivers/gpu/drm/msm/registers/.gitignore | 5 + > .../{dsi/dsi.xml.h => registers/dsi.xml.h_shipped} | 38 +- > .../dsi_phy_10nm.xml.h_shipped} | 37 +- > .../dsi_phy_14nm.xml.h_shipped} | 37 +- > .../dsi_phy_20nm.xml.h_shipped} | 37 +- > .../dsi_phy_28nm.xml.h_shipped} | 37 +- > .../dsi_phy_28nm_8960.xml.h_shipped} | 37 +- > .../dsi_phy_7nm.xml.h_shipped} | 37 +- > .../hdmi.xml.h => registers/hdmi.xml.h_shipped} | 111 +- > .../mdp4.xml.h => registers/mdp4.xml.h_shipped} | 37 +- > .../mdp5.xml.h => registers/mdp5.xml.h_shipped} | 39 +- > .../gpu/drm/msm/registers/mdp_common.xml.h_shipped | 114 ++ > drivers/gpu/drm/msm/registers/sfpb.xml.h_shipped | 67 + > drivers/gpu/drm/msm/registers/xml/dsi.xml | 390 ++++++ > drivers/gpu/drm/msm/registers/xml/dsi_phy_10nm.xml | 102 ++ > drivers/gpu/drm/msm/registers/xml/dsi_phy_14nm.xml | 135 ++ > drivers/gpu/drm/msm/registers/xml/dsi_phy_20nm.xml | 100 ++ > drivers/gpu/drm/msm/registers/xml/dsi_phy_28nm.xml | 180 +++ > .../drm/msm/registers/xml/dsi_phy_28nm_8960.xml | 134 ++ > drivers/gpu/drm/msm/registers/xml/dsi_phy_7nm.xml | 230 ++++ > drivers/gpu/drm/msm/registers/xml/edp.xml | 239 ++++ > .../drm/msm/registers/xml/freedreno_copyright.xml | 40 + > drivers/gpu/drm/msm/registers/xml/hdmi.xml | 1015 +++++++++++++++ > drivers/gpu/drm/msm/registers/xml/mdp4.xml | 480 +++++++ > drivers/gpu/drm/msm/registers/xml/mdp5.xml | 806 ++++++++++++ > drivers/gpu/drm/msm/registers/xml/mdp_common.xml | 89 ++ > drivers/gpu/drm/msm/registers/xml/mmss_cc.xml | 48 + > drivers/gpu/drm/msm/registers/xml/msm.xml | 32 + > drivers/gpu/drm/msm/registers/xml/rules-ng.xsd | 457 +++++++ > drivers/gpu/drm/msm/registers/xml/sfpb.xml | 17 + > scripts/Makefile.lib | 2 +- > 47 files changed, 8034 insertions(+), 587 deletions(-) > --- > base-commit: ffa0c87f172bf7a0132aa960db412f8d63b2f533 > change-id: 20240225-fd-xml-shipped-ba9a321cdedf > > Best regards, > -- > Dmitry Baryshkov <dmitry.baryshkov@linaro.org> >
On Mon, 26 Feb 2024 at 08:24, Masahiro Yamada <masahiroy@kernel.org> wrote: > > On Mon, Feb 26, 2024 at 11:11 AM Dmitry Baryshkov > <dmitry.baryshkov@linaro.org> wrote: > > > > Currently display-related register headers are generated from XML files > > shipped withing Mesa source tree. This is not fully optimal: it requires > > multi-stage process of the changes first being landed to Mesa and only > > then synced to the kernel tree. > > > > Move original XML files to the kernel tree and generate header files if > > required. > > > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > > > > Linus Torvalds is negative about version-controlling > shipped copies. > > > https://lore.kernel.org/all/CAHk-=wgSEi_ZrHdqr=20xv+d6dr5G895CbOAi8ok+7-CQUN=fQ@mail.gmail.com/ > > > > > We are decreasing *_shipped files. > > > This patch set will increase them. > > > [Before] > > ./arch/powerpc/platforms/cell/spufs/spu_save_dump.h_shipped > ./arch/powerpc/platforms/cell/spufs/spu_restore_dump.h_shipped > ./fs/unicode/utf8data.c_shipped > ./drivers/scsi/aic7xxx/aic7xxx_reg_print.c_shipped > ./drivers/scsi/aic7xxx/aic79xx_seq.h_shipped > ./drivers/scsi/aic7xxx/aic79xx_reg.h_shipped > ./drivers/scsi/aic7xxx/aic79xx_reg_print.c_shipped > ./drivers/scsi/aic7xxx/aic7xxx_reg.h_shipped > ./drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped > ./drivers/scsi/53c700_d.h_shipped > ./drivers/net/wan/wanxlfw.inc_shipped > ./drivers/tty/vt/defkeymap.c_shipped > > > [After] > > ./arch/powerpc/platforms/cell/spufs/spu_save_dump.h_shipped > ./arch/powerpc/platforms/cell/spufs/spu_restore_dump.h_shipped > ./fs/unicode/utf8data.c_shipped > ./drivers/scsi/aic7xxx/aic7xxx_reg_print.c_shipped > ./drivers/scsi/aic7xxx/aic79xx_seq.h_shipped > ./drivers/scsi/aic7xxx/aic79xx_reg.h_shipped > ./drivers/scsi/aic7xxx/aic79xx_reg_print.c_shipped > ./drivers/scsi/aic7xxx/aic7xxx_reg.h_shipped > ./drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped > ./drivers/scsi/53c700_d.h_shipped > ./drivers/gpu/drm/msm/registers/dsi_phy_7nm.xml.h_shipped > ./drivers/gpu/drm/msm/registers/dsi_phy_28nm_8960.xml.h_shipped > ./drivers/gpu/drm/msm/registers/sfpb.xml.h_shipped > ./drivers/gpu/drm/msm/registers/mdp_common.xml.h_shipped > ./drivers/gpu/drm/msm/registers/dsi.xml.h_shipped > ./drivers/gpu/drm/msm/registers/hdmi.xml.h_shipped > ./drivers/gpu/drm/msm/registers/dsi_phy_14nm.xml.h_shipped > ./drivers/gpu/drm/msm/registers/mdp5.xml.h_shipped > ./drivers/gpu/drm/msm/registers/dsi_phy_10nm.xml.h_shipped > ./drivers/gpu/drm/msm/registers/mdp4.xml.h_shipped > ./drivers/gpu/drm/msm/registers/dsi_phy_28nm.xml.h_shipped > ./drivers/gpu/drm/msm/registers/dsi_phy_20nm.xml.h_shipped > ./drivers/net/wan/wanxlfw.inc_shipped > ./drivers/tty/vt/defkeymap.c_shipped > > > > Of course, this is because those generated headers were > version-controlled without _shipped, but now they > have been renamed to *_shipped > > > > Since you are adding the original XML files, > how about generating those headers all the time? This will add dependency on libxml to any kernel that has CONFIG_DRM_MSM enabled. We have a WIP python reimplementation, maybe we should finish it first, it doesn't have external dependencies. > For example see > 7c0303ff7e67b637c47d8afee533ca9e2a02359b > > > > If you hide the tool behind DRM_MSM_GENERATE_HEADERS, > nobody would notice the fact that > drivers/gpu/drm/msm/headergen2/ is low quality code > that sprinkle warnings. > > > I cannot compile this patch set in the first place > irrespective of DRM_MSM_GENERATE_HEADERS > (presumably for a different reason) though. Could you please specify how you tried to compile the code? I can see warnings from headrgen2, but I'm really puzzled by the errors from the MSM driver itself. > drivers/gpu/drm/msm/headergen2/rnndec.c: In function ‘rnndec_decodeval’: > drivers/gpu/drm/msm/headergen2/rnndec.c:187:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 187 | asprintf (&res, "%s%s%s", > ctx->colors->eval, ctmp, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/adreno/a5xx_preempt.c:5:10: fatal error: > msm_gem.h: No such file or directory > 5 | #include "msm_gem.h" > | ^~~~~~~~~~~ > compilation terminated. > drivers/gpu/drm/msm/headergen2/rnndec.c:216:57: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 216 | > asprintf (&res, "%s%s%s", color, bitfields[i]->name, > ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:218:57: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 218 | > asprintf (&tmp, "%s | %s%s%s", res, color, bitfields[i]->name, > ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:230:41: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 230 | asprintf (&subval, > "%s%#"PRIx64"%s", ctx->colors->err, field_val, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:235:41: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 235 | asprintf (&res, > "%s%s%s = %s", ctx->colors->rname, bitfields[i]->name, > ctx->colors->reset, subval); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:237:41: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 237 | asprintf (&tmp, "%s | > %s%s%s = %s", res, ctx->colors->rname, bitfields[i]->name, > ctx->colors->reset, subval); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:245:41: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 245 | asprintf (&res, > "%s%#"PRIx64"%s", ctx->colors->err, value & ~mask, > ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:247:41: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 247 | asprintf (&tmp, "%s | > %s%#"PRIx64"%s", res, ctx->colors->err, value & ~mask, > ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:253:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 253 | asprintf (&res, "%s0%s", > ctx->colors->num, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:254:25: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 254 | asprintf (&tmp, "{ %s }", res); > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:260:25: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 260 | asprintf (&res, "%s%#"PRIx64"%s", > ctx->colors->num, value, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:264:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 264 | asprintf (&res, "%s-%lf%s", > ctx->colors->num, > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 265 | > ((double)((UINT64_C(1) << width) - value)) / ((double)(1 << > ti->radix)), > | > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 266 | ctx->colors->reset); > | ~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:271:25: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 271 | asprintf (&res, "%s%lf%s", ctx->colors->num, > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 272 | ((double)value) / > ((double)(1LL << ti->radix)), > | > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 273 | ctx->colors->reset); > | ~~~~~~~~~~~~~~~~~~~ > CC [M] drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.o > drivers/gpu/drm/msm/headergen2/rnndec.c:276:25: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 276 | asprintf (&res, "%sr%"PRIu64".%c%s", > ctx->colors->num, (value >> 2), "xyzw"[value & 0x3], > ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:279:25: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 279 | asprintf (&res, "%s%"PRIu64"%s", > ctx->colors->num, value, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:283:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 283 | asprintf (&res, > "%s-%"PRIi64"%s", ctx->colors->num, (UINT64_C(1) << width) - value, > ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:285:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 285 | asprintf (&res, > "%s%"PRIi64"%s", ctx->colors->num, value, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:289:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 289 | asprintf (&res, "%sFALSE%s", > ctx->colors->eval, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:291:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 291 | asprintf (&res, "%sTRUE%s", > ctx->colors->eval, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:298:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 298 | asprintf(&res, "%s%f%s", > ctx->colors->num, > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 299 | val.d, ctx->colors->reset); > | ~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:301:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 301 | asprintf(&res, "%s%f%s", > ctx->colors->num, > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 302 | val.f, ctx->colors->reset); > | ~~~~~~~~~~~~~~~~~~~~~~~~~~ > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/adreno/a5xx_preempt.o] Error 1 > make[6]: *** Waiting for unfinished jobs.... > drivers/gpu/drm/msm/headergen2/rnndec.c:304:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 304 | asprintf(&res, "%s%f%s", > ctx->colors->num, > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 305 | float16(value), > ctx->colors->reset); > | > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:313:25: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 313 | asprintf (&res, "%s%#"PRIx64"%s", > ctx->colors->num, value, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:317:17: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 317 | asprintf (&tmp, "%s | %s%#"PRIx64"%s", res, > ctx->colors->err, value_orig & ~typeinfo_mask(ti), > ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/adreno/a6xx_gpu.c:5:10: fatal error: msm_gem.h: No > such file or directory > 5 | #include "msm_gem.h" > | ^~~~~~~~~~~ > CC [M] drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.o > compilation terminated. > drivers/gpu/drm/msm/headergen2/rnndec.c: In function ‘trymatch’: > drivers/gpu/drm/msm/headergen2/rnndec.c:394:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 394 | asprintf (&res->name, > "%s%s%s", ctx->colors->rname, elems[i]->name, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:400:41: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 400 | asprintf (&tmp, > "%s+%s%#"PRIx64"%s", res->name, ctx->colors->err, offset, > ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:424:41: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 424 | asprintf (&name, > "%s%s%s", ctx->colors->rname, elems[i]->name, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:429:41: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 429 | asprintf (&tmp, > "%s.%s", name, res->name); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:439:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 439 | asprintf (&name, "%s%s%s", > ctx->colors->rname, elems[i]->name, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:445:41: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 445 | asprintf (&tmp, > "%s.%s", name, res->name); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c:452:33: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 452 | asprintf (&tmp, > "%s+%s%#"PRIx64"%s", name, ctx->colors->err, offset, > ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c: In function ‘appendidx’: > drivers/gpu/drm/msm/headergen2/rnndec.c:332:17: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 332 | asprintf (&res, "%s[%s%s%s]", name, > ctx->colors->eval, index_name, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/adreno/a6xx_gpu.o] Error 1 > drivers/gpu/drm/msm/headergen2/rnndec.c:334:17: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 334 | asprintf (&res, "%s[%s%#"PRIx64"%s]", name, > ctx->colors->num, idx, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/rnndec.c: In function ‘rnndec_decodeaddr’: > drivers/gpu/drm/msm/headergen2/rnndec.c:477:9: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 477 | asprintf (&res->name, "%s%#"PRIx64"%s", > ctx->colors->err, addr, ctx->colors->reset); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/headergen2.c: In function ‘printtypeinfo’: > drivers/gpu/drm/msm/headergen2/headergen2.c:159:25: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 159 | asprintf(&typename, "enum %s", ti->name); > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/headergen2.c: In function ‘printdelem’: > drivers/gpu/drm/msm/headergen2/headergen2.c:245:17: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 245 | asprintf(&offsetfn, "__offset_%s", elem->name); > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/msm/headergen2/headergen2.c:254:17: warning: ignoring > return value of ‘asprintf’ declared with attribute > ‘warn_unused_result’ [-Wunused-result] > 254 | asprintf(®name, "REG_%s", elem->fullname); > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > In file included from drivers/gpu/drm/msm/adreno/a4xx_gpu.h:7, > from drivers/gpu/drm/msm/adreno/a4xx_gpu.c:4: > drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: > No such file or directory > 15 | #include "msm_gpu.h" > | ^~~~~~~~~~~ > compilation terminated. > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/adreno/a4xx_gpu.o] Error 1 > In file included from drivers/gpu/drm/msm/adreno/adreno_device.c:9: > drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: > No such file or directory > 15 | #include "msm_gpu.h" > | ^~~~~~~~~~~ > compilation terminated. > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/adreno/adreno_device.o] Error 1 > drivers/gpu/drm/msm/adreno/a5xx_gpu.c:12:10: fatal error: msm_gem.h: > No such file or directory > 12 | #include "msm_gem.h" > | ^~~~~~~~~~~ > compilation terminated. > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/adreno/a5xx_gpu.o] Error 1 > In file included from drivers/gpu/drm/msm/adreno/a3xx_gpu.h:10, > from drivers/gpu/drm/msm/adreno/a3xx_gpu.c:9: > drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: > No such file or directory > 15 | #include "msm_gpu.h" > | ^~~~~~~~~~~ > compilation terminated. > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/adreno/a3xx_gpu.o] Error 1 > In file included from drivers/gpu/drm/msm/adreno/a6xx_hfi.c:10: > drivers/gpu/drm/msm/adreno/a6xx_gmu.h:12:10: fatal error: msm_drv.h: > No such file or directory > 12 | #include "msm_drv.h" > | ^~~~~~~~~~~ > compilation terminated. > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/adreno/a6xx_hfi.o] Error 1 > In file included from drivers/gpu/drm/msm/adreno/a2xx_gpu.h:7, > from drivers/gpu/drm/msm/adreno/a2xx_gpu.c:4: > drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: > No such file or directory > 15 | #include "msm_gpu.h" > | ^~~~~~~~~~~ > compilation terminated. > In file included from drivers/gpu/drm/msm/adreno/adreno_gpu.c:19: > drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: > No such file or directory > 15 | #include "msm_gpu.h" > | ^~~~~~~~~~~ > compilation terminated. > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/adreno/a2xx_gpu.o] Error 1 > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/adreno/adreno_gpu.o] Error 1 > In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h:13, > from drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c:8: > drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h:15:10: fatal error: msm_drv.h: > No such file or directory > 15 | #include "msm_drv.h" > | ^~~~~~~~~~~ > compilation terminated. > In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c:26: > drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h:15:10: fatal error: msm_drv.h: > No such file or directory > 15 | #include "msm_drv.h" > | ^~~~~~~~~~~ > compilation terminated. > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.o] Error 1 > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.o] Error 1 > In file included from drivers/gpu/drm/msm/adreno/a5xx_gpu.h:7, > from drivers/gpu/drm/msm/adreno/a5xx_power.c:6: > drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: > No such file or directory > 15 | #include "msm_gpu.h" > | ^~~~~~~~~~~ > compilation terminated. > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/adreno/a5xx_power.o] Error 1 > In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c:15: > drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h:15:10: fatal error: msm_drv.h: > No such file or directory > 15 | #include "msm_drv.h" > | ^~~~~~~~~~~ > compilation terminated. > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.o] Error 1 > drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:21:10: fatal error: > msm_drv.h: No such file or directory > 21 | #include "msm_drv.h" > | ^~~~~~~~~~~ > compilation terminated. > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.o] Error 1 > In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h:13, > from drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c:6: > drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h:15:10: fatal error: msm_drv.h: > No such file or directory > 15 | #include "msm_drv.h" > | ^~~~~~~~~~~ > compilation terminated. > make[6]: *** [scripts/Makefile.build:243: > drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.o] Error 1 > In file included from drivers/gpu/drm/msm/adreno/a6xx_gpu.h:8, > from drivers/gpu/drm/msm/adreno/a6xx_gmu.c:14: > drivers/gpu/drm/msm/adreno/adreno_gpu.h:15:10: fatal error: msm_gpu.h: > No such file or directory > 15 | #include "msm_gpu.h" > | ^~~~~~~~~~~ > compilation terminated. > > > > > > --- > > Dmitry Baryshkov (12): > > kbuild: create destination directory for _shipped handling > > drm/msm/mdp5: add writeback block bases > > drm/msm/hdmi: drop qfprom.xml.h > > drm/msm/dsi: drop mmss_cc.xml.h > > drm/msm: use _shipped suffix for all xml.h files > > drm/msm/headergen: import source files from freedreno/envytools > > drm/msm/headergen: use asprintf instead of custom aprintf > > drm/msm/headergen: don't output full file paths > > drm/msm/headergen: generate _shipped files > > drm/msm: import XML registers database > > drm/msm: tie regeneration of shipped headers > > drm/msm: sync shipped headers database > > > > drivers/gpu/drm/msm/Makefile | 80 +- > > drivers/gpu/drm/msm/disp/mdp5/mdp5_cfg.h | 11 + > > drivers/gpu/drm/msm/disp/mdp_common.xml.h | 111 -- > > drivers/gpu/drm/msm/dsi/mmss_cc.xml.h | 131 -- > > drivers/gpu/drm/msm/dsi/sfpb.xml.h | 70 - > > drivers/gpu/drm/msm/hdmi/qfprom.xml.h | 61 - > > drivers/gpu/drm/msm/headergen2/colors.c | 61 + > > drivers/gpu/drm/msm/headergen2/colors.h | 49 + > > drivers/gpu/drm/msm/headergen2/headergen2.c | 514 ++++++++ > > drivers/gpu/drm/msm/headergen2/path.c | 64 + > > drivers/gpu/drm/msm/headergen2/rnn.c | 1363 ++++++++++++++++++++ > > drivers/gpu/drm/msm/headergen2/rnn.h | 243 ++++ > > drivers/gpu/drm/msm/headergen2/rnndec.c | 550 ++++++++ > > drivers/gpu/drm/msm/headergen2/rnndec.h | 59 + > > drivers/gpu/drm/msm/headergen2/util.h | 113 ++ > > drivers/gpu/drm/msm/headergen2/util/u_debug.h | 12 + > > drivers/gpu/drm/msm/registers/.gitignore | 5 + > > .../{dsi/dsi.xml.h => registers/dsi.xml.h_shipped} | 38 +- > > .../dsi_phy_10nm.xml.h_shipped} | 37 +- > > .../dsi_phy_14nm.xml.h_shipped} | 37 +- > > .../dsi_phy_20nm.xml.h_shipped} | 37 +- > > .../dsi_phy_28nm.xml.h_shipped} | 37 +- > > .../dsi_phy_28nm_8960.xml.h_shipped} | 37 +- > > .../dsi_phy_7nm.xml.h_shipped} | 37 +- > > .../hdmi.xml.h => registers/hdmi.xml.h_shipped} | 111 +- > > .../mdp4.xml.h => registers/mdp4.xml.h_shipped} | 37 +- > > .../mdp5.xml.h => registers/mdp5.xml.h_shipped} | 39 +- > > .../gpu/drm/msm/registers/mdp_common.xml.h_shipped | 114 ++ > > drivers/gpu/drm/msm/registers/sfpb.xml.h_shipped | 67 + > > drivers/gpu/drm/msm/registers/xml/dsi.xml | 390 ++++++ > > drivers/gpu/drm/msm/registers/xml/dsi_phy_10nm.xml | 102 ++ > > drivers/gpu/drm/msm/registers/xml/dsi_phy_14nm.xml | 135 ++ > > drivers/gpu/drm/msm/registers/xml/dsi_phy_20nm.xml | 100 ++ > > drivers/gpu/drm/msm/registers/xml/dsi_phy_28nm.xml | 180 +++ > > .../drm/msm/registers/xml/dsi_phy_28nm_8960.xml | 134 ++ > > drivers/gpu/drm/msm/registers/xml/dsi_phy_7nm.xml | 230 ++++ > > drivers/gpu/drm/msm/registers/xml/edp.xml | 239 ++++ > > .../drm/msm/registers/xml/freedreno_copyright.xml | 40 + > > drivers/gpu/drm/msm/registers/xml/hdmi.xml | 1015 +++++++++++++++ > > drivers/gpu/drm/msm/registers/xml/mdp4.xml | 480 +++++++ > > drivers/gpu/drm/msm/registers/xml/mdp5.xml | 806 ++++++++++++ > > drivers/gpu/drm/msm/registers/xml/mdp_common.xml | 89 ++ > > drivers/gpu/drm/msm/registers/xml/mmss_cc.xml | 48 + > > drivers/gpu/drm/msm/registers/xml/msm.xml | 32 + > > drivers/gpu/drm/msm/registers/xml/rules-ng.xsd | 457 +++++++ > > drivers/gpu/drm/msm/registers/xml/sfpb.xml | 17 + > > scripts/Makefile.lib | 2 +- > > 47 files changed, 8034 insertions(+), 587 deletions(-) > > --- > > base-commit: ffa0c87f172bf7a0132aa960db412f8d63b2f533 > > change-id: 20240225-fd-xml-shipped-ba9a321cdedf > > > > Best regards, > > -- > > Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > > > > > -- > Best Regards > Masahiro Yamada
On Mon, Feb 26, 2024 at 7:49 PM Dmitry Baryshkov <dmitry.baryshkov@linaro.org> wrote: > Could you please specify how you tried to compile the code? I can see > warnings from headrgen2, but I'm really puzzled by the errors from the > MSM driver itself. I applied this patch set onto v6.8-rc6. masahiro@zoe:~/ref/linux(testing7)$ git log --oneline -15 40eb59f162cc (HEAD -> testing7) drm/msm: sync shipped headers database ae850f45f243 drm/msm: tie regeneration of shipped headers 45401d4034ef drm/msm: import XML registers database 491e4d41308e drm/msm/headergen: generate _shipped files 6766c628c097 drm/msm/headergen: don't output full file paths e48e9a8eaf21 drm/msm/headergen: use asprintf instead of custom aprintf b12d6fb5d2a0 drm/msm/headergen: import source files from freedreno/envytools 4699358f5c5b drm/msm: use _shipped suffix for all xml.h files 295fcf923852 drm/msm/dsi: drop mmss_cc.xml.h a15c0faba637 drm/msm/hdmi: drop qfprom.xml.h 6811afe14414 drm/msm/mdp5: add writeback block bases feee4929582e kbuild: create destination directory for _shipped handling d206a76d7d27 (tag: v6.8-rc6, origin/master, origin/HEAD, master) Linux 6.8-rc6 e231dbd452a7 Merge tag 'bcachefs-2024-02-25' of https://evilpiepirate.org/git/bcachefs 5197728f8182 bcachefs: fix bch2_save_backtrace() I see the build errors with arm64 defconfig. [build step] $ git clean -fdx $ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- defconfig $ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j$(nproc) As I commented in 05/12, -I$(srctree)/$(src) is lost. I was able to build it with the following fix-up. --- a/drivers/gpu/drm/msm/Makefile +++ b/drivers/gpu/drm/msm/Makefile @@ -1,6 +1,6 @@ # SPDX-License-Identifier: GPL-2.0 ccflags-y := -I $(srctree)/$(src) -ccflags-y := -I $(obj)/registers +ccflags-y += -I $(obj)/registers ccflags-y += -I $(srctree)/$(src)/disp/dpu1 ccflags-$(CONFIG_DRM_MSM_DSI) += -I $(srctree)/$(src)/dsi ccflags-$(CONFIG_DRM_MSM_DP) += -I $(srctree)/$(src)/dp Better fixes would be to use #include "" properly. It should be relative to the source file. diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gmu.h b/drivers/gpu/drm/msm/adreno/a6xx_gmu.h index 592b296aab22..cf878490abd0 100644 --- a/drivers/gpu/drm/msm/adreno/a6xx_gmu.h +++ b/drivers/gpu/drm/msm/adreno/a6xx_gmu.h @@ -9,7 +9,7 @@ #include <linux/interrupt.h> #include <linux/notifier.h> #include <linux/soc/qcom/qcom_aoss.h> -#include "msm_drv.h" +#include "../msm_drv.h" #include "a6xx_hfi.h" struct a6xx_gmu_bo { diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gpu.c b/drivers/gpu/drm/msm/adreno/a6xx_gpu.c index c9c55e2ea584..3a109453db31 100644 --- a/drivers/gpu/drm/msm/adreno/a6xx_gpu.c +++ b/drivers/gpu/drm/msm/adreno/a6xx_gpu.c @@ -2,9 +2,9 @@ /* Copyright (c) 2017-2019 The Linux Foundation. All rights reserved. */ -#include "msm_gem.h" -#include "msm_mmu.h" -#include "msm_gpu_trace.h" +#include "../msm_gem.h" +#include "../msm_mmu.h" +#include "../msm_gpu_trace.h" #include "a6xx_gpu.h" #include "a6xx_gmu.xml.h" diff --git a/drivers/gpu/drm/msm/adreno/adreno_gpu.h b/drivers/gpu/drm/msm/adreno/adreno_gpu.h index bc14df96feb0..007788bf38ce 100644 --- a/drivers/gpu/drm/msm/adreno/adreno_gpu.h +++ b/drivers/gpu/drm/msm/adreno/adreno_gpu.h @@ -12,7 +12,7 @@ #include <linux/firmware.h> #include <linux/iopoll.h> -#include "msm_gpu.h" +#include "../msm_gpu.h" #include "adreno_common.xml.h" #include "adreno_pm4.xml.h"
Currently display-related register headers are generated from XML files shipped withing Mesa source tree. This is not fully optimal: it requires multi-stage process of the changes first being landed to Mesa and only then synced to the kernel tree. Move original XML files to the kernel tree and generate header files if required. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> --- Dmitry Baryshkov (12): kbuild: create destination directory for _shipped handling drm/msm/mdp5: add writeback block bases drm/msm/hdmi: drop qfprom.xml.h drm/msm/dsi: drop mmss_cc.xml.h drm/msm: use _shipped suffix for all xml.h files drm/msm/headergen: import source files from freedreno/envytools drm/msm/headergen: use asprintf instead of custom aprintf drm/msm/headergen: don't output full file paths drm/msm/headergen: generate _shipped files drm/msm: import XML registers database drm/msm: tie regeneration of shipped headers drm/msm: sync shipped headers database drivers/gpu/drm/msm/Makefile | 80 +- drivers/gpu/drm/msm/disp/mdp5/mdp5_cfg.h | 11 + drivers/gpu/drm/msm/disp/mdp_common.xml.h | 111 -- drivers/gpu/drm/msm/dsi/mmss_cc.xml.h | 131 -- drivers/gpu/drm/msm/dsi/sfpb.xml.h | 70 - drivers/gpu/drm/msm/hdmi/qfprom.xml.h | 61 - drivers/gpu/drm/msm/headergen2/colors.c | 61 + drivers/gpu/drm/msm/headergen2/colors.h | 49 + drivers/gpu/drm/msm/headergen2/headergen2.c | 514 ++++++++ drivers/gpu/drm/msm/headergen2/path.c | 64 + drivers/gpu/drm/msm/headergen2/rnn.c | 1363 ++++++++++++++++++++ drivers/gpu/drm/msm/headergen2/rnn.h | 243 ++++ drivers/gpu/drm/msm/headergen2/rnndec.c | 550 ++++++++ drivers/gpu/drm/msm/headergen2/rnndec.h | 59 + drivers/gpu/drm/msm/headergen2/util.h | 113 ++ drivers/gpu/drm/msm/headergen2/util/u_debug.h | 12 + drivers/gpu/drm/msm/registers/.gitignore | 5 + .../{dsi/dsi.xml.h => registers/dsi.xml.h_shipped} | 38 +- .../dsi_phy_10nm.xml.h_shipped} | 37 +- .../dsi_phy_14nm.xml.h_shipped} | 37 +- .../dsi_phy_20nm.xml.h_shipped} | 37 +- .../dsi_phy_28nm.xml.h_shipped} | 37 +- .../dsi_phy_28nm_8960.xml.h_shipped} | 37 +- .../dsi_phy_7nm.xml.h_shipped} | 37 +- .../hdmi.xml.h => registers/hdmi.xml.h_shipped} | 111 +- .../mdp4.xml.h => registers/mdp4.xml.h_shipped} | 37 +- .../mdp5.xml.h => registers/mdp5.xml.h_shipped} | 39 +- .../gpu/drm/msm/registers/mdp_common.xml.h_shipped | 114 ++ drivers/gpu/drm/msm/registers/sfpb.xml.h_shipped | 67 + drivers/gpu/drm/msm/registers/xml/dsi.xml | 390 ++++++ drivers/gpu/drm/msm/registers/xml/dsi_phy_10nm.xml | 102 ++ drivers/gpu/drm/msm/registers/xml/dsi_phy_14nm.xml | 135 ++ drivers/gpu/drm/msm/registers/xml/dsi_phy_20nm.xml | 100 ++ drivers/gpu/drm/msm/registers/xml/dsi_phy_28nm.xml | 180 +++ .../drm/msm/registers/xml/dsi_phy_28nm_8960.xml | 134 ++ drivers/gpu/drm/msm/registers/xml/dsi_phy_7nm.xml | 230 ++++ drivers/gpu/drm/msm/registers/xml/edp.xml | 239 ++++ .../drm/msm/registers/xml/freedreno_copyright.xml | 40 + drivers/gpu/drm/msm/registers/xml/hdmi.xml | 1015 +++++++++++++++ drivers/gpu/drm/msm/registers/xml/mdp4.xml | 480 +++++++ drivers/gpu/drm/msm/registers/xml/mdp5.xml | 806 ++++++++++++ drivers/gpu/drm/msm/registers/xml/mdp_common.xml | 89 ++ drivers/gpu/drm/msm/registers/xml/mmss_cc.xml | 48 + drivers/gpu/drm/msm/registers/xml/msm.xml | 32 + drivers/gpu/drm/msm/registers/xml/rules-ng.xsd | 457 +++++++ drivers/gpu/drm/msm/registers/xml/sfpb.xml | 17 + scripts/Makefile.lib | 2 +- 47 files changed, 8034 insertions(+), 587 deletions(-) --- base-commit: ffa0c87f172bf7a0132aa960db412f8d63b2f533 change-id: 20240225-fd-xml-shipped-ba9a321cdedf Best regards,