diff mbox

[U-Boot,v2] kmp204x: reset the Zarlink clocking chips at power up only

Message ID 1407917869-1444-1-git-send-email-valentin.longchamp@keymile.com
State Superseded
Delegated to: York Sun
Headers show

Commit Message

Valentin Longchamp Aug. 13, 2014, 8:17 a.m. UTC
There is the requirement on the chassis's backplane that when the clocks
have been enabled, they then should not disappear.

Resetting the Zarlink clocking chips at unit reset violates this
requirement because the backplane clocks are not supplied during the
reset time.

To avoid this side effect, both the Zarlink clocking chips are reset
only at power up.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>

---

Changes in v2:
- Improve the commit message for more clarity

 board/keymile/kmp204x/kmp204x.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

York Sun Aug. 13, 2014, 4:51 p.m. UTC | #1
On 08/13/2014 01:17 AM, Valentin Longchamp wrote:
> There is the requirement on the chassis's backplane that when the clocks
> have been enabled, they then should not disappear.
> 
> Resetting the Zarlink clocking chips at unit reset violates this
> requirement because the backplane clocks are not supplied during the
> reset time.
> 
> To avoid this side effect, both the Zarlink clocking chips are reset
> only at power up.
> 
> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
> 
> ---
> 
> Changes in v2:
> - Improve the commit message for more clarity
> 
>  board/keymile/kmp204x/kmp204x.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/board/keymile/kmp204x/kmp204x.c b/board/keymile/kmp204x/kmp204x.c
> index 6bc8eb8..638b2a3 100644
> --- a/board/keymile/kmp204x/kmp204x.c
> +++ b/board/keymile/kmp204x/kmp204x.c
> @@ -94,7 +94,7 @@ int board_early_init_f(void)
>  	qrio_wdmask(BFTIC4_RST, true);
>  
>  	/* set the ZL30138's prstcfg to reset at power-up and unit reset only */
> -	qrio_prstcfg(ZL30158_RST, PRSTCFG_POWUP_UNIT_RST);
> +	qrio_prstcfg(ZL30158_RST, PRSTCFG_POWUP_RST);
>  	/* and take it out of reset as soon as possible (needed for Hooper) */
>  	qrio_prst(ZL30158_RST, false, false);
>  
> @@ -144,7 +144,7 @@ int misc_init_f(void)
>  	qrio_prst(ETH_FRONT_PHY_RST, false, false);
>  
>  	/* set the ZL30343 prstcfg to reset at power-up and unit reset only */
> -	qrio_prstcfg(ZL30343_RST, PRSTCFG_POWUP_UNIT_RST);
> +	qrio_prstcfg(ZL30343_RST, PRSTCFG_POWUP_RST);
>  	/* and enable the WD on it */
>  	qrio_wdmask(ZL30343_RST, true);
>  
> 
Did you miss the comments, or they are still correct after the change?

York
Valentin Longchamp Aug. 19, 2014, 1:33 p.m. UTC | #2
On 08/13/2014 06:51 PM, York Sun wrote:
> On 08/13/2014 01:17 AM, Valentin Longchamp wrote:
>> There is the requirement on the chassis's backplane that when the clocks
>> have been enabled, they then should not disappear.
>>
>> Resetting the Zarlink clocking chips at unit reset violates this
>> requirement because the backplane clocks are not supplied during the
>> reset time.
>>
>> To avoid this side effect, both the Zarlink clocking chips are reset
>> only at power up.
>>
>> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
>>
>> ---
>>
>> Changes in v2:
>> - Improve the commit message for more clarity
>>
>>  board/keymile/kmp204x/kmp204x.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/board/keymile/kmp204x/kmp204x.c b/board/keymile/kmp204x/kmp204x.c
>> index 6bc8eb8..638b2a3 100644
>> --- a/board/keymile/kmp204x/kmp204x.c
>> +++ b/board/keymile/kmp204x/kmp204x.c
>> @@ -94,7 +94,7 @@ int board_early_init_f(void)
>>  	qrio_wdmask(BFTIC4_RST, true);
>>  
>>  	/* set the ZL30138's prstcfg to reset at power-up and unit reset only */
>> -	qrio_prstcfg(ZL30158_RST, PRSTCFG_POWUP_UNIT_RST);
>> +	qrio_prstcfg(ZL30158_RST, PRSTCFG_POWUP_RST);
>>  	/* and take it out of reset as soon as possible (needed for Hooper) */
>>  	qrio_prst(ZL30158_RST, false, false);
>>  
>> @@ -144,7 +144,7 @@ int misc_init_f(void)
>>  	qrio_prst(ETH_FRONT_PHY_RST, false, false);
>>  
>>  	/* set the ZL30343 prstcfg to reset at power-up and unit reset only */
>> -	qrio_prstcfg(ZL30343_RST, PRSTCFG_POWUP_UNIT_RST);
>> +	qrio_prstcfg(ZL30343_RST, PRSTCFG_POWUP_RST);
>>  	/* and enable the WD on it */
>>  	qrio_wdmask(ZL30343_RST, true);
>>  
>>
> Did you miss the comments, or they are still correct after the change?
> 

Yeah I missed them, sorry, sending V3.

Valentin
diff mbox

Patch

diff --git a/board/keymile/kmp204x/kmp204x.c b/board/keymile/kmp204x/kmp204x.c
index 6bc8eb8..638b2a3 100644
--- a/board/keymile/kmp204x/kmp204x.c
+++ b/board/keymile/kmp204x/kmp204x.c
@@ -94,7 +94,7 @@  int board_early_init_f(void)
 	qrio_wdmask(BFTIC4_RST, true);
 
 	/* set the ZL30138's prstcfg to reset at power-up and unit reset only */
-	qrio_prstcfg(ZL30158_RST, PRSTCFG_POWUP_UNIT_RST);
+	qrio_prstcfg(ZL30158_RST, PRSTCFG_POWUP_RST);
 	/* and take it out of reset as soon as possible (needed for Hooper) */
 	qrio_prst(ZL30158_RST, false, false);
 
@@ -144,7 +144,7 @@  int misc_init_f(void)
 	qrio_prst(ETH_FRONT_PHY_RST, false, false);
 
 	/* set the ZL30343 prstcfg to reset at power-up and unit reset only */
-	qrio_prstcfg(ZL30343_RST, PRSTCFG_POWUP_UNIT_RST);
+	qrio_prstcfg(ZL30343_RST, PRSTCFG_POWUP_RST);
 	/* and enable the WD on it */
 	qrio_wdmask(ZL30343_RST, true);