[T-Mobile LG G2x] Core Memory:
The pastebin "diff su660 p990" uploaded on Dec 11, 2012, at http://www.pastebin.com/Nd6etQhr which has p999 information that appears to be relevant such as:

> CONFIG_SPI_MDM6600=y

> CONFIG_DUAL_SPI=n

I've copied and pasted most of the p999 diffs present in the pasebin but there are others:

diff -r SU660/arch/arm/configs/star_p999_defconfig P990/arch/arm/configs/star_p999_defconfig

310a311

> CONFIG_TEGRA_CPU_FREQ_LOCK=y

358c359

< # Kernel Debug Selection

---

> # Kernel Debug Selection

630c631

< CONFIG_XFRM_USER=y

---

> # CONFIG_XFRM_USER is not set

639d639

< CONFIG_IP_MULTIPLE_TABLES=y

640a641

> CONFIG_IP_MULTIPLE_TABLES=y

651c652

< CONFIG_INET_IPCOMP=y

---

> # CONFIG_INET_IPCOMP is not set

1265c1266,1267

<

---

> CONFIG_ARCH_HAS_SUSPEND_PAGETABLE=y

> CONFIG_TEGRA_AUTO_HOTPLUG=y

1597c1599

< # CONFIG_SPI_SLAVE_TEGRA is not set

---

> CONFIG_SPI_SLAVE_TEGRA=y

1996c1998

< CONFIG_USB_GSPCA=m

---

> # CONFIG_USB_GSPCA=m

2845,2846d2846

< #CONFIG_SPI_TDMB=y

< #CONFIG_LGE_BROADCAST_TDMB_T3900=y

2859a2860,2864

> # LGE BSSQ device driver

> #

> CONFIG_SPI_MDM6600=y

> CONFIG_DUAL_SPI=n

> #

3164c3169

< CONFIG_CRYPTO_NULL=y

---

> # CONFIG_CRYPTO_NULL is not set

3193c3198

< CONFIG_CRYPTO_XCBC=y

---

> # CONFIG_CRYPTO_XCBC is not set

diff -r SU660/arch/arm/include/asm/sizes.h P990/arch/arm/include/asm/sizes.h

48c48

< #define SZ_3M 0x00300000 //LGE_CHANGE

---

> #define SZ_3M 0x00300000 //

-----------------------------------------------------------------------------------------

diff -r SU660/arch/arm/mach-tegra/include/mach/spi.h P990/arch/arm/mach-tegra/include/mach/spi.h

25a26,27

> #if defined(CONFIG_MACH_STAR_P999)

> typedef void	(*callback)(struct spi_device *spi);

26a29,48

> /**

> * register_spi_slave_callback - registers notification callback provided by

> * the client.

> * This callback indicate that the controller is all set to receive/transfer

> * data.

> * @spi: struct spi_device - refer to linux/spi/spi.h

> * @func: Callback function

> * Context: can not sleep

> */

> int spi_tegra_register_callback(struct spi_device *spi, callback func);

>

> #if defined(CONFIG_MACH_BSSQ) || defined(CONFIG_MACH_STAR_P999)

> //

> void spi_tegra_abort_transfer(struct spi_device *spi);

> bool spi_tegra_is_suspended(struct spi_device *spi);

> //extern bool spi_tegra_suspend_failed(struct spi_device *spi);

> //

> #endif

>

> #else

42,43c64,65

< #ifdef CONFIG_MACH_BSSQ

< // 20110628 youngjin.yoo@lge.com added spi control function

---

> #if defined(CONFIG_MACH_BSSQ) || defined(CONFIG_MACH_STAR_P999)

> //

47c69

< // 20110628 youngjin.yoo@lge.com added spi control function [E]

---

> //

48a71,74

>

> #endif

>

>

-----------------------------------------------------------------------------------------

> #ifdef CONFIG_MACH_STAR_P999

>	.modalias = "mdm6600",

> #else

30a34

> #endif

34a39,41

> #ifdef CONFIG_MACH_STAR_P999

>	.controller_data = &tegra_spi_slave_device1,

> #endif

41a49,67

>

> #ifdef CONFIG_MACH_STAR_P999

> #ifdef CONFIG_DUAL_SPI

> static struct spi_board_info __initdata spi_bus2_devices_info[] = {

>	{

>	.modalias = "mdm6600",

>	.bus_num = 1,

>	.chip_select = 1,

>	.mode = SPI_MODE_1,

>	.max_speed_hz = 24000000,

>	.controller_data = &tegra_spi_slave_device2,

>	.irq = 0,

>	.platform_data = 0,

>	},

> };

> #endif

> #endif

>

>

43a70,82

> #ifdef CONFIG_MACH_STAR_P999

>	platform_device_register(&tegra_spi_slave_device1);

>

> #ifdef CONFIG_DUAL_SPI

>	platform_device_register(&tegra_spi_slave_device2);

> #endif

>

>	spi_register_board_info(spi_bus1_devices_info, ARRAY_SIZE(spi_bus1_devices_info));

>

> #ifdef CONFIG_DUAL_SPI

>	spi_register_board_info(spi_bus2_devices_info, ARRAY_SIZE(spi_bus2_devices_info));

> #endif

> #else

47a87

> #endif

51c91

< // 20120202 jisil.park@lge.com Add SPI [END]

-----------------------------------------------------------------------------------------

diff -r SU660/arch/arm/mach-tegra/lge/star/board-star-kbc.c P990/arch/arm/mach-tegra/lge/star/board-star-kbc.c

57c57,64

<

---

> // HONGIK JE.PARK HOME KEY remove

> #if defined(CONFIG_MACH_STAR_P990) || defined(CONFIG_MACH_STAR_P999)

> static struct gpio_keys_button star_keys[] = {

>	[0] = GPIO_KEY(KEY_VOLUMEDOWN, PG0, 0),

>	[1] = GPIO_KEY(KEY_VOLUMEUP, PG1, 0),

>	[2] = GPIO_KEY(KEY_POWER, PV2, 1),

> };

> #else

67a75

> #endif

90c98,101

<

---

> // HONGIK JE.PARK HOME KEY remove

> #if defined(CONFIG_MACH_STAR_P990) || defined(CONFIG_MACH_STAR_P999)

>	return status & TEGRA_WAKE_GPIO_PV2 ? KEY_POWER : KEY_RESERVED;

> #else

93c104

<

---

> #endif

-----------------------------------------------------------------------------------------

> #elif defined(CONFIG_MACH_STAR_SU660) || defined(CONFIG_MACH_STAR_P999)

234a239,240

> #elif defined(CONFIG_MACH_STAR_P999)

>	{ 'r'-'a',	5,	GPIO_ENABLE,	GPIO_INPUT,	GPIO_SLEEP_LOW,	KBCD},

diff -r SU660/arch/arm/mach-tegra/lge/star/include/mach-tegra/board.h P990/arch/arm/mach-tegra/lge/star/include/mach-tegra/board.h

6c6

< #endif //__MACH_TEGRA_LGE_BOARD_H

-----------------------------------------------------------------------------------------

diff -r SU660/drivers/spi/cpwatcher.c P990/drivers/spi/cpwatcher.c

41a42

> #ifndef CONFIG_MACH_STAR_P999

42a44

> #endif

136c138

< //20110621 ws.yang@lge.com

---

> //

179c181,182

< }

---

> }

> #ifdef IFX_CP_CRASH

184a188

> #endif

214,216d217

< #ifdef CPW_IFX_TEGRA_EDGE_TRIGGER

< int is_cp_reset = 0;

<

219,220c220

< is_cp_reset = gpio_get_value(GPIO_IFX_CP_RESET);

< if (is_cp_reset == 1) //IRQF_TRIGGER_RISING case is ignore !!!

---

> #if defined(CPW_IFX_TEGRA_EDGE_TRIGGER) && !defined(CONFIG_MACH_STAR_P999)

222,223c222,227

< CPW_DEBUG(" IRQF_TRIGGER_RISING irq is ignored\n");

< return IRQ_HANDLED;

---

> int is_cp_reset = gpio_get_value(GPIO_IFX_CP_RESET);

> if (is_cp_reset == 1) //IRQF_TRIGGER_RISING case is ignore !!!

> {

> CPW_DEBUG(" IRQF_TRIGGER_RISING irq is ignored\n");

> return IRQ_HANDLED;

> }

269a274,280

> #ifdef CONFIG_MACH_STAR_P999

> err = request_irq(s_cpwatcher.ifx_cp_reset_irq,

> ifx_reset_interrupt_handler,

> (IRQF_TRIGGER_RISING),

> "ifx_reset_int_n",

> (void*)&s_cpwatcher);

> #else

274a286

> #endif

-----------------------------------------------------------------------------------------

diff -r SU660/drivers/spi/Kconfig P990/drivers/spi/Kconfig

495,496c495,501

<

<

---

>

> config SPI_MDM6600

>	bool "SPI MDM6600 from Qualcomm"

> depends on ARCH_TEGRA

>	help

>	Enable this driver to support MDM6600 Modem

>

diff -r SU660/drivers/spi/Makefile P990/drivers/spi/Makefile

49a50

> ifneq ($(CONFIG_MACH_STAR_P999),y)

51a53,56

> endif

> ifeq ($(CONFIG_MACH_STAR_P999),y)

> obj-$(CONFIG_SPI_MUX)	+= ts0710mux_mdm/

> else

53d57

< obj-$(CONFIG_SPI_RINDRV)	+= rindrv.o

54a59,60

> endif

> obj-$(CONFIG_SPI_RINDRV)	+= rindrv.o

63a70,74

> ifeq ($(CONFIG_MACH_STAR),y)

> ifeq ($(CONFIG_MACH_STAR_P999),y)

> obj-$(CONFIG_SPI_MDM6600)	+= spi_mdm6600.o

> endif

> endif

-----------------------------------------------------------------------------------------

diff -r SU660/drivers/spi/rindrv.c P990/drivers/spi/rindrv.c

571c571

< // LGE_CHANGE_S, [DATA_LAB1_LGT_GB_002][LGE_DATA][jongsu.seo@lge.com][bongsook.jeong@lge.com], 2011-06-27, reassemble rawip pkt

---

> //

1001c1001

< //LGE_DOMESTIC_ADD_START 2011-09-29

---

> //

1004c1004

< //LGE_DOMESTIC_ADD_END

---

> //

Solo in P990/drivers/spi: spi_mdm6600.c

Solo in P990/drivers/spi: spi_mdm6600.h

diff -r SU660/drivers/spi/spi_slave_tegra.c P990/drivers/spi/spi_slave_tegra.c

247,248c247,248

< #ifdef CONFIG_MACH_BSSQ

< //20110808 ws.yang@lge.com add to debug

---

> #if defined (CONFIG_MACH_BSSQ) || defined (CONFIG_MACH_STAR_P999)

> //

255c255

< //20110808 ws.yang@lge.com add to debug [E]

---

> //

287c287

< #ifdef CONFIG_MACH_BSSQ

---

> #if defined (CONFIG_MACH_BSSQ) || defined (CONFIG_MACH_STAR_P999)

300c300

<	return; //20111101 ws.yang@lge.com ..to fix spin_unlock_irqrestore

---

>	return; //

308c308

<	if (m->status == (-EIO))	//20110725 ws.yang@lge.com add to debug when error..

---

>	if (m->status == (-EIO))	//

diff -r SU660/drivers/spi/spi_tegra.c P990/drivers/spi/spi_tegra.c

242c242

<	bool	is_suspend_failed; //20111101 ws.yang@lge.com

---

>	bool	is_suspend_failed; //

253c253

< //20110905 ws.yang@lge.com add to init of spi

---

> //

255,256c255,256

< //20110905 ws.yang@lge.com add to init of spi [E]

< //20110808 ws.yang@lge.com add to debug

---

> //

> //

263c263

< //20110808 ws.yang@lge.com add to debug [E]

---

> //

693c693

< //20110721 ws.yang@lge.com add to check suspend of ifx_n721_spi.c

---

> //

700c700

< //20110721 ws.yang@lge.com add to check suspend of ifx_n721_spi.c [E]

---

> //

703c703

< //20111101 ws.yang@lge.com .. to test

---

> //

1665c1665

<	tspi->is_suspend_failed = false;	//20111101 ws.yang@lge.com .. to test

---

>	tspi->is_suspend_failed = false;	//