From: Marek Vasut <marex@denx.de>
To: Lukas Wunner <lukas@wunner.de>
Cc: Andrew Lunn <andrew@lunn.ch>,
netdev@vger.kernel.org, "David S . Miller" <davem@davemloft.net>,
Petr Stetiar <ynezz@true.cz>, YueHaibing <yuehaibing@huawei.com>
Subject: Re: [PATCH 07/14] net: ks8851: Use 16-bit writes to program MAC address
Date: Tue, 24 Mar 2020 15:53:30 +0100 [thread overview]
Message-ID: <ab4d5e2d-8e4a-059a-c72a-b343a4a8bfb8@denx.de> (raw)
In-Reply-To: <20200324144710.bw2q7q7c7yiv7nf7@wunner.de>
On 3/24/20 3:47 PM, Lukas Wunner wrote:
> On Tue, Mar 24, 2020 at 02:09:18PM +0100, Marek Vasut wrote:
>> I have a feeling this whole thing might be more messed up then we
>> thought. At least the KS8851-16MLL has an "endian mode" bit in the CCR
>> register, the SPI variant does not.
>
> On the MLL variant of this chip, pin 10 can be pulled up to force it
> into big endian mode, otherwise it's in little-endian mode. Obviously
> this should be configured by the board designer such that it matches
> the CPU's endianness.
Sadly, that's not the case on the device I have here right now.
So I'm suffering the performance impact of having to endian-swap on
every 16bit access.
> Of course we *could* support inverted endianness in case the hardware
> engineer botched the board layout. Not sure if we have to.
>
> In the CCR register that you mention, you can determine whether the
> pin is pulled up or not. If it is in big-endian mode and you're
> on a little-endian CPU, you're hosed and the only option that you've
> got is to invert endianness in software, i.e. in the accessors.
Yes
> If the pin is pulled to ground or not connected (again, can be
> determined from CCR) then you're able to switch the endianness by
> setting bit 11 in the RXFDPR register. No need to convert it in
> the accessors in this case.
That's not the setup I have right now, sadly.
next prev parent reply other threads:[~2020-03-24 14:53 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-23 23:42 [PATCH 00/14] net: ks8851: Unify KS8851 SPI and MLL drivers Marek Vasut
2020-03-23 23:42 ` [PATCH 01/14] net: ks8851: Factor out spi->dev in probe()/remove() Marek Vasut
2020-03-24 1:15 ` Andrew Lunn
2020-03-24 6:46 ` Lukas Wunner
2020-03-23 23:42 ` [PATCH 02/14] net: ks8851: Replace dev_err() with netdev_err() in IRQ handler Marek Vasut
2020-03-24 1:16 ` Andrew Lunn
2020-03-23 23:42 ` [PATCH 03/14] net: ks8851: Pass device pointer into ks8851_init_mac() Marek Vasut
2020-03-24 1:06 ` Andrew Lunn
2020-03-24 7:08 ` Lukas Wunner
2020-03-23 23:42 ` [PATCH 04/14] net: ks8851: Use devm_alloc_etherdev() Marek Vasut
2020-03-24 1:19 ` Andrew Lunn
2020-03-23 23:42 ` [PATCH 05/14] net: ks8851: Use dev_{get,set}_drvdata() Marek Vasut
2020-03-24 1:22 ` Andrew Lunn
2020-03-23 23:42 ` [PATCH 06/14] net: ks8851: Remove ks8851_rdreg32() Marek Vasut
2020-03-24 1:30 ` Andrew Lunn
2020-03-24 12:34 ` Marek Vasut
2020-03-24 7:22 ` Lukas Wunner
2020-03-24 12:37 ` Marek Vasut
2020-03-23 23:42 ` [PATCH 07/14] net: ks8851: Use 16-bit writes to program MAC address Marek Vasut
2020-03-24 1:40 ` Andrew Lunn
2020-03-24 7:17 ` Michal Kubecek
2020-03-24 8:13 ` Lukas Wunner
2020-03-24 12:25 ` Andrew Lunn
2020-03-24 12:36 ` Lukas Wunner
2020-03-24 13:09 ` Marek Vasut
2020-03-24 13:31 ` Marek Vasut
2020-03-24 14:47 ` Lukas Wunner
2020-03-24 14:53 ` Marek Vasut [this message]
2020-03-23 23:42 ` [PATCH 08/14] net: ks8851: Use 16-bit read of RXFC register Marek Vasut
2020-03-24 1:50 ` Andrew Lunn
2020-03-24 12:50 ` Marek Vasut
2020-03-24 13:32 ` Andrew Lunn
2020-03-24 10:41 ` Lukas Wunner
2020-03-24 12:42 ` Marek Vasut
2020-03-23 23:42 ` [PATCH 09/14] net: ks8851: Split out SPI specific entries in struct ks8851_net Marek Vasut
2020-03-24 1:55 ` Andrew Lunn
2020-03-24 10:49 ` Lukas Wunner
2020-03-24 12:27 ` Andrew Lunn
2020-03-23 23:42 ` [PATCH 10/14] net: ks8851: Split out SPI specific code from probe() and remove() Marek Vasut
2020-03-24 1:58 ` Andrew Lunn
2020-03-23 23:43 ` [PATCH 11/14] net: ks8851: Implement register and FIFO accessor callbacks Marek Vasut
2020-03-24 13:45 ` Lukas Wunner
2020-03-24 14:10 ` Marek Vasut
2020-03-24 14:29 ` Lukas Wunner
2020-03-24 14:44 ` Marek Vasut
2020-03-29 14:22 ` Marek Vasut
2020-03-23 23:43 ` [PATCH 12/14] net: ks8851: Separate SPI operations into separate file Marek Vasut
2020-03-23 23:43 ` [PATCH 13/14] net: ks8851: Implement Parallel bus operations Marek Vasut
2020-03-24 8:16 ` kbuild test robot
2020-03-24 8:16 ` kbuild test robot
2020-03-23 23:43 ` [PATCH 14/14] net: ks8851: Remove ks8851_mll.c Marek Vasut
2020-03-24 14:08 ` Lukas Wunner
2020-03-24 14:12 ` Marek Vasut
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=ab4d5e2d-8e4a-059a-c72a-b343a4a8bfb8@denx.de \
--to=marex@denx.de \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=lukas@wunner.de \
--cc=netdev@vger.kernel.org \
--cc=ynezz@true.cz \
--cc=yuehaibing@huawei.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.