提交 5d07188e 编写于 作者: B Bjorn Helgaas

PCI: xilinx: Add local struct device pointers

Use a local "struct device *dev" for brevity and consistency with other
drivers.  No functional change intended.
Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
上级 bdf53098
...@@ -140,10 +140,11 @@ static inline bool xilinx_pcie_link_is_up(struct xilinx_pcie_port *port) ...@@ -140,10 +140,11 @@ static inline bool xilinx_pcie_link_is_up(struct xilinx_pcie_port *port)
*/ */
static void xilinx_pcie_clear_err_interrupts(struct xilinx_pcie_port *port) static void xilinx_pcie_clear_err_interrupts(struct xilinx_pcie_port *port)
{ {
struct device *dev = port->dev;
unsigned long val = pcie_read(port, XILINX_PCIE_REG_RPEFR); unsigned long val = pcie_read(port, XILINX_PCIE_REG_RPEFR);
if (val & XILINX_PCIE_RPEFR_ERR_VALID) { if (val & XILINX_PCIE_RPEFR_ERR_VALID) {
dev_dbg(port->dev, "Requester ID %lu\n", dev_dbg(dev, "Requester ID %lu\n",
val & XILINX_PCIE_RPEFR_REQ_ID); val & XILINX_PCIE_RPEFR_REQ_ID);
pcie_write(port, XILINX_PCIE_RPEFR_ALL_MASK, pcie_write(port, XILINX_PCIE_RPEFR_ALL_MASK,
XILINX_PCIE_REG_RPEFR); XILINX_PCIE_REG_RPEFR);
...@@ -383,6 +384,7 @@ static const struct irq_domain_ops intx_domain_ops = { ...@@ -383,6 +384,7 @@ static const struct irq_domain_ops intx_domain_ops = {
static irqreturn_t xilinx_pcie_intr_handler(int irq, void *data) static irqreturn_t xilinx_pcie_intr_handler(int irq, void *data)
{ {
struct xilinx_pcie_port *port = (struct xilinx_pcie_port *)data; struct xilinx_pcie_port *port = (struct xilinx_pcie_port *)data;
struct device *dev = port->dev;
u32 val, mask, status, msi_data; u32 val, mask, status, msi_data;
/* Read interrupt decode and mask registers */ /* Read interrupt decode and mask registers */
...@@ -394,32 +396,32 @@ static irqreturn_t xilinx_pcie_intr_handler(int irq, void *data) ...@@ -394,32 +396,32 @@ static irqreturn_t xilinx_pcie_intr_handler(int irq, void *data)
return IRQ_NONE; return IRQ_NONE;
if (status & XILINX_PCIE_INTR_LINK_DOWN) if (status & XILINX_PCIE_INTR_LINK_DOWN)
dev_warn(port->dev, "Link Down\n"); dev_warn(dev, "Link Down\n");
if (status & XILINX_PCIE_INTR_ECRC_ERR) if (status & XILINX_PCIE_INTR_ECRC_ERR)
dev_warn(port->dev, "ECRC failed\n"); dev_warn(dev, "ECRC failed\n");
if (status & XILINX_PCIE_INTR_STR_ERR) if (status & XILINX_PCIE_INTR_STR_ERR)
dev_warn(port->dev, "Streaming error\n"); dev_warn(dev, "Streaming error\n");
if (status & XILINX_PCIE_INTR_HOT_RESET) if (status & XILINX_PCIE_INTR_HOT_RESET)
dev_info(port->dev, "Hot reset\n"); dev_info(dev, "Hot reset\n");
if (status & XILINX_PCIE_INTR_CFG_TIMEOUT) if (status & XILINX_PCIE_INTR_CFG_TIMEOUT)
dev_warn(port->dev, "ECAM access timeout\n"); dev_warn(dev, "ECAM access timeout\n");
if (status & XILINX_PCIE_INTR_CORRECTABLE) { if (status & XILINX_PCIE_INTR_CORRECTABLE) {
dev_warn(port->dev, "Correctable error message\n"); dev_warn(dev, "Correctable error message\n");
xilinx_pcie_clear_err_interrupts(port); xilinx_pcie_clear_err_interrupts(port);
} }
if (status & XILINX_PCIE_INTR_NONFATAL) { if (status & XILINX_PCIE_INTR_NONFATAL) {
dev_warn(port->dev, "Non fatal error message\n"); dev_warn(dev, "Non fatal error message\n");
xilinx_pcie_clear_err_interrupts(port); xilinx_pcie_clear_err_interrupts(port);
} }
if (status & XILINX_PCIE_INTR_FATAL) { if (status & XILINX_PCIE_INTR_FATAL) {
dev_warn(port->dev, "Fatal error message\n"); dev_warn(dev, "Fatal error message\n");
xilinx_pcie_clear_err_interrupts(port); xilinx_pcie_clear_err_interrupts(port);
} }
...@@ -429,7 +431,7 @@ static irqreturn_t xilinx_pcie_intr_handler(int irq, void *data) ...@@ -429,7 +431,7 @@ static irqreturn_t xilinx_pcie_intr_handler(int irq, void *data)
/* Check whether interrupt valid */ /* Check whether interrupt valid */
if (!(val & XILINX_PCIE_RPIFR1_INTR_VALID)) { if (!(val & XILINX_PCIE_RPIFR1_INTR_VALID)) {
dev_warn(port->dev, "RP Intr FIFO1 read error\n"); dev_warn(dev, "RP Intr FIFO1 read error\n");
goto error; goto error;
} }
...@@ -451,7 +453,7 @@ static irqreturn_t xilinx_pcie_intr_handler(int irq, void *data) ...@@ -451,7 +453,7 @@ static irqreturn_t xilinx_pcie_intr_handler(int irq, void *data)
val = pcie_read(port, XILINX_PCIE_REG_RPIFR1); val = pcie_read(port, XILINX_PCIE_REG_RPIFR1);
if (!(val & XILINX_PCIE_RPIFR1_INTR_VALID)) { if (!(val & XILINX_PCIE_RPIFR1_INTR_VALID)) {
dev_warn(port->dev, "RP Intr FIFO1 read error\n"); dev_warn(dev, "RP Intr FIFO1 read error\n");
goto error; goto error;
} }
...@@ -471,31 +473,31 @@ static irqreturn_t xilinx_pcie_intr_handler(int irq, void *data) ...@@ -471,31 +473,31 @@ static irqreturn_t xilinx_pcie_intr_handler(int irq, void *data)
} }
if (status & XILINX_PCIE_INTR_SLV_UNSUPP) if (status & XILINX_PCIE_INTR_SLV_UNSUPP)
dev_warn(port->dev, "Slave unsupported request\n"); dev_warn(dev, "Slave unsupported request\n");
if (status & XILINX_PCIE_INTR_SLV_UNEXP) if (status & XILINX_PCIE_INTR_SLV_UNEXP)
dev_warn(port->dev, "Slave unexpected completion\n"); dev_warn(dev, "Slave unexpected completion\n");
if (status & XILINX_PCIE_INTR_SLV_COMPL) if (status & XILINX_PCIE_INTR_SLV_COMPL)
dev_warn(port->dev, "Slave completion timeout\n"); dev_warn(dev, "Slave completion timeout\n");
if (status & XILINX_PCIE_INTR_SLV_ERRP) if (status & XILINX_PCIE_INTR_SLV_ERRP)
dev_warn(port->dev, "Slave Error Poison\n"); dev_warn(dev, "Slave Error Poison\n");
if (status & XILINX_PCIE_INTR_SLV_CMPABT) if (status & XILINX_PCIE_INTR_SLV_CMPABT)
dev_warn(port->dev, "Slave Completer Abort\n"); dev_warn(dev, "Slave Completer Abort\n");
if (status & XILINX_PCIE_INTR_SLV_ILLBUR) if (status & XILINX_PCIE_INTR_SLV_ILLBUR)
dev_warn(port->dev, "Slave Illegal Burst\n"); dev_warn(dev, "Slave Illegal Burst\n");
if (status & XILINX_PCIE_INTR_MST_DECERR) if (status & XILINX_PCIE_INTR_MST_DECERR)
dev_warn(port->dev, "Master decode error\n"); dev_warn(dev, "Master decode error\n");
if (status & XILINX_PCIE_INTR_MST_SLVERR) if (status & XILINX_PCIE_INTR_MST_SLVERR)
dev_warn(port->dev, "Master slave error\n"); dev_warn(dev, "Master slave error\n");
if (status & XILINX_PCIE_INTR_MST_ERRP) if (status & XILINX_PCIE_INTR_MST_ERRP)
dev_warn(port->dev, "Master error poison\n"); dev_warn(dev, "Master error poison\n");
error: error:
/* Clear the Interrupt Decode register */ /* Clear the Interrupt Decode register */
...@@ -554,10 +556,12 @@ static int xilinx_pcie_init_irq_domain(struct xilinx_pcie_port *port) ...@@ -554,10 +556,12 @@ static int xilinx_pcie_init_irq_domain(struct xilinx_pcie_port *port)
*/ */
static void xilinx_pcie_init_port(struct xilinx_pcie_port *port) static void xilinx_pcie_init_port(struct xilinx_pcie_port *port)
{ {
struct device *dev = port->dev;
if (xilinx_pcie_link_is_up(port)) if (xilinx_pcie_link_is_up(port))
dev_info(port->dev, "PCIe Link is UP\n"); dev_info(dev, "PCIe Link is UP\n");
else else
dev_info(port->dev, "PCIe Link is DOWN\n"); dev_info(dev, "PCIe Link is DOWN\n");
/* Disable all interrupts */ /* Disable all interrupts */
pcie_write(port, ~XILINX_PCIE_IDR_ALL_MASK, pcie_write(port, ~XILINX_PCIE_IDR_ALL_MASK,
...@@ -627,8 +631,8 @@ static int xilinx_pcie_parse_dt(struct xilinx_pcie_port *port) ...@@ -627,8 +631,8 @@ static int xilinx_pcie_parse_dt(struct xilinx_pcie_port *port)
*/ */
static int xilinx_pcie_probe(struct platform_device *pdev) static int xilinx_pcie_probe(struct platform_device *pdev)
{ {
struct xilinx_pcie_port *port;
struct device *dev = &pdev->dev; struct device *dev = &pdev->dev;
struct xilinx_pcie_port *port;
struct pci_bus *bus; struct pci_bus *bus;
int err; int err;
resource_size_t iobase = 0; resource_size_t iobase = 0;
...@@ -668,15 +672,14 @@ static int xilinx_pcie_probe(struct platform_device *pdev) ...@@ -668,15 +672,14 @@ static int xilinx_pcie_probe(struct platform_device *pdev)
if (err) if (err)
goto error; goto error;
bus = pci_create_root_bus(&pdev->dev, 0, bus = pci_create_root_bus(dev, 0, &xilinx_pcie_ops, port, &res);
&xilinx_pcie_ops, port, &res);
if (!bus) { if (!bus) {
err = -ENOMEM; err = -ENOMEM;
goto error; goto error;
} }
#ifdef CONFIG_PCI_MSI #ifdef CONFIG_PCI_MSI
xilinx_pcie_msi_chip.dev = port->dev; xilinx_pcie_msi_chip.dev = dev;
bus->msi = &xilinx_pcie_msi_chip; bus->msi = &xilinx_pcie_msi_chip;
#endif #endif
pci_scan_child_bus(bus); pci_scan_child_bus(bus);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册