All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support
@ 2020-12-30 15:51 Iskren Chernev
  2020-12-30 15:51 ` [PATCH 2/4] ARM: dts: qcom: msm8974-klte: add support for GPU Iskren Chernev
                   ` (5 more replies)
  0 siblings, 6 replies; 13+ messages in thread
From: Iskren Chernev @ 2020-12-30 15:51 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Andy Gross, Rob Herring, linux-arm-msm, devicetree, linux-kernel,
	Iskren Chernev, ~postmarketos/upstreaming, Brian Masney

From: Brian Masney <masneyb@onstation.org>

Add support for the a3xx GPU

Signed-off-by: Brian Masney <masneyb@onstation.org>
---
 arch/arm/boot/dts/qcom-msm8974.dtsi | 45 +++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
index 51f5f904f9eb9..c399446d8154e 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -1399,6 +1399,51 @@ cnoc: interconnect@fc480000 {
 			         <&rpmcc RPM_SMD_CNOC_A_CLK>;
 		};
 
+		gpu_opp_table: opp_table {
+			status = "disabled";
+
+			compatible = "operating-points-v2";
+
+			opp-800000000 {
+				opp-hz = /bits/ 64 <800000000>;
+			};
+
+			opp-500000000 {
+				opp-hz = /bits/ 64 <500000000>;
+			};
+
+			opp-275000000 {
+				opp-hz = /bits/ 64 <275000000>;
+			};
+		};
+
+		gpu: adreno@fdb00000 {
+			status = "disabled";
+
+			compatible = "qcom,adreno-330.2",
+			             "qcom,adreno";
+			reg = <0xfdb00000 0x10000>;
+			reg-names = "kgsl_3d0_reg_memory";
+			interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
+			interrupt-names = "kgsl_3d0_irq";
+			clock-names = "core",
+			              "iface",
+			              "mem_iface";
+			clocks = <&mmcc OXILI_GFX3D_CLK>,
+			         <&mmcc OXILICX_AHB_CLK>,
+			         <&mmcc OXILICX_AXI_CLK>;
+			sram = <&gmu_sram>;
+			power-domains = <&mmcc OXILICX_GDSC>;
+			operating-points-v2 = <&gpu_opp_table>;
+
+			interconnects = <&mmssnoc MNOC_MAS_GRAPHICS_3D &bimc BIMC_SLV_EBI_CH0>,
+			                <&ocmemnoc OCMEM_VNOC_MAS_GFX3D &ocmemnoc OCMEM_SLV_OCMEM>;
+			interconnect-names = "gfx-mem",
+			                     "ocmem";
+
+			// iommus = <&gpu_iommu 0>;
+		};
+
 		mdss: mdss@fd900000 {
 			status = "disabled";
 

base-commit: d7a03a44a5e93f39ece70ec75d25c6088caa0fdb
prerequisite-patch-id: aba6f684932cab35d98457c21e4ff7a5ac75c753
prerequisite-patch-id: 4884d57df1bd197896b69e115d9002d6c26ae2e2
prerequisite-patch-id: 4f1aba3c3675236b18578eedbe71b0cdca01ed77
prerequisite-patch-id: cbfe6ccfebb142370baff15bbdf3cf2f34ee77df
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 2/4] ARM: dts: qcom: msm8974-klte: add support for GPU
  2020-12-30 15:51 [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support Iskren Chernev
@ 2020-12-30 15:51 ` Iskren Chernev
  2020-12-30 15:51 ` [PATCH 3/4] ARM: dts: qcom: msm8974-klte: add support for display Iskren Chernev
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 13+ messages in thread
From: Iskren Chernev @ 2020-12-30 15:51 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Andy Gross, Rob Herring, linux-arm-msm, devicetree, linux-kernel,
	Iskren Chernev, ~postmarketos/upstreaming, Samuel Pascua

From: Samuel Pascua <pascua.samuel.14@gmail.com>

Signed-off-by: Samuel Pascua <pascua.samuel.14@gmail.com>
---
 arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts b/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
index 97352de913142..1d5e8abdbda79 100644
--- a/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
+++ b/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
@@ -697,6 +697,14 @@ fuelgauge@36 {
 			pinctrl-0 = <&fuelgauge_pin>;
 		};
 	};
+
+	opp_table {
+		status = "ok";
+	};
+
+	adreno@fdb00000 {
+		status = "ok";
+	};
 };
 
 &spmi_bus {
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 3/4] ARM: dts: qcom: msm8974-klte: add support for display
  2020-12-30 15:51 [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support Iskren Chernev
  2020-12-30 15:51 ` [PATCH 2/4] ARM: dts: qcom: msm8974-klte: add support for GPU Iskren Chernev
@ 2020-12-30 15:51 ` Iskren Chernev
  2020-12-30 15:51 ` [PATCH 4/4] ARM: dts: qcom: msm8974-klte: Mark essential regulators Iskren Chernev
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 13+ messages in thread
From: Iskren Chernev @ 2020-12-30 15:51 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Andy Gross, Rob Herring, linux-arm-msm, devicetree, linux-kernel,
	Iskren Chernev, ~postmarketos/upstreaming, Samuel Pascua

From: Samuel Pascua <pascua.samuel.14@gmail.com>

Add initial support for the display found on the Samsung Galaxy 5 (klte)
phone. This is based on work from Jonathan Marek & Brian Masney.

Please note that this patch depends on dt-binding patch in [1]

[1] https://lkml.org/lkml/2020/12/30/293

Signed-off-by: Samuel Pascua <pascua.samuel.14@gmail.com>
---
 .../boot/dts/qcom-msm8974-samsung-klte.dts    | 58 +++++++++++++++++++
 1 file changed, 58 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts b/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
index 1d5e8abdbda79..8b7e95b748e39 100644
--- a/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
+++ b/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
@@ -453,6 +453,16 @@ int {
 				bias-pull-down;
 			};
 		};
+
+		panel_pin: panel {
+			te {
+				pins = "gpio12";
+				function = "mdp_vsync";
+
+				drive-strength = <2>;
+				bias-disable;
+			};
+		};
 	};
 
 	sdhc_1: sdhci@f9824900 {
@@ -705,6 +715,54 @@ opp_table {
 	adreno@fdb00000 {
 		status = "ok";
 	};
+
+	mdss@fd900000 {
+		status = "ok";
+
+		mdp@fd900000 {
+			status = "ok";
+		};
+
+		dsi@fd922800 {
+			status = "ok";
+
+			vdda-supply = <&pma8084_l2>;
+			vdd-supply = <&pma8084_l22>;
+			vddio-supply = <&pma8084_l12>;
+
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			ports {
+				port@1 {
+					endpoint {
+						remote-endpoint = <&panel_in>;
+						data-lanes = <0 1 2 3>;
+					};
+				};
+			};
+
+			panel: panel@0 {
+				reg = <0>;
+				compatible = "samsung,s6e3fa2";
+
+				pinctrl-names = "default";
+				pinctrl-0 = <&panel_pin>;
+
+				port {
+					panel_in: endpoint {
+						remote-endpoint = <&dsi0_out>;
+					};
+				};
+			};
+		};
+
+		dsi-phy@fd922a00 {
+			status = "ok";
+
+			vddio-supply = <&pma8084_l12>;
+		};
+	};
 };
 
 &spmi_bus {
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 4/4] ARM: dts: qcom: msm8974-klte: Mark essential regulators
  2020-12-30 15:51 [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support Iskren Chernev
  2020-12-30 15:51 ` [PATCH 2/4] ARM: dts: qcom: msm8974-klte: add support for GPU Iskren Chernev
  2020-12-30 15:51 ` [PATCH 3/4] ARM: dts: qcom: msm8974-klte: add support for display Iskren Chernev
@ 2020-12-30 15:51 ` Iskren Chernev
  2021-01-03  5:59   ` Alexey Minnekhanov
  2020-12-30 22:27 ` [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support Brian Masney
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 13+ messages in thread
From: Iskren Chernev @ 2020-12-30 15:51 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Andy Gross, Rob Herring, linux-arm-msm, devicetree, linux-kernel,
	Iskren Chernev, ~postmarketos/upstreaming

s1 and l12 regulators are used for the memory and cache on the Samsung
S5 (klte). If they are turned off the phone shuts down. So mark them as
always-on to prevent that from happening.

Signed-off-by: Iskren Chernev <iskren.chernev@gmail.com>
---
 arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts b/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
index 8b7e95b748e39..7291b858c2c53 100644
--- a/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
+++ b/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
@@ -30,6 +30,7 @@ pma8084-regulators {
 					pma8084_s1: s1 {
 						regulator-min-microvolt = <675000>;
 						regulator-max-microvolt = <1050000>;
+						regulator-always-on;
 					};
 
 					pma8084_s2: s2 {
@@ -115,6 +116,7 @@ pma8084_l11: l11 {
 					pma8084_l12: l12 {
 						regulator-min-microvolt = <1800000>;
 						regulator-max-microvolt = <1800000>;
+						regulator-always-on;
 					};
 
 					pma8084_l13: l13 {
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support
  2020-12-30 15:51 [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support Iskren Chernev
                   ` (2 preceding siblings ...)
  2020-12-30 15:51 ` [PATCH 4/4] ARM: dts: qcom: msm8974-klte: Mark essential regulators Iskren Chernev
@ 2020-12-30 22:27 ` Brian Masney
  2021-01-03  6:16 ` Alexey Minnekhanov
  2021-01-22 18:33 ` Bjorn Andersson
  5 siblings, 0 replies; 13+ messages in thread
From: Brian Masney @ 2020-12-30 22:27 UTC (permalink / raw)
  To: Iskren Chernev
  Cc: Bjorn Andersson, Andy Gross, Rob Herring, linux-arm-msm,
	devicetree, linux-kernel, ~postmarketos/upstreaming

On Wed, Dec 30, 2020 at 05:51:29PM +0200, Iskren Chernev wrote:
> From: Brian Masney <masneyb@onstation.org>
> 
> Add support for the a3xx GPU
> 
> Signed-off-by: Brian Masney <masneyb@onstation.org>

Reviewed-by: Brian Masney <masneyb@onstation.org>


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 4/4] ARM: dts: qcom: msm8974-klte: Mark essential regulators
  2020-12-30 15:51 ` [PATCH 4/4] ARM: dts: qcom: msm8974-klte: Mark essential regulators Iskren Chernev
@ 2021-01-03  5:59   ` Alexey Minnekhanov
  0 siblings, 0 replies; 13+ messages in thread
From: Alexey Minnekhanov @ 2021-01-03  5:59 UTC (permalink / raw)
  To: Iskren Chernev, Bjorn Andersson
  Cc: Andy Gross, Rob Herring, linux-arm-msm, devicetree, linux-kernel,
	~postmarketos/upstreaming

This indeed fixes device freeze+reboot issue when display powers off.

Tested-by: Alexey Minnekhanov <alexeymin@postmarketos.org>

On 12/30/20 6:51 PM, Iskren Chernev wrote:
> s1 and l12 regulators are used for the memory and cache on the Samsung
> S5 (klte). If they are turned off the phone shuts down. So mark them as
> always-on to prevent that from happening.
> 
> Signed-off-by: Iskren Chernev <iskren.chernev@gmail.com>
> ---
>   arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts | 2 ++
>   1 file changed, 2 insertions(+)
> 

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support
  2020-12-30 15:51 [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support Iskren Chernev
                   ` (3 preceding siblings ...)
  2020-12-30 22:27 ` [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support Brian Masney
@ 2021-01-03  6:16 ` Alexey Minnekhanov
  2021-01-22 18:33 ` Bjorn Andersson
  5 siblings, 0 replies; 13+ messages in thread
From: Alexey Minnekhanov @ 2021-01-03  6:16 UTC (permalink / raw)
  To: Iskren Chernev, Bjorn Andersson
  Cc: Andy Gross, Rob Herring, linux-arm-msm, devicetree, linux-kernel,
	~postmarketos/upstreaming, Brian Masney

Tested these patches on Samsung Galaxy S5 along with other patches that 
add panel driver and enable vram carve-out option on this device.

Tested-by: Alexey Minnekhanov <alexeymin@postmarketos.org>

On 12/30/20 6:51 PM, Iskren Chernev wrote:
> From: Brian Masney <masneyb@onstation.org>
> 
> Add support for the a3xx GPU
> 
> Signed-off-by: Brian Masney <masneyb@onstation.org>
> ---
>   arch/arm/boot/dts/qcom-msm8974.dtsi | 45 +++++++++++++++++++++++++++++
>   1 file changed, 45 insertions(+)
> 

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support
  2020-12-30 15:51 [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support Iskren Chernev
                   ` (4 preceding siblings ...)
  2021-01-03  6:16 ` Alexey Minnekhanov
@ 2021-01-22 18:33 ` Bjorn Andersson
  5 siblings, 0 replies; 13+ messages in thread
From: Bjorn Andersson @ 2021-01-22 18:33 UTC (permalink / raw)
  To: Iskren Chernev
  Cc: Andy Gross, Rob Herring, linux-arm-msm, devicetree, linux-kernel,
	~postmarketos/upstreaming, Brian Masney

On Wed 30 Dec 09:51 CST 2020, Iskren Chernev wrote:

> From: Brian Masney <masneyb@onstation.org>
> 
> Add support for the a3xx GPU
> 
> Signed-off-by: Brian Masney <masneyb@onstation.org>

As discussed on IRC I'm waiting for a respin of this with your S-o-b
added after Brian's.

Thanks,
Bjorn

> ---
>  arch/arm/boot/dts/qcom-msm8974.dtsi | 45 +++++++++++++++++++++++++++++
>  1 file changed, 45 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
> index 51f5f904f9eb9..c399446d8154e 100644
> --- a/arch/arm/boot/dts/qcom-msm8974.dtsi
> +++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
> @@ -1399,6 +1399,51 @@ cnoc: interconnect@fc480000 {
>  			         <&rpmcc RPM_SMD_CNOC_A_CLK>;
>  		};
>  
> +		gpu_opp_table: opp_table {
> +			status = "disabled";
> +
> +			compatible = "operating-points-v2";
> +
> +			opp-800000000 {
> +				opp-hz = /bits/ 64 <800000000>;
> +			};
> +
> +			opp-500000000 {
> +				opp-hz = /bits/ 64 <500000000>;
> +			};
> +
> +			opp-275000000 {
> +				opp-hz = /bits/ 64 <275000000>;
> +			};
> +		};
> +
> +		gpu: adreno@fdb00000 {
> +			status = "disabled";
> +
> +			compatible = "qcom,adreno-330.2",
> +			             "qcom,adreno";
> +			reg = <0xfdb00000 0x10000>;
> +			reg-names = "kgsl_3d0_reg_memory";
> +			interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
> +			interrupt-names = "kgsl_3d0_irq";
> +			clock-names = "core",
> +			              "iface",
> +			              "mem_iface";
> +			clocks = <&mmcc OXILI_GFX3D_CLK>,
> +			         <&mmcc OXILICX_AHB_CLK>,
> +			         <&mmcc OXILICX_AXI_CLK>;
> +			sram = <&gmu_sram>;
> +			power-domains = <&mmcc OXILICX_GDSC>;
> +			operating-points-v2 = <&gpu_opp_table>;
> +
> +			interconnects = <&mmssnoc MNOC_MAS_GRAPHICS_3D &bimc BIMC_SLV_EBI_CH0>,
> +			                <&ocmemnoc OCMEM_VNOC_MAS_GFX3D &ocmemnoc OCMEM_SLV_OCMEM>;
> +			interconnect-names = "gfx-mem",
> +			                     "ocmem";
> +
> +			// iommus = <&gpu_iommu 0>;
> +		};
> +
>  		mdss: mdss@fd900000 {
>  			status = "disabled";
>  
> 
> base-commit: d7a03a44a5e93f39ece70ec75d25c6088caa0fdb
> prerequisite-patch-id: aba6f684932cab35d98457c21e4ff7a5ac75c753
> prerequisite-patch-id: 4884d57df1bd197896b69e115d9002d6c26ae2e2
> prerequisite-patch-id: 4f1aba3c3675236b18578eedbe71b0cdca01ed77
> prerequisite-patch-id: cbfe6ccfebb142370baff15bbdf3cf2f34ee77df
> -- 
> 2.29.2
> 

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support
  2021-01-24 21:05 ` Pavel Machek
@ 2021-01-25 13:03   ` Iskren Chernev
  0 siblings, 0 replies; 13+ messages in thread
From: Iskren Chernev @ 2021-01-25 13:03 UTC (permalink / raw)
  To: Pavel Machek
  Cc: Bjorn Andersson, Andy Gross, Rob Herring, linux-arm-msm,
	devicetree, linux-kernel, ~postmarketos/upstreaming,
	Samuel Pascua, Alexey Minnekhanov, Brian Masney, phone-devel



On 1/24/21 11:05 PM, Pavel Machek wrote:
> On Sun 2021-01-24 15:56:07, Iskren Chernev wrote:
>> From: Brian Masney <masneyb@onstation.org>
>>
>> Add support for the a3xx GPU
> 
> This is phone, right? Can I ask phone-devel@vger.kernel.org to be
> cc-ed?

CC-ing phone-devel@vger.kernel.org.

I'm not sure why you didn't do it :-/

>
> Thank you,
> 							Pavel
> 							
>

Regards,
Iskren

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support
  2021-01-24 14:56 ` Konrad Dybcio
@ 2021-01-25  0:09   ` Brian Masney
  0 siblings, 0 replies; 13+ messages in thread
From: Brian Masney @ 2021-01-25  0:09 UTC (permalink / raw)
  To: Konrad Dybcio, Iskren Chernev
  Cc: Bjorn Andersson, Andy Gross, Rob Herring, linux-arm-msm,
	devicetree, linux-kernel, ~postmarketos/upstreaming,
	Samuel Pascua, Alexey Minnekhanov

On Sun, Jan 24, 2021 at 03:56:06PM +0100, Konrad Dybcio wrote:
> Hi,
> 
> 
> > +		gpu_opp_table: opp_table {
> > +			status = "disabled";
> 
> 
> Is there a good reason to disable this?
> 
> 
> > +			opp-800000000 {
> > +				opp-hz = /bits/ 64 <800000000>;
> > +			};
> 
> No. A330 can't go lightspeed (unless there's some secret ultra-binned msm8974pro-v4-ad-5g). [1]

Hi Iskren,

I believe that the Nexus 5 GPU frequencies are documented in the
downstream kernel at:
https://github.com/AICP/kernel_lge_hammerhead/blob/n7.1/arch/arm/boot/dts/msm8974-gpu.dtsi#L67

I am fairly certain that the qcom,bus-freq property is an index into the
qcom,msm-bus,vectors-KBps property above. This will map to the
interconnect and operating points in the upstream kernel.

Note that the actual implementation in a3xx_gpu.c and a4xx_gpu.c
currently has this snippet to set the bus speed:

    /*
     * Set the ICC path to maximum speed for now by multiplying the fastest
     * frequency by the bus width (8). We'll want to scale this later on to
     * improve battery life.
     */
    icc_set_bw(icc_path, 0, Bps_to_icc(gpu->fast_rate) * 8);
    icc_set_bw(ocmem_icc_path, 0, Bps_to_icc(gpu->fast_rate) * 8);

This should be fine for the time being. You'll want to document it
correctly in device tree though.

If the v2 changes too much, then feel free to drop my name from the
patch. I thought that I had made these changes already but apparently
not. :/

Brian

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support
  2021-01-24 13:56 Iskren Chernev
  2021-01-24 14:56 ` Konrad Dybcio
@ 2021-01-24 21:05 ` Pavel Machek
  2021-01-25 13:03   ` Iskren Chernev
  1 sibling, 1 reply; 13+ messages in thread
From: Pavel Machek @ 2021-01-24 21:05 UTC (permalink / raw)
  To: Iskren Chernev
  Cc: Bjorn Andersson, Andy Gross, Rob Herring, linux-arm-msm,
	devicetree, linux-kernel, ~postmarketos/upstreaming,
	Samuel Pascua, Alexey Minnekhanov, Brian Masney

[-- Attachment #1: Type: text/plain, Size: 293 bytes --]

On Sun 2021-01-24 15:56:07, Iskren Chernev wrote:
> From: Brian Masney <masneyb@onstation.org>
> 
> Add support for the a3xx GPU

This is phone, right? Can I ask phone-devel@vger.kernel.org to be
cc-ed?

Thank you,
							Pavel
							
-- 
http://www.livejournal.com/~pavelmachek

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support
  2021-01-24 13:56 Iskren Chernev
@ 2021-01-24 14:56 ` Konrad Dybcio
  2021-01-25  0:09   ` Brian Masney
  2021-01-24 21:05 ` Pavel Machek
  1 sibling, 1 reply; 13+ messages in thread
From: Konrad Dybcio @ 2021-01-24 14:56 UTC (permalink / raw)
  To: Iskren Chernev, Bjorn Andersson
  Cc: Andy Gross, Rob Herring, linux-arm-msm, devicetree, linux-kernel,
	~postmarketos/upstreaming, Samuel Pascua, Alexey Minnekhanov,
	Brian Masney

Hi,


> +		gpu_opp_table: opp_table {
> +			status = "disabled";


Is there a good reason to disable this?


> +			opp-800000000 {
> +				opp-hz = /bits/ 64 <800000000>;
> +			};

No. A330 can't go lightspeed (unless there's some secret ultra-binned msm8974pro-v4-ad-5g). [1]


> +
> +			opp-500000000 {
> +				opp-hz = /bits/ 64 <500000000>;
> +			};
> +
> +			opp-275000000 {
> +				opp-hz = /bits/ 64 <275000000>;
> +			};
> +		};

IMHO we should create separate DTs for all revisions of 8974 (sigh) and keep the opp tables in there, only leaving a lowest-common-denominator one here (which according to downstream and the msm/drm driver would be 27000000 /27MHz/) to make it at least probe for everybody..


On a note, max GPU frequencies (based on [1] and grepping for gpu-pwrlevels or qcom,gpu-freq downstream) are:


* 578 MHz for PRO (so -AC)

* 550 MHz is mentioned in [1] but not downstream..

* 450 MHz for everything else (v2.2 has more DVFS steps)


> +			// iommus = <&gpu_iommu 0>;

I *think* you're going to need more gpu contexts (user/priv/spare), but don't quote me on that.


Konrad


[1] https://www.anandtech.com/show/7846/the-difference-between-snapdragon-800-and-801-clearing-up-confusion


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support
@ 2021-01-24 13:56 Iskren Chernev
  2021-01-24 14:56 ` Konrad Dybcio
  2021-01-24 21:05 ` Pavel Machek
  0 siblings, 2 replies; 13+ messages in thread
From: Iskren Chernev @ 2021-01-24 13:56 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Andy Gross, Rob Herring, linux-arm-msm, devicetree, linux-kernel,
	Iskren Chernev, ~postmarketos/upstreaming, Samuel Pascua,
	Alexey Minnekhanov, Brian Masney

From: Brian Masney <masneyb@onstation.org>

Add support for the a3xx GPU

Signed-off-by: Brian Masney <masneyb@onstation.org>
Signed-off-by: Iskren Chernev <iskren.chernev@gmail.com>
Tested-by: Alexey Minnekhanov <alexeymin@postmarketos.org>
Reviewed-by: Brian Masney <masneyb@onstation.org>
---
Changes in v2:
- base set to next-20210122
- add tags from v1 replies
- add Signed-off-by: me on first three patches
- add commit message to 2nd patch

v1: https://lkml.org/lkml/2020/12/30/322

 arch/arm/boot/dts/qcom-msm8974.dtsi | 45 +++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
index 51f5f904f9eb9..c399446d8154e 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -1399,6 +1399,51 @@ cnoc: interconnect@fc480000 {
 			         <&rpmcc RPM_SMD_CNOC_A_CLK>;
 		};
 
+		gpu_opp_table: opp_table {
+			status = "disabled";
+
+			compatible = "operating-points-v2";
+
+			opp-800000000 {
+				opp-hz = /bits/ 64 <800000000>;
+			};
+
+			opp-500000000 {
+				opp-hz = /bits/ 64 <500000000>;
+			};
+
+			opp-275000000 {
+				opp-hz = /bits/ 64 <275000000>;
+			};
+		};
+
+		gpu: adreno@fdb00000 {
+			status = "disabled";
+
+			compatible = "qcom,adreno-330.2",
+			             "qcom,adreno";
+			reg = <0xfdb00000 0x10000>;
+			reg-names = "kgsl_3d0_reg_memory";
+			interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
+			interrupt-names = "kgsl_3d0_irq";
+			clock-names = "core",
+			              "iface",
+			              "mem_iface";
+			clocks = <&mmcc OXILI_GFX3D_CLK>,
+			         <&mmcc OXILICX_AHB_CLK>,
+			         <&mmcc OXILICX_AXI_CLK>;
+			sram = <&gmu_sram>;
+			power-domains = <&mmcc OXILICX_GDSC>;
+			operating-points-v2 = <&gpu_opp_table>;
+
+			interconnects = <&mmssnoc MNOC_MAS_GRAPHICS_3D &bimc BIMC_SLV_EBI_CH0>,
+			                <&ocmemnoc OCMEM_VNOC_MAS_GFX3D &ocmemnoc OCMEM_SLV_OCMEM>;
+			interconnect-names = "gfx-mem",
+			                     "ocmem";
+
+			// iommus = <&gpu_iommu 0>;
+		};
+
 		mdss: mdss@fd900000 {
 			status = "disabled";
 

base-commit: 226871e2eda4832d94c3239add7e52ad17b81ce5
-- 
2.30.0


^ permalink raw reply related	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2021-01-26 20:17 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-30 15:51 [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support Iskren Chernev
2020-12-30 15:51 ` [PATCH 2/4] ARM: dts: qcom: msm8974-klte: add support for GPU Iskren Chernev
2020-12-30 15:51 ` [PATCH 3/4] ARM: dts: qcom: msm8974-klte: add support for display Iskren Chernev
2020-12-30 15:51 ` [PATCH 4/4] ARM: dts: qcom: msm8974-klte: Mark essential regulators Iskren Chernev
2021-01-03  5:59   ` Alexey Minnekhanov
2020-12-30 22:27 ` [PATCH 1/4] ARM: dts: qcom: msm8974: add gpu support Brian Masney
2021-01-03  6:16 ` Alexey Minnekhanov
2021-01-22 18:33 ` Bjorn Andersson
2021-01-24 13:56 Iskren Chernev
2021-01-24 14:56 ` Konrad Dybcio
2021-01-25  0:09   ` Brian Masney
2021-01-24 21:05 ` Pavel Machek
2021-01-25 13:03   ` Iskren Chernev

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.