test printf: Add very basic struct resource tests
authorIra Weiny <ira.weiny@intel.com>
Sat, 26 Oct 2024 00:46:53 +0000 (19:46 -0500)
committerDave Jiang <dave.jiang@intel.com>
Mon, 28 Oct 2024 21:30:52 +0000 (14:30 -0700)
The printf tests for struct resource were stubbed out.  struct range
printing will leverage the struct resource implementation.

To prevent regression add some basic sanity tests for struct resource.

Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Tested-by: Fan Ni <fan.ni@samsung.com>
Acked-by: Petr Mladek <pmladek@suse.com>
Link: https://patch.msgid.link/20241007-dcd-type2-upstream-v4-1-c261ee6eeded@intel.com
Tested-by: Petr Mladek <pmladek@suse.com>
Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Link: https://patch.msgid.link/20241025-cxl-pra-v2-1-123a825daba2@intel.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
lib/test_printf.c

index 8448b6d..5afdf5e 100644 (file)
@@ -386,6 +386,50 @@ kernel_ptr(void)
 static void __init
 struct_resource(void)
 {
+       struct resource test_resource = {
+               .start = 0xc0ffee00,
+               .end = 0xc0ffee00,
+               .flags = IORESOURCE_MEM,
+       };
+
+       test("[mem 0xc0ffee00 flags 0x200]",
+            "%pr", &test_resource);
+
+       test_resource = (struct resource) {
+               .start = 0xc0ffee,
+               .end = 0xba5eba11,
+               .flags = IORESOURCE_MEM,
+       };
+       test("[mem 0x00c0ffee-0xba5eba11 flags 0x200]",
+            "%pr", &test_resource);
+
+       test_resource = (struct resource) {
+               .start = 0xba5eba11,
+               .end = 0xc0ffee,
+               .flags = IORESOURCE_MEM,
+       };
+       test("[mem 0xba5eba11-0x00c0ffee flags 0x200]",
+            "%pr", &test_resource);
+
+       test_resource = (struct resource) {
+               .start = 0xba5eba11,
+               .end = 0xba5eca11,
+               .flags = IORESOURCE_MEM,
+       };
+
+       test("[mem 0xba5eba11-0xba5eca11 flags 0x200]",
+            "%pr", &test_resource);
+
+       test_resource = (struct resource) {
+               .start = 0xba11,
+               .end = 0xca10,
+               .flags = IORESOURCE_IO |
+                        IORESOURCE_DISABLED |
+                        IORESOURCE_UNSET,
+       };
+
+       test("[io  size 0x1000 disabled]",
+            "%pR", &test_resource);
 }
 
 static void __init