mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-24 13:31:02 +07:00
0ea6e61122
Below you will find an updated version from the original series bunching all patches into one big patch updating broken web addresses that are located in Documentation/* Some of the addresses date as far far back as 1995 etc... so searching became a bit difficult, the best way to deal with these is to use web.archive.org to locate these addresses that are outdated. Now there are also some addresses pointing to .spec files some are located, but some(after searching on the companies site)where still no where to be found. In this case I just changed the address to the company site this way the users can contact the company and they can locate them for the users. Signed-off-by: Justin P. Mattock <justinmattock@gmail.com> Signed-off-by: Thomas Weber <weber@corscience.de> Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Cc: Paulo Marques <pmarques@grupopie.com> Cc: Randy Dunlap <rdunlap@xenotime.net> Cc: Michael Neuling <mikey@neuling.org> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
55 lines
1.9 KiB
Plaintext
55 lines
1.9 KiB
Plaintext
The controls for the mux are GPIO [0,1] for source, and GPIO 2 for muting.
|
|
|
|
GPIO0 GPIO1
|
|
0 0 TV Audio
|
|
1 0 FM radio
|
|
0 1 Line-In
|
|
1 1 Mono tuner bypass or CD passthru (tuner specific)
|
|
|
|
GPIO 16(i believe) is tied to the IR port (if present).
|
|
|
|
------------------------------------------------------------------------------------
|
|
|
|
>From the data sheet:
|
|
Register 24'h20004 PCI Interrupt Status
|
|
bit [18] IR_SMP_INT Set when 32 input samples have been collected over
|
|
gpio[16] pin into GP_SAMPLE register.
|
|
|
|
What's missing from the data sheet:
|
|
|
|
Setup 4KHz sampling rate (roughly 2x oversampled; good enough for our RC5
|
|
compat remote)
|
|
set register 0x35C050 to 0xa80a80
|
|
|
|
enable sampling
|
|
set register 0x35C054 to 0x5
|
|
|
|
Of course, enable the IRQ bit 18 in the interrupt mask register .(and
|
|
provide for a handler)
|
|
|
|
GP_SAMPLE register is at 0x35C058
|
|
|
|
Bits are then right shifted into the GP_SAMPLE register at the specified
|
|
rate; you get an interrupt when a full DWORD is received.
|
|
You need to recover the actual RC5 bits out of the (oversampled) IR sensor
|
|
bits. (Hint: look for the 0/1and 1/0 crossings of the RC5 bi-phase data) An
|
|
actual raw RC5 code will span 2-3 DWORDS, depending on the actual alignment.
|
|
|
|
I'm pretty sure when no IR signal is present the receiver is always in a
|
|
marking state(1); but stray light, etc can cause intermittent noise values
|
|
as well. Remember, this is a free running sample of the IR receiver state
|
|
over time, so don't assume any sample starts at any particular place.
|
|
|
|
http://www.atmel.com/dyn/resources/prod_documents/doc2817.pdf
|
|
This data sheet (google search) seems to have a lovely description of the
|
|
RC5 basics
|
|
|
|
http://www.nenya.be/beor/electronics/rc5.htm and more data
|
|
|
|
http://www.ee.washington.edu/circuit_archive/text/ir_decode.txt
|
|
and even a reference to how to decode a bi-phase data stream.
|
|
|
|
http://www.xs4all.nl/~sbp/knowledge/ir/rc5.htm
|
|
still more info
|
|
|