[Bug 111482] Sapphire Pulse RX 5700 XT power consumption

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111482

--- Comment #25 from Eduardo  ---
I have a PowerColor RedDevil 5700XT and for me, Kernel 5.4-rc1 just works.
Memory clocks always at 100Mhz when idle, even using KDE (Plasma 5.16).

amdgpu-pci-0a00
Adapter: PCI adapter
vddgfx:   +0.72 V  
fan1:   0 RPM  (min =0 RPM, max = 3500 RPM)
edge: +43.0°C  (crit = +118.0°C, hyst = -273.1°C)
   (emerg = +99.0°C)
junction: +43.0°C  (crit = +99.0°C, hyst = -273.1°C)
   (emerg = +99.0°C)
mem:  +44.0°C  (crit = +99.0°C, hyst = -273.1°C)
   (emerg = +99.0°C)
power1:   11.00 W  (cap = 220.00 W)

I'm using Display Port, with FreeSync ON, on a 75HZ monitor, with 2560x1080
resolution.

beast ~ # cat /sys/class/drm/card0/device/pp_dpm_mclk 
0: 100Mhz *
1: 500Mhz 
2: 625Mhz 
3: 875Mhz

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[drm-tip:drm-tip 548/565] drivers/gpu/drm/i915/gem/i915_gem_context.c:813:29: sparse: sparse: incorrect type in argument 1 (different address spaces)

2019-10-05 Thread kbuild test robot
tree:   git://anongit.freedesktop.org/drm/drm-tip drm-tip
head:   f99065c68952afc90504325a19125d95e6b84abc
commit: a4e7ccdac38ec8335d9e4e2656c1a041c77feae1 [548/565] drm/i915: Move 
context management under GEM
reproduce:
# apt-get install sparse
# sparse version: v0.6.1-rc1-42-g38eda53-dirty
git checkout a4e7ccdac38ec8335d9e4e2656c1a041c77feae1
make ARCH=x86_64 allmodconfig
make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot 


sparse warnings: (new ones prefixed by >>)

>> drivers/gpu/drm/i915/gem/i915_gem_context.c:813:29: sparse: sparse: 
>> incorrect type in argument 1 (different address spaces) @@expected 
>> struct i915_address_space *vm @@got struct i915_addresstruct 
>> i915_address_space *vm @@
>> drivers/gpu/drm/i915/gem/i915_gem_context.c:813:29: sparse:expected 
>> struct i915_address_space *vm
>> drivers/gpu/drm/i915/gem/i915_gem_context.c:813:29: sparse:got struct 
>> i915_address_space [noderef]  *vm
   drivers/gpu/drm/i915/gem/i915_gem_context.c:1748:25: sparse: sparse: 
incorrect type in argument 1 (different address spaces) @@expected struct 
i915_gem_engines *e @@got struct i915_gem_enstruct i915_gem_engines *e @@
   drivers/gpu/drm/i915/gem/i915_gem_context.c:1748:25: sparse:expected 
struct i915_gem_engines *e
   drivers/gpu/drm/i915/gem/i915_gem_context.c:1748:25: sparse:got struct 
i915_gem_engines [noderef]  *engines
   drivers/gpu/drm/i915/gem/i915_gem_context.c:1783:15: sparse: sparse: 
incorrect type in assignment (different address spaces) @@expected struct 
i915_gem_engines *clone @@got struct i915_gem_enstruct i915_gem_engines 
*clone @@
   drivers/gpu/drm/i915/gem/i915_gem_context.c:1783:15: sparse:expected 
struct i915_gem_engines *clone
   drivers/gpu/drm/i915/gem/i915_gem_context.c:1783:15: sparse:got struct 
i915_gem_engines [noderef]  *engines
>> drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c:773:51: sparse: 
>> sparse: incorrect type in argument 2 (different address spaces) @@
>> expected struct i915_address_space *[assigned] vm @@got struct struct 
>> i915_address_space *[assigned] vm @@
>> drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c:773:51: sparse:
>> expected struct i915_address_space *[assigned] vm
>> drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c:773:51: sparse:got 
>> struct i915_address_space [noderef]  *vm
>> drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c:780:64: sparse: 
>> sparse: incorrect type in argument 1 (different address spaces) @@
>> expected struct i915_address_space *vm @@got struct i915_addresstruct 
>> i915_address_space *vm @@
>> drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c:780:64: sparse:
>> expected struct i915_address_space *vm
   drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c:780:64: sparse:got 
struct i915_address_space [noderef]  *vm
>> drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c:1694:25: sparse: 
>> sparse: dereference of noderef expression

vim +813 drivers/gpu/drm/i915/gem/i915_gem_context.c

85fddf0b002719 drivers/gpu/drm/i915/i915_gem_context.c Chris Wilson 
2019-03-09  801  
cde5f7edd511b1 drivers/gpu/drm/i915/i915_gem_context.c Chris Wilson 
2019-03-30  802  static int get_ppgtt(struct drm_i915_file_private *file_priv,
cde5f7edd511b1 drivers/gpu/drm/i915/i915_gem_context.c Chris Wilson 
2019-03-30  803  struct i915_gem_context *ctx,
e0695db7298ec2 drivers/gpu/drm/i915/i915_gem_context.c Chris Wilson 
2019-03-22  804  struct drm_i915_gem_context_param *args)
e0695db7298ec2 drivers/gpu/drm/i915/i915_gem_context.c Chris Wilson 
2019-03-22  805  {
e568ac3874be7d drivers/gpu/drm/i915/gem/i915_gem_context.c Chris Wilson 
2019-06-11  806 struct i915_address_space *vm;
e0695db7298ec2 drivers/gpu/drm/i915/i915_gem_context.c Chris Wilson 
2019-03-22  807 int ret;
e0695db7298ec2 drivers/gpu/drm/i915/i915_gem_context.c Chris Wilson 
2019-03-22  808  
a4e7ccdac38ec8 drivers/gpu/drm/i915/gem/i915_gem_context.c Chris Wilson 
2019-10-04  809 if (!rcu_access_pointer(ctx->vm))
e0695db7298ec2 drivers/gpu/drm/i915/i915_gem_context.c Chris Wilson 
2019-03-22  810 return -ENODEV;
e0695db7298ec2 drivers/gpu/drm/i915/i915_gem_context.c Chris Wilson 
2019-03-22  811  
a4e7ccdac38ec8 drivers/gpu/drm/i915/gem/i915_gem_context.c Chris Wilson 
2019-10-04  812 rcu_read_lock();
e568ac3874be7d drivers/gpu/drm/i915/gem/i915_gem_context.c Chris Wilson 
2019-06-11 @813 vm = i915_vm_get(ctx->vm);
a4e7ccdac38ec8 drivers/gpu/drm/i915/gem/i915_gem_context.c Chris Wilson 
2019-10-04  814 rcu_read_unlock();
e0695db7298ec2 drivers/gpu/drm/i915/i915_gem_context.c Chris Wilson 
2019-03-22  815  
e0695db7298ec2 drivers/gpu/drm/i915/i915_gem_context.c Chris Wilson 
2019-03-22  816 

Re: liboutput: thoughts about shared library on top of DRM/KMS

2019-10-05 Thread Keith Packard
Robert Foss  writes:

> Hey Keith,
>
> Thanks for setting this up, and picking a descriptive project name :)
>
> How is liboutput going to relate to the libliftoff[1] project?

We heard about libliftoff at XDC. It sounds like it does the plane
selection stuff, including searching for configurations that support
'most' of what the user asked for while passing back a list of 'uh,
these didn't fit'. That sounds like a good foundation for liboutput.

I think we want a bit more, including things like render-based
operations for compositing fallback, format conversion, transforms,
PRIME support etc. I think we might also want to be able to create
pseudo outputs (to memory only) for things like virtualization and
testing.

Mostly, I heard lots of ideas at XDC about more we might do to share
code between DRM/KMS users, especially compositors.

I'd love to keep the conversation going and see if we can generate a
solid set of shared goals, then put together some kind of architecture
and bits of code to see what might work.

-- 
-keith


signature.asc
Description: PGP signature
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 205093] [amdgpu] resume of IP block failed -110

2019-10-05 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=205093

--- Comment #1 from Marcin P (kat.zygf...@gmail.com) ---
Created attachment 285361
  --> https://bugzilla.kernel.org/attachment.cgi?id=285361=edit
Full dmesg on 5.2.8

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 205093] New: [amdgpu] resume of IP block failed -110

2019-10-05 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=205093

Bug ID: 205093
   Summary: [amdgpu] resume of IP block  failed -110
   Product: Drivers
   Version: 2.5
Kernel Version: 5.2.13
  Hardware: x86-64
OS: Linux
  Tree: Mainline
Status: NEW
  Severity: normal
  Priority: P1
 Component: Video(DRI - non Intel)
  Assignee: drivers_video-...@kernel-bugs.osdl.org
  Reporter: kat.zygf...@gmail.com
Regression: No

Created attachment 285359
  --> https://bugzilla.kernel.org/attachment.cgi?id=285359=edit
Full dmesg on 5.2.13

Once in a while immediately after resuming from suspend the screen freezes for
a moment and then I lose all video signals. System is able to be rebooted with
sysrq.

Hardware:

* Radeon RX 470
* Ryzen 2700
* 64GB ECC RAM

No significant load is put on the GPU, because the system is only used for
work, browsing and playing video.

You can also see bug 202891 (__nvme_disable_io_queues triggers WARNING in
kernel/irq/chip.c:210) in both logs, but that one happens far more often
without this bug comanifesting.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111481] AMD Navi GPU frequent freezes on both Manjaro/Ubuntu with kernel 5.3 and mesa 19.2 -git/llvm9

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111481

--- Comment #75 from Marko Popovic  ---
(In reply to ans.belfodil from comment #73)
> According to this
> https://www.phoronix.com/scan.php?page=news_item=AMDGPU-Bulk-Moves-Lands
> and my tests (Linux 5.3.1 and packages from
> https://pkgbuild.com/~lcarlier/mesa-git/x86_64/), the hangs are gone on
> Rocket League.

I was able to reproduce the RL hang by running Rocket League 2 times, so it's
definitely not gone, also I don't see how those patches would affect the launch
of Rocket League anyways, it uses OpenGL and induces SDMA type hang, and those
patches are for RADV vulkan driver and ngg (which are different type of hangs
that show themselves as ring_gfx hangs)

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111229] Unable to unbind GPU from amdgpu

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111229

--- Comment #10 from Eugene Shatsky  ---
I confirm that on on 5.3-rc7 I could unbind/bind RX470 multiple times and shut
the system down cleanly afterwards. Got some warning with a trace in dmesg, now
going to check if this does affect system stability and whether my goal of
switching the Radeon-powered seat between Linux desktop (without persistent
session, of course) and virtual machine is now reachable.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Re: liboutput: thoughts about shared library on top of DRM/KMS

2019-10-05 Thread Robert Foss

Hey Keith,

Thanks for setting this up, and picking a descriptive project name :)

How is liboutput going to relate to the libliftoff[1] project?


[1] https://github.com/emersion/libliftoff


Rob.

On 05.10.19 18:09, Keith Packard wrote:


During XDC this year, we heard a few presentations and had a lot of
hallway talk about sharing code for driving DRM/KMS for display.

I think the general consensus is that there is enough shared
functionality between all of the various DRM/KMS clients that we can
start thinking about building a library that deals with the complexity
of DRM/KMS and can help take full advantage of the hardware.

I've started writing up some ideas, mostly just goals, but also some
random thoughts about how this might work. This is all in the
'liboutput' project on freedesktop.org:

 https://gitlab.freedesktop.org/xorg/liboutput

I picked a spot in the 'xorg' namespace, not to confine this to X
systems, but to reflect the goal that this be a library shared across
all x.org-related projects, including Wayland compositors, EGL and
Vulkan direct applications and the X server.

All there is at this point is a README.md file; I'd like to generate
some consensus on a direction for the project before we start writing
any actual design documents.

Please submit MRs to that repo, or respond to this email as you prefer.


___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel


___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Re: [PATCH] drm/amdkfd: add missing void argument to function kgd2kfd_init

2019-10-05 Thread Colin Ian King
On 05/10/2019 19:10, Randy Dunlap wrote:
> On 10/5/19 10:58 AM, Colin King wrote:
>> From: Colin Ian King 
>>
>> Function kgd2kfd_init is missing a void argument, add it
>> to clean up the non-ANSI function declaration.
>>
>> Signed-off-by: Colin Ian King 
> 
> Acked-by: Randy Dunlap 
> 
> sparse reports 2 such warnings in amdgpu:
> 
> ../drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_module.c:85:18: warning: non-ANSI 
> function declaration of function 'kgd2kfd_init'
> ../drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.c:168:60: warning: 
> non-ANSI function declaration of function 
> 'amdgpu_amdkfd_gfx_10_0_get_functions'

Looking at linux-next, the amdgpu_amdkfd_gfx_10_0_get_functions() was
removed in commit:

commit e392c887df979112af94cfec08dd87f4dd55d085
Author: Yong Zhao 
Date:   Fri Sep 27 22:03:42 2019 -0400

drm/amdkfd: Use array to probe kfd2kgd_calls

..so I didn't fix that one up

Coln
> 
> Thanks.
> 
>> ---
>>  drivers/gpu/drm/amd/amdkfd/kfd_module.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_module.c 
>> b/drivers/gpu/drm/amd/amdkfd/kfd_module.c
>> index 986ff52d5750..f4b7f7e6c40e 100644
>> --- a/drivers/gpu/drm/amd/amdkfd/kfd_module.c
>> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_module.c
>> @@ -82,7 +82,7 @@ static void kfd_exit(void)
>>  kfd_chardev_exit();
>>  }
>>  
>> -int kgd2kfd_init()
>> +int kgd2kfd_init(void)
>>  {
>>  return kfd_init();
>>  }
>>
> 
> 

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Re: [PATCH] backlight: lm3630a: fix module aliases

2019-10-05 Thread Andreas Kemnade
Hi,

hmm, this bugfix has not arrived in -next or any -fixes branch I am
aware of yet. I hope it is not forgotten...
so a friendly ping.

Regards,
Andreas

On Wed, 11 Sep 2019 11:51:48 +0100
Daniel Thompson  wrote:

> On Tue, Sep 10, 2019 at 05:23:59PM +0200, Andreas Kemnade wrote:
> > Devicetree aliases are missing, so that module autoloading
> > does not work properly.
> > 
> > Signed-off-by: Andreas Kemnade   
> 
> Reviewed-by: Daniel Thompson 
> 
> 
> > ---
> >  drivers/video/backlight/lm3630a_bl.c | 4 +++-
> >  1 file changed, 3 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/video/backlight/lm3630a_bl.c 
> > b/drivers/video/backlight/lm3630a_bl.c
> > index 3b45a1733198..9d67c07db2f2 100644
> > --- a/drivers/video/backlight/lm3630a_bl.c
> > +++ b/drivers/video/backlight/lm3630a_bl.c
> > @@ -617,12 +617,14 @@ static const struct i2c_device_id lm3630a_id[] = {
> > {}
> >  };
> >  
> > +MODULE_DEVICE_TABLE(i2c, lm3630a_id);
> > +
> >  static const struct of_device_id lm3630a_match_table[] = {
> > { .compatible = "ti,lm3630a", },
> > { },
> >  };
> >  
> > -MODULE_DEVICE_TABLE(i2c, lm3630a_id);
> > +MODULE_DEVICE_TABLE(of, lm3630a_match_table);
> >  
> >  static struct i2c_driver lm3630a_i2c_driver = {
> > .driver = {
> > -- 
> > 2.11.0
> >   
> 



[PATCH] drm/amdkfd: add missing void argument to function kgd2kfd_init

2019-10-05 Thread Colin King
From: Colin Ian King 

Function kgd2kfd_init is missing a void argument, add it
to clean up the non-ANSI function declaration.

Signed-off-by: Colin Ian King 
---
 drivers/gpu/drm/amd/amdkfd/kfd_module.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_module.c 
b/drivers/gpu/drm/amd/amdkfd/kfd_module.c
index 986ff52d5750..f4b7f7e6c40e 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_module.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_module.c
@@ -82,7 +82,7 @@ static void kfd_exit(void)
kfd_chardev_exit();
 }
 
-int kgd2kfd_init()
+int kgd2kfd_init(void)
 {
return kfd_init();
 }
-- 
2.20.1

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111481] AMD Navi GPU frequent freezes on both Manjaro/Ubuntu with kernel 5.3 and mesa 19.2 -git/llvm9

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111481

--- Comment #74 from ans.belfo...@gmail.com ---
Woops copied the wrong link from Phoronix:
https://www.phoronix.com/scan.php?page=news_item=RADV-Navi-Random-Hangs-19.3

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111481] AMD Navi GPU frequent freezes on both Manjaro/Ubuntu with kernel 5.3 and mesa 19.2 -git/llvm9

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111481

--- Comment #73 from ans.belfo...@gmail.com ---
According to this
https://www.phoronix.com/scan.php?page=news_item=AMDGPU-Bulk-Moves-Lands and
my tests (Linux 5.3.1 and packages from
https://pkgbuild.com/~lcarlier/mesa-git/x86_64/), the hangs are gone on Rocket
League.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH 4/5] drm/amd/display: Remove set but not used variable 'pixel_width'

2019-10-05 Thread zhengbin
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c: In function 
dpp2_get_optimal_number_of_taps:
drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c:359:11: warning: variable 
pixel_width set but not used [-Wunused-but-set-variable]

It is not used since commit f7de96ee8b5f ("drm/amd/display:
Add DCN2 DPP")

Reported-by: Hulk Robot 
Signed-off-by: zhengbin 
---
 drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c | 7 ---
 1 file changed, 7 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c 
b/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c
index 2f5aade..ae85343 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c
+++ b/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c
@@ -376,13 +376,6 @@ bool dpp2_get_optimal_number_of_taps(
struct scaler_data *scl_data,
const struct scaling_taps *in_taps)
 {
-   uint32_t pixel_width;
-
-   if (scl_data->viewport.width > scl_data->recout.width)
-   pixel_width = scl_data->recout.width;
-   else
-   pixel_width = scl_data->viewport.width;
-
/* Some ASICs does not support  FP16 scaling, so we reject modes 
require this*/
if (scl_data->viewport.width  != scl_data->h_active &&
scl_data->viewport.height != scl_data->v_active &&
--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH 0/6] drm/msm/dpu: Remove some set but not used variables

2019-10-05 Thread zhengbin
zhengbin (6):
  drm/msm/dpu: Remove set but not used variable 'priv' in dpu_kms.c
  drm/msm/dpu: Remove set but not used variable 'priv' in
dpu_encoder_phys_vid.c
  drm/msm/dpu: Remove set but not used variable 'priv' in dpu_core_irq.c
  drm/msm/dpu: Remove set but not used variables 'dpu_cstate','priv'
  drm/msm/dpu: Remove set but not used variables 'cmd_enc','priv'
  drm/msm/dpu: Remove set but not used variables 'mode','dpu_kms','priv'

 drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c |  4 
 drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c|  4 
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c  |  7 ---
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c | 11 ---
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c |  2 --
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c  |  4 
 6 files changed, 32 deletions(-)

--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH 3/5] drm/amd/display: Remove set but not used variables 'h_ratio_chroma', 'v_ratio_chroma'

2019-10-05 Thread zhengbin
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c: In function 
dwb_program_horz_scalar:
drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c:725:11: warning: variable 
h_ratio_chroma set but not used [-Wunused-but-set-variable]
drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c: In function 
dwb_program_vert_scalar:
drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c:806:11: warning: variable 
v_ratio_chroma set but not used [-Wunused-but-set-variable]

They are not used since commit 345429a67c48 ("drm/amd/display:
Add DCN2 DWB")

Reported-by: Hulk Robot 
Signed-off-by: zhengbin 
---
 drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c | 4 
 1 file changed, 4 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c 
b/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c
index cd8bc92..880954a 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c
+++ b/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c
@@ -722,7 +722,6 @@ bool dwb_program_horz_scalar(struct dcn20_dwbc *dwbc20,
struct scaling_taps num_taps)
 {
uint32_t h_ratio_luma = 1;
-   uint32_t h_ratio_chroma = 1;
uint32_t h_taps_luma = num_taps.h_taps;
uint32_t h_taps_chroma = num_taps.h_taps_c;
int32_t h_init_phase_luma = 0;
@@ -747,7 +746,6 @@ bool dwb_program_horz_scalar(struct dcn20_dwbc *dwbc20,
h_ratio_luma = -1;
else
h_ratio_luma = dc_fixpt_u3d19(tmp_h_ratio_luma) << 5;
-   h_ratio_chroma = h_ratio_luma * 2;

/*Program ratio*/
REG_UPDATE(WBSCL_HORZ_FILTER_SCALE_RATIO, WBSCL_H_SCALE_RATIO, 
h_ratio_luma);
@@ -803,7 +801,6 @@ bool dwb_program_vert_scalar(struct dcn20_dwbc *dwbc20,
enum dwb_subsample_position subsample_position)
 {
uint32_t v_ratio_luma = 1;
-   uint32_t v_ratio_chroma = 1;
uint32_t v_taps_luma = num_taps.v_taps;
uint32_t v_taps_chroma = num_taps.v_taps_c;
int32_t v_init_phase_luma = 0;
@@ -827,7 +824,6 @@ bool dwb_program_vert_scalar(struct dcn20_dwbc *dwbc20,
v_ratio_luma = -1;
else
v_ratio_luma = dc_fixpt_u3d19(tmp_v_ratio_luma) << 5;
-   v_ratio_chroma = v_ratio_luma * 2;

/*Program ratio*/
REG_UPDATE(WBSCL_VERT_FILTER_SCALE_RATIO, WBSCL_V_SCALE_RATIO, 
v_ratio_luma);
--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH] drm/amd/display: Make some functions static

2019-10-05 Thread zhengbin
Fix sparse warnings:

drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_hdcp.c:32:6: warning: 
symbol 'lp_write_i2c' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_hdcp.c:42:6: warning: 
symbol 'lp_read_i2c' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_hdcp.c:52:6: warning: 
symbol 'lp_write_dpcd' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_hdcp.c:59:6: warning: 
symbol 'lp_read_dpcd' was not declared. Should it be static?

Reported-by: Hulk Robot 
Signed-off-by: zhengbin 
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c | 12 
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c 
b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c
index 2443c23..77181dd 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c
@@ -29,7 +29,8 @@
 #include "dm_helpers.h"
 #include 

-bool lp_write_i2c(void *handle, uint32_t address, const uint8_t *data, 
uint32_t size)
+static bool
+lp_write_i2c(void *handle, uint32_t address, const uint8_t *data, uint32_t 
size)
 {

struct dc_link *link = handle;
@@ -39,7 +40,8 @@ bool lp_write_i2c(void *handle, uint32_t address, const 
uint8_t *data, uint32_t
return dm_helpers_submit_i2c(link->ctx, link, );
 }

-bool lp_read_i2c(void *handle, uint32_t address, uint8_t offset, uint8_t 
*data, uint32_t size)
+static bool
+lp_read_i2c(void *handle, uint32_t address, uint8_t offset, uint8_t *data, 
uint32_t size)
 {
struct dc_link *link = handle;

@@ -49,14 +51,16 @@ bool lp_read_i2c(void *handle, uint32_t address, uint8_t 
offset, uint8_t *data,
return dm_helpers_submit_i2c(link->ctx, link, );
 }

-bool lp_write_dpcd(void *handle, uint32_t address, const uint8_t *data, 
uint32_t size)
+static bool
+lp_write_dpcd(void *handle, uint32_t address, const uint8_t *data, uint32_t 
size)
 {
struct dc_link *link = handle;

return dm_helpers_dp_write_dpcd(link->ctx, link, address, data, size);
 }

-bool lp_read_dpcd(void *handle, uint32_t address, uint8_t *data, uint32_t size)
+static bool
+lp_read_dpcd(void *handle, uint32_t address, uint8_t *data, uint32_t size)
 {
struct dc_link *link = handle;

--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH] drm/amd/display: Fix typo in some comments

2019-10-05 Thread Christophe JAILLET
p and g are switched in 'amdpgu_dm'

Signed-off-by: Christophe JAILLET 
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index 92932d521d7f..b9c2e1a930ab 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -1043,7 +1043,7 @@ static void s3_handle_mst(struct drm_device *dev, bool 
suspend)
 
 /**
  * dm_hw_init() - Initialize DC device
- * @handle: The base driver device containing the amdpgu_dm device.
+ * @handle: The base driver device containing the amdgpu_dm device.
  *
  * Initialize the  amdgpu_display_manager device. This involves calling
  * the initializers of each DM component, then populating the struct with them.
@@ -1073,7 +1073,7 @@ static int dm_hw_init(void *handle)
 
 /**
  * dm_hw_fini() - Teardown DC device
- * @handle: The base driver device containing the amdpgu_dm device.
+ * @handle: The base driver device containing the amdgpu_dm device.
  *
  * Teardown components within  amdgpu_display_manager that require
  * cleanup. This involves cleaning up the DRM device, DC, and any modules that
-- 
2.20.1

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH 3/6] drm/msm/dpu: Remove set but not used variable 'priv' in dpu_core_irq.c

2019-10-05 Thread zhengbin
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c: In function 
dpu_core_irq_preinstall:
drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c:354:26: warning: variable priv set 
but not used [-Wunused-but-set-variable]
drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c: In function 
dpu_core_irq_uninstall:
drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c:390:26: warning: variable priv set 
but not used [-Wunused-but-set-variable]

It is not used since commit 25fdd5933e4c ("drm/msm:
Add SDM845 DPU support")

Reported-by: Hulk Robot 
Signed-off-by: zhengbin 
---
 drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c | 4 
 1 file changed, 4 deletions(-)

diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c 
b/drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c
index cdbea38..655e129 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c
@@ -343,7 +343,6 @@ void dpu_debugfs_core_irq_init(struct dpu_kms *dpu_kms,

 void dpu_core_irq_preinstall(struct dpu_kms *dpu_kms)
 {
-   struct msm_drm_private *priv;
int i;

if (!dpu_kms->dev) {
@@ -353,7 +352,6 @@ void dpu_core_irq_preinstall(struct dpu_kms *dpu_kms)
DPU_ERROR("invalid device private\n");
return;
}
-   priv = dpu_kms->dev->dev_private;

pm_runtime_get_sync(_kms->pdev->dev);
dpu_clear_all_irqs(dpu_kms);
@@ -379,7 +377,6 @@ void dpu_core_irq_preinstall(struct dpu_kms *dpu_kms)

 void dpu_core_irq_uninstall(struct dpu_kms *dpu_kms)
 {
-   struct msm_drm_private *priv;
int i;

if (!dpu_kms->dev) {
@@ -389,7 +386,6 @@ void dpu_core_irq_uninstall(struct dpu_kms *dpu_kms)
DPU_ERROR("invalid device private\n");
return;
}
-   priv = dpu_kms->dev->dev_private;

pm_runtime_get_sync(_kms->pdev->dev);
for (i = 0; i < dpu_kms->irq_obj.total_irqs; i++)
--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH 1/6] drm/msm/dpu: Remove set but not used variable 'priv' in dpu_kms.c

2019-10-05 Thread zhengbin
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c: In function _dpu_danger_signal_status:
drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c:80:26: warning: variable priv set but 
not used [-Wunused-but-set-variable]
drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c: In function dpu_kms_prepare_commit:
drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c:271:26: warning: variable priv set but 
not used [-Wunused-but-set-variable]

It is not used since commit 25fdd5933e4c ("drm/msm:
Add SDM845 DPU support")

Reported-by: Hulk Robot 
Signed-off-by: zhengbin 
---
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 4 
 1 file changed, 4 deletions(-)

diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c 
b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
index 58b0485..4711ac5 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
@@ -68,7 +68,6 @@ static int _dpu_danger_signal_status(struct seq_file *s,
bool danger_status)
 {
struct dpu_kms *kms = (struct dpu_kms *)s->private;
-   struct msm_drm_private *priv;
struct dpu_danger_safe_status status;
int i;

@@ -77,7 +76,6 @@ static int _dpu_danger_signal_status(struct seq_file *s,
return 0;
}

-   priv = kms->dev->dev_private;
memset(, 0, sizeof(struct dpu_danger_safe_status));

pm_runtime_get_sync(>pdev->dev);
@@ -280,7 +278,6 @@ static void dpu_kms_prepare_commit(struct msm_kms *kms,
struct drm_atomic_state *state)
 {
struct dpu_kms *dpu_kms;
-   struct msm_drm_private *priv;
struct drm_device *dev;
struct drm_crtc *crtc;
struct drm_crtc_state *crtc_state;
@@ -294,7 +291,6 @@ static void dpu_kms_prepare_commit(struct msm_kms *kms,

if (!dev || !dev->dev_private)
return;
-   priv = dev->dev_private;

/* Call prepare_commit for all affected encoders */
for_each_new_crtc_in_state(state, crtc, crtc_state, i) {
--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH 4/6] drm/msm/dpu: Remove set but not used variables 'dpu_cstate', 'priv'

2019-10-05 Thread zhengbin
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c: In function 
dpu_core_perf_crtc_release_bw:
drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c:248:25: warning: variable 
dpu_cstate set but not used [-Wunused-but-set-variable]
drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c: In function 
dpu_core_perf_crtc_update:
drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c:337:26: warning: variable priv 
set but not used [-Wunused-but-set-variable]

They are not used since commit 25fdd5933e4c ("drm/msm:
Add SDM845 DPU support")

Reported-by: Hulk Robot 
Signed-off-by: zhengbin 
---
 drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c | 4 
 1 file changed, 4 deletions(-)

diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c 
b/drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c
index 09a49b5..65177c8 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c
@@ -215,7 +215,6 @@ static int _dpu_core_perf_crtc_update_bus(struct dpu_kms 
*kms,
 void dpu_core_perf_crtc_release_bw(struct drm_crtc *crtc)
 {
struct dpu_crtc *dpu_crtc;
-   struct dpu_crtc_state *dpu_cstate;
struct dpu_kms *kms;

if (!crtc) {
@@ -230,7 +229,6 @@ void dpu_core_perf_crtc_release_bw(struct drm_crtc *crtc)
}

dpu_crtc = to_dpu_crtc(crtc);
-   dpu_cstate = to_dpu_crtc_state(crtc->state);

if (atomic_dec_return(>bandwidth_ref) > 0)
return;
@@ -287,7 +285,6 @@ int dpu_core_perf_crtc_update(struct drm_crtc *crtc,
u64 clk_rate = 0;
struct dpu_crtc *dpu_crtc;
struct dpu_crtc_state *dpu_cstate;
-   struct msm_drm_private *priv;
struct dpu_kms *kms;
int ret;

@@ -301,7 +298,6 @@ int dpu_core_perf_crtc_update(struct drm_crtc *crtc,
DPU_ERROR("invalid kms\n");
return -EINVAL;
}
-   priv = kms->dev->dev_private;

dpu_crtc = to_dpu_crtc(crtc);
dpu_cstate = to_dpu_crtc_state(crtc->state);
--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH 6/6] drm/msm/dpu: Remove set but not used variables 'mode', 'dpu_kms', 'priv'

2019-10-05 Thread zhengbin
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c: In function 
dpu_encoder_virt_disable:
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:1199:27: warning: variable mode set 
but not used [-Wunused-but-set-variable]
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c: In function 
_dpu_encoder_init_debugfs:
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:1963:18: warning: variable dpu_kms 
set but not used [-Wunused-but-set-variable]
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c: In function 
dpu_encoder_frame_done_timeout:
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:2183:26: warning: variable priv set 
but not used [-Wunused-but-set-variable]

They are not used since commit 25fdd5933e4c ("drm/msm:
Add SDM845 DPU support")

Reported-by: Hulk Robot 
Signed-off-by: zhengbin 
---
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 7 ---
 1 file changed, 7 deletions(-)

diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c 
b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
index d82ea99..e6fe208 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
@@ -1184,7 +1184,6 @@ static void dpu_encoder_virt_disable(struct drm_encoder 
*drm_enc)
struct dpu_encoder_virt *dpu_enc = NULL;
struct msm_drm_private *priv;
struct dpu_kms *dpu_kms;
-   struct drm_display_mode *mode;
int i = 0;

if (!drm_enc) {
@@ -1204,8 +1203,6 @@ static void dpu_encoder_virt_disable(struct drm_encoder 
*drm_enc)
mutex_lock(_enc->enc_lock);
dpu_enc->enabled = false;

-   mode = _enc->crtc->state->adjusted_mode;
-
priv = drm_enc->dev->dev_private;
dpu_kms = to_dpu_kms(priv->kms);

@@ -1915,7 +1912,6 @@ static int _dpu_encoder_init_debugfs(struct drm_encoder 
*drm_enc)
 {
struct dpu_encoder_virt *dpu_enc = to_dpu_encoder_virt(drm_enc);
struct msm_drm_private *priv;
-   struct dpu_kms *dpu_kms;
int i;

static const struct file_operations debugfs_status_fops = {
@@ -1933,7 +1929,6 @@ static int _dpu_encoder_init_debugfs(struct drm_encoder 
*drm_enc)
}

priv = drm_enc->dev->dev_private;
-   dpu_kms = to_dpu_kms(priv->kms);

snprintf(name, DPU_NAME_SIZE, "encoder%u", drm_enc->base.id);

@@ -2133,14 +2128,12 @@ static void dpu_encoder_frame_done_timeout(struct 
timer_list *t)
struct dpu_encoder_virt *dpu_enc = from_timer(dpu_enc, t,
frame_done_timer);
struct drm_encoder *drm_enc = _enc->base;
-   struct msm_drm_private *priv;
u32 event;

if (!drm_enc->dev || !drm_enc->dev->dev_private) {
DPU_ERROR("invalid parameters\n");
return;
}
-   priv = drm_enc->dev->dev_private;

if (!dpu_enc->frame_busy_mask[0] || !dpu_enc->crtc_frame_event_cb) {
DRM_DEBUG_KMS("id:%u invalid timeout frame_busy_mask=%lu\n",
--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH v19 0/2] PS8640 MIPI-to-eDP bridge

2019-10-05 Thread Ulrich Hecht
Hi!

This driver seems to have fallen by the wayside because, while otherwise
fine, it has a firmware update feature that requires a blob that is not in
the linux-firmware repo.[1]

Whatever the cause for that may be, the update code is entirely optional
(my chip works fine with whatever firmware is currently installed), so I
have removed it in order to get this merged after all. I have also
followed various trivial API changes that have piled up since 2016; see
the individual patches for details.

I'm using this driver on an Acer Chromebook R13 ("Elm"); see
https://github.com/uli/kernel/tree/elm-working-5.4.

CU
Uli

[1] https://patchwork.kernel.org/patch/9427543/

Jitao Shi (2):
  Documentation: bridge: Add documentation for ps8640 DT properties
  drm/bridge: Add I2C based driver for ps8640 bridge

 .../devicetree/bindings/display/bridge/ps8640.txt  |  44 ++
 drivers/gpu/drm/bridge/Kconfig |  12 +
 drivers/gpu/drm/bridge/Makefile|   1 +
 drivers/gpu/drm/bridge/parade-ps8640.c | 672 +
 4 files changed, 729 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/bridge/ps8640.txt
 create mode 100644 drivers/gpu/drm/bridge/parade-ps8640.c

-- 
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH v19 2/2] drm/bridge: Add I2C based driver for ps8640 bridge

2019-10-05 Thread Ulrich Hecht
From: Jitao Shi 

This patch adds drm_bridge driver for parade DSI to eDP bridge chip.

Signed-off-by: Jitao Shi 
Reviewed-by: Daniel Kurtz 
Reviewed-by: Enric Balletbo i Serra 
[uli: followed API changes, removed FW update feature]
Signed-off-by: Ulrich Hecht 
---

Changes since v18:
 - followed DRM API changes
 - use DEVICE_ATTR_RO()
 - remove firmware update code
 - add SPDX identifier

Changes since v17:
 - remove some unused head files.
 - add macros for ps8640 pages.
 - remove ddc_i2c client
 - add mipi_dsi_device_register_full
 - remove the manufacturer from the name and i2c_device_id
 
Changes since v16:
 - Disable ps8640 DSI MCS Function.
 - Rename gpios name more clearly.
 - Tune the ps8640 power on sequence.

Changes since v15:
 - Drop drm_connector_(un)register calls from parade ps8640.
   The main DRM driver mtk_drm_drv now calls
   drm_connector_register_all() after drm_dev_register() in the
   mtk_drm_bind() function. That function should iterate over all
   connectors and call drm_connector_register() for each of them.
   So, remove drm_connector_(un)register calls from parade ps8640.

Changes since v14:
 - update copyright info.
 - change bridge_to_ps8640 and connector_to_ps8640 to inline function.
 - fix some coding style.
 - use sizeof as array counter.
 - use drm_get_edid when read edid.
 - add mutex when firmware updating. 

Changes since v13:
 - add const on data, ps8640_write_bytes(struct i2c_client *client, const u8 
*data, u16 data_len)
 - fix PAGE2_SW_REST tyro.
 - move the buf[3] init to entrance of the function.

Changes since v12:
 - fix hw_chip_id build warning

Changes since v11:
 - Remove depends on I2C, add DRM depends
 - Reuse ps8640_write_bytes() in ps8640_write_byte()
 - Use timer check for polling like the routines in 
 - Fix no drm_connector_unregister/drm_connector_cleanup when 
ps8640_bridge_attach fail
 - Check the ps8640 hardware id in ps8640_validate_firmware
 - Remove fw_version check
 - Move ps8640_validate_firmware before ps8640_enter_bl
 - Add ddc_i2c unregister when probe fail and ps8640_remove


 drivers/gpu/drm/bridge/Kconfig |  12 +
 drivers/gpu/drm/bridge/Makefile|   1 +
 drivers/gpu/drm/bridge/parade-ps8640.c | 672 +
 3 files changed, 685 insertions(+)
 create mode 100644 drivers/gpu/drm/bridge/parade-ps8640.c

diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig
index 1cc9f50..61c6415 100644
--- a/drivers/gpu/drm/bridge/Kconfig
+++ b/drivers/gpu/drm/bridge/Kconfig
@@ -82,6 +82,18 @@ config DRM_PARADE_PS8622
---help---
  Parade eDP-LVDS bridge chip driver.
 
+config DRM_PARADE_PS8640
+   tristate "Parade PS8640 MIPI DSI to eDP Converter"
+   depends on DRM
+   depends on OF
+   select DRM_KMS_HELPER
+   select DRM_MIPI_DSI
+   select DRM_PANEL
+   help
+ Choose this option if you have PS8640 for display
+ The PS8640 is a high-performance and low-power
+ MIPI DSI to eDP converter
+
 config DRM_SIL_SII8620
tristate "Silicon Image SII8620 HDMI/MHL bridge"
depends on OF
diff --git a/drivers/gpu/drm/bridge/Makefile b/drivers/gpu/drm/bridge/Makefile
index 4934fcf..14660ab 100644
--- a/drivers/gpu/drm/bridge/Makefile
+++ b/drivers/gpu/drm/bridge/Makefile
@@ -6,6 +6,7 @@ obj-$(CONFIG_DRM_LVDS_ENCODER) += lvds-encoder.o
 obj-$(CONFIG_DRM_MEGACHIPS_STDP_GE_B850V3_FW) += 
megachips-stdp-ge-b850v3-fw.o
 obj-$(CONFIG_DRM_NXP_PTN3460) += nxp-ptn3460.o
 obj-$(CONFIG_DRM_PARADE_PS8622) += parade-ps8622.o
+obj-$(CONFIG_DRM_PARADE_PS8640) += parade-ps8640.o
 obj-$(CONFIG_DRM_SIL_SII8620) += sil-sii8620.o
 obj-$(CONFIG_DRM_SII902X) += sii902x.o
 obj-$(CONFIG_DRM_SII9234) += sii9234.o
diff --git a/drivers/gpu/drm/bridge/parade-ps8640.c 
b/drivers/gpu/drm/bridge/parade-ps8640.c
new file mode 100644
index 000..d645dc8
--- /dev/null
+++ b/drivers/gpu/drm/bridge/parade-ps8640.c
@@ -0,0 +1,672 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
+ * Copyright (c) 2016 MediaTek Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ */
+
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+
+#define PAGE1_VSTART   0x6b
+#define PAGE2_SPI_CFG3 0x82
+#define I2C_TO_SPI_RESET   0x20
+#define PAGE2_ROMADD_BYTE1 0x8e
+#define PAGE2_ROMADD_BYTE2 0x8f
+#define PAGE2_SWSPI_WDATA  0x90
+#define PAGE2_SWSPI_RDATA  0x91
+#define PAGE2_SWSPI_LEN0x92
+#define 

[PATCH 2/6] drm/msm/dpu: Remove set but not used variable 'priv' in dpu_encoder_phys_vid.c

2019-10-05 Thread zhengbin
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c: In function 
dpu_encoder_phys_vid_disable:
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c:566:26: warning: variable 
priv set but not used [-Wunused-but-set-variable]

It is not used since commit 25fdd5933e4c ("drm/msm:
Add SDM845 DPU support")

Reported-by: Hulk Robot 
Signed-off-by: zhengbin 
---
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c 
b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c
index b9c84fb..c7a3f4b 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c
@@ -566,7 +566,6 @@ static void dpu_encoder_phys_vid_prepare_for_kickoff(

 static void dpu_encoder_phys_vid_disable(struct dpu_encoder_phys *phys_enc)
 {
-   struct msm_drm_private *priv;
unsigned long lock_flags;
int ret;

@@ -575,7 +574,6 @@ static void dpu_encoder_phys_vid_disable(struct 
dpu_encoder_phys *phys_enc)
DPU_ERROR("invalid encoder/device\n");
return;
}
-   priv = phys_enc->parent->dev->dev_private;

if (!phys_enc->hw_intf || !phys_enc->hw_ctl) {
DPU_ERROR("invalid hw_intf %d hw_ctl %d\n",
--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH 1/5] drm/amd/display: Make function wait_for_alt_mode static

2019-10-05 Thread zhengbin
Fix sparse warnings:

drivers/gpu/drm/amd/display/dc/core/dc_link.c:687:6: warning: symbol 
'wait_for_alt_mode' was not declared. Should it be static?

Reported-by: Hulk Robot 
Signed-off-by: zhengbin 
---
 drivers/gpu/drm/amd/display/dc/core/dc_link.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link.c 
b/drivers/gpu/drm/amd/display/dc/core/dc_link.c
index 33d4cc4..152c564 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_link.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_link.c
@@ -685,7 +685,7 @@ static bool is_same_edid(struct dc_edid *old_edid, struct 
dc_edid *new_edid)
return (memcmp(old_edid->raw_edid, new_edid->raw_edid, 
new_edid->length) == 0);
 }

-bool wait_for_alt_mode(struct dc_link *link)
+static bool wait_for_alt_mode(struct dc_link *link)
 {

/**
--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH v19 1/2] Documentation: bridge: Add documentation for ps8640 DT properties

2019-10-05 Thread Ulrich Hecht
From: Jitao Shi 

Add documentation for DT properties supported by
ps8640 DSI-eDP converter.

Signed-off-by: Jitao Shi 
Acked-by: Rob Herring 
Reviewed-by: Philipp Zabel 
Signed-off-by: Ulrich Hecht 
---

Changes since v18:
 - No change.

Changes since v17:
 - No change.

Changes since v16:
 - No change.

Changes since v15:
 - No change.

Changes since v14:
 - change mode-sel-gpios as optional.

 .../devicetree/bindings/display/bridge/ps8640.txt  | 44 ++
 1 file changed, 44 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/bridge/ps8640.txt

diff --git a/Documentation/devicetree/bindings/display/bridge/ps8640.txt 
b/Documentation/devicetree/bindings/display/bridge/ps8640.txt
new file mode 100644
index 000..7b13f92
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/bridge/ps8640.txt
@@ -0,0 +1,44 @@
+ps8640-bridge bindings
+
+Required properties:
+   - compatible: "parade,ps8640"
+   - reg: first page address of the bridge.
+   - sleep-gpios: OF device-tree gpio specification for PD pin.
+   - reset-gpios: OF device-tree gpio specification for reset pin.
+   - vdd12-supply: OF device-tree regulator specification for 1.2V power.
+   - vdd33-supply: OF device-tree regulator specification for 3.3V power.
+   - ports: The device node can contain video interface port nodes per
+the video-interfaces bind[1]. For port@0,set the reg = <0> as
+ps8640 dsi in and port@1,set the reg = <1> as ps8640 eDP out.
+
+Optional properties:
+   - mode-sel-gpios: OF device-tree gpio specification for mode-sel pin.
+[1]: Documentation/devicetree/bindings/media/video-interfaces.txt
+
+Example:
+   edp-bridge@18 {
+   compatible = "parade,ps8640";
+   reg = <0x18>;
+   sleep-gpios = < 116 GPIO_ACTIVE_LOW>;
+   reset-gpios = < 115 GPIO_ACTIVE_LOW>;
+   mode-sel-gpios = < 92 GPIO_ACTIVE_HIGH>;
+   vdd12-supply = <_fixed_1v2>;
+   vdd33-supply = <_vgp2_reg>;
+
+   ports {
+   #address-cells = <1>;
+   #size-cells = <0>;
+   port@0 {
+   reg = <0>;
+   ps8640_in: endpoint {
+   remote-endpoint = <_out>;
+   };
+   };
+   port@1 {
+   reg = <1>;
+   ps8640_out: endpoint {
+   remote-endpoint = <_in>;
+   };
+   };
+   };
+   };
-- 
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Re: linux-next: Tree for Oct 4 (amdgpu)

2019-10-05 Thread Randy Dunlap
On 10/3/19 10:59 PM, Stephen Rothwell wrote:
> Hi all,
> 
> Changes since 20191003:
> 

on x86_64:
CONFIG_DRM_AMDGPU=y
# CONFIG_DRM_AMDGPU_SI is not set
# CONFIG_DRM_AMDGPU_CIK is not set
CONFIG_DRM_AMDGPU_USERPTR=y
CONFIG_DRM_AMDGPU_GART_DEBUGFS=y

ld: drivers/gpu/drm/amd/amdkfd/kfd_device.o:(.rodata+0xf60): undefined 
reference to `gfx_v7_kfd2kgd'

-- 
~Randy
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH 5/5] drm/amd/display: Remove set but not used variables 'pp_smu', 'old_pipe'

2019-10-05 Thread zhengbin
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c: In function 
dce110_enable_audio_stream:
drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c:949:23: warning: 
variable pp_smu set but not used [-Wunused-but-set-variable]
drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c: In function 
dce110_disable_audio_stream:
drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c:983:23: warning: 
variable pp_smu set but not used [-Wunused-but-set-variable]
drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c: In function 
dce110_program_front_end_for_pipe:
drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c:2429:19: warning: 
variable old_pipe set but not used [-Wunused-but-set-variable]

'pp_smu' is not used since commit 170a2398d2d8 ("drm/amd/display:
make clk_mgr call enable_pme_wa")

'old_pipe' is not used since commit 65d38262b3e8 ("drm/amd/display:
fbc state could not reach while enable fbc")

Reported-by: Hulk Robot 
Signed-off-by: zhengbin 
---
 drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c | 12 
 1 file changed, 12 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c 
b/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c
index 01a924b..f8c1b4f 100644
--- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c
+++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c
@@ -944,7 +944,6 @@ void dce110_enable_audio_stream(struct pipe_ctx *pipe_ctx)
 {
/* notify audio driver for audio modes of monitor */
struct dc *core_dc;
-   struct pp_smu_funcs *pp_smu = NULL;
struct clk_mgr *clk_mgr;
unsigned int i, num_audio = 1;

@@ -957,9 +956,6 @@ void dce110_enable_audio_stream(struct pipe_ctx *pipe_ctx)
if (pipe_ctx->stream_res.audio && pipe_ctx->stream_res.audio->enabled 
== true)
return;

-   if (core_dc->res_pool->pp_smu)
-   pp_smu = core_dc->res_pool->pp_smu;
-
if (pipe_ctx->stream_res.audio) {
for (i = 0; i < MAX_PIPES; i++) {
/*current_state not updated yet*/
@@ -984,7 +980,6 @@ void dce110_enable_audio_stream(struct pipe_ctx *pipe_ctx)
 void dce110_disable_audio_stream(struct pipe_ctx *pipe_ctx)
 {
struct dc *dc;
-   struct pp_smu_funcs *pp_smu = NULL;
struct clk_mgr *clk_mgr;

if (!pipe_ctx || !pipe_ctx->stream)
@@ -1001,9 +996,6 @@ void dce110_disable_audio_stream(struct pipe_ctx *pipe_ctx)
if (pipe_ctx->stream_res.audio) {
pipe_ctx->stream_res.audio->enabled = false;

-   if (dc->res_pool->pp_smu)
-   pp_smu = dc->res_pool->pp_smu;
-
if (dc_is_dp_signal(pipe_ctx->stream->signal))

pipe_ctx->stream_res.stream_enc->funcs->dp_audio_disable(
pipe_ctx->stream_res.stream_enc);
@@ -2464,7 +2456,6 @@ static void dce110_program_front_end_for_pipe(
struct dc *dc, struct pipe_ctx *pipe_ctx)
 {
struct mem_input *mi = pipe_ctx->plane_res.mi;
-   struct pipe_ctx *old_pipe = NULL;
struct dc_plane_state *plane_state = pipe_ctx->plane_state;
struct xfm_grph_csc_adjustment adjust;
struct out_csc_color_matrix tbl_entry;
@@ -2472,9 +2463,6 @@ static void dce110_program_front_end_for_pipe(
DC_LOGGER_INIT();
memset(_entry, 0, sizeof(tbl_entry));

-   if (dc->current_state)
-   old_pipe = 
>current_state->res_ctx.pipe_ctx[pipe_ctx->pipe_idx];
-
memset(, 0, sizeof(adjust));
adjust.gamut_adjust_type = GRAPHICS_GAMUT_ADJUST_TYPE_BYPASS;

--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH 5/6] drm/msm/dpu: Remove set but not used variables 'cmd_enc', 'priv'

2019-10-05 Thread zhengbin
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c: In function 
dpu_encoder_phys_cmd_ctl_start_irq:
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c:136:31: warning: variable 
cmd_enc set but not used [-Wunused-but-set-variable]
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c: In function 
dpu_encoder_phys_cmd_irq_control:
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c:328:31: warning: variable 
cmd_enc set but not used [-Wunused-but-set-variable]
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c: In function 
dpu_encoder_phys_cmd_tearcheck_config:
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c:367:26: warning: variable 
priv set but not used [-Wunused-but-set-variable]
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c: In function 
dpu_encoder_phys_cmd_wait_for_tx_complete:
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c:662:31: warning: variable 
cmd_enc set but not used [-Wunused-but-set-variable]

They are not used since commit 25fdd5933e4c ("drm/msm:
Add SDM845 DPU support")

Reported-by: Hulk Robot 
Signed-off-by: zhengbin 
---
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c | 11 ---
 1 file changed, 11 deletions(-)

diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c 
b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c
index 2923b63..6169c75 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c
@@ -124,13 +124,11 @@ static void dpu_encoder_phys_cmd_pp_rd_ptr_irq(void *arg, 
int irq_idx)
 static void dpu_encoder_phys_cmd_ctl_start_irq(void *arg, int irq_idx)
 {
struct dpu_encoder_phys *phys_enc = arg;
-   struct dpu_encoder_phys_cmd *cmd_enc;

if (!phys_enc || !phys_enc->hw_ctl)
return;

DPU_ATRACE_BEGIN("ctl_start_irq");
-   cmd_enc = to_dpu_encoder_phys_cmd(phys_enc);

atomic_add_unless(_enc->pending_ctlstart_cnt, -1, 0);

@@ -316,13 +314,9 @@ static int dpu_encoder_phys_cmd_control_vblank_irq(
 static void dpu_encoder_phys_cmd_irq_control(struct dpu_encoder_phys *phys_enc,
bool enable)
 {
-   struct dpu_encoder_phys_cmd *cmd_enc;
-
if (!phys_enc)
return;

-   cmd_enc = to_dpu_encoder_phys_cmd(phys_enc);
-
trace_dpu_enc_phys_cmd_irq_ctrl(DRMID(phys_enc->parent),
phys_enc->hw_pp->idx - PINGPONG_0,
enable, atomic_read(_enc->vblank_refcount));
@@ -355,7 +349,6 @@ static void dpu_encoder_phys_cmd_tearcheck_config(
struct drm_display_mode *mode;
bool tc_enable = true;
u32 vsync_hz;
-   struct msm_drm_private *priv;
struct dpu_kms *dpu_kms;

if (!phys_enc || !phys_enc->hw_pp) {
@@ -377,7 +370,6 @@ static void dpu_encoder_phys_cmd_tearcheck_config(
DPU_ERROR("invalid device\n");
return;
}
-   priv = dpu_kms->dev->dev_private;

/*
 * TE default: dsi byte clock calculated base on 70 fps;
@@ -650,13 +642,10 @@ static int dpu_encoder_phys_cmd_wait_for_tx_complete(
struct dpu_encoder_phys *phys_enc)
 {
int rc;
-   struct dpu_encoder_phys_cmd *cmd_enc;

if (!phys_enc)
return -EINVAL;

-   cmd_enc = to_dpu_encoder_phys_cmd(phys_enc);
-
rc = _dpu_encoder_phys_cmd_wait_for_idle(phys_enc);
if (rc) {
DRM_ERROR("failed wait_for_idle: id:%u ret:%d intf:%d\n",
--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH 2/5] drm/amd/display: Remove set but not used variable 'source_bpp'

2019-10-05 Thread zhengbin
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c: In function calc_rc_params:
drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c:180:6: warning: variable 
source_bpp set but not used [-Wunused-but-set-variable]

It is not used since commit 97bda0322b8a ("drm/amd/display:
Add DSC support for Navi (v2)")

Reported-by: Hulk Robot 
Signed-off-by: zhengbin 
---
 drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c 
b/drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c
index ca51e83..76c4b12 100644
--- a/drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c
+++ b/drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c
@@ -177,7 +177,6 @@ void calc_rc_params(struct rc_params *rc, enum colour_mode 
cm, enum bits_per_com
 {
float bpp_group;
float initial_xmit_delay_factor;
-   int source_bpp;
int padding_pixels;
int i;

@@ -217,8 +216,6 @@ void calc_rc_params(struct rc_params *rc, enum colour_mode 
cm, enum bits_per_com
rc->initial_xmit_delay++;
}

-   source_bpp = MODE_SELECT(bpc * 3, bpc * 2, bpc * 1.5);
-
rc->flatness_min_qp = ((bpc == BPC_8) ?  (3) : ((bpc == BPC_10) ? 
(7)  : (11))) - ((minor_version == 1 && cm == CM_444) ? 1 : 0);
rc->flatness_max_qp = ((bpc == BPC_8) ? (12) : ((bpc == BPC_10) ? 
(16) : (20))) - ((minor_version == 1 && cm == CM_444) ? 1 : 0);
rc->flatness_det_thresh = 2 << (bpc - 8);
--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH 0/5] drm/amd/display: some fixes for gcc warning

2019-10-05 Thread zhengbin
zhengbin (5):
  drm/amd/display: Make function wait_for_alt_mode static
  drm/amd/display: Remove set but not used variable 'source_bpp'
  drm/amd/display: Remove set but not used variables
'h_ratio_chroma','v_ratio_chroma'
  drm/amd/display: Remove set but not used variable 'pixel_width'
  drm/amd/display: Remove set but not used variables 'pp_smu','old_pipe'

 drivers/gpu/drm/amd/display/dc/core/dc_link.c   |  2 +-
 drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c | 12 
 drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c|  7 ---
 drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dwb_scl.c|  4 
 drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c|  3 ---
 5 files changed, 1 insertion(+), 27 deletions(-)

--
2.7.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Re: [PATCH 03/11] drm/amdgpu: convert amdgpu_vm_it to half closed intervals

2019-10-05 Thread Michel Lespinasse
On Fri, Oct 04, 2019 at 06:54:54AM +, Koenig, Christian wrote:
> Am 03.10.19 um 22:18 schrieb Davidlohr Bueso:
> > The amdgpu_vm interval tree really wants [a, b) intervals,
> 
> NAK, we explicitly do need an [a, b[ interval here.

Hi Christian,

Just wanted to confirm where you stand on this patch, since I think
you reconsidered your initial position after first looking at 9/11
from this series.

I do not know the amdgpu code well, but I think the changes should be
fine - in struct amdgpu_bo_va_mapping, the "end" field will hold what
was previously stored in the "last" field, plus one. The expectation
is that overflows should not be an issue there, as "end" is explicitly
declared as an uint64, and as the code was previously computing
"last + 1" in many places.

Does that seem workable to you ?

Thanks,

-- 
Michel "Walken" Lespinasse
A program is never fully debugged until the last user dies.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

liboutput: thoughts about shared library on top of DRM/KMS

2019-10-05 Thread "Keith Packard"

During XDC this year, we heard a few presentations and had a lot of
hallway talk about sharing code for driving DRM/KMS for display.

I think the general consensus is that there is enough shared
functionality between all of the various DRM/KMS clients that we can
start thinking about building a library that deals with the complexity
of DRM/KMS and can help take full advantage of the hardware.

I've started writing up some ideas, mostly just goals, but also some
random thoughts about how this might work. This is all in the
'liboutput' project on freedesktop.org:

https://gitlab.freedesktop.org/xorg/liboutput

I picked a spot in the 'xorg' namespace, not to confine this to X
systems, but to reflect the goal that this be a library shared across
all x.org-related projects, including Wayland compositors, EGL and
Vulkan direct applications and the X server.

All there is at this point is a README.md file; I'd like to generate
some consensus on a direction for the project before we start writing
any actual design documents.

Please submit MRs to that repo, or respond to this email as you prefer.

-- 
-keith


signature.asc
Description: PGP signature
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Re: [PATCH] drm/imx: fix memory leak in imx_pd_bind

2019-10-05 Thread Markus Elfring
> In imx_pd_bind, the duplicated memory for imxpd->edid via kmemdup should
> be released in drm_of_find_panel_or_bridge or imx_pd_register fail.

Please improve this change description.


> +++ b/drivers/gpu/drm/imx/parallel-display.c
> @@ -227,14 +227,18 @@ static int imx_pd_bind(struct device *dev, struct 
> device *master, void *data)
>
>   /* port@1 is the output port */
>   ret = drm_of_find_panel_or_bridge(np, 1, 0, >panel, 
> >bridge);
> - if (ret && ret != -ENODEV)
> + if (ret && ret != -ENODEV) {
> + kfree(imxpd->edid);
>   return ret;
> + }
>
>   imxpd->dev = dev;

Please use a jump target here instead of adding duplicate source code
for the completion of exception handling.

if (ret && ret != -ENODEV)
-   return ret;
+   goto free_edid;

…

+free_edid:
+   kfree(imxpd->edid);
+   return ret;


Regards,
Markus


[DO NOT MERGE] [PATCH v10 6/6] arm64: dts: allwinner: bananapi-m64: Enable Bananapi S070WV20-CT16 DSI panel

2019-10-05 Thread Jagan Teki
This patch add support for Bananapi S070WV20-CT16 DSI panel to
BPI-M64 board.

DSI panel connected via board DSI port with,
- DLDO1 as VCC-DSI supply
- DCDC1 as VDD supply
- PD7 gpio for lcd enable pin
- PD6 gpio for lcd reset pin
- PD5 gpio for backlight enable pin

Signed-off-by: Jagan Teki 
---
 .../dts/allwinner/sun50i-a64-bananapi-m64.dts | 31 +++
 1 file changed, 31 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts 
b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
index 208373efee49..6beaecdd802a 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
@@ -45,6 +45,7 @@
 #include "sun50i-a64.dtsi"
 
 #include 
+#include 
 
 / {
model = "BananaPi-M64";
@@ -56,6 +57,14 @@
serial1 = 
};
 
+   backlight: backlight {
+   compatible = "pwm-backlight";
+   pwms = <_pwm 0 5 PWM_POLARITY_INVERTED>;
+   brightness-levels = <1 2 4 8 16 32 64 128 255>;
+   default-brightness-level = <2>;
+   enable-gpios = < 3 5 GPIO_ACTIVE_HIGH>; /* LCD-BL-EN: PD5 */
+   };
+
chosen {
stdout-path = "serial0:115200n8";
};
@@ -116,6 +125,24 @@
status = "okay";
 };
 
+ {
+   status = "okay";
+};
+
+ {
+   vcc-dsi-supply = <_dldo1>;  /* VCC3V3-DSI */
+   status = "okay";
+
+   panel@0 {
+   compatible = "bananapi,s070wv20-ct16-icn6211";
+   reg = <0>;
+   enable-gpios = < 3 7 GPIO_ACTIVE_HIGH>; /* LCD-PWR-EN: PD7 
*/
+   reset-gpios = < 3 6 GPIO_ACTIVE_HIGH>; /* LCD-RST: PD6 */
+   vdd-supply = <_dcdc1>;
+   backlight = <>;
+   };
+};
+
  {
status = "okay";
 };
@@ -206,6 +233,10 @@
status = "okay";
 };
 
+_pwm {
+   status = "okay";
+};
+
 _rsb {
status = "okay";
 
-- 
2.18.0.321.gffc6fa0e3

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH v10 5/6] arm64: dts: allwinner: a64: Add MIPI DSI pipeline

2019-10-05 Thread Jagan Teki
Add MIPI DSI pipeline for Allwinner A64.

- dsi node, with A64 compatible since it doesn't support
  DSI_SCLK gating unlike A33
- dphy node, with A64 compatible with A33 fallback since
  DPHY on A64 and A33 is similar
- finally, attach the dsi_in to tcon0 for complete MIPI DSI

Signed-off-by: Jagan Teki 
Tested-by: Merlijn Wajer 
---
 arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 38 +++
 1 file changed, 38 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi 
b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
index 69128a6dfc46..ad4170b8aee0 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
@@ -382,6 +382,12 @@
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
+
+   tcon0_out_dsi: endpoint@1 {
+   reg = <1>;
+   remote-endpoint = 
<_in_tcon0>;
+   allwinner,tcon-channel = <1>;
+   };
};
};
};
@@ -1003,6 +1009,38 @@
status = "disabled";
};
 
+   dsi: dsi@1ca {
+   compatible = "allwinner,sun50i-a64-mipi-dsi";
+   reg = <0x01ca 0x1000>;
+   interrupts = ;
+   clocks = < CLK_BUS_MIPI_DSI>;
+   clock-names = "bus";
+   resets = < RST_BUS_MIPI_DSI>;
+   phys = <>;
+   phy-names = "dphy";
+   status = "disabled";
+   #address-cells = <1>;
+   #size-cells = <0>;
+
+   port {
+   dsi_in_tcon0: endpoint {
+   remote-endpoint = <_out_dsi>;
+   };
+   };
+   };
+
+   dphy: d-phy@1ca1000 {
+   compatible = "allwinner,sun50i-a64-mipi-dphy",
+"allwinner,sun6i-a31-mipi-dphy";
+   reg = <0x01ca1000 0x1000>;
+   clocks = < CLK_BUS_MIPI_DSI>,
+< CLK_DSI_DPHY>;
+   clock-names = "bus", "mod";
+   resets = < RST_BUS_MIPI_DSI>;
+   status = "disabled";
+   #phy-cells = <0>;
+   };
+
hdmi: hdmi@1ee {
compatible = "allwinner,sun50i-a64-dw-hdmi",
 "allwinner,sun8i-a83t-dw-hdmi";
-- 
2.18.0.321.gffc6fa0e3

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH v10 3/6] drm/sun4i: dsi: Add has_mod_clk quirk

2019-10-05 Thread Jagan Teki
As per the user manual, look like mod clock is not mandatory
for all Allwinner MIPI DSI controllers, it is connected to
CLK_DSI_SCLK for A31 and not available in A64.

So add has_mod_clk quirk and process the clk accordingly.

Tested-by: Merlijn Wajer 
Signed-off-by: Jagan Teki 
---
 drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c | 35 ++
 drivers/gpu/drm/sun4i/sun6i_mipi_dsi.h |  5 
 2 files changed, 30 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c 
b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c
index b8a0d0501ca7..6724a14c816d 100644
--- a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c
+++ b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c
@@ -11,6 +11,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -1092,6 +1093,7 @@ static int sun6i_dsi_probe(struct platform_device *pdev)
dsi->dev = dev;
dsi->host.ops = _dsi_host_ops;
dsi->host.dev = dev;
+   dsi->variant = of_device_get_match_data(dev);
 
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
base = devm_ioremap_resource(dev, res);
@@ -1119,17 +1121,20 @@ static int sun6i_dsi_probe(struct platform_device *pdev)
return PTR_ERR(dsi->reset);
}
 
-   dsi->mod_clk = devm_clk_get(dev, "mod");
-   if (IS_ERR(dsi->mod_clk)) {
-   dev_err(dev, "Couldn't get the DSI mod clock\n");
-   return PTR_ERR(dsi->mod_clk);
+   if (dsi->variant->has_mod_clk) {
+   dsi->mod_clk = devm_clk_get(dev, "mod");
+   if (IS_ERR(dsi->mod_clk)) {
+   dev_err(dev, "Couldn't get the DSI mod clock\n");
+   return PTR_ERR(dsi->mod_clk);
+   }
}
 
/*
 * In order to operate properly, that clock seems to be always
 * set to 297MHz.
 */
-   clk_set_rate_exclusive(dsi->mod_clk, 29700);
+   if (dsi->variant->has_mod_clk)
+   clk_set_rate_exclusive(dsi->mod_clk, 29700);
 
dsi->dphy = devm_phy_get(dev, "dphy");
if (IS_ERR(dsi->dphy)) {
@@ -1159,7 +1164,8 @@ static int sun6i_dsi_probe(struct platform_device *pdev)
 err_pm_disable:
pm_runtime_disable(dev);
 err_unprotect_clk:
-   clk_rate_exclusive_put(dsi->mod_clk);
+   if (dsi->variant->has_mod_clk)
+   clk_rate_exclusive_put(dsi->mod_clk);
return ret;
 }
 
@@ -1171,7 +1177,8 @@ static int sun6i_dsi_remove(struct platform_device *pdev)
component_del(>dev, _dsi_ops);
mipi_dsi_host_unregister(>host);
pm_runtime_disable(dev);
-   clk_rate_exclusive_put(dsi->mod_clk);
+   if (dsi->variant->has_mod_clk)
+   clk_rate_exclusive_put(dsi->mod_clk);
 
return 0;
 }
@@ -1188,7 +1195,8 @@ static int __maybe_unused sun6i_dsi_runtime_resume(struct 
device *dev)
}
 
reset_control_deassert(dsi->reset);
-   clk_prepare_enable(dsi->mod_clk);
+   if (dsi->variant->has_mod_clk)
+   clk_prepare_enable(dsi->mod_clk);
 
/*
 * Enable the DSI block.
@@ -1229,9 +1237,16 @@ static const struct dev_pm_ops sun6i_dsi_pm_ops = {
   NULL)
 };
 
+static const struct sun6i_dsi_variant sun6i_a31_mipi_dsi = {
+   .has_mod_clk = true,
+};
+
 static const struct of_device_id sun6i_dsi_of_table[] = {
-   { .compatible = "allwinner,sun6i-a31-mipi-dsi" },
-   { }
+   {
+   .compatible = "allwinner,sun6i-a31-mipi-dsi",
+   .data = _a31_mipi_dsi,
+   },
+   { /* sentinel */ }
 };
 MODULE_DEVICE_TABLE(of, sun6i_dsi_of_table);
 
diff --git a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.h 
b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.h
index 3f4846f581ef..d791c9f6fccf 100644
--- a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.h
+++ b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.h
@@ -15,6 +15,10 @@
 
 #define SUN6I_DSI_TCON_DIV 4
 
+struct sun6i_dsi_variant {
+   boolhas_mod_clk;
+};
+
 struct sun6i_dsi {
struct drm_connectorconnector;
struct drm_encoder  encoder;
@@ -31,6 +35,7 @@ struct sun6i_dsi {
struct sun4i_drv*drv;
struct mipi_dsi_device  *device;
struct drm_panel*panel;
+   const struct sun6i_dsi_variant  *variant;
 };
 
 static inline struct sun6i_dsi *host_to_sun6i_dsi(struct mipi_dsi_host *host)
-- 
2.18.0.321.gffc6fa0e3

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH v10 4/6] drm/sun4i: dsi: Add Allwinner A64 MIPI DSI support

2019-10-05 Thread Jagan Teki
The MIPI DSI controller in Allwinner A64 is similar to A33.

But unlike A33, A64 doesn't have DSI_SCLK gating so add compatible
for Allwinner A64 with uninitialized has_mod_clk driver.

Signed-off-by: Jagan Teki 
Tested-by: Merlijn Wajer 
---
 drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c | 7 +++
 1 file changed, 7 insertions(+)

diff --git a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c 
b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c
index 6724a14c816d..e3aab815fa73 100644
--- a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c
+++ b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c
@@ -1241,11 +1241,18 @@ static const struct sun6i_dsi_variant 
sun6i_a31_mipi_dsi = {
.has_mod_clk = true,
 };
 
+static const struct sun6i_dsi_variant sun50i_a64_mipi_dsi = {
+};
+
 static const struct of_device_id sun6i_dsi_of_table[] = {
{
.compatible = "allwinner,sun6i-a31-mipi-dsi",
.data = _a31_mipi_dsi,
},
+   {
+   .compatible = "allwinner,sun50i-a64-mipi-dsi",
+   .data = _a64_mipi_dsi,
+   },
{ /* sentinel */ }
 };
 MODULE_DEVICE_TABLE(of, sun6i_dsi_of_table);
-- 
2.18.0.321.gffc6fa0e3

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH v10 2/6] dt-bindings: sun6i-dsi: Add A64 DPHY compatible (w/ A31 fallback)

2019-10-05 Thread Jagan Teki
The MIPI DSI PHY controller on Allwinner A64 is similar
on the one on A31.

Add A64 compatible and append A31 compatible as fallback.

Signed-off-by: Jagan Teki 
---
 .../bindings/phy/allwinner,sun6i-a31-mipi-dphy.yaml | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git 
a/Documentation/devicetree/bindings/phy/allwinner,sun6i-a31-mipi-dphy.yaml 
b/Documentation/devicetree/bindings/phy/allwinner,sun6i-a31-mipi-dphy.yaml
index fa46670de299..8841938050b2 100644
--- a/Documentation/devicetree/bindings/phy/allwinner,sun6i-a31-mipi-dphy.yaml
+++ b/Documentation/devicetree/bindings/phy/allwinner,sun6i-a31-mipi-dphy.yaml
@@ -15,7 +15,11 @@ properties:
 const: 0
 
   compatible:
-const: allwinner,sun6i-a31-mipi-dphy
+oneOf:
+  - const: allwinner,sun6i-a31-mipi-dphy
+  - items:
+  - const: allwinner,sun50i-a64-mipi-dphy
+  - const: allwinner,sun6i-a31-mipi-dphy
 
   reg:
 maxItems: 1
-- 
2.18.0.321.gffc6fa0e3



[PATCH v10 0/6] drm/sun4i: Allwinner A64 MIPI-DSI support

2019-10-05 Thread Jagan Teki
This is v10 version for Allwinner A64 MIPI-DSI support
and here is the previous version set[1].

This series on top of drm-misc/for-linux-next along with video start
delay fix [2]

Changes for v10:
- updated dt-bindings as per .yaml format
- rebased on drm-misc/for-linux-next
Changes for v9:
- moved dsi fixes in separate series on top of A33 [2]
- rebase on linux-next and on top of [2]
Changes for v8:
- rebased on drm-misc change along with linux-next
- reworked video start delay patch
- tested on 4 different dsi panels
- reworked commit messages
Changes for v7:
- moved vcc-dsi binding to required filed.
- drop quotes on fallback dphy bindings.
- drop min_rate clock pll-mipi patches.
- introduce dclk divider computation as like A64 BSP.
- add A64 DSI quark patches.
- fixed A64 DSI pipeline.
- add proper commit messages.
- collect Merlijn Wajer Tested-by credits.
Changes for v6:
- dropped unneeded changes, patches
- fixed all burst mode patches as per previous version comments
- rebase on master
- update proper commit message
- dropped unneeded comments
- order the patches that make review easy
Changes for v5:
- collect Rob, Acked-by
- droped "Fix VBP size calculation" patch
- updated vblk timing calculation.
- droped techstar, bananapi dsi panel drivers which may require
  bridge or other setup. it's under discussion.
Changes for v4:
- droppoed untested CCU_FEATURE_FIXED_POSTDIV check code in
  nkm min, max rate patches
- create two patches for "Add Allwinner A64 MIPI DSI support"
  one for has_mod_clk quirk and other one for A64 support
- use existing driver code construct for hblk computation
- dropped "Increase hfp packet overhead" patch [2], though BSP added
  this but we have no issues as of now.
  (no issues on panel side w/o this change)
- create separate function for vblk computation 
- enable vcc-dsi regulator in dsi_runtime_resume
- collect Rob, Acked-by
- update MAINTAINERS file for panel drivers
- cleanup commit messages
- fixed checkpatch warnings/errors

[1] https://patchwork.freedesktop.org/series/61310/
[2] https://patchwork.freedesktop.org/patch/334086/

Any inputs?
Jagan.

Jagan Teki (6):
  dt-bindings: sun6i-dsi: Add A64 MIPI-DSI compatible
  dt-bindings: sun6i-dsi: Add A64 DPHY compatible (w/ A31 fallback)
  drm/sun4i: dsi: Add has_mod_clk quirk
  drm/sun4i: dsi: Add Allwinner A64 MIPI DSI support
  arm64: dts: allwinner: a64: Add MIPI DSI pipeline
  [DO NOT MERGE] arm64: dts: allwinner: bananapi-m64: Enable Bananapi 
S070WV20-CT16 DSI
panel

 .../display/allwinner,sun6i-a31-mipi-dsi.yaml |  4 +-
 .../phy/allwinner,sun6i-a31-mipi-dphy.yaml|  6 ++-
 .../dts/allwinner/sun50i-a64-bananapi-m64.dts | 31 ++
 arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 38 +
 drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c| 42 ++-
 drivers/gpu/drm/sun4i/sun6i_mipi_dsi.h|  5 +++
 6 files changed, 114 insertions(+), 12 deletions(-)

-- 
2.18.0.321.gffc6fa0e3

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[PATCH v10 1/6] dt-bindings: sun6i-dsi: Add A64 MIPI-DSI compatible

2019-10-05 Thread Jagan Teki
The MIPI DSI controller in Allwinner A64 is similar to A33.

But unlike A33, A64 doesn't have DSI_SCLK gating so it is valid
to with separate compatible for A64 on the same driver.

Signed-off-by: Jagan Teki 
---
 .../bindings/display/allwinner,sun6i-a31-mipi-dsi.yaml| 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git 
a/Documentation/devicetree/bindings/display/allwinner,sun6i-a31-mipi-dsi.yaml 
b/Documentation/devicetree/bindings/display/allwinner,sun6i-a31-mipi-dsi.yaml
index dafc0980c4fa..cfcc84d38084 100644
--- 
a/Documentation/devicetree/bindings/display/allwinner,sun6i-a31-mipi-dsi.yaml
+++ 
b/Documentation/devicetree/bindings/display/allwinner,sun6i-a31-mipi-dsi.yaml
@@ -15,7 +15,9 @@ properties:
   "#size-cells": true
 
   compatible:
-const: allwinner,sun6i-a31-mipi-dsi
+enum:
+  - const: allwinner,sun6i-a31-mipi-dsi
+  - const: allwinner,sun50i-a64-mipi-dsi
 
   reg:
 maxItems: 1
-- 
2.18.0.321.gffc6fa0e3



[Bug 201539] AMDGPU R9 390 automatic fan speed control in Linux 4.19/4.20/5.0

2019-10-05 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=201539

--- Comment #20 from artheg (art...@gmail.com) ---
To anyone who's still struggling with this, perhaps this would be of help:
I'm using this script (https://github.com/grmat/amdgpu-fancontrol) as a
service, with these params: 

TEMPS=( 65000 75000 8 9 )
PWMS=(  0   190   200   255 )

Perhaps someone could tweak this a little bit better, but this works for me.
My gpu still sounds like an airplane when I'm running a benchmark like
Unigine-Heaven, but at least fans are spinning now.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111232] 3200 Memory Crash My System

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111232

--- Comment #11 from bibitocarlos  ---
Any idea ?

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111482] Sapphire Pulse RX 5700 XT power consumption

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111482

--- Comment #24 from Sylvain BERTRAND  ---
Hi, popping to say it may be the same on southern islands (tahiti xt).

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 109955] amdgpu [RX Vega 64] system freeze while gaming

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=109955

--- Comment #113 from Jason Playne  ---
As others have noted, with powerplay doing its thing we get system freezes.

Just had a successful 6+ hour gaming session on a kernel 5.3.2-050302-generic
with the following being done:
 * Forcing high perf state
 * Undervolt/Overclock
 * Higher fan curve (https://github.com/grmat/amdgpu-fancontrol)

I know that I have been messing with all sorts here, but I think it suggests
that PowerPlay may be at fault here when my system *does* crash (which is all
the time without the force high perf state)

All details below:

# Forcing High Perf
echo high | sudo tee
/sys/class/drm/card0/device/power_dpm_force_performance_level

# Undervolt / Overclock
I also have done some messing around with voltages/clocks

$ cat /sys/class/drm/card0/device/pp_od_clk_voltage
OD_SCLK:
0:852Mhz800mV
1:991Mhz900mV
2:   1084Mhz940mV
3:   1138Mhz990mV
4:   1200Mhz   1040mV
5:   1401Mhz   1090mV
6:   1536Mhz   1140mV
7:   1630Mhz   1190mV
OD_MCLK:
0:167Mhz800mV
1:500Mhz800mV
2:850Mhz940mV
3:   1000Mhz   1100mV
OD_RANGE:
SCLK: 852MHz   2400MHz
MCLK: 167MHz   1500MHz
VDDC: 800mV1200mV


# Settings for AMDGPU Fancontrol
TEMPS=( 35000 7 8 )
PWMS=( 70   180   255 )

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111482] Sapphire Pulse RX 5700 XT power consumption

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111482

--- Comment #23 from Andrew Sheldon  ---
@Leon

I suspect there is more than one bug occurring. The main Navi-specific issue
has been fixed with newer kernels (that affected everyone), but there is
another issue relating to high resolution and high refresh rate monitors, that
looks to affect at least Navi, Vega (and probably Polaris going by other
reports).

The secondary issue is probably by design to an extent. High res/refresh rate
requires a lot more bandwidth which needs a higher memory clock. However, I
suspect there are two problems within this:

- Once a high bandwidth mode is used and the maximum memory clock is chosen, it
never switches down again (even if you switch to a lower bandwidth mode).
Particularly, if you boot at 2560x1440@144hz, you won't be able to switch down
again.
- The choice of memory clock is higher than it needs to be, even for high
bandwidth modes

You can workaround this to some extent on Vega by writing to the powerplay
tables (while in a high bandwidth mode) and, in the case of Vega, the card will
stay in the more reasonable memory clock of 700mhz (versus the max of 950mhz).
However, if you then switch to any other high bandwidth mode (e.g.
2560x1440@120), the problem will return (card stuck at 950mhz).

I don't recommend trying that on Navi as powerplay table writing is currently
buggy without reverting a commit, I haven't confirmed the behaviour there, but
I suspect the same workaround will work.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 204725] black screen

2019-10-05 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=204725

--- Comment #53 from Dmitri Seletski (drj...@gmail.com) ---
made minor error.
compiled 5.4r1
compiled in 'DCN 2.1 family'. I don't hardware for it.
With it and DCN 2.0 i get console.
I get to see Xorg. though not sure if it's vesa or not, because resolution is
very wrong for my screen.
Found another bug in 5.4-rc1

I disabled DCN 2.1 family


3d Games work with 5.4-rc1 but crush if full screen. Sometimes it will work,
but when quit - it hangs Xorg. Processes seem to run, as music still playing.

If someone still looking here i can give more details.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 205089] New: amdgpu : drm:amdgpu_cs_ioctl : Failed to initialize parser -125

2019-10-05 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=205089

Bug ID: 205089
   Summary: amdgpu : drm:amdgpu_cs_ioctl : Failed to initialize
parser -125
   Product: Drivers
   Version: 2.5
Kernel Version: 5.3.2
  Hardware: All
OS: Linux
  Tree: Mainline
Status: NEW
  Severity: normal
  Priority: P1
 Component: Video(DRI - non Intel)
  Assignee: drivers_video-...@kernel-bugs.osdl.org
  Reporter: maxi...@free.fr
Regression: No

Hello,

I am experiencing freezes with kernel 5.3.2 and amdgpu on a Vega 64 card.

This happens during games (I experience it on CS:GO) but it is a bit random and
takes time to eventually trigger.
Once it triggers my dmesg is filled with errors:


[ 9156.537524] [drm:amdgpu_cs_ioctl [amdgpu]] *ERROR* Failed to initialize
parser -125!
[ 9156.747176] [drm:amdgpu_cs_ioctl [amdgpu]] *ERROR* Failed to initialize
parser -125!
[ 9156.747224] [drm:amdgpu_cs_ioctl [amdgpu]] *ERROR* Failed to initialize
parser -125!
[ 9156.883220] [drm:amdgpu_cs_ioctl [amdgpu]] *ERROR* Failed to initialize
parser -125!
[ 9156.883285] [drm:amdgpu_cs_ioctl [amdgpu]] *ERROR* Failed to initialize
parser -125!

When it happens, the image hangs and PC is unresponsive. Sometimes I manage to
switch to a TTY, but then the screen is corrupted.

HW:
- AMD Ryzen 2700X CPU
- AMD RX vega 64

SW:
- Kernel 5.3.2
- Mesa 19.2.0

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Re: [PATCH v19 0/2] PS8640 MIPI-to-eDP bridge

2019-10-05 Thread Matthias Brugger
Hi Uli,

On 04/10/2019 21:09, Ulrich Hecht wrote:
> Hi!
> 
> This driver seems to have fallen by the wayside because, while otherwise
> fine, it has a firmware update feature that requires a blob that is not in
> the linux-firmware repo.[1]
> 
> Whatever the cause for that may be, the update code is entirely optional
> (my chip works fine with whatever firmware is currently installed), so I
> have removed it in order to get this merged after all. I have also
> followed various trivial API changes that have piled up since 2016; see
> the individual patches for details.
> 
> I'm using this driver on an Acer Chromebook R13 ("Elm"); see
> https://github.com/uli/kernel/tree/elm-working-5.4.
> 

Thanks for your effort to get things upstream.
I just tried your branch on my R13. I had to do a trivial config change I had to
do, as I don't have and care about the bluetooth FW right now.
But after that my screen keeps black. I was able to build and boot
elm-working-5.3 and elm-working-5.2.

Unfortunatley I don't have a serial console on the Chromebook, so it's difficult
to find out where it hangs. Can you please double check if your new
elm-working-5.4 actually really works?

Thanks,
Matthias

> CU
> Uli
> 
> [1] https://patchwork.kernel.org/patch/9427543/
> 
> Jitao Shi (2):
>   Documentation: bridge: Add documentation for ps8640 DT properties
>   drm/bridge: Add I2C based driver for ps8640 bridge
> 
>  .../devicetree/bindings/display/bridge/ps8640.txt  |  44 ++
>  drivers/gpu/drm/bridge/Kconfig |  12 +
>  drivers/gpu/drm/bridge/Makefile|   1 +
>  drivers/gpu/drm/bridge/parade-ps8640.c | 672 
> +
>  4 files changed, 729 insertions(+)
>  create mode 100644 
> Documentation/devicetree/bindings/display/bridge/ps8640.txt
>  create mode 100644 drivers/gpu/drm/bridge/parade-ps8640.c
> 
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 204241] amdgpu fails to resume from suspend

2019-10-05 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=204241

--- Comment #15 from Andreas Jackisch (andreas.jacki...@gmail.com) ---
(In reply to Ahzo from comment #14)
> Created attachment 285349 [details]
> Patch to prevent frequent resume failures
> 
> Another way to prevent these frequent resume failures, while preserving the
> intention of this commit, is to simply call amdgpu_ib_pool_init directly
> after calling amdgpu_ucode_create_bo instead of directly before that.
> Attached is a patch doing it that way.
I applied the patch above to 5.3.2-gentoo. All 30 Suspend/Resume cycles using
rtcwake and a couple of manual cycles went OK.

I'll continue to use this setup and will report if it fails again or is still
OK after one week.

Thx for bisecting this issue and providing this fix as I assume it took some
time.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 109955] amdgpu [RX Vega 64] system freeze while gaming

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=109955

--- Comment #112 from Jan Orsag  ---
screenfetch
 ██   johanides@johanides-manjaro
 ██   OS: Manjaro 18.1.0 Juhraya
 ██   Kernel: x86_64 Linux 4.19.69-1-MANJARO
 ██   Uptime: 18m
  Packages: 1186
      Shell: bash
      Resolution: 2560x1440
      DE: GNOME 3.32.2
      WM: Mutter
      WM Theme: Adapta-Nokto-Eta-Maia
      GTK Theme: Adapta-Nokto-Eta-Maia [GTK2/3]
      Icon Theme: Papirus-Adapta-Nokto-Maia
      Font: Noto Sans 10
      Disk: 565G / 1,2T (50%)
  CPU: AMD Ryzen 5 1600X Six-Core @ 12x 3.6GHz
  GPU: Radeon RX Vega (VEGA10, DRM 3.27.0,
4.19.69-1-MANJARO, LLVM 8.0.1)
  RAM: 2320MiB / 16050MiB

System hard freezes after some playtime in Civilization 6 (black/green/gray
screen, music playing, need to use reset button)

Errors in system logs:
sep 19 16:39:13 kernel: [drm:amdgpu_job_timedout [amdgpu]] *ERROR* ring gfx
timeout, signaled seq=7763335, emitted seq=7763337
sep 19 16:39:13 kernel: [drm:amdgpu_job_timedout [amdgpu]] *ERROR* ring sdma1
timeout, signaled seq=7703731, emitted seq=7703733
sep 19 16:41:11 kernel: [drm:amdgpu_job_timedout [amdgpu]] *ERROR* ring sdma0
timeout, signaled seq=374796, emitted seq=374798

On my computer however, the crash/freeze occurs sooner with kernels 5.x and
higher than with kernel 4.19. Its approximately 1 hour playtime (kernel 5+) vs.
8 hours (kernel 4.19). It doesnt matter what mesa I use- tried mesa-aco-git
19.3 and mesa 19.1.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Re: [PATCH] drm: lima: Add support for multiple reset lines

2019-10-05 Thread Qiang Yu
On Wed, Oct 2, 2019 at 2:29 AM John Stultz  wrote:
>
> From: Peter Griffin 
>
> Some SoCs like HiKey have 2 reset lines, so update
> to use the devm_reset_control_array_* variant of the
> API so that multiple resets can be specified in DT.
>
> Cc: Qiang Yu 
> Cc: David Airlie 
> Cc: Daniel Vetter 
> Cc: dri-devel@lists.freedesktop.org
> Cc: l...@lists.freedesktop.org
> Signed-off-by: Peter Griffin 
> Signed-off-by: John Stultz 
> ---
>  drivers/gpu/drm/lima/lima_device.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/lima/lima_device.c 
> b/drivers/gpu/drm/lima/lima_device.c
> index d86b8d81a483..e3e0ca11382e 100644
> --- a/drivers/gpu/drm/lima/lima_device.c
> +++ b/drivers/gpu/drm/lima/lima_device.c
> @@ -105,7 +105,8 @@ static int lima_clk_init(struct lima_device *dev)
> if (err)
> goto error_out0;
>
> -   dev->reset = devm_reset_control_get_optional(dev->dev, NULL);
> +   dev->reset = devm_reset_control_array_get_optional_shared(dev->dev);
> +
> if (IS_ERR(dev->reset)) {
> err = PTR_ERR(dev->reset);
> if (err != -EPROBE_DEFER)
> --
> 2.17.1
>

Looks good for me, patch is:
Reviewed-by: Qiang Yu 

I'll apply it to drm-misc-next.

Thanks,
Qiang
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 204683] amdgpu: ring sdma0 timeout

2019-10-05 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=204683

--- Comment #11 from Matthias Heinz (m...@familie-heinz.name) ---
The bug is still present in linux 5.3.

Also I'm not done yet bisecting. But the older kernels seem to have nasty fs
bugs and I'm not sure if I'm really willing to put my data on the line for
this. Is there really no other way to figure out where this originates from?

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111803] Annoying GPU stucks are continued on Vega 20 with Kernel 5.4 + mesa 9.3.0 + llvm 9.0.0 [drm:amdgpu_dm_atomic_commit_tail [amdgpu]] *ERROR* Waiting for fences timed out!

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111803

--- Comment #32 from mikhail.v.gavri...@gmail.com ---
Created attachment 145661
  --> https://bugs.freedesktop.org/attachment.cgi?id=145661=edit
dmesg

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111803] Annoying GPU stucks are continued on Vega 20 with Kernel 5.4 + mesa 9.3.0 + llvm 9.0.0 [drm:amdgpu_dm_atomic_commit_tail [amdgpu]] *ERROR* Waiting for fences timed out!

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111803

--- Comment #31 from mikhail.v.gavri...@gmail.com ---
Created attachment 145660
  --> https://bugs.freedesktop.org/attachment.cgi?id=145660=edit
./umr -O many,bits -r *.*.mmCP_ME_HEADER_DUMP

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111803] Annoying GPU stucks are continued on Vega 20 with Kernel 5.4 + mesa 9.3.0 + llvm 9.0.0 [drm:amdgpu_dm_atomic_commit_tail [amdgpu]] *ERROR* Waiting for fences timed out!

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111803

--- Comment #30 from mikhail.v.gavri...@gmail.com ---
Created attachment 145659
  --> https://bugs.freedesktop.org/attachment.cgi?id=145659=edit
./umr -O many,bits -r *.*.mmCP_PFP_HEADER_DUMP

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111803] Annoying GPU stucks are continued on Vega 20 with Kernel 5.4 + mesa 9.3.0 + llvm 9.0.0 [drm:amdgpu_dm_atomic_commit_tail [amdgpu]] *ERROR* Waiting for fences timed out!

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111803

--- Comment #29 from mikhail.v.gavri...@gmail.com ---
Created attachment 145658
  --> https://bugs.freedesktop.org/attachment.cgi?id=145658=edit
./umr -O many,bits -r *.*.mmCP_EOP_*

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111803] Annoying GPU stucks are continued on Vega 20 with Kernel 5.4 + mesa 9.3.0 + llvm 9.0.0 [drm:amdgpu_dm_atomic_commit_tail [amdgpu]] *ERROR* Waiting for fences timed out!

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111803

--- Comment #28 from mikhail.v.gavri...@gmail.com ---
Created attachment 145657
  --> https://bugs.freedesktop.org/attachment.cgi?id=145657=edit
./umr -O many,bits -r *.*.mmGRBM_STATUS*

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111803] Annoying GPU stucks are continued on Vega 20 with Kernel 5.4 + mesa 9.3.0 + llvm 9.0.0 [drm:amdgpu_dm_atomic_commit_tail [amdgpu]] *ERROR* Waiting for fences timed out!

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111803

--- Comment #27 from mikhail.v.gavri...@gmail.com ---
Created attachment 145656
  --> https://bugs.freedesktop.org/attachment.cgi?id=145656=edit
./umr -R gfx[.]

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Bug 111803] Annoying GPU stucks are continued on Vega 20 with Kernel 5.4 + mesa 9.3.0 + llvm 9.0.0 [drm:amdgpu_dm_atomic_commit_tail [amdgpu]] *ERROR* Waiting for fences timed out!

2019-10-05 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=111803

--- Comment #26 from mikhail.v.gavri...@gmail.com ---
Created attachment 145655
  --> https://bugs.freedesktop.org/attachment.cgi?id=145655=edit
./umr -O halt_waves -wa

-- 
You are receiving this mail because:
You are the assignee for the bug.___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel