qcacmn: add support for VA based minidump

Before GKI enforcement and driver modulization, vendor drivers’
data section was part of vmlinux and they were registered with
minidump and collected when crash happens.
With GKI, vendor modules’ data section is part of va-malloc
region, which is virtually contiguous but physically not. It
is difficult to fit into the existing PA based minidump framework.
New VA-minidump driver allocates some CMA region which is registered
as one entry in minidump infrastructure. During panic, the driver
creates an ELF which is based on VA, copies it into that CMA region,
and finally it gets dumped as md_KVA_DUMP.bin.
This change makes use of this VA-minidump framework and implement
the APIs accordingly.

Change-Id: Ib1282990c91408bcd4e68365afe694830b90d0ac
CRs-Fixed: 3232060
This commit is contained in:
Yu Wang
2022-06-27 17:30:49 +08:00
committed by Madan Koyyalamudi
szülő b67f4a7465
commit 56ebf2707b
3 fájl változott, egészen pontosan 198 új sor hozzáadva és 13 régi sor törölve

Fájl megtekintése

@@ -1696,6 +1696,30 @@ void qdf_logging_exit(void);
*/
int qdf_sprint_symbol(char *buffer, void *addr);
/**
* qdf_minidump_init() - Initialize minidump functionality
*
*
* Return: void
*/
static inline
void qdf_minidump_init(void)
{
__qdf_minidump_init();
}
/**
* qdf_minidump_deinit() - De-initialize minidump functionality
*
*
* Return: void
*/
static inline
void qdf_minidump_deinit(void)
{
__qdf_minidump_deinit();
}
/**
* qdf_minidump_log() - Log memory address to be included in minidump
* @start_addr: Start address of the memory to be dumped