[CPUINFO] introduce DRA7x cpuID support

Implement DRA7xx cpu detection on vayu.

DRA7xx belongs to OMAP5 technology processor family called Jacinto6 set
	of processors. Even though this uses OMAP5 technology, there is
	significant differences in register and module set
	available in the processor.
	Further information about DRA family of processors can be found here:
	http://www.ti.com/omap-jac6-pr-pf

We start the support with just the detection of CPU information here.
Supported information are:
	CPU detection - detects DRA7XX
	CPU revision  -	ES 1.0
	CPU type detection - HS/GP
	DIE ID
	production ID.

It also introduces help-information for DRA7, by running <omapconf
--help>

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
[DRA7][PRCM] add omapconf dump prcm [<pwrdm>]

This patch supports omapconf dump prcm on Jacinto6 platform.

Description: Dump PRCM Registers related to 'pwrdm' power domain
('all' assumed if omitted).

Supported 'pwrdm': all, cam, core, coreaon, ckgen, dev, dsp, dss, emu,
eve, gpu, instr, ipu, iva, l3init, l4per, mpu, rtc, vpe, wkupaon.

All PRM and CM register-data files are autogenerated.

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Nagendra Gulur <nagendra@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
[DRA7][DPLL] add omapconf dump dpll [<dpll>]

This patch supports omapconf dump dpll on Jacinto6 platform.

Description: raw dump of dpll registers ("all" assumed if omitted)

Supported 'dpll': all, abe, core, ddr, dsp, eve, gmac, gpu, iva, mpu,
pcieref, per, usb.

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
[DRA7][DPLL] add omapconf show dpll

This patch adds support for 'omapconf show dpll' on Jacinto6 platform.

Description: print the complete configuration of all DPLL, including
usb, pcie-ref, mpu, iva, core, per, abe, eve, dsp, gmac, gpu, and ddr.

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
[DRA7][PRCM/CTT] omapconf export ctt

This patch implement omapconf export ctt on Jacinto6 platform.
Clock Tree Tool(CTT) is a useful tool to visually see the
clock tree in DRA7 family of processors.
See http://omappedia.org/wiki/CTT for more information.

Supported commands:
1. omapconf export ctt [<filename>]:
Export PRCM registers to "filename" or stdout if omitted.

2. omapconf ctt dump: (alternative call of omapconf-export-ctt)
Print PRCM registers to stdout.

3. omapconf ctt rd1:
Export PRCM registers in .rd1 format for CCT (Clock Tree Tool).

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
[PMIC][DRA7] PMIC detection for TPS659038

Provide TPS659038 chip and revision detection as well as some of
other important data detection for this PMIC, such as SMPS information.

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
[LIB/DRA7/AUDIO] No audioic revision to show for DRA7XX

DRA7XX doesn't have McPDM peripheral so twl6040 is not the audioic
anymore. McASP and tlv320aic3106 is used instead in TI DRA7XX EVM.
Unfortunately, there is no revision register in the audioic so skip
audio information from 'Hw Platform' section.

Acked-by: Nishanth Menon  <nm@ti.com>
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
[DRA7][AUDIO] Add support for tlv320aic3x audioic

Add initial support for audioic functionality, at this time only 'dump'
command is available. It dumps tlv320aic3x registers in page 0, i2c bus
and chip address can be passed as arguments, useful in boards that may
have multiple instances of the audioic.

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
[DRA7] Add support for voltage domains

Added initial support for DRA7xx voltage domains.

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
[DRA7][MODULE] Add support for DRA7 modules

Added files to support DRA7 modules, and initialized some of the
important modules.

More modules information can be added when needed.

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
[DRA7][PRCM] Clocks dependencies and calculation

Initialized dependencies and equations for some of the clocks that are
associated with those important modules that we have added so far.

More clocks information will be added when new modules are added.

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
[DRA7][TEMP] add omapconf show hwtemp <sensor>

Ability to read temperature for the following domains:
MPU, GPU, CORE, IVA, and DSPEVE.

As part of this change, make bgap_o5_conversion_table static.

Signed-off-by: José Peña <pena@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
[DRA7] [TEMP] add omapconf show temp <sensor>

Show temp port to DRA7. Can expand easily to other kernels by changing
NUM_SENSOR_FILENAMES_LIST + 1 for every different kernel sysfs
configuration.

Signed-off-by: José Peña <pena@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
[DRA7] [OPP] add omapconf show opp

Description: Omapconf show opp is ported to Jacinto6. It print DRA7
current Operating Performance Points (OPP)(voltage, frequency, and
temperature) for MPU/IVA/GPU/DSP/EVE/CORE voltage domains), including
main modules frequencies.

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
[DRA7][DPLL] add omapconf audit dpll

Command: omapconf audit dpll [-d <dpll>] [-o <opp>]
Audit DPLL settings at selected OPP(s).

By default, audit all DPLLs at current OPP. Use optional '-d dpll' to
select a give DPLL, including: mpu, iva, core, per, abe, eve, dsp,
gmac, gpu, ddr, usb, pcieref.

Use optional '-o all' to run audit at all MPU Operating Performance
Points(OPPs). Use optional '-o opp' to force a particular MPU Operating
Performance Point for when MPU OPP is not correctly detected. Supported
OPP includes: nom, od, high.

TBD: At this moment, only reference(golden) settings for DPLL_MPU at
OPP_OD/OPP_HIGH are given. Need to add golden settings for all other
DPLLs whenver the data is ready.

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
[DRA7][VOLTAGE] omapconf set voltage <rail> <voltage>

Support Voltage rail configuration on DRA7 (EVM reference).

It set 'rail' voltage to 'voltage'.
Supported 'rail': mpu, core, iva, gpu, dspeve.
'voltage' is in unit Volts.
(ex: omapconf set volt mpu 1.15)

Acked-by: Jin Zheng <j-zheng@ti.com>
Signed-off-by: Jin Zheng <j-zheng@ti.com>
[COMMON][TABLE] Add support for tables with title

Three types of tables are typically used through omapconf, which can
be described as a subset of more generic table below:

|-------------------------------------------------------|
| title                                                 |
|-------------------------------------------------------|
| subtitle 1  | subtitle 2  | subtitle 3  | subtitle N  |
|-------------------------------------------------------|
| value 1     | value 2     | value 3     | value 4     |
| ...         | ...         | ...         | ...         |
|-------------------------------------------------------|

1. The table has title, subtitle and multiple value row (like the generic
   table shown above). Used in powerdomain and clockdomain tables.

2. The table has title and multiple value rows. Used in twl6040's 'show
   audioic' command.

3. The table has subtitle and multiple value row. Used in register dump
   command.

For backward compatibility, autoadjust_table_fprint() will refer to type 3.
Type 1 and 2 can be used by passing a flag parameter to a new function
autoadjust_table_generic_fprint().

Modules using the types of tables described above currently create the
table explicitly calculating the column width. They could converted to
auto-adjust tables now.

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
Merge pull request #26 from nmenon/j-zheng/dra7

Add Support for DRA7 family of processors