<!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=US-ASCII" 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: rgba(255,255,255,.01) 0 0 1px;
}
body {
font-family: var(--default-regular-font, "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: rgba(255,255,255,.01) 0 0 1px; font-family: var(--default-regular-font, "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: #737278;">
<a href="https://gitlab.rtems.org/opticron">Kinsey Moore</a> created an issue: <a href="https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5054">#5054</a>
</p>
<p>
Assignee: Kinsey Moore
</p>
<div class="md" style="color: #333238; word-wrap: break-word;">
<h2 dir="auto" style="font-size: 1.5em; font-weight: 600; padding-bottom: .3em; border-bottom-width: 1px; border-bottom-color: #bfbfc3; border-bottom-style: solid; color: #333238; margin: 0 0 16px;" align="initial">
<a href="#summary" aria-hidden="true" class="anchor" id="user-content-summary" style="margin-top: 0; float: left; margin-left: -20px; text-decoration: none; outline: none;"></a>Summary</h2>
<p dir="auto" style="color: #333238; margin: 0 0 16px;" align="initial">The XQspiPsu driver for Xilinx platforms is used underneath the NOR layer that was also taken from the Xilinx embeddedsw repository. Unlike the driver, the NOR layer (xqspipsu-flash-helper.c) was not in a state to be used directly and so was imported and significantly modified. Even so, it needs further modification and cleanup since it uses several global variables that need to be handled on a per-instance basis.</p>
<p dir="auto" style="color: #333238; margin: 0 0 16px;" align="initial">Unfortunately, the XQspiPsu driver is directly imported code and so should not be modified to hold data for the NOR layer. This means that the NOR layer's interface needs to be modified to take a configuration/reporting struct that holds the XQspiPsu instance instead of passing that instance in directly for all these function calls.</p>
<p dir="auto" style="color: #333238; margin: 0 0 16px;" align="initial">In addition, only the DMA engine's DONE interrupt is enabled and handled which leaves errors presenting as an infinite hang since the interrupt to signal it never occurs or with <a href="https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/90" data-reference-type="merge_request" data-original="!90" data-link="false" data-link-reference="false" data-project="26" data-merge-request="173" data-project-path="rtems/rtos/rtems" data-iid="90" data-container="body" data-placement="top" title="bsps/xqspipsu: Add timeouts to NOR transfers" class="gfm gfm-merge_request" style="margin-top: 0;">!90</a> it will instead timeout and return an error as the only way to signal a failed transfer. This also needs to be rectified and could be handled by either multiple event types or an error state variable being introduced into the suggested NOR configuration/reporting struct.</p>
<p dir="auto" style="color: #333238; margin: 0;" align="initial">It would also be convenient to be able to configure the NOR error timeout which is currently hard-set at 5 seconds.</p>
</div>

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

<br>
<a href="https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5054">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/16d25a22d46af02ac60085ba79700b25/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>
<script type="application/ld+json">{"@context":"http://schema.org","@type":"EmailMessage","action":{"@type":"ViewAction","name":"View Issue","url":"https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5054"}}</script>


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