diff options
Diffstat (limited to 'drivers/infiniband/hw/qib/qib_qsfp.c')
| -rw-r--r-- | drivers/infiniband/hw/qib/qib_qsfp.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/qib/qib_qsfp.c b/drivers/infiniband/hw/qib/qib_qsfp.c index 98a2c251b92a..5e27f76805e2 100644 --- a/drivers/infiniband/hw/qib/qib_qsfp.c +++ b/drivers/infiniband/hw/qib/qib_qsfp.c | |||
| @@ -99,6 +99,7 @@ static int qsfp_read(struct qib_pportdata *ppd, int addr, void *bp, int len) | |||
| 99 | while (cnt < len) { | 99 | while (cnt < len) { |
| 100 | unsigned in_page; | 100 | unsigned in_page; |
| 101 | int wlen = len - cnt; | 101 | int wlen = len - cnt; |
| 102 | |||
| 102 | in_page = addr % QSFP_PAGESIZE; | 103 | in_page = addr % QSFP_PAGESIZE; |
| 103 | if ((in_page + wlen) > QSFP_PAGESIZE) | 104 | if ((in_page + wlen) > QSFP_PAGESIZE) |
| 104 | wlen = QSFP_PAGESIZE - in_page; | 105 | wlen = QSFP_PAGESIZE - in_page; |
| @@ -206,6 +207,7 @@ static int qib_qsfp_write(struct qib_pportdata *ppd, int addr, void *bp, | |||
| 206 | while (cnt < len) { | 207 | while (cnt < len) { |
| 207 | unsigned in_page; | 208 | unsigned in_page; |
| 208 | int wlen = len - cnt; | 209 | int wlen = len - cnt; |
| 210 | |||
| 209 | in_page = addr % QSFP_PAGESIZE; | 211 | in_page = addr % QSFP_PAGESIZE; |
| 210 | if ((in_page + wlen) > QSFP_PAGESIZE) | 212 | if ((in_page + wlen) > QSFP_PAGESIZE) |
| 211 | wlen = QSFP_PAGESIZE - in_page; | 213 | wlen = QSFP_PAGESIZE - in_page; |
| @@ -296,6 +298,7 @@ int qib_refresh_qsfp_cache(struct qib_pportdata *ppd, struct qib_qsfp_cache *cp) | |||
| 296 | * set the page to zero, Even if it already appears to be zero. | 298 | * set the page to zero, Even if it already appears to be zero. |
| 297 | */ | 299 | */ |
| 298 | u8 poke = 0; | 300 | u8 poke = 0; |
| 301 | |||
| 299 | ret = qib_qsfp_write(ppd, 127, &poke, 1); | 302 | ret = qib_qsfp_write(ppd, 127, &poke, 1); |
| 300 | udelay(50); | 303 | udelay(50); |
| 301 | if (ret != 1) { | 304 | if (ret != 1) { |
| @@ -539,6 +542,7 @@ int qib_qsfp_dump(struct qib_pportdata *ppd, char *buf, int len) | |||
| 539 | 542 | ||
| 540 | while (bidx < QSFP_DEFAULT_HDR_CNT) { | 543 | while (bidx < QSFP_DEFAULT_HDR_CNT) { |
| 541 | int iidx; | 544 | int iidx; |
| 545 | |||
| 542 | ret = qsfp_read(ppd, bidx, bin_buff, QSFP_DUMP_CHUNK); | 546 | ret = qsfp_read(ppd, bidx, bin_buff, QSFP_DUMP_CHUNK); |
| 543 | if (ret < 0) | 547 | if (ret < 0) |
| 544 | goto bail; | 548 | goto bail; |
