aboutsummaryrefslogtreecommitdiff
path: root/drivers/misc
diff options
context:
space:
mode:
authorAnmin Hsu <anmin.hsu@mediatek.com>2015-10-02 01:10:06 +0800
committerMister Oyster <oysterized@gmail.com>2017-05-11 17:14:28 +0200
commit53721e4ea5b714cf9cffdf76736eb50402546686 (patch)
tree589ae205f3890face73658e1efff4d56bac96a5e /drivers/misc
parent7c92892ae9029c331e2e3e5d0928ebb12f0dab5e (diff)
aee: enable mt_dump flow
[Detail] ipanic flow need to use mt_dump flow to avoid reserve memory for preloader/lk [Solution] 1.Enable mt_dump ke flow 2.remove preloader/lk memory reserve in MT6735 [Feature] CTS(*) MTK-Commit-Id: aff7a2ce6a1c6bd805b2acdeaef7c8c28a0cd613 Change-Id: I2264b0544d3219b4ed2dd53483a134182d76aa17 Signed-off-by: Ji Zhang <ji.zhang@mediatek.com> CR-Id: ALPS02296880 (cherry picked from commit abaf1e786c9856e1a048e55714faa7f98309b96d)
Diffstat (limited to 'drivers/misc')
-rw-r--r--drivers/misc/mediatek/aee/ipanic/ipanic_rom.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/misc/mediatek/aee/ipanic/ipanic_rom.c b/drivers/misc/mediatek/aee/ipanic/ipanic_rom.c
index 4077ecfde..d95b3c1e5 100644
--- a/drivers/misc/mediatek/aee/ipanic/ipanic_rom.c
+++ b/drivers/misc/mediatek/aee/ipanic/ipanic_rom.c
@@ -30,6 +30,12 @@ int __weak ipanic_atflog_buffer(void *data, unsigned char *buffer, size_t sz_buf
return 0;
}
+int __weak has_mt_dump_support(void)
+{
+ pr_notice("%s: no mt_dump support!\n", __func__);
+ return 0;
+}
+
#if 1
void ipanic_block_scramble(u8 *buf, int buflen)
{
@@ -453,6 +459,8 @@ int ipanic(struct notifier_block *this, unsigned long event, void *ptr)
int dt;
int errno;
struct ipanic_header *ipanic_hdr;
+
+ memset(&dumper, 0x0, sizeof(struct kmsg_dumper));
aee_rr_rec_fiq_step(AEE_FIQ_STEP_KE_IPANIC_START);
aee_rr_rec_exp_type(2);
bust_spinlocks(1);
@@ -613,6 +621,9 @@ static int ipanic_die(struct notifier_block *self, unsigned long cmd, void *ptr)
/* No return if mrdump is enable */
__mrdump_create_oops_dump(AEE_REBOOT_MODE_KERNEL_OOPS, dargs->regs, "Kernel Oops");
+ if (!has_mt_dump_support())
+ emergency_restart();
+
smp_send_stop();
ipanic_mrdump_mini(AEE_REBOOT_MODE_KERNEL_PANIC, "kernel Oops");