3 #include <mach/mt_reg_base.h>
4 #include <mach/wd_api.h>
5 #include <linux/memblock.h>
6 #include <linux/mrdump.h>
7 #include <linux/reboot.h>
9 #define MRDUMP_CB_ADDR 0x81F00000
10 #define MRDUMP_CB_SIZE 0x1000
12 #define LK_LOAD_ADDR 0x81E00000
13 #define LK_LOAD_SIZE 0x100000
15 static void mrdump_hw_enable(bool enabled
)
19 static void mrdump_reboot(void)
24 const struct mrdump_platform mrdump_mt6582_platform
= {
25 .hw_enable
= mrdump_hw_enable
,
26 .reboot
= mrdump_reboot
29 void mrdump_reserve_memory(void)
31 struct mrdump_control_block
*cblock
= NULL
;
33 /* We must reserved the lk block, can we pass it from lk? */
34 memblock_reserve(LK_LOAD_ADDR
, LK_LOAD_SIZE
);
36 memblock_reserve(MRDUMP_CB_ADDR
, PAGE_ALIGN(sizeof(struct mrdump_control_block
)));
37 cblock
= (struct mrdump_control_block
*)__va(MRDUMP_CB_ADDR
);
39 mrdump_platform_init(cblock
, &mrdump_mt6582_platform
);