a rendering node, and if we find out that there is no rendering
> hardware, abort and retry with an accel node.
>
I really love this idea of moving away from a render node. What needs to be done
on the userspace side?
> Signed-off-by: Tomeu Vizoso
> Cc: Oded Gabbay
Reviewed-by: Christian Gmeiner
>
From: Christian Gmeiner
This reverts commit 1dccdba084897443d116508a8ed71e0ac8a031a4.
In userspace a different approach was choosen - hwdb. As a result, there
is no need for these values.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 20
o message size and could potentially slow
down data transfer. However, an alternative
approach could be to allocate a sizable chunk of SRAM memory in
userspace. By utilizing memcpy() to copy data into
this memory, followed by a single rpmsg signal to notify the RTOS that
the data is ready, we can leverage the faster access
speed of SRAM compared to DDR from the remoteproc.
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
>
> Core in platform_driver_register() already sets the .owner, so driver
> does not need to. Whatever is set here will be anyway overwritten by
> main driver calling platform_driver_register().
>
> Signed-off-by: Krzysztof Kozlowski
Reviewed-by: Christian Gmeiner
> -
Hi Lucas,
>
> prefix for etnaviv kernel patches should be "drm/etnaviv: ..."
Ah yeah .. corrected in v2.
>
> Am Donnerstag, dem 29.02.2024 um 20:55 +0100 schrieb Christian Gmeiner:
> > From: Christian Gmeiner
> >
> > The hwdb selection logic as a fe
From: Christian Gmeiner
The hwdb selection logic as a feature that allows it to mark some fields
as 'don't care'. If we match with such a field we memcpy(..)
the current etnaviv_chip_identity into ident.
This step can overwrite some id values read from the GPU with the
'don't care' value.
Fix
From: Christian Gmeiner
The hwdb selection logic as a feature that allows it to mark some fields
as 'don't care'. If we match with such a field we memcpy(..)
the current etnaviv_chip_identity into ident.
This step can overwrite some id values read from the GPU with the
'don't care' value.
Fix
0x320, 0x5007) ||
> +etnaviv_is_model_rev(gpu, 0x320, 0x5220)) &&
> gpu_read(gpu, VIVS_HI_CHIP_TIME) != 0x2062400) {
> u32 mc_memory_debug;
>
> @@ -745,7 +747,7 @@ static void etnaviv_gpu_hw_init(struct etnaviv_gpu *gpu)
> VIVS_HI_AXI_CONFIG_ARCACHE(2));
>
> /* GC2000 rev 5108 needs a special bus config */
> - if (etnaviv_is_model_rev(gpu, GC2000, 0x5108)) {
> + if (etnaviv_is_model_rev(gpu, 0x2000, 0x5108)) {
> u32 bus_config = gpu_read(gpu, VIVS_MC_BUS_CONFIG);
> bus_config &= ~(VIVS_MC_BUS_CONFIG_FE_BUS_CONFIG__MASK |
> VIVS_MC_BUS_CONFIG_TX_BUS_CONFIG__MASK);
>
> --
> 2.39.2
>
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
>
> Update the state HI header from the rnndb commit
> 8d7ee714cfe2 ("Merge pull request #24 from pH5/unknown-3950").
>
> Signed-off-by: Philipp Zabel
You missed my R-b from the v1 series for this patch - please include
it the next time!
Reviewed-by: Christian Gmeiner
he VIPNano-Si+ NPU on i.MX8MP.
>
> Signed-off-by: Philipp Zabel
Thanks - series is
Reviewed-by: Christian Gmeiner
> ---
> Philipp Zabel (2):
> drm/etnaviv: Update hardware headers from rnndb
> drm/etnaviv: Disable SH_EU clock gating on VIPNano-Si+
>
> dri
Hi Lucas
>
> Am Donnerstag, dem 07.12.2023 um 08:43 +0100 schrieb Christian Gmeiner:
> > From: Christian Gmeiner
> >
> > 0x1540 is the address of 4th render target address pair (two pixel pipes).
> >
> Are there any corresponding TS states for this region?
I wi
From: Christian Gmeiner
0x1540 is the address of 4th render target address pair (two pixel pipes).
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_cmd_parser.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_cmd_parser.c
b/drivers/gpu
ecked all the new values but it looks fine to me.
Acked-by: Christian Gmeiner
> ---
>
> v2: Update a few chipspecs that I had missed before. (Christian)
> ---
> drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 20 +++
> drivers/gpu/drm/etnaviv/etnaviv_gpu.h | 12 +
>
ude/uapi/drm/etnaviv_drm.h
> index af024d90453d..d87410a8443a 100644
> --- a/include/uapi/drm/etnaviv_drm.h
> +++ b/include/uapi/drm/etnaviv_drm.h
> @@ -77,6 +77,11 @@ struct drm_etnaviv_timespec {
> #define ETNAVIV_PARAM_GPU_PRODUCT_ID0x1c
> #define ETNAVIV_PARAM_GPU_CUSTOMER_ID
e who is responsible for this job.
>
> Thanks!
>
> -Kees
>
> >
> > Link:
> > https://www.kernel.org/doc/html/latest/process/deprecated.html#strncpy-on-nul-terminated-strings
> > [1]
> > Link: https://github.com/KSPP/linux/issues/90
> > Cc: lin
urning zero in
> the remove callback to the void returning variant.
>
> Reviewed-by: Thomas Zimmermann
> Reviewed-by: Jyri Sarha
> Signed-off-by: Uwe Kleine-König
>
Reviewed-by: Christian Gmeiner
---
> drivers/gpu/drm/etnaviv/etnaviv_drv.c | 6 ++
> drivers
Hi Lucas,
Am Mi., 21. Juni 2023 um 17:44 Uhr schrieb Christian Gmeiner
:
>
> Hi Lucas,
>
> Am Mo., 17. Apr. 2023 um 19:42 Uhr schrieb Christian Gmeiner
> :
> >
> > Hi Lucas
> >
> > >
> > > gpu->mmu_context is the MMU context of the last job i
Hi Lucas,
Am Mo., 17. Apr. 2023 um 19:42 Uhr schrieb Christian Gmeiner
:
>
> Hi Lucas
>
> >
> > gpu->mmu_context is the MMU context of the last job in the HW queue, which
> > isn't necessarily the same as the context from the bad job. Dump the MMU
> > conte
ci output for the GPU? Something like
this: sudo lspci -vvv -s ...
thanks
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
d-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 2 ++
> drivers/gpu/drm/etnaviv/etnaviv_gpu.h | 1 +
> drivers/gpu/drm/etnaviv/etnaviv_sched.c | 5 +++--
> 3 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/
tialized object.
>
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/etnaviv/etnaviv_cmdbuf.c | 3 +++
> drivers/gpu/drm/etnaviv/etnaviv_gpu.c| 9 ++---
> drivers/gpu/drm/etnaviv/etnaviv_gpu.h| 1 -
> drivers/gpu/drm/etnaviv
in that
> state.
>
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 25 ++---
> drivers/gpu/drm/etnaviv/etnaviv_gpu.h | 10 +-
> 2 files changed, 27 insertions(+), 8 deletions(-)
>
also removes the need to guard against the state where the driver
> isn't fully initialized yet in the runtime PM resume handler.
>
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 15 +--
> 1 file changed, 5
Hi Lucas,
Am Do., 15. Juni 2023 um 11:37 Uhr schrieb Lucas Stach :
>
> Hi Christian,
>
> Am Mittwoch, dem 14.06.2023 um 20:41 +0200 schrieb Christian Gmeiner:
> > Hi Lucas
> >
> > >
> > > Conceptually events are the right abstraction to handle the GPU
&g
v_hw_reset(struct etnaviv_gpu *gpu)
> diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gpu.h
> b/drivers/gpu/drm/etnaviv/etnaviv_gpu.h
> index 98c6f9c320fc..e1e1de59c38d 100644
> --- a/drivers/gpu/drm/etnaviv/etnaviv_gpu.h
> +++ b/drivers/gpu/drm/etnaviv/etnaviv_gpu.h
> @@ -150,6 +150,7 @@ struct etnaviv_gpu {
> struct clk *clk_shader;
>
> unsigned int freq_scale;
> + unsigned int fe_waitcycles;
> unsigned long base_rate_core;
> unsigned long base_rate_shader;
> };
> --
> 2.39.2
>
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
wait cycles
> >> add a comma here.
> >>>so
> >>> we may over/undershoot the target a bit, but that should be harmless.
> >> overshoot or undershoot
> >>> Signed-off-by: Lucas Stach
> >>> Reviewed-by: Christian Gmeiner
>
d-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 9 +
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c
> b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c
&g
t *submit)
> unsigned int i, nr_events = 1, event[3];
> int ret;
>
> - if (!submit->runtime_resumed) {
> - ret = pm_runtime_get_sync(gpu->dev);
> - if (ret < 0) {
> - pm_runtime_put_noidle(gpu->dev);
> - return NULL;
> - }
> - submit->runtime_resumed = true;
> - }
> -
> /*
> * if there are performance monitor requests we need to have
> * - a sync point to re-configure gpu and process ETNA_PM_PROCESS_PRE
> --
> 2.39.2
>
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
vent_spinlock);
> for_each_set_bit(i, gpu->event_bitmap, ETNA_NR_EVENTS)
> - complete(>event_free);
> - bitmap_zero(gpu->event_bitmap, ETNA_NR_EVENTS);
> + event_free(gpu, i);
> spin_unlock(>event_spinlock);
>
> etn
Hi Lucas
>
> So it can use the event_free function without adding another
> forward declaration. No functional change.
>
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 88 +--
> 1 fil
should not hurt most use-cases. The FE WAIT
> command seems to have some unknown discrete steps in the wait cycles so
> we may over/undershoot the target a bit, but that should be harmless.
>
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/etna
>
> Module level clock gating and the pulse eater might interfere with
> the GPU reset, as they both have the potential to stop the clock
> and thus reset propagation to parts of the GPU.
>
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
> ---
> I'm not
60ae3d7 ("drm/etnaviv: implement per-process address spaces on
> MMUv2")
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/etnaviv/etnaviv_dump.c | 14 +++---
> 1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff
Hi Andrew
Am Di., 4. Apr. 2023 um 17:02 Uhr schrieb Christian Gmeiner
:
>
> > > Hi Andrew
> > >
> > >>
> > >>
> > >> Okay, will split for v2.
> > >>
> > >>
> > >
> > > Was there a follow-up v2 of
rk on it? If not I would like to help out
> > as we have a use case where we want to
> > use a dma-buf sram exporter.
> >
> >
>
> Sure, I've been keeping it alive in our evil vendor tree, but if
> there is interest upstream now I'll post a v2 and CC you.
That would be great!
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
f sram exporter.
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
d-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c | 10 +-
> 1 file changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c
> b/drivers/gpu/drm/etnaviv/etnaviv_gem_pri
Hi Lucas
Am Mi., 30. Nov. 2022 um 19:53 Uhr schrieb Lucas Stach :
>
> From: Christian Gmeiner
>
> The MMU tells us the fault status. While the raw register value is
> already printed, it's a bit more user friendly to translate the
> fault reasons into human readable form
ifiers describe the interpretation of the tag bits in this
> buffer.
>
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
r possible solutions:
1) Add two seperate helpers ala gpu_read_power() and gpu_write_power()
where we do the if beast.
2) Add a power register offset variable to etnaviv_gpu and explicitly
use it on for reads and writes - like the Vivante driver does.
But that's just my personal opinion. Can't wait to hear what Lucas thinks.
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
>
> The GC300's features register doesn't specify that a 2D pipe is
> available, and like the GC600, its idle register reports zero bits where
> modules aren't present.
>
> Signed-off-by: Doug Brown
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/et
o the same check
> to bundle them.
>
> Signed-off-by: Marco Felsch
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 9 +
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu
than
forcing users to update their kernels to get this new database entry.
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
a starting point. I have no problem introducing per
process load avg
values .. lets see how the next version of this series will look like,
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
Am Fr., 24. Juni 2022 um 11:38 Uhr schrieb Lucas Stach :
>
> Am Dienstag, dem 21.06.2022 um 09:20 +0200 schrieb Christian Gmeiner:
> > The GPU has an idle state register where each bit represents the idle
> > state of a sub-GPU component like FE or TX. Sample this regis
Hi Lucas
>
> Am Dienstag, dem 21.06.2022 um 09:20 +0200 schrieb Christian Gmeiner:
> > This adds a SMA algorithm inspired by Exponentially weighted moving
> > average (EWMA) algorithm found in the kernel.
> >
> Still not sure about this one. I _feel_ that a simple mov
Make it possible to access the sub-GPU component load value from
user space with the perfmon infrastructure.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_perfmon.c | 79 +++
1 file changed, 79 insertions(+)
diff --git a/drivers/gpu/drm/etnaviv
with a percentage based load of each sub-GPU
component.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_drv.c | 14 ++
drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 64 ++-
drivers/gpu/drm/etnaviv/etnaviv_gpu.h | 37
3 files changed, 114 insertions
Might be helpful to see the loadavg in debugfs.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 12 +++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c
b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c
index
This adds a SMA algorithm inspired by Exponentially weighted moving
average (EWMA) algorithm found in the kernel.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_sma.h | 53 +++
1 file changed, 53 insertions(+)
create mode 100644 drivers/gpu/drm
This patch series add support for loadavg values for GPU
sub-components. I am adding a SMA algorithm as I was not
really sure if EWMA would be a good fit for this use case.
Changes v2:
- Addressed feedback from Lucas
Christian Gmeiner (4):
drm/etnaviv: add simple moving average (SMA)
drm
Track the pid per submit, so we can print the name and cmdline of
the task which submitted the batch that caused the gpu to hang.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_gem.h| 1 +
drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c | 6 ++
drivers/gpu/drm
8ddd ("drm/etnaviv: limit submit sizes")
> Cc: sta...@vger.kernel.org
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
; GPU resets, also remember and consider the last completed fence seqno
> in the hang check.
>
> Reported-by: Joerg Albert
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
ngle submit seems like a reasonably future-proof number for now. This
> number can be bumped if needed without breaking the interface.
>
> Cc: sta...@vger.kernel.org
> Reported-by: Dan Carpenter
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
put it in read-only memory.
>
> Signed-off-by: Rikard Falkeborn
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c
> b/driver
>
> @@
> expression E;
> @@
> - flush_workqueue(E);
> destroy_workqueue(E);
>
> Signed-off-by: Christophe JAILLET
For drm/etnaviv:
Reviewed-by: Christian Gmeiner
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
Am Do., 26. Aug. 2021 um 14:10 Uhr schrieb Michael Walle :
>
> There is already a macro for the magic value. Use it.
>
> Signed-off-by: Michael Walle
Reviewed-by: Christian Gmeiner
I will wait for v2 for the rest of the changes to review.
> ---
> drivers/gpu/drm/etnaviv
the
> mssing context put to fix the leak.
>
> Cc: sta...@vger.kernel.org # 5.4
> Signed-off-by: Lucas Stach
> Tested-by: Michael Walle
Series is:
Reviewed-by: Christian Gmeiner
> ---
> drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 1 +
> 1 file changed, 1 insertion(+)
>
Hi Lucas
Am Di., 24. Aug. 2021 um 09:54 Uhr schrieb Lucas Stach :
>
> Am Dienstag, dem 24.08.2021 um 09:24 +0200 schrieb Christian Gmeiner:
> > Am Fr., 20. Aug. 2021 um 22:18 Uhr schrieb Lucas Stach
> > :
> > >
> > > Move the refcount manipulation o
; return;
>
> + if (gpu->mmu_context)
> + etnaviv_iommu_context_put(gpu->mmu_context);
> + gpu->mmu_context = etnaviv_iommu_context_get(context);
> +
I have seen this pattern now more than two times - maybe put the
assignment of a new mmu context into its own function?
> gpu_write(gpu, VIVS_MMUv2_PTA_ADDRESS_LOW,
> lower_32_bits(context->global->v2.pta_dma));
> gpu_write(gpu, VIVS_MMUv2_PTA_ADDRESS_HIGH,
> --
> 2.30.2
>
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
kvfree(etnaviv_obj->pages);
> + kvfree(etnaviv_obj->pages);
>
> drm_prime_gem_destroy(_obj->base, etnaviv_obj->sgt);
> }
> --
> 2.31.0
>
Thanks for the patch, but there is an other one queued up in
etnaviv/next that fixes the same issue:
https://git.pengutronix.de/cgit/lst/linux/
2.31.0
>
Thanks for the patch, but there is an other one queued up in
etnaviv/next that fixes the same issue:
https://git.pengutronix.de/cgit/lst/linux/commit/?h=etnaviv/next=bdf622e0fade2cec72c948c708763378b656c01d
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
Am Di., 1. Juni 2021 um 16:06 Uhr schrieb Zheng Yongjun
:
>
> Eliminate the following coccicheck warning:
>
> drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c:84:2-8: WARNING:
> NULL check before some freeing functions is not needed.
>
> Signed-off-by: Zheng Yongjun
Reviewed-
t; is obviously bad.
>
> Rework the linear window offset calculation to be based on the command buffer
> physical address, making sure that the command buffer is always mappable.
>
> Signed-off-by: Lucas Stach
Reviewed-by: Christian Gmeiner
> ---
> driver
failures.
>
> Signed-off-by: Tian Tao
> Signed-off-by: Zihao Tang
> Signed-off-by: Jay Fang
Reviewed-by: Christian Gmeiner
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
___
dri-devel mailing lis
eck before some freeing functions is not needed.
>
> Signed-off-by: Qiheng Lin
Reviewed-by: Christian Gmeiner
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https:/
it.c:618:2-8: WARNING: NULL
> check before some freeing functions is not needed.
>
> ./drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c:616:2-8: WARNING: NULL
> check before some freeing functions is not needed.
>
> Reported-by: Abaci Robot
> Signed-off-by: Jiapeng Chong
R
Am Sa., 20. März 2021 um 20:11 Uhr schrieb Daniel Vetter :
>
> On Sat, Mar 20, 2021 at 10:28 AM Christian Gmeiner
> wrote:
> >
> > Hi Lucas
> >
> > Am Fr., 19. März 2021 um 20:06 Uhr schrieb Lucas Stach
> > :
> > >
> > > Vivante TS (til
tional plane for the
> TS buffer and the modifier defines the layout of this TS buffer.
>
I am unsure why you want to have the TS modifiers in drm_fourcc.h. Can
you share some insight on this?
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.
: Lucas Stach
Reviewed-by: Christian Gmeiner
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
+ .minor_features8 = 0x00e10ef3,
> + .minor_features9 = 0x04c8003c,
> + .minor_features10 = 0x4060,
> + .minor_features11 = 0x0024,
> + },
> {
> .model = 0x7000,
> .revision = 0x6214,
Make it possible for the user space to access these ID values.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 12
include/uapi/drm/etnaviv_drm.h| 3 +++
2 files changed, 15 insertions(+)
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c
b
file name is given as an argument. This also removes use of a hardcoded
> file name in a world writable directory, which is an unsafe thing to
> do anyway.
>
> Signed-off-by: Lubomir Rintel
Reviewed-by: Christian Gmeiner
> ---
> tests/etnaviv/etnaviv_2d_test.c | 29 +++
Am Di., 1. Dez. 2020 um 21:38 Uhr schrieb Lubomir Rintel :
>
> Run the test on a core capable of 2D rendering instead of hardcoding to
> core zero.
>
Thanks - I should have done this before landing this test :)
> Signed-off-by: Lubomir Rintel
Reviewed-by: Christian Gmeiner
Am Di., 1. Dez. 2020 um 21:38 Uhr schrieb Lubomir Rintel :
>
> Just so that it's obvious what failed and why.
>
> Signed-off-by: Lubomir Rintel
Reviewed-by: Christian Gmeiner
> ---
> tests/etnaviv/etnaviv_2d_test.c | 16 ++--
> 1 file changed, 14 inser
Hi Lucas,
almost one month has passed since I sent this little patch series - is
there any update on this?
Am Fr., 14. Aug. 2020 um 11:05 Uhr schrieb Christian Gmeiner
:
>
> This little patch set adds support for the total bandwidth used by HI. The
> basic hi bandwidth read-out is qui
;
Uhh.. okay.. just send a V2 - thanks for testing :)
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info/privacypolicy
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
these two registers
on the affected GPU core.
Signed-off-by: Christian Gmeiner
Reported-by: Josua Mayer
Fixes: 815e45bbd4d3 ("drm/etnaviv: determine product, customer and eco id")
Cc: sta...@vger.kernel.org
---
Changelog:
V2:
- use correct register for conditional reads.
---
drive
these two registers
on the affected GPU core.
Signed-off-by: Christian Gmeiner
Reported-by: Josua Mayer
Fixes: 815e45bbd4d3 ("drm/etnaviv: determine product, customer and eco id")
Cc: sta...@vger.kernel.org
---
drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 11 +--
1 file changed, 9
Replace the open coded access pattern with a function call.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_perfmon.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_perfmon.c
b/drivers/gpu/drm/etnaviv/etnaviv_perfmon.c
This little patch set adds support for the total bandwidth used by HI. The
basic hi bandwidth read-out is quite simple but I needed to add some little
clean-ups to make it nice looking.
Christian Gmeiner (4):
drm/etnaviv: rename pipe_reg_read(..)
drm/etnaviv: call perf_reg_read(..)
drm
These two perf counters represent the total read and write
GPU bandwidth in terms of 64bits.
The used sequence was taken from Vivante kernel driver.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_perfmon.c | 35 ++-
1 file changed, 34 insertions(+), 1
pipe_reg_read(..) iterates over all pixel pipes, selects a perf counter
register and sums the actual perf counter value. Rename the function
to reflect more what it is actual doing.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_perfmon.c | 30 +++
1
Replace the open coded pixel pipe selection pattern with a function.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_perfmon.c | 24 +++
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_perfmon.c
b/drivers
Hi Lucas,
Am Fr., 10. Juli 2020 um 10:44 Uhr schrieb Christian Gmeiner
:
>
> Hoi Lucas
>
> Am Fr., 10. Juli 2020 um 10:31 Uhr schrieb Lucas Stach
> :
> >
> > Hi Christian,
> >
> > Am Freitag, den 10.07.2020, 09:41 +0200 schrieb Christian Gmeiner:
> >
Hoi Lucas,
Am Fr., 10. Juli 2020 um 10:19 Uhr schrieb Lucas Stach :
>
> Hi Christian,
>
> Am Freitag, den 10.07.2020, 09:41 +0200 schrieb Christian Gmeiner:
> > The GPU has an idle state register where each bit represents the idle
> > state of a sub-GPU compone
Hoi Lucas
Am Fr., 10. Juli 2020 um 10:31 Uhr schrieb Lucas Stach :
>
> Hi Christian,
>
> Am Freitag, den 10.07.2020, 09:41 +0200 schrieb Christian Gmeiner:
> > This patch series add support for loadavg values for GPU
> > sub-components. I am adding a SMA algorithm as I
Might be helpful to see the loadavg in debugfs.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 12 +++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c
b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c
index
Make it possible to access the sub-GPU component load value from
user space with the perfmon infrastructure.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_perfmon.c | 79 +++
1 file changed, 79 insertions(+)
diff --git a/drivers/gpu/drm/etnaviv
This adds a SMA algorithm inspired by Exponentially weighted moving
average (EWMA) algorithm found in the kernel.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_sma.h | 53 +++
1 file changed, 53 insertions(+)
create mode 100644 drivers/gpu/drm
with a percentage based load of each sub-GPU
component.
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv_drv.c | 14
drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 32 +++
drivers/gpu/drm/etnaviv/etnaviv_gpu.h | 29
3 files changed, 75
This patch series add support for loadavg values for GPU
sub-components. I am adding a SMA algorithm as I was not
really sure if EWMA would be a good fit for this use case.
Christian Gmeiner (4):
drm/etnaviv: add simple moving average (SMA)
drm/etnaviv: add loadavg accounting
drm/etnaviv
at all.
The fix for this off-by-one error is quite simple.
Reported-by: Paul Cercueil
Tested-by: Paul Cercueil
Fixes: ed1dd899baa3 ("drm/etnaviv: rework perfmon query infrastructure")
Cc: sta...@vger.kernel.org
Signed-off-by: Christian Gmeiner
---
drivers/gpu/drm/etnaviv/etnaviv
Hi Lucas,
Am So., 17. Mai 2020 um 14:03 Uhr schrieb Lucas Stach :
>
> Hi Christian,
>
> Am Montag, den 11.05.2020, 14:37 +0200 schrieb Christian Gmeiner:
> > The GC860 has one GPU device which has a 2d and 3d core. In this case
> > we want to expose perfmon in
Am Fr., 15. Mai 2020 um 12:33 Uhr schrieb Lucas Stach :
>
> Am Freitag, den 15.05.2020, 12:27 +0200 schrieb Christian Gmeiner:
> > Am Fr., 15. Mai 2020 um 12:24 Uhr schrieb Lucas Stach
> > :
> > > Am Freitag, den 15.05.2020, 12:12 +0200 schrieb Paul Cer
Am Fr., 15. Mai 2020 um 12:24 Uhr schrieb Lucas Stach :
>
> Am Freitag, den 15.05.2020, 12:12 +0200 schrieb Paul Cercueil:
> > Hi Christian,
> >
> > Le ven. 15 mai 2020 à 12:09, Christian Gmeiner
> > a écrit :
> > > Am Mo., 11. Mai 2020
Hi Paul
Am Fr., 15. Mai 2020 um 12:12 Uhr schrieb Paul Cercueil :
>
> Hi Christian,
>
> Le ven. 15 mai 2020 à 12:09, Christian Gmeiner
> a écrit :
> > Am Mo., 11. Mai 2020 um 14:38 Uhr schrieb Christian Gmeiner
> > :
> >>
> >> The GC860
Am Mo., 11. Mai 2020 um 14:38 Uhr schrieb Christian Gmeiner
:
>
> The GC860 has one GPU device which has a 2d and 3d core. In this case
> we want to expose perfmon information for both cores.
>
> The driver has one array which contains all possible perfmon domains
> with some met
out that it's because pm_domain() returns a pointer outside any
> any of the etnaviv_pm_domains. Unless I'm mistaken, the algorithm in
> pm_domain() is entirely botched when GPU's features match more than one
> domain. This tries to remedy it.
>
> Tested with kmscube with mesa 20 on om
1 - 100 of 441 matches
Mail list logo