This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM5728: Unable to set clock from DTS

Part Number: AM5728
Other Parts Discussed in Thread: TLV320AIC3262,

Hi,

We are using AM5728 based custom board which has TLV320AIC3262 Audiocodec device connected to  the  MCASP3  interface on the host. I am attaching the two DTS flles in .txt format.

/*
 * Device Tree Source for DRA7xx clock data
 *
 * Copyright (C) 2013 Texas Instruments, Inc.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */
&cm_core_aon_clocks {
	atl_clkin0_ck: atl_clkin0_ck {
		#clock-cells = <0>;
		compatible = "ti,dra7-atl-clock";
		clocks = <&atl_clkctrl DRA7_ATL_CLKCTRL 26>;
	};

	atl_clkin1_ck: atl_clkin1_ck {
		#clock-cells = <0>;
		compatible = "ti,dra7-atl-clock";
		clocks = <&atl_clkctrl DRA7_ATL_CLKCTRL 26>;
	};

	atl_clkin2_ck: atl_clkin2_ck {
		#clock-cells = <0>;
		compatible = "ti,dra7-atl-clock";
		clocks = <&atl_clkctrl DRA7_ATL_CLKCTRL 26>;
	};

	atl_clkin3_ck: atl_clkin3_ck {
		#clock-cells = <0>;
		compatible = "ti,dra7-atl-clock";
		clocks = <&atl_clkctrl DRA7_ATL_CLKCTRL 26>;
	};

	hdmi_clkin_ck: hdmi_clkin_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	mlb_clkin_ck: mlb_clkin_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	mlbp_clkin_ck: mlbp_clkin_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	pciesref_acs_clk_ck: pciesref_acs_clk_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <100000000>;
	};

	ref_clkin0_ck: ref_clkin0_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	ref_clkin1_ck: ref_clkin1_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	ref_clkin2_ck: ref_clkin2_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	ref_clkin3_ck: ref_clkin3_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	rmii_clk_ck: rmii_clk_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	sdvenc_clkin_ck: sdvenc_clkin_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	secure_32k_clk_src_ck: secure_32k_clk_src_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <32768>;
	};

	sys_clk32_crystal_ck: sys_clk32_crystal_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <32768>;
	};

	sys_clk32_pseudo_ck: sys_clk32_pseudo_ck {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&sys_clkin1>;
		clock-mult = <1>;
		clock-div = <610>;
	};

	virt_12000000_ck: virt_12000000_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <12000000>;
	};

	virt_13000000_ck: virt_13000000_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <13000000>;
	};

	virt_16800000_ck: virt_16800000_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <16800000>;
	};

	virt_19200000_ck: virt_19200000_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <19200000>;
	};

	virt_20000000_ck: virt_20000000_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <20000000>;
	};

	virt_26000000_ck: virt_26000000_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <26000000>;
	};

	virt_27000000_ck: virt_27000000_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <27000000>;
	};

	virt_38400000_ck: virt_38400000_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <38400000>;
	};

	sys_clkin2: sys_clkin2 {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <22579200>;
		//clock-frequency = <12288000>;
		//clock-frequency = <22579200>;
		//clock-frequency = <24000000>;
		//clock-frequency = <12000000>;
		//clock-frequency = <12000000>;
		//clock-frequency = <24000000>;
		//clock-frequency = <18000000>;
		//clock-frequency = <10000000>;
	};

	usb_otg_clkin_ck: usb_otg_clkin_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	video1_clkin_ck: video1_clkin_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	video1_m2_clkin_ck: video1_m2_clkin_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	video2_clkin_ck: video2_clkin_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	video2_m2_clkin_ck: video2_m2_clkin_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};

	dpll_abe_ck: dpll_abe_ck@1e0 {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-m4xen-clock";
		clocks = <&abe_dpll_clk_mux>, <&abe_dpll_bypass_clk_mux>;
		reg = <0x01e0>, <0x01e4>, <0x01ec>, <0x01e8>;
		assigned-clocks = <&dpll_abe_ck>;
		assigned-clock-rates = <50000000>;
	};

	dpll_abe_x2_ck: dpll_abe_x2_ck {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-x2-clock";
		clocks = <&dpll_abe_ck>;
	};

	dpll_abe_m2x2_ck: dpll_abe_m2x2_ck@1f0 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_abe_x2_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x01f0>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	abe_clk: abe_clk@108 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_abe_m2x2_ck>;
		ti,max-div = <4>;
		reg = <0x0108>;
		ti,index-power-of-two;
	};

	dpll_abe_m2_ck: dpll_abe_m2_ck@1f0 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_abe_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x01f0>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_abe_m3x2_ck: dpll_abe_m3x2_ck@1f4 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_abe_x2_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x01f4>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_core_byp_mux: dpll_core_byp_mux@12c {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&dpll_abe_m3x2_ck>;
		ti,bit-shift = <23>;
		reg = <0x012c>;
	};

	dpll_core_ck: dpll_core_ck@120 {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-core-clock";
		clocks = <&sys_clkin1>, <&dpll_core_byp_mux>;
		reg = <0x0120>, <0x0124>, <0x012c>, <0x0128>;
	};

	dpll_core_x2_ck: dpll_core_x2_ck {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-x2-clock";
		clocks = <&dpll_core_ck>;
	};

	dpll_core_h12x2_ck: dpll_core_h12x2_ck@13c {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_core_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x013c>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	mpu_dpll_hs_clk_div: mpu_dpll_hs_clk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_core_h12x2_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	dpll_mpu_ck: dpll_mpu_ck@160 {
		#clock-cells = <0>;
		compatible = "ti,omap5-mpu-dpll-clock";
		clocks = <&sys_clkin1>, <&mpu_dpll_hs_clk_div>;
		reg = <0x0160>, <0x0164>, <0x016c>, <0x0168>;
	};

	dpll_mpu_m2_ck: dpll_mpu_m2_ck@170 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_mpu_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x0170>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	mpu_dclk_div: mpu_dclk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_mpu_m2_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	dsp_dpll_hs_clk_div: dsp_dpll_hs_clk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_core_h12x2_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	dpll_dsp_byp_mux: dpll_dsp_byp_mux@240 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&dsp_dpll_hs_clk_div>;
		ti,bit-shift = <23>;
		reg = <0x0240>;
	};

	dpll_dsp_ck: dpll_dsp_ck@234 {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-clock";
		clocks = <&sys_clkin1>, <&dpll_dsp_byp_mux>;
		reg = <0x0234>, <0x0238>, <0x0240>, <0x023c>;
		assigned-clocks = <&dpll_dsp_ck>;
		assigned-clock-rates = <600000000>;
	};

	dpll_dsp_m2_ck: dpll_dsp_m2_ck@244 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_dsp_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x0244>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
		assigned-clocks = <&dpll_dsp_m2_ck>;
		assigned-clock-rates = <600000000>;
	};

	iva_dpll_hs_clk_div: iva_dpll_hs_clk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_core_h12x2_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	dpll_iva_byp_mux: dpll_iva_byp_mux@1ac {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&iva_dpll_hs_clk_div>;
		ti,bit-shift = <23>;
		reg = <0x01ac>;
	};

	dpll_iva_ck: dpll_iva_ck@1a0 {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-clock";
		clocks = <&sys_clkin1>, <&dpll_iva_byp_mux>;
		reg = <0x01a0>, <0x01a4>, <0x01ac>, <0x01a8>;
		assigned-clocks = <&dpll_iva_ck>;
		assigned-clock-rates = <1165000000>;
	};

	dpll_iva_m2_ck: dpll_iva_m2_ck@1b0 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_iva_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x01b0>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
		assigned-clocks = <&dpll_iva_m2_ck>;
		assigned-clock-rates = <388333334>;
	};

	iva_dclk: iva_dclk {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_iva_m2_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	dpll_gpu_byp_mux: dpll_gpu_byp_mux@2e4 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&dpll_abe_m3x2_ck>;
		ti,bit-shift = <23>;
		reg = <0x02e4>;
	};

	dpll_gpu_ck: dpll_gpu_ck@2d8 {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-clock";
		clocks = <&sys_clkin1>, <&dpll_gpu_byp_mux>;
		reg = <0x02d8>, <0x02dc>, <0x02e4>, <0x02e0>;
		assigned-clocks = <&dpll_gpu_ck>;
		assigned-clock-rates = <1277000000>;
	};

	dpll_gpu_m2_ck: dpll_gpu_m2_ck@2e8 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_gpu_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x02e8>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
		assigned-clocks = <&dpll_gpu_m2_ck>;
		assigned-clock-rates = <425666667>;
	};

	dpll_core_m2_ck: dpll_core_m2_ck@130 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_core_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x0130>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	core_dpll_out_dclk_div: core_dpll_out_dclk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_core_m2_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	dpll_ddr_byp_mux: dpll_ddr_byp_mux@21c {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&dpll_abe_m3x2_ck>;
		ti,bit-shift = <23>;
		reg = <0x021c>;
	};

	dpll_ddr_ck: dpll_ddr_ck@210 {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-clock";
		clocks = <&sys_clkin1>, <&dpll_ddr_byp_mux>;
		reg = <0x0210>, <0x0214>, <0x021c>, <0x0218>;
	};

	dpll_ddr_m2_ck: dpll_ddr_m2_ck@220 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_ddr_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x0220>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_gmac_byp_mux: dpll_gmac_byp_mux@2b4 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&dpll_abe_m3x2_ck>;
		ti,bit-shift = <23>;
		reg = <0x02b4>;
	};

	dpll_gmac_ck: dpll_gmac_ck@2a8 {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-clock";
		clocks = <&sys_clkin1>, <&dpll_gmac_byp_mux>;
		reg = <0x02a8>, <0x02ac>, <0x02b4>, <0x02b0>;
	};

	dpll_gmac_m2_ck: dpll_gmac_m2_ck@2b8 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_gmac_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x02b8>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	video2_dclk_div: video2_dclk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&video2_m2_clkin_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	video1_dclk_div: video1_dclk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&video1_m2_clkin_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	hdmi_dclk_div: hdmi_dclk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&hdmi_clkin_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	per_dpll_hs_clk_div: per_dpll_hs_clk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_abe_m3x2_ck>;
		clock-mult = <1>;
		clock-div = <2>;
	};

	usb_dpll_hs_clk_div: usb_dpll_hs_clk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_abe_m3x2_ck>;
		clock-mult = <1>;
		clock-div = <3>;
	};

	eve_dpll_hs_clk_div: eve_dpll_hs_clk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_core_h12x2_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	dpll_eve_byp_mux: dpll_eve_byp_mux@290 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&eve_dpll_hs_clk_div>;
		ti,bit-shift = <23>;
		reg = <0x0290>;
	};

	dpll_eve_ck: dpll_eve_ck@284 {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-clock";
		clocks = <&sys_clkin1>, <&dpll_eve_byp_mux>;
		reg = <0x0284>, <0x0288>, <0x0290>, <0x028c>;
	};

	dpll_eve_m2_ck: dpll_eve_m2_ck@294 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_eve_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x0294>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	eve_dclk_div: eve_dclk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_eve_m2_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	dpll_core_h13x2_ck: dpll_core_h13x2_ck@140 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_core_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x0140>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_core_h14x2_ck: dpll_core_h14x2_ck@144 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_core_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x0144>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_core_h22x2_ck: dpll_core_h22x2_ck@154 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_core_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x0154>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_core_h23x2_ck: dpll_core_h23x2_ck@158 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_core_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x0158>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_core_h24x2_ck: dpll_core_h24x2_ck@15c {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_core_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x015c>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_ddr_x2_ck: dpll_ddr_x2_ck {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-x2-clock";
		clocks = <&dpll_ddr_ck>;
	};

	dpll_ddr_h11x2_ck: dpll_ddr_h11x2_ck@228 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_ddr_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x0228>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_dsp_x2_ck: dpll_dsp_x2_ck {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-x2-clock";
		clocks = <&dpll_dsp_ck>;
	};

	dpll_dsp_m3x2_ck: dpll_dsp_m3x2_ck@248 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_dsp_x2_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x0248>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
		assigned-clocks = <&dpll_dsp_m3x2_ck>;
		assigned-clock-rates = <400000000>;
	};

	dpll_gmac_x2_ck: dpll_gmac_x2_ck {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-x2-clock";
		clocks = <&dpll_gmac_ck>;
	};

	dpll_gmac_h11x2_ck: dpll_gmac_h11x2_ck@2c0 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_gmac_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x02c0>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_gmac_h12x2_ck: dpll_gmac_h12x2_ck@2c4 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_gmac_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x02c4>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_gmac_h13x2_ck: dpll_gmac_h13x2_ck@2c8 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_gmac_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x02c8>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_gmac_m3x2_ck: dpll_gmac_m3x2_ck@2bc {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_gmac_x2_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x02bc>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	gmii_m_clk_div: gmii_m_clk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_gmac_h11x2_ck>;
		clock-mult = <1>;
		clock-div = <2>;
	};

	hdmi_clk2_div: hdmi_clk2_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&hdmi_clkin_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	hdmi_div_clk: hdmi_div_clk {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&hdmi_clkin_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	l3_iclk_div: l3_iclk_div@100 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		ti,max-div = <2>;
		ti,bit-shift = <4>;
		reg = <0x0100>;
		clocks = <&dpll_core_h12x2_ck>;
		ti,index-power-of-two;
	};

	l4_root_clk_div: l4_root_clk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&l3_iclk_div>;
		clock-mult = <1>;
		clock-div = <2>;
	};

	video1_clk2_div: video1_clk2_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&video1_clkin_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	video1_div_clk: video1_div_clk {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&video1_clkin_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	video2_clk2_div: video2_clk2_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&video2_clkin_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	video2_div_clk: video2_div_clk {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&video2_clkin_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	dummy_ck: dummy_ck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <0>;
	};
};
&prm_clocks {
	sys_clkin1: sys_clkin1@110 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&virt_12000000_ck>, <&virt_20000000_ck>, <&virt_16800000_ck>, <&virt_19200000_ck>, <&virt_26000000_ck>, <&virt_27000000_ck>, <&virt_38400000_ck>;
		reg = <0x0110>;
		ti,index-starts-at-one;
	};

	abe_dpll_sys_clk_mux: abe_dpll_sys_clk_mux@118 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&sys_clkin2>;
		reg = <0x0118>;
	};

	abe_dpll_bypass_clk_mux: abe_dpll_bypass_clk_mux@114 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&abe_dpll_sys_clk_mux>, <&sys_32k_ck>;
		reg = <0x0114>;
	};

	abe_dpll_clk_mux: abe_dpll_clk_mux@10c {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&abe_dpll_sys_clk_mux>, <&sys_32k_ck>;
		reg = <0x010c>;
	};

	abe_24m_fclk: abe_24m_fclk@11c {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_abe_m2x2_ck>;
		reg = <0x011c>;
		ti,dividers = <8>, <16>;
	};

	aess_fclk: aess_fclk@178 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&abe_clk>;
		reg = <0x0178>;
		ti,max-div = <2>;
	};

	abe_giclk_div: abe_giclk_div@174 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&aess_fclk>;
		reg = <0x0174>;
		ti,max-div = <2>;
	};

	abe_lp_clk_div: abe_lp_clk_div@1d8 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_abe_m2x2_ck>;
		reg = <0x01d8>;
		ti,dividers = <16>, <32>;
	};

	abe_sys_clk_div: abe_sys_clk_div@120 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&sys_clkin1>;
		reg = <0x0120>;
		ti,max-div = <2>;
	};

	adc_gfclk_mux: adc_gfclk_mux@1dc {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&sys_clkin2>, <&sys_32k_ck>;
		reg = <0x01dc>;
	};

	sys_clk1_dclk_div: sys_clk1_dclk_div@1c8 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&sys_clkin1>;
		ti,max-div = <64>;
		reg = <0x01c8>;
		ti,index-power-of-two;
	};

	sys_clk2_dclk_div: sys_clk2_dclk_div@1cc {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&sys_clkin2>;
		ti,max-div = <64>;
		reg = <0x01cc>;
		ti,index-power-of-two;
	};

	per_abe_x1_dclk_div: per_abe_x1_dclk_div@1bc {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_abe_m2_ck>;
		ti,max-div = <64>;
		reg = <0x01bc>;
		ti,index-power-of-two;
	};

	dsp_gclk_div: dsp_gclk_div@18c {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_dsp_m2_ck>;
		ti,max-div = <64>;
		reg = <0x018c>;
		ti,index-power-of-two;
	};

	gpu_dclk: gpu_dclk@1a0 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_gpu_m2_ck>;
		ti,max-div = <64>;
		reg = <0x01a0>;
		ti,index-power-of-two;
	};

	emif_phy_dclk_div: emif_phy_dclk_div@190 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_ddr_m2_ck>;
		ti,max-div = <64>;
		reg = <0x0190>;
		ti,index-power-of-two;
	};

	gmac_250m_dclk_div: gmac_250m_dclk_div@19c {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_gmac_m2_ck>;
		ti,max-div = <64>;
		reg = <0x019c>;
		ti,index-power-of-two;
	};

	gmac_main_clk: gmac_main_clk {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&gmac_250m_dclk_div>;
		clock-mult = <1>;
		clock-div = <2>;
	};

	l3init_480m_dclk_div: l3init_480m_dclk_div@1ac {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_usb_m2_ck>;
		ti,max-div = <64>;
		reg = <0x01ac>;
		ti,index-power-of-two;
	};

	usb_otg_dclk_div: usb_otg_dclk_div@184 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&usb_otg_clkin_ck>;
		ti,max-div = <64>;
		reg = <0x0184>;
		ti,index-power-of-two;
	};

	sata_dclk_div: sata_dclk_div@1c0 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&sys_clkin1>;
		ti,max-div = <64>;
		reg = <0x01c0>;
		ti,index-power-of-two;
	};

	pcie2_dclk_div: pcie2_dclk_div@1b8 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_pcie_ref_m2_ck>;
		ti,max-div = <64>;
		reg = <0x01b8>;
		ti,index-power-of-two;
	};

	pcie_dclk_div: pcie_dclk_div@1b4 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&apll_pcie_m2_ck>;
		ti,max-div = <64>;
		reg = <0x01b4>;
		ti,index-power-of-two;
	};

	emu_dclk_div: emu_dclk_div@194 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&sys_clkin1>;
		ti,max-div = <64>;
		reg = <0x0194>;
		ti,index-power-of-two;
	};

	secure_32k_dclk_div: secure_32k_dclk_div@1c4 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&secure_32k_clk_src_ck>;
		ti,max-div = <64>;
		reg = <0x01c4>;
		ti,index-power-of-two;
	};

	clkoutmux0_clk_mux: clkoutmux0_clk_mux@158 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clk1_dclk_div>, <&sys_clk2_dclk_div>, <&per_abe_x1_dclk_div>, <&mpu_dclk_div>, <&dsp_gclk_div>, <&iva_dclk>, <&gpu_dclk>, <&core_dpll_out_dclk_div>, <&emif_phy_dclk_div>, <&gmac_250m_dclk_div>, <&video2_dclk_div>, <&video1_dclk_div>, <&hdmi_dclk_div>, <&func_96m_aon_dclk_div>, <&l3init_480m_dclk_div>, <&usb_otg_dclk_div>, <&sata_dclk_div>, <&pcie2_dclk_div>, <&pcie_dclk_div>, <&emu_dclk_div>, <&secure_32k_dclk_div>, <&eve_dclk_div>;
		reg = <0x0158>;
	};

	clkoutmux1_clk_mux: clkoutmux1_clk_mux@15c {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clk1_dclk_div>, <&sys_clk2_dclk_div>, <&per_abe_x1_dclk_div>, <&mpu_dclk_div>, <&dsp_gclk_div>, <&iva_dclk>, <&gpu_dclk>, <&core_dpll_out_dclk_div>, <&emif_phy_dclk_div>, <&gmac_250m_dclk_div>, <&video2_dclk_div>, <&video1_dclk_div>, <&hdmi_dclk_div>, <&func_96m_aon_dclk_div>, <&l3init_480m_dclk_div>, <&usb_otg_dclk_div>, <&sata_dclk_div>, <&pcie2_dclk_div>, <&pcie_dclk_div>, <&emu_dclk_div>, <&secure_32k_dclk_div>, <&eve_dclk_div>;
		reg = <0x015c>;
	};

	clkoutmux2_clk_mux: clkoutmux2_clk_mux@160 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clk1_dclk_div>, <&sys_clk2_dclk_div>, <&per_abe_x1_dclk_div>, <&mpu_dclk_div>, <&dsp_gclk_div>, <&iva_dclk>, <&gpu_dclk>, <&core_dpll_out_dclk_div>, <&emif_phy_dclk_div>, <&gmac_250m_dclk_div>, <&video2_dclk_div>, <&video1_dclk_div>, <&hdmi_dclk_div>, <&func_96m_aon_dclk_div>, <&l3init_480m_dclk_div>, <&usb_otg_dclk_div>, <&sata_dclk_div>, <&pcie2_dclk_div>, <&pcie_dclk_div>, <&emu_dclk_div>, <&secure_32k_dclk_div>, <&eve_dclk_div>;
		reg = <0x0160>;
	};

	custefuse_sys_gfclk_div: custefuse_sys_gfclk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&sys_clkin1>;
		clock-mult = <1>;
		clock-div = <2>;
	};

	eve_clk: eve_clk@180 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&dpll_eve_m2_ck>, <&dpll_dsp_m3x2_ck>;
		reg = <0x0180>;
	};

	hdmi_dpll_clk_mux: hdmi_dpll_clk_mux@164 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&sys_clkin2>;
		reg = <0x0164>;
	};

	mlb_clk: mlb_clk@134 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&mlb_clkin_ck>;
		ti,max-div = <64>;
		reg = <0x0134>;
		ti,index-power-of-two;
	};

	mlbp_clk: mlbp_clk@130 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&mlbp_clkin_ck>;
		ti,max-div = <64>;
		reg = <0x0130>;
		ti,index-power-of-two;
	};

	per_abe_x1_gfclk2_div: per_abe_x1_gfclk2_div@138 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_abe_m2_ck>;
		ti,max-div = <64>;
		reg = <0x0138>;
		ti,index-power-of-two;
	};

	timer_sys_clk_div: timer_sys_clk_div@144 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&sys_clkin1>;
		reg = <0x0144>;
		ti,max-div = <2>;
	};

	video1_dpll_clk_mux: video1_dpll_clk_mux@168 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&sys_clkin2>;
		reg = <0x0168>;
	};

	video2_dpll_clk_mux: video2_dpll_clk_mux@16c {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&sys_clkin2>;
		reg = <0x016c>;
	};

	wkupaon_iclk_mux: wkupaon_iclk_mux@108 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&abe_lp_clk_div>;
		reg = <0x0108>;
	};
};

&cm_core_clocks {
	dpll_pcie_ref_ck: dpll_pcie_ref_ck@200 {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-clock";
		clocks = <&sys_clkin1>, <&sys_clkin1>;
		reg = <0x0200>, <0x0204>, <0x020c>, <0x0208>;
	};

	dpll_pcie_ref_m2ldo_ck: dpll_pcie_ref_m2ldo_ck@210 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_pcie_ref_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x0210>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	apll_pcie_in_clk_mux: apll_pcie_in_clk_mux@4ae06118 {
		compatible = "ti,mux-clock";
		clocks = <&dpll_pcie_ref_m2ldo_ck>, <&pciesref_acs_clk_ck>;
		#clock-cells = <0>;
		reg = <0x021c 0x4>;
		ti,bit-shift = <7>;
	};

	apll_pcie_ck: apll_pcie_ck@21c {
		#clock-cells = <0>;
		compatible = "ti,dra7-apll-clock";
		clocks = <&apll_pcie_in_clk_mux>, <&dpll_pcie_ref_ck>;
		reg = <0x021c>, <0x0220>;
	};

	optfclk_pciephy_div: optfclk_pciephy_div@4a00821c {
		compatible = "ti,divider-clock";
		clocks = <&apll_pcie_ck>;
		#clock-cells = <0>;
		reg = <0x021c>;
		ti,dividers = <2>, <1>;
		ti,bit-shift = <8>;
		ti,max-div = <2>;
	};

	apll_pcie_clkvcoldo: apll_pcie_clkvcoldo {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&apll_pcie_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	apll_pcie_clkvcoldo_div: apll_pcie_clkvcoldo_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&apll_pcie_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	apll_pcie_m2_ck: apll_pcie_m2_ck {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&apll_pcie_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	dpll_per_byp_mux: dpll_per_byp_mux@14c {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&per_dpll_hs_clk_div>;
		ti,bit-shift = <23>;
		reg = <0x014c>;
	};

	dpll_per_ck: dpll_per_ck@140 {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-clock";
		clocks = <&sys_clkin1>, <&dpll_per_byp_mux>;
		reg = <0x0140>, <0x0144>, <0x014c>, <0x0148>;
	};

	dpll_per_m2_ck: dpll_per_m2_ck@150 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_per_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x0150>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	func_96m_aon_dclk_div: func_96m_aon_dclk_div {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_per_m2_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	dpll_usb_byp_mux: dpll_usb_byp_mux@18c {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clkin1>, <&usb_dpll_hs_clk_div>;
		ti,bit-shift = <23>;
		reg = <0x018c>;
	};

	dpll_usb_ck: dpll_usb_ck@180 {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-j-type-clock";
		clocks = <&sys_clkin1>, <&dpll_usb_byp_mux>;
		reg = <0x0180>, <0x0184>, <0x018c>, <0x0188>;
	};

	dpll_usb_m2_ck: dpll_usb_m2_ck@190 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_usb_ck>;
		ti,max-div = <127>;
		ti,autoidle-shift = <8>;
		reg = <0x0190>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_pcie_ref_m2_ck: dpll_pcie_ref_m2_ck@210 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_pcie_ref_ck>;
		ti,max-div = <127>;
		ti,autoidle-shift = <8>;
		reg = <0x0210>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_per_x2_ck: dpll_per_x2_ck {
		#clock-cells = <0>;
		compatible = "ti,omap4-dpll-x2-clock";
		clocks = <&dpll_per_ck>;
	};

	dpll_per_h11x2_ck: dpll_per_h11x2_ck@158 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_per_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x0158>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_per_h12x2_ck: dpll_per_h12x2_ck@15c {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_per_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x015c>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_per_h13x2_ck: dpll_per_h13x2_ck@160 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_per_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x0160>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_per_h14x2_ck: dpll_per_h14x2_ck@164 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_per_x2_ck>;
		ti,max-div = <63>;
		ti,autoidle-shift = <8>;
		reg = <0x0164>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_per_m2x2_ck: dpll_per_m2x2_ck@150 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_per_x2_ck>;
		ti,max-div = <31>;
		ti,autoidle-shift = <8>;
		reg = <0x0150>;
		ti,index-starts-at-one;
		ti,invert-autoidle-bit;
	};

	dpll_usb_clkdcoldo: dpll_usb_clkdcoldo {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_usb_ck>;
		clock-mult = <1>;
		clock-div = <1>;
	};

	func_128m_clk: func_128m_clk {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_per_h11x2_ck>;
		clock-mult = <1>;
		clock-div = <2>;
	};

	func_12m_fclk: func_12m_fclk {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_per_m2x2_ck>;
		clock-mult = <1>;
		clock-div = <16>;
	};

	func_24m_clk: func_24m_clk {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_per_m2_ck>;
		clock-mult = <1>;
		clock-div = <4>;
	};

	func_48m_fclk: func_48m_fclk {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_per_m2x2_ck>;
		clock-mult = <1>;
		clock-div = <4>;
	};

	func_96m_fclk: func_96m_fclk {
		#clock-cells = <0>;
		compatible = "fixed-factor-clock";
		clocks = <&dpll_per_m2x2_ck>;
		clock-mult = <1>;
		clock-div = <2>;
	};

	l3init_60m_fclk: l3init_60m_fclk@104 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&dpll_usb_m2_ck>;
		reg = <0x0104>;
		ti,dividers = <1>, <8>;
	};

	clkout2_clk: clkout2_clk@6b0 {
		#clock-cells = <0>;
		compatible = "ti,gate-clock";
		clocks = <&clkoutmux2_clk_mux>;
		ti,bit-shift = <8>;
		reg = <0x06b0>;
	};

	l3init_960m_gfclk: l3init_960m_gfclk@6c0 {
		#clock-cells = <0>;
		compatible = "ti,gate-clock";
		clocks = <&dpll_usb_clkdcoldo>;
		ti,bit-shift = <8>;
		reg = <0x06c0>;
	};

	usb_phy1_always_on_clk32k: usb_phy1_always_on_clk32k@640 {
		#clock-cells = <0>;
		compatible = "ti,gate-clock";
		clocks = <&sys_32k_ck>;
		ti,bit-shift = <8>;
		reg = <0x0640>;
	};

	usb_phy2_always_on_clk32k: usb_phy2_always_on_clk32k@688 {
		#clock-cells = <0>;
		compatible = "ti,gate-clock";
		clocks = <&sys_32k_ck>;
		ti,bit-shift = <8>;
		reg = <0x0688>;
	};

	usb_phy3_always_on_clk32k: usb_phy3_always_on_clk32k@698 {
		#clock-cells = <0>;
		compatible = "ti,gate-clock";
		clocks = <&sys_32k_ck>;
		ti,bit-shift = <8>;
		reg = <0x0698>;
	};

	gpu_core_gclk_mux: gpu_core_gclk_mux@1220 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&dpll_core_h14x2_ck>, <&dpll_per_h14x2_ck>, <&dpll_gpu_m2_ck>;
		ti,bit-shift = <24>;
		reg = <0x1220>;
		assigned-clocks = <&gpu_core_gclk_mux>;
		assigned-clock-parents = <&dpll_gpu_m2_ck>;
	};

	gpu_hyd_gclk_mux: gpu_hyd_gclk_mux@1220 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&dpll_core_h14x2_ck>, <&dpll_per_h14x2_ck>, <&dpll_gpu_m2_ck>;
		ti,bit-shift = <26>;
		reg = <0x1220>;
		assigned-clocks = <&gpu_hyd_gclk_mux>;
		assigned-clock-parents = <&dpll_gpu_m2_ck>;
	};

	l3instr_ts_gclk_div: l3instr_ts_gclk_div@e50 {
		#clock-cells = <0>;
		compatible = "ti,divider-clock";
		clocks = <&wkupaon_iclk_mux>;
		ti,bit-shift = <24>;
		reg = <0x0e50>;
		ti,dividers = <8>, <16>, <32>;
	};

	vip1_gclk_mux: vip1_gclk_mux@1020 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&l3_iclk_div>, <&dpll_core_h23x2_ck>;
		ti,bit-shift = <24>;
		reg = <0x1020>;
	};

	vip2_gclk_mux: vip2_gclk_mux@1028 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&l3_iclk_div>, <&dpll_core_h23x2_ck>;
		ti,bit-shift = <24>;
		reg = <0x1028>;
	};

	vip3_gclk_mux: vip3_gclk_mux@1030 {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&l3_iclk_div>, <&dpll_core_h23x2_ck>;
		ti,bit-shift = <24>;
		reg = <0x1030>;
	};
};

&cm_core_clockdomains {
	coreaon_clkdm: coreaon_clkdm {
		compatible = "ti,clockdomain";
		clocks = <&dpll_usb_ck>;
	};
};

&scm_conf_clocks {
	dss_deshdcp_clk: dss_deshdcp_clk@558 {
		#clock-cells = <0>;
		compatible = "ti,gate-clock";
		clocks = <&l3_iclk_div>;
		ti,bit-shift = <0>;
		reg = <0x558>;
	};

       ehrpwm0_tbclk: ehrpwm0_tbclk@558 {
		#clock-cells = <0>;
		compatible = "ti,gate-clock";
		clocks = <&l4_root_clk_div>;
		ti,bit-shift = <20>;
		reg = <0x0558>;
	};

	ehrpwm1_tbclk: ehrpwm1_tbclk@558 {
		#clock-cells = <0>;
		compatible = "ti,gate-clock";
		clocks = <&l4_root_clk_div>;
		ti,bit-shift = <21>;
		reg = <0x0558>;
	};

	ehrpwm2_tbclk: ehrpwm2_tbclk@558 {
		#clock-cells = <0>;
		compatible = "ti,gate-clock";
		clocks = <&l4_root_clk_div>;
		ti,bit-shift = <22>;
		reg = <0x0558>;
	};

	sys_32k_ck: sys_32k_ck {
		#clock-cells = <0>;
		compatible = "ti,mux-clock";
		clocks = <&sys_clk32_crystal_ck>, <&sys_clk32_pseudo_ck>, <&sys_clk32_pseudo_ck>, <&sys_clk32_pseudo_ck>;
		ti,bit-shift = <8>;
		reg = <0x6c4>;
	};
};

&cm_core_aon {
	mpu_cm: mpu_cm@300 {
		compatible = "ti,omap4-cm";
		reg = <0x300 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x300 0x100>;

		mpu_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0x4>;
			#clock-cells = <2>;
		};
	};

	dsp1_cm: dsp1_cm@400 {
		compatible = "ti,omap4-cm";
		reg = <0x400 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x400 0x100>;

		dsp1_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0x4>;
			#clock-cells = <2>;
		};
	};

	ipu1_cm: ipu1_cm@500 {
		compatible = "ti,omap4-cm";
		reg = <0x500 0x40>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x500 0x100>;

		ipu1_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0x20>;
			#clock-cells = <2>;

			assigned-clocks = <&ipu1_clkctrl DRA7_IPU1_CLKCTRL 24>;
			assigned-clock-parents = <&dpll_core_h22x2_ck>;
		};
	};

	ipu_cm: ipu_cm@540 {
		compatible = "ti,omap4-cm";
		reg = <0x540 0xc0>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x540 0xc0>;

		ipu_clkctrl: clk@0 {
			compatible = "ti,clkctrl";
			reg = <0x0 0x44>;
			#clock-cells = <2>;
		};
	};

	dsp2_cm: dsp2_cm@600 {
		compatible = "ti,omap4-cm";
		reg = <0x600 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x600 0x100>;

		dsp2_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0x4>;
			#clock-cells = <2>;
		};
	};

	rtc_cm: rtc_cm@700 {
		compatible = "ti,omap4-cm";
		reg = <0x700 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x700 0x100>;

		rtc_clkctrl: clk@40 {
			compatible = "ti,clkctrl";
			reg = <0x40 0x8>;
			#clock-cells = <2>;
		};
	};

};

&cm_core {
	coreaon_cm: coreaon_cm@600 {
		compatible = "ti,omap4-cm";
		reg = <0x600 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x600 0x100>;

		coreaon_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0x1c>;
			#clock-cells = <2>;
		};
	};

	l3main1_cm: l3main1_cm@700 {
		compatible = "ti,omap4-cm";
		reg = <0x700 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x700 0x100>;

		l3main1_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0x74>;
			#clock-cells = <2>;
		};
	};

	ipu2_cm: ipu2_cm@900 {
		compatible = "ti,omap4-cm";
		reg = <0x900 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x900 0x100>;

		ipu2_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0x4>;
			#clock-cells = <2>;
		};
	};

	dma_cm: dma_cm@a00 {
		compatible = "ti,omap4-cm";
		reg = <0xa00 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0xa00 0x100>;

		dma_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0x4>;
			#clock-cells = <2>;
		};
	};

	emif_cm: emif_cm@b00 {
		compatible = "ti,omap4-cm";
		reg = <0xb00 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0xb00 0x100>;

		emif_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0x4>;
			#clock-cells = <2>;
		};
	};

	atl_cm: atl_cm@c00 {
		compatible = "ti,omap4-cm";
		reg = <0xc00 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0xc00 0x100>;

		atl_clkctrl: clk@0 {
			compatible = "ti,clkctrl";
			reg = <0x0 0x4>;
			#clock-cells = <2>;
		};
	};

	l4cfg_cm: l4cfg_cm@d00 {
		compatible = "ti,omap4-cm";
		reg = <0xd00 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0xd00 0x100>;

		l4cfg_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0x84>;
			#clock-cells = <2>;
		};
	};

	l3instr_cm: l3instr_cm@e00 {
		compatible = "ti,omap4-cm";
		reg = <0xe00 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0xe00 0x100>;

		l3instr_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0xc>;
			#clock-cells = <2>;
		};
	};

	dss_cm: dss_cm@1100 {
		compatible = "ti,omap4-cm";
		reg = <0x1100 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x1100 0x100>;

		dss_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0x14>;
			#clock-cells = <2>;
		};
	};

	l3init_cm: l3init_cm@1300 {
		compatible = "ti,omap4-cm";
		reg = <0x1300 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x1300 0x100>;

		l3init_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0xd4>;
			#clock-cells = <2>;
		};
	};

	l4per_cm: l4per_cm@1700 {
		compatible = "ti,omap4-cm";
		reg = <0x1700 0x300>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x1700 0x300>;

		l4per_clkctrl: clk@0 {
			compatible = "ti,clkctrl";
			reg = <0x0 0x20c>;
			#clock-cells = <2>;

			assigned-clocks = <&l4per_clkctrl DRA7_MCASP3_CLKCTRL 24>;
			assigned-clock-parents = <&abe_24m_fclk>;
		};
	};

};

&prm {
	wkupaon_cm: wkupaon_cm@1800 {
		compatible = "ti,omap4-cm";
		reg = <0x1800 0x100>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x1800 0x100>;

		wkupaon_clkctrl: clk@20 {
			compatible = "ti,clkctrl";
			reg = <0x20 0x6c>;
			#clock-cells = <2>;
		};
	};
};
/*
 * Copyright (C) 2014-2016 Texas Instruments Incorporated - http://www.ti.com/
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */


/dts-v1/;

#include "dra74x.dtsi"
#include "am57xx-commercial-grade.dtsi"
#include "dra74x-mmc-iodelay.dtsi"
#include "dra74-ipu-dsp-common.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/leds/leds-pca955x.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/sound/ti-mcasp.h>

/ {
	compatible = "ti,am572x-beagle-x15", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7";


	aliases {
		rtc0 = &mcp_rtc;
		rtc1 = &tps659038_rtc;
		rtc2 = &rtc;
		display0 = "/display";
		display1 = "/connector";
		sound0 = &sound0;
		sound1 = &hdmi;
	};
	
	// [01]
	gpio_keys {
		compatible = "gpio-keys";
		#address-cells = <1>;
		#size-cells = <0>;

		USER1 {
			gpios = <&gpio1 14 0>; // [06]
			label = "HOOK_INT";
			linux,code = <KEY_UP>;
		};


		USER2 {
			gpios = <&gpio2 6 1>;
			label = "KEYL_INT";
			linux,code = <KEY_HOME>;
		};

		USER3 { //DT
			gpios = <&gpio5 1 0>;
			label = "HEADSET_INT";
			linux,code = <KEY_DOWN>;
		};

	};

	chosen {
		stdout-path = &uart3;
	};

	memory@0 {
		device_type = "memory";
		reg = <0x0 0x80000000 0x0 0x80000000>;
	};

	reserved-memory {
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;

	ipu2_memory_region: ipu2-memory@95800000 {
			    compatible = "shared-dma-pool";
			    reg = <0x0 0x95800000 0x0 0x3800000>;
			    reusable;
			    status = "okay";
		    };

	dsp1_memory_region: dsp1-memory@99000000 {
			    compatible = "shared-dma-pool";
			    reg = <0x0 0x99000000 0x0 0x4000000>;
			    reusable;
			    status = "okay";
		    };

	ipu1_memory_region: ipu1-memory@9d000000 {
			    compatible = "shared-dma-pool";
			    reg = <0x0 0x9d000000 0x0 0x2000000>;
			    reusable;
			    status = "okay";
		    };

	dsp2_memory_region: dsp2-memory@9f000000 {
			    compatible = "shared-dma-pool";
			    reg = <0x0 0x9f000000 0x0 0x800000>;
			    reusable;
			    status = "okay";
		    };
	};

	main_12v0: fixedregulator-main_12v0 {
		   /* main supply */
		   compatible = "regulator-fixed";
		   regulator-name = "main_12v0";
		   regulator-min-microvolt = <12000000>;
		   regulator-max-microvolt = <12000000>;
		   regulator-always-on;
		   regulator-boot-on;
	   };

	evm_5v0: fixedregulator-evm_5v0 {
		 /* Output of TPS54531D */
		 compatible = "regulator-fixed";
		 regulator-name = "evm_5v0";
		 regulator-min-microvolt = <5000000>;
		 regulator-max-microvolt = <5000000>;
		 vin-supply = <&main_12v0>;
		 regulator-always-on;
		 regulator-boot-on;
	 };

	vdd_3v3: fixedregulator-vdd_3v3 {
		 compatible = "regulator-fixed";
		 regulator-name = "vdd_3v3";
		 vin-supply = <&regen1>;
		 regulator-min-microvolt = <3300000>;
		 regulator-max-microvolt = <3300000>;
	 };

	aic_dvdd: fixedregulator-aic_dvdd {
		  compatible = "regulator-fixed";
		  regulator-name = "aic_dvdd_fixed";
		  vin-supply = <&vdd_3v3>;
		  regulator-min-microvolt = <1800000>;
		  regulator-max-microvolt = <1800000>;
	  };

	vtt_fixed: fixedregulator-vtt {
		   /* TPS51200 */
		   compatible = "regulator-fixed";
		   regulator-name = "vtt_fixed";
		   vin-supply = <&smps3_reg>;
		   regulator-min-microvolt = <3300000>;
		   regulator-max-microvolt = <3300000>;
		   regulator-always-on;
		   regulator-boot-on;
		   enable-active-high;
		   gpio = <&gpio7 11 GPIO_ACTIVE_HIGH>;
	   };

	gpio_fan: gpio_fan {
		  /* Based on 5v 500mA AFB02505HHB */
		  compatible = "gpio-fan";
		  gpios =  <&tps659038_gpio 2 GPIO_ACTIVE_HIGH>;
		  gpio-fan,speed-map = <0     0>,
			  <13000 1>;
		  #cooling-cells = <2>;
	  };

	//[00]

	clk_ov5640_fixed: clk_ov5640_fixed {
			  compatible = "fixed-clock";
			  #clock-cells = <0>;
			  clock-frequency = <24000000>;
		  };

	clk_ov5640: clk_ov5640 {
		    compatible = "gpio-gate-clock";
		    #clock-cells = <0>;
		    clocks = <&clk_ov5640_fixed>;
		    enable-gpios = <&gpio5 18 GPIO_ACTIVE_LOW>; //[04]
                };

	//[00] LCD Device entry

	lcd0: display {
              compatible = "bolymin,btz070f-chc" ,"panel-dpi";
              //compatible = "osddisplays,osd070t1718-19ts" ,"panel-dpi";
              backlight = <&lcd_bl>;
              enable-gpios = <&gpio5 12 GPIO_ACTIVE_HIGH>;
              label = "lcd";

              /*panel-timing {
				clock-frequency = <51200000>;
				de-active = <1>;
				hactive = <1024>;
				hback-porch = <12>;
				hfront-porch = <85>;
				hsync-active = <0>;
				hsync-len = <8>;
				pixelclk-active = <1>;
				vactive = <600>;
				vback-porch = <12>;
				vfront-porch = <12>;
				vsync-active = <0>;
				vsync-len = <8>;
			};*/

              port {
                   lcd_in: endpoint {
                           remote-endpoint = <&dpi_out>;
                           };
              };
         };

         lcd_bl: backlight {
                 compatible = "pwm-backlight";
                 brightness-levels = <0 32 64 96 128 160 192 255>;
                 default-brightness-level = <8>;
                 pwms = <&ehrpwm0 0 50000 0>;
         };

	sound0: sound0 {
                compatible = "simple-audio-card";
                simple-audio-card,name = "BeagleBoard-X15";
              
/*                simple-audio-card,widgets =
                        "Speaker", "Headphone Speaker",
                        "Microphone", "Microphone External",
                        "Speaker", "Speaker External",
                        "Speaker", "Handset Speaker",
                        "Microphone", "Handset Microphone";
                simple-audio-card,routing =
                        "Headphone Speaker", "HPL",
                        "Headphone Speaker", "HPR",
                        "Speaker External",     "SPKL",
                        "Speaker External",     "SPKR",
                        "Handset Speaker",      "RECL",
                        "Handset Speaker",      "RECR",
                        "IN3L", "Microphone External",
                        "IN3R", "Microphone External";*/

                //simple-audio-card,format = "dsp_b";
                simple-audio-card,format = "i2s";
                simple-audio-card,bitclock-master = <&sound0_master>;
                simple-audio-card,frame-master = <&sound0_master>;
                //simple-audio-card,bitclock-master = <&cpu_dai>;
               // simple-audio-card,frame-master = <&cpu_dai>;
                //simple-audio-card,bitclock-inversion;
		
		simple-audio-card,dai-link@0 {
			//format = "dsp_b";
			format = "i2s";
			cpu_dai: cpu {
				sound-dai = <&mcasp3>;
				clocks = <&clkout2_clk>;
				//system-clock-id = <MCASP_CLK_HCLK_AUXCLK>;
				//system-clock-frequency = <12288000>;
				//system-clock-direction-out;
			};
			sound0_master: codec {
				sound-dai = <&tlv320aic3212>;
				clocks = <&clkout2_clk>;
				//system-clock-id = <MCASP_CLK_HCLK_AUXCLK>;
			};
		};
	};	
};

&i2c1 {
	status = "okay";
	clock-frequency = <400000>;

	tps659038: tps659038@58 {
		compatible = "ti,tps659038";
		reg = <0x58>;
		interrupt-parent = <&gpio1>;
		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;

		#interrupt-cells = <2>;
		interrupt-controller;

		ti,system-power-controller;
		ti,palmas-override-powerhold;

		tps659038_pmic {
			compatible = "ti,tps659038-pmic";

			regulators {
				smps12_reg: smps12 {
					/* VDD_MPU */
					regulator-name = "smps12";
					regulator-min-microvolt = < 850000>;
					regulator-max-microvolt = <1250000>;
					regulator-always-on;
					regulator-boot-on;
				};

				smps3_reg: smps3 {
					/* VDD_DDR */
					regulator-name = "smps3";
					regulator-min-microvolt = <1350000>;
					regulator-max-microvolt = <1350000>;
					regulator-always-on;
					regulator-boot-on;
				};

				smps45_reg: smps45 {
					/* VDD_DSPEVE, VDD_IVA, VDD_GPU */
					regulator-name = "smps45";
					regulator-min-microvolt = < 850000>;
					regulator-max-microvolt = <1250000>;
					regulator-always-on;
					regulator-boot-on;
				};

				smps6_reg: smps6 {
					/* VDD_CORE */
					regulator-name = "smps6";
					regulator-min-microvolt = <850000>;
					regulator-max-microvolt = <1150000>;
					regulator-always-on;
					regulator-boot-on;
				};

				/* SMPS7 unused */

				smps8_reg: smps8 {
					/* VDD_1V8 */
					regulator-name = "smps8";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
					regulator-boot-on;
				};

				/* SMPS9 unused */

				ldo1_reg: ldo1 {
					/* VDD_SD / VDDSHV8  */
					regulator-name = "ldo1";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <3300000>;
					regulator-boot-on;
					regulator-always-on;
				};

				ldo2_reg: ldo2 {
					/* VDD_SHV5 */
					regulator-name = "ldo2";
					regulator-min-microvolt = <3300000>;
					regulator-max-microvolt = <3300000>;
					regulator-always-on;
					regulator-boot-on;
				};

				ldo3_reg: ldo3 {
					/* VDDA_1V8_PHYA */
					regulator-name = "ldo3";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
					regulator-boot-on;
				};

				ldo4_reg: ldo4 {
					/* VDDA_1V8_PHYB */
					regulator-name = "ldo4";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
					regulator-boot-on;
				};

				ldo9_reg: ldo9 {
					/* VDD_RTC */
					regulator-name = "ldo9";
					regulator-min-microvolt = <1050000>;
					regulator-max-microvolt = <1050000>;
					regulator-always-on;
					regulator-boot-on;
				};

				ldoln_reg: ldoln {
					/* VDDA_1V8_PLL */
					regulator-name = "ldoln";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
					regulator-boot-on;
				};

				ldousb_reg: ldousb {
					/* VDDA_3V_USB: VDDA_USBHS33 */
					regulator-name = "ldousb";
					regulator-min-microvolt = <3300000>;
					regulator-max-microvolt = <3300000>;
					regulator-boot-on;
				};

				regen1: regen1 {
					/* VDD_3V3_ON */
					regulator-name = "regen1";
					regulator-boot-on;
					regulator-always-on;
				};
			};
		};

		tps659038_rtc: tps659038_rtc {
			compatible = "ti,palmas-rtc";
			interrupt-parent = <&tps659038>;
			interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
			wakeup-source;
		};

		tps659038_pwr_button: tps659038_pwr_button {
			compatible = "ti,palmas-pwrbutton";
			interrupt-parent = <&tps659038>;
			interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
			wakeup-source;
			ti,palmas-long-press-seconds = <12>;
		};

		tps659038_gpio: tps659038_gpio {
			compatible = "ti,palmas-gpio";
			gpio-controller;
			#gpio-cells = <2>;
		};

		extcon_usb2: tps659038_usb {
			compatible = "ti,palmas-usb-vid";
			ti,enable-vbus-detection;
			vbus-gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>;
		};

	};

	eeprom: eeprom@50 {
		compatible = "atmel,24c256"; //[05]
		reg = <0x50>;
	};
};

/* [00] ::  Added Temp sensor & LED controller */
&i2c2 {
	status = "okay";
	clock-frequency = <400000>;

	proc_temp: lm75@48 {
                   compatible = "national,lm75a";
                   reg = <0x48>;
	           interrupt-parent = <&gpio7>;
		   interrupts = <8 IRQ_TYPE_LEVEL_LOW>;
		   #thermal-sensor-cells = <1>;
        };

        handset_temp: lm75@49 {
                   compatible = "national,lm75a";
                   reg = <0x49>;
	           interrupt-parent = <&gpio6>;
		   interrupts = <18 IRQ_TYPE_LEVEL_LOW>;
		   #thermal-sensor-cells = <0>;
        };

	pca9550: pca9550@60 {
                 compatible = "nxp,pca9550";
		 #address-cells = <1>;
		 #size-cells = <0>;
                 reg = <0x60>;

                 led@0 {
                        label = "green:power";
                        reg = <0>;
                        type = <PCA955X_TYPE_LED>;
                 };
		
		 led@1 {
                        label = "red:power";
                        linux,default-trigger = "default-on";
                        reg = <1>;
                        type = <PCA955X_TYPE_LED>;
                 };

        };

	tpm: tpm@29 {
		compatible = "atmel,at97sc3204t";
		reg = <0x29>;
	};
		
};

//[00]
&vin3a {
        vin3a_ep: endpoint {
                remote-endpoint = <&cam>;
                slave-mode;
        };
};

&vip2 {
        status = "okay";
};

/* [00] ::  Added Camera & RTC */
&i2c3 {
	status = "okay";
	clock-frequency = <400000>;

	mcp_rtc: rtc@6f {
		compatible = "microchip,mcp7941x";
		reg = <0x6f>;
		interrupts-extended = <&crossbar_mpu GIC_SPI 2 IRQ_TYPE_EDGE_RISING>,
				      <&dra7_pmx_core 0x424>;
		interrupt-names = "irq", "wakeup";

		vcc-supply = <&vdd_3v3>;
		wakeup-source;
	};


	ov5640@3c {
                compatible = "ovti,ov5640";
                reg = <0x3c>;
                clocks = <&clk_ov5640>;
                clock-names = "xclk";
                powerdown-gpios = <&gpio5 17 GPIO_ACTIVE_HIGH>;

                port {
                        cam: endpoint {
                                bus-width = <8>;
                                data-shift = <0>;
				hsync-active = <1>;
				vsync-active = <0>;
				pclk-sample = <0>;
                                remote-endpoint = <&vin3a_ep>;
                        };
                };
        };
};

&i2c4 {
	status = "okay";
	clock-frequency = <400000>;

	tlv320aic3212: tlv320aic3212@18 {
	      #sound-dai-cells = <0>;
	      compatible = "ti,aic3262";
	      reg = <0x18>;
	      assigned-clocks = <&clkoutmux2_clk_mux>;
	      assigned-clock-parents = <&sys_clk2_dclk_div>;
	      adc-settle-ms = <40>;
	      status ="okay";
	};
};

&ehrpwm0 {
        status = "okay";
};

&epwmss0 {
        status = "okay";
};

/*
&ehrpwm1 {
        status = "okay";
};

&epwmss1 {
        status = "okay";
};
&ehrpwm2 {
        status = "okay";
};

&epwmss2 {
        status = "okay";
};
*/

/* [00] ::  Added Touch panel entries */
&i2c5 {
        status = "okay";
        clock-frequency = <400000>;

        polytouch: edt-ft5x06@38 {
	        compatible = "edt,edt-ft5x06";
	        reg = <0x38>;
	        attb-gpio = <&gpio5 9 GPIO_ACTIVE_HIGH>;
	        interrupt-parent = <&gpio5>;
	        interrupts = <9 0>;
        //reset-gpios = <&gpio5 25 GPIO_ACTIVE_LOW>;
        //wake-gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
/* AKSHI*/
                threshold = <20>;          
	        touchscreen-size-x = <1024>;
	        touchscreen-size-y = <600>;
	        wakeup-source;
    };

};

//Sample code to control GPIO from device tree
/*
&gpio5 {
        p18 {
                gpio-hog;
                gpios = <18 0>;
                line-name = "cm-camen-gpio";
                output-low;
        };
};
*/

&gpio7 {
	ti,no-reset-on-init;
	ti,no-idle-on-init;
};

&cpu0 {
	vdd-supply = <&smps12_reg>;
	voltage-tolerance = <1>;
};

&uart3 {
	status = "okay";
	interrupts-extended = <&crossbar_mpu GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
			      <&dra7_pmx_core 0x3f8>;
};


&davinci_mdio {
	phy0: ethernet-phy@0 {
		reg = <0>;
	};

	phy1: ethernet-phy@1 {
		reg = <1>;
	};
};

&mac {
	status = "okay";
	dual_emac;
};

&cpsw_emac0 {
	phy-handle = <&phy0>;
	phy-mode = "rgmii";
	dual_emac_res_vlan = <1>;
};


&cpsw_emac1 {
	phy-handle = <&phy1>;
	phy-mode = "rgmii";
	dual_emac_res_vlan = <2>;
}; 

&mmc1 {
	status = "okay";

	pinctrl-names = "default";
	pinctrl-0 = <&mmc1_pins_default>;

	bus-width = <4>;
	cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */ /* Check For Custom Board */
	no-1-8-v;
};

&mmc2 {
	status = "okay";

	pinctrl-names = "default";
	pinctrl-0 = <&mmc2_pins_default>;

	vmmc-supply = <&vdd_3v3>;
	vqmmc-supply = <&vdd_3v3>;
	bus-width = <8>;
	non-removable;
	no-1-8-v;
};

&sata {
	status = "okay";
};

&usb2_phy1 {
	phy-supply = <&ldousb_reg>;
};

&usb2_phy2 {
	phy-supply = <&ldousb_reg>;
};

&usb1 {
	dr_mode = "host";
};

&omap_dwc3_2 {
	extcon = <&extcon_usb2>;
};

&usb2 {
	/*
	 * Stand alone usage is peripheral only.
	 * However, with some resistor modifications
	 * this port can be used via expansion connectors
	 * as "host" or "dual-role". If so, provide
	 * the necessary dr_mode override in the expansion
	 * board's DT.
	 */
	dr_mode = "peripheral";
};

&cpu_trips {
	cpu_alert1: cpu_alert1 {
		temperature = <50000>; /* millicelsius */
		hysteresis = <2000>; /* millicelsius */
		type = "active";
	};
};

&cpu_cooling_maps {
	map1 {
		trip = <&cpu_alert1>;
		cooling-device = <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
	};
};

&thermal_zones {
	board_thermal: board_thermal {
		polling-delay-passive = <1250>; /* milliseconds */
		polling-delay = <1500>; /* milliseconds */

				/* sensor       ID */
		thermal-sensors = <&proc_temp 0>;

		board_trips: trips {
			board_alert0: board_alert {
				temperature = <40000>; /* millicelsius */
				hysteresis = <2000>; /* millicelsius */
				type = "active";
			};

			board_crit: board_crit {
				temperature = <105000>; /* millicelsius */
				hysteresis = <0>; /* millicelsius */
				type = "critical";
			};
		};

		board_cooling_maps: cooling-maps {
			map0 {
				trip = <&board_alert0>;
				cooling-device =
				  <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
			};
		};
       };
};

&gpu {
	status = "ok";
};

//[02]
&keypad {
    status = "okay";
};

&dss {
	status = "ok";
        vdda_video-supply = <&ldoln_reg>;
        ports {
                #address-cells = <1>;
                #size-cells = <0>;

                port {
                        reg = <0>;
                        dpi_out: endpoint {
                                data-lines = <24>;
                                remote-endpoint = <&lcd_in>;
                        };
                };
        };
};


&bb2d {
	status = "okay";
};


//[03]
&pcie1_rc {
	status = "okay";
	//gpios = <&gpio5 10 GPIO_ACTIVE_HIGH>; //Remap PERST to GPIO
};

&pcie1_phy {
	status = "okay";
};

/*
&pcie2_rc {
	status = "okay";
	//gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
};

&pcie2_phy {
	status = "okay";
};*/

&mcasp3 {
        #sound-dai-cells = <0>;
        assigned-clocks = <&l4per_clkctrl DRA7_MCASP3_CLKCTRL 24>;
        assigned-clock-parents = <&sys_clkin2>;
        status = "okay";

        op-mode = <0>;  /* MCASP_IIS_MODE */
        tdm-slots = <2>;
        /* 4 serializers */
        /*serial-dir = <  // 0: INACTIVE, 1: TX, 2: RX 
                1 2 0 0
        >;*/
        serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
                2 2 1 0
        >;
        tx-num-evt = <32>;
        rx-num-evt = <32>;
};


&pruss_soc_bus1 {
	status = "okay";

	pruss1: pruss@4b200000 {
		status = "okay";
	};
};

&pruss_soc_bus2 {
	status = "okay";

	pruss2: pruss@4b280000 {
		status = "okay";
	};
};

&ipu2 {
	status = "okay";
	memory-region = <&ipu2_memory_region>;
};

&ipu1 {
	status = "okay";
	memory-region = <&ipu1_memory_region>;
};

&dsp1 {
	status = "okay";
	memory-region = <&dsp1_memory_region>;
};

&dsp2 {
	status = "okay";
	memory-region = <&dsp2_memory_region>;
};

#include "dra7-ipu-common-early-boot.dtsi"

No matter what clock frequency we set in the sys_clkin2, the clkout2 pin always measures  22.57 MHz from the oscilloscope. The clkout2 is directly connected to MCLK1 of TLV320AIC3262 audiocodec.

We have tried to set the audicodec in both master and slave mode but we get the same result. It seems the DTS entries are not getting reflected in the hardware. What is the issue?

Please help us correct the DTS entries.

Regards,

Vishal Maheshwari