Raspberry Pi has the full HDMI implementation, alongside the basic audio/video output it can use "HDMI-CEC," a less well-known communications protocol built in the HDMI specification. CEC stands for "Consumer Electronics Control".
This allows your TV to communicate with HDMI devices, like a Playstation 3 and a Raspberry Pi. I'm fairly sure data can be sent both ways: you can use R-Pi to control aspects of your TV or use your TV to control your R-Pi.
What you may not know is that on your current TV remote there should be buttons deliberately set aside to control attached HDMI devices through HDMI-CEC. If you have a Sony Bravia TV, the buttons are labeled "Bravia Sync" or sometimes "Bravia Link". Other companies have different names for this feature.
These buttons on your remote can be used with Raspberry Pi.
After reading around, it seems HDMI-CEC support opens up a wide range of possibilities above and beyond the basic "use TV remote to control media playback" with your remotes basic 'play', 'stop', 'rewind' and 'fast forward' buttons.
First it may be possible to create a clone of pulse-eight's USB to HDMI-CEC box.
Second, I believe HDMI-CEC is what Playstation 3 uses to switch the television input device to itself when it powers on. We can make R-Pi do this. This opens up a range of possibilities using alternate input devices, such as using a Wii remote's power on button to switch to R-Pi's channel. But I think the first idea (of controlling your TV from Raspberry Pi) depends on the following:
Quote from jonsmirl (114798) on September 7 2011, 19:02 [via slashdot]
Is the HDMI CEC wire hooked up with a driver transistor? Hooking up that wire will let the PI control all of the HDMI devices. People are already doing this with the Beagleboard so there is software available.
Hopefully R-Pi will have full HDMI-CEC support eventually. It seems pretty rare to have devices with HDMI-CEC done at all. It's really good we have one (that we have full control over too).