- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am working with the Agilex 5 EMAC - but during linux kernel boot there is a hang - I would like to debug this somehow. Signal-tap was my first thought.
However, the etherlink app is not able to be activated unless linux has been spun-up prior, so it's a bit of a catch-22.
Is there any other way to debug this?
Many thanks!
K
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello K606
This is Rolando and will help you with this issue. Can you provide more details of the Ethernet setup that you have? Are you using an HPS emac? Are you working on a custom board or a dev kit? Signal Tap is used mainly when your have a component in the fabric design (maybe a MAC in the fabric), but if you are using the HPS emac, then it may not be very useful.
I think you can increase the verbosity of your kernel to see if there is any idea about what is going on?. You can doit from the kernel command line by adding the loglevel=7 parameter.
When using HPS emac, the issue that are observed normally are addressed by configs in .config or device tree parameters.
You need to identify which emac is the one that you are using and then identify the node in the device tree that corresponds to this emac.
Then, ensure that the node is enabled and that the correct interrupts are associated with this emac.
The emac that you are using, need to be connected to a PHY. Check that a sub-node in the device tree also exist for the PHY. This needs node must be referenced in the emac node. In the emac node you need to indicate the interface that will be used with the PHY (rgmii, sgmii). The PHY is controlled by the HPS through a mdio interface (kind of i2c interface) which has an address, this address needs to be indicated in the PHY node.
For the emac and the PHY, the build of the corresponding drivers need to be enabled through the corresponding CONFIG in the .config.
Thanks
Rolando
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Are you saying that Linux is hanging during boot? If so what are all the messages that linux does print out before hanging? That could give some indication of the nature of the hang ( e.g. what part of the EMAC initialization is hanging )?
If you have access to the ARM DS Debugger, you could step through the driver probe function to locate what software is getting stuck. If you don't have access to the debugger, you could add dev_info() calls in the driver to get more insight to the location of the hang.
From a software point of view, hangs usually indicate no response to a read or write transaction. Has reset to the EMAC been deasserted?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @MattG_Altera @RolandoS_Altera
Yes so in this situation, Linux is hanging @ boot.
I am not really trying to debug this specific issue - more just wanting to know about what methods to go about using to debug this class of problem.
I will look into ARM-DS.
Thanks,
K
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Please login to ‘https://supporttickets.intel.com/s/?language=en_US’, view details of the desire request, and post a feed/response within the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you on your follow-up questions.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page