[lkml]   [2020]   [Jan]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    Subject[PATCH 0/2] of: unittest: add overlay gpio test to catch gpio hog problem
    From: Frank Rowand <>

    Geert reports that gpio hog nodes are not properly processed when
    the gpio hog node is added via an overlay reply and provides an
    RFC patch to fix the problem [1].

    Add a unittest that shows the problem. Unittest will report "1 failed"
    test before applying Geert's RFC patch and "0 failed" after applying
    Geert's RFC patch.

    I did not have a development system for which it would be easy to
    experiment with applying an overlay containing a gpio hog, so I
    instead created this unittest that uses a fake gpio node.

    Some tests in the devicetree unittests result in printk messages
    from the code being tested. It can be difficult to determine
    whether the messages are the result of unittest or are potentially
    reporting bugs that should be fixed. The most recent example of
    a person asking whether to be concerned about these messages is [2].

    Patch 2 adds annotations for all messages triggered by unittests,
    except KERN_DEBUG messages. (KERN_DEBUG is a special case due to the
    possible interaction of CONFIG_DYNAMIC_DEBUG.)

    The annotations added in patch 2/2 add a small amount of verbosity
    to the console output. I have created a proof of concept tool to
    explore (1) how test harnesses could use the annotations and
    (2) how to make the resulting console output easier to read and
    understand as a human being. The tool 'of_unittest_expect' is
    available at

    The format of the annotations is expected to change when unittests
    are converted to use the kunit infrastructure when the broader
    testing community has an opportunity to discuss the implementation
    of annotations of test triggered messages.


    Frank Rowand (2):
    of: unittest: add overlay gpio test to catch gpio hog problem
    of: unittest: annotate warnings triggered by unittest

    drivers/of/unittest-data/Makefile | 8 +-
    drivers/of/unittest-data/overlay_gpio_01.dts | 23 +
    drivers/of/unittest-data/overlay_gpio_02a.dts | 16 +
    drivers/of/unittest-data/overlay_gpio_02b.dts | 16 +
    drivers/of/unittest-data/overlay_gpio_03.dts | 23 +
    drivers/of/unittest-data/overlay_gpio_04a.dts | 16 +
    drivers/of/unittest-data/overlay_gpio_04b.dts | 16 +
    drivers/of/unittest.c | 630 ++++++++++++++++++++++++--
    8 files changed, 717 insertions(+), 31 deletions(-)
    create mode 100644 drivers/of/unittest-data/overlay_gpio_01.dts
    create mode 100644 drivers/of/unittest-data/overlay_gpio_02a.dts
    create mode 100644 drivers/of/unittest-data/overlay_gpio_02b.dts
    create mode 100644 drivers/of/unittest-data/overlay_gpio_03.dts
    create mode 100644 drivers/of/unittest-data/overlay_gpio_04a.dts
    create mode 100644 drivers/of/unittest-data/overlay_gpio_04b.dts

    Frank Rowand <>

     \ /
      Last update: 2020-01-29 06:47    [W:9.747 / U:0.024 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site