2019-12-02 08:58:14

by Eugen Hristev

[permalink] [raw]
Subject: [PATCH 1/3] dt-bindings: i2c: at91: cosmetic formatting of compatible list

From: Eugen Hristev <[email protected]>

Format the list of compatibles with one compatible per line.

Suggested-by: Peter Rosin <[email protected]>
Signed-off-by: Eugen Hristev <[email protected]>
---
Documentation/devicetree/bindings/i2c/i2c-at91.txt | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/i2c/i2c-at91.txt b/Documentation/devicetree/bindings/i2c/i2c-at91.txt
index 2210f43..d35cd63 100644
--- a/Documentation/devicetree/bindings/i2c/i2c-at91.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-at91.txt
@@ -1,10 +1,16 @@
I2C for Atmel platforms

Required properties :
-- compatible : Must be "atmel,at91rm9200-i2c", "atmel,at91sam9261-i2c",
- "atmel,at91sam9260-i2c", "atmel,at91sam9g20-i2c", "atmel,at91sam9g10-i2c",
- "atmel,at91sam9x5-i2c", "atmel,sama5d4-i2c", "atmel,sama5d2-i2c" or
- "microchip,sam9x60-i2c"
+- compatible : Must be one of:
+ "atmel,at91rm9200-i2c",
+ "atmel,at91sam9261-i2c",
+ "atmel,at91sam9260-i2c",
+ "atmel,at91sam9g20-i2c",
+ "atmel,at91sam9g10-i2c",
+ "atmel,at91sam9x5-i2c",
+ "atmel,sama5d4-i2c",
+ "atmel,sama5d2-i2c",
+ "microchip,sam9x60-i2c".
- reg: physical base address of the controller and length of memory mapped
region.
- interrupts: interrupt number to the cpu.
--
2.7.4


2019-12-02 08:59:27

by Eugen Hristev

[permalink] [raw]
Subject: [PATCH 3/3] i2c: at91: remote default value initialization

From: Eugen Hristev <[email protected]>

Platform data structs are initialized by default with zero values.
Thus it becomes redundant to initialize them manually to zero (false).
Remove extra false initialization for field members in structs.

Suggested-by: Wolfram Sang <[email protected]>
Signed-off-by: Eugen Hristev <[email protected]>
---
drivers/i2c/busses/i2c-at91-core.c | 39 --------------------------------------
1 file changed, 39 deletions(-)

diff --git a/drivers/i2c/busses/i2c-at91-core.c b/drivers/i2c/busses/i2c-at91-core.c
index 5137e62..3da1a8a 100644
--- a/drivers/i2c/busses/i2c-at91-core.c
+++ b/drivers/i2c/busses/i2c-at91-core.c
@@ -66,55 +66,26 @@ static struct at91_twi_pdata at91rm9200_config = {
.clk_max_div = 5,
.clk_offset = 3,
.has_unre_flag = true,
- .has_alt_cmd = false,
- .has_hold_field = false,
- .has_dig_filtr = false,
- .has_adv_dig_filtr = false,
- .has_ana_filtr = false,
};

static struct at91_twi_pdata at91sam9261_config = {
.clk_max_div = 5,
.clk_offset = 4,
- .has_unre_flag = false,
- .has_alt_cmd = false,
- .has_hold_field = false,
- .has_dig_filtr = false,
- .has_adv_dig_filtr = false,
- .has_ana_filtr = false,
};

static struct at91_twi_pdata at91sam9260_config = {
.clk_max_div = 7,
.clk_offset = 4,
- .has_unre_flag = false,
- .has_alt_cmd = false,
- .has_hold_field = false,
- .has_dig_filtr = false,
- .has_adv_dig_filtr = false,
- .has_ana_filtr = false,
};

static struct at91_twi_pdata at91sam9g20_config = {
.clk_max_div = 7,
.clk_offset = 4,
- .has_unre_flag = false,
- .has_alt_cmd = false,
- .has_hold_field = false,
- .has_dig_filtr = false,
- .has_adv_dig_filtr = false,
- .has_ana_filtr = false,
};

static struct at91_twi_pdata at91sam9g10_config = {
.clk_max_div = 7,
.clk_offset = 4,
- .has_unre_flag = false,
- .has_alt_cmd = false,
- .has_hold_field = false,
- .has_dig_filtr = false,
- .has_adv_dig_filtr = false,
- .has_ana_filtr = false,
};

static const struct platform_device_id at91_twi_devtypes[] = {
@@ -142,23 +113,13 @@ static const struct platform_device_id at91_twi_devtypes[] = {
static struct at91_twi_pdata at91sam9x5_config = {
.clk_max_div = 7,
.clk_offset = 4,
- .has_unre_flag = false,
- .has_alt_cmd = false,
- .has_hold_field = false,
- .has_dig_filtr = false,
- .has_adv_dig_filtr = false,
- .has_ana_filtr = false,
};

static struct at91_twi_pdata sama5d4_config = {
.clk_max_div = 7,
.clk_offset = 4,
- .has_unre_flag = false,
- .has_alt_cmd = false,
.has_hold_field = true,
.has_dig_filtr = true,
- .has_adv_dig_filtr = false,
- .has_ana_filtr = false,
};

static struct at91_twi_pdata sama5d2_config = {
--
2.7.4

2019-12-02 09:00:23

by Eugen Hristev

[permalink] [raw]
Subject: [PATCH 2/3] i2c: at91: fix clk_offset for sama5d2

From: Eugen Hristev <[email protected]>

In SAM9X60 datasheet, FLEX_TWI_CWGR register rescription mentions clock
offset of 3 cycles (compared to 4 in eg. SAMA5D3).
This is the same offset as in SAMA5D2.

Fixes: b00277923743 ("i2c: at91: add new platform support for sam9x60")
Suggested-by: Codrin Ciubotariu <[email protected]>
Signed-off-by: Eugen Hristev <[email protected]>
---
drivers/i2c/busses/i2c-at91-core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/i2c/busses/i2c-at91-core.c b/drivers/i2c/busses/i2c-at91-core.c
index e13af48..5137e62 100644
--- a/drivers/i2c/busses/i2c-at91-core.c
+++ b/drivers/i2c/busses/i2c-at91-core.c
@@ -174,7 +174,7 @@ static struct at91_twi_pdata sama5d2_config = {

static struct at91_twi_pdata sam9x60_config = {
.clk_max_div = 7,
- .clk_offset = 4,
+ .clk_offset = 3,
.has_unre_flag = true,
.has_alt_cmd = true,
.has_hold_field = true,
--
2.7.4

2019-12-02 09:03:48

by Eugen Hristev

[permalink] [raw]
Subject: [PATCH v2 2/3] i2c: at91: fix clk_offset for sam9x60

From: Eugen Hristev <[email protected]>

In SAM9X60 datasheet, FLEX_TWI_CWGR register rescription mentions clock
offset of 3 cycles (compared to 4 in eg. SAMA5D3).
This is the same offset as in SAMA5D2.

Fixes: b00277923743 ("i2c: at91: add new platform support for sam9x60")
Suggested-by: Codrin Ciubotariu <[email protected]>
Signed-off-by: Eugen Hristev <[email protected]>
---

Sorry, wrong subject line. Modified to SAM9X60 .


drivers/i2c/busses/i2c-at91-core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/i2c/busses/i2c-at91-core.c b/drivers/i2c/busses/i2c-at91-core.c
index e13af48..5137e62 100644
--- a/drivers/i2c/busses/i2c-at91-core.c
+++ b/drivers/i2c/busses/i2c-at91-core.c
@@ -174,7 +174,7 @@ static struct at91_twi_pdata sama5d2_config = {

static struct at91_twi_pdata sam9x60_config = {
.clk_max_div = 7,
- .clk_offset = 4,
+ .clk_offset = 3,
.has_unre_flag = true,
.has_alt_cmd = true,
.has_hold_field = true,
--
2.7.4

2019-12-03 06:58:55

by Ludovic Desroches

[permalink] [raw]
Subject: Re: [PATCH 1/3] dt-bindings: i2c: at91: cosmetic formatting of compatible list

On Mon, Dec 02, 2019 at 09:56:35AM +0100, Eugen Hristev - M18282 wrote:
> From: Eugen Hristev <[email protected]>
>
> Format the list of compatibles with one compatible per line.
>
> Suggested-by: Peter Rosin <[email protected]>
> Signed-off-by: Eugen Hristev <[email protected]>
Acked-by: Ludovic Desroches <[email protected]>

Thanks

> ---
> Documentation/devicetree/bindings/i2c/i2c-at91.txt | 14 ++++++++++----
> 1 file changed, 10 insertions(+), 4 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/i2c/i2c-at91.txt b/Documentation/devicetree/bindings/i2c/i2c-at91.txt
> index 2210f43..d35cd63 100644
> --- a/Documentation/devicetree/bindings/i2c/i2c-at91.txt
> +++ b/Documentation/devicetree/bindings/i2c/i2c-at91.txt
> @@ -1,10 +1,16 @@
> I2C for Atmel platforms
>
> Required properties :
> -- compatible : Must be "atmel,at91rm9200-i2c", "atmel,at91sam9261-i2c",
> - "atmel,at91sam9260-i2c", "atmel,at91sam9g20-i2c", "atmel,at91sam9g10-i2c",
> - "atmel,at91sam9x5-i2c", "atmel,sama5d4-i2c", "atmel,sama5d2-i2c" or
> - "microchip,sam9x60-i2c"
> +- compatible : Must be one of:
> + "atmel,at91rm9200-i2c",
> + "atmel,at91sam9261-i2c",
> + "atmel,at91sam9260-i2c",
> + "atmel,at91sam9g20-i2c",
> + "atmel,at91sam9g10-i2c",
> + "atmel,at91sam9x5-i2c",
> + "atmel,sama5d4-i2c",
> + "atmel,sama5d2-i2c",
> + "microchip,sam9x60-i2c".
> - reg: physical base address of the controller and length of memory mapped
> region.
> - interrupts: interrupt number to the cpu.
> --
> 2.7.4
>

2019-12-03 07:02:43

by Ludovic Desroches

[permalink] [raw]
Subject: Re: [PATCH v2 2/3] i2c: at91: fix clk_offset for sam9x60

On Mon, Dec 02, 2019 at 10:01:17AM +0100, Eugen Hristev - M18282 wrote:
> From: Eugen Hristev <[email protected]>
>
> In SAM9X60 datasheet, FLEX_TWI_CWGR register rescription mentions clock

typo here: description

> offset of 3 cycles (compared to 4 in eg. SAMA5D3).
> This is the same offset as in SAMA5D2.
>
> Fixes: b00277923743 ("i2c: at91: add new platform support for sam9x60")
> Suggested-by: Codrin Ciubotariu <[email protected]>
> Signed-off-by: Eugen Hristev <[email protected]>
Acked-by: Ludovic Desroches <[email protected]>

Thanks

> ---
>
> Sorry, wrong subject line. Modified to SAM9X60 .
>
>
> drivers/i2c/busses/i2c-at91-core.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/i2c/busses/i2c-at91-core.c b/drivers/i2c/busses/i2c-at91-core.c
> index e13af48..5137e62 100644
> --- a/drivers/i2c/busses/i2c-at91-core.c
> +++ b/drivers/i2c/busses/i2c-at91-core.c
> @@ -174,7 +174,7 @@ static struct at91_twi_pdata sama5d2_config = {
>
> static struct at91_twi_pdata sam9x60_config = {
> .clk_max_div = 7,
> - .clk_offset = 4,
> + .clk_offset = 3,
> .has_unre_flag = true,
> .has_alt_cmd = true,
> .has_hold_field = true,
> --
> 2.7.4
>

2019-12-03 07:14:45

by Ludovic Desroches

[permalink] [raw]
Subject: Re: [PATCH 3/3] i2c: at91: remote default value initialization

On Mon, Dec 02, 2019 at 09:56:41AM +0100, Eugen Hristev - M18282 wrote:
> From: Eugen Hristev <[email protected]>
>
> Platform data structs are initialized by default with zero values.
> Thus it becomes redundant to initialize them manually to zero (false).
> Remove extra false initialization for field members in structs.
>
> Suggested-by: Wolfram Sang <[email protected]>
> Signed-off-by: Eugen Hristev <[email protected]>

Honestly, I prefer an explicit description than saving lines of code, in
a glance you have all the details, don't need to go back to the
structure definition.

As it's a personal belief, I won't argue about it.
Reviewed-by: Ludovic Desroches <[email protected]>

> ---
> drivers/i2c/busses/i2c-at91-core.c | 39 --------------------------------------
> 1 file changed, 39 deletions(-)
>
> diff --git a/drivers/i2c/busses/i2c-at91-core.c b/drivers/i2c/busses/i2c-at91-core.c
> index 5137e62..3da1a8a 100644
> --- a/drivers/i2c/busses/i2c-at91-core.c
> +++ b/drivers/i2c/busses/i2c-at91-core.c
> @@ -66,55 +66,26 @@ static struct at91_twi_pdata at91rm9200_config = {
> .clk_max_div = 5,
> .clk_offset = 3,
> .has_unre_flag = true,
> - .has_alt_cmd = false,
> - .has_hold_field = false,
> - .has_dig_filtr = false,
> - .has_adv_dig_filtr = false,
> - .has_ana_filtr = false,
> };
>
> static struct at91_twi_pdata at91sam9261_config = {
> .clk_max_div = 5,
> .clk_offset = 4,
> - .has_unre_flag = false,
> - .has_alt_cmd = false,
> - .has_hold_field = false,
> - .has_dig_filtr = false,
> - .has_adv_dig_filtr = false,
> - .has_ana_filtr = false,
> };
>
> static struct at91_twi_pdata at91sam9260_config = {
> .clk_max_div = 7,
> .clk_offset = 4,
> - .has_unre_flag = false,
> - .has_alt_cmd = false,
> - .has_hold_field = false,
> - .has_dig_filtr = false,
> - .has_adv_dig_filtr = false,
> - .has_ana_filtr = false,
> };
>
> static struct at91_twi_pdata at91sam9g20_config = {
> .clk_max_div = 7,
> .clk_offset = 4,
> - .has_unre_flag = false,
> - .has_alt_cmd = false,
> - .has_hold_field = false,
> - .has_dig_filtr = false,
> - .has_adv_dig_filtr = false,
> - .has_ana_filtr = false,
> };
>
> static struct at91_twi_pdata at91sam9g10_config = {
> .clk_max_div = 7,
> .clk_offset = 4,
> - .has_unre_flag = false,
> - .has_alt_cmd = false,
> - .has_hold_field = false,
> - .has_dig_filtr = false,
> - .has_adv_dig_filtr = false,
> - .has_ana_filtr = false,
> };
>
> static const struct platform_device_id at91_twi_devtypes[] = {
> @@ -142,23 +113,13 @@ static const struct platform_device_id at91_twi_devtypes[] = {
> static struct at91_twi_pdata at91sam9x5_config = {
> .clk_max_div = 7,
> .clk_offset = 4,
> - .has_unre_flag = false,
> - .has_alt_cmd = false,
> - .has_hold_field = false,
> - .has_dig_filtr = false,
> - .has_adv_dig_filtr = false,
> - .has_ana_filtr = false,
> };
>
> static struct at91_twi_pdata sama5d4_config = {
> .clk_max_div = 7,
> .clk_offset = 4,
> - .has_unre_flag = false,
> - .has_alt_cmd = false,
> .has_hold_field = true,
> .has_dig_filtr = true,
> - .has_adv_dig_filtr = false,
> - .has_ana_filtr = false,
> };
>
> static struct at91_twi_pdata sama5d2_config = {
> --
> 2.7.4
>

2019-12-06 16:59:36

by Codrin Ciubotariu

[permalink] [raw]
Subject: Re: [PATCH 2/3] i2c: at91: fix clk_offset for sama5d2

On 02.12.2019 10:56, Eugen Hristev - M18282 wrote:
> From: Eugen Hristev <[email protected]>
>
> In SAM9X60 datasheet, FLEX_TWI_CWGR register rescription mentions clock
> offset of 3 cycles (compared to 4 in eg. SAMA5D3).
> This is the same offset as in SAMA5D2.
>
> Fixes: b00277923743 ("i2c: at91: add new platform support for sam9x60")
> Suggested-by: Codrin Ciubotariu <[email protected]>
> Signed-off-by: Eugen Hristev <[email protected]>

Reviewed-by: Codrin Ciubotariu <[email protected]>

Thanks!

Best regards,
Codrin

> ---
> drivers/i2c/busses/i2c-at91-core.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/i2c/busses/i2c-at91-core.c b/drivers/i2c/busses/i2c-at91-core.c
> index e13af48..5137e62 100644
> --- a/drivers/i2c/busses/i2c-at91-core.c
> +++ b/drivers/i2c/busses/i2c-at91-core.c
> @@ -174,7 +174,7 @@ static struct at91_twi_pdata sama5d2_config = {
>
> static struct at91_twi_pdata sam9x60_config = {
> .clk_max_div = 7,
> - .clk_offset = 4,
> + .clk_offset = 3,
> .has_unre_flag = true,
> .has_alt_cmd = true,
> .has_hold_field = true,
>