| .. | .. |
|---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-only |
|---|
| 1 | 2 | /* |
|---|
| 2 | 3 | * AMD Promontory GPIO driver |
|---|
| 3 | 4 | * |
|---|
| 4 | 5 | * Copyright (C) 2015 ASMedia Technology Inc. |
|---|
| 5 | 6 | * Author: YD Tseng <yd_tseng@asmedia.com.tw> |
|---|
| 6 | | - * |
|---|
| 7 | | - * This program is free software; you can redistribute it and/or modify |
|---|
| 8 | | - * it under the terms of the GNU General Public License version 2 as |
|---|
| 9 | | - * published by the Free Software Foundation. |
|---|
| 10 | 7 | */ |
|---|
| 11 | 8 | |
|---|
| 12 | 9 | #include <linux/kernel.h> |
|---|
| .. | .. |
|---|
| 78 | 75 | struct acpi_device *acpi_dev; |
|---|
| 79 | 76 | acpi_handle handle = ACPI_HANDLE(dev); |
|---|
| 80 | 77 | struct pt_gpio_chip *pt_gpio; |
|---|
| 81 | | - struct resource *res_mem; |
|---|
| 82 | 78 | int ret = 0; |
|---|
| 83 | 79 | |
|---|
| 84 | 80 | if (acpi_bus_get_device(handle, &acpi_dev)) { |
|---|
| .. | .. |
|---|
| 90 | 86 | if (!pt_gpio) |
|---|
| 91 | 87 | return -ENOMEM; |
|---|
| 92 | 88 | |
|---|
| 93 | | - res_mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
|---|
| 94 | | - if (!res_mem) { |
|---|
| 95 | | - dev_err(&pdev->dev, "Failed to get MMIO resource for PT GPIO.\n"); |
|---|
| 96 | | - return -EINVAL; |
|---|
| 97 | | - } |
|---|
| 98 | | - pt_gpio->reg_base = devm_ioremap_resource(dev, res_mem); |
|---|
| 89 | + pt_gpio->reg_base = devm_platform_ioremap_resource(pdev, 0); |
|---|
| 99 | 90 | if (IS_ERR(pt_gpio->reg_base)) { |
|---|
| 100 | | - dev_err(&pdev->dev, "Failed to map MMIO resource for PT GPIO.\n"); |
|---|
| 91 | + dev_err(dev, "Failed to map MMIO resource for PT GPIO.\n"); |
|---|
| 101 | 92 | return PTR_ERR(pt_gpio->reg_base); |
|---|
| 102 | 93 | } |
|---|
| 103 | 94 | |
|---|
| .. | .. |
|---|
| 107 | 98 | pt_gpio->reg_base + PT_DIRECTION_REG, NULL, |
|---|
| 108 | 99 | BGPIOF_READ_OUTPUT_REG_SET); |
|---|
| 109 | 100 | if (ret) { |
|---|
| 110 | | - dev_err(&pdev->dev, "bgpio_init failed\n"); |
|---|
| 101 | + dev_err(dev, "bgpio_init failed\n"); |
|---|
| 111 | 102 | return ret; |
|---|
| 112 | 103 | } |
|---|
| 113 | 104 | |
|---|
| .. | .. |
|---|
| 116 | 107 | pt_gpio->gc.free = pt_gpio_free; |
|---|
| 117 | 108 | pt_gpio->gc.ngpio = PT_TOTAL_GPIO; |
|---|
| 118 | 109 | #if defined(CONFIG_OF_GPIO) |
|---|
| 119 | | - pt_gpio->gc.of_node = pdev->dev.of_node; |
|---|
| 110 | + pt_gpio->gc.of_node = dev->of_node; |
|---|
| 120 | 111 | #endif |
|---|
| 121 | 112 | ret = gpiochip_add_data(&pt_gpio->gc, pt_gpio); |
|---|
| 122 | 113 | if (ret) { |
|---|
| 123 | | - dev_err(&pdev->dev, "Failed to register GPIO lib\n"); |
|---|
| 114 | + dev_err(dev, "Failed to register GPIO lib\n"); |
|---|
| 124 | 115 | return ret; |
|---|
| 125 | 116 | } |
|---|
| 126 | 117 | |
|---|
| .. | .. |
|---|
| 130 | 121 | writel(0, pt_gpio->reg_base + PT_SYNC_REG); |
|---|
| 131 | 122 | writel(0, pt_gpio->reg_base + PT_CLOCKRATE_REG); |
|---|
| 132 | 123 | |
|---|
| 133 | | - dev_dbg(&pdev->dev, "PT GPIO driver loaded\n"); |
|---|
| 124 | + dev_dbg(dev, "PT GPIO driver loaded\n"); |
|---|
| 134 | 125 | return ret; |
|---|
| 135 | 126 | } |
|---|
| 136 | 127 | |
|---|