Re: [Intel-gfx] [PATCH] drm/i915: Make sure dsm_size has correct granularity

2023-02-03 Thread Das, Nirmoy

Hi Lucas,

On 2/3/2023 7:56 PM, Lucas De Marchi wrote:

On Thu, Feb 02, 2023 at 07:02:43PM +0100, Nirmoy Das wrote:

DSM granularity is 1MB so make sure we stick to that.


I think we need to be a bit more verbose here, because in future we may
need to refer to this commit if/when things change (e.g. the granularity
or the additional size needed on top of DSM).

The issue this is fixing is that the address set by firmware in 
GEN12_DSMBASE
and read here doesn't mean "anything above it until the of lmem is 
part of DSM".

There may be a few KB that is not part of DSM. How large is that space
is platform-dependent, but since it's always less than the DSM
granularity, it can be simplified by simply aligning the size like
is done here.



v2: replace "1 * SZ_1M" with SZ_1M (Andrzej).

Cc: Matthew Auld 
Suggested-by: Lucas De Marchi 
Signed-off-by: Nirmoy Das 
Reviewed-by: Andrzej Hajda 



Reviewed-by: Lucas De Marchi 

Are you ok with me amending the commit message and applying?



Yes, I fine that, thanks for doing that. I agree this is very short 
description that I have wrote.





After this patch I think you can follow the process to request committer
access.



Looking for to doing that :)


Nirmoy



Lucas De Marchi


---
drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c 
b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c

index 90a967374b1a..d8e06e783e30 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
@@ -909,7 +909,7 @@ i915_gem_stolen_lmem_setup(struct 
drm_i915_private *i915, u16 type,
    dsm_base = intel_uncore_read64(uncore, GEN12_DSMBASE) & 
GEN12_BDSM_MASK;

    if (WARN_ON(lmem_size < dsm_base))
    return ERR_PTR(-ENODEV);
-    dsm_size = lmem_size - dsm_base;
+    dsm_size = ALIGN_DOWN(lmem_size - dsm_base, SZ_1M);
}

io_size = dsm_size;
--
2.39.0



Re: [Intel-gfx] [PATCH] drm/i915: Make sure dsm_size has correct granularity

2023-02-03 Thread Lucas De Marchi

On Thu, Feb 02, 2023 at 07:02:43PM +0100, Nirmoy Das wrote:

DSM granularity is 1MB so make sure we stick to that.


I think we need to be a bit more verbose here, because in future we may
need to refer to this commit if/when things change (e.g. the granularity
or the additional size needed on top of DSM).

The issue this is fixing is that the address set by firmware in GEN12_DSMBASE
and read here doesn't mean "anything above it until the of lmem is part of DSM".
There may be a few KB that is not part of DSM. How large is that space
is platform-dependent, but since it's always less than the DSM
granularity, it can be simplified by simply aligning the size like
is done here.



v2: replace "1 * SZ_1M" with SZ_1M (Andrzej).

Cc: Matthew Auld 
Suggested-by: Lucas De Marchi 
Signed-off-by: Nirmoy Das 
Reviewed-by: Andrzej Hajda 



Reviewed-by: Lucas De Marchi 

Are you ok with me amending the commit message and applying?

After this patch I think you can follow the process to request committer
access.

Lucas De Marchi


---
drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c 
b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
index 90a967374b1a..d8e06e783e30 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
@@ -909,7 +909,7 @@ i915_gem_stolen_lmem_setup(struct drm_i915_private *i915, 
u16 type,
dsm_base = intel_uncore_read64(uncore, GEN12_DSMBASE) & 
GEN12_BDSM_MASK;
if (WARN_ON(lmem_size < dsm_base))
return ERR_PTR(-ENODEV);
-   dsm_size = lmem_size - dsm_base;
+   dsm_size = ALIGN_DOWN(lmem_size - dsm_base, SZ_1M);
}

io_size = dsm_size;
--
2.39.0



[Intel-gfx] [PATCH] drm/i915: Make sure dsm_size has correct granularity

2023-02-02 Thread Nirmoy Das
DSM granularity is 1MB so make sure we stick to that.

v2: replace "1 * SZ_1M" with SZ_1M (Andrzej).

Cc: Matthew Auld 
Suggested-by: Lucas De Marchi 
Signed-off-by: Nirmoy Das 
Reviewed-by: Andrzej Hajda 
---
 drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c 
b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
index 90a967374b1a..d8e06e783e30 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
@@ -909,7 +909,7 @@ i915_gem_stolen_lmem_setup(struct drm_i915_private *i915, 
u16 type,
dsm_base = intel_uncore_read64(uncore, GEN12_DSMBASE) & 
GEN12_BDSM_MASK;
if (WARN_ON(lmem_size < dsm_base))
return ERR_PTR(-ENODEV);
-   dsm_size = lmem_size - dsm_base;
+   dsm_size = ALIGN_DOWN(lmem_size - dsm_base, SZ_1M);
}
 
io_size = dsm_size;
-- 
2.39.0



Re: [Intel-gfx] [PATCH] drm/i915: Make sure dsm_size has correct granularity

2023-01-24 Thread Andrzej Hajda

On 24.01.2023 16:00, Nirmoy Das wrote:

DSM granularity is 1MB so make sure we stick to that.

Cc: Matthew Auld 
Suggested-by: Lucas De Marchi 
Signed-off-by: Nirmoy Das 
---
  drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c 
b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
index 90a967374b1a..0c027263f09e 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
@@ -909,7 +909,7 @@ i915_gem_stolen_lmem_setup(struct drm_i915_private *i915, 
u16 type,
dsm_base = intel_uncore_read64(uncore, GEN12_DSMBASE) & 
GEN12_BDSM_MASK;
if (WARN_ON(lmem_size < dsm_base))
return ERR_PTR(-ENODEV);
-   dsm_size = lmem_size - dsm_base;
+   dsm_size = ALIGN_DOWN(lmem_size - dsm_base, 1 * SZ_1M);


1st seen "1 * SZ_1M", usually it is just SZ_1M, up to you.

Reviewed-by: Andrzej Hajda 

Regards
Andrzej


}
  
  	io_size = dsm_size;




[Intel-gfx] [PATCH] drm/i915: Make sure dsm_size has correct granularity

2023-01-24 Thread Nirmoy Das
DSM granularity is 1MB so make sure we stick to that.

Cc: Matthew Auld 
Suggested-by: Lucas De Marchi 
Signed-off-by: Nirmoy Das 
---
 drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c 
b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
index 90a967374b1a..0c027263f09e 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
@@ -909,7 +909,7 @@ i915_gem_stolen_lmem_setup(struct drm_i915_private *i915, 
u16 type,
dsm_base = intel_uncore_read64(uncore, GEN12_DSMBASE) & 
GEN12_BDSM_MASK;
if (WARN_ON(lmem_size < dsm_base))
return ERR_PTR(-ENODEV);
-   dsm_size = lmem_size - dsm_base;
+   dsm_size = ALIGN_DOWN(lmem_size - dsm_base, 1 * SZ_1M);
}
 
io_size = dsm_size;
-- 
2.39.0