T:    git git://linuxtv.org/media_tree.git
  F:    drivers/media/radio/radio-maxiradio*
  
 +MAXLINEAR ETHERNET PHY DRIVER
 +M:    Xu Liang <lxu@maxlinear.com>
 +L:    netdev@vger.kernel.org
 +S:    Supported
 +F:    drivers/net/phy/mxl-gpy.c
 +
+ MCAB MICROCHIP CAN BUS ANALYZER TOOL DRIVER
+ R:    Yasushi SHOJI <yashi@spacecubics.com>
+ L:    linux-can@vger.kernel.org
+ S:    Maintained
+ F:    drivers/net/can/usb/mcba_usb.c
+ 
  MCAN MMIO DEVICE DRIVER
  M:    Chandrasekar Ramakrishnan <rcsekar@samsung.com>
  L:    linux-can@vger.kernel.org
 
   * @edl: emergency download mode firmware path (if any)
   * @bar_num: PCI base address register to use for MHI MMIO register space
   * @dma_data_width: DMA transfer word size (32 or 64 bits)
 + * @mru_default: default MRU size for MBIM network packets
+  * @sideband_wake: Devices using dedicated sideband GPIO for wakeup instead
+  *               of inband wake support (such as sdx24)
   */
  struct mhi_pci_dev_info {
        const struct mhi_controller_config *config;
        const char *edl;
        unsigned int bar_num;
        unsigned int dma_data_width;
 +      unsigned int mru_default;
+       bool sideband_wake;
  };
  
  #define MHI_CHANNEL_CONFIG_UL(ch_num, ch_name, el_count, ev_ring) \
        .config = &modem_qcom_v1_mhiv_config,
        .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
        .dma_data_width = 32,
-       .mru_default = 32768
++      .mru_default = 32768,
+       .sideband_wake = false,
  };
  
  static const struct mhi_pci_dev_info mhi_qcom_sdx24_info = {
        mhi_cntrl->status_cb = mhi_pci_status_cb;
        mhi_cntrl->runtime_get = mhi_pci_runtime_get;
        mhi_cntrl->runtime_put = mhi_pci_runtime_put;
-       mhi_cntrl->wake_get = mhi_pci_wake_get_nop;
-       mhi_cntrl->wake_put = mhi_pci_wake_put_nop;
-       mhi_cntrl->wake_toggle = mhi_pci_wake_toggle_nop;
 +      mhi_cntrl->mru = info->mru_default;
  
+       if (info->sideband_wake) {
+               mhi_cntrl->wake_get = mhi_pci_wake_get_nop;
+               mhi_cntrl->wake_put = mhi_pci_wake_put_nop;
+               mhi_cntrl->wake_toggle = mhi_pci_wake_toggle_nop;
+       }
+ 
        err = mhi_pci_claim(mhi_cntrl, info->bar_num, DMA_BIT_MASK(info->dma_data_width));
        if (err)
                return err;
 
                /* Make sure fw_reset_state is 0 before clearing the flag */
                smp_mb__before_atomic();
                clear_bit(BNXT_STATE_IN_FW_RESET, &bp->state);
-               bnxt_ulp_start(bp, rc);
-               if (!rc)
-                       bnxt_reenable_sriov(bp);
+               bnxt_ulp_start(bp, 0);
+               bnxt_reenable_sriov(bp);
                bnxt_vf_reps_alloc(bp);
                bnxt_vf_reps_open(bp);
 +              bnxt_ptp_reapply_pps(bp);
                bnxt_dl_health_recovery_done(bp);
                bnxt_dl_health_status_update(bp, true);
                rtnl_unlock();
 
  
        tfm = crypto_alloc_shash("sha1", 0, 0);
        if (IS_ERR(tfm)) {
 -              ret = PTR_ERR(tfm);
                dev_err(&fw_info->ndev->nfc_dev->dev,
-                       "Cannot allocate shash (code=%d)\n", ret);
+                       "Cannot allocate shash (code=%pe)\n", tfm);
 -              goto out;
 +              return PTR_ERR(tfm);
        }
  
        ret = crypto_shash_tfm_digest(tfm, fw->image, image_size, hash_data);