mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
80 lines
2.5 KiB
Diff
80 lines
2.5 KiB
Diff
diff -ruN a/drivers/ata/sata_mv.c b/drivers/ata/sata_mv.c
|
|
--- a/drivers/ata/sata_mv.c 2013-11-03 16:41:51.000000000 -0700
|
|
+++ b/drivers/ata/sata_mv.c 2013-11-08 01:39:48.868014917 -0700
|
|
@@ -71,6 +71,7 @@
|
|
#include <scsi/scsi_cmnd.h>
|
|
#include <scsi/scsi_device.h>
|
|
#include <linux/libata.h>
|
|
+#include <linux/leds.h>
|
|
|
|
#define DRV_NAME "sata_mv"
|
|
#define DRV_VERSION "1.28"
|
|
@@ -1161,6 +1162,8 @@
|
|
{
|
|
int want_ncq = (protocol == ATA_PROT_NCQ);
|
|
|
|
+ ledtrig_ide_activity();
|
|
+
|
|
if (pp->pp_flags & MV_PP_FLAG_EDMA_EN) {
|
|
int using_ncq = ((pp->pp_flags & MV_PP_FLAG_NCQ_EN) != 0);
|
|
if (want_ncq != using_ncq)
|
|
diff -ruN a/drivers/leds/trigger/Kconfig b/drivers/leds/trigger/Kconfig
|
|
--- a/drivers/leds/trigger/Kconfig 2013-11-03 16:41:51.000000000 -0700
|
|
+++ b/drivers/leds/trigger/Kconfig 2013-11-08 01:39:48.958018410 -0700
|
|
@@ -35,7 +35,6 @@
|
|
|
|
config LEDS_TRIGGER_IDE_DISK
|
|
bool "LED IDE Disk Trigger"
|
|
- depends on IDE_GD_ATA
|
|
depends on LEDS_TRIGGERS
|
|
help
|
|
This allows LEDs to be controlled by IDE disk activity.
|
|
diff -ruN a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
|
|
--- a/drivers/mmc/core/core.c 2013-11-03 16:41:51.000000000 -0700
|
|
+++ b/drivers/mmc/core/core.c 2013-11-08 01:39:49.008020351 -0700
|
|
@@ -805,7 +805,7 @@
|
|
*/
|
|
limit_us = 3000000;
|
|
else
|
|
- limit_us = 100000;
|
|
+ limit_us = 200000;
|
|
|
|
/*
|
|
* SDHC cards always use these fixed values.
|
|
diff -ruN a/drivers/mmc/core/sd.c b/drivers/mmc/core/sd.c
|
|
--- a/drivers/mmc/core/sd.c 2013-11-03 16:41:51.000000000 -0700
|
|
+++ b/drivers/mmc/core/sd.c 2013-11-08 01:39:49.008020351 -0700
|
|
@@ -358,6 +358,15 @@
|
|
return -ENOMEM;
|
|
}
|
|
|
|
+ /*
|
|
+ * Some SDHC cards, notably those with a Sandisk SD controller
|
|
+ * (also found in Kingston products) need a bit of slack
|
|
+ * before successfully handling the SWITCH command. So far,
|
|
+ * cards identifying themselves as "SD04G" and "SD08G" are
|
|
+ * affected
|
|
+ */
|
|
+ udelay(100);
|
|
+
|
|
err = mmc_sd_switch(card, 1, 0, 1, status);
|
|
if (err)
|
|
goto out;
|
|
diff -ruN a/drivers/mmc/host/mvsdio.c b/drivers/mmc/host/mvsdio.c
|
|
--- a/drivers/mmc/host/mvsdio.c 2013-11-03 16:41:51.000000000 -0700
|
|
+++ b/drivers/mmc/host/mvsdio.c 2013-11-08 01:39:49.028021127 -0700
|
|
@@ -25,6 +25,7 @@
|
|
#include <linux/of_irq.h>
|
|
#include <linux/mmc/host.h>
|
|
#include <linux/mmc/slot-gpio.h>
|
|
+#include <linux/mmc/sd.h>
|
|
#include <linux/pinctrl/consumer.h>
|
|
|
|
#include <asm/sizes.h>
|
|
@@ -148,6 +149,7 @@
|
|
|
|
dev_dbg(host->dev, "cmd %d (hw state 0x%04x)\n",
|
|
cmd->opcode, mvsd_read(MVSD_HW_STATE));
|
|
+ if (cmd->opcode == SD_SWITCH) mdelay(1); /* Voodoo */
|
|
|
|
cmdreg = MVSD_CMD_INDEX(cmd->opcode);
|