From: Andrew Lunn <andrew@lunn.ch>
To: Trevor Gross <tmgross@umich.edu>
Cc: FUJITA Tomonori <fujita.tomonori@gmail.com>,
netdev@vger.kernel.org, rust-for-linux@vger.kernel.org
Subject: Re: [PATCH net-next v1 4/4] net: phy: add Applied Micro QT2025 PHY driver
Date: Tue, 16 Apr 2024 14:08:32 +0200 [thread overview]
Message-ID: <0aa87df5-a2b8-45b8-a483-37eee86739bc@lunn.ch> (raw)
In-Reply-To: <CALNs47v+35RX4+ibHrcZgrJEJ52RqWRQUBa=_Aky_6gk1ika4w@mail.gmail.com>
> > + let mut a = MDIO_MMD_PCS;
> > + for (i, val) in fw.data().iter().enumerate() {
> > + if i == 0x4000 {
> > + a = MDIO_MMD_PHYXS;
> > + j = 0x8000;
> > + }
>
> Looks like firmware is split between PCS and PHYXS at 0x4000, but like
> Greg said you should probably explain where this comes from.
>
> > + dev.c45_write(a, j, (*val).into())?;
>
> I think this is writing one byte at a time, to answer Andrew's
> question. Can you write a `u16::from_le_bytes(...)` to alternating
> addresses instead? This would be pretty easy by doing
> `fw.data().chunks(2)`.
That probably does not work, given my understanding of what is going
on. A C45 register is a u16.
The data sheet says:
The 24kB of program memory space is accessible by
MDIO. The first 16kB of memory is located in the
address range 3.8000h - 3.BFFFh. The next 8kB of
memory is located at 4.8000h - 4.9FFFh.
0x3bfff-0x3800 = 0x0x3fff = 16K.
So there are 16K u16 registers mapped onto 16K bytes of SRAM. So each
register holds one byte. Trying to write two bytes every other
register is not something which the datasheet talks about. So i doubt
it will work. Which is shame, because it would double the download
speed.
Andrew
next prev parent reply other threads:[~2024-04-16 12:08 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-15 10:46 [PATCH net-next v1 0/4] net: phy: add Applied Micro QT2025 PHY driver FUJITA Tomonori
2024-04-15 10:46 ` [PATCH net-next v1 1/4] rust: net::phy support config_init driver callback FUJITA Tomonori
2024-04-15 10:46 ` [PATCH net-next v1 2/4] rust: net::phy support C45 helpers FUJITA Tomonori
2024-04-15 14:20 ` Andrew Lunn
2024-04-16 11:40 ` FUJITA Tomonori
2024-04-16 12:38 ` Andrew Lunn
2024-04-16 13:21 ` FUJITA Tomonori
2024-04-16 22:07 ` Benno Lossin
2024-04-16 22:30 ` Andrew Lunn
2024-04-17 8:20 ` Benno Lossin
2024-04-17 13:34 ` Andrew Lunn
2024-04-18 12:47 ` Benno Lossin
2024-04-18 14:32 ` Andrew Lunn
2024-04-18 13:15 ` FUJITA Tomonori
2024-04-16 3:25 ` Trevor Gross
2024-05-27 2:00 ` FUJITA Tomonori
2024-04-15 10:47 ` [PATCH net-next v1 3/4] rust: net::phy support Firmware API FUJITA Tomonori
2024-04-15 11:10 ` Greg KH
2024-04-18 12:51 ` FUJITA Tomonori
2024-04-18 13:05 ` Greg KH
2024-04-18 13:07 ` Greg KH
2024-04-18 13:35 ` FUJITA Tomonori
2024-04-15 13:30 ` Andrew Lunn
2024-04-15 15:45 ` Danilo Krummrich
2024-04-18 13:10 ` FUJITA Tomonori
2024-04-15 10:47 ` [PATCH net-next v1 4/4] net: phy: add Applied Micro QT2025 PHY driver FUJITA Tomonori
2024-04-15 11:15 ` Greg KH
2024-04-18 13:00 ` FUJITA Tomonori
2024-04-18 13:10 ` Greg KH
2024-04-18 13:22 ` FUJITA Tomonori
2024-04-18 14:42 ` Andrew Lunn
2024-04-15 13:48 ` Andrew Lunn
2024-04-15 16:53 ` Andrew Lunn
2024-04-16 4:34 ` Trevor Gross
2024-04-16 6:58 ` Benno Lossin
2024-04-16 11:16 ` FUJITA Tomonori
2024-04-16 12:08 ` Andrew Lunn [this message]
2024-05-24 1:50 ` FUJITA Tomonori
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=0aa87df5-a2b8-45b8-a483-37eee86739bc@lunn.ch \
--to=andrew@lunn.ch \
--cc=fujita.tomonori@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=rust-for-linux@vger.kernel.org \
--cc=tmgross@umich.edu \
/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 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).