1bf215546Sopenharmony_ci<?xml version="1.0" encoding="UTF-8"?>
2bf215546Sopenharmony_ci<database xmlns="http://nouveau.freedesktop.org/"
3bf215546Sopenharmony_cixmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4bf215546Sopenharmony_cixsi:schemaLocation="http://nouveau.freedesktop.org/ rules-ng.xsd">
5bf215546Sopenharmony_ci<import file="freedreno_copyright.xml"/>
6bf215546Sopenharmony_ci
7bf215546Sopenharmony_ci<domain name="MMSS_CC" width="32">
8bf215546Sopenharmony_ci	<brief>
9bf215546Sopenharmony_ci		Multimedia sub-system clock control.. appears to be used by DSI
10bf215546Sopenharmony_ci		for clocks..
11bf215546Sopenharmony_ci	</brief>
12bf215546Sopenharmony_ci
13bf215546Sopenharmony_ci	<reg32 offset="0x0008" name="AHB"/>
14bf215546Sopenharmony_ci
15bf215546Sopenharmony_ci	<enum name="mmss_cc_clk">
16bf215546Sopenharmony_ci		<value name="CLK" value="0"/>
17bf215546Sopenharmony_ci		<value name="PCLK" value="1"/>
18bf215546Sopenharmony_ci	</enum>
19bf215546Sopenharmony_ci
20bf215546Sopenharmony_ci	<!--
21bf215546Sopenharmony_ci		possibly these sequences of registers are same, except pre_div_func
22bf215546Sopenharmony_ci		is shifted by 12 in pclk and 14 in clk..  I'm going to guess that
23bf215546Sopenharmony_ci		the register is same and they just multiply value by 4..
24bf215546Sopenharmony_ci	 -->
25bf215546Sopenharmony_ci	<array offsets="0x004c,0x0130" name="CLK" length="2" stride="0x10" index="mmss_cc_clk">
26bf215546Sopenharmony_ci		<reg32 offset="0x00" name="CC">
27bf215546Sopenharmony_ci			<bitfield name="CLK_EN" pos="0" type="boolean"/>
28bf215546Sopenharmony_ci			<bitfield name="ROOT_EN" pos="2" type="boolean"/>
29bf215546Sopenharmony_ci			<bitfield name="MND_EN" pos="5" type="boolean"/>
30bf215546Sopenharmony_ci			<bitfield name="MND_MODE" low="6" high="7"/>
31bf215546Sopenharmony_ci			<bitfield name="PMXO_SEL" low="8" high="9"/> <!-- not sure high -->
32bf215546Sopenharmony_ci		</reg32>
33bf215546Sopenharmony_ci		<reg32 offset="0x04" name="MD">
34bf215546Sopenharmony_ci			<bitfield name="D" low="0" high="7"/>
35bf215546Sopenharmony_ci			<bitfield name="M" low="8" high="15"/>
36bf215546Sopenharmony_ci		</reg32>
37bf215546Sopenharmony_ci		<reg32 offset="0x08" name="NS">
38bf215546Sopenharmony_ci			<bitfield name="SRC" low="0" high="3"/> <!-- not sure high, but it is >= 1 -->
39bf215546Sopenharmony_ci			<bitfield name="PRE_DIV_FUNC" low="12" high="23"/>
40bf215546Sopenharmony_ci			<bitfield name="VAL" low="24" high="31"></bitfield>
41bf215546Sopenharmony_ci		</reg32>
42bf215546Sopenharmony_ci	</array>
43bf215546Sopenharmony_ci	<reg32 offset="0x0094" name="DSI2_PIXEL_CC"/>
44bf215546Sopenharmony_ci	<reg32 offset="0x00e4" name="DSI2_PIXEL_NS"/>
45bf215546Sopenharmony_ci	<reg32 offset="0x0264" name="DSI2_PIXEL_CC2"/>
46bf215546Sopenharmony_ci</domain>
47bf215546Sopenharmony_ci
48bf215546Sopenharmony_ci</database>
49