aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/arm/configs/aicp_flo_defconfig2
-rw-r--r--arch/arm/configs/cyanogen_mako_defconfig4
-rw-r--r--arch/arm/mach-msm/asustek/asustek-keypad.c10
-rw-r--r--arch/arm/mach-msm/smd_rpcrouter.c2
-rw-r--r--drivers/input/keyboard/gpio_keys.c52
-rw-r--r--drivers/mmc/core/core.c62
-rw-r--r--drivers/mmc/core/core.h4
-rw-r--r--drivers/mmc/core/host.c8
-rw-r--r--drivers/mmc/core/mmc.c4
-rw-r--r--drivers/mmc/host/msm_sdcc.c17
-rw-r--r--drivers/video/msm/mipi_JDI.c39
-rw-r--r--drivers/video/msm/mipi_JDI.h8
-rw-r--r--include/linux/gpio_keys.h10
-rw-r--r--include/linux/mmc/card.h5
-rw-r--r--include/linux/mmc/host.h1
15 files changed, 33 insertions, 195 deletions
diff --git a/arch/arm/configs/aicp_flo_defconfig b/arch/arm/configs/aicp_flo_defconfig
index 609594e6fc4..619cd297deb 100644
--- a/arch/arm/configs/aicp_flo_defconfig
+++ b/arch/arm/configs/aicp_flo_defconfig
@@ -52,7 +52,7 @@ CONFIG_HAVE_KERNEL_XZ=y
CONFIG_HAVE_KERNEL_LZO=y
# CONFIG_KERNEL_GZIP is not set
CONFIG_KERNEL_LZMA=y
-CONFIG_KERNEL_XZ=y
+# CONFIG_KERNEL_XZ is not set
# CONFIG_KERNEL_LZO is not set
CONFIG_DEFAULT_HOSTNAME="(none)"
CONFIG_SWAP=y
diff --git a/arch/arm/configs/cyanogen_mako_defconfig b/arch/arm/configs/cyanogen_mako_defconfig
index 10d9d49173b..316b320d925 100644
--- a/arch/arm/configs/cyanogen_mako_defconfig
+++ b/arch/arm/configs/cyanogen_mako_defconfig
@@ -56,8 +56,7 @@ CONFIG_KERNEL_GZIP=y
# CONFIG_KERNEL_LZO is not set
CONFIG_DEFAULT_HOSTNAME="(none)"
CONFIG_SWAP=y
-CONFIG_SYSVIPC=y
-CONFIG_SYSVIPC_SYSCTL=y
+# CONFIG_SYSVIPC is not set
# CONFIG_POSIX_MQUEUE is not set
# CONFIG_BSD_PROCESS_ACCT is not set
# CONFIG_FHANDLE is not set
@@ -110,7 +109,6 @@ CONFIG_RT_GROUP_SCHED=y
# CONFIG_CHECKPOINT_RESTORE is not set
CONFIG_NAMESPACES=y
# CONFIG_UTS_NS is not set
-# CONFIG_IPC_NS is not set
# CONFIG_USER_NS is not set
# CONFIG_PID_NS is not set
# CONFIG_NET_NS is not set
diff --git a/arch/arm/mach-msm/asustek/asustek-keypad.c b/arch/arm/mach-msm/asustek/asustek-keypad.c
index 476992b76a2..18a84708a99 100644
--- a/arch/arm/mach-msm/asustek/asustek-keypad.c
+++ b/arch/arm/mach-msm/asustek/asustek-keypad.c
@@ -36,7 +36,7 @@
#define GPIO_PM8921_KEY2_VOLUME_UP PM8921_GPIO_PM_TO_SYS(4)
#define GPIO_PM8921_KEY2_VOLUME_DOWN GPIO_PM8921_KEY_VOLUME_DOWN
-#define GPIO_KEY(_id, _iswake, _isreset) \
+#define GPIO_KEY(_id, _iswake) \
{ \
.code = _id, \
.gpio = GPIO_##_id, \
@@ -45,14 +45,12 @@
.type = EV_KEY, \
.wakeup = _iswake, \
.debounce_interval = 5, \
- .can_reset= _isreset, \
- .reset_interval= 7000, \
}
static struct gpio_keys_button asustek_keys[] = {
- [0] = GPIO_KEY(KEY_POWER, 1, 1),
- [1] = GPIO_KEY(KEY_VOLUMEUP, 0, 0),
- [2] = GPIO_KEY(KEY_VOLUMEDOWN, 0, 0),
+ [0] = GPIO_KEY(KEY_POWER, 1),
+ [1] = GPIO_KEY(KEY_VOLUMEUP, 0),
+ [2] = GPIO_KEY(KEY_VOLUMEDOWN, 0),
};
static struct gpio_keys_platform_data asustek_keys_platform_data = {
diff --git a/arch/arm/mach-msm/smd_rpcrouter.c b/arch/arm/mach-msm/smd_rpcrouter.c
index eb209e03d4a..36b8ccfdc78 100644
--- a/arch/arm/mach-msm/smd_rpcrouter.c
+++ b/arch/arm/mach-msm/smd_rpcrouter.c
@@ -2127,7 +2127,7 @@ int msm_rpc_get_curr_pkt_size(struct msm_rpc_endpoint *ept)
int msm_rpcrouter_close(void)
{
struct rpcrouter_xprt_info *xprt_info;
- union rr_control_msg ctl;
+ union rr_control_msg ctl = { 0 };
ctl.cmd = RPCROUTER_CTRL_CMD_BYE;
mutex_lock(&xprt_info_list_lock);
diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c
index 170f0e703c6..e4f2e8d8e4d 100644
--- a/drivers/input/keyboard/gpio_keys.c
+++ b/drivers/input/keyboard/gpio_keys.c
@@ -44,9 +44,6 @@ struct gpio_button_data {
spinlock_t lock;
bool disabled;
bool key_pressed;
- struct work_struct reset_work;
- struct timer_list reset_timer;
- unsigned int timer_hwreset; /* in msecs */
};
struct gpio_keys_drvdata {
@@ -339,28 +336,6 @@ static char *key_descriptions[] = {
};
#endif
-/* Routines for resetkey-transition notifications */
-static BLOCKING_NOTIFIER_HEAD(resetkey_chain_head);
-
-int register_resetkey_notifier(struct notifier_block *nb)
-{
- return blocking_notifier_chain_register(&resetkey_chain_head, nb);
-}
-EXPORT_SYMBOL_GPL(register_resetkey_notifier);
-
-int unregister_resetkey_notifier(struct notifier_block *nb)
-{
- return blocking_notifier_chain_unregister(&resetkey_chain_head, nb);
-}
-EXPORT_SYMBOL_GPL(unregister_resetkey_notifier);
-
-int resetkey_notifier_call_chain(unsigned long val)
-{
- int ret = blocking_notifier_call_chain(&resetkey_chain_head, val, NULL);
-
- return notifier_to_errno(ret);
-}
-
static void gpio_keys_gpio_report_event(struct gpio_button_data *bdata)
{
const struct gpio_keys_button *button = bdata->button;
@@ -399,13 +374,6 @@ static void gpio_keys_gpio_work_func(struct work_struct *work)
}
#endif
- if (button->can_reset) {
- if (state)
- mod_timer(&bdata->reset_timer,
- jiffies + msecs_to_jiffies(bdata->timer_hwreset));
- else
- del_timer_sync(&bdata->reset_timer);
- }
gpio_keys_gpio_report_event(bdata);
}
@@ -416,19 +384,6 @@ static void gpio_keys_gpio_timer(unsigned long _data)
schedule_work(&bdata->work);
}
-static void reset_keys_work_func(struct work_struct *work)
-{
- pr_info("gpio_keys: notify listeners pmic preparing to reset\n");
- resetkey_notifier_call_chain(RESETKEY_PREPARE_HWREST);
-}
-
-static void powerkey_gpio_timer(unsigned long _data)
-{
- struct gpio_button_data *bdata = (struct gpio_button_data *)_data;
-
- schedule_work(&bdata->reset_work);
-}
-
static irqreturn_t gpio_keys_gpio_isr(int irq, void *dev_id)
{
struct gpio_button_data *bdata = dev_id;
@@ -549,13 +504,6 @@ static int __devinit gpio_keys_setup_key(struct platform_device *pdev,
isr = gpio_keys_gpio_isr;
irqflags = IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING;
- if (button->can_reset) {
- INIT_WORK(&bdata->reset_work, reset_keys_work_func);
- bdata->timer_hwreset = button->reset_interval;
- setup_timer(&bdata->reset_timer, powerkey_gpio_timer,
- (unsigned long)bdata);
- }
-
} else {
if (!button->irq) {
dev_err(dev, "No IRQ specified\n");
diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
index b19a8897153..c0105e67ace 100644
--- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c
@@ -45,11 +45,6 @@
#include "sd_ops.h"
#include "sdio_ops.h"
-#include <linux/fs.h>
-#include <linux/delay.h>
-
-extern void kernel_restart(char *cmd);
-
#define CREATE_TRACE_POINTS
#include <trace/events/mmc.h>
@@ -1761,40 +1756,6 @@ void mmc_set_driver_type(struct mmc_host *host, unsigned int drv_type)
mmc_host_clk_release(host);
}
-void mmc_force_poweroff_notify(struct mmc_host *host)
-{
- int err = 0;
- unsigned int timeout;
-
- mmc_claim_host(host);
-
- if (mmc_card_is_sleep(host->card)) {
- BUG_ON(!host->bus_ops->resume);
- err = host->bus_ops->resume(host);
- }
-
- if (err) {
- pr_err("failed to resume for force poweroff notify\n");
- return;
- }
-
- timeout = host->card->ext_csd.generic_cmd6_time;
-
- pr_info("sending poweroff notify\n");
- err = mmc_switch(host->card, EXT_CSD_CMD_SET_NORMAL,
- EXT_CSD_POWER_OFF_NOTIFICATION,
- EXT_CSD_POWER_OFF_SHORT, timeout);
- if (err && err != -EBADMSG) {
- pr_err("Device failed to respond within %d poweroff time\n",
- timeout);
- return;
- }
-
- pr_info("poweroff notify sent\n");
- mmc_release_host(host);
- return;
-}
-
/*
* Apply power to the MMC stack. This is a two-stage process.
* First, we enable power to the card without the clock running.
@@ -3554,29 +3515,6 @@ int mmc_pm_notify(struct notifier_block *notify_block,
}
#endif
-
-/* force send poweroff notify to Kingston eMMC
- * while long press power key before hw reset
- */
-int force_poweroff_notify(struct notifier_block *notify_block,
- unsigned long mode, void *unused)
-{
- struct mmc_host *host = container_of(
- notify_block, struct mmc_host, force_poweroff_notifier);
-
- if (host->card == NULL)
- return 0;
- /* only for Kingston card */
- if (mmc_card_mmc(host->card)
- && host->card->cid.manfid == 0x70) {
- emergency_sync();
- emergency_remount();
- msleep(1000);
- kernel_restart(NULL);
- }
- return 0;
-}
-
#ifdef CONFIG_MMC_EMBEDDED_SDIO
void mmc_set_embedded_sdio_data(struct mmc_host *host,
struct sdio_cis *cis,
diff --git a/drivers/mmc/core/core.h b/drivers/mmc/core/core.h
index d7dd6e4513f..6fa51e0e18d 100644
--- a/drivers/mmc/core/core.h
+++ b/drivers/mmc/core/core.h
@@ -48,7 +48,6 @@ int mmc_set_signal_voltage(struct mmc_host *host, int signal_voltage,
void mmc_set_timing(struct mmc_host *host, unsigned int timing);
void mmc_set_driver_type(struct mmc_host *host, unsigned int drv_type);
void mmc_power_off(struct mmc_host *host);
-void mmc_force_poweroff_notify(struct mmc_host *host);
static inline void mmc_delay(unsigned int ms)
{
@@ -72,9 +71,6 @@ int mmc_attach_mmc(struct mmc_host *host);
int mmc_attach_sd(struct mmc_host *host);
int mmc_attach_sdio(struct mmc_host *host);
-int force_poweroff_notify(struct notifier_block *notify_block,
- unsigned long mode, void *unused);
-
/* Module parameters */
extern bool use_spi_crc;
diff --git a/drivers/mmc/core/host.c b/drivers/mmc/core/host.c
index 9d5ff61c84d..98dee02c1e6 100644
--- a/drivers/mmc/core/host.c
+++ b/drivers/mmc/core/host.c
@@ -28,10 +28,6 @@
#include "core.h"
#include "host.h"
-#ifdef CONFIG_KEYBOARD_GPIO
-#include <linux/gpio_keys.h>
-#endif
-
#define cls_dev_to_mmc_host(d) container_of(d, struct mmc_host, class_dev)
static void mmc_host_classdev_release(struct device *dev)
@@ -343,10 +339,6 @@ struct mmc_host *mmc_alloc_host(int extra, struct device *dev)
#ifdef CONFIG_PM
host->pm_notify.notifier_call = mmc_pm_notify;
#endif
-#ifdef CONFIG_KEYBOARD_GPIO
- host->force_poweroff_notifier.notifier_call = force_poweroff_notify;
- register_resetkey_notifier(&host->force_poweroff_notifier);
-#endif
/*
* By default, hosts do not support SGIO or large requests.
diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
index c1de6817b02..d3d24c49357 100644
--- a/drivers/mmc/core/mmc.c
+++ b/drivers/mmc/core/mmc.c
@@ -1532,8 +1532,6 @@ static int mmc_suspend(struct mmc_host *host)
err = mmc_card_sleep(host);
else if (!mmc_host_is_spi(host))
mmc_deselect_cards(host);
-
- mmc_card_set_sleep(host->card);
host->card->state &= ~(MMC_STATE_HIGHSPEED | MMC_STATE_HIGHSPEED_200);
out:
@@ -1554,7 +1552,6 @@ static int mmc_resume(struct mmc_host *host)
BUG_ON(!host);
BUG_ON(!host->card);
- mmc_card_clr_sleep(host->card);
mmc_claim_host(host);
err = mmc_init_card(host, host->ocr, host->card);
mmc_release_host(host);
@@ -1577,7 +1574,6 @@ static int mmc_power_restore(struct mmc_host *host)
mmc_disable_clk_scaling(host);
host->card->state &= ~(MMC_STATE_HIGHSPEED | MMC_STATE_HIGHSPEED_200);
- mmc_card_clr_sleep(host->card);
mmc_claim_host(host);
ret = mmc_init_card(host, host->ocr, host->card);
mmc_release_host(host);
diff --git a/drivers/mmc/host/msm_sdcc.c b/drivers/mmc/host/msm_sdcc.c
index 693305245e2..e9afafb9f07 100644
--- a/drivers/mmc/host/msm_sdcc.c
+++ b/drivers/mmc/host/msm_sdcc.c
@@ -60,7 +60,6 @@
#include "msm_sdcc.h"
#include "msm_sdcc_dml.h"
-#include "../core/core.h"
#define DRIVER_NAME "msm-sdcc"
@@ -6298,21 +6297,6 @@ static int msmsdcc_remove(struct platform_device *pdev)
return 0;
}
-static void msmsdcc_shutdown(struct platform_device *pdev)
-{
- struct mmc_host *mmc = mmc_get_drvdata(pdev);
-
- if (!mmc || !mmc->card)
- return;
-
- /* only for Kingston eMMC */
- if (mmc_card_mmc(mmc->card)
- && mmc->card->cid.manfid == 0x70)
- mmc_force_poweroff_notify(mmc);
-
- return;
-}
-
#ifdef CONFIG_MSM_SDIO_AL
int msmsdcc_sdio_al_lpm(struct mmc_host *mmc, bool enable)
{
@@ -6673,7 +6657,6 @@ MODULE_DEVICE_TABLE(of, msmsdcc_dt_match);
static struct platform_driver msmsdcc_driver = {
.probe = msmsdcc_probe,
.remove = msmsdcc_remove,
- .shutdown = msmsdcc_shutdown,
.driver = {
.name = "msm_sdcc",
.pm = &msmsdcc_dev_pm_ops,
diff --git a/drivers/video/msm/mipi_JDI.c b/drivers/video/msm/mipi_JDI.c
index e12c0dea7a5..3cdf2185c17 100644
--- a/drivers/video/msm/mipi_JDI.c
+++ b/drivers/video/msm/mipi_JDI.c
@@ -85,8 +85,8 @@ static char backlight_control4[] = {0xCE, 0x7D, 0x40, 0x48, 0x56, 0x67, 0x78,
static char LTPS_timing_setting[2] = {0xC6, 0x78};
static char sequencer_timing_control[2] = {0xD6, 0x01};
-static unsigned int cabc_level = 0x00;
-static unsigned int sre_level = 0x00;
+static unsigned int cabc_level = 0;
+static unsigned int sre_level = 0;
static bool aco_enabled = false;
static struct dsi_cmd_desc JDI_display_on_cmds[] = {
@@ -273,19 +273,33 @@ static void JDI_command_cabc(void)
{
write_cabc[1] = CABC_OFF;
- if (cabc_level == 1)
+ switch (cabc_level) {
+ case 1:
write_cabc[1] |= CABC_UI;
- else if (cabc_level == 2)
+ break;
+ case 2:
write_cabc[1] |= CABC_IMAGE;
- else if (cabc_level == 3)
+ break;
+ case 3:
write_cabc[1] |= CABC_VIDEO;
+ break;
+ default:
+ break;
+ }
- if (sre_level == 1)
+ switch (sre_level) {
+ case 1:
write_cabc[1] |= SRE_WEAK;
- else if (sre_level == 2)
+ break;
+ case 2:
write_cabc[1] |= SRE_MEDIUM;
- else if (sre_level == 3)
+ break;
+ case 3:
write_cabc[1] |= SRE_STRONG;
+ break;
+ default:
+ break;
+ }
if (aco_enabled)
write_cabc[1] |= CABC_ACO;
@@ -315,15 +329,6 @@ static int mipi_JDI_get_cabc(struct platform_device *pdev) {
static void mipi_JDI_set_sre(struct platform_device *pdev, int level)
{
- unsigned int sre_value = 0;
-
- if (level == 1)
- sre_value = SRE_WEAK;
- else if (level == 2)
- sre_value = SRE_MEDIUM;
- else if (level == 3)
- sre_value = SRE_STRONG;
-
sre_level = level;
JDI_command_cabc();
}
diff --git a/drivers/video/msm/mipi_JDI.h b/drivers/video/msm/mipi_JDI.h
index 0b6cf472ba5..ac271f61361 100644
--- a/drivers/video/msm/mipi_JDI.h
+++ b/drivers/video/msm/mipi_JDI.h
@@ -18,10 +18,10 @@ int mipi_JDI_device_register(struct msm_panel_info *pinfo,
u32 channel, u32 panel);
enum {
- CABC_OFF = 0x0,
- CABC_UI = 0x1,
- CABC_IMAGE = 0x2,
- CABC_VIDEO = 0x3,
+ CABC_OFF = 0x00,
+ CABC_UI = 0x01,
+ CABC_IMAGE = 0x02,
+ CABC_VIDEO = 0x03,
SRE_WEAK = 0x50,
SRE_MEDIUM = 0x60,
SRE_STRONG = 0X70,
diff --git a/include/linux/gpio_keys.h b/include/linux/gpio_keys.h
index d02ba7b922d..a7e977ff4ab 100644
--- a/include/linux/gpio_keys.h
+++ b/include/linux/gpio_keys.h
@@ -15,8 +15,6 @@ struct gpio_keys_button {
bool can_disable;
int value; /* axis value for EV_ABS */
unsigned int irq; /* Irq number in case of interrupt keys */
- bool can_reset; /* key is able to reset system */
- int reset_interval; /* reset key interval in msec */
};
struct gpio_keys_platform_data {
@@ -30,12 +28,4 @@ struct gpio_keys_platform_data {
const char *name; /* input device name */
};
-
-#define RESETKEY_PRESS 0x0001 /* power key is pressed */
-#define RESETKEY_RELEASE 0x0002 /* power key is released */
-#define RESETKEY_PREPARE_HWREST 0x0003 /* Going to reset whole system by pmic*/
-
-extern int register_resetkey_notifier(struct notifier_block *nb);
-extern int unregister_resetkey_notifier(struct notifier_block *nb);
-
#endif
diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h
index 56b09e5024b..a63105996ff 100644
--- a/include/linux/mmc/card.h
+++ b/include/linux/mmc/card.h
@@ -311,7 +311,6 @@ struct mmc_card {
#define MMC_STATE_HIGHSPEED_200 (1<<8) /* card is in HS200 mode */
#define MMC_STATE_DOING_BKOPS (1<<10) /* card is doing BKOPS */
#define MMC_STATE_NEED_BKOPS (1<<11) /* card needs to do BKOPS */
-#define MMC_STATE_SLEEP (1<<12) /* card is in sleep/deselect state */
unsigned int quirks; /* card quirks */
#define MMC_QUIRK_LENIENT_FN0 (1<<0) /* allow SDIO FN0 writes outside of the VS CCCR range */
#define MMC_QUIRK_BLKSZ_FOR_BYTE_MODE (1<<1) /* use func->cur_blksize */
@@ -484,7 +483,6 @@ static inline void __maybe_unused remove_quirk(struct mmc_card *card, int data)
#define mmc_card_removed(c) ((c) && ((c)->state & MMC_CARD_REMOVED))
#define mmc_card_doing_bkops(c) ((c)->state & MMC_STATE_DOING_BKOPS)
#define mmc_card_need_bkops(c) ((c)->state & MMC_STATE_NEED_BKOPS)
-#define mmc_card_is_sleep(c) ((c)->state & MMC_STATE_SLEEP)
#define mmc_card_set_present(c) ((c)->state |= MMC_STATE_PRESENT)
#define mmc_card_set_readonly(c) ((c)->state |= MMC_STATE_READONLY)
@@ -500,9 +498,6 @@ static inline void __maybe_unused remove_quirk(struct mmc_card *card, int data)
#define mmc_card_clr_doing_bkops(c) ((c)->state &= ~MMC_STATE_DOING_BKOPS)
#define mmc_card_set_need_bkops(c) ((c)->state |= MMC_STATE_NEED_BKOPS)
#define mmc_card_clr_need_bkops(c) ((c)->state &= ~MMC_STATE_NEED_BKOPS)
-#define mmc_card_set_sleep(c) ((c)->state |= MMC_STATE_SLEEP)
-#define mmc_card_clr_sleep(c) ((c)->state &= ~MMC_STATE_SLEEP)
-
/*
* Quirk add/remove for MMC products.
*/
diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h
index 224a631951c..b5195ed00ad 100644
--- a/include/linux/mmc/host.h
+++ b/include/linux/mmc/host.h
@@ -209,7 +209,6 @@ struct mmc_host {
u32 ocr_avail_sd; /* SD-specific OCR */
u32 ocr_avail_mmc; /* MMC-specific OCR */
struct notifier_block pm_notify;
- struct notifier_block force_poweroff_notifier;
#define MMC_VDD_165_195 0x00000080 /* VDD voltage 1.65 - 1.95 */
#define MMC_VDD_20_21 0x00000100 /* VDD voltage 2.0 ~ 2.1 */