All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
To: Vivien Didelot <vivien.didelot@gmail.com>
Cc: Florian Fainelli <f.fainelli@gmail.com>,
	Andrew Lunn <andrew@lunn.ch>,
	Network Development <netdev@vger.kernel.org>
Subject: Re: reset value of MV88E6XXX_G1_IEEE_PRI
Date: Mon, 27 May 2019 13:02:04 +0000	[thread overview]
Message-ID: <493a84d0-5319-41ce-1437-77daf8813d39@prevas.dk> (raw)
In-Reply-To: <20190527083215.GB2594@t480s.localdomain>

On 27/05/2019 14.32, Vivien Didelot wrote:
> Hi Rasmus,
> 
> On Mon, 27 May 2019 09:36:13 +0000, Rasmus Villemoes <rasmus.villemoes@prevas.dk> wrote:
>> Looking through the data sheets comparing the mv88e6240 and 6250, I
>> noticed that they have the exact same description of the G1_IEEE_PRI
>> register (global1, offset 0x18). However, the current code used by 6240 does
>>
>> int mv88e6085_g1_ieee_pri_map(struct mv88e6xxx_chip *chip)
>> {
>> 	/* Reset the IEEE Tag priorities to defaults */
>> 	return mv88e6xxx_g1_write(chip, MV88E6XXX_G1_IEEE_PRI, 0xfa41);
>> }
>>
>> while if my reading of the data sheet is correct, the reset value is
>> really 0xfa50 (fields 7:6 and 5:4 are RWS to 0x1, field 3:2 and 1:0 are
>> RWR) - and this is also the value I read from the 6250 on our old BSP
>> with an out-of-tree driver that doesn't touch that register. This seems
>> to go way back (at least 3b1588593097). Should this be left alone for
>> not risking breaking existing setups (just updating the comment), or can
>> we make the code match the comment? Or am I just reading this all wrong?
> 
> If the reset value isn't the same, the bits are certainly differently
> organized inside this register, so the proper way would be to add a
> mv88e6240_g1_ieee_pri_map function, used by both 88E6240 and 88E6250.
> 

Based on the very systematic description [ieee tags 7 and 6 are mapped
to 3, 5 and 4 to 2, 3 and 2 to 1, and 1 and 0 to 0], I strongly believe
that 0xfa50 is also the reset value for the 6085, so this is most likely
wrong for all the current chips - though I don't have a 6085 data sheet.

I can certainly add a 6250 variant that does the right thing for the
6250, and I probably will - this is more a question about the current code.

> I'm not a big fan of rewriting the default values, but that is the
> way we chose until we make actually use of these tag priority bits.

Yes, I was wondering why there's a lot of code which simply serves to
set default values - but I guess it makes sense to force the switch into
a known state in case the bootloader did something odd.

Rasmus

  reply	other threads:[~2019-05-27 13:02 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-27  9:36 reset value of MV88E6XXX_G1_IEEE_PRI Rasmus Villemoes
2019-05-27 12:32 ` Vivien Didelot
2019-05-27 13:02   ` Rasmus Villemoes [this message]
2019-05-27 14:20     ` Vivien Didelot
2019-06-03 11:14       ` Rasmus Villemoes

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=493a84d0-5319-41ce-1437-77daf8813d39@prevas.dk \
    --to=rasmus.villemoes@prevas.dk \
    --cc=andrew@lunn.ch \
    --cc=f.fainelli@gmail.com \
    --cc=netdev@vger.kernel.org \
    --cc=vivien.didelot@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.