From: Greg Kroah-Hartman Date: Thu, 27 Sep 2012 23:51:33 +0000 (-0700) Subject: 3.0-stable patches X-Git-Tag: v3.0.44~25 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8027385bdc48c46cb5d07defe617d7e2d9540b33;p=thirdparty%2Fkernel%2Fstable-queue.git 3.0-stable patches added patches: e1000e-disable-aspm-l1-on-82574.patch mmc-prevent-1.8v-switch-for-sd-hosts-that-don-t-support-uhs-modes.patch mmc-sd-handle-sd3.0-cards-not-supporting-uhs-i-bus-speed-mode.patch --- diff --git a/queue-3.0/e1000e-disable-aspm-l1-on-82574.patch b/queue-3.0/e1000e-disable-aspm-l1-on-82574.patch new file mode 100644 index 00000000000..8ef09be4ed0 --- /dev/null +++ b/queue-3.0/e1000e-disable-aspm-l1-on-82574.patch @@ -0,0 +1,38 @@ +From d4a4206ebbaf48b55803a7eb34e330530d83a889 Mon Sep 17 00:00:00 2001 +From: Chris Boot +Date: Tue, 24 Apr 2012 07:24:52 +0000 +Subject: e1000e: Disable ASPM L1 on 82574 + +From: Chris Boot + +commit d4a4206ebbaf48b55803a7eb34e330530d83a889 upstream. + +ASPM on the 82574 causes trouble. Currently the driver disables L0s for +this NIC but only disables L1 if the MTU is >1500. This patch simply +causes L1 to be disabled regardless of the MTU setting. + +Signed-off-by: Chris Boot +Cc: "Wyborny, Carolyn" +Cc: Nix +Link: https://lkml.org/lkml/2012/3/19/362 +Tested-by: Jeff Pieper +Signed-off-by: Jeff Kirsher +Signed-off-by: Nikola Ciprich +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/net/e1000e/82571.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/drivers/net/e1000e/82571.c ++++ b/drivers/net/e1000e/82571.c +@@ -2088,7 +2088,8 @@ struct e1000_info e1000_82574_info = { + | FLAG_HAS_AMT + | FLAG_HAS_CTRLEXT_ON_LOAD, + .flags2 = FLAG2_CHECK_PHY_HANG +- | FLAG2_DISABLE_ASPM_L0S, ++ | FLAG2_DISABLE_ASPM_L0S ++ | FLAG2_DISABLE_ASPM_L1, + .pba = 32, + .max_hw_frame_size = DEFAULT_JUMBO, + .get_variants = e1000_get_variants_82571, diff --git a/queue-3.0/mmc-prevent-1.8v-switch-for-sd-hosts-that-don-t-support-uhs-modes.patch b/queue-3.0/mmc-prevent-1.8v-switch-for-sd-hosts-that-don-t-support-uhs-modes.patch new file mode 100644 index 00000000000..c36dc0da10b --- /dev/null +++ b/queue-3.0/mmc-prevent-1.8v-switch-for-sd-hosts-that-don-t-support-uhs-modes.patch @@ -0,0 +1,43 @@ +From 4188bba0e9e7ba58d231b528df495666f2742b74 Mon Sep 17 00:00:00 2001 +From: Al Cooper +Date: Fri, 16 Mar 2012 15:54:17 -0400 +Subject: mmc: Prevent 1.8V switch for SD hosts that don't support UHS modes. + +From: Al Cooper + +commit 4188bba0e9e7ba58d231b528df495666f2742b74 upstream. + +The driver should not try to switch to 1.8V when the SD 3.0 host +controller does not have any UHS capabilities bits set (SDR50, DDR50 +or SDR104). See page 72 of "SD Specifications Part A2 SD Host +Controller Simplified Specification Version 3.00" under +"1.8V Signaling Enable". Instead of setting SDR12 and SDR25 in the host +capabilities data structure for all V3.0 host controllers, only set them +if SDR104, SDR50 or DDR50 is set in the host capabilities register. This +will prevent the switch to 1.8V later. + +Signed-off-by: Al Cooper +Acked-by: Arindam Nath +Acked-by: Philip Rakity +Acked-by: Girish K S +Signed-off-by: Chris Ball +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mmc/host/sdhci.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +--- a/drivers/mmc/host/sdhci.c ++++ b/drivers/mmc/host/sdhci.c +@@ -2515,8 +2515,9 @@ int sdhci_add_host(struct sdhci_host *ho + mmc_card_is_removable(mmc)) + mmc->caps |= MMC_CAP_NEEDS_POLL; + +- /* UHS-I mode(s) supported by the host controller. */ +- if (host->version >= SDHCI_SPEC_300) ++ /* Any UHS-I mode in caps implies SDR12 and SDR25 support. */ ++ if (caps[1] & (SDHCI_SUPPORT_SDR104 | SDHCI_SUPPORT_SDR50 | ++ SDHCI_SUPPORT_DDR50)) + mmc->caps |= MMC_CAP_UHS_SDR12 | MMC_CAP_UHS_SDR25; + + /* SDR104 supports also implies SDR50 support */ diff --git a/queue-3.0/mmc-sd-handle-sd3.0-cards-not-supporting-uhs-i-bus-speed-mode.patch b/queue-3.0/mmc-sd-handle-sd3.0-cards-not-supporting-uhs-i-bus-speed-mode.patch new file mode 100644 index 00000000000..6d5bd7d6afa --- /dev/null +++ b/queue-3.0/mmc-sd-handle-sd3.0-cards-not-supporting-uhs-i-bus-speed-mode.patch @@ -0,0 +1,64 @@ +From f2815f68dabbb373fd1c9f0fd4a609d486697c2b Mon Sep 17 00:00:00 2001 +From: Subhash Jadavani +Date: Wed, 10 Aug 2011 11:16:01 +0530 +Subject: mmc: sd: Handle SD3.0 cards not supporting UHS-I bus speed mode + +From: Subhash Jadavani + +commit f2815f68dabbb373fd1c9f0fd4a609d486697c2b upstream. + +Here is Essential conditions to indicate Version 3.00 Card +(SD_SPEC=2 and SD_SPEC3=1) : +(1) The card shall support CMD6 +(2) The card shall support CMD8 +(3) The card shall support CMD42 +(4) User area capacity shall be up to 2GB (SDSC) or 32GB (SDHC) + User area capacity shall be more than or equal to 32GB and + up to 2TB (SDXC) +(5) Speed Class shall be supported (SDHC or SDXC) + +So even if SD card doesn't support any of the newly defined +UHS-I bus speed mode, it can advertise itself as SD3.0 cards +as long as it supports all the essential conditions of +SD3.0 cards. Given this, these type of cards should atleast +run in High Speed mode @50MHZ if it supports HS. + +But current initialization sequence for SD3.0 cards is +such that these non-UHS-I SD3.0 cards runs in Default +Speed mode @25MHz. + +This patch makes sure that these non-UHS-I SD3.0 cards run +in High Speed Mode @50MHz. + +Tested this patch with SanDisk Extreme SDHC 8GB Class 10 card. + +Reported-by: "Hiremath, Vaibhav" +Signed-off-by: Subhash Jadavani +Signed-off-by: Chris Ball + +--- + drivers/mmc/core/sd.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +--- a/drivers/mmc/core/sd.c ++++ b/drivers/mmc/core/sd.c +@@ -306,6 +306,9 @@ static int mmc_read_switch(struct mmc_ca + goto out; + } + ++ if (status[13] & UHS_SDR50_BUS_SPEED) ++ card->sw_caps.hs_max_dtr = 50000000; ++ + if (card->scr.sda_spec3) { + card->sw_caps.sd3_bus_mode = status[13]; + +@@ -348,9 +351,6 @@ static int mmc_read_switch(struct mmc_ca + } + + card->sw_caps.sd3_curr_limit = status[7]; +- } else { +- if (status[13] & 0x02) +- card->sw_caps.hs_max_dtr = 50000000; + } + + out: diff --git a/queue-3.0/series b/queue-3.0/series index 23446de05c9..29585449202 100644 --- a/queue-3.0/series +++ b/queue-3.0/series @@ -117,3 +117,6 @@ pch_uart-fix-missing-break-for-16-byte-fifo.patch pch_uart-fix-rx-error-interrupt-setting-issue.patch pch_uart-fix-parity-setting-issue.patch squashfs-fix-mount-time-sanity-check-for-corrupted-superblock.patch +mmc-sd-handle-sd3.0-cards-not-supporting-uhs-i-bus-speed-mode.patch +mmc-prevent-1.8v-switch-for-sd-hosts-that-don-t-support-uhs-modes.patch +e1000e-disable-aspm-l1-on-82574.patch