forked from Minki/linux
i2c: mlxbf: remove device tree support
BlueField customers have to use the BlueField firmware with UEFI ACPI tables so there is no need to have device tree support in the i2c-mlxbf.c driver. Remove the device tree binding documentation as well. Signed-off-by: Asmaa Mnebhi <asmaa@nvidia.com> Reviewed-by: Khalil Blaiech <kblaiech@nvidia.com> Signed-off-by: Wolfram Sang <wsa@kernel.org>
This commit is contained in:
parent
19e13e1330
commit
be18c5ede2
@ -1,77 +0,0 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/i2c/mellanox,i2c-mlxbf.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Mellanox I2C SMBus on BlueField SoCs
|
||||
|
||||
maintainers:
|
||||
- Khalil Blaiech <kblaiech@nvidia.com>
|
||||
|
||||
allOf:
|
||||
- $ref: /schemas/i2c/i2c-controller.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- mellanox,i2c-mlxbf1
|
||||
- mellanox,i2c-mlxbf2
|
||||
|
||||
reg:
|
||||
minItems: 3
|
||||
items:
|
||||
- description: Smbus block registers
|
||||
- description: Cause master registers
|
||||
- description: Cause slave registers
|
||||
- description: Cause coalesce registers
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
clock-frequency:
|
||||
enum: [ 100000, 400000, 1000000 ]
|
||||
description:
|
||||
bus frequency used to configure timing registers;
|
||||
The frequency is expressed in Hz. Default is 100000.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- mellanox,i2c-mlxbf1
|
||||
|
||||
then:
|
||||
properties:
|
||||
reg:
|
||||
maxItems: 3
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c@2804000 {
|
||||
compatible = "mellanox,i2c-mlxbf1";
|
||||
reg = <0x02804000 0x800>,
|
||||
<0x02801200 0x020>,
|
||||
<0x02801260 0x020>;
|
||||
interrupts = <57>;
|
||||
clock-frequency = <100000>;
|
||||
};
|
||||
|
||||
- |
|
||||
i2c@2808800 {
|
||||
compatible = "mellanox,i2c-mlxbf2";
|
||||
reg = <0x02808800 0x600>,
|
||||
<0x02808e00 0x020>,
|
||||
<0x02808e20 0x020>,
|
||||
<0x02808e40 0x010>;
|
||||
interrupts = <57>;
|
||||
clock-frequency = <400000>;
|
||||
};
|
@ -12987,7 +12987,6 @@ M: Khalil Blaiech <kblaiech@nvidia.com>
|
||||
M: Asmaa Mnebhi <asmaa@nvidia.com>
|
||||
L: linux-i2c@vger.kernel.org
|
||||
S: Supported
|
||||
F: Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml
|
||||
F: drivers/i2c/busses/i2c-mlxbf.c
|
||||
|
||||
MELLANOX ETHERNET DRIVER (mlx4_en)
|
||||
|
@ -2247,24 +2247,6 @@ static struct i2c_adapter_quirks mlxbf_i2c_quirks = {
|
||||
.max_write_len = MLXBF_I2C_MASTER_DATA_W_LENGTH,
|
||||
};
|
||||
|
||||
static const struct of_device_id mlxbf_i2c_dt_ids[] = {
|
||||
{
|
||||
.compatible = "mellanox,i2c-mlxbf1",
|
||||
.data = &mlxbf_i2c_chip[MLXBF_I2C_CHIP_TYPE_1]
|
||||
},
|
||||
{
|
||||
.compatible = "mellanox,i2c-mlxbf2",
|
||||
.data = &mlxbf_i2c_chip[MLXBF_I2C_CHIP_TYPE_2]
|
||||
},
|
||||
{
|
||||
.compatible = "mellanox,i2c-mlxbf3",
|
||||
.data = &mlxbf_i2c_chip[MLXBF_I2C_CHIP_TYPE_3]
|
||||
},
|
||||
{},
|
||||
};
|
||||
|
||||
MODULE_DEVICE_TABLE(of, mlxbf_i2c_dt_ids);
|
||||
|
||||
#ifdef CONFIG_ACPI
|
||||
static const struct acpi_device_id mlxbf_i2c_acpi_ids[] = {
|
||||
{ "MLNXBF03", (kernel_ulong_t)&mlxbf_i2c_chip[MLXBF_I2C_CHIP_TYPE_1] },
|
||||
@ -2315,31 +2297,6 @@ static int mlxbf_i2c_acpi_probe(struct device *dev, struct mlxbf_i2c_priv *priv)
|
||||
}
|
||||
#endif /* CONFIG_ACPI */
|
||||
|
||||
static int mlxbf_i2c_of_probe(struct device *dev, struct mlxbf_i2c_priv *priv)
|
||||
{
|
||||
const struct of_device_id *oid;
|
||||
int bus_id = -1;
|
||||
|
||||
if (IS_ENABLED(CONFIG_OF) && dev->of_node) {
|
||||
oid = of_match_node(mlxbf_i2c_dt_ids, dev->of_node);
|
||||
if (!oid)
|
||||
return -ENODEV;
|
||||
|
||||
priv->chip = oid->data;
|
||||
|
||||
bus_id = of_alias_get_id(dev->of_node, "i2c");
|
||||
if (bus_id >= 0)
|
||||
priv->bus = bus_id;
|
||||
}
|
||||
|
||||
if (bus_id < 0) {
|
||||
dev_err(dev, "Cannot get bus id");
|
||||
return bus_id;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int mlxbf_i2c_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
@ -2353,14 +2310,11 @@ static int mlxbf_i2c_probe(struct platform_device *pdev)
|
||||
return -ENOMEM;
|
||||
|
||||
ret = mlxbf_i2c_acpi_probe(dev, priv);
|
||||
if (ret < 0 && ret != -ENOENT && ret != -ENXIO)
|
||||
ret = mlxbf_i2c_of_probe(dev, priv);
|
||||
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
/* This property allows the driver to stay backward compatible with older
|
||||
* ACPI table and device trees versions.
|
||||
* ACPI tables.
|
||||
* Starting BlueField-3 SoC, the "smbus" resource was broken down into 3
|
||||
* separate resources "timer", "master" and "slave".
|
||||
*/
|
||||
@ -2544,7 +2498,6 @@ static struct platform_driver mlxbf_i2c_driver = {
|
||||
.remove = mlxbf_i2c_remove,
|
||||
.driver = {
|
||||
.name = "i2c-mlxbf",
|
||||
.of_match_table = mlxbf_i2c_dt_ids,
|
||||
#ifdef CONFIG_ACPI
|
||||
.acpi_match_table = ACPI_PTR(mlxbf_i2c_acpi_ids),
|
||||
#endif /* CONFIG_ACPI */
|
||||
|
Loading…
Reference in New Issue
Block a user