Support for RTL838x based managed switches

Maybe better make it @I2C addr

Just don't connect them to different busses and same address.

That is why busnr-addr is usually used

Why reinvent the wheel when hwmon-N is guaranteed to be unique, and potentially clearer from a user perspective? I know I get my voltage from /sys/class/hwmonN/. What's that in bus-addr?

1 Like

No need, I am fine with whatever

Interesting - currently, there is only the framework needing extension for 802.3af and at support as it seems.

@mrnuke I'd be glad if you fixed the debugfs thing. I'll clean up the power enable code next week and send it upstream.

Yeah, its just basic PoDL

Hey @Timeless

so that's pretty sneaky. I contacted gpl@tp-link.com and asked them to put up various links. They did, I did not however realize they made it so that it's region bound! That's so crappy, but at least now I realize why they asked me where I was from.

I asked for GPL sources for the SG2008p V6 (it was missing) to which they replied 'this is only for US market'. I kindly repsonded that the GPL applies world-wide, so they informed the web-admin. Big fat sigh.

I also requested sources for the ST-5008f (which should be a rtl93xx based device, so very interested int he GPL dump) but they've sent me to TP-Link China, saying 'this is only a chinese devices' sigh.

I have not tried to compile the TP-Link SDK yet, I probably want to get the bootloader compiled (with removed RTL shell) at some point, but first need to aquire an RTL83xx hardware. I know from the 'normal'/XyXEL sdk, that you first need to run make rtl9300 (probably 8380 see defConf.mk in this readme.)

On my list was exactly that switch, the TL-SG2210MP as well, but was hesitant without some inside fotos (only want to buy it if it uses the TI chips). @timeless can you upload some pictures here? That would be much appreciated!

For development, I built TP-Link's U-Boot from source and flashed it using an SOIC-16 clip to the device.
do you have a 'quick list' what you did to make that happen? I can re-figure it out :stuck_out_tongue: but usually these vendor instructions are far from ideal. Took me a day or so to get the ZyXEL u-boot compiled due to tons of weirdness.

That was pretty easy and the instructions are on the Wiki: https://svanheule.net/switches/t1600g-52ps#compiling_a_new_bootloader

1 Like

Gpl is one thing, export laws is another and export laws wins over gpl.

Great to know that there are more people interested in this switch!

@timeless can you upload some pictures here? That would be much appreciated!

Sure, I try to make some picture sometime this week.

only want to buy it if it uses the TI chips

Which TI chip are you looking for?

I heard mentions of a TL-SG2008P. If you're going to re-flash the bootloader on that, you might need to make sure the code that disables the external watchdog is enabled:

  • define CONFIG_OS_8G_60W in arch/mips/cpu/mips4kec/rtl838x/soc_init.S

Otherwise you'll just bootloop.

@timeless can you upload some pictures here?

Pictures of the TP-Link SG2210MP v3:


The main PCB

There are 4 driver chips controlling the LED's (1 is behind the cable)

2 Likes

This doesn't look like Ti PoE controllers which I assume @olliver is looking for. A quick web search returned nothing for the chip markings, but I'm not sure if I've read them correctly:

2184
147AQ0G

They do seem to be directly connected to the SoC, similar to the TPS23861 ones in my SG2452P.

Found the XS2184, also used in the TP-Link RTL-switch: https://www.acwifi.net/21706.html

EDIT: hard to find any info on this thing. This is interesting, but none of the links work (for me):

There is a chinese datasheet, but its really short:

But what are you trying to say? That we won't get GPL sources because of export laws?

Lets see if google-translate can make it work; else I'll ask some friends for a translation :slight_smile:
But it doens't have to be big or complicated, in the end, its a simple switch with a handful of registers, probably not that dissimilar from the TI ones. But sucks that they are using different chips :frowning:

Thats the thing, I dont see any registers being documented