text: /*
   * This header provides macros for different DT binding version used
   * by different OS/kernel versions.
   */
  
  #ifndef _DT_BINDINGS_VERSION_H_
  #define _DT_BINDINGS_VERSION_H_
  
  #define DT_VERSION_1		1
  #define DT_VERSION_2		2
  
  /**
   * TEGRA_AUDIO_BUS_DT_VERSION: Audio node DT version.
   *		V1: All audio bus are in root node.
   *		V2: All audio bus are in the under aconnect node.
   *
   * TEGRA_POWER_DOMAIN_DT_VERSION: Power domain DT versions.
   *		V1: Use legacy power gating API.
   *		V2: Use BPMP power domain provider.
   *
   * TEGRA_XUSB_PADCONTROL_VERSION
   *		V1: Nv Version of DT bidning
   *		V2: Mainline compatible DT binding.
   *
   * TEGRA_XUSB_DT_VERSION: XUSB DT binding version
   *		V1: Nv Version of DT bidning
   *		V2: Mainline compatible DT binding.
   *
   * TEGRA_XUDC_DT_VERSION: XUDC DT binding version
   *		V1: Nv Version of DT bidning
   *		V2: Mainline compatible DT binding.
   *
   * TEGRA_HSP_DT_VERSION: HSP DT binding version
   *		V1: device property is not provided.
   *		V2: device property is provided.
   *
   * UART_CONSOLE_ON_TTYS0_ONLY: Uart console only on TTYS0. Some OS support
   *			       console port in the ttyS0 only.
   *		1 for those OS which support console only on ttyS0.
   *		0 for those OS which can support console on any ttySx.
   *
   * TEGRA_BOOTARGUMENT_VERSION: Boot argument via chosen node.
   *		V1: Only pass the console.
   *		V2: Pass the android boots parameters.
  
   * TEGRA_CPUFREQ_DT_VERSION: CPUFREQ DT binding version
   *		V1: the separate EDVD aperture for two clusters.
   *		V2: the unified aperture for two clusters.
   */
  
  /* OS Linux */
  #if defined(LINUX_VERSION)
  #define _OS_FOUND_
  #define TEGRA_CPUFREQ_DT_VERSION		DT_VERSION_2
  #if LINUX_VERSION >= 409
  #define TEGRA_AUDIO_BUS_DT_VERSION		DT_VERSION_2
  #define TEGRA_POWER_DOMAIN_DT_VERSION		DT_VERSION_2
  #define TEGRA_XUSB_PADCONTROL_VERSION		DT_VERSION_2
  #define TEGRA_XUSB_DT_VERSION			DT_VERSION_2
  #define TEGRA_XUDC_DT_VERSION			DT_VERSION_2
  #define TEGRA_HSP_DT_VERSION			DT_VERSION_2
  #define TEGRA_BOOTARGUMENT_VERSION		DT_VERSION_2
  #define UART_CONSOLE_ON_TTYS0_ONLY		0
  #else
  #define TEGRA_AUDIO_BUS_DT_VERSION		DT_VERSION_1
  #define TEGRA_POWER_DOMAIN_DT_VERSION		DT_VERSION_1
  #define TEGRA_XUSB_PADCONTROL_VERSION		DT_VERSION_1
  #define TEGRA_XUSB_DT_VERSION			DT_VERSION_1
  #define TEGRA_XUDC_DT_VERSION			DT_VERSION_1
  #define TEGRA_HSP_DT_VERSION			DT_VERSION_1
  #define TEGRA_BOOTARGUMENT_VERSION		DT_VERSION_1
  #define UART_CONSOLE_ON_TTYS0_ONLY		1
  #endif
  #endif
  
  /* OS QNX */
  #if defined (__QNX__)
  #define _OS_FOUND_
  #define TEGRA_AUDIO_BUS_DT_VERSION		DT_VERSION_1
  #define TEGRA_POWER_DOMAIN_DT_VERSION		DT_VERSION_1
  #define TEGRA_XUSB_PADCONTROL_VERSION		DT_VERSION_2
  #define TEGRA_XUSB_DT_VERSION			DT_VERSION_2
  #define TEGRA_XUDC_DT_VERSION			DT_VERSION_2
  #define TEGRA_HSP_DT_VERSION			DT_VERSION_2
  #define TEGRA_BOOTARGUMENT_VERSION		DT_VERSION_2
  #define TEGRA_CPUFREQ_DT_VERSION		DT_VERSION_2
  #define UART_CONSOLE_ON_TTYS0_ONLY		1
  #endif
  
  /* OS Integrity */
  #if defined( __INTEGRITY)
  #define _OS_FOUND_
  #define TEGRA_AUDIO_BUS_DT_VERSION		DT_VERSION_1
  #define TEGRA_POWER_DOMAIN_DT_VERSION		DT_VERSION_1
  #define TEGRA_XUSB_PADCONTROL_VERSION		DT_VERSION_1
  #define TEGRA_XUSB_DT_VERSION			DT_VERSION_1
  #define TEGRA_XUDC_DT_VERSION			DT_VERSION_1
  #define TEGRA_HSP_DT_VERSION			DT_VERSION_1
  #define TEGRA_BOOTARGUMENT_VERSION		DT_VERSION_1
  #define TEGRA_CPUFREQ_DT_VERSION		DT_VERSION_2
  #define UART_CONSOLE_ON_TTYS0_ONLY		1
  #endif
  
  /* OS LK */
  #if defined (__LK__)
  #define _OS_FOUND_
  #define TEGRA_AUDIO_BUS_DT_VERSION		DT_VERSION_2
  #define TEGRA_POWER_DOMAIN_DT_VERSION		DT_VERSION_2
  #define TEGRA_XUSB_PADCONTROL_VERSION		DT_VERSION_2
  #define TEGRA_XUSB_DT_VERSION			DT_VERSION_2
  #define TEGRA_XUDC_DT_VERSION			DT_VERSION_2
  #define TEGRA_HSP_DT_VERSION			DT_VERSION_1
  #define TEGRA_BOOTARGUMENT_VERSION		DT_VERSION_1
  #define TEGRA_CPUFREQ_DT_VERSION		DT_VERSION_1
  #define TEGRA_GENERIC_CARVEOUT_SUPPORT_ENABLE	0
  #define UART_CONSOLE_ON_TTYS0_ONLY		1
  #endif
  
  /**
   * If no OS found then abort compilation.
   */
  #if !defined(_OS_FOUND_)
  #error "Valid OS not found"
  #endif
  
  #endif /* _DT_BINDINGS_VERSION_H_ */
  