| .. | .. |
|---|
| 1382 | 1382 | *msg++ = ','; |
|---|
| 1383 | 1383 | len--; |
|---|
| 1384 | 1384 | } |
|---|
| 1385 | | - BUG_ON(!msp->sz); |
|---|
| 1386 | 1385 | /* msp->sz counts the nul */ |
|---|
| 1387 | 1386 | took = min_t(size_t, msp->sz - (size_t)1, len); |
|---|
| 1388 | 1387 | memcpy(msg, msp->msg, took); |
|---|
| .. | .. |
|---|
| 1734 | 1733 | return; |
|---|
| 1735 | 1734 | } |
|---|
| 1736 | 1735 | |
|---|
| 1737 | | -static void qib_error_tasklet(unsigned long data) |
|---|
| 1736 | +static void qib_error_tasklet(struct tasklet_struct *t) |
|---|
| 1738 | 1737 | { |
|---|
| 1739 | | - struct qib_devdata *dd = (struct qib_devdata *)data; |
|---|
| 1738 | + struct qib_devdata *dd = from_tasklet(dd, t, error_tasklet); |
|---|
| 1740 | 1739 | |
|---|
| 1741 | 1740 | handle_7322_errors(dd); |
|---|
| 1742 | 1741 | qib_write_kreg(dd, kr_errmask, dd->cspec->errormask); |
|---|
| .. | .. |
|---|
| 2376 | 2375 | struct qib_devdata *dd = ppd->dd; |
|---|
| 2377 | 2376 | u64 val, guid, ibc; |
|---|
| 2378 | 2377 | unsigned long flags; |
|---|
| 2379 | | - int ret = 0; |
|---|
| 2380 | 2378 | |
|---|
| 2381 | 2379 | /* |
|---|
| 2382 | 2380 | * SerDes model not in Pd, but still need to |
|---|
| .. | .. |
|---|
| 2511 | 2509 | val | ERR_MASK_N(IBStatusChanged)); |
|---|
| 2512 | 2510 | |
|---|
| 2513 | 2511 | /* Always zero until we start messing with SerDes for real */ |
|---|
| 2514 | | - return ret; |
|---|
| 2512 | + return 0; |
|---|
| 2515 | 2513 | } |
|---|
| 2516 | 2514 | |
|---|
| 2517 | 2515 | /** |
|---|
| .. | .. |
|---|
| 3539 | 3537 | for (i = 0; i < ARRAY_SIZE(redirect); i++) |
|---|
| 3540 | 3538 | qib_write_kreg(dd, kr_intredirect + i, redirect[i]); |
|---|
| 3541 | 3539 | dd->cspec->main_int_mask = mask; |
|---|
| 3542 | | - tasklet_init(&dd->error_tasklet, qib_error_tasklet, |
|---|
| 3543 | | - (unsigned long)dd); |
|---|
| 3540 | + tasklet_setup(&dd->error_tasklet, qib_error_tasklet); |
|---|
| 3544 | 3541 | } |
|---|
| 3545 | 3542 | |
|---|
| 3546 | 3543 | /** |
|---|
| .. | .. |
|---|
| 3794 | 3791 | pa = chippa; |
|---|
| 3795 | 3792 | } |
|---|
| 3796 | 3793 | writeq(pa, tidptr); |
|---|
| 3797 | | - mmiowb(); |
|---|
| 3798 | 3794 | } |
|---|
| 3799 | 3795 | |
|---|
| 3800 | 3796 | /** |
|---|
| .. | .. |
|---|
| 4441 | 4437 | adjust_rcv_timeout(rcd, npkts); |
|---|
| 4442 | 4438 | if (updegr) |
|---|
| 4443 | 4439 | qib_write_ureg(rcd->dd, ur_rcvegrindexhead, egrhd, rcd->ctxt); |
|---|
| 4444 | | - mmiowb(); |
|---|
| 4445 | 4440 | qib_write_ureg(rcd->dd, ur_rcvhdrhead, hd, rcd->ctxt); |
|---|
| 4446 | 4441 | qib_write_ureg(rcd->dd, ur_rcvhdrhead, hd, rcd->ctxt); |
|---|
| 4447 | | - mmiowb(); |
|---|
| 4448 | 4442 | } |
|---|
| 4449 | 4443 | |
|---|
| 4450 | 4444 | static u32 qib_7322_hdrqempty(struct qib_ctxtdata *rcd) |
|---|
| .. | .. |
|---|
| 5513 | 5507 | state = IB_PORT_ARMED; |
|---|
| 5514 | 5508 | break; |
|---|
| 5515 | 5509 | case IB_7322_L_STATE_ACTIVE: |
|---|
| 5516 | | - /* fall through */ |
|---|
| 5517 | 5510 | case IB_7322_L_STATE_ACT_DEFER: |
|---|
| 5518 | 5511 | state = IB_PORT_ACTIVE; |
|---|
| 5519 | 5512 | break; |
|---|
| 5520 | | - default: /* fall through */ |
|---|
| 5513 | + default: |
|---|
| 5514 | + fallthrough; |
|---|
| 5521 | 5515 | case IB_7322_L_STATE_DOWN: |
|---|
| 5522 | 5516 | state = IB_PORT_DOWN; |
|---|
| 5523 | 5517 | break; |
|---|
| .. | .. |
|---|
| 6141 | 6135 | static int setup_txselect(const char *str, const struct kernel_param *kp) |
|---|
| 6142 | 6136 | { |
|---|
| 6143 | 6137 | struct qib_devdata *dd; |
|---|
| 6144 | | - unsigned long val; |
|---|
| 6138 | + unsigned long index, val; |
|---|
| 6145 | 6139 | char *n; |
|---|
| 6146 | 6140 | |
|---|
| 6147 | 6141 | if (strlen(str) >= ARRAY_SIZE(txselect_list)) { |
|---|
| .. | .. |
|---|
| 6157 | 6151 | } |
|---|
| 6158 | 6152 | strncpy(txselect_list, str, ARRAY_SIZE(txselect_list) - 1); |
|---|
| 6159 | 6153 | |
|---|
| 6160 | | - list_for_each_entry(dd, &qib_dev_list, list) |
|---|
| 6154 | + xa_for_each(&qib_dev_table, index, dd) |
|---|
| 6161 | 6155 | if (dd->deviceid == PCI_DEVICE_ID_QLOGIC_IB_7322) |
|---|
| 6162 | 6156 | set_no_qsfp_atten(dd, 1); |
|---|
| 6163 | 6157 | return 0; |
|---|
| .. | .. |
|---|
| 6538 | 6532 | "Invalid num_vls %u, using 4 VLs\n", |
|---|
| 6539 | 6533 | qib_num_cfg_vls); |
|---|
| 6540 | 6534 | qib_num_cfg_vls = 4; |
|---|
| 6541 | | - /* fall through */ |
|---|
| 6535 | + fallthrough; |
|---|
| 6542 | 6536 | case 4: |
|---|
| 6543 | 6537 | ppd->vls_supported = IB_VL_VL0_3; |
|---|
| 6544 | 6538 | break; |
|---|
| .. | .. |
|---|
| 6599 | 6593 | |
|---|
| 6600 | 6594 | /* we always allocate at least 2048 bytes for eager buffers */ |
|---|
| 6601 | 6595 | dd->rcvegrbufsize = max(mtu, 2048); |
|---|
| 6602 | | - BUG_ON(!is_power_of_2(dd->rcvegrbufsize)); |
|---|
| 6603 | 6596 | dd->rcvegrbufsize_shift = ilog2(dd->rcvegrbufsize); |
|---|
| 6604 | 6597 | |
|---|
| 6605 | 6598 | qib_7322_tidtemplate(dd); |
|---|
| .. | .. |
|---|
| 6635 | 6628 | /* vl15 buffers start just after the 4k buffers */ |
|---|
| 6636 | 6629 | vl15off = dd->physaddr + (dd->piobufbase >> 32) + |
|---|
| 6637 | 6630 | dd->piobcnt4k * dd->align4k; |
|---|
| 6638 | | - dd->piovl15base = ioremap_nocache(vl15off, |
|---|
| 6631 | + dd->piovl15base = ioremap(vl15off, |
|---|
| 6639 | 6632 | NUM_VL15_BUFS * dd->align4k); |
|---|
| 6640 | 6633 | if (!dd->piovl15base) { |
|---|
| 6641 | 6634 | ret = -ENOMEM; |
|---|
| .. | .. |
|---|
| 6880 | 6873 | struct qib_devdata *dd = ppd->dd; |
|---|
| 6881 | 6874 | unsigned lastbuf, erstbuf; |
|---|
| 6882 | 6875 | u64 senddmabufmask[3] = { 0 }; |
|---|
| 6883 | | - int n, ret = 0; |
|---|
| 6876 | + int n; |
|---|
| 6884 | 6877 | |
|---|
| 6885 | 6878 | qib_write_kreg_port(ppd, krp_senddmabase, ppd->sdma_descq_phys); |
|---|
| 6886 | 6879 | qib_sdma_7322_setlengen(ppd); |
|---|
| .. | .. |
|---|
| 6904 | 6897 | unsigned word = erstbuf / BITS_PER_LONG; |
|---|
| 6905 | 6898 | unsigned bit = erstbuf & (BITS_PER_LONG - 1); |
|---|
| 6906 | 6899 | |
|---|
| 6907 | | - BUG_ON(word >= 3); |
|---|
| 6908 | 6900 | senddmabufmask[word] |= 1ULL << bit; |
|---|
| 6909 | 6901 | } |
|---|
| 6910 | 6902 | qib_write_kreg_port(ppd, krp_senddmabufmask0, senddmabufmask[0]); |
|---|
| 6911 | 6903 | qib_write_kreg_port(ppd, krp_senddmabufmask1, senddmabufmask[1]); |
|---|
| 6912 | 6904 | qib_write_kreg_port(ppd, krp_senddmabufmask2, senddmabufmask[2]); |
|---|
| 6913 | | - return ret; |
|---|
| 6905 | + return 0; |
|---|
| 6914 | 6906 | } |
|---|
| 6915 | 6907 | |
|---|
| 6916 | 6908 | /* sdma_lock must be held */ |
|---|