Evan Quan
b66effb18a
drm/amd/pm: drop unnecessary feature->mutex lock protections(V2)
...
As these operations are performed in hardware setup and there
is actually no race conditions during this period considering:
1. the hardware setup is serial and cannot be in parallel
2. all other operations can be performed only after hardware
setup complete.
V2: rich the commit log description
Signed-off-by: Evan Quan <evan.quan@amd.com >
Acked-by: Nirmoy Das <nirmoy.das@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2020-09-17 17:47:09 -04:00
Evan Quan
12f04120d3
drm/amd/pm: make namings and comments more readable
...
And to fit more accurately what the cod does.
Signed-off-by: Evan Quan <evan.quan@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2020-09-17 17:47:03 -04:00
Evan Quan
eb5f69e766
drm/amd/pm: correct the requirement for umc cdr workaround
...
The workaround can be applied only with UCLK DPM enabled.
And expand the workaround to more Navi10 SKUs and also
Navi14.
Signed-off-by: Evan Quan <evan.quan@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2020-09-17 17:46:56 -04:00
Evan Quan
bb7257b5a8
drm/amd/pm: apply the CDR workarounds only with some specific UMC firmwares(V2)
...
And different workaround will be applied based on hybrid cdr bit.
V2: add pmfw version guard to make sure the new workaround applied only
with pmfw >= 42.53.0
Signed-off-by: Evan Quan <evan.quan@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2020-09-17 17:46:47 -04:00
Evan Quan
665945eb49
drm/amd/pm: implement a new umc cdr workaround
...
By uploading dummy pstate tables.
Signed-off-by: Evan Quan <evan.quan@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2020-09-17 17:46:40 -04:00
Evan Quan
2379be2faf
drm/amd/pm: allocate a new buffer for pstate dummy reading
...
This dummy reading buffer will be used for the new Navi1x
UMC CDR workaround.
Signed-off-by: Evan Quan <evan.quan@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2020-09-17 17:46:34 -04:00
Evan Quan
3646c00e74
drm/amd/pm: revise the umc hybrid cdr workaround
...
Drop the unused message(SMU_MSG_DAL_DISABLE_DUMMY_PSTATE_CHANGE).
And do not apply this workaround when the max uclk frequency
is greater than 750Mhz.
Signed-off-by: Evan Quan <evan.quan@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2020-09-17 17:46:27 -04:00
Evan Quan
82cac71c1b
drm/amd/pm: put Navi1X umc cdr workaround in post_smu_init
...
That's where the uclk dpm get enabled and then the
uclk cdr workaround can be applied.
Signed-off-by: Evan Quan <evan.quan@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2020-09-17 17:46:20 -04:00
Evan Quan
10144762e2
drm/amd/pm: postpone SOCCLK/UCLK enablement after DAL initialization(V2)
...
This is needed for Navi1X only. And it may help for display missing
or hang issue seen on some high resolution monitors.
V2: no UCLK DPM enablement for Navi10 A0 secure SKU
Signed-off-by: Evan Quan <evan.quan@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2020-09-17 17:46:13 -04:00
Evan Quan
4bdd4d25ed
drm/amd/pm: wrapper for postponing some setup job after DAL initializatioa(V2)
...
So that ASIC specific actions can be added.
V2: better namings
Signed-off-by: Evan Quan <evan.quan@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2020-09-17 17:45:57 -04:00
Rodrigo Vivi
8fea92536e
drm/i915: Update DRIVER_DATE to 20200917
...
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
2020-09-17 16:43:57 -04:00
Dave Airlie
4856e5aa0e
drm/ttm: drop evicted from ttm_bo.
...
This was unused.
Signed-off-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200917064132.148521-3-airlied@gmail.com
2020-09-18 06:23:38 +10:00
Dave Airlie
e46f468fef
drm/ttm: drop special pipeline accel cleanup function.
...
The two accel cleanup paths were mostly the same once refactored.
Just pass a bool to say if the evictions are to be pipelined.
Signed-off-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200917064132.148521-2-airlied@gmail.com
2020-09-18 06:23:06 +10:00
Dave Airlie
92afce9095
drm/ttm: make common function for wait/free node path.
...
The pipeline and accel cleansups has similiar paths here.
Signed-off-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200917043040.146575-8-airlied@gmail.com
2020-09-18 06:21:29 +10:00
Dave Airlie
13a8f46d80
drm/ttm: move ghost object creation to a common function
...
Both accel cleanup and pipeline move had the same code, make
a single function for it.
Signed-off-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200917043040.146575-7-airlied@gmail.com
2020-09-18 06:21:25 +10:00
Dave Airlie
2ee476f77f
drm/ttm: add a simple assign mem to bo wrapper
...
This pattern is called in a few places, just clean it up.
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200917043040.146575-6-airlied@gmail.com
2020-09-18 06:16:39 +10:00
Dave Airlie
cae515f4a5
drm/ttm/drivers: call the bind function directly.
...
Now the bind functions have all the protection explicitly the
drivers can just call them directly, and the api can be unexported
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200917043040.146575-5-airlied@gmail.com
2020-09-18 06:16:03 +10:00
Dave Airlie
37bff6542c
drm/ttm: move unbind into the tt destroy.
...
This moves unbind into the driver side on destroy paths.
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200917043040.146575-4-airlied@gmail.com
2020-09-18 06:15:24 +10:00
Dave Airlie
7626168fd1
drm/ttm: flip tt destroy ordering.
...
Call the driver first and have it call the common code cleanup.
This is useful later to fix unbind.
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200917043040.146575-3-airlied@gmail.com
2020-09-18 06:14:41 +10:00
Dave Airlie
0b988ca1c7
drm/ttm: protect against reentrant bind in the drivers
...
This moves the generic tracking into the drivers and protects
against reentrancy in the drivers. It fixes up radeon and agp
to be able to query the bound status as that is required.
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Dave Airlie <airlied@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200917043040.146575-2-airlied@gmail.com
2020-09-18 06:14:00 +10:00
Swathi Dhanavanthri
dc6798a520
drm/i915/tgl, rkl: Make Wa_1606700617/22010271021 permanent
...
This workaround applies to all TGL and RKL steppings.
Signed-off-by: Swathi Dhanavanthri <swathi.dhanavanthri@intel.com >
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200911221158.4700-1-swathi.dhanavanthri@intel.com
2020-09-17 12:42:08 -07:00
Fenghua Yu
c7b6bac9c7
drm, iommu: Change type of pasid to u32
...
PASID is defined as a few different types in iommu including "int",
"u32", and "unsigned int". To be consistent and to match with uapi
definitions, define PASID and its variations (e.g. max PASID) as "u32".
"u32" is also shorter and a little more explicit than "unsigned int".
No PASID type change in uapi although it defines PASID as __u64 in
some places.
Suggested-by: Thomas Gleixner <tglx@linutronix.de >
Signed-off-by: Fenghua Yu <fenghua.yu@intel.com >
Signed-off-by: Borislav Petkov <bp@suse.de >
Reviewed-by: Tony Luck <tony.luck@intel.com >
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com >
Acked-by: Felix Kuehling <Felix.Kuehling@amd.com >
Acked-by: Joerg Roedel <jroedel@suse.de >
Link: https://lkml.kernel.org/r/1600187413-163670-2-git-send-email-fenghua.yu@intel.com
2020-09-17 19:21:16 +02:00
Ville Syrjälä
dc98f50fa5
drm/i915: Nuke force_min_cdclk_changed
...
Since we now have proper old and new cdclk state we no longer
need to keep this flag to indicate that the force min cdclk has
changed. Instead just check if the old vs. new value are different.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200714152626.380-4-ville.syrjala@linux.intel.com
Reviewed-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com >
2020-09-17 20:10:21 +03:00
Ville Syrjälä
e161da3316
drm/i915: Remove the old global state stuff
...
With the dbuf code mostly converted over to the new global state
handling we can remove the leftovers of the old global state
stuff.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200902122141.15181-1-ville.syrjala@linux.intel.com
Reviewed-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com >
2020-09-17 20:08:08 +03:00
Jim Quinlan
e0d072782c
dma-mapping: introduce DMA range map, supplanting dma_pfn_offset
...
The new field 'dma_range_map' in struct device is used to facilitate the
use of single or multiple offsets between mapping regions of cpu addrs and
dma addrs. It subsumes the role of "dev->dma_pfn_offset" which was only
capable of holding a single uniform offset and had no region bounds
checking.
The function of_dma_get_range() has been modified so that it takes a single
argument -- the device node -- and returns a map, NULL, or an error code.
The map is an array that holds the information regarding the DMA regions.
Each range entry contains the address offset, the cpu_start address, the
dma_start address, and the size of the region.
of_dma_configure() is the typical manner to set range offsets but there are
a number of ad hoc assignments to "dev->dma_pfn_offset" in the kernel
driver code. These cases now invoke the function
dma_direct_set_offset(dev, cpu_addr, dma_addr, size).
Signed-off-by: Jim Quinlan <james.quinlan@broadcom.com >
[hch: various interface cleanups]
Signed-off-by: Christoph Hellwig <hch@lst.de >
Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org >
Tested-by: Mathieu Poirier <mathieu.poirier@linaro.org >
Tested-by: Nathan Chancellor <natechancellor@gmail.com >
2020-09-17 18:43:56 +02:00
Ville Syrjälä
181567aa9f
drm/i915: Do YCbCr 444->420 conversion via DP protocol converters
...
For platforms that can't do native 4:2:0 outout we may still be
able to do it by getting the DP->HDMI protocol converter to
perform the 4:4:4->4:2:0 downsamling for us. In this case we
have to configure our hardware to output YCbCr 4:4:4, which we've
already hooked up so all we need to do is flip the switch.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-19-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 18:43:09 +03:00
Ville Syrjälä
2ef8d0f7de
drm/dp: Add helpers for DFP YCbCr 4:2:0 handling
...
Add helpers to determine whether the DFP supports
YCbCr 4:2:0 passthrough or YCbCr 4:4:4->4:2:0 conversion.
v2: Add kdocs (Lyude)
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-18-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 18:39:01 +03:00
Ville Syrjälä
bc7ca6a647
drm/i915: DP->HDMI TMDS clock limits vs. deep color
...
Account for the TMDS clock limits declared by the DFP
when determining what color depth we're going to use.
v2: Drop the reference to DP++ dongle since it's not handled here
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-17-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 18:38:39 +03:00
Ville Syrjälä
04e18e01b3
drm/i915: Extract intel_hdmi_has_audio()
...
Pull the "do we want to enable audio?" computation into a small helper
to make intel_hdmi_compute_config() less messy. Will make it easier to
add more checks for this later (eg. we should actually be checking
at the hblank is long enough for audio transmission).
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-16-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 18:38:26 +03:00
Ville Syrjälä
4b3bb83987
drm/i915: Handle downstream facing ports w/o EDID
...
Use drm_dp_downstream_mode() to get a suitable mode for downstream
facing ports which don't have an EDID.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-15-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 18:38:14 +03:00
Ville Syrjälä
7af655bce2
drm/dp: Add drm_dp_downstream_mode()
...
The downstream facing port caps in the DPCD can give us a hint
as to what kind of display mode the sink can use if it doesn't
have an EDID. Use that information to pick a suitable mode.
v2: Use Returns: for kdoc (Lyude)
Add kdocs for drm_display_mode_from_cea_vic() (Lyude)
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-14-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 18:33:22 +03:00
Ville Syrjälä
b7feffd584
drm/i915: Configure DP 1.3+ protocol converted HDMI mode
...
DP 1.3 adds some extra control knobs for DP->HDMI protocol conversion.
Let's use that to configure the "HDMI mode" (ie. infoframes vs. not)
based on the capabilities of the sink.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-13-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 18:33:01 +03:00
Ville Syrjälä
3977cd1c1d
drm/i915: Deal with TMDS DFP clock limits
...
Use the new helpers to extract the TMDS clock limits from
the downstream facing port and check them in .mode_valid().
TODO: we should check these in .compute_config() too to eg.
determine if we can do deep color on the HDMI side or not
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-12-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 18:32:05 +03:00
Ville Syrjälä
6509ca051a
drm/dp: Add drm_dp_downstream_{min,max}_tmds_clock()
...
Add helpers to get the TMDS clock limits for HDMI/DVI downstream
facing ports.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-11-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 18:27:49 +03:00
Ville Syrjälä
fe7cf496e5
drm/i915: Reworkd DP DFP clock handling
...
Move the downstream facing port dotclock check into a new function
(intel_dp_mode_valid_downstream()) so that we have a nice future
place where we can collect other related checks.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-10-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 18:26:46 +03:00
Ville Syrjälä
b770e84311
drm/dp: Redo drm_dp_downstream_max_clock() as drm_dp_downstream_max_dotclock()
...
We want to differentiate between the DFP dotclock and TMDS clock
limits. Let's convert the current thing to just give us the
dotclock limit.
v2: Use Returns: for kdoc (Lyude)
Fix up nouveau code too
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-9-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 18:25:52 +03:00
Ville Syrjälä
42f2562ca1
drm/dp: Pimp drm_dp_downstream_max_bpc()
...
Deal with more cases in drm_dp_downstream_max_bpc():
- DPCD 1.0 -> assume 8bpc for non-DP
- DPCD 1.1+ DP (or DP++ with DP sink) -> allow anything
- DPCD 1.1+ TMDS -> check the caps, assume 8bpc if the value is crap
- anything else -> assume 8bpc
v2: Use Returns: for kdoc (Lyude)
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-8-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 17:12:15 +03:00
Ville Syrjälä
38784f6f88
drm/dp: Add helpers to identify downstream facing port types
...
Add a few helpers to let us better identify which kind of DFP
we're dealing with.
v2: Use Returns: for kdoc (Lyude)
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-7-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 17:09:32 +03:00
Ville Syrjälä
530df3c031
drm/i915: Reworkd DFP max bpc handling
...
Stash the downstream facing port max bpc away during
intel_dp_set_edid(). We'll soon need the EDID in there so
we can't figure this out so easily during .compute_config() anymore.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-6-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 17:06:05 +03:00
Ville Syrjälä
f7af425dce
drm/i915/lspcon: Do not send infoframes to non-HDMI sinks
...
Non-HDMI sinks shouldn't be sent infoframes. Check for that when
using LSPCON.
FIXME: How do we turn off infoframes once enabled? Do we even
have to?
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-3-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 17:03:07 +03:00
Ville Syrjälä
637f7240f6
drm/dp: Dump downstream facing port caps
...
It helps when the logs have a dump of the DFP capabilities.
v2: Move the dumping to the new helper
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200904115354.25336-2-ville.syrjala@linux.intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com >
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
2020-09-17 17:02:08 +03:00
Dmitry Osipenko
d9f980ebcd
drm/tegra: output: rgb: Wrap directly-connected panel into DRM bridge
...
Currently Tegra DRM driver manually manages display panel, but this
management could be moved out into DRM core if we'll wrap panel into
DRM bridge. This patch wraps RGB panel into a DRM bridge and removes
manual handling of the panel from the RGB output code.
Suggested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Acked-by: Sam Ravnborg <sam@ravnborg.org >
Signed-off-by: Dmitry Osipenko <digetx@gmail.com >
Signed-off-by: Thierry Reding <treding@nvidia.com >
2020-09-17 12:31:18 +02:00
Dmitry Osipenko
29efdc2902
drm/tegra: output: rgb: Support LVDS encoder bridge
...
Newer Tegra device-trees will specify a video output graph, which involves
LVDS encoder bridge. This patch adds support for the LVDS encoder bridge
to the RGB output, allowing us to model the display hardware properly.
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Acked-by: Sam Ravnborg <sam@ravnborg.org >
Signed-off-by: Dmitry Osipenko <digetx@gmail.com >
Signed-off-by: Thierry Reding <treding@nvidia.com >
2020-09-17 12:31:00 +02:00
Dmitry Osipenko
f00b9dd579
drm/tegra: output: Support DRM bridges
...
Newer Tegra device-trees will specify a video output graph which involves
a bridge. This patch adds initial support for the DRM bridges to the Tegra
DRM output.
Acked-by: Sam Ravnborg <sam@ravnborg.org >
Signed-off-by: Dmitry Osipenko <digetx@gmail.com >
Signed-off-by: Thierry Reding <treding@nvidia.com >
2020-09-17 12:30:11 +02:00
Dmitry Osipenko
3d2e7aec70
drm/tegra: output: Don't leak OF node on error
...
The OF node should be put before returning error in tegra_output_probe(),
otherwise node's refcount will be leaked.
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Reviewed-by: Sam Ravnborg <sam@ravnborg.org >
Signed-off-by: Dmitry Osipenko <digetx@gmail.com >
Signed-off-by: Thierry Reding <treding@nvidia.com >
2020-09-17 12:29:39 +02:00
Thierry Reding
2340dc15f0
drm/tegra: Properly reference count the DDC I2C adapter
...
Use the of_get_i2c_adapter_by_node(), which is similar to the existing
call to of_find_i2c_adapter_by_node() except that it also takes a
reference to the owner module of the I2C adapter. In order to properly
balance this out, call i2c_put_adapter() to release the reference to the
I2C adapter and its owner module.
For the special case where the DDC comes from the DPAUX, care must be
taken to perform the same steps (i.e. get_device() and module_get()) so
that the reference counts are all balanced.
Signed-off-by: Thierry Reding <treding@nvidia.com >
2020-09-17 12:27:11 +02:00
Christian König
36183150e0
drm/ttm: some cleanups
...
Unexport ttm_check_under_lowerlimit.
Make ttm_bo_acc_size static and unexport it.
Remove ttm_get_kernel_zone_memory_size.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Link: https://patchwork.freedesktop.org/patch/390515/
2020-09-17 11:44:04 +02:00
Dave Airlie
b40be05ed2
Merge branch 'for-5.10-drm-sg-fix' of https://github.com/mszyprow/linux into drm-next
...
Please pull a set of fixes for various DRM drivers that finally resolve
incorrect usage of the scatterlists (struct sg_table nents and orig_nents
entries), what causes issues when IOMMU is used.
Signed-off-by: Dave Airlie <airlied@redhat.com >
From: Marek Szyprowski <m.szyprowski@samsung.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20200910080505.24456-1-m.szyprowski@samsung.com
2020-09-17 16:07:11 +10:00
Bhawanpreet Lakha
875d369d8f
drm/amd/display: Don't log hdcp module warnings in dmesg
...
[Why]
DTM topology updates happens by default now. This results in DTM
warnings when hdcp is not even being enabled. This spams the dmesg
and doesn't effect normal display functionality so it is better to log it
using DRM_DEBUG_KMS()
[How]
Change the DRM_WARN() to DRM_DEBUG_KMS()
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Reviewed-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2020-09-17 00:13:34 -04:00
Jiansong Chen
e60c27f1ff
drm/amdgpu: declare ta firmware for navy_flounder
...
The firmware provided via MODULE_FIRMWARE appears in the
module information. External tools(eg. dracut) may use the
list of fw files to include them as appropriate in an initramfs,
thus missing declaration will lead to request firmware failure
in boot time.
Signed-off-by: Jiansong Chen <Jiansong.Chen@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2020-09-17 00:12:36 -04:00