On Mon, 2020-04-06 at 13:44 +0300, Andy Shevchenko wrote: > On Mon, Apr 6, 2020 at 10:46 AM Mauro Carvalho Chehab > <mchehab+huawei@xxxxxxxxxx> wrote: > > Em Fri, 3 Apr 2020 21:32:42 +0300 > > Andy Shevchenko <andy.shevchenko@xxxxxxxxx> escreveu: > > > On Fri, Apr 3, 2020 at 8:54 PM Joe Perches <joe@xxxxxxxxxxx> wrote: > > > > On Fri, 2020-04-03 at 19:32 +0200, Mauro Carvalho Chehab wrote: > > > > > Em Fri, 03 Apr 2020 09:56:42 -0700 > > > > > Joe Perches <joe@xxxxxxxxxxx> escreveu: > > > > It _might_ be useful to use a CONFIG_MEDIA_SUPPORT guard > > > > in lib/vsprintf for this. > > > > > > No need. FourCC, if Sakari makes it more generic, can be used for > > > other purposes, e.g. printing component names from the chips (not > > > related to media at all). > > > > > > > Hmm... not 100% sure about what you're meaning with "component names". > > 4cc is pretty much wide standard, media is just one of (famous) users of it. > > As I emphasized the example I referring to has nothing to do with media. > > Now, I have already two examples: > - component name inside hardware register (used by Synopsys DesignWare) > - CSRT table in ACPI uses this code for vendor ID. So if this is really u32_to_ascii, perhaps the "-BE" bit should be separated and "%4pEp" could be used with some renamed inline used like ERR_PTR so maybe something like this might work? static inline void * __must_check FOURCC(u32 val) { return (void *)(unsigned long)cpu_to_be32(val); } void test_4cc(void) { u32 val = 0x41424344; printk("4cc like: %4pE\n", FOURCC(val)); }