Electronic – How to connect Ethernet Switch IC with ARM9 CPU

arm9ethernet

I'm planning to develop an ARM9 based Linux board as an Ethernet wired router device.

I selected EP9302 from Cirrus Logic as the ARM9 CPU and RTL8305 from RealTek as the Ethernet Switch/Hub IC.

But I have a serious problem on designing the router with those things. I need 1*WAN port for Internet and 4*LAN ports for switching on device. For that, RTL8305 should be connected with two MII interfaces. I mean EP9302 should provide two Ethernet Interface (such as eth0, eht1). But, unfortunately, EP9302 has only one Ethernet interface.

Are there any solution for this problem?

I heard I may control Ethernet Switch Chip with GPIO pins. But I don't know how to configure them and how to connect them.

Best Answer

There are three solutions at least:

I'm surprised seeing this question downvoted because it addresses an architecture very popular even today. And i'm surprised seeing the Xiong's answer downvoted too because except mis-writing "PHY" instead of "SWITCH" (that could be corrected from the context, imo) he was right in full.