Date: Wed, 30 Nov 2011 12:05:53 +0100 From: Stefan Bethke <stb@lassitu.de> To: freebsd-embedded@freebsd.org Subject: Re: TL-WR1043: switch Message-ID: <2D625CC9-A0E3-47AA-A504-CE8FB2F90245@lassitu.de> In-Reply-To: <86030CEE-6839-4B96-ACDC-2BA9AC1E4AE4@lassitu.de> References: <68ABED76-CB1F-405A-8036-EC254F7511FA@lassitu.de> <3B3DB17D-BF87-40EE-B1C1-445F178E8844@lassitu.de> <86030CEE-6839-4B96-ACDC-2BA9AC1E4AE4@lassitu.de>
next in thread | previous in thread | raw e-mail | index | archive | help
Am 29.11.2011 um 23:59 schrieb Stefan Bethke: > Am 28.11.2011 um 23:29 schrieb Stefan Bethke: > >> Am 28.11.2011 um 23:18 schrieb Stefan Bethke: >> >>> So with the GPIOs working, the next step would be to attach a bit-banging I2C device to GPIO 18 and 19. My kernel foo is probably not up to creating the appropriate newbus attachment myself. Anybody want to give me a hint? I'd start by copying lpbb, replacing the parallel port code with appropirate gpio calls. >>> >>> I haven't taken a detailed look at the OpenWrt code, but the datasheet for the RTL8366 can be googled, including a full register map and a description of the VLAN configuration (which I'm most interested in). With a working I2C bus, that shouldn't be too hard, I'd think. >> >> Further looking around, we already have dev/gpio/gpioiic.c. I'll see if I can get it to attach. > > I couldn't get iic to work, so I rolled my own userland bitbanging utility, based roughly on the OpenWrt code (minus some small bugs) and the datasheet. > > I can read and write registers, but to my consternation, most of the functionality (MIB counters, ST controls, etc.) seems to be somehow disabled or just plain missing. > > I'll try to get a basic utility up and running to use the basic VLAN mode (not the table-based mode) tomorrow. Once that's working suffiently well, I could make it into a stand-alone driver, or see if it can be integrated into Aleksandrs work. Either I'm doing something wrong, or the RTL8366 is working a lot differently from the datasheet. I've put the source as well as a binary up for download; could someone with a running WR1043 run the command and post the results here? http://www.lassitu.de/freebsd/rtl.tbz Here's my output directly after reboot: # ./rtl -D 00 0830 0000 0000 0000 00b0 2805 0000 0000 08 0000 0f45 83ed 0101 0000 0200 0000 0001 10 ffff ffff ffff ffff 7660 6060 fe76 6060 18 0000 0000 0000 0000 0000 0000 0000 0000 20 0001 ffff 0000 0002 0000 0000 0003 0000 28 0000 0004 0000 0000 0005 0000 0000 0006 30 0000 0000 0007 0000 0000 0008 0000 0000 38 0009 0000 0000 000a 0000 0000 000b 0000 40 0000 000c 0000 0000 000d 0000 0000 000e 48 0000 0000 000f 0000 0000 0010 0000 0000 50 ffff ffff ffff ffff ffff ffff ffff ffff 58 0000 0000 0000 0000 5937 0000 0000 0000 60 0000 0000 0000 0000 0000 0000 0000 0000 68 0000 0000 0000 0000 0000 0000 0000 0000 70 0000 0000 0000 0000 0000 0000 0000 0000 78 0000 0000 0000 0000 0000 0000 0000 0000 # ./rtl -v VTCR0[0] EN_VLAN = enabled VTCR0[1] VLAN_TAG_AWARE = disabled VTCR0[2] VLAN_TAG_ADMIT = enabled VTCR0[3] EN_INGRESS_RULE = disabled VTCR0[4] EN_UC_LEAKY = disabled VTCR0[5] EN_ARP_LEAKY = disabled VTCR0[6] EN_IPMC_LEAKY = disabled VTCR0[12] EN_TG_DROP = disabled WAN 1 2 3 4 CPU Tagging keep keep keep keep keep keep 00= 3702 - - - - - * 01= 0 - - - - - - 02= 0 - - - - - - 03= 0 - - - - - - 04= 0 - - - - - - 05= 1 * * * * * * 06= 0 - * - - - - 07= 0 - - - - - - 08= 3 - - - - - - 09= 0 - - * - - - 10= 0 - - - - - - 11= 5 - - - - - - 12= 0 - * * - - - 13= 0 - - - - - - 14= 7 - - - - - - 15= 0 - - - * - - Stefan -- Stefan Bethke <stb@lassitu.de> Fon +49 151 14070811
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2D625CC9-A0E3-47AA-A504-CE8FB2F90245>
