Re: [Freedreno] [PATCH] drm/msm: Only enable A6xx LLCC code on A6xx

2021-01-11 Thread Sai Prakash Ranjan
Hi Jordan, On 2021-01-11 21:41, Jordan Crouse wrote: On Mon, Jan 11, 2021 at 09:54:12AM +0530, Sai Prakash Ranjan wrote: Hi Rob, On 2021-01-08 22:16, Rob Clark wrote: >On Fri, Jan 8, 2021 at 6:05 AM Sai Prakash Ranjan > wrote: >> >>On 2021-01-08 19:09, Konrad Dybcio wrote: Konrad, can

Re: [Freedreno] [PATCH 1/2] drm/msm/dp: postpone irq_hpd event during connection pending state

2021-01-11 Thread Stephen Boyd
Quoting Kuogee Hsieh (2021-01-07 12:30:24) > irq_hpd event can only be executed at connected state. Therefore > irq_hpd event should be postponed if it happened at connection > pending state. This patch also make sure both link rate and lane Why does it happen at connection pending state? > are

Re: [Freedreno] [PATCH 2/2] drm/msm/dp: unplug interrupt missed after irq_hpd handler

2021-01-11 Thread Stephen Boyd
Quoting Kuogee Hsieh (2021-01-07 12:30:25) > There is HPD unplug interrupts missed at scenario of an irq_hpd > followed by unplug interrupts with around 10 ms in between. > Since both AUX_SW_RESET and DP_SW_RESET clear pending HPD interrupts, > irq_hpd handler should not issues either aux or sw

Re: [Freedreno] [PATCH v4 1/2] drm/msm: Add speed-bin support to a618 gpu

2021-01-11 Thread Jordan Crouse
On Fri, Jan 08, 2021 at 11:45:30PM +0530, Akhil P Oommen wrote: > Some GPUs support different max frequencies depending on the platform. > To identify the correct variant, we should check the gpu speedbin > fuse value. Add support for this speedbin detection to a6xx family > along with the

Re: [Freedreno] [PATCH] drm/msm: Only enable A6xx LLCC code on A6xx

2021-01-11 Thread Jordan Crouse
On Mon, Jan 11, 2021 at 09:54:12AM +0530, Sai Prakash Ranjan wrote: > Hi Rob, > > On 2021-01-08 22:16, Rob Clark wrote: > >On Fri, Jan 8, 2021 at 6:05 AM Sai Prakash Ranjan > > wrote: > >> > >>On 2021-01-08 19:09, Konrad Dybcio wrote: > Konrad, can you please test this below change without

[Freedreno] [PATCH 2/3] iommu/io-pgtable-arm: Add IOMMU_LLC page protection flag

2021-01-11 Thread Sai Prakash Ranjan
Add a new page protection flag IOMMU_LLC which can be used by non-coherent masters to set cacheable memory attributes for an outer level of cache called as last-level cache or system cache. Initial user of this page protection flag is the adreno gpu and then can later be used by other clients such

[Freedreno] [PATCH 3/3] drm/msm: Use IOMMU_LLC page protection flag to map gpu buffers

2021-01-11 Thread Sai Prakash Ranjan
Use the newly introduced IOMMU_LLC page protection flag to map GPU buffers. This will make sure that proper stage-1 PTE attributes are set for GPU buffers to use system cache. This also introduces MMU_FEATURE_USE_LLC features bit to check for GPUs supporting LLC and set them in the target specific

[Freedreno] [PATCH 1/3] iommu/io-pgtable: Rename last-level cache quirk to IO_PGTABLE_QUIRK_PTW_LLC

2021-01-11 Thread Sai Prakash Ranjan
Rename last-level cache quirk IO_PGTABLE_QUIRK_ARM_OUTER_WBWA to IO_PGTABLE_QUIRK_PTW_LLC which is used to set the required TCR attributes for non-coherent page table walker to be more generic and in sync with the upcoming page protection flag IOMMU_LLC. Signed-off-by: Sai Prakash Ranjan ---

[Freedreno] [PATCH 0/3] iommu/drm/msm: Allow non-coherent masters to use system cache

2021-01-11 Thread Sai Prakash Ranjan
commit ecd7274fb4cd ("iommu: Remove unused IOMMU_SYS_CACHE_ONLY flag") removed unused IOMMU_SYS_CACHE_ONLY prot flag and along with it went the memory type setting required for the non-coherent masters to use system cache. Now that system cache support for GPU is added, we will need to set the

[Freedreno] [PATCH 1/2] drm/msm: Add proper checks for GPU LLCC support

2021-01-11 Thread Sai Prakash Ranjan
Domain attribute setting for LLCC is guarded by !IS_ERR check which works fine only when CONFIG_QCOM_LLCC=y but when it is disabled, the LLCC apis return NULL and that is not handled by IS_ERR check. Due to this, domain attribute for LLCC will be set even on GPUs which do not support it and cause

[Freedreno] [PATCH 2/2] drm/msm/a6xx: Create an A6XX GPU specific address space

2021-01-11 Thread Sai Prakash Ranjan
A6XX GPUs have support for last level cache(LLC) also known as system cache and need to set the bus attributes to use it. Currently we use a generic adreno iommu address space implementation which are also used by older GPU generations which do not have LLC and might introduce issues accidentally

[Freedreno] [PATCH 0/2] drm/msm/a6xx: LLCC related fix and cleanup

2021-01-11 Thread Sai Prakash Ranjan
Patch 1 is a fix to not set the attributes when CONFIG_QCOM_LLCC is disabled and Patch 2 is a cleanup to create an a6xx specific address space. Sai Prakash Ranjan (2): drm/msm: Add proper checks for GPU LLCC support drm/msm/a6xx: Create an A6XX GPU specific address space