== Whats the easiest way to debug ? ==

The easiest way is the one you know.  For most of us thats printf(),
or its kernel version: 
{{{
#include <device.h>
...
     printk(KERN_INFO DRVNAME "%s %s\n", info1, info2);
     printk(KERN_ERR DRVNAME "something bad: %s\n", errstr);
     printk("logged at (what?) default\n");
}}}

In lines 1,2, note the lack of comma after KERN_INFO and DRVNAME.  
These are string values that are catenated, per C language spec, 
to the front of the format string.

KERN_INFO and friends are defined here:
https://elixir.bootlin.com/linux/v5.10/source/include/linux/kern_levels.h#L14

The logging system reads the numbers, and steers the message accorgingly.


== Anything with less typing ? ==

For drivers with a struct device, device.h provides an easier way:

{{{
#include <device.h>
...
     dev_info("%s %s\n", info1, info2);
     dev_err("something bad: %s\n", errstr);

}}}

Messages issued by these statements include driver name, etc.

== dev_dbg() ==

This symbol has additional feature - the statement typically disappears at compile-time,
allowing developer to keep debug code w/o runtime penalties.

{{{
#define DEBUG 1
#include <device.h>
...
     dev_dbg("%s %s\n", info1, info2);
}}}

== I'm still not seeing the debug messages ! ==

If you're looking at the console for messages, may be you need to raise its verbosity:
{{{
     echo 8 > /proc/sys/kernel/printk
}}} 
this will cause dev_dbg() messages, which are logged at level "<7>", to be reported to the console.