Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 62403677 authored by Ken Zhang's avatar Ken Zhang Committed by Gerrit - the friendly Code Review server
Browse files

ARM: dts: msm: 8092: display: add dts file for mdss



Add HW configuration for display controller, MDSS, and HDMI_TX
core for mpq8092. Display controller along with HDMI_TX core is
responsible for driver context to external sinks like TVs,
display monitors etc.

Change-Id: I103a47fb9b9062b1c40ae36413258b69f1340aa3
Signed-off-by: default avatarZohaib Alam <zalam@codeaurora.org>
Signed-off-by: default avatarKalyan Thota <kalyant@codeaurora.org>
parent 001c697e
Loading
Loading
Loading
Loading
+132 −0
Original line number Diff line number Diff line
/* Copyright (c) 2013-2014 The Linux Foundation. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 and
 * only 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.
 */

&soc {
	mdss_mdp: qcom,mdss_mdp@fd900000 {
		compatible = "qcom,mdss_mdp";
		reg = <0xfd900000 0x24000>,
			<0xfd926000 0x1000>;
		reg-names = "mdp_phys", "vbif_phys";
		interrupts = <0 72 0>;
		vdd-supply = <&gdsc_mdss>;

		/* Bus Scale Settings */
		qcom,msm-bus,name = "mdss_mdp";
		qcom,msm-bus,num-cases = <3>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps =
			<22 512 0 0>,
			<22 512 0 6400000>,
			<22 512 0 6400000>;

		/* Fudge factors */
		qcom,mdss-ab-factor = <2 1>;		/* 2 times    */
		qcom,mdss-ib-factor = <6 5>;		/* 1.2 times  */
		qcom,mdss-clk-factor = <105 100>;	/* 1.05 times */

		qcom,max-clk-rate = <340000000>;
		qcom,mdss-pipe-vig-off = <0x00001200 0x00001e00
					       0x00002A00 0x00003600>;
		qcom,mdss-pipe-rgb-off = <0x00004200 0x00004600>;
		qcom,mdss-pipe-vig-fetch-id = <1 4 7 10>;
		qcom,mdss-pipe-rgb-fetch-id = <13 14>;
		qcom,mdss-smp-data = <22 4096>;

		qcom,mdss-pipe-vig-xin-id = <0 1 2 3>;
		qcom,mdss-pipe-rgb-xin-id = <4 5>;

		qcom,mdss-ctl-off = <0x00000600 0x00000700>;
		qcom,mdss-mixer-intf-off = <0x00004a00 0x00004e00>;
		qcom,mdss-mixer-wb-off = <0>;
		qcom,mdss-dspp-off = <0x00005200 0x00005e00>;
		qcom,mdss-wb-off = <0x00011100 0x00013100>;
		qcom,mdss-intf-off = <0x00021100 0x00021300
					   0x00021500 0x00021700>;
		qcom,mdss-pingpong-off = <0x00021b00 0x00021c00>;
		qcom,mdss-has-decimation;

		qcom,vbif-settings = <0x0004 0x00000001>,
				<0x0020 0x00002222>,
				<0x0024 0x00002222>,
				<0x0028 0x00002222>,
				<0x002c 0x00002222>,
				<0x00e4 0x00000000>,
				<0x0124 0x00000003>;

		qcom,mdp-settings = <0x03ac 0xc00000cd>,
				<0x03b4 0xc00000cc>,
				<0x03bc 0x0ccc00cc>,
				<0x04a8 0x00ccc000>,
				<0x04b0 0xc0ccc000>,
				<0x04b8 0xcc000000>;

		/* buffer parameters to calculate prefill bandwidth */
		qcom,mdss-prefill-outstanding-buffer-bytes = <1024>;
		qcom,mdss-prefill-y-buffer-bytes = <0>;
		qcom,mdss-prefill-scaler-buffer-lines-bilinear = <0>;
		qcom,mdss-prefill-scaler-buffer-lines-caf = <0>;
		qcom,mdss-prefill-post-scaler-buffer-pixels = <512>;
		qcom,mdss-prefill-pingpong-buffer-pixels = <4096>;
		qcom,mdss-prefill-fbc-lines = <0>;

		qcom,mdss-pref-prim-intf = "hdmi";

		mdss_fb0: qcom,mdss_fb_primary {
			cell-index = <0>;
			compatible = "qcom,mdss-fb";
			linux,contiguous-region = <&fb_mem>;
		};

		mdss_fb1: qcom,mdss_fb_wfd {
			cell-index = <1>;
			compatible = "qcom,mdss-fb";
		};
	};

	mdss_hdmi_tx: qcom,hdmi_tx@fd924100 {
		cell-index = <0>;
		status = "ok";
		compatible = "qcom,hdmi-tx";
		reg =	<0xfd924100 0x700>,
			<0xfd924500 0x9c>,
			<0xfc4b8000 0x7000>;
		reg-names = "core_physical", "phy_physical", "qfprom_physical";

		hpd-gdsc-supply = <&gdsc_mdss>;
		hpd-5v-supply = <&pma8084_mvs1>;
		core-vdda-supply = <&pma8084_l22>;
		core-vcc-supply = <&pma8084_s4>;
		qcom,supply-names = "hpd-gdsc", "hpd-5v", "core-vdda", "core-vcc";
		qcom,min-voltage-level = <0 0 1800000 1800000>;
		qcom,max-voltage-level = <0 0 1800000 1800000>;
		qcom,enable-load = <0 0 300000 0>;
		qcom,disable-load = <0 0 0 0>;

		qcom,hdmi-tx-cec = <&msmgpio 26 0>;
		qcom,hdmi-tx-ddc-clk = <&msmgpio 24 0>;
		qcom,hdmi-tx-ddc-data = <&msmgpio 27 0>;
		qcom,hdmi-tx-hpd = <&msmgpio 25 0>;
		qcom,mdss-fb-map = <&mdss_fb0>;
		qcom,primary_panel = <1>;
		qcom,msm-hdmi-audio-rx {
			compatible = "qcom,msm-hdmi-audio-codec-rx";
		};
	};

	qcom,mdss_wb_panel {
		compatible = "qcom,mdss_wb";
		qcom,mdss_pan_res = <640 480>;
		qcom,mdss_pan_bpp = <24>;
		qcom,mdss-fb-map = <&mdss_fb1>;
	};

};
+10 −0
Original line number Diff line number Diff line
@@ -51,6 +51,15 @@
	};

	soc: soc { };

	memory {
		fb_mem: fb_region {
			linux,contiguous-region;
			reg = <0 0x1800000>;
			label = "fb_mem";
			linux,memory-limit = <0xffffffff>;
		};
	};
};

#include "mpq8092-iommu.dtsi"
@@ -63,6 +72,7 @@
#include "mpq8092-coresight.dtsi"
#include "mpq8092-bus.dtsi"
#include "mpq8092-pm.dtsi"
#include "mpq8092-mdss.dtsi"

&soc {
	#address-cells = <1>;