OpenCloudOS-Kernel/arch/arm/plat-samsung
Bartlomiej Zolnierkiewicz 6862fdf220 ARM: samsung: Limit SAMSUNG_PM_CHECK config option to non-Exynos platforms
"S3C2410 PM Suspend Memory CRC" feature (controlled by
SAMSUNG_PM_CHECK config option) is incompatible with highmem
(uses phys_to_virt() instead of proper mapping) which is used by
the majority of Exynos boards. The issue manifests itself in OOPS
on affected boards, i.e. on Odroid-U3 I got the following one:

Unable to handle kernel paging request at virtual address f0000000
pgd = 1c0f9bb4
[f0000000] *pgd=00000000
Internal error: Oops: 5 [#1] PREEMPT SMP ARM
[<c0458034>] (crc32_le) from [<c0121f8c>] (s3c_pm_makecheck+0x34/0x54)
[<c0121f8c>] (s3c_pm_makecheck) from [<c0121efc>] (s3c_pm_run_res+0x74/0x8c)
[<c0121efc>] (s3c_pm_run_res) from [<c0121ecc>] (s3c_pm_run_res+0x44/0x8c)
[<c0121ecc>] (s3c_pm_run_res) from [<c01210b8>] (exynos_suspend_enter+0x64/0x148)
[<c01210b8>] (exynos_suspend_enter) from [<c018893c>] (suspend_devices_and_enter+0x9ec/0xe74)
[<c018893c>] (suspend_devices_and_enter) from [<c0189534>] (pm_suspend+0x770/0xc04)
[<c0189534>] (pm_suspend) from [<c0186ce8>] (state_store+0x6c/0xcc)
[<c0186ce8>] (state_store) from [<c09db434>] (kobj_attr_store+0x14/0x20)
[<c09db434>] (kobj_attr_store) from [<c02fa63c>] (sysfs_kf_write+0x4c/0x50)
[<c02fa63c>] (sysfs_kf_write) from [<c02f97a4>] (kernfs_fop_write+0xfc/0x1e4)
[<c02f97a4>] (kernfs_fop_write) from [<c027b198>] (__vfs_write+0x2c/0x140)
[<c027b198>] (__vfs_write) from [<c027b418>] (vfs_write+0xa4/0x160)
[<c027b418>] (vfs_write) from [<c027b5d8>] (ksys_write+0x40/0x8c)
[<c027b5d8>] (ksys_write) from [<c0101000>] (ret_fast_syscall+0x0/0x28)

Add PLAT_S3C24XX, ARCH_S3C64XX and ARCH_S5PV210 dependencies to
SAMSUNG_PM_CHECK config option to hide it on Exynos platforms.

Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-10-01 18:42:48 +02:00
..
include/plat ARM: exynos: Remove static mapping of SCU SFR 2018-05-13 14:06:55 +02:00
Kconfig ARM: samsung: Limit SAMSUNG_PM_CHECK config option to non-Exynos platforms 2018-10-01 18:42:48 +02:00
Makefile ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
adc.c headers: fix build error in arch/arm/plat-samsung/adc.c, add <linux/mod_devicetable.h> 2018-07-08 15:19:04 +02:00
cpu.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
dev-uart.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
devs.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
gpio-samsung.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
init.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
platformdata.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
pm-check.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
pm-common.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
pm-debug.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
pm-gpio.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
pm.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
wakeup-mask.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
watchdog-reset.c ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00