oga83 wrote:sbav1 wrote: it generates an IRQ to the main SoC
I didn't find any IO for which the scope was triggered when a key was pressed (except on the demodulated IR signal pin)
IRQ could be on P121; as there are many spikes, it would also be triggered very often for some other reasons.
At worse, they may have used polling (SPI is continuously active on P20/P21, so latency would be low when a key is pressed).
I just assumed they use IRQ
, because after each CEC event (I don't have a remote control for my BD-D6900 - so I'm controlling it with TV remote via CEC), SoC IRQ31 count goes up:
Code: Select all
cat /proc/interrupts
CPU0
0: 356839 sdp interrupt controller irqtsd
1: 3199 sdp interrupt controller irqaio
2: 82476 sdp interrupt controller BDGA
3: 411584 sdp interrupt controller SDP Timer tick
4: 0 sdp interrupt controller irqpsd
5: 251 sdp interrupt controller irqse
6: 38 sdp interrupt controller irqae
7: 1282 sdp interrupt controller irqhdmitx
8: 16047 sdp interrupt controller ahci-sata0
9: 0 sdp interrupt controller ahci-sata1
12: 408754 sdp interrupt controller irqDp
13: 2174 sdp interrupt controller ehci_hcd:usb1
14: 0 sdp interrupt controller ehci_hcd:usb2
15: 41064 sdp interrupt controller irqmfc
16: 1886 sdp interrupt controller eth0
17: 42054 sdp interrupt controller sdp-mmc
22: 1 sdp interrupt controller ohci_hcd:usb3
23: 1 sdp interrupt controller ohci_hcd:usb4
26: 4085 sdp interrupt controller sdp-serial
27: 0 sdp interrupt controller SspHandler
28: 81854 sdp interrupt controller sdp_i2c_irq, sdp_i2c_irq
31: 102 sdp interrupt controller front
Err: 0
Looks like SoC IRQ31 ("front") is handled by fpi.ko kernel module, I yet have to take a proper look what's inside..
Being given the timings, I'm pretty sure that P24/P25 is CLK/DATA for I2C front panel, and P20/P21 is CLK/DATA for SPI link with SoC.
When exeDSP is running, we can probably expect an non-stop chatter on SoC-Micom SPI link (watchdog "I'm alive" messages, etc.). Also when the player is in TV mode/media player mode, I think exeDSP constantly commands Renesas Micom to update VFD X:XX:XX display (several times per second), that should also explain subsequent "non-stop" traffic on I2C bus (between Micom and VFD display controller - ???).
I wonder what kind of interface they are using between front panel touch key controller and Renesas Micom in BD-players (in TVs, there are usually two KEY1 & KEY2 lines on IR/function connector for that, and Weltrend Micom measures the voltage levels on those lines using it's built-in analog-digital converters).
When exeDSP is not running (fpi.ko needs to be loaded, though), SoC-Micom SPI communication becomes much more easier to understand
. 'cat /dev/spi0 | ...' yelds some data after each remote keypress - like in TVs, each remote keypress seems to generate at least 2 events (1 key press event + 0 or more key repetition events + 1 key release event). This is for CEC remote, but for real IR remote I expect the same behaviour.
Any idea about the 1.35kHz square wave (P22) ?
Interesting - some kind of PWM signal perhaps, but for what exactly? Is it present while micom is in standby mode, too?
Maybe it's for front panel LED indicators.. Apart from VFD display, there are several (individually driven) LEDs on the front panel (+ the white LED array above the loader - at least in BD-D6900). Also, there seems to be some kind of circuit to control VFD brightness on the front panel display board.