From: sebastian.hesselbarth@gmail.com (Sebastian Hesselbarth)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/4] clk: kirkwood: Add CLK_IGNORE_UNUSED to ethernet ge0 and ge1 clocks
Date: Tue, 01 Oct 2013 21:15:44 +0200 [thread overview]
Message-ID: <524B1F60.1020206@gmail.com> (raw)
In-Reply-To: <524B1E12.9080302@gmail.com>
On 10/01/2013 09:10 PM, Sebastian Hesselbarth wrote:
> On 10/01/2013 06:45 PM, Jason Gunthorpe wrote:
>> On Tue, Oct 01, 2013 at 04:43:54PM +0200, Sebastian Hesselbarth wrote:
>>
>>> The local-mac-address property is a placeholder for the real mac
>>> address. Also, mv643xx_eth calls of_get_mac_address which fails for
>>> the invalid local-mac-address value of [00 00 00 00 00 00].
>>>
>>> If you manage to setup local-mac-address in your bootloader, everything
>>> should be fine.
>>
>> FWIW, my environment is like this, and it works fine (this is recent,
>> 3.10 didn't work). The driver now properly sets the MAC from the DT.
>>
>> The driver will also need an update to call of_get_phy_mode and set
>> the interface properly, and the board files will need update to
>> specify the phy-mode property. I'm guessing things are working for
>> most people because the POR value happens to match the board?
>>
>>> If we have a DT fixup that takes care of the above for non-DT
>>> bootloaders, everything should be fine.
>>
>> Exactly, the problem is a broken DT on input to the kernel, the proper
>> action, IMHO, is to correct the DT in the kernel, so the hacking is
>> contained. Similar to how pci-fixups.c centralizes fixing of broken
>> firmware for PCI, and how CONFIG_ARM_ATAG_DTB_COMPAT centralizes it
>> for ATAG conversion.
>>
>> BTW, why doesn't CONFIG_ARM_ATAG_DTB_COMPAT fix this? Do the boot
>> loaders on these systems not pass the mac at all??
>>
>>> I still prefer Jason's approach and would give it a try on LAKML and
>>> devtree ML: Backup register contents if of_get_mac_address does not
>>> contain a valid address, and gate clocks.
>>
>> FWIW, I would not use the language of 'backup' - this is a fixup
>> correcting an unsupported input DT.
>>
>> IMHO, when this code triggers it should also:
>>
>> printk(KERN_ERROR FW_BUG "local-mac-address is not set");
>
> Ezequiel,
>
> before you jump to prepare a patch for the above, I made one based on
> my previous work and JasonG's suggestions above. Testing it right now,
> looks promising.
And works:
Uncompressing Linux... done, booting the kernel.
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 3.12.0-rc3-dirty (hesselba at edge) (gcc
version 4.4.6 (Debian 4.4.6-14) ) #9 PREEMPT Tue Oct 1 21:01:34 CEST 2013
...
[ 0.100128] [Firmware Bug]:
/ocp at f1000000/ethernet-controller at 72000/ethernet0-port at 0:
local-mac-address is not set
...
# cat /sys/kernel/debug/clk/clk_summary
clock enable_cnt prepare_cnt rate
---------------------------------------------------------------------
...
tclk 6 6 200000000
...
ge1 0 0 200000000
...
ge0 0 0 200000000
# insmod mvmdio.ko
[ 172.888802] libphy: orion_mdio_bus: probed
# insmod mv643xx_eth.ko
[ 175.790366] mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
[ 176.811888] mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC
address 02:50:43:19:fd:e2
> @JasonC: To avoid rebase mess again, where do you want it based against?
next prev parent reply other threads:[~2013-10-01 19:15 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-30 21:03 [PATCH 0/4] Kirkwood: minor cleanups Ezequiel Garcia
2013-09-30 21:03 ` [PATCH 1/4] ARM: kirkwood: Remove unneeded MBus initialization Ezequiel Garcia
2013-10-08 16:19 ` Jason Cooper
2013-09-30 21:03 ` [PATCH 2/4] ARM: kirkwood: Remove unneeded PCIe clock adding Ezequiel Garcia
2013-10-01 16:01 ` Ezequiel Garcia
2013-10-01 17:45 ` Jason Gunthorpe
2013-10-01 19:20 ` Arnaud Ebalard
2013-10-08 16:22 ` Jason Cooper
2013-09-30 21:03 ` [PATCH 3/4] clk: kirkwood: Add CLK_IGNORE_UNUSED to ethernet ge0 and ge1 clocks Ezequiel Garcia
2013-09-30 21:31 ` Jason Gunthorpe
2013-09-30 21:34 ` Andrew Lunn
2013-09-30 21:44 ` Jason Gunthorpe
2013-10-01 14:35 ` Jason Cooper
2013-10-01 0:40 ` Jason Cooper
2013-10-01 13:42 ` Ezequiel Garcia
2013-10-01 13:49 ` Sebastian Hesselbarth
2013-10-01 14:22 ` Ezequiel Garcia
2013-10-01 14:43 ` Sebastian Hesselbarth
2013-10-01 16:45 ` Jason Gunthorpe
2013-10-01 16:49 ` Jason Cooper
2013-10-01 19:10 ` Sebastian Hesselbarth
2013-10-01 19:15 ` Sebastian Hesselbarth [this message]
2013-10-02 12:02 ` Jason Cooper
2013-10-02 12:05 ` Sebastian Hesselbarth
2013-10-01 13:58 ` Jason Cooper
2013-10-01 14:17 ` Ezequiel Garcia
2013-10-01 15:01 ` Jason Cooper
2013-10-01 15:09 ` Thomas Petazzoni
2013-10-01 15:15 ` Jason Cooper
2013-10-01 15:33 ` Thomas Petazzoni
2013-10-01 15:36 ` Jason Cooper
2013-10-01 15:42 ` Thomas Petazzoni
2013-10-01 15:53 ` Jason Cooper
2013-10-01 15:59 ` Sebastian Hesselbarth
2013-10-08 16:24 ` Jason Cooper
2013-09-30 21:03 ` [PATCH 4/4] ARM: kirkwood: Remove redundant ethernet clock enable Ezequiel Garcia
2013-09-30 21:16 ` [PATCH 0/4] Kirkwood: minor cleanups Andrew Lunn
2013-09-30 21:26 ` Ezequiel Garcia
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=524B1F60.1020206@gmail.com \
--to=sebastian.hesselbarth@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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).