chipset documentation

Live forum: http://rt2x00.serialmonkey.com/viewtopic.php?t=5336

mgessner

05-05-2009 20:18:11

Where can one find the rt28xx-related device manuals?

In particular, I'm interested in the leds right now.

My module (SparkLAN 506N) has 2 leds, blue and amber. The amber one flashes all the time.

I'm wondering how one controls them.

Thanks,

-mg

IvD

06-05-2009 06:19:27

Chipset documentation cannot be shared to outside this project.

What you are looking for is the LED_CFG register which is defined in rt2800usb.h
and in rt2800usb.c the functions

rt2800usb_brightness_set
and rt2800usb_blink_set

Also see rt2800usb_enable_radio()
for the "Initialize LED control" section.

If you need any other information let me know, and I'll check the specsheet document for the answer.

mgessner

06-05-2009 11:46:53

I was wondering which LED is which, and what effect /sys/class/leds/rt2800* entries have on which LEDs.

I noticed that the trigger control in all of the /sys/class/leds/rt2800* directories reads 'none' and that surprised me.

So is the amber one radio, quality, or assoc? And what it the blue one for?

Thanks,

-mg

IvD

06-05-2009 13:26:03

Well the only thing interesting regarding the LED's, is also placed in the rt2800usb.h file.

You can configure LED_CFG_R_LED_MODE, LED_CFG_G_LED_MODE and LED_CFG_Y_LED_MODE
with the following values

[code7cci80t9]
* color LED's:
* 0: off
* 1: blinking upon TX2
* 2: periodic slow blinking
* 3: always on
[/code7cci80t9]

So apparently you can only control the blink, but there isn't anything in the document about assigning the LED to a certain purpose.

As for the triggers, that is correct. The leds aren't hooked up to any triggers except for a manual trigger inside rt2x00. The reason is that the LED library in the kernel demands atomic access to the device for controlling the LED through a trigger. And USB devices cannot be accessed atomically.