static int __rmnet_open(struct net_device *dev) { int r; void *pil; struct rmnet_private *p = netdev_priv(dev); mutex_lock(&p->pil_lock); if (!p->pil) { pil = msm_rmnet_load_modem(dev); if (IS_ERR(pil)) { mutex_unlock(&p->pil_lock); return PTR_ERR(pil); } p->pil = pil; } mutex_unlock(&p->pil_lock); if (!p->ch) { r = smd_open(p->chname, &p->ch, dev, smd_net_notify); if (r < 0) return -ENODEV; } smd_disable_read_intr(p->ch); return 0; }
static int __rmnet_open(struct net_device *dev) { int r; void *pil; struct rmnet_private *p = netdev_priv(dev); /* printk("%s() ++\n", __func__); */ mutex_lock(&p->pil_lock); if (!p->pil) { pil = msm_rmnet_load_modem(dev); if (IS_ERR(pil)) { mutex_unlock(&p->pil_lock); return PTR_ERR(pil); } p->pil = pil; } mutex_unlock(&p->pil_lock); if (!p->ch) { r = smd_open(p->chname, &p->ch, dev, smd_net_notify); if (r < 0) return -ENODEV; } /* printk("%s() --\n", __func__); */ return 0; }