projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ARM64: DTS: Fix Firefly board audio driver
[firefly-linux-kernel-4.4.55.git]
/
drivers
/
nvme
/
host
/
pci.c
diff --git
a/drivers/nvme/host/pci.c
b/drivers/nvme/host/pci.c
index c851bc53831c1267c0cccab074e5cd141b1d5825..4cbc1807edfc3175417051eea08fdc66a3a6697d 100644
(file)
--- a/
drivers/nvme/host/pci.c
+++ b/
drivers/nvme/host/pci.c
@@
-1633,10
+1633,15
@@
static int nvme_wait_ready(struct nvme_dev *dev, u64 cap, bool enabled)
*/
static int nvme_disable_ctrl(struct nvme_dev *dev, u64 cap)
{
*/
static int nvme_disable_ctrl(struct nvme_dev *dev, u64 cap)
{
+ struct pci_dev *pdev = to_pci_dev(dev->dev);
+
dev->ctrl_config &= ~NVME_CC_SHN_MASK;
dev->ctrl_config &= ~NVME_CC_ENABLE;
writel(dev->ctrl_config, &dev->bar->cc);
dev->ctrl_config &= ~NVME_CC_SHN_MASK;
dev->ctrl_config &= ~NVME_CC_ENABLE;
writel(dev->ctrl_config, &dev->bar->cc);
+ if (pdev->vendor == 0x1c58 && pdev->device == 0x0003)
+ msleep(NVME_QUIRK_DELAY_AMOUNT);
+
return nvme_wait_ready(dev, cap, false);
}
return nvme_wait_ready(dev, cap, false);
}
@@
-2217,8
+2222,8
@@
static int nvme_kthread(void *data)
csts & NVME_CSTS_CFS) {
if (!__nvme_reset(dev)) {
dev_warn(dev->dev,
csts & NVME_CSTS_CFS) {
if (!__nvme_reset(dev)) {
dev_warn(dev->dev,
- "Failed status: %x, reset controller\n",
-
readl(&dev->bar->csts)
);
+ "Failed status:
0x
%x, reset controller\n",
+
csts
);
}
continue;
}
}
continue;
}
@@
-2290,6
+2295,13
@@
static void nvme_alloc_ns(struct nvme_dev *dev, unsigned nsid)
disk->queue = ns->queue;
disk->driverfs_dev = dev->device;
disk->flags = GENHD_FL_EXT_DEVT;
disk->queue = ns->queue;
disk->driverfs_dev = dev->device;
disk->flags = GENHD_FL_EXT_DEVT;
+#ifdef CONFIG_ARCH_ROCKCHIP
+ disk->is_rk_disk = true;
+#else
+ disk->is_rk_disk = false;
+#endif
+
+ disk->is_rk_disk = false;
sprintf(disk->disk_name, "nvme%dn%d", dev->instance, nsid);
/*
sprintf(disk->disk_name, "nvme%dn%d", dev->instance, nsid);
/*