{"id":258,"url":"https://patchwork.libcamera.org/api/patches/258/?format=json","web_url":"https://patchwork.libcamera.org/patch/258/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20190117202043.21420-3-kieran.bingham@ideasonboard.com>","date":"2019-01-17T20:20:40","name":"[libcamera-devel,2/5] test: timer: Add a 32 bit wraparound test","commit_ref":null,"pull_url":null,"state":"accepted","archived":false,"hash":"0495684e9dade8573f2bb51f6ef0ca35f3526db9","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/?format=json","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/258/mbox/","series":[{"id":87,"url":"https://patchwork.libcamera.org/api/series/87/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=87","date":"2019-01-17T20:20:38","name":"General fixes","version":1,"mbox":"https://patchwork.libcamera.org/series/87/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/258/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/258/checks/","tags":{},"headers":{"Return-Path":"<kieran.bingham@ideasonboard.com>","Received":["from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 3569660C99\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 17 Jan 2019 21:20:49 +0100 (CET)","from localhost.localdomain\n\t(cpc89242-aztw30-2-0-cust488.18-1.cable.virginm.net [86.31.129.233])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id BB4C5B6B;\n\tThu, 17 Jan 2019 21:20:48 +0100 (CET)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1547756448;\n\tbh=mGxI1pXDUlKvzQmSElf6jIE60e9w0WyjvPGhVKWrvic=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=luO2Vua1ec2rSNVOzfUjHvd2gPj8yGW1uJifK9RpdCawXG0JmTMh+nlt88rn8QxSs\n\tmdrnKvyeOFUkjH90DaspHPoIdOrChdYMJifDawbrM5I99wOlAgFKf8ir2lQKrt07G0\n\tmjUDIq8Iu9SD0LI5Bu+yQ/w83oU/xltbLddzgDdc=","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","To":"LibCamera Devel <libcamera-devel@lists.libcamera.org>","Date":"Thu, 17 Jan 2019 20:20:40 +0000","Message-Id":"<20190117202043.21420-3-kieran.bingham@ideasonboard.com>","X-Mailer":"git-send-email 2.17.1","In-Reply-To":"<20190117202043.21420-1-kieran.bingham@ideasonboard.com>","References":"<20190117202043.21420-1-kieran.bingham@ideasonboard.com>","Subject":"[libcamera-devel] [PATCH 2/5] test: timer: Add a 32 bit wraparound\n\ttest","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.23","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","X-List-Received-Date":"Thu, 17 Jan 2019 20:20:49 -0000"},"content":"Add a test which catches a timer running longer than the nanosecond\nresolution of 32 bits.\n\nSigned-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n---\n test/timer.cpp | 13 +++++++++++++\n 1 file changed, 13 insertions(+)","diff":"diff --git a/test/timer.cpp b/test/timer.cpp\nindex 3d1a78ac2768..c6a6ede73486 100644\n--- a/test/timer.cpp\n+++ b/test/timer.cpp\n@@ -81,6 +81,19 @@ protected:\n \t\t\treturn TestFail;\n \t\t}\n \n+\t\t/*\n+\t\t * 32 bit wrap test\n+\t\t * Nanosecond resolution in a 32 bit value wraps at 4.294967\n+\t\t * seconds (0xFFFFFFFF / 1000000)\n+\t\t */\n+\t\ttimer.start(4295);\n+\t\tdispatcher->processEvents();\n+\n+\t\tif (timer.isRunning() || timer.jitter() > 50) {\n+\t\t\tcout << \"Timer expiration test failed\" << endl;\n+\t\t\treturn TestFail;\n+\t\t}\n+\n \t\t/* Timer restart. */\n \t\ttimer.start(500);\n \n","prefixes":["libcamera-devel","2/5"]}