* [PATCH v5 00/20] eeprom: at24: Add OF device ID table
@ 2017-05-23 13:34 Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 03/20] ARM: dts: omap: Add generic compatible string for I2C EEPROM Javier Martinez Canillas
` (13 more replies)
0 siblings, 14 replies; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
Hello Wolfram,
This series is a follow-up to patch [0] that added an OF device ID table
to the at24 EEPROM driver. As you suggested [1], this version instead of
adding entries for every used <vendor,device> tuple, only adds a single
entry for each chip type using the "atmel" vendor as a generic fallback.
The first patch documents in the DT binding what's the correct vendor to
use and what are the ones that are being deprecated. The second one adds
the OF device ID table for the at24 driver and the next patches use this
vendor in the compatible string to each DTS that defines a compatible I2C
EEPROM device node.
Patches can be applied independently since the DTS changes without driver
changes are no-op and the OF table won't be used without the DTS changes.
[0]: https://lkml.org/lkml/2017/3/14/589
[1]: https://lkml.org/lkml/2017/3/15/99
Best regards,
Javier
Changes in v5:
- Only deprecate the atmel variants at25 and at (Geert Uytterhoeven).
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
Changes in v4:
- Document the manufacturers that have been deprecated (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3:
- Fix wrong .data values for "atmel,24c02" and "atmel,24c64" entries.
- Add Geert Uytterhoeven reviewed-by tag.
- Add Geert Uytterhoeven reviewed-by tag.
Changes in v2:
- Only add a single OF device ID entry for each device type (Wolfram Sang).
Javier Martinez Canillas (20):
dt-bindings: i2c: eeprom: Document vendor to be used and deprecated
ones
eeprom: at24: Add OF device ID table
ARM: dts: omap: Add generic compatible string for I2C EEPROM
ARM: dts: turris-omnia: Add generic compatible string for I2C EEPROM
ARM: dts: efm32: Add generic compatible string for I2C EEPROM
ARM: dts: imx: Add generic compatible string for I2C EEPROM
ARM: dts: keystone: Add generic compatible string for I2C EEPROM
ARM: dts: lpc18xx: Add generic compatible string for I2C EEPROM
ARM: dts: r7s72100: Add generic compatible string for I2C EEPROM
ARM: dts: koelsch: Add generic compatible string for I2C EEPROM
ARM: dts: socfpga: Add generic compatible string for I2C EEPROM
ARM: dts: uniphier: Add generic compatible string for I2C EEPROM
ARM: dts: zynq: Add generic compatible string for I2C EEPROM
arm64: dts: ls1043a: Add generic compatible string for I2C EEPROM
arm64: zynqmp: Add generic compatible string for I2C EEPROM
powerpc/5200: Add generic compatible string for I2C EEPROM
powerpc/fsl: Add generic compatible string for I2C EEPROM
powerpc/512x: Add generic compatible string for I2C EEPROM
powerpc/83xx: Add generic compatible string for I2C EEPROM
powerpc/44x: Add generic compatible string for I2C EEPROM
.../devicetree/bindings/eeprom/eeprom.txt | 6 +-
arch/arm/boot/dts/am335x-baltos.dtsi | 2 +-
arch/arm/boot/dts/am335x-base0033.dts | 2 +-
arch/arm/boot/dts/am335x-bone-common.dtsi | 10 ++--
arch/arm/boot/dts/am335x-nano.dts | 2 +-
arch/arm/boot/dts/am335x-pepper.dts | 2 +-
arch/arm/boot/dts/am335x-shc.dts | 2 +-
arch/arm/boot/dts/am335x-sl50.dts | 2 +-
arch/arm/boot/dts/am437x-idk-evm.dts | 2 +-
arch/arm/boot/dts/am437x-sk-evm.dts | 2 +-
arch/arm/boot/dts/am43x-epos-evm.dts | 2 +-
arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi | 2 +-
arch/arm/boot/dts/armada-385-turris-omnia.dts | 2 +-
arch/arm/boot/dts/efm32gg-dk3750.dts | 2 +-
arch/arm/boot/dts/imx27-phytec-phycard-s-som.dtsi | 2 +-
arch/arm/boot/dts/imx27-phytec-phycore-som.dtsi | 2 +-
arch/arm/boot/dts/imx28-evk.dts | 2 +-
arch/arm/boot/dts/imx53-tqma53.dtsi | 2 +-
arch/arm/boot/dts/imx6q-cm-fx6.dts | 2 +-
arch/arm/boot/dts/imx6q-utilite-pro.dts | 2 +-
arch/arm/boot/dts/keystone-k2e-evm.dts | 2 +-
arch/arm/boot/dts/keystone-k2hk-evm.dts | 2 +-
arch/arm/boot/dts/keystone-k2l-evm.dts | 2 +-
arch/arm/boot/dts/lpc4337-ciaa.dts | 6 +-
arch/arm/boot/dts/lpc4350-hitex-eval.dts | 2 +-
arch/arm/boot/dts/lpc4357-ea4357-devkit.dts | 2 +-
arch/arm/boot/dts/omap3-cm-t3x.dtsi | 2 +-
arch/arm/boot/dts/omap3-gta04.dtsi | 2 +-
arch/arm/boot/dts/omap3-sb-t35.dtsi | 2 +-
arch/arm/boot/dts/omap4-var-som-om44.dtsi | 2 +-
arch/arm/boot/dts/omap5-cm-t54.dts | 2 +-
arch/arm/boot/dts/omap5-sbc-t54.dts | 2 +-
arch/arm/boot/dts/r7s72100-genmai.dts | 2 +-
arch/arm/boot/dts/r8a7791-koelsch.dts | 2 +-
arch/arm/boot/dts/socfpga_cyclone5_vining_fpga.dts | 2 +-
arch/arm/boot/dts/uniphier-pro4-ace.dts | 2 +-
arch/arm/boot/dts/uniphier-pro4-sanji.dts | 2 +-
arch/arm/boot/dts/uniphier-pxs2-gentil.dts | 2 +-
arch/arm/boot/dts/zynq-zc702.dts | 2 +-
arch/arm/boot/dts/zynq-zc706.dts | 2 +-
arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts | 4 +-
arch/arm64/boot/dts/xilinx/zynqmp-ep108.dts | 4 +-
arch/powerpc/boot/dts/digsy_mtc.dts | 2 +-
arch/powerpc/boot/dts/fsl/b4qds.dtsi | 8 +--
arch/powerpc/boot/dts/fsl/c293pcie.dts | 2 +-
arch/powerpc/boot/dts/fsl/p1010rdb.dtsi | 2 +-
arch/powerpc/boot/dts/fsl/p1023rdb.dts | 2 +-
arch/powerpc/boot/dts/fsl/p2041rdb.dts | 4 +-
arch/powerpc/boot/dts/fsl/p3041ds.dts | 4 +-
arch/powerpc/boot/dts/fsl/p4080ds.dts | 4 +-
arch/powerpc/boot/dts/fsl/p5020ds.dts | 4 +-
arch/powerpc/boot/dts/fsl/p5040ds.dts | 4 +-
arch/powerpc/boot/dts/fsl/t208xqds.dtsi | 8 +--
arch/powerpc/boot/dts/fsl/t4240qds.dts | 12 ++--
arch/powerpc/boot/dts/fsl/t4240rdb.dts | 6 +-
arch/powerpc/boot/dts/mpc5121ads.dts | 2 +-
arch/powerpc/boot/dts/mpc8308_p1m.dts | 2 +-
arch/powerpc/boot/dts/mpc8349emitx.dts | 4 +-
arch/powerpc/boot/dts/mpc8377_rdb.dts | 2 +-
arch/powerpc/boot/dts/mpc8377_wlan.dts | 2 +-
arch/powerpc/boot/dts/mpc8378_rdb.dts | 2 +-
arch/powerpc/boot/dts/mpc8379_rdb.dts | 2 +-
arch/powerpc/boot/dts/pcm030.dts | 2 +-
arch/powerpc/boot/dts/pcm032.dts | 2 +-
arch/powerpc/boot/dts/warp.dts | 2 +-
drivers/misc/eeprom/at24.c | 65 +++++++++++++++++++++-
66 files changed, 160 insertions(+), 93 deletions(-)
--
2.9.3
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH v5 03/20] ARM: dts: omap: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-05-26 15:51 ` Tony Lindgren
2017-05-23 13:34 ` [PATCH v5 04/20] ARM: dts: turris-omnia: " Javier Martinez Canillas
` (12 subsequent siblings)
13 siblings, 1 reply; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
---
Changes in v5:
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3: None
Changes in v2: None
arch/arm/boot/dts/am335x-baltos.dtsi | 2 +-
arch/arm/boot/dts/am335x-base0033.dts | 2 +-
arch/arm/boot/dts/am335x-bone-common.dtsi | 10 +++++-----
arch/arm/boot/dts/am335x-nano.dts | 2 +-
arch/arm/boot/dts/am335x-pepper.dts | 2 +-
arch/arm/boot/dts/am335x-shc.dts | 2 +-
arch/arm/boot/dts/am335x-sl50.dts | 2 +-
arch/arm/boot/dts/am437x-idk-evm.dts | 2 +-
arch/arm/boot/dts/am437x-sk-evm.dts | 2 +-
arch/arm/boot/dts/am43x-epos-evm.dts | 2 +-
arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi | 2 +-
arch/arm/boot/dts/omap3-cm-t3x.dtsi | 2 +-
arch/arm/boot/dts/omap3-gta04.dtsi | 2 +-
arch/arm/boot/dts/omap3-sb-t35.dtsi | 2 +-
arch/arm/boot/dts/omap4-var-som-om44.dtsi | 2 +-
arch/arm/boot/dts/omap5-cm-t54.dts | 2 +-
arch/arm/boot/dts/omap5-sbc-t54.dts | 2 +-
17 files changed, 21 insertions(+), 21 deletions(-)
diff --git a/arch/arm/boot/dts/am335x-baltos.dtsi b/arch/arm/boot/dts/am335x-baltos.dtsi
index d42b98f15e8b..ec6052c521ef 100644
--- a/arch/arm/boot/dts/am335x-baltos.dtsi
+++ b/arch/arm/boot/dts/am335x-baltos.dtsi
@@ -255,7 +255,7 @@
};
at24 at 50 {
- compatible = "at24,24c02";
+ compatible = "atmel,24c02";
pagesize = <8>;
reg = <0x50>;
};
diff --git a/arch/arm/boot/dts/am335x-base0033.dts b/arch/arm/boot/dts/am335x-base0033.dts
index c2bee452dab8..29782be07605 100644
--- a/arch/arm/boot/dts/am335x-base0033.dts
+++ b/arch/arm/boot/dts/am335x-base0033.dts
@@ -89,7 +89,7 @@
&i2c0 {
eeprom: eeprom at 50 {
- compatible = "at,24c256";
+ compatible = "atmel,24c256";
reg = <0x50>;
};
};
diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
index bf6b26abe35b..1d154444dfef 100644
--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
+++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
@@ -232,7 +232,7 @@
};
baseboard_eeprom: baseboard_eeprom at 50 {
- compatible = "at,24c256";
+ compatible = "atmel,24c256";
reg = <0x50>;
#address-cells = <1>;
@@ -251,7 +251,7 @@
clock-frequency = <100000>;
cape_eeprom0: cape_eeprom0 at 54 {
- compatible = "at,24c256";
+ compatible = "atmel,24c256";
reg = <0x54>;
#address-cells = <1>;
#size-cells = <1>;
@@ -261,7 +261,7 @@
};
cape_eeprom1: cape_eeprom1 at 55 {
- compatible = "at,24c256";
+ compatible = "atmel,24c256";
reg = <0x55>;
#address-cells = <1>;
#size-cells = <1>;
@@ -271,7 +271,7 @@
};
cape_eeprom2: cape_eeprom2 at 56 {
- compatible = "at,24c256";
+ compatible = "atmel,24c256";
reg = <0x56>;
#address-cells = <1>;
#size-cells = <1>;
@@ -281,7 +281,7 @@
};
cape_eeprom3: cape_eeprom3 at 57 {
- compatible = "at,24c256";
+ compatible = "atmel,24c256";
reg = <0x57>;
#address-cells = <1>;
#size-cells = <1>;
diff --git a/arch/arm/boot/dts/am335x-nano.dts b/arch/arm/boot/dts/am335x-nano.dts
index 807494bc722b..946d7069f417 100644
--- a/arch/arm/boot/dts/am335x-nano.dts
+++ b/arch/arm/boot/dts/am335x-nano.dts
@@ -224,7 +224,7 @@
};
eeprom at 53 {
- compatible = "microchip,24c02";
+ compatible = "microchip,24c02", "atmel,24c02";
reg = <0x53>;
pagesize = <8>;
};
diff --git a/arch/arm/boot/dts/am335x-pepper.dts b/arch/arm/boot/dts/am335x-pepper.dts
index 30e2f8770aaf..03c7d77023c6 100644
--- a/arch/arm/boot/dts/am335x-pepper.dts
+++ b/arch/arm/boot/dts/am335x-pepper.dts
@@ -67,7 +67,7 @@
};
eeprom: eeprom at 50 {
- compatible = "at,24c256";
+ compatible = "atmel,24c256";
reg = <0x50>;
};
diff --git a/arch/arm/boot/dts/am335x-shc.dts b/arch/arm/boot/dts/am335x-shc.dts
index bf8727a19ece..4f6a286ea293 100644
--- a/arch/arm/boot/dts/am335x-shc.dts
+++ b/arch/arm/boot/dts/am335x-shc.dts
@@ -188,7 +188,7 @@
};
at24 at 50 {
- compatible = "at24,24c32";
+ compatible = "atmel,24c32";
pagesize = <32>;
reg = <0x50>;
};
diff --git a/arch/arm/boot/dts/am335x-sl50.dts b/arch/arm/boot/dts/am335x-sl50.dts
index c5d2589c55fc..a82a4042eb9d 100644
--- a/arch/arm/boot/dts/am335x-sl50.dts
+++ b/arch/arm/boot/dts/am335x-sl50.dts
@@ -309,7 +309,7 @@
};
eeprom: eeprom at 50 {
- compatible = "at,24c256";
+ compatible = "atmel,24c256";
reg = <0x50>;
};
diff --git a/arch/arm/boot/dts/am437x-idk-evm.dts b/arch/arm/boot/dts/am437x-idk-evm.dts
index c1f7f9336e64..5e364473067f 100644
--- a/arch/arm/boot/dts/am437x-idk-evm.dts
+++ b/arch/arm/boot/dts/am437x-idk-evm.dts
@@ -339,7 +339,7 @@
clock-frequency = <400000>;
at24 at 50 {
- compatible = "at24,24c256";
+ compatible = "atmel,24c256";
pagesize = <64>;
reg = <0x50>;
};
diff --git a/arch/arm/boot/dts/am437x-sk-evm.dts b/arch/arm/boot/dts/am437x-sk-evm.dts
index 4dc54bee2f36..a62e1583da04 100644
--- a/arch/arm/boot/dts/am437x-sk-evm.dts
+++ b/arch/arm/boot/dts/am437x-sk-evm.dts
@@ -511,7 +511,7 @@
};
at24 at 50 {
- compatible = "at24,24c256";
+ compatible = "atmel,24c256";
pagesize = <64>;
reg = <0x50>;
};
diff --git a/arch/arm/boot/dts/am43x-epos-evm.dts b/arch/arm/boot/dts/am43x-epos-evm.dts
index 9acd4ccdec4e..f6648ab10d29 100644
--- a/arch/arm/boot/dts/am43x-epos-evm.dts
+++ b/arch/arm/boot/dts/am43x-epos-evm.dts
@@ -477,7 +477,7 @@
};
at24 at 50 {
- compatible = "at24,24c256";
+ compatible = "atmel,24c256";
pagesize = <64>;
reg = <0x50>;
};
diff --git a/arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi b/arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi
index 585d792a8fdd..fdfe5b16b806 100644
--- a/arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi
+++ b/arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi
@@ -388,7 +388,7 @@
};
eeprom: eeprom at 50 {
- compatible = "at,24c32";
+ compatible = "atmel,24c32";
reg = <0x50>;
};
};
diff --git a/arch/arm/boot/dts/omap3-cm-t3x.dtsi b/arch/arm/boot/dts/omap3-cm-t3x.dtsi
index 57b9a028a49a..fccd5383243c 100644
--- a/arch/arm/boot/dts/omap3-cm-t3x.dtsi
+++ b/arch/arm/boot/dts/omap3-cm-t3x.dtsi
@@ -188,7 +188,7 @@
clock-frequency = <400000>;
at24 at 50 {
- compatible = "at24,24c02";
+ compatible = "atmel,24c02";
pagesize = <16>;
reg = <0x50>;
};
diff --git a/arch/arm/boot/dts/omap3-gta04.dtsi b/arch/arm/boot/dts/omap3-gta04.dtsi
index 9ec737069369..4504908c23fe 100644
--- a/arch/arm/boot/dts/omap3-gta04.dtsi
+++ b/arch/arm/boot/dts/omap3-gta04.dtsi
@@ -419,7 +419,7 @@
/* RFID EEPROM */
m24lr64 at 50 {
- compatible = "at,24c64";
+ compatible = "atmel,24c64";
reg = <0x50>;
};
};
diff --git a/arch/arm/boot/dts/omap3-sb-t35.dtsi b/arch/arm/boot/dts/omap3-sb-t35.dtsi
index 73643fabde5d..b096b8549413 100644
--- a/arch/arm/boot/dts/omap3-sb-t35.dtsi
+++ b/arch/arm/boot/dts/omap3-sb-t35.dtsi
@@ -90,7 +90,7 @@
clock-frequency = <400000>;
at24 at 50 {
- compatible = "at24,24c02";
+ compatible = "atmel,24c02";
pagesize = <16>;
reg = <0x50>;
};
diff --git a/arch/arm/boot/dts/omap4-var-som-om44.dtsi b/arch/arm/boot/dts/omap4-var-som-om44.dtsi
index 758b6eb7ae43..6500bfc8d130 100644
--- a/arch/arm/boot/dts/omap4-var-som-om44.dtsi
+++ b/arch/arm/boot/dts/omap4-var-som-om44.dtsi
@@ -241,7 +241,7 @@
};
eeprom at 50 {
- compatible = "microchip,24c32";
+ compatible = "microchip,24c32", "atmel,24c32";
reg = <0x50>;
};
};
diff --git a/arch/arm/boot/dts/omap5-cm-t54.dts b/arch/arm/boot/dts/omap5-cm-t54.dts
index b153f604932a..78397f66d0b2 100644
--- a/arch/arm/boot/dts/omap5-cm-t54.dts
+++ b/arch/arm/boot/dts/omap5-cm-t54.dts
@@ -404,7 +404,7 @@
clock-frequency = <400000>;
at24 at 50 {
- compatible = "at24,24c02";
+ compatible = "atmel,24c02";
pagesize = <16>;
reg = <0x50>;
};
diff --git a/arch/arm/boot/dts/omap5-sbc-t54.dts b/arch/arm/boot/dts/omap5-sbc-t54.dts
index 337bbbc01a35..7b8810d13257 100644
--- a/arch/arm/boot/dts/omap5-sbc-t54.dts
+++ b/arch/arm/boot/dts/omap5-sbc-t54.dts
@@ -44,7 +44,7 @@
clock-frequency = <400000>;
at24 at 50 {
- compatible = "at24,24c02";
+ compatible = "atmel,24c02";
pagesize = <16>;
reg = <0x50>;
};
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 04/20] ARM: dts: turris-omnia: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 03/20] ARM: dts: omap: Add generic compatible string for I2C EEPROM Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-06-08 17:04 ` Gregory CLEMENT
2017-05-23 13:34 ` [PATCH v5 05/20] ARM: dts: efm32: " Javier Martinez Canillas
` (11 subsequent siblings)
13 siblings, 1 reply; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
---
Changes in v5: None
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3: None
Changes in v2: None
arch/arm/boot/dts/armada-385-turris-omnia.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
index 28eede180e4f..be16ce39fb3d 100644
--- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
+++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
@@ -171,7 +171,7 @@
/* leds device (in STM32F0) at address 0x2b */
eeprom at 54 {
- compatible = "at,24c64";
+ compatible = "atmel,24c64";
reg = <0x54>;
/* The EEPROM contains data for bootloader.
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 05/20] ARM: dts: efm32: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 03/20] ARM: dts: omap: Add generic compatible string for I2C EEPROM Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 04/20] ARM: dts: turris-omnia: " Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-05-25 18:29 ` Uwe Kleine-König
2017-05-23 13:34 ` [PATCH v5 06/20] ARM: dts: imx: " Javier Martinez Canillas
` (10 subsequent siblings)
13 siblings, 1 reply; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
---
Changes in v5:
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3: None
Changes in v2: None
arch/arm/boot/dts/efm32gg-dk3750.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/efm32gg-dk3750.dts b/arch/arm/boot/dts/efm32gg-dk3750.dts
index 98fc667d22c7..84f0a9abc290 100644
--- a/arch/arm/boot/dts/efm32gg-dk3750.dts
+++ b/arch/arm/boot/dts/efm32gg-dk3750.dts
@@ -36,7 +36,7 @@
};
eeprom at 50 {
- compatible = "microchip,24c02";
+ compatible = "microchip,24c02", "atmel,24c02";
reg = <0x50>;
pagesize = <16>;
};
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 06/20] ARM: dts: imx: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
` (2 preceding siblings ...)
2017-05-23 13:34 ` [PATCH v5 05/20] ARM: dts: efm32: " Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-05-25 7:32 ` Shawn Guo
2017-05-23 13:34 ` [PATCH v5 07/20] ARM: dts: keystone: " Javier Martinez Canillas
` (9 subsequent siblings)
13 siblings, 1 reply; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
---
Changes in v5: None
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3: None
Changes in v2: None
arch/arm/boot/dts/imx27-phytec-phycard-s-som.dtsi | 2 +-
arch/arm/boot/dts/imx27-phytec-phycore-som.dtsi | 2 +-
arch/arm/boot/dts/imx28-evk.dts | 2 +-
arch/arm/boot/dts/imx53-tqma53.dtsi | 2 +-
arch/arm/boot/dts/imx6q-cm-fx6.dts | 2 +-
arch/arm/boot/dts/imx6q-utilite-pro.dts | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/arch/arm/boot/dts/imx27-phytec-phycard-s-som.dtsi b/arch/arm/boot/dts/imx27-phytec-phycard-s-som.dtsi
index 4f3e0f473581..0b8490b21a38 100644
--- a/arch/arm/boot/dts/imx27-phytec-phycard-s-som.dtsi
+++ b/arch/arm/boot/dts/imx27-phytec-phycard-s-som.dtsi
@@ -40,7 +40,7 @@
status = "okay";
at24 at 52 {
- compatible = "at,24c32";
+ compatible = "atmel,24c32";
pagesize = <32>;
reg = <0x52>;
};
diff --git a/arch/arm/boot/dts/imx27-phytec-phycore-som.dtsi b/arch/arm/boot/dts/imx27-phytec-phycore-som.dtsi
index 82fec935ce83..c973c5d91875 100644
--- a/arch/arm/boot/dts/imx27-phytec-phycore-som.dtsi
+++ b/arch/arm/boot/dts/imx27-phytec-phycore-som.dtsi
@@ -193,7 +193,7 @@
status = "okay";
at24 at 52 {
- compatible = "at,24c32";
+ compatible = "atmel,24c32";
pagesize = <32>;
reg = <0x52>;
};
diff --git a/arch/arm/boot/dts/imx28-evk.dts b/arch/arm/boot/dts/imx28-evk.dts
index a5ba669b4eaa..b88c087f1fea 100644
--- a/arch/arm/boot/dts/imx28-evk.dts
+++ b/arch/arm/boot/dts/imx28-evk.dts
@@ -203,7 +203,7 @@
};
at24 at 51 {
- compatible = "at24,24c32";
+ compatible = "atmel,24c32";
pagesize = <32>;
reg = <0x51>;
};
diff --git a/arch/arm/boot/dts/imx53-tqma53.dtsi b/arch/arm/boot/dts/imx53-tqma53.dtsi
index 85972f2201c2..eecdc1c55eef 100644
--- a/arch/arm/boot/dts/imx53-tqma53.dtsi
+++ b/arch/arm/boot/dts/imx53-tqma53.dtsi
@@ -272,7 +272,7 @@
};
eeprom: 24c64 at 50 {
- compatible = "at,24c64";
+ compatible = "atmel,24c64";
pagesize = <32>;
reg = <0x50>;
};
diff --git a/arch/arm/boot/dts/imx6q-cm-fx6.dts b/arch/arm/boot/dts/imx6q-cm-fx6.dts
index 66cac5328b86..a8af3822d9df 100644
--- a/arch/arm/boot/dts/imx6q-cm-fx6.dts
+++ b/arch/arm/boot/dts/imx6q-cm-fx6.dts
@@ -215,7 +215,7 @@
clock-frequency = <100000>;
eeprom at 50 {
- compatible = "at24,24c02";
+ compatible = "atmel,24c02";
reg = <0x50>;
pagesize = <16>;
};
diff --git a/arch/arm/boot/dts/imx6q-utilite-pro.dts b/arch/arm/boot/dts/imx6q-utilite-pro.dts
index d900ad6ec5f8..16d5be1aeb3c 100644
--- a/arch/arm/boot/dts/imx6q-utilite-pro.dts
+++ b/arch/arm/boot/dts/imx6q-utilite-pro.dts
@@ -130,7 +130,7 @@
#size-cells = <0>;
eeprom at 50 {
- compatible = "at24,24c02";
+ compatible = "atmel,24c02";
reg = <0x50>;
pagesize = <16>;
};
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 07/20] ARM: dts: keystone: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
` (3 preceding siblings ...)
2017-05-23 13:34 ` [PATCH v5 06/20] ARM: dts: imx: " Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 08/20] ARM: dts: lpc18xx: " Javier Martinez Canillas
` (8 subsequent siblings)
13 siblings, 0 replies; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
---
Changes in v5: None
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3: None
Changes in v2: None
arch/arm/boot/dts/keystone-k2e-evm.dts | 2 +-
arch/arm/boot/dts/keystone-k2hk-evm.dts | 2 +-
arch/arm/boot/dts/keystone-k2l-evm.dts | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/arm/boot/dts/keystone-k2e-evm.dts b/arch/arm/boot/dts/keystone-k2e-evm.dts
index ae1ebe7ee021..c8d45e6cd9e6 100644
--- a/arch/arm/boot/dts/keystone-k2e-evm.dts
+++ b/arch/arm/boot/dts/keystone-k2e-evm.dts
@@ -69,7 +69,7 @@
&i2c0 {
dtt at 50 {
- compatible = "at,24c1024";
+ compatible = "atmel,24c1024";
reg = <0x50>;
};
};
diff --git a/arch/arm/boot/dts/keystone-k2hk-evm.dts b/arch/arm/boot/dts/keystone-k2hk-evm.dts
index 2156ff92d08f..69af3a950da6 100644
--- a/arch/arm/boot/dts/keystone-k2hk-evm.dts
+++ b/arch/arm/boot/dts/keystone-k2hk-evm.dts
@@ -145,7 +145,7 @@
&i2c0 {
dtt at 50 {
- compatible = "at,24c1024";
+ compatible = "atmel,24c1024";
reg = <0x50>;
};
};
diff --git a/arch/arm/boot/dts/keystone-k2l-evm.dts b/arch/arm/boot/dts/keystone-k2l-evm.dts
index 056b42f99d7a..402190e55e40 100644
--- a/arch/arm/boot/dts/keystone-k2l-evm.dts
+++ b/arch/arm/boot/dts/keystone-k2l-evm.dts
@@ -42,7 +42,7 @@
&i2c0 {
dtt at 50 {
- compatible = "at,24c1024";
+ compatible = "atmel,24c1024";
reg = <0x50>;
};
};
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 08/20] ARM: dts: lpc18xx: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
` (4 preceding siblings ...)
2017-05-23 13:34 ` [PATCH v5 07/20] ARM: dts: keystone: " Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 09/20] ARM: dts: r7s72100: " Javier Martinez Canillas
` (7 subsequent siblings)
13 siblings, 0 replies; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
---
Changes in v5:
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3: None
Changes in v2: None
arch/arm/boot/dts/lpc4337-ciaa.dts | 6 +++---
arch/arm/boot/dts/lpc4350-hitex-eval.dts | 2 +-
arch/arm/boot/dts/lpc4357-ea4357-devkit.dts | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/arch/arm/boot/dts/lpc4337-ciaa.dts b/arch/arm/boot/dts/lpc4337-ciaa.dts
index 7c16d639a1b4..beddaba85393 100644
--- a/arch/arm/boot/dts/lpc4337-ciaa.dts
+++ b/arch/arm/boot/dts/lpc4337-ciaa.dts
@@ -174,17 +174,17 @@
clock-frequency = <400000>;
eeprom at 50 {
- compatible = "microchip,24c512";
+ compatible = "microchip,24c512", "atmel,24c512";
reg = <0x50>;
};
eeprom at 51 {
- compatible = "microchip,24c02";
+ compatible = "microchip,24c02", "atmel,24c02";
reg = <0x51>;
};
eeprom at 54 {
- compatible = "microchip,24c512";
+ compatible = "microchip,24c512", "atmel,24c512";
reg = <0x54>;
};
};
diff --git a/arch/arm/boot/dts/lpc4350-hitex-eval.dts b/arch/arm/boot/dts/lpc4350-hitex-eval.dts
index 874c75d44013..8b973f537d3a 100644
--- a/arch/arm/boot/dts/lpc4350-hitex-eval.dts
+++ b/arch/arm/boot/dts/lpc4350-hitex-eval.dts
@@ -429,7 +429,7 @@
};
eeprom at 50 {
- compatible = "nxp,24c02";
+ compatible = "nxp,24c02", "atmel,24c02";
reg = <0x50>;
};
diff --git a/arch/arm/boot/dts/lpc4357-ea4357-devkit.dts b/arch/arm/boot/dts/lpc4357-ea4357-devkit.dts
index 9b5fad622522..02b23fa29d75 100644
--- a/arch/arm/boot/dts/lpc4357-ea4357-devkit.dts
+++ b/arch/arm/boot/dts/lpc4357-ea4357-devkit.dts
@@ -490,7 +490,7 @@
};
eeprom at 57 {
- compatible = "microchip,24c64";
+ compatible = "microchip,24c64", "atmel,24c64";
reg = <0x57>;
};
};
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 09/20] ARM: dts: r7s72100: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
` (5 preceding siblings ...)
2017-05-23 13:34 ` [PATCH v5 08/20] ARM: dts: lpc18xx: " Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 10/20] ARM: dts: koelsch: " Javier Martinez Canillas
` (6 subsequent siblings)
13 siblings, 0 replies; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Changes in v5:
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3:
- Add Geert Uytterhoeven reviewed-by tag.
Changes in v2: None
arch/arm/boot/dts/r7s72100-genmai.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/r7s72100-genmai.dts b/arch/arm/boot/dts/r7s72100-genmai.dts
index 52a7b586bac7..b0db621ff176 100644
--- a/arch/arm/boot/dts/r7s72100-genmai.dts
+++ b/arch/arm/boot/dts/r7s72100-genmai.dts
@@ -57,7 +57,7 @@
clock-frequency = <400000>;
eeprom at 50 {
- compatible = "renesas,24c128";
+ compatible = "renesas,24c128", "atmel,24c128";
reg = <0x50>;
pagesize = <64>;
};
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 10/20] ARM: dts: koelsch: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
` (6 preceding siblings ...)
2017-05-23 13:34 ` [PATCH v5 09/20] ARM: dts: r7s72100: " Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 11/20] ARM: dts: socfpga: " Javier Martinez Canillas
` (5 subsequent siblings)
13 siblings, 0 replies; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Changes in v5:
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3:
- Add Geert Uytterhoeven reviewed-by tag.
Changes in v2: None
arch/arm/boot/dts/r8a7791-koelsch.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/r8a7791-koelsch.dts b/arch/arm/boot/dts/r8a7791-koelsch.dts
index 001e6116c47c..dc8ed02de707 100644
--- a/arch/arm/boot/dts/r8a7791-koelsch.dts
+++ b/arch/arm/boot/dts/r8a7791-koelsch.dts
@@ -702,7 +702,7 @@
};
eeprom at 50 {
- compatible = "renesas,24c02";
+ compatible = "renesas,24c02", "atmel,24c02";
reg = <0x50>;
pagesize = <16>;
};
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 11/20] ARM: dts: socfpga: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
` (7 preceding siblings ...)
2017-05-23 13:34 ` [PATCH v5 10/20] ARM: dts: koelsch: " Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 12/20] ARM: dts: uniphier: " Javier Martinez Canillas
` (4 subsequent siblings)
13 siblings, 0 replies; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
---
Changes in v5: None
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3: None
Changes in v2: None
arch/arm/boot/dts/socfpga_cyclone5_vining_fpga.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/socfpga_cyclone5_vining_fpga.dts b/arch/arm/boot/dts/socfpga_cyclone5_vining_fpga.dts
index 893198049397..4bb2791ab04a 100644
--- a/arch/arm/boot/dts/socfpga_cyclone5_vining_fpga.dts
+++ b/arch/arm/boot/dts/socfpga_cyclone5_vining_fpga.dts
@@ -294,7 +294,7 @@
clock-frequency = <100000>;
at24 at 50 {
- compatible = "at24,24c02";
+ compatible = "atmel,24c02";
pagesize = <8>;
reg = <0x50>;
};
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 12/20] ARM: dts: uniphier: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
` (8 preceding siblings ...)
2017-05-23 13:34 ` [PATCH v5 11/20] ARM: dts: socfpga: " Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-06-05 5:13 ` Masahiro Yamada
2017-05-23 13:34 ` [PATCH v5 13/20] ARM: dts: zynq: " Javier Martinez Canillas
` (3 subsequent siblings)
13 siblings, 1 reply; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
---
Changes in v5:
- Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3: None
Changes in v2: None
arch/arm/boot/dts/uniphier-pro4-ace.dts | 2 +-
arch/arm/boot/dts/uniphier-pro4-sanji.dts | 2 +-
arch/arm/boot/dts/uniphier-pxs2-gentil.dts | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/arm/boot/dts/uniphier-pro4-ace.dts b/arch/arm/boot/dts/uniphier-pro4-ace.dts
index fefc89149234..b9a4919d7c93 100644
--- a/arch/arm/boot/dts/uniphier-pro4-ace.dts
+++ b/arch/arm/boot/dts/uniphier-pro4-ace.dts
@@ -88,7 +88,7 @@
status = "okay";
eeprom at 54 {
- compatible = "st,24c64";
+ compatible = "st,24c64", "atmel,24c64";
reg = <0x54>;
pagesize = <32>;
};
diff --git a/arch/arm/boot/dts/uniphier-pro4-sanji.dts b/arch/arm/boot/dts/uniphier-pro4-sanji.dts
index 6c63c8bad825..3950baa8d55d 100644
--- a/arch/arm/boot/dts/uniphier-pro4-sanji.dts
+++ b/arch/arm/boot/dts/uniphier-pro4-sanji.dts
@@ -83,7 +83,7 @@
status = "okay";
eeprom at 54 {
- compatible = "st,24c64";
+ compatible = "st,24c64", "atmel,24c64";
reg = <0x54>;
pagesize = <32>;
};
diff --git a/arch/arm/boot/dts/uniphier-pxs2-gentil.dts b/arch/arm/boot/dts/uniphier-pxs2-gentil.dts
index cccc86658d20..afba587ffbbc 100644
--- a/arch/arm/boot/dts/uniphier-pxs2-gentil.dts
+++ b/arch/arm/boot/dts/uniphier-pxs2-gentil.dts
@@ -80,7 +80,7 @@
status = "okay";
eeprom at 54 {
- compatible = "st,24c64";
+ compatible = "st,24c64", "atmel,24c64";
reg = <0x54>;
pagesize = <32>;
};
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 13/20] ARM: dts: zynq: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
` (9 preceding siblings ...)
2017-05-23 13:34 ` [PATCH v5 12/20] ARM: dts: uniphier: " Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 14/20] arm64: dts: ls1043a: " Javier Martinez Canillas
` (2 subsequent siblings)
13 siblings, 0 replies; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
---
Changes in v5: None
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3: None
Changes in v2: None
arch/arm/boot/dts/zynq-zc702.dts | 2 +-
arch/arm/boot/dts/zynq-zc706.dts | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/zynq-zc702.dts b/arch/arm/boot/dts/zynq-zc702.dts
index 0cdad2cc8b78..f8c840f7118f 100644
--- a/arch/arm/boot/dts/zynq-zc702.dts
+++ b/arch/arm/boot/dts/zynq-zc702.dts
@@ -136,7 +136,7 @@
#size-cells = <0>;
reg = <2>;
eeprom at 54 {
- compatible = "at,24c08";
+ compatible = "atmel,24c08";
reg = <0x54>;
};
};
diff --git a/arch/arm/boot/dts/zynq-zc706.dts b/arch/arm/boot/dts/zynq-zc706.dts
index ad4bb06dba25..76492be4a912 100644
--- a/arch/arm/boot/dts/zynq-zc706.dts
+++ b/arch/arm/boot/dts/zynq-zc706.dts
@@ -92,7 +92,7 @@
#size-cells = <0>;
reg = <2>;
eeprom at 54 {
- compatible = "at,24c08";
+ compatible = "atmel,24c08";
reg = <0x54>;
};
};
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 14/20] arm64: dts: ls1043a: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
` (10 preceding siblings ...)
2017-05-23 13:34 ` [PATCH v5 13/20] ARM: dts: zynq: " Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-05-25 7:33 ` Shawn Guo
2017-05-23 13:34 ` [PATCH v5 15/20] arm64: zynqmp: " Javier Martinez Canillas
2017-06-01 8:07 ` [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
13 siblings, 1 reply; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
---
Changes in v5: None
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3: None
Changes in v2: None
arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts b/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts
index d64370ed0738..0a3853240c8b 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts
@@ -75,11 +75,11 @@
reg = <0x4c>;
};
eeprom at 52 {
- compatible = "at24,24c512";
+ compatible = "atmel,24c512";
reg = <0x52>;
};
eeprom at 53 {
- compatible = "at24,24c512";
+ compatible = "atmel,24c512";
reg = <0x53>;
};
rtc at 68 {
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 15/20] arm64: zynqmp: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
` (11 preceding siblings ...)
2017-05-23 13:34 ` [PATCH v5 14/20] arm64: dts: ls1043a: " Javier Martinez Canillas
@ 2017-05-23 13:34 ` Javier Martinez Canillas
2017-06-01 8:07 ` [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
13 siblings, 0 replies; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-23 13:34 UTC (permalink / raw)
To: linux-arm-kernel
The at24 driver allows to register I2C EEPROM chips using different vendor
and devices, but the I2C subsystem does not take the vendor into account
when matching using the I2C table since it only has device entries.
But when matching using an OF table, both the vendor and device has to be
taken into account so the driver defines only a set of compatible strings
using the "atmel" vendor as a generic fallback for compatible I2C devices.
So add this generic fallback to the device node compatible string to make
the device to match the driver using the OF device ID table.
Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
---
Changes in v5: None
Changes in v4:
- Only use the atmel manufacturer in the compatible string instead of
keeping the deprecated ones (Rob Herring).
Changes in v3: None
Changes in v2: None
arch/arm64/boot/dts/xilinx/zynqmp-ep108.dts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/xilinx/zynqmp-ep108.dts b/arch/arm64/boot/dts/xilinx/zynqmp-ep108.dts
index ef1b9e573af0..53907b7a7fd9 100644
--- a/arch/arm64/boot/dts/xilinx/zynqmp-ep108.dts
+++ b/arch/arm64/boot/dts/xilinx/zynqmp-ep108.dts
@@ -55,7 +55,7 @@
status = "okay";
clock-frequency = <400000>;
eeprom at 54 {
- compatible = "at,24c64";
+ compatible = "atmel,24c64";
reg = <0x54>;
};
};
@@ -64,7 +64,7 @@
status = "okay";
clock-frequency = <400000>;
eeprom at 55 {
- compatible = "at,24c64";
+ compatible = "atmel,24c64";
reg = <0x55>;
};
};
--
2.9.3
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH v5 06/20] ARM: dts: imx: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 ` [PATCH v5 06/20] ARM: dts: imx: " Javier Martinez Canillas
@ 2017-05-25 7:32 ` Shawn Guo
0 siblings, 0 replies; 26+ messages in thread
From: Shawn Guo @ 2017-05-25 7:32 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, May 23, 2017 at 03:34:34PM +0200, Javier Martinez Canillas wrote:
> The at24 driver allows to register I2C EEPROM chips using different vendor
> and devices, but the I2C subsystem does not take the vendor into account
> when matching using the I2C table since it only has device entries.
>
> But when matching using an OF table, both the vendor and device has to be
> taken into account so the driver defines only a set of compatible strings
> using the "atmel" vendor as a generic fallback for compatible I2C devices.
>
> So add this generic fallback to the device node compatible string to make
> the device to match the driver using the OF device ID table.
>
> Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
Applied, thanks.
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH v5 14/20] arm64: dts: ls1043a: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 ` [PATCH v5 14/20] arm64: dts: ls1043a: " Javier Martinez Canillas
@ 2017-05-25 7:33 ` Shawn Guo
0 siblings, 0 replies; 26+ messages in thread
From: Shawn Guo @ 2017-05-25 7:33 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, May 23, 2017 at 03:34:42PM +0200, Javier Martinez Canillas wrote:
> The at24 driver allows to register I2C EEPROM chips using different vendor
> and devices, but the I2C subsystem does not take the vendor into account
> when matching using the I2C table since it only has device entries.
>
> But when matching using an OF table, both the vendor and device has to be
> taken into account so the driver defines only a set of compatible strings
> using the "atmel" vendor as a generic fallback for compatible I2C devices.
>
> So add this generic fallback to the device node compatible string to make
> the device to match the driver using the OF device ID table.
>
> Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
Applied, thanks.
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH v5 05/20] ARM: dts: efm32: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 ` [PATCH v5 05/20] ARM: dts: efm32: " Javier Martinez Canillas
@ 2017-05-25 18:29 ` Uwe Kleine-König
2017-05-25 20:17 ` Javier Martinez Canillas
0 siblings, 1 reply; 26+ messages in thread
From: Uwe Kleine-König @ 2017-05-25 18:29 UTC (permalink / raw)
To: linux-arm-kernel
Hello,
On Tue, May 23, 2017 at 03:34:33PM +0200, Javier Martinez Canillas wrote:
> The at24 driver allows to register I2C EEPROM chips using different vendor
> and devices, but the I2C subsystem does not take the vendor into account
> when matching using the I2C table since it only has device entries.
>
> But when matching using an OF table, both the vendor and device has to be
> taken into account so the driver defines only a set of compatible strings
> using the "atmel" vendor as a generic fallback for compatible I2C devices.
>
> So add this generic fallback to the device node compatible string to make
> the device to match the driver using the OF device ID table.
>
> Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
Assuming the of-table patch is accepted this can have my:
Acked-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
Otherwise I'm not convinced this is worth the churn.
Thanks
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH v5 05/20] ARM: dts: efm32: Add generic compatible string for I2C EEPROM
2017-05-25 18:29 ` Uwe Kleine-König
@ 2017-05-25 20:17 ` Javier Martinez Canillas
0 siblings, 0 replies; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-05-25 20:17 UTC (permalink / raw)
To: linux-arm-kernel
Hello Uwe,
On Thu, May 25, 2017 at 8:29 PM, Uwe Kleine-K?nig
<u.kleine-koenig@pengutronix.de> wrote:
> Hello,
>
> On Tue, May 23, 2017 at 03:34:33PM +0200, Javier Martinez Canillas wrote:
>> The at24 driver allows to register I2C EEPROM chips using different vendor
>> and devices, but the I2C subsystem does not take the vendor into account
>> when matching using the I2C table since it only has device entries.
>>
>> But when matching using an OF table, both the vendor and device has to be
>> taken into account so the driver defines only a set of compatible strings
>> using the "atmel" vendor as a generic fallback for compatible I2C devices.
>>
>> So add this generic fallback to the device node compatible string to make
>> the device to match the driver using the OF device ID table.
>>
>> Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
>
> Assuming the of-table patch is accepted this can have my:
>
> Acked-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
>
Thanks a lot for the Ack.
> Otherwise I'm not convinced this is worth the churn.
>
Both changes are needed in order to make sure that the driver and DTS
won't regress when the I2C core is modified to report a proper
MODALIAS for I2C devices registered via OF.
> Thanks
> Uwe
>
Best regards,
Javier
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH v5 03/20] ARM: dts: omap: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 ` [PATCH v5 03/20] ARM: dts: omap: Add generic compatible string for I2C EEPROM Javier Martinez Canillas
@ 2017-05-26 15:51 ` Tony Lindgren
0 siblings, 0 replies; 26+ messages in thread
From: Tony Lindgren @ 2017-05-26 15:51 UTC (permalink / raw)
To: linux-arm-kernel
* Javier Martinez Canillas <javier@dowhile0.org> [170523 06:38]:
> The at24 driver allows to register I2C EEPROM chips using different vendor
> and devices, but the I2C subsystem does not take the vendor into account
> when matching using the I2C table since it only has device entries.
>
> But when matching using an OF table, both the vendor and device has to be
> taken into account so the driver defines only a set of compatible strings
> using the "atmel" vendor as a generic fallback for compatible I2C devices.
>
> So add this generic fallback to the device node compatible string to make
> the device to match the driver using the OF device ID table.
Picking this patch into omap-for-v4.13/dt thanks.
Tony
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH v5 00/20] eeprom: at24: Add OF device ID table
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
` (12 preceding siblings ...)
2017-05-23 13:34 ` [PATCH v5 15/20] arm64: zynqmp: " Javier Martinez Canillas
@ 2017-06-01 8:07 ` Javier Martinez Canillas
13 siblings, 0 replies; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-06-01 8:07 UTC (permalink / raw)
To: linux-arm-kernel
Hello Wolfram,
On Tue, May 23, 2017 at 3:34 PM, Javier Martinez Canillas
<javier@dowhile0.org> wrote:
>
> This series is a follow-up to patch [0] that added an OF device ID table
> to the at24 EEPROM driver. As you suggested [1], this version instead of
> adding entries for every used <vendor,device> tuple, only adds a single
> entry for each chip type using the "atmel" vendor as a generic fallback.
>
> The first patch documents in the DT binding what's the correct vendor to
> use and what are the ones that are being deprecated. The second one adds
> the OF device ID table for the at24 driver and the next patches use this
> vendor in the compatible string to each DTS that defines a compatible I2C
> EEPROM device node.
>
> Patches can be applied independently since the DTS changes without driver
> changes are no-op and the OF table won't be used without the DTS changes.
>
> [0]: https://lkml.org/lkml/2017/3/14/589
> [1]: https://lkml.org/lkml/2017/3/15/99
>
Any comments on this series?
Best regards,
Javier
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH v5 12/20] ARM: dts: uniphier: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 ` [PATCH v5 12/20] ARM: dts: uniphier: " Javier Martinez Canillas
@ 2017-06-05 5:13 ` Masahiro Yamada
2017-06-06 9:04 ` Javier Martinez Canillas
0 siblings, 1 reply; 26+ messages in thread
From: Masahiro Yamada @ 2017-06-05 5:13 UTC (permalink / raw)
To: linux-arm-kernel
Hi.
2017-05-23 22:34 GMT+09:00 Javier Martinez Canillas <javier@dowhile0.org>:
> The at24 driver allows to register I2C EEPROM chips using different vendor
> and devices, but the I2C subsystem does not take the vendor into account
> when matching using the I2C table since it only has device entries.
>
> But when matching using an OF table, both the vendor and device has to be
> taken into account so the driver defines only a set of compatible strings
> using the "atmel" vendor as a generic fallback for compatible I2C devices.
>
> So add this generic fallback to the device node compatible string to make
> the device to match the driver using the OF device ID table.
>
> Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
>
> ---
>
> Changes in v5:
> - Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
>
> Changes in v4:
> - Only use the atmel manufacturer in the compatible string instead of
> keeping the deprecated ones (Rob Herring).
>
> Changes in v3: None
> Changes in v2: None
>
> arch/arm/boot/dts/uniphier-pro4-ace.dts | 2 +-
> arch/arm/boot/dts/uniphier-pro4-sanji.dts | 2 +-
> arch/arm/boot/dts/uniphier-pxs2-gentil.dts | 2 +-
> 3 files changed, 3 insertions(+), 3 deletions(-)
Why didn't you touch
arch/arm/boot/dts/uniphier-ref-daughter.dtsi ?
BTW, has the driver change merged?
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH v5 12/20] ARM: dts: uniphier: Add generic compatible string for I2C EEPROM
2017-06-05 5:13 ` Masahiro Yamada
@ 2017-06-06 9:04 ` Javier Martinez Canillas
2017-06-07 1:10 ` Masahiro Yamada
0 siblings, 1 reply; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-06-06 9:04 UTC (permalink / raw)
To: linux-arm-kernel
Hello Masahiro,
On Mon, Jun 5, 2017 at 7:13 AM, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
> Hi.
>
> 2017-05-23 22:34 GMT+09:00 Javier Martinez Canillas <javier@dowhile0.org>:
>> The at24 driver allows to register I2C EEPROM chips using different vendor
>> and devices, but the I2C subsystem does not take the vendor into account
>> when matching using the I2C table since it only has device entries.
>>
>> But when matching using an OF table, both the vendor and device has to be
>> taken into account so the driver defines only a set of compatible strings
>> using the "atmel" vendor as a generic fallback for compatible I2C devices.
>>
>> So add this generic fallback to the device node compatible string to make
>> the device to match the driver using the OF device ID table.
>>
>> Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
>>
>> ---
>>
>> Changes in v5:
>> - Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
>>
>> Changes in v4:
>> - Only use the atmel manufacturer in the compatible string instead of
>> keeping the deprecated ones (Rob Herring).
>>
>> Changes in v3: None
>> Changes in v2: None
>>
>> arch/arm/boot/dts/uniphier-pro4-ace.dts | 2 +-
>> arch/arm/boot/dts/uniphier-pro4-sanji.dts | 2 +-
>> arch/arm/boot/dts/uniphier-pxs2-gentil.dts | 2 +-
>> 3 files changed, 3 insertions(+), 3 deletions(-)
>
>
> Why didn't you touch
> arch/arm/boot/dts/uniphier-ref-daughter.dtsi ?
>
Because the compatible string "microchip,24lc128" used by the I2C
EEPROM node on that DTS is not supported by the
drivers/misc/eeprom/at24.c driver (in fact the only occurrence for
24lc128 I see is in that DTS).
Maybe is a typo and it should be "microchip,24c128" instead ? In any
case, I think this should be fixed as a separate patch and is out of
scope for this series.
>
>
> BTW, has the driver change merged?
>
No, it hasn't been merged yet but there's no strict order in which the
changes should be picked so the DTS patches can be applied
independently. I haven't had feedback from Wolfram yet, but he was the
one who suggested this and so I guess he will be Ok with the driver
changes.
>
>
> --
> Best Regards
> Masahiro Yamada
Best regards,
Javier
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH v5 12/20] ARM: dts: uniphier: Add generic compatible string for I2C EEPROM
2017-06-06 9:04 ` Javier Martinez Canillas
@ 2017-06-07 1:10 ` Masahiro Yamada
2017-06-07 12:42 ` Javier Martinez Canillas
0 siblings, 1 reply; 26+ messages in thread
From: Masahiro Yamada @ 2017-06-07 1:10 UTC (permalink / raw)
To: linux-arm-kernel
Hi Javier,
2017-06-06 18:04 GMT+09:00 Javier Martinez Canillas <javier@dowhile0.org>:
> Hello Masahiro,
>
> On Mon, Jun 5, 2017 at 7:13 AM, Masahiro Yamada
> <yamada.masahiro@socionext.com> wrote:
>> Hi.
>>
>> 2017-05-23 22:34 GMT+09:00 Javier Martinez Canillas <javier@dowhile0.org>:
>>> The at24 driver allows to register I2C EEPROM chips using different vendor
>>> and devices, but the I2C subsystem does not take the vendor into account
>>> when matching using the I2C table since it only has device entries.
>>>
>>> But when matching using an OF table, both the vendor and device has to be
>>> taken into account so the driver defines only a set of compatible strings
>>> using the "atmel" vendor as a generic fallback for compatible I2C devices.
>>>
>>> So add this generic fallback to the device node compatible string to make
>>> the device to match the driver using the OF device ID table.
>>>
>>> Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
>>>
>>> ---
>>>
>>> Changes in v5:
>>> - Only replace atmel variant but keep other EEPROM vendors (Geert Uytterhoeven).
>>>
>>> Changes in v4:
>>> - Only use the atmel manufacturer in the compatible string instead of
>>> keeping the deprecated ones (Rob Herring).
>>>
>>> Changes in v3: None
>>> Changes in v2: None
>>>
>>> arch/arm/boot/dts/uniphier-pro4-ace.dts | 2 +-
>>> arch/arm/boot/dts/uniphier-pro4-sanji.dts | 2 +-
>>> arch/arm/boot/dts/uniphier-pxs2-gentil.dts | 2 +-
>>> 3 files changed, 3 insertions(+), 3 deletions(-)
>>
>>
>> Why didn't you touch
>> arch/arm/boot/dts/uniphier-ref-daughter.dtsi ?
>>
>
> Because the compatible string "microchip,24lc128" used by the I2C
> EEPROM node on that DTS is not supported by the
> drivers/misc/eeprom/at24.c driver (in fact the only occurrence for
> 24lc128 I see is in that DTS).
>
> Maybe is a typo and it should be "microchip,24c128" instead ?
I do not think so.
I consulted a board developer.
I also see 24LC128 on Microchip web site:
http://www.microchip.com/wwwproducts/en/24LC128
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH v5 12/20] ARM: dts: uniphier: Add generic compatible string for I2C EEPROM
2017-06-07 1:10 ` Masahiro Yamada
@ 2017-06-07 12:42 ` Javier Martinez Canillas
2017-06-09 16:12 ` Masahiro Yamada
0 siblings, 1 reply; 26+ messages in thread
From: Javier Martinez Canillas @ 2017-06-07 12:42 UTC (permalink / raw)
To: linux-arm-kernel
Hello Masahiro,
On Wed, Jun 7, 2017 at 3:10 AM, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
[snip]
>>>
>>> Why didn't you touch
>>> arch/arm/boot/dts/uniphier-ref-daughter.dtsi ?
>>>
>>
>> Because the compatible string "microchip,24lc128" used by the I2C
>> EEPROM node on that DTS is not supported by the
>> drivers/misc/eeprom/at24.c driver (in fact the only occurrence for
>> 24lc128 I see is in that DTS).
>>
>> Maybe is a typo and it should be "microchip,24c128" instead ?
>
> I do not think so.
> I consulted a board developer.
>
> I also see 24LC128 on Microchip web site:
> http://www.microchip.com/wwwproducts/en/24LC128
>
Ah Ok, it was just a wild guess I did since the at24 driver didn't
have support for this chip variant.
My point stands though, this is an unrelated change to the goal of
this patch-series and should be fixed separately.
Best regards,
Javier
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH v5 04/20] ARM: dts: turris-omnia: Add generic compatible string for I2C EEPROM
2017-05-23 13:34 ` [PATCH v5 04/20] ARM: dts: turris-omnia: " Javier Martinez Canillas
@ 2017-06-08 17:04 ` Gregory CLEMENT
0 siblings, 0 replies; 26+ messages in thread
From: Gregory CLEMENT @ 2017-06-08 17:04 UTC (permalink / raw)
To: linux-arm-kernel
Hi Javier,
On mar., mai 23 2017, Javier Martinez Canillas <javier@dowhile0.org> wrote:
> The at24 driver allows to register I2C EEPROM chips using different vendor
> and devices, but the I2C subsystem does not take the vendor into account
> when matching using the I2C table since it only has device entries.
>
> But when matching using an OF table, both the vendor and device has to be
> taken into account so the driver defines only a set of compatible strings
> using the "atmel" vendor as a generic fallback for compatible I2C devices.
>
> So add this generic fallback to the device node compatible string to make
> the device to match the driver using the OF device ID table.
>
> Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
Applied on mvebu/dt
Thanks,
Gregory
>
> ---
>
> Changes in v5: None
> Changes in v4:
> - Only use the atmel manufacturer in the compatible string instead of
> keeping the deprecated ones (Rob Herring).
>
> Changes in v3: None
> Changes in v2: None
>
> arch/arm/boot/dts/armada-385-turris-omnia.dts | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> index 28eede180e4f..be16ce39fb3d 100644
> --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
> +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> @@ -171,7 +171,7 @@
> /* leds device (in STM32F0) at address 0x2b */
>
> eeprom at 54 {
> - compatible = "at,24c64";
> + compatible = "atmel,24c64";
> reg = <0x54>;
>
> /* The EEPROM contains data for bootloader.
> --
> 2.9.3
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH v5 12/20] ARM: dts: uniphier: Add generic compatible string for I2C EEPROM
2017-06-07 12:42 ` Javier Martinez Canillas
@ 2017-06-09 16:12 ` Masahiro Yamada
0 siblings, 0 replies; 26+ messages in thread
From: Masahiro Yamada @ 2017-06-09 16:12 UTC (permalink / raw)
To: linux-arm-kernel
2017-06-07 21:42 GMT+09:00 Javier Martinez Canillas <javier@dowhile0.org>:
> Hello Masahiro,
>
> On Wed, Jun 7, 2017 at 3:10 AM, Masahiro Yamada
> <yamada.masahiro@socionext.com> wrote:
>
> [snip]
>
>>>>
>>>> Why didn't you touch
>>>> arch/arm/boot/dts/uniphier-ref-daughter.dtsi ?
>>>>
>>>
>>> Because the compatible string "microchip,24lc128" used by the I2C
>>> EEPROM node on that DTS is not supported by the
>>> drivers/misc/eeprom/at24.c driver (in fact the only occurrence for
>>> 24lc128 I see is in that DTS).
>>>
>>> Maybe is a typo and it should be "microchip,24c128" instead ?
>>
>> I do not think so.
>> I consulted a board developer.
>>
>> I also see 24LC128 on Microchip web site:
>> http://www.microchip.com/wwwproducts/en/24LC128
>>
>
> Ah Ok, it was just a wild guess I did since the at24 driver didn't
> have support for this chip variant.
> My point stands though, this is an unrelated change to the goal of
> this patch-series and should be fixed separately.
>
> Best regards,
> Javier
Applied to linux-uniphier. Thanks!
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 26+ messages in thread
end of thread, other threads:[~2017-06-09 16:12 UTC | newest]
Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-23 13:34 [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 03/20] ARM: dts: omap: Add generic compatible string for I2C EEPROM Javier Martinez Canillas
2017-05-26 15:51 ` Tony Lindgren
2017-05-23 13:34 ` [PATCH v5 04/20] ARM: dts: turris-omnia: " Javier Martinez Canillas
2017-06-08 17:04 ` Gregory CLEMENT
2017-05-23 13:34 ` [PATCH v5 05/20] ARM: dts: efm32: " Javier Martinez Canillas
2017-05-25 18:29 ` Uwe Kleine-König
2017-05-25 20:17 ` Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 06/20] ARM: dts: imx: " Javier Martinez Canillas
2017-05-25 7:32 ` Shawn Guo
2017-05-23 13:34 ` [PATCH v5 07/20] ARM: dts: keystone: " Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 08/20] ARM: dts: lpc18xx: " Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 09/20] ARM: dts: r7s72100: " Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 10/20] ARM: dts: koelsch: " Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 11/20] ARM: dts: socfpga: " Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 12/20] ARM: dts: uniphier: " Javier Martinez Canillas
2017-06-05 5:13 ` Masahiro Yamada
2017-06-06 9:04 ` Javier Martinez Canillas
2017-06-07 1:10 ` Masahiro Yamada
2017-06-07 12:42 ` Javier Martinez Canillas
2017-06-09 16:12 ` Masahiro Yamada
2017-05-23 13:34 ` [PATCH v5 13/20] ARM: dts: zynq: " Javier Martinez Canillas
2017-05-23 13:34 ` [PATCH v5 14/20] arm64: dts: ls1043a: " Javier Martinez Canillas
2017-05-25 7:33 ` Shawn Guo
2017-05-23 13:34 ` [PATCH v5 15/20] arm64: zynqmp: " Javier Martinez Canillas
2017-06-01 8:07 ` [PATCH v5 00/20] eeprom: at24: Add OF device ID table Javier Martinez Canillas
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).