<p>laforge <strong>submitted</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/16290">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Jenkins Builder: Verified
  laforge: Looks good to me, approved

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">cuart: allow getting the icc baud rate and clock freq<br><br>Change-Id: I577907e6c60582a80666d43b17c20de4e03cc8df<br>---<br>M ccid_common/cuart.h<br>M sysmoOCTSIM/cuart_driver_asf4_usart_async.c<br>2 files changed, 12 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/ccid_common/cuart.h b/ccid_common/cuart.h</span><br><span>index c72b51c..6a782db 100644</span><br><span>--- a/ccid_common/cuart.h</span><br><span>+++ b/ccid_common/cuart.h</span><br><span>@@ -30,6 +30,8 @@</span><br><span>    CUART_CTL_RST,          /* enable/disable ICC reset */</span><br><span>       CUART_CTL_WTIME,        /* set the waiting time (in etu) */</span><br><span>  CUART_CTL_SET_FD,</span><br><span style="color: hsl(120, 100%, 40%);">+     CUART_CTL_GET_BAUDRATE,</span><br><span style="color: hsl(120, 100%, 40%);">+       CUART_CTL_GET_CLOCK_FREQ,</span><br><span> };</span><br><span> </span><br><span> struct card_uart;</span><br><span>@@ -100,6 +102,7 @@</span><br><span>                       uint8_t slot_nr;</span><br><span>                     /* in us, required, no delay breaks _rx_ */</span><br><span>                  uint32_t extrawait_after_rx;</span><br><span style="color: hsl(120, 100%, 40%);">+                  uint32_t current_baudrate;</span><br><span>           } asf4;</span><br><span>      } u;</span><br><span> };</span><br><span>diff --git a/sysmoOCTSIM/cuart_driver_asf4_usart_async.c b/sysmoOCTSIM/cuart_driver_asf4_usart_async.c</span><br><span>index db3dc79..f12ed73 100644</span><br><span>--- a/sysmoOCTSIM/cuart_driver_asf4_usart_async.c</span><br><span>+++ b/sysmoOCTSIM/cuart_driver_asf4_usart_async.c</span><br><span>@@ -203,6 +203,9 @@</span><br><span>    if (NULL == slot) {</span><br><span>          return false;</span><br><span>        }</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+   // update cached values</span><br><span style="color: hsl(120, 100%, 40%);">+       cuart->u.asf4.current_baudrate = baudrate;</span><br><span>        printf("(%u) switching SERCOM clock to GCLK%u (freq = %lu kHz) and baud rate to %lu bps (baud = %u)\r\n", slotnr, (best + 1) * 2, (uint32_t)(round(sercom_glck_freqs[best] / 1000)), baudrate, bauds[best]);</span><br><span>       while (!usart_async_is_tx_empty(slot)); // wait for transmission to complete (WARNING no timeout)</span><br><span>    usart_async_disable(slot); // disable SERCOM peripheral</span><br><span>@@ -404,6 +407,12 @@</span><br><span>               uint32_t baudrate = (20e6/divider)/arg;</span><br><span>              cuart->u.asf4.extrawait_after_rx = 1./baudrate * 1000 * 1000;</span><br><span>             slot_set_baudrate(cuart->u.asf4.slot_nr, baudrate);</span><br><span style="color: hsl(120, 100%, 40%);">+        case CUART_CTL_GET_BAUDRATE:</span><br><span style="color: hsl(120, 100%, 40%);">+          return cuart->u.asf4.current_baudrate;</span><br><span style="color: hsl(120, 100%, 40%);">+             break;</span><br><span style="color: hsl(120, 100%, 40%);">+        case CUART_CTL_GET_CLOCK_FREQ:</span><br><span style="color: hsl(120, 100%, 40%);">+                ncn8025_get(cuart->u.asf4.slot_nr, &settings);</span><br><span style="color: hsl(120, 100%, 40%);">+         return 20e6 / ncn8025_div_val[settings.clkdiv];</span><br><span>              break;</span><br><span>       default:</span><br><span>             return -EINVAL;</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/16290">change 16290</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/16290"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-ccid-firmware </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I577907e6c60582a80666d43b17c20de4e03cc8df </div>
<div style="display:none"> Gerrit-Change-Number: 16290 </div>
<div style="display:none"> Gerrit-PatchSet: 4 </div>
<div style="display:none"> Gerrit-Owner: Hoernchen <ewild@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>