* [U-Boot-Users] Passing MACs to Linux @ 2008-06-05 14:49 Russell McGuire 2008-06-05 15:02 ` Wolfgang Denk 2008-06-05 15:31 ` Jerry Van Baren 0 siblings, 2 replies; 6+ messages in thread From: Russell McGuire @ 2008-06-05 14:49 UTC (permalink / raw) To: u-boot Guys, I am sure this has been brought up a number of times, so forgive me in advance. I did notice however, not sure which version, but between 1.3.1 and 1.3.3 U-boot That my MAC for my Ethernet device was no longer being passed into linux, or perhaps over written by the blob. So for a quick status check. What is the current operation / priority of how MACs are passed into Linux 2.6.24+ vs the U-boot 1.3.3+ environment string? Russell McGuire Senior Systems Engineer rmcguire at videopresence.com 503.888.0968 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.denx.de/pipermail/u-boot/attachments/20080605/f9c01f0a/attachment.htm ^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot-Users] Passing MACs to Linux 2008-06-05 14:49 [U-Boot-Users] Passing MACs to Linux Russell McGuire @ 2008-06-05 15:02 ` Wolfgang Denk 2008-06-05 15:59 ` Russell McGuire 2008-06-05 15:31 ` Jerry Van Baren 1 sibling, 1 reply; 6+ messages in thread From: Wolfgang Denk @ 2008-06-05 15:02 UTC (permalink / raw) To: u-boot In message <E6746F4E58F84F74A00907F0ECE81BE8@absolutdaddy> you wrote: > > I am sure this has been brought up a number of times, so forgive me in > advance. No. We do not forgive ignorance nor intentional ignoring established netiquette which for example requires you to actually search the archives and to read the FAQ before posting. > I did notice however, not sure which version, but between 1.3.1 and 1.3.3 > U-boot Well, please find out which specific version (git commit ID) caused any changes... > That my MAC for my Ethernet device was no longer being passed into linux, or > perhaps over written by the blob. I see. And now you expect us to guess which processor architecture this is, and what board, and you don't even give us a version? You expect too much. > What is the current operation / priority of how MACs are passed into Linux > 2.6.24+ vs the U-boot 1.3.3+ environment string? It dpeneds on a lot of things, including processor architecture in U-Boot, processor architecture in Linux, etc. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de "Love your country but never trust its government." - from a hand-painted road sign in central Pennsylvania ^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot-Users] Passing MACs to Linux 2008-06-05 15:02 ` Wolfgang Denk @ 2008-06-05 15:59 ` Russell McGuire 2008-06-05 16:19 ` Jerry Van Baren 2008-07-09 21:54 ` Paul Gortmaker 0 siblings, 2 replies; 6+ messages in thread From: Russell McGuire @ 2008-06-05 15:59 UTC (permalink / raw) To: u-boot To save most the banter, and rephrasing: What is the 'EXPECTED' current behavior of the 83xx/6xx architecture for the most current 1.3.3+ GIT release of passing MACs into Linux 2.6.24. Lastly, I am using the UEC 83xx driver. I have defined QE_OF. I have defined CONFIG_UEC_ETH. I have defined CONFIG_ETHADDR. My 8360.blob/dts does have MAC address definitions, but are set to ZERO's. <See below> In previous releases this was over written by U-boot, thus using the CONFIG_ETHADDR address to be used within Linux 2.6.24. Most recently <since 1.3.1>, I now have to add valid MACs to the 8360.blob/dts file to get a MAC to be set within Linux. Does U-boot no longer over write if a blob already has any MAC set? I don't care what used to work really, I just would like to know what the current method is. Here is my current dts entry of note, previously <1.3.1> I didn't have to set 'mac-address' / could leave it at all-zeros. Now, I do have to set mac-address. Again, not worried about any previous method working, just looking for current method that is correct. ucc at 2000 { //UCC1 device_type = "network"; compatible = "ucc_geth"; model = "UCC"; device-id = <1>; // UCC1 reg = <2000 200>; interrupts = <20>; interrupt-parent = < &qeic >; /* * mac-address is deprecated and will be removed * in 2.6.25. Only recent versions of * U-Boot support local-mac-address, however. */ mac-address = [ 00 04 9f ef 01 01 ]; local-mac-address = [ 00 00 00 00 00 00 ]; rx-clock = <0>; tx-clock = <19>; phy-handle = <212000>; pio-handle = < &pio1 >; phy-connection-type = "rgmii-id"; }; -Russ History Below Probably not worth reading. >No. We do not forgive ignorance nor intentional ignoring established >netiquette which for example requires you to actually search the >archives and to read the FAQ before posting. I did, and thanks, not mentioned, not up-to-date, or unclear, or broken, or deprecation has been reversed. >Well, please find out which specific version (git commit ID) caused >any changes... Be great, however, my question didn't ask where it broke, just what current behavior was, admittedly hard to answer without known architecture. Most of us don't have time to check several hundreds commit IDs. Besides it doesn't seem broke, perhaps this is planned obsolescence, hence my question. Experience with U-boot has taught me that 80% is user misuse, or not-getting coordinated documentation from all the different pieces that play together. >I see. And now you expect us to guess which processor architecture >this is, and what board, and you don't even give us a version? Yes, I expect full cooperation of the psychic-network, did you get the Memo? Besides surely you are a good enough hacker to have access by now, and have answered your own question. Perhaps we can write a quick application that back searches the list, and throws this into a HEAT style database, with last posted messages, so it can pull my architecture automatically? I'll spiff that up for you, should be on your desk by Monday. Seriously enjoy the humor, apologies for forgetting. Normally I put all that in the subject line to save you from even having to open the post. ^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot-Users] Passing MACs to Linux 2008-06-05 15:59 ` Russell McGuire @ 2008-06-05 16:19 ` Jerry Van Baren 2008-07-09 21:54 ` Paul Gortmaker 1 sibling, 0 replies; 6+ messages in thread From: Jerry Van Baren @ 2008-06-05 16:19 UTC (permalink / raw) To: u-boot Russell McGuire wrote: > To save most the banter, and rephrasing: > > What is the 'EXPECTED' current behavior of the 83xx/6xx architecture for the > most current 1.3.3+ GIT release of passing MACs into Linux 2.6.24. Lastly, I > am using the UEC 83xx driver. > > I have defined QE_OF. > I have defined CONFIG_UEC_ETH. > I have defined CONFIG_ETHADDR. > > My 8360.blob/dts does have MAC address definitions, but are set to ZERO's. > <See below> In previous releases this was over written by U-boot, thus using > the CONFIG_ETHADDR address to be used within Linux 2.6.24. > > Most recently <since 1.3.1>, I now have to add valid MACs to the > 8360.blob/dts file to get a MAC to be set within Linux. Does U-boot no > longer over write if a blob already has any MAC set? I don't care what used > to work really, I just would like to know what the current method is. > > Here is my current dts entry of note, previously <1.3.1> I didn't have to > set 'mac-address' / could leave it at all-zeros. Now, I do have to set > mac-address. Again, not worried about any previous method working, just > looking for current method that is correct. /aliases/ethernet0 = ??? Use "fdt print /", "fdt print /aliases", "fdt chosen", and "fdt bd"(?) at the u-boot command line to see what your blob looks like and how creating the /chosen node and board fixups change it. References: common/fdt_support.c (ethernet fixup for mac address, dereferences the /aliases node) <http://git.denx.de/?p=u-boot.git;a=blob;f=common/fdt_support.c;h=75077442d85dbc2fc38ae02e80be1c5485b391c9;hb=HEAD#l379> > ucc at 2000 { //UCC1 > device_type = "network"; > compatible = "ucc_geth"; > model = "UCC"; > device-id = <1>; // UCC1 > reg = <2000 200>; > interrupts = <20>; > interrupt-parent = < &qeic >; > /* > * mac-address is deprecated and will be removed > * in 2.6.25. Only recent versions of > * U-Boot support local-mac-address, however. > */ > mac-address = [ 00 04 9f ef 01 01 ]; > local-mac-address = [ 00 00 00 00 00 00 ]; > rx-clock = <0>; > tx-clock = <19>; > phy-handle = <212000>; > pio-handle = < &pio1 >; > phy-connection-type = "rgmii-id"; > }; > > -Russ Best regards, gvb ^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot-Users] Passing MACs to Linux 2008-06-05 15:59 ` Russell McGuire 2008-06-05 16:19 ` Jerry Van Baren @ 2008-07-09 21:54 ` Paul Gortmaker 1 sibling, 0 replies; 6+ messages in thread From: Paul Gortmaker @ 2008-07-09 21:54 UTC (permalink / raw) To: u-boot [I know this is old, but it may save someone else some pain...] On Thu, Jun 5, 2008 at 11:59 AM, Russell McGuire <rmcguire@videopresence.com> wrote: > To save most the banter, and rephrasing: > > What is the 'EXPECTED' current behavior of the 83xx/6xx architecture for the > most current 1.3.3+ GIT release of passing MACs into Linux 2.6.24. Lastly, I > am using the UEC 83xx driver. > > I have defined QE_OF. > I have defined CONFIG_UEC_ETH. > I have defined CONFIG_ETHADDR. I'm betting you didn't have CONFIG_HAS_ETH0 though. > > My 8360.blob/dts does have MAC address definitions, but are set to ZERO's. > <See below> In previous releases this was over written by U-boot, thus using > the CONFIG_ETHADDR address to be used within Linux 2.6.24. > > Most recently <since 1.3.1>, I now have to add valid MACs to the > 8360.blob/dts file to get a MAC to be set within Linux. Does U-boot no > longer over write if a blob already has any MAC set? I don't care what used > to work really, I just would like to know what the current method is. The overwrite code is in common/fdt_support.c -- and it only takes place for devices which you define CONFIG_HAS_ETHn (n=0,1,2...) If you don't define this, then your zeros in the dts/dtb live on, and get passed into the kernel as-is. I just tripped over this myself recently. Paul. > > Here is my current dts entry of note, previously <1.3.1> I didn't have to > set 'mac-address' / could leave it at all-zeros. Now, I do have to set > mac-address. Again, not worried about any previous method working, just > looking for current method that is correct. > > ucc at 2000 { //UCC1 > device_type = "network"; > compatible = "ucc_geth"; > model = "UCC"; > device-id = <1>; // UCC1 > reg = <2000 200>; > interrupts = <20>; > interrupt-parent = < &qeic >; > /* > * mac-address is deprecated and will be removed > * in 2.6.25. Only recent versions of > * U-Boot support local-mac-address, however. > */ > mac-address = [ 00 04 9f ef 01 01 ]; > local-mac-address = [ 00 00 00 00 00 00 ]; > rx-clock = <0>; > tx-clock = <19>; > phy-handle = <212000>; > pio-handle = < &pio1 >; > phy-connection-type = "rgmii-id"; > }; > > -Russ > ^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot-Users] Passing MACs to Linux 2008-06-05 14:49 [U-Boot-Users] Passing MACs to Linux Russell McGuire 2008-06-05 15:02 ` Wolfgang Denk @ 2008-06-05 15:31 ` Jerry Van Baren 1 sibling, 0 replies; 6+ messages in thread From: Jerry Van Baren @ 2008-06-05 15:31 UTC (permalink / raw) To: u-boot Russell McGuire wrote: > Guys, > > I am sure this has been brought up a number of times, so forgive me in > advance. > > I did notice however, not sure which version, but between 1.3.1 and > 1.3.3 U-boot That my MAC for my Ethernet device was no longer being > passed into linux, or perhaps over written by the blob. > > So for a quick status check. > > What is the current operation / priority of how MACs are passed into > Linux 2.6.24+ vs the U-boot 1.3.3+ environment string? Check what your .dts source looks like vs. an example .dts of the same processor (and, preferably a similar/same board) from the linux source tree. As you noticed, things have been improving in the 2.6.2x and 1.3.x timeframes, but .dts improvements are necessary to support the code improvements. I would especially look at your .dts and see if it has a /aliases node with properties that point to your CPU, serial, ethernet, (and other?) properties. The newer fixup functions look up the generic name in /aliases and use that to find the "real" property to fix up rather than having lots of hardcoded board/cpu specific #defines compiled into u-boot to fix up the "real" property directly. "All problems in computer science can be solved by another level of indirection." - Butler Lampson HTH, gvb ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2008-07-09 21:54 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2008-06-05 14:49 [U-Boot-Users] Passing MACs to Linux Russell McGuire 2008-06-05 15:02 ` Wolfgang Denk 2008-06-05 15:59 ` Russell McGuire 2008-06-05 16:19 ` Jerry Van Baren 2008-07-09 21:54 ` Paul Gortmaker 2008-06-05 15:31 ` Jerry Van Baren
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox