--- /dev/null
+From fbbc5bfb44a22e7a8ef753a1c8dfb448d7ac8b85 Mon Sep 17 00:00:00 2001
+From: Mark Langsdorf <mark.langsdorf@calxeda.com>
+Date: Tue, 1 Oct 2013 10:30:24 -0500
+Subject: cpufreq: highbank-cpufreq: Enable Midway/ECX-2000
+
+From: Mark Langsdorf <mark.langsdorf@calxeda.com>
+
+commit fbbc5bfb44a22e7a8ef753a1c8dfb448d7ac8b85 upstream.
+
+Calxeda's new ECX-2000 part uses the same cpufreq interface as highbank,
+so add it to the driver's compatibility list.
+
+This is a minor change that can safely be applied to the 3.10 and 3.11
+stable trees.
+
+Signed-off-by: Mark Langsdorf <mark.langsdorf@calxeda.com>
+Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
+Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/cpufreq/highbank-cpufreq.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/drivers/cpufreq/highbank-cpufreq.c
++++ b/drivers/cpufreq/highbank-cpufreq.c
+@@ -66,7 +66,8 @@ static int hb_cpufreq_driver_init(void)
+ struct device_node *np;
+ int ret;
+
+- if (!of_machine_is_compatible("calxeda,highbank"))
++ if ((!of_machine_is_compatible("calxeda,highbank")) &&
++ (!of_machine_is_compatible("calxeda,ecx-2000")))
+ return -ENODEV;
+
+ cpu_dev = get_cpu_device(0);
--- /dev/null
+From 95d50b6c5e18ff7351c5f2a6ff53afaed5f7e664 Mon Sep 17 00:00:00 2001
+From: Forest Bond <forest.bond@rapidrollout.com>
+Date: Mon, 21 Oct 2013 12:38:02 -0400
+Subject: HID: don't ignore eGalax/D-Wav/EETI HIDs
+
+From: Forest Bond <forest.bond@rapidrollout.com>
+
+commit 95d50b6c5e18ff7351c5f2a6ff53afaed5f7e664 upstream.
+
+Certain devices with class HID, protocol None did not work with the HID
+driver at one point, and as a result were bound to usbtouchscreen
+instead as of commit 139ebe8 ("Input: usbtouchscreen - fix eGalax HID
+ignoring"). This change was prompted by the following report:
+
+https://lkml.org/lkml/2009/1/25/127
+
+Unfortunately, the device mentioned in this report is no longer
+available for testing.
+
+We've recently discovered that some devices with class HID, protocol
+None do not work with usbtouchscreen, but do work with usbhid. Here is
+the report that made this evident:
+
+http://comments.gmane.org/gmane.linux.kernel.input/31710
+
+Driver binding for these devices has flip-flopped a few times, so both
+of the above reports were regressions.
+
+This situation would appear to leave us with no easy way to bind every
+device to the right driver. However, in my own testing with several
+devices I have not found a device with class HID that does not work with
+the current HID driver. It is my belief that changes to the HID driver
+since the original report have likely fixed the issue(s) that made it
+unsuitable at the time, and that we should prefer it over usbtouchscreen
+for these devices. In particular, HID quirks affecting these devices
+were added/removed in the following commits since then:
+
+fe6065d HID: add multi-input quirk for eGalax Touchcontroller
+77933c3 Merge branch 'egalax' into for-linus
+ebd11fe HID: Add quirk for eGalax touch controler.
+d34c4aa HID: add no-get quirk for eGalax touch controller
+
+This patch makes the HID driver no longer ignore eGalax/D-Wav/EETI
+devices with class HID. If there are in fact devices with class HID
+that still do not work with the HID driver, we will see another round of
+regressions. In that case I propose we investigate why the device is
+not working with the HID driver rather than re-introduce regressions for
+functioning HID devices by again binding them to usbtouchscreen.
+
+The corresponding change to usbtouchscreen will be made separately.
+
+Signed-off-by: Forest Bond <forest.bond@rapidrollout.com>
+Signed-off-by: Jiri Kosina <jkosina@suse.cz>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/hid/hid-core.c | 9 ---------
+ 1 file changed, 9 deletions(-)
+
+--- a/drivers/hid/hid-core.c
++++ b/drivers/hid/hid-core.c
+@@ -2376,15 +2376,6 @@ bool hid_ignore(struct hid_device *hdev)
+ hdev->type == HID_TYPE_USBNONE)
+ return true;
+ break;
+- case USB_VENDOR_ID_DWAV:
+- /* These are handled by usbtouchscreen. hdev->type is probably
+- * HID_TYPE_USBNONE, but we say !HID_TYPE_USBMOUSE to match
+- * usbtouchscreen. */
+- if ((hdev->product == USB_DEVICE_ID_EGALAX_TOUCHCONTROLLER ||
+- hdev->product == USB_DEVICE_ID_DWAV_TOUCHCONTROLLER) &&
+- hdev->type != HID_TYPE_USBMOUSE)
+- return true;
+- break;
+ case USB_VENDOR_ID_VELLEMAN:
+ /* These are not HID devices. They are handled by comedi. */
+ if ((hdev->product >= USB_DEVICE_ID_VELLEMAN_K8055_FIRST &&
--- /dev/null
+From 5df682b297f6b23ec35615ed7bb50cbb25d25869 Mon Sep 17 00:00:00 2001
+From: Joseph Salisbury <joseph.salisbury@canonical.com>
+Date: Wed, 16 Oct 2013 09:19:40 -0700
+Subject: Input: cypress_ps2 - do not consider data bad if palm is detected
+
+From: Joseph Salisbury <joseph.salisbury@canonical.com>
+
+commit 5df682b297f6b23ec35615ed7bb50cbb25d25869 upstream.
+
+If hardware (or firmware) detects palm on the surface of the device it does
+not mean that the data packet is bad from the protocol standpoint. Instead
+of reporting PSMOUSE_BAD_DATA in this case simply threat it as if nothing
+touches the surface.
+
+BugLink: http://bugs.launchpad.net/bugs/1229361
+
+Signed-off-by: Joseph Salisbury <joseph.salisbury@canonical.com>
+Tested-by: Kamal Mostafa <kamal@canonical.com>
+Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/input/mouse/cypress_ps2.c | 19 +++----------------
+ 1 file changed, 3 insertions(+), 16 deletions(-)
+
+--- a/drivers/input/mouse/cypress_ps2.c
++++ b/drivers/input/mouse/cypress_ps2.c
+@@ -439,7 +439,7 @@ static int cypress_get_finger_count(unsi
+ case 2: return 5;
+ default:
+ /* Invalid contact (e.g. palm). Ignore it. */
+- return -1;
++ return 0;
+ }
+ }
+
+@@ -452,17 +452,10 @@ static int cypress_parse_packet(struct p
+ {
+ unsigned char *packet = psmouse->packet;
+ unsigned char header_byte = packet[0];
+- int contact_cnt;
+
+ memset(report_data, 0, sizeof(struct cytp_report_data));
+
+- contact_cnt = cypress_get_finger_count(header_byte);
+-
+- if (contact_cnt < 0) /* e.g. palm detect */
+- return -EINVAL;
+-
+- report_data->contact_cnt = contact_cnt;
+-
++ report_data->contact_cnt = cypress_get_finger_count(header_byte);
+ report_data->tap = (header_byte & ABS_MULTIFINGER_TAP) ? 1 : 0;
+
+ if (report_data->contact_cnt == 1) {
+@@ -535,11 +528,9 @@ static void cypress_process_packet(struc
+ int slots[CYTP_MAX_MT_SLOTS];
+ int n;
+
+- if (cypress_parse_packet(psmouse, cytp, &report_data))
+- return;
++ cypress_parse_packet(psmouse, cytp, &report_data);
+
+ n = report_data.contact_cnt;
+-
+ if (n > CYTP_MAX_MT_SLOTS)
+ n = CYTP_MAX_MT_SLOTS;
+
+@@ -605,10 +596,6 @@ static psmouse_ret_t cypress_validate_by
+ return PSMOUSE_BAD_DATA;
+
+ contact_cnt = cypress_get_finger_count(packet[0]);
+-
+- if (contact_cnt < 0)
+- return PSMOUSE_BAD_DATA;
+-
+ if (cytp->mode & CYTP_BIT_ABS_NO_PRESSURE)
+ cypress_set_packet_size(psmouse, contact_cnt == 2 ? 7 : 4);
+ else
--- /dev/null
+From 92eb77d0ffbaa71b501a0a8dabf09a351bf4267f Mon Sep 17 00:00:00 2001
+From: Daniel Stone <daniel@fooishbar.org>
+Date: Thu, 31 Oct 2013 00:25:34 -0700
+Subject: Input: evdev - fall back to vmalloc for client event buffer
+
+From: Daniel Stone <daniel@fooishbar.org>
+
+commit 92eb77d0ffbaa71b501a0a8dabf09a351bf4267f upstream.
+
+evdev always tries to allocate the event buffer for clients using
+kzalloc rather than vmalloc, presumably to avoid mapping overhead where
+possible. However, drivers like bcm5974, which claims support for
+reporting 16 fingers simultaneously, can have an extraordinarily large
+buffer. The resultant contiguous order-4 allocation attempt fails due
+to fragmentation, and the device is thus unusable until reboot.
+
+Try kzalloc if we can to avoid the mapping overhead, but if that fails,
+fall back to vzalloc.
+
+Signed-off-by: Daniel Stone <daniels@collabora.com>
+Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/input/evdev.c | 16 ++++++++++++----
+ 1 file changed, 12 insertions(+), 4 deletions(-)
+
+--- a/drivers/input/evdev.c
++++ b/drivers/input/evdev.c
+@@ -18,6 +18,8 @@
+ #include <linux/poll.h>
+ #include <linux/sched.h>
+ #include <linux/slab.h>
++#include <linux/vmalloc.h>
++#include <linux/mm.h>
+ #include <linux/module.h>
+ #include <linux/init.h>
+ #include <linux/input/mt.h>
+@@ -369,7 +371,11 @@ static int evdev_release(struct inode *i
+ mutex_unlock(&evdev->mutex);
+
+ evdev_detach_client(evdev, client);
+- kfree(client);
++
++ if (is_vmalloc_addr(client))
++ vfree(client);
++ else
++ kfree(client);
+
+ evdev_close_device(evdev);
+
+@@ -389,12 +395,14 @@ static int evdev_open(struct inode *inod
+ {
+ struct evdev *evdev = container_of(inode->i_cdev, struct evdev, cdev);
+ unsigned int bufsize = evdev_compute_buffer_size(evdev->handle.dev);
++ unsigned int size = sizeof(struct evdev_client) +
++ bufsize * sizeof(struct input_event);
+ struct evdev_client *client;
+ int error;
+
+- client = kzalloc(sizeof(struct evdev_client) +
+- bufsize * sizeof(struct input_event),
+- GFP_KERNEL);
++ client = kzalloc(size, GFP_KERNEL | __GFP_NOWARN);
++ if (!client)
++ client = vzalloc(size);
+ if (!client)
+ return -ENOMEM;
+
--- /dev/null
+From 78551277e4df57864b0b0e7f85c23ede2be2edb8 Mon Sep 17 00:00:00 2001
+From: Tom Gundersen <teg@jklm.no>
+Date: Thu, 31 Oct 2013 00:33:54 -0700
+Subject: Input: i8042 - add PNP modaliases
+
+From: Tom Gundersen <teg@jklm.no>
+
+commit 78551277e4df57864b0b0e7f85c23ede2be2edb8 upstream.
+
+This allows the module to be autoloaded in the common case.
+
+In order to work on non-PnP systems the module should be compiled in or
+loaded unconditionally at boot (c.f. modules-load.d(5)), as before.
+
+Signed-off-by: Tom Gundersen <teg@jklm.no>
+Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/input/serio/i8042-x86ia64io.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/drivers/input/serio/i8042-x86ia64io.h
++++ b/drivers/input/serio/i8042-x86ia64io.h
+@@ -765,6 +765,7 @@ static struct pnp_device_id pnp_kbd_devi
+ { .id = "CPQA0D7", .driver_data = 0 },
+ { .id = "", },
+ };
++MODULE_DEVICE_TABLE(pnp, pnp_kbd_devids);
+
+ static struct pnp_driver i8042_pnp_kbd_driver = {
+ .name = "i8042 kbd",
+@@ -786,6 +787,7 @@ static struct pnp_device_id pnp_aux_devi
+ { .id = "SYN0801", .driver_data = 0 },
+ { .id = "", },
+ };
++MODULE_DEVICE_TABLE(pnp, pnp_aux_devids);
+
+ static struct pnp_driver i8042_pnp_aux_driver = {
+ .name = "i8042 aux",
--- /dev/null
+From ae2aa3a512fa5f50f67feba9e66bc2efb394bd63 Mon Sep 17 00:00:00 2001
+From: Forest Bond <forest.bond@rapidrollout.com>
+Date: Mon, 21 Oct 2013 12:38:18 -0400
+Subject: Input: usbtouchscreen: ignore eGalax/D-Wav/EETI HIDs
+
+From: Forest Bond <forest.bond@rapidrollout.com>
+
+commit ae2aa3a512fa5f50f67feba9e66bc2efb394bd63 upstream.
+
+The HID driver now handles these devices, regardless of what protocol
+the device claims it supports.
+
+Signed-off-by: Forest Bond <forest.bond@rapidrollout.com>
+Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
+Signed-off-by: Jiri Kosina <jkosina@suse.cz>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/input/touchscreen/usbtouchscreen.c | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+--- a/drivers/input/touchscreen/usbtouchscreen.c
++++ b/drivers/input/touchscreen/usbtouchscreen.c
+@@ -146,12 +146,10 @@ enum {
+
+ #define USB_DEVICE_HID_CLASS(vend, prod) \
+ .match_flags = USB_DEVICE_ID_MATCH_INT_CLASS \
+- | USB_DEVICE_ID_MATCH_INT_PROTOCOL \
+ | USB_DEVICE_ID_MATCH_DEVICE, \
+ .idVendor = (vend), \
+ .idProduct = (prod), \
+- .bInterfaceClass = USB_INTERFACE_CLASS_HID, \
+- .bInterfaceProtocol = USB_INTERFACE_PROTOCOL_MOUSE
++ .bInterfaceClass = USB_INTERFACE_CLASS_HID
+
+ static const struct usb_device_id usbtouch_devices[] = {
+ #ifdef CONFIG_TOUCHSCREEN_USB_EGALAX
--- /dev/null
+From 5e90169c5a02da69a1ef721bea7a823e9e48fcb6 Mon Sep 17 00:00:00 2001
+From: James Ralston <james.d.ralston@intel.com>
+Date: Mon, 4 Nov 2013 09:31:20 -0800
+Subject: mfd: lpc_ich: Add Device IDs for Intel Wildcat Point-LP PCH
+
+From: James Ralston <james.d.ralston@intel.com>
+
+commit 5e90169c5a02da69a1ef721bea7a823e9e48fcb6 upstream.
+
+This patch adds the TCO Watchdog Device IDs for the
+Intel Wildcat Point-LP PCH.
+
+Signed-off-by: James Ralston <james.d.ralston@intel.com>
+Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/mfd/lpc_ich.c | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+--- a/drivers/mfd/lpc_ich.c
++++ b/drivers/mfd/lpc_ich.c
+@@ -53,6 +53,7 @@
+ * document number TBD : Wellsburg
+ * document number TBD : Avoton SoC
+ * document number TBD : Coleto Creek
++ * document number TBD : Wildcat Point-LP
+ */
+
+ #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
+@@ -211,6 +212,7 @@ enum lpc_chipsets {
+ LPC_WBG, /* Wellsburg */
+ LPC_AVN, /* Avoton SoC */
+ LPC_COLETO, /* Coleto Creek */
++ LPC_WPT_LP, /* Wildcat Point-LP */
+ };
+
+ static struct lpc_ich_info lpc_chipset_info[] = {
+@@ -503,6 +505,10 @@ static struct lpc_ich_info lpc_chipset_i
+ .name = "Coleto Creek",
+ .iTCO_version = 2,
+ },
++ [LPC_WPT_LP] = {
++ .name = "Lynx Point_LP",
++ .iTCO_version = 2,
++ },
+ };
+
+ /*
+@@ -721,6 +727,13 @@ static DEFINE_PCI_DEVICE_TABLE(lpc_ich_i
+ { PCI_VDEVICE(INTEL, 0x1f3a), LPC_AVN},
+ { PCI_VDEVICE(INTEL, 0x1f3b), LPC_AVN},
+ { PCI_VDEVICE(INTEL, 0x2390), LPC_COLETO},
++ { PCI_VDEVICE(INTEL, 0x9cc1), LPC_WPT_LP},
++ { PCI_VDEVICE(INTEL, 0x9cc2), LPC_WPT_LP},
++ { PCI_VDEVICE(INTEL, 0x9cc3), LPC_WPT_LP},
++ { PCI_VDEVICE(INTEL, 0x9cc5), LPC_WPT_LP},
++ { PCI_VDEVICE(INTEL, 0x9cc6), LPC_WPT_LP},
++ { PCI_VDEVICE(INTEL, 0x9cc7), LPC_WPT_LP},
++ { PCI_VDEVICE(INTEL, 0x9cc9), LPC_WPT_LP},
+ { 0, }, /* End of list */
+ };
+ MODULE_DEVICE_TABLE(pci, lpc_ich_ids);
--- /dev/null
+From 26b818511c6562ce372566c219a2ef1afea35fe6 Mon Sep 17 00:00:00 2001
+From: Wei WANG <wei_wang@realsil.com.cn>
+Date: Fri, 13 Sep 2013 17:45:43 +0800
+Subject: mfd: rtsx: Modify rts5249_optimize_phy
+
+From: Wei WANG <wei_wang@realsil.com.cn>
+
+commit 26b818511c6562ce372566c219a2ef1afea35fe6 upstream.
+
+In some platforms, specially Thinkpad series, rts5249 won't be
+initialized properly. So we need adjust some phy parameters to
+improve the compatibility issue.
+
+It is a little different between simulation and real chip. We have
+no idea about which configuration is better before tape-out. We set
+default settings according to simulation, but need to tune these
+parameters after getting the real chip.
+
+I can't explain every change in detail here. The below information is
+just a rough description:
+
+PHY_REG_REV: Disable internal clkreq_tx, enable rx_pwst
+PHY_BPCR: No change, just turn the magic number to macro definitions
+PHY_PCR: Change OOBS sensitivity, from 60mV to 90mV
+PHY_RCR2: Control charge-pump current automatically
+PHY_FLD4: Use TX cmu reference clock
+PHY_RDR: Change RXDSEL from 30nF to 1.9nF
+PHY_RCR1: Change the duration between adp_st and asserting cp_en from
+0.32 us to 0.64us
+PHY_FLD3: Adjust internal timers
+PHY_TUNE: Fine tune the regulator12 output voltage
+
+Signed-off-by: Wei WANG <wei_wang@realsil.com.cn>
+Signed-off-by: Lee Jones <lee.jones@linaro.org>
+Cc: Chris Ball <cjb@laptop.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/mfd/rts5249.c | 48 +++++++++++++++++++++++++++++++++++++-
+ include/linux/mfd/rtsx_pci.h | 53 +++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 99 insertions(+), 2 deletions(-)
+
+--- a/drivers/mfd/rts5249.c
++++ b/drivers/mfd/rts5249.c
+@@ -130,13 +130,57 @@ static int rts5249_optimize_phy(struct r
+ {
+ int err;
+
+- err = rtsx_pci_write_phy_register(pcr, PHY_REG_REV, 0xFE46);
++ err = rtsx_pci_write_phy_register(pcr, PHY_REG_REV,
++ PHY_REG_REV_RESV | PHY_REG_REV_RXIDLE_LATCHED |
++ PHY_REG_REV_P1_EN | PHY_REG_REV_RXIDLE_EN |
++ PHY_REG_REV_RX_PWST | PHY_REG_REV_CLKREQ_DLY_TIMER_1_0 |
++ PHY_REG_REV_STOP_CLKRD | PHY_REG_REV_STOP_CLKWR);
+ if (err < 0)
+ return err;
+
+ msleep(1);
+
+- return rtsx_pci_write_phy_register(pcr, PHY_BPCR, 0x05C0);
++ err = rtsx_pci_write_phy_register(pcr, PHY_BPCR,
++ PHY_BPCR_IBRXSEL | PHY_BPCR_IBTXSEL |
++ PHY_BPCR_IB_FILTER | PHY_BPCR_CMIRROR_EN);
++ if (err < 0)
++ return err;
++ err = rtsx_pci_write_phy_register(pcr, PHY_PCR,
++ PHY_PCR_FORCE_CODE | PHY_PCR_OOBS_CALI_50 |
++ PHY_PCR_OOBS_VCM_08 | PHY_PCR_OOBS_SEN_90 |
++ PHY_PCR_RSSI_EN);
++ if (err < 0)
++ return err;
++ err = rtsx_pci_write_phy_register(pcr, PHY_RCR2,
++ PHY_RCR2_EMPHASE_EN | PHY_RCR2_NADJR |
++ PHY_RCR2_CDR_CP_10 | PHY_RCR2_CDR_SR_2 |
++ PHY_RCR2_FREQSEL_12 | PHY_RCR2_CPADJEN |
++ PHY_RCR2_CDR_SC_8 | PHY_RCR2_CALIB_LATE);
++ if (err < 0)
++ return err;
++ err = rtsx_pci_write_phy_register(pcr, PHY_FLD4,
++ PHY_FLD4_FLDEN_SEL | PHY_FLD4_REQ_REF |
++ PHY_FLD4_RXAMP_OFF | PHY_FLD4_REQ_ADDA |
++ PHY_FLD4_BER_COUNT | PHY_FLD4_BER_TIMER |
++ PHY_FLD4_BER_CHK_EN);
++ if (err < 0)
++ return err;
++ err = rtsx_pci_write_phy_register(pcr, PHY_RDR, PHY_RDR_RXDSEL_1_9);
++ if (err < 0)
++ return err;
++ err = rtsx_pci_write_phy_register(pcr, PHY_RCR1,
++ PHY_RCR1_ADP_TIME | PHY_RCR1_VCO_COARSE);
++ if (err < 0)
++ return err;
++ err = rtsx_pci_write_phy_register(pcr, PHY_FLD3,
++ PHY_FLD3_TIMER_4 | PHY_FLD3_TIMER_6 |
++ PHY_FLD3_RXDELINK);
++ if (err < 0)
++ return err;
++ return rtsx_pci_write_phy_register(pcr, PHY_TUNE,
++ PHY_TUNE_TUNEREF_1_0 | PHY_TUNE_VBGSEL_1252 |
++ PHY_TUNE_SDBUS_33 | PHY_TUNE_TUNED18 |
++ PHY_TUNE_TUNED12);
+ }
+
+ static int rts5249_turn_on_led(struct rtsx_pcr *pcr)
+--- a/include/linux/mfd/rtsx_pci.h
++++ b/include/linux/mfd/rtsx_pci.h
+@@ -756,6 +756,59 @@
+ #define PCR_SETTING_REG2 0x814
+ #define PCR_SETTING_REG3 0x747
+
++/* Phy bits */
++#define PHY_PCR_FORCE_CODE 0xB000
++#define PHY_PCR_OOBS_CALI_50 0x0800
++#define PHY_PCR_OOBS_VCM_08 0x0200
++#define PHY_PCR_OOBS_SEN_90 0x0040
++#define PHY_PCR_RSSI_EN 0x0002
++
++#define PHY_RCR1_ADP_TIME 0x0100
++#define PHY_RCR1_VCO_COARSE 0x001F
++
++#define PHY_RCR2_EMPHASE_EN 0x8000
++#define PHY_RCR2_NADJR 0x4000
++#define PHY_RCR2_CDR_CP_10 0x0400
++#define PHY_RCR2_CDR_SR_2 0x0100
++#define PHY_RCR2_FREQSEL_12 0x0040
++#define PHY_RCR2_CPADJEN 0x0020
++#define PHY_RCR2_CDR_SC_8 0x0008
++#define PHY_RCR2_CALIB_LATE 0x0002
++
++#define PHY_RDR_RXDSEL_1_9 0x4000
++
++#define PHY_TUNE_TUNEREF_1_0 0x4000
++#define PHY_TUNE_VBGSEL_1252 0x0C00
++#define PHY_TUNE_SDBUS_33 0x0200
++#define PHY_TUNE_TUNED18 0x01C0
++#define PHY_TUNE_TUNED12 0X0020
++
++#define PHY_BPCR_IBRXSEL 0x0400
++#define PHY_BPCR_IBTXSEL 0x0100
++#define PHY_BPCR_IB_FILTER 0x0080
++#define PHY_BPCR_CMIRROR_EN 0x0040
++
++#define PHY_REG_REV_RESV 0xE000
++#define PHY_REG_REV_RXIDLE_LATCHED 0x1000
++#define PHY_REG_REV_P1_EN 0x0800
++#define PHY_REG_REV_RXIDLE_EN 0x0400
++#define PHY_REG_REV_CLKREQ_DLY_TIMER_1_0 0x0040
++#define PHY_REG_REV_STOP_CLKRD 0x0020
++#define PHY_REG_REV_RX_PWST 0x0008
++#define PHY_REG_REV_STOP_CLKWR 0x0004
++
++#define PHY_FLD3_TIMER_4 0x7800
++#define PHY_FLD3_TIMER_6 0x00E0
++#define PHY_FLD3_RXDELINK 0x0004
++
++#define PHY_FLD4_FLDEN_SEL 0x4000
++#define PHY_FLD4_REQ_REF 0x2000
++#define PHY_FLD4_RXAMP_OFF 0x1000
++#define PHY_FLD4_REQ_ADDA 0x0800
++#define PHY_FLD4_BER_COUNT 0x00E0
++#define PHY_FLD4_BER_TIMER 0x000A
++#define PHY_FLD4_BER_CHK_EN 0x0001
++
+ #define rtsx_pci_init_cmd(pcr) ((pcr)->ci = 0)
+
+ struct rtsx_pcr;
--- /dev/null
+From 936816161978ca716a56c5e553c68f25972b1e3a Mon Sep 17 00:00:00 2001
+From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
+Date: Thu, 14 Nov 2013 17:36:42 -0800
+Subject: Revert "Input: ALPS - add support for model found on Dell XT2"
+
+From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
+
+commit 936816161978ca716a56c5e553c68f25972b1e3a upstream.
+
+This reverts commit 5beea882e64121dfe3b33145767d3302afa784d5 as it
+breaks trackpoint operation on XT2.
+
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/input/mouse/alps.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+--- a/drivers/input/mouse/alps.c
++++ b/drivers/input/mouse/alps.c
+@@ -103,7 +103,6 @@ static const struct alps_model_info alps
+ /* Dell Latitude E5500, E6400, E6500, Precision M4400 */
+ { { 0x62, 0x02, 0x14 }, 0x00, ALPS_PROTO_V2, 0xcf, 0xcf,
+ ALPS_PASS | ALPS_DUALPOINT | ALPS_PS2_INTERLEAVED },
+- { { 0x73, 0x00, 0x14 }, 0x00, ALPS_PROTO_V2, 0xcf, 0xcf, ALPS_DUALPOINT }, /* Dell XT2 */
+ { { 0x73, 0x02, 0x50 }, 0x00, ALPS_PROTO_V2, 0xcf, 0xcf, ALPS_FOUR_BUTTONS }, /* Dell Vostro 1400 */
+ { { 0x52, 0x01, 0x14 }, 0x00, ALPS_PROTO_V2, 0xff, 0xff,
+ ALPS_PASS | ALPS_DUALPOINT | ALPS_PS2_INTERLEAVED }, /* Toshiba Tecra A11-11L */
alsa-hda-initialize-missing-bass-speaker-pin-for-asus-aio-et2700.patch
alsa-hda-check-leaf-nodes-to-find-aamix-amps.patch
tracing-allow-events-to-have-null-strings.patch
+revert-input-alps-add-support-for-model-found-on-dell-xt2.patch
+input-evdev-fall-back-to-vmalloc-for-client-event-buffer.patch
+input-cypress_ps2-do-not-consider-data-bad-if-palm-is-detected.patch
+input-i8042-add-pnp-modaliases.patch
+hid-don-t-ignore-egalax-d-wav-eeti-hids.patch
+input-usbtouchscreen-ignore-egalax-d-wav-eeti-hids.patch
+mfd-lpc_ich-add-device-ids-for-intel-wildcat-point-lp-pch.patch
+mfd-rtsx-modify-rts5249_optimize_phy.patch
+cpufreq-highbank-cpufreq-enable-midway-ecx-2000.patch
+sh-ecovec-fixup-compile-error-on-sdhi.patch
--- /dev/null
+From 357002b9c09e5332c9fcd4fa3d3c0fa00ca6ae4f Mon Sep 17 00:00:00 2001
+From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
+Date: Tue, 24 Sep 2013 18:55:22 -0700
+Subject: sh: ecovec: fixup compile error on sdhi
+
+From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
+
+commit 357002b9c09e5332c9fcd4fa3d3c0fa00ca6ae4f upstream.
+
+afa2c9407f8908 ("sh: ecovec24: Use MMC/SDHI CD and RO GPIO") added
+.tmio_flags = TMIO_MMC_USE_GPIO_CD on sh_mobile_sdhi_info, but it needs
+<linux/mfd/tmio.h> header. This patch adds it.
+
+Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
+Reviewed-by: Yusuke Goda <yusuke.goda.sx@renesas.com>
+Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
+Signed-off-by: Chris Ball <cjb@laptop.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/sh/boards/mach-ecovec24/setup.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/arch/sh/boards/mach-ecovec24/setup.c
++++ b/arch/sh/boards/mach-ecovec24/setup.c
+@@ -15,6 +15,7 @@
+ #include <linux/mmc/sh_mmcif.h>
+ #include <linux/mmc/sh_mobile_sdhi.h>
+ #include <linux/mtd/physmap.h>
++#include <linux/mfd/tmio.h>
+ #include <linux/gpio.h>
+ #include <linux/interrupt.h>
+ #include <linux/io.h>