[Samsung Galaxy R i9103] SPLESH:
Hi

About NFC i did quick search for the kernel sources and can confirm that it has option for NXP PN544 chip but it's support not compiled in kernel (no option CONFIG_PN544 enabled or even not exists)

Here is code from board-n1.c (which is our phone bord def)

#ifdef CONFIG_PN544
static void n1_nfc_init(void)
{
gpio_request(GPIO_NFC_IRQ, "nfc_irq");
gpio_request(GPIO_NFC_EN, "nfc_en");
gpio_request(GPIO_NFC_FIRMWARE, "nfc_firm");

gpio_direction_input(GPIO_NFC_IRQ);
gpio_direction_output(GPIO_NFC_EN, 0);
gpio_direction_output(GPIO_NFC_FIRMWARE, 0);

tegra_gpio_enable(GPIO_NFC_IRQ);
tegra_gpio_enable(GPIO_NFC_EN);
tegra_gpio_enable(GPIO_NFC_FIRMWARE);
}
#endif
...
#ifdef CONFIG_PN544
n1_nfc_init();
#endif

About HDMI i fond parts of code for Silicon Image SII9234 mhl but there is no support of it in SGR kernel

This thread has some info about SII9234 and HDMI from USB

http://xdaforums.com/showthread.php?t=960145

And home site

http://www.siliconimage.com/products/product.aspx?pid=169

I can confirm that it is in code and in the gpio map

this is from kernel source

#ifdef CONFIG_MHL_SII9234
#define GPIO_INPUT	0
#define GPIO_OUTPUT	1
#define GPIO_LEVEL_LOW	0
#define GPIO_LEVEL_HIGH	1
#define GPIO_LEVEL_NONE	2

static unsigned int mhl_gpio_table[][3] = {
{GPIO_MHL_SEL, GPIO_OUTPUT, GPIO_LEVEL_LOW},
{GPIO_MHL_RST, GPIO_OUTPUT, GPIO_LEVEL_HIGH},
{GPIO_MHL_INT, GPIO_INPUT, GPIO_LEVEL_NONE},
{GPIO_MHL_WAKE_UP, GPIO_INPUT, GPIO_LEVEL_NONE},
{GPIO_HDMI_LDO_EN, GPIO_OUTPUT, GPIO_LEVEL_LOW},
};

const char *mhl_gpio_name[] = {
"mhl_sel",
"mhl_rst",
"mhl_int",
"mhl_wake_up",
"hdmi_ldo_en"
};

static void n1_mhl_gpio_init(void)
{
...
}

static int sii9234_power_onoff(int onoff)
{
...
}

static int sii9234_switch_onoff(int onoff)
{
...
}

struct mhl_platform_data mhl_pdata = {
.mhl_sel	= GPIO_MHL_SEL,
.mhl_rst	= GPIO_MHL_RST,
.mhl_int	= GPIO_MHL_INT,
.mhl_wake_up	= GPIO_MHL_WAKE_UP,
.power_onoff	= sii9234_power_onoff,
#ifdef CONFIG_MHL_SWITCH
.switch_onoff	= sii9234_switch_onoff,
#endif
#endif
...
#ifdef CONFIG_MHL_SII9234
n1_mhl_gpio_init();
#endif

but it not enabled in configs too

my kernel config says

# CONFIG_MHL_SII9234 is not set

So for this features to function there should be hardware and what i do not know if it is just disabled in kernel or there is no real chips on PCB :confused:

What i suggest is to enable the options recompile kernel and try to connect HDMI USB cable and that battary with NFC and maybe we will be lucky )

---------- Post added at 07:57 AM ---------- Previous post was at 07:50 AM ----------

If there is source codes of newer versions it will be good thing to look in them because you can do get mach info just from reading it

---------- Post added at 08:11 AM ---------- Previous post was at 07:57 AM ----------

I'm will be not surprised if this chips are not installed SGR is chipper then SGS II and probably they did have this ideas in first place but budget was not for it

I think about NFC battery, it can be a chance that chip is inside it, and just need to add support for it in kernel, but need to check it

I had no much experiences in packaging Android kernel but i can build it for you with support of thous features enabled and you guys can pack it im also do not have battery from SGS II with nfc and cable for HDMI MHL (and device to check it with my monitor do not support HDMI MHL), so you will have to check it and look in to dmesg log to see what happes