Commit 691fe425 authored by Aurelio Colosimo's avatar Aurelio Colosimo

wr_calibrating_poll: delta parameter type set to 32bit

since ep_get_deltas function, implemented in arch-spec/dev/endpoint.c,
uses 32bit deltas, 32bit parameters when calling it too. Without
this patch, I experienced a bug in delta values
parent 321d36b1
......@@ -10,7 +10,7 @@
int wr_calibration(struct pp_instance *ppi, unsigned char *pkt, int plen)
{
int e = 0;
uint64_t delta;
uint32_t delta;
if (ppi->is_new_state) {
DSPOR(ppi)->wrPortState = WRS_CALIBRATION;
......@@ -51,9 +51,9 @@ int wr_calibration(struct pp_instance *ppi, unsigned char *pkt, int plen)
if (wr_calibrating_poll(ppi, WR_HW_CALIB_TX, &delta) ==
WR_HW_CALIB_READY) {
DSPOR(ppi)->deltaTx.scaledPicoseconds.msb =
0xFFFFFFFF & (delta >> 16);
0xFFFFFFFF & (((uint64_t)delta) >> 16);
DSPOR(ppi)->deltaTx.scaledPicoseconds.lsb =
0xFFFFFFFF & (delta << 16);
0xFFFFFFFF & (((uint64_t)delta) << 16);
PP_PRINTF("Tx=>>scaledPicoseconds.msb = 0x%x\n",
DSPOR(ppi)->deltaTx.scaledPicoseconds.msb);
PP_PRINTF("Tx=>>scaledPicoseconds.lsb = 0x%x\n",
......@@ -113,7 +113,6 @@ int wr_calibration(struct pp_instance *ppi, unsigned char *pkt, int plen)
DSPOR(ppi)->wrPortState = WRS_CALIBRATION_8;
else
break;
case WRS_CALIBRATION_8:
/* send deltas to the other port and go to the next state */
e = msg_issue_wrsig(ppi, CALIBRATED);
......
......@@ -34,10 +34,9 @@ int wr_locking_enable(struct pp_instance *ppi);
int wr_locking_poll(struct pp_instance *ppi);
int wr_locking_disable(struct pp_instance *ppi);
int wr_calibrating_disable(struct pp_instance *ppi, int txrx);
int wr_calibrating_enable(struct pp_instance *ppi, int txrx);
int wr_calibrating_poll(struct pp_instance *ppi, int txrx, uint64_t *delta);
int wr_calibrating_poll(struct pp_instance *ppi, int txrx, uint32_t *delta);
int wr_calibration_pattern_enable(struct pp_instance *ppi,
unsigned int calibrationPeriod, unsigned int calibrationPattern,
unsigned int calibrationPatternLen);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment