<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en" style="--code-editor-font: var(--default-mono-font, "GitLab Mono"), JetBrains Mono, Menlo, DejaVu Sans Mono, Liberation Mono, Consolas, Ubuntu Mono, Courier New, andale mono, lucida console, monospace;">
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
<title>
GitLab
</title>

<style data-premailer="ignore" type="text/css">
a { color: #1068bf; }
</style>

<style>img {
max-width: 100%; height: auto;
}
body {
font-size: .875rem;
}
body {
-webkit-text-shadow: hsla(0,0%,100%,.01) 0 0 1px;
}
body {
font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"; font-size: inherit;
}
</style>
</head>
<body style="font-size: inherit; -webkit-text-shadow: hsla(0,0%,100%,.01) 0 0 1px; font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";">
<div class="content">

<p class="details" style="font-style: italic; color: #626168;">
<a href="https://gitlab.rtems.org/sebhub">Sebastian Huber</a> created a merge request: <a href="https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1453">!1453</a>
</p>
<div class="branch">
Project:Branches: sebhub/rtems:up/i386-counter to rtems/rtos/rtems:main
</div>
<div class="author">
Author: Sebastian Huber
</div>
<div class="assignee">
Assignees: 
</div>
<div class="reviewer">
Reviewers: 
</div>
<div class="md gl-mt-5" style="position: relative; z-index: 1; color: #3a383f; word-wrap: break-word; margin-top: 1rem;">
<h2 id="user-content-summary" dir="auto" style="margin-top: 0px; margin-bottom: 10px;" align="initial">Summary<a href="#summary" aria-label="Link to heading 'Summary'" data-heading-content="Summary" class="anchor" style="margin-top: 0px;"></a>
</h2>
<p dir="auto" style="color: #3a383f; margin: 0px 0px 1rem;" align="initial">Issue <a href="https://gitlab.rtems.org/rtems/rtos/rtems/-/work_items/5728" title="bsps/i386/pc386: The CPU counter counts calls and a delay loop hangs the boot" class="gfm gfm-issue" data-original="#5728" data-link="false" data-link-reference="false" data-issue="29946" data-project="26" data-iid="5728" data-namespace-path="rtems/rtos/rtems" data-project-path="rtems/rtos/rtems" data-issue-type="issue" data-container="body" data-placement="top" data-reference-type="issue" style="margin-top: 0px;">#5728</a>: The CPU counter counts calls and a delay loop hangs the boot</p>
<p dir="auto" style="color: #3a383f; margin: 0px 0px 1rem;" align="initial">Two commits. The first reads the time stamp counter as the CPU counter and
measures its frequency against channel 2 of the 8254 in the CPU counter step of
the system initialization, so a system without a clock driver gets the counter
as well. A processor without a time stamp counter keeps the software counter.
It also drops the <code style="font-size: 90%; color: #18171d; word-wrap: break-word; background-color: #ececef; border-radius: .25rem; margin-top: 0px; font-weight: inherit; overflow-wrap: break-word; white-space: break-spaces; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: keep-all; padding: 0.125rem 0.25rem;">expected-fail</code> state of <code style="font-size: 90%; color: #18171d; word-wrap: break-word; background-color: #ececef; border-radius: .25rem; font-weight: inherit; overflow-wrap: break-word; white-space: break-spaces; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: keep-all; padding: 0.125rem 0.25rem;">ts-validation-timecounter-1</code>, which
passes with a counter that measures time.</p>
<p dir="auto" style="color: #3a383f; margin: 0px 0px 1rem;" align="initial">The second takes <code style="font-size: 90%; color: #18171d; word-wrap: break-word; background-color: #ececef; border-radius: .25rem; margin-top: 0px; font-weight: inherit; overflow-wrap: break-word; white-space: break-spaces; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: keep-all; padding: 0.125rem 0.25rem;">Wait_X_ms()</code> from channel 2 of the 8254 and deletes the
calibration together with its call in <code style="font-size: 90%; color: #18171d; word-wrap: break-word; background-color: #ececef; border-radius: .25rem; font-weight: inherit; overflow-wrap: break-word; white-space: break-spaces; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: keep-all; padding: 0.125rem 0.25rem;">bsp_start()</code>. <code style="font-size: 90%; color: #18171d; word-wrap: break-word; background-color: #ececef; border-radius: .25rem; font-weight: inherit; overflow-wrap: break-word; white-space: break-spaces; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: keep-all; padding: 0.125rem 0.25rem;">Wait_X_ms(100)</code> measures
100.12ms on Qemu, with and without <code style="font-size: 90%; color: #18171d; word-wrap: break-word; background-color: #ececef; border-radius: .25rem; font-weight: inherit; overflow-wrap: break-word; white-space: break-spaces; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: keep-all; padding: 0.125rem 0.25rem;">-icount</code>.</p>
<p dir="auto" style="color: #3a383f; margin: 0px 0px 1rem;" align="initial">A measurement on channel 0 does not work, which is why both commits use channel
2. The clock driver programs channel 0 again for the tick period afterwards and
the write takes effect, yet the tick then arrives every 55.5ms rather than every
1ms, which is 65536 counts of the 8254.</p>
<p dir="auto" style="color: #3a383f; margin: 0px 0px 1rem;" align="initial"><strong style="font-weight: 600; margin-top: 0px;">BSP</strong> <code style="font-size: 90%; color: #18171d; word-wrap: break-word; background-color: #ececef; border-radius: .25rem; font-weight: inherit; overflow-wrap: break-word; white-space: break-spaces; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: keep-all; padding: 0.125rem 0.25rem;">i386/pc586-sse</code> · <strong style="font-weight: 600;">Simulator</strong> Qemu</p>
<h2 id="user-content-ai-details" dir="auto" style="margin-top: 20px; margin-bottom: 10px;" align="initial">AI Details<a href="#ai-details" aria-label="Link to heading 'AI Details'" data-heading-content="AI Details" class="anchor" style="margin-top: 0px;"></a>
</h2>

<h3 id="user-content-prompt-used" dir="auto" style="margin-top: 1.5rem; margin-bottom: 1rem; font-weight: 600; font-size: 1.125rem; letter-spacing: inherit; line-height: 1.25; color: #18171d;" align="initial">Prompt used<a href="#prompt-used" aria-label="Link to heading 'Prompt used'" data-heading-content="Prompt used" class="anchor" style="margin-top: 0px;"></a>
</h3>
<p dir="auto" style="color: #3a383f; margin: 0px 0px 1rem;" align="initial">None as a single prompt.  The work was done in an interactive Claude Code
session on the RTEMS tree.  The task was to run the test suites of the
simulator BSPs, diagnose every failure and fix the cause.  Each change was
directed and reviewed.</p>
<h3 id="user-content-ai-model-used" dir="auto" style="margin-top: 1.5rem; margin-bottom: 1rem; font-weight: 600; font-size: 1.125rem; letter-spacing: inherit; line-height: 1.25; color: #18171d;" align="initial">AI model used<a href="#ai-model-used" aria-label="Link to heading 'AI model used'" data-heading-content="AI model used" class="anchor" style="margin-top: 0px;"></a>
</h3>
<p dir="auto" style="color: #3a383f; margin: 0px 0px 1rem;" align="initial">Claude Opus 5 (claude-opus-5), through Claude Code.</p>
<h3 id="user-content-how-ai-was-used-for-the-contribution" dir="auto" style="margin-top: 1.5rem; margin-bottom: 1rem; font-weight: 600; font-size: 1.125rem; letter-spacing: inherit; line-height: 1.25; color: #18171d;" align="initial">How AI was used for the contribution<a href="#how-ai-was-used-for-the-contribution" aria-label="Link to heading 'How AI was used for the contribution'" data-heading-content="How AI was used for the contribution" class="anchor" style="margin-top: 0px;"></a>
</h3>
<ul class="task-list" dir="auto" style="text-align: initial; list-style-type: disc; margin: 0px 0px 1rem; padding: 0;">
<li class="task-list-item" style="margin-top: 0px; line-height: 1.6em; margin-left: 25px; padding-left: 3px; position: relative; min-height: 22px; padding-inline-start: 32px; list-style-type: none; margin-inline-start: 0 !important;">
<input type="checkbox" class="task-list-item-checkbox" disabled aria-label="Check option: Formatting" style="margin-top: 0px; position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; display: block; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> Formatting</li>
<li class="task-list-item" style="line-height: 1.6em; margin-left: 25px; padding-left: 3px; position: relative; min-height: 22px; padding-inline-start: 32px; list-style-type: none; margin-inline-start: 0 !important;">
<input type="checkbox" class="task-list-item-checkbox" disabled aria-label="Check option: Test creation." style="margin-top: 0px; position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; display: block; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> Test creation.</li>
<li class="task-list-item" style="line-height: 1.6em; margin-left: 25px; padding-left: 3px; position: relative; min-height: 22px; padding-inline-start: 32px; list-style-type: none; margin-inline-start: 0 !important;">
<input type="checkbox" class="task-list-item-checkbox" checked disabled aria-label="Check option: Code comments." style="margin-top: 0px; position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; display: block; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> Code comments.</li>
<li class="task-list-item" style="line-height: 1.6em; margin-left: 25px; padding-left: 3px; position: relative; min-height: 22px; padding-inline-start: 32px; list-style-type: none; margin-inline-start: 0 !important;">
<input type="checkbox" class="task-list-item-checkbox" disabled aria-label="Check option: The entire contribution was generated using AI" style="margin-top: 0px; position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; display: block; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> The entire contribution was generated using AI</li>
<li class="task-list-item" style="line-height: 1.6em; margin-left: 25px; padding-left: 3px; position: relative; min-height: 22px; padding-inline-start: 32px; list-style-type: none; margin-inline-start: 0 !important;">
<input type="checkbox" class="task-list-item-checkbox" disabled aria-label="Check option: AI code completion such as Copilot in VSCode." style="margin-top: 0px; position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; display: block; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> AI code completion such as Copilot in VSCode.</li>
</ul>
<p dir="auto" style="color: #3a383f; margin: 0px 0px 1rem;" align="initial">The diagnosis and the implementation were produced in that session under my
direction, and the commit messages were drafted there.</p>
<h3 id="user-content-access" dir="auto" style="margin-top: 1.5rem; margin-bottom: 1rem; font-weight: 600; font-size: 1.125rem; letter-spacing: inherit; line-height: 1.25; color: #18171d;" align="initial">Access<a href="#access" aria-label="Link to heading 'Access'" data-heading-content="Access" class="anchor" style="margin-top: 0px;"></a>
</h3>
<p dir="auto" style="color: #3a383f; margin: 0px;" align="initial">I have not used a product which claims copyright in its output, and I have
legitimate access to the one I used.</p>
</div>

</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #626168;">

<br>
<a href="https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1453">View it on GitLab</a>.
<br>
You're receiving this email because of your account on <a target="_blank" rel="noopener noreferrer" href="https://gitlab.rtems.org">gitlab.rtems.org</a>. <a href="https://gitlab.rtems.org/-/sent_notifications/5-81l59icunlu2lwfmvb9nizz8t-1d/unsubscribe" target="_blank" rel="noopener noreferrer">Unsubscribe</a> from this thread · <a href="https://gitlab.rtems.org/-/profile/notifications" target="_blank" rel="noopener noreferrer" class="mng-notif-link">Manage all notifications</a> · <a href="https://gitlab.rtems.org/help" target="_blank" rel="noopener noreferrer" class="help-link">Help</a>
<span style="color: transparent; font-size: 0; display: none; overflow: hidden; opacity: 0; width: 0; height: 0; max-width: 0; max-height: 0;">
Notification message regarding https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1453 at 1787536248
</span>
<script type="application/ld+json">{"@context":"http://schema.org","@type":"EmailMessage","action":{"@type":"ViewAction","name":"View Merge request","url":"https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1453"}}</script>


</p>
</div>
</body>
</html>