I am using the RGMII for GBit ethernet, while the webserver example uses the MII on 100 MBit.
On reading through the xtcp source code I saw that the xtcp thread started in the main() function has many optional parameters and I thought that simply passing an rgmii rx,tx,cfg interface instead of a mii interface might achieve what I wanted.
After doing this, the xtcp thread hangs. The thread stops executing whenever the first cfg/rx/tx interface function is called. Pausing execution shows the program is waiting for a control token to be received over a chanel at
Code: Select all
static void send_cmd(chanend c, xtcp_cmd_t cmd, int conn_id)
> chkct(c, XS1_CT_END);
Sending the CT the program waits for should be done in functions in xtcp_server.xc file. The channel transactions do not block when the webserver example is run (uses a raw mii interface), but blocks when I change the example to use RGMII interfaces.