Forum Discussion
Configuring TSE & Nichestack
I have Quartus&SBT 11.1, and a board with PHY 83848.
I cannot bring up the eth interface with simple socket example. SOPC configuration is good (i hope), but i can't initialize the software: Your Ethernet MAC address is 00:07:ed:ff:d7:52 prepped 1 interface, initializing... [tse_mac_init] Error opening TX SGDMA init error -22 on net[0] mctest init called IP address of : 0.0.0.0 DHCP timed out, going back to default IP address(es) With a (long) debug session, i saw that tse_mac_device[maxnets] global variable is not properly setted. How can i add a phy profile?39 Replies
- Altera_Forum
Honored Contributor
It seems to me that some other initialiazion function overwrite the correct settings. I checked the setting done by tse_system_info.h & .c file.
I've even erased all the contens of tse_system.info.c, with:
but the contents of tse_mac_device still remains uncorrect# ifdef ALT_INICHE # include "ipport.h"# endif # include "altera_avalon_tse.h"# include "altera_avalon_tse_system_info.h"# include "system.h" /* use tse_mac_device structure as defined in this file * or * customize tse_mac_device structure using API alt_tse_system_add_sys() and alt_tse_sys_enable_mdio_sharing() */ alt_tse_system_info tse_mac_device = { TSE_SYSTEM_EXT_MEM_NO_SHARED_FIFO(TSE_MAC, 0, SGDMA_TX, SGDMA_RX, TSE_PHY_AUTO_ADDRESS, 0, DESCRIPTOR_MEMORY) }; - Altera_Forum
Honored Contributor
The example should run fine without ANY changes. Probably Your Qsys system is set up wrong. Post a screenshot of the system tree.
- Altera_Forum
Honored Contributor
- Altera_Forum
Honored Contributor
Component addresses are wrong, the system is kinda mess...
- Altera_Forum
Honored Contributor
This isn't a PHY problem.
--- Quote Start --- Error opening TX SGDMA --- Quote End --- You should look into this first, and check why the driver couldn't open the TX DMA. Could you show a decription of your SOPC system, and you system.h file (especially the defines for the TSE MAC and the DMAs). - Altera_Forum
Honored Contributor
Ok, i've reassigned base addresses (thanks socrates!) and now i get:
I'm not using MDIOINFO : TSE MAC 0 found at address 0x0a013000 WARNING : MAC Groups->pmac_info MDIO is not used, unable to run PHY detection Created "Inet main" task (Prio: 2) Created "clock tick" task (Prio: 3) WARNING : MAC Group - MDIO not enabled! Speed = 100, Duplex = - Altera_Forum
Honored Contributor
Ok, i have to modify
and place a function pointer for configuration. But i can see only for marvell phy...TSE_SYSTEM_EXT_MEM_NO_SHARED_FIFO(TSE_MAC, 0, SGDMA_TX, SGDMA_RX, TSE_PHY_AUTO_ADDRESS, 0, DESCRIPTOR_MEMORY) - Altera_Forum
Honored Contributor
Did you enable MDIO in the TSE component? You need to enable it in SOPC builder.
- Altera_Forum
Honored Contributor
According to this function in altera_avalon_tse.c your PHY is supported natively so all you need is to enable the MDIO interface and it will be recognised and configured
/* @Function Description - Add additional PHYs which are not supported by default into PHY profile for PHY detection and auto negotiation * * @API TYPE - Public * @param phy pointer to alt_tse_phy_profile structure describing PHY registers * @return index of PHY added in PHY profile on success, else return ALTERA_TSE_MALLOC_FAILED if memory allocation failed * PHY which are currently supported by default : Marvell 88E1111, Marvell Quad PHY 88E1145, National DP83865, and National DP83848C */ alt_32 alt_tse_phy_add_profile(alt_tse_phy_profile *phy) - Altera_Forum
Honored Contributor
I have enabled it, but it seems that's not respoding (program stucks at "InterNiche Portable TCP/IP, v3.1 ").
Is this code correct?
Because in http://www.altera.com/literature/ug/ug_ethernet.pdf pag 55 i see a notphy_mdio_io <= mdio_out_from_the_tse_mac when (mdio_oen_from_the_tse_mac = '1') else ('Z');