Hi Marek,

On 3/20/25 12:49 PM, Marek Vasut wrote:
On 3/20/25 11:23 AM, Christoph Niedermaier wrote:
If tiny printf is used with 0x%08X (upper case X) the output is
always 0x00000000. It could be confusing if upper case instead
of lower case is used intentionally or accidentally because the
actual value is not output. To avoid this confusion, tiny printf
is extended to support also the formatting with %X.

Signed-off-by: Christoph Niedermaier <cniederma...@dh-electronics.com>
TINY_PRINTF is meant to be tiny, i.e. not consume a lot of space, at the expense of functionality. This is meant to be used in size constrained environments, like the SPL. If you need full vsprintf() formatting support, disable TINY_PRINTF in your config and use the regular vsprintf() implementation.

The issue is that disabling TINY_PRINTF may not be possible (size constraints) and some code is compiled for different stages and people typically don't check whether the format used in printf is valid with tiny_printf. I've had this issue already in the past, I vaguely recall "complaining" about it on IRC.

Maybe there's something we can do to verify that the code is working how we expect it to work, regardless of tiny_printf/full printf selection? checkpatch or a compile-time check for the formats maybe?

But yeah, essentially the whole thing is... if we continue like this, we'll just end up getting closer and closer to the full printf which is not something we want :)

Cheers,
Quentin

Reply via email to