EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

Old design R2000 and Realtek RTL8019AS duplex issue

Started by "pfo...@astromed.com [rabbit-semi]" June 13, 2016
I have an OLD design based on the TCP/IP demo board. It used the R2000 and the Realtek8019AS Ethernet chip.

I am using the DC8.61 compiler.

For YEARS customers have been running this without issue. Now one customer is demanding we switch to Full Duplex.

I put the #define RT_FULLDUPLEX in the code but it has not switched to full duplex. We are monitoring the state by connecting thru a switch the indicated whether we are half or full duplex.

By comparing the binaries, I can see that the code has changed to make use of the new define, but nothing seems to have changed on the port.

Can anyone comment on this?

-Pete F
Pete,

I can investigate this when I'm back from vacation (Friday or early next week), but I'd recommend the following:

If at all possible, try a simple test program with DC 9.62 to see if it's capable of full duplex on the Realtek8019AS Ethernet driver. If it is, you can explore either porting your existing application from DC 8.61 to DC 9.62. I understand resistance to that, having an app based on DC 8.61 with lots of library tweaks that I didn't want to port myself.

The other option is to review changes to the driver libraries between 8.61 and 9.62 to see if there are any obvious bug fixes related to full duplex. Or search the change log for "duplex" and focus on just changes for a specific DC 9 release.

-Tom
On Jun 13, 2016, at 10:05 AM, p...@astromed.com [rabbit-semi] wrote:

> I have an OLD design based on the TCP/IP demo board. It used the R2000 and the Realtek8019AS Ethernet chip.
>
>
> I am using the DC8.61 compiler.
>
>
> For YEARS customers have been running this without issue. Now one customer is demanding we switch to Full Duplex.
>
>
> I put the #define RT_FULLDUPLEX in the code but it has not switched to full duplex. We are monitoring the state by connecting thru a switch the indicated whether we are half or full duplex.
>
>
> By comparing the binaries, I can see that the code has changed to make use of the new define, but nothing seems to have changed on the port.
>
>
> Can anyone comment on this?
>
>
> -Pete F
>
Tom,

I changed to 9.62 and compiled successfully. Just had to add a couple of defines. Still no joy.
The realtek.lib files are radically different.

What I may try and do is find my original TCPIP demo board can compile with that. I'm not sure how much time my boss wants me to spend on this.

-Pete F

From: r... [mailto:r...]
Sent: Tuesday, June 14, 2016 9:00 AM
To: r...
Subject: Re: [rabbit-semi] Old design R2000 and Realtek RTL8019AS duplex issue

Pete,

I can investigate this when I'm back from vacation (Friday or early next week), but I'd recommend the following:

If at all possible, try a simple test program with DC 9.62 to see if it's capable of full duplex on the Realtek8019AS Ethernet driver. If it is, you can explore either porting your existing application from DC 8.61 to DC 9.62. I understand resistance to that, having an app based on DC 8.61 with lots of library tweaks that I didn't want to port myself.

The other option is to review changes to the driver libraries between 8.61 and 9.62 to see if there are any obvious bug fixes related to full duplex. Or search the change log for "duplex" and focus on just changes for a specific DC 9 release.

-Tom

On Jun 13, 2016, at 10:05 AM, p...@astromed.com [rabbit-semi] wrote:
I have an OLD design based on the TCP/IP demo board. It used the R2000 and the Realtek8019AS Ethernet chip.

I am using the DC8.61 compiler.

For YEARS customers have been running this without issue. Now one customer is demanding we switch to Full Duplex.

I put the #define RT_FULLDUPLEX in the code but it has not switched to full duplex. We are monitoring the state by connecting thru a switch the indicated whether we are half or full duplex.

By comparing the binaries, I can see that the code has changed to make use of the new define, but nothing seems to have changed on the port.

Can anyone comment on this?

-Pete F
Pete,

I did some searching and this post seems to summarize the Realtek issue (independent of the Rabbit's use of it) fairly well:

http://comments.gmane.org/gmane.comp.hardware.microcontrollers.ethernut/2020

My understanding is that you can configure the Realtek chip for full duplex, but won't negotiate that with the switch. You would need to manually configure the switch port for full duplex as well.

Perhaps you could push back to your customer on what the perceived gains are from getting your embedded device to run at full duplex. The Rabbit 2000 is the bottleneck here, and switching to full duplex isn't going to result in huge performance gains.

You could see whether forcing the port to full duplex results in the interface working correctly.

-Tom
On Jun 14, 2016, at 12:58 PM, 'Fournier, Peter' p...@astronovainc.com [rabbit-semi] wrote:

> Tom,
>
>
>
> I changed to 9.62 and compiled successfully. Just had to add a couple of defines. Still no joy.
>
> The realtek.lib files are radically different.
>
>
>
> What I may try and do is find my original TCPIP demo board can compile with that. Im not sure how much time my boss wants me to spend on this.
>
>
>
> -Pete F
>
Tom,

Wow, those posts are from 2004! I don't know how you found them, but that seems to answer the question. I'm going to get IT to get me a managed switch and see If I can get full duplex running. Damned cludgy way to do it but it just may make may customer happy.

We actually redesigned this product for fast Ethernet using a PIC24, but we were stopped from completing the project because they wanted to obsolete the product, then a year later they sold 10 more to this customer who wants full duplex only because he believes half duplex is a threat to his company network infrastructure.

Well done Tom.

-Pete F

From: r... [mailto:r...]
Sent: Monday, June 20, 2016 7:26 PM
To: r...
Subject: Re: [rabbit-semi] Old design R2000 and Realtek RTL8019AS duplex issue

Pete,

I did some searching and this post seems to summarize the Realtek issue (independent of the Rabbit's use of it) fairly well:

http://comments.gmane.org/gmane.comp.hardware.microcontrollers.ethernut/2020

My understanding is that you can configure the Realtek chip for full duplex, but won't negotiate that with the switch. You would need to manually configure the switch port for full duplex as well.

Perhaps you could push back to your customer on what the perceived gains are from getting your embedded device to run at full duplex. The Rabbit 2000 is the bottleneck here, and switching to full duplex isn't going to result in huge performance gains.

You could see whether forcing the port to full duplex results in the interface working correctly.

-Tom
On Jun 14, 2016, at 12:58 PM, 'Fournier, Peter' p...@astronovainc.com [rabbit-semi] wrote:
Tom,

I changed to 9.62 and compiled successfully. Just had to add a couple of defines. Still no joy.
The realtek.lib files are radically different.

What I may try and do is find my original TCPIP demo board can compile with that. I'm not sure how much time my boss wants me to spend on this.

-Pete F
Tom,

IT loaned us a managed switch and I tried it out my code with the RT_FULLDUPLEX defined. I compiled with both 8.xx, 9.xx. I set the switch to every combo I could and only 10mbps/half duplex worked.

So disappointed!!! )-:

I may do a little more searching when I get the time, but I get the feeling I'm flogging a dead horse.

Thanks Tom.

-Pete F

From: r... [mailto:r...]
Sent: Tuesday, June 21, 2016 10:10 AM
To: r...
Subject: RE: [rabbit-semi] Old design R2000 and Realtek RTL8019AS duplex issue
Tom,

Wow, those posts are from 2004! I don't know how you found them, but that seems to answer the question. I'm going to get IT to get me a managed switch and see If I can get full duplex running. Damned cludgy way to do it but it just may make may customer happy.

We actually redesigned this product for fast Ethernet using a PIC24, but we were stopped from completing the project because they wanted to obsolete the product, then a year later they sold 10 more to this customer who wants full duplex only because he believes half duplex is a threat to his company network infrastructure.

Well done Tom.

-Pete F

From: r... [mailto:r...]
Sent: Monday, June 20, 2016 7:26 PM
To: r...
Subject: Re: [rabbit-semi] Old design R2000 and Realtek RTL8019AS duplex issue

Pete,

I did some searching and this post seems to summarize the Realtek issue (independent of the Rabbit's use of it) fairly well:

http://comments.gmane.org/gmane.comp.hardware.microcontrollers.ethernut/2020

My understanding is that you can configure the Realtek chip for full duplex, but won't negotiate that with the switch. You would need to manually configure the switch port for full duplex as well.

Perhaps you could push back to your customer on what the perceived gains are from getting your embedded device to run at full duplex. The Rabbit 2000 is the bottleneck here, and switching to full duplex isn't going to result in huge performance gains.

You could see whether forcing the port to full duplex results in the interface working correctly.

-Tom
On Jun 14, 2016, at 12:58 PM, 'Fournier, Peter' p...@astronovainc.com [rabbit-semi] wrote:

Tom,

I changed to 9.62 and compiled successfully. Just had to add a couple of defines. Still no joy.
The realtek.lib files are radically different.

What I may try and do is find my original TCPIP demo board can compile with that. I'm not sure how much time my boss wants me to spend on this.

-Pete F
Pete,

Did you ever turn on some VERBOSE debug stuff and dump the registers?
Not sure of the #defines and calls, but that might provide some insight
to just "make sure" the rabbit libs are configuring the realtek to your
liking.

-- Dave
On 6/23/2016 5:56 AM, 'Fournier, Peter' p...@astronovainc.com
[rabbit-semi] wrote:
>
> Tom,
>
> IT loaned us a managed switch and I tried it out my code with the
> RT_FULLDUPLEX defined. I compiled with both 8.xx, 9.xx. I set the
> switch to every combo I could and only 10mbps/half duplex worked.
>
> So disappointed!!! )-:
>
> I may do a little more searching when I get the time, but I get the
> feeling Im flogging a dead horse.
>
> Thanks Tom.
>
> -Pete F
>
> *From:*r... [mailto:r...]
> *Sent:* Tuesday, June 21, 2016 10:10 AM
> *To:* r...
> *Subject:* RE: [rabbit-semi] Old design R2000 and Realtek RTL8019AS
> duplex issue
> Tom,
>
> Wow, those posts are from 2004! I dont know how you found them, but
> that seems to answer the question. Im going to get IT to get me a
> managed switch and see If I can get full duplex running. Damned
> cludgy way to do it but it just may make may customer happy.
>
> We actually redesigned this product for fast Ethernet using a PIC24,
> but we were stopped from completing the project because they wanted to
> obsolete the product, then a year later they sold 10 more to this
> customer who wants full duplex only because he believes half duplex is
> a threat to his company network infrastructure. Well done Tom.
>
> -Pete F
>
> *From:*r...
> [mailto:r...]
> *Sent:* Monday, June 20, 2016 7:26 PM
> *To:* r...
> *Subject:* Re: [rabbit-semi] Old design R2000 and Realtek RTL8019AS
> duplex issue
>
> Pete,
>
> I did some searching and this post seems to summarize the Realtek
> issue (independent of the Rabbit's use of it) fairly well:
>
> http://comments.gmane.org/gmane.comp.hardware.microcontrollers.ethernut/2020
>
> My understanding is that you can configure the Realtek chip for full
> duplex, but won't negotiate that with the switch. You would need to
> manually configure the switch port for full duplex as well.
>
> Perhaps you could push back to your customer on what the perceived
> gains are from getting your embedded device to run at full duplex.
> The Rabbit 2000 is the bottleneck here, and switching to full duplex
> isn't going to result in huge performance gains.
>
> You could see whether forcing the port to full duplex results in the
> interface working correctly.
>
> -Tom
>
> On Jun 14, 2016, at 12:58 PM, 'Fournier, Peter'
> p...@astronovainc.com
> [rabbit-semi] wrote:
>
> Tom,
>
> I changed to 9.62 and compiled successfully. Just had to add a couple
> of defines. Still no joy.
>
> The realtek.lib files are radically different.
>
> What I may try and do is find my original TCPIP demo board can compile
> with that. Im not sure how much time my boss wants me to spend on this.
>
> -Pete F
>

The 2024 Embedded Online Conference