OpenCloudOS-Kernel/drivers/gpu/drm/ast
KuoHsiang Chou f34bf652d6 drm/ast: Disable fast reset after DRAM initial
[Bug][AST2500]

V1:
When AST2500 acts as stand-alone VGA so that DRAM and DVO initialization
have to be achieved by VGA driver with P2A (PCI to AHB) enabling.
However, HW suggests disable Fast reset mode after DRAM initializaton,
because fast reset mode is mainly designed for ARM ICE debugger.
Once Fast reset is checked as enabling, WDT (Watch Dog Timer) should be
first enabled to avoid system deadlock before disable fast reset mode.

V2:
Use to_pci_dev() to get revision of PCI configuration.

V3:
If SCU00 is not unlocked, just enter its password again.
It is unnecessary to clear AHB lock condition and restore WDT default
setting again, before Fast-reset clearing.

V4:
repatch after "error : could not build fake ancestor" resolved.

V5:
Since CVE_2019_6260 item3, Most of AST2500 have disabled P2A(PCIe to AMBA).
However, for backward compatibility, some patches about P2A, such as items
of v5.2 and v5.3, are considered to be upstreamed with comments.
1. Add define macro to improve source readability.
ast_drv.h, ast_main.c, ast_post.c
2. Add comment about "Fast restet" is enabled for ARM-ICE debugger
ast_post.c
3. Add comment about Reset USB port to patch USB unknown device issue
ast_post.c

Signed-off-by: KuoHsiang Chou <kuohsiang_chou@aspeedtech.com>
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20210709080900.4056-1-kuohsiang_chou@aspeedtech.com
2021-07-20 11:19:57 +02:00
..
Kconfig drm/vram: fix Kconfig 2019-09-10 08:53:08 +02:00
Makefile drm/ast: Inline ast cursor-update functions into modesetting code 2021-02-17 12:40:05 +01:00
ast_dp501.c drm/ast: Fixed CVE for DP501 2021-04-27 14:12:34 +02:00
ast_dram_tables.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ast_drv.c drm/aperture: Pass DRM driver structure instead of driver name 2021-07-01 11:11:55 +02:00
ast_drv.h drm/ast: Disable fast reset after DRAM initial 2021-07-20 11:19:57 +02:00
ast_main.c drm/ast: Disable fast reset after DRAM initial 2021-07-20 11:19:57 +02:00
ast_mm.c drm/ast: Remove references to struct drm_device.pdev 2021-01-06 15:38:30 +01:00
ast_mode.c drm/ast: Zero is missing in detect function 2021-07-20 11:19:57 +02:00
ast_post.c drm/ast: Disable fast reset after DRAM initial 2021-07-20 11:19:57 +02:00
ast_tables.h drm/ast: Fixed 1920x1080 sync. polarity issue 2020-11-09 09:00:44 +01:00