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>
|
M: Asmaa Mnebhi <asmaa@nvidia.com>
|
||||||
L: linux-i2c@vger.kernel.org
|
L: linux-i2c@vger.kernel.org
|
||||||
S: Supported
|
S: Supported
|
||||||
F: Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml
|
|
||||||
F: drivers/i2c/busses/i2c-mlxbf.c
|
F: drivers/i2c/busses/i2c-mlxbf.c
|
||||||
|
|
||||||
MELLANOX ETHERNET DRIVER (mlx4_en)
|
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,
|
.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
|
#ifdef CONFIG_ACPI
|
||||||
static const struct acpi_device_id mlxbf_i2c_acpi_ids[] = {
|
static const struct acpi_device_id mlxbf_i2c_acpi_ids[] = {
|
||||||
{ "MLNXBF03", (kernel_ulong_t)&mlxbf_i2c_chip[MLXBF_I2C_CHIP_TYPE_1] },
|
{ "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 */
|
#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)
|
static int mlxbf_i2c_probe(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
struct device *dev = &pdev->dev;
|
struct device *dev = &pdev->dev;
|
||||||
@ -2353,14 +2310,11 @@ static int mlxbf_i2c_probe(struct platform_device *pdev)
|
|||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
ret = mlxbf_i2c_acpi_probe(dev, priv);
|
ret = mlxbf_i2c_acpi_probe(dev, priv);
|
||||||
if (ret < 0 && ret != -ENOENT && ret != -ENXIO)
|
|
||||||
ret = mlxbf_i2c_of_probe(dev, priv);
|
|
||||||
|
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
/* This property allows the driver to stay backward compatible with older
|
/* 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
|
* Starting BlueField-3 SoC, the "smbus" resource was broken down into 3
|
||||||
* separate resources "timer", "master" and "slave".
|
* separate resources "timer", "master" and "slave".
|
||||||
*/
|
*/
|
||||||
@ -2544,7 +2498,6 @@ static struct platform_driver mlxbf_i2c_driver = {
|
|||||||
.remove = mlxbf_i2c_remove,
|
.remove = mlxbf_i2c_remove,
|
||||||
.driver = {
|
.driver = {
|
||||||
.name = "i2c-mlxbf",
|
.name = "i2c-mlxbf",
|
||||||
.of_match_table = mlxbf_i2c_dt_ids,
|
|
||||||
#ifdef CONFIG_ACPI
|
#ifdef CONFIG_ACPI
|
||||||
.acpi_match_table = ACPI_PTR(mlxbf_i2c_acpi_ids),
|
.acpi_match_table = ACPI_PTR(mlxbf_i2c_acpi_ids),
|
||||||
#endif /* CONFIG_ACPI */
|
#endif /* CONFIG_ACPI */
|
||||||
|
Loading…
Reference in New Issue
Block a user