memory: tegra30: Add FIFO sizes to memory clients

The latency allowness is calculated based on buffering capabilities of
memory clients. Add FIFO sizes to the Tegra30 memory clients.

Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Link: https://lore.kernel.org/r/20201111011456.7875-7-digetx@gmail.com
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
This commit is contained in:
Dmitry Osipenko
2020-11-11 04:14:36 +03:00
committed by Krzysztof Kozlowski
parent dedf62d6f1
commit 1d1564aabc

View File

@@ -42,6 +42,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x0, .def = 0x0,
}, },
.fifo_size = 16 * 2,
}, { }, {
.id = 0x01, .id = 0x01,
.name = "display0a", .name = "display0a",
@@ -56,6 +57,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x4e, .def = 0x4e,
}, },
.fifo_size = 16 * 128,
}, { }, {
.id = 0x02, .id = 0x02,
.name = "display0ab", .name = "display0ab",
@@ -70,6 +72,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x4e, .def = 0x4e,
}, },
.fifo_size = 16 * 128,
}, { }, {
.id = 0x03, .id = 0x03,
.name = "display0b", .name = "display0b",
@@ -84,6 +87,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x4e, .def = 0x4e,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x04, .id = 0x04,
.name = "display0bb", .name = "display0bb",
@@ -98,6 +102,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x4e, .def = 0x4e,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x05, .id = 0x05,
.name = "display0c", .name = "display0c",
@@ -112,6 +117,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x4e, .def = 0x4e,
}, },
.fifo_size = 16 * 128,
}, { }, {
.id = 0x06, .id = 0x06,
.name = "display0cb", .name = "display0cb",
@@ -126,6 +132,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x4e, .def = 0x4e,
}, },
.fifo_size = 16 * 128,
}, { }, {
.id = 0x07, .id = 0x07,
.name = "display1b", .name = "display1b",
@@ -140,6 +147,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x4e, .def = 0x4e,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x08, .id = 0x08,
.name = "display1bb", .name = "display1bb",
@@ -154,6 +162,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x4e, .def = 0x4e,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x09, .id = 0x09,
.name = "eppup", .name = "eppup",
@@ -168,6 +177,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x17, .def = 0x17,
}, },
.fifo_size = 16 * 8,
}, { }, {
.id = 0x0a, .id = 0x0a,
.name = "g2pr", .name = "g2pr",
@@ -182,6 +192,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x09, .def = 0x09,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x0b, .id = 0x0b,
.name = "g2sr", .name = "g2sr",
@@ -196,6 +207,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x09, .def = 0x09,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x0c, .id = 0x0c,
.name = "mpeunifbr", .name = "mpeunifbr",
@@ -210,6 +222,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x50, .def = 0x50,
}, },
.fifo_size = 16 * 8,
}, { }, {
.id = 0x0d, .id = 0x0d,
.name = "viruv", .name = "viruv",
@@ -224,6 +237,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x2c, .def = 0x2c,
}, },
.fifo_size = 16 * 8,
}, { }, {
.id = 0x0e, .id = 0x0e,
.name = "afir", .name = "afir",
@@ -238,6 +252,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x10, .def = 0x10,
}, },
.fifo_size = 16 * 32,
}, { }, {
.id = 0x0f, .id = 0x0f,
.name = "avpcarm7r", .name = "avpcarm7r",
@@ -252,6 +267,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x04, .def = 0x04,
}, },
.fifo_size = 16 * 2,
}, { }, {
.id = 0x10, .id = 0x10,
.name = "displayhc", .name = "displayhc",
@@ -266,6 +282,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xff, .def = 0xff,
}, },
.fifo_size = 16 * 2,
}, { }, {
.id = 0x11, .id = 0x11,
.name = "displayhcb", .name = "displayhcb",
@@ -280,6 +297,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xff, .def = 0xff,
}, },
.fifo_size = 16 * 2,
}, { }, {
.id = 0x12, .id = 0x12,
.name = "fdcdrd", .name = "fdcdrd",
@@ -294,6 +312,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x0a, .def = 0x0a,
}, },
.fifo_size = 16 * 48,
}, { }, {
.id = 0x13, .id = 0x13,
.name = "fdcdrd2", .name = "fdcdrd2",
@@ -308,6 +327,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x0a, .def = 0x0a,
}, },
.fifo_size = 16 * 48,
}, { }, {
.id = 0x14, .id = 0x14,
.name = "g2dr", .name = "g2dr",
@@ -322,6 +342,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x0a, .def = 0x0a,
}, },
.fifo_size = 16 * 48,
}, { }, {
.id = 0x15, .id = 0x15,
.name = "hdar", .name = "hdar",
@@ -336,6 +357,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xff, .def = 0xff,
}, },
.fifo_size = 16 * 16,
}, { }, {
.id = 0x16, .id = 0x16,
.name = "host1xdmar", .name = "host1xdmar",
@@ -350,6 +372,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x05, .def = 0x05,
}, },
.fifo_size = 16 * 16,
}, { }, {
.id = 0x17, .id = 0x17,
.name = "host1xr", .name = "host1xr",
@@ -364,6 +387,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x50, .def = 0x50,
}, },
.fifo_size = 16 * 8,
}, { }, {
.id = 0x18, .id = 0x18,
.name = "idxsrd", .name = "idxsrd",
@@ -378,6 +402,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x13, .def = 0x13,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x19, .id = 0x19,
.name = "idxsrd2", .name = "idxsrd2",
@@ -392,6 +417,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x13, .def = 0x13,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x1a, .id = 0x1a,
.name = "mpe_ipred", .name = "mpe_ipred",
@@ -406,6 +432,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x80, .def = 0x80,
}, },
.fifo_size = 16 * 2,
}, { }, {
.id = 0x1b, .id = 0x1b,
.name = "mpeamemrd", .name = "mpeamemrd",
@@ -420,6 +447,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x42, .def = 0x42,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x1c, .id = 0x1c,
.name = "mpecsrd", .name = "mpecsrd",
@@ -434,6 +462,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xff, .def = 0xff,
}, },
.fifo_size = 16 * 8,
}, { }, {
.id = 0x1d, .id = 0x1d,
.name = "ppcsahbdmar", .name = "ppcsahbdmar",
@@ -448,6 +477,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x10, .def = 0x10,
}, },
.fifo_size = 16 * 2,
}, { }, {
.id = 0x1e, .id = 0x1e,
.name = "ppcsahbslvr", .name = "ppcsahbslvr",
@@ -462,6 +492,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x12, .def = 0x12,
}, },
.fifo_size = 16 * 8,
}, { }, {
.id = 0x1f, .id = 0x1f,
.name = "satar", .name = "satar",
@@ -476,6 +507,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x33, .def = 0x33,
}, },
.fifo_size = 16 * 32,
}, { }, {
.id = 0x20, .id = 0x20,
.name = "texsrd", .name = "texsrd",
@@ -490,6 +522,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x13, .def = 0x13,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x21, .id = 0x21,
.name = "texsrd2", .name = "texsrd2",
@@ -504,6 +537,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x13, .def = 0x13,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x22, .id = 0x22,
.name = "vdebsevr", .name = "vdebsevr",
@@ -518,6 +552,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xff, .def = 0xff,
}, },
.fifo_size = 16 * 8,
}, { }, {
.id = 0x23, .id = 0x23,
.name = "vdember", .name = "vdember",
@@ -532,6 +567,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xd0, .def = 0xd0,
}, },
.fifo_size = 16 * 4,
}, { }, {
.id = 0x24, .id = 0x24,
.name = "vdemcer", .name = "vdemcer",
@@ -546,6 +582,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x2a, .def = 0x2a,
}, },
.fifo_size = 16 * 16,
}, { }, {
.id = 0x25, .id = 0x25,
.name = "vdetper", .name = "vdetper",
@@ -560,6 +597,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x74, .def = 0x74,
}, },
.fifo_size = 16 * 16,
}, { }, {
.id = 0x26, .id = 0x26,
.name = "mpcorelpr", .name = "mpcorelpr",
@@ -570,6 +608,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x04, .def = 0x04,
}, },
.fifo_size = 16 * 14,
}, { }, {
.id = 0x27, .id = 0x27,
.name = "mpcorer", .name = "mpcorer",
@@ -580,6 +619,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x04, .def = 0x04,
}, },
.fifo_size = 16 * 14,
}, { }, {
.id = 0x28, .id = 0x28,
.name = "eppu", .name = "eppu",
@@ -594,6 +634,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x6c, .def = 0x6c,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x29, .id = 0x29,
.name = "eppv", .name = "eppv",
@@ -608,6 +649,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x6c, .def = 0x6c,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x2a, .id = 0x2a,
.name = "eppy", .name = "eppy",
@@ -622,6 +664,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x6c, .def = 0x6c,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x2b, .id = 0x2b,
.name = "mpeunifbw", .name = "mpeunifbw",
@@ -636,6 +679,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x13, .def = 0x13,
}, },
.fifo_size = 16 * 8,
}, { }, {
.id = 0x2c, .id = 0x2c,
.name = "viwsb", .name = "viwsb",
@@ -650,6 +694,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x12, .def = 0x12,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x2d, .id = 0x2d,
.name = "viwu", .name = "viwu",
@@ -664,6 +709,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xb2, .def = 0xb2,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x2e, .id = 0x2e,
.name = "viwv", .name = "viwv",
@@ -678,6 +724,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xb2, .def = 0xb2,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x2f, .id = 0x2f,
.name = "viwy", .name = "viwy",
@@ -692,6 +739,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x12, .def = 0x12,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x30, .id = 0x30,
.name = "g2dw", .name = "g2dw",
@@ -706,6 +754,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x9, .def = 0x9,
}, },
.fifo_size = 16 * 128,
}, { }, {
.id = 0x31, .id = 0x31,
.name = "afiw", .name = "afiw",
@@ -720,6 +769,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x0c, .def = 0x0c,
}, },
.fifo_size = 16 * 32,
}, { }, {
.id = 0x32, .id = 0x32,
.name = "avpcarm7w", .name = "avpcarm7w",
@@ -734,6 +784,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x0e, .def = 0x0e,
}, },
.fifo_size = 16 * 2,
}, { }, {
.id = 0x33, .id = 0x33,
.name = "fdcdwr", .name = "fdcdwr",
@@ -748,6 +799,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x0a, .def = 0x0a,
}, },
.fifo_size = 16 * 48,
}, { }, {
.id = 0x34, .id = 0x34,
.name = "fdcdwr2", .name = "fdcdwr2",
@@ -762,6 +814,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x0a, .def = 0x0a,
}, },
.fifo_size = 16 * 48,
}, { }, {
.id = 0x35, .id = 0x35,
.name = "hdaw", .name = "hdaw",
@@ -776,6 +829,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xff, .def = 0xff,
}, },
.fifo_size = 16 * 16,
}, { }, {
.id = 0x36, .id = 0x36,
.name = "host1xw", .name = "host1xw",
@@ -790,6 +844,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x10, .def = 0x10,
}, },
.fifo_size = 16 * 32,
}, { }, {
.id = 0x37, .id = 0x37,
.name = "ispw", .name = "ispw",
@@ -804,6 +859,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xff, .def = 0xff,
}, },
.fifo_size = 16 * 64,
}, { }, {
.id = 0x38, .id = 0x38,
.name = "mpcorelpw", .name = "mpcorelpw",
@@ -814,6 +870,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x0e, .def = 0x0e,
}, },
.fifo_size = 16 * 24,
}, { }, {
.id = 0x39, .id = 0x39,
.name = "mpcorew", .name = "mpcorew",
@@ -824,6 +881,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x0e, .def = 0x0e,
}, },
.fifo_size = 16 * 24,
}, { }, {
.id = 0x3a, .id = 0x3a,
.name = "mpecswr", .name = "mpecswr",
@@ -838,6 +896,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xff, .def = 0xff,
}, },
.fifo_size = 16 * 8,
}, { }, {
.id = 0x3b, .id = 0x3b,
.name = "ppcsahbdmaw", .name = "ppcsahbdmaw",
@@ -852,6 +911,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x10, .def = 0x10,
}, },
.fifo_size = 16 * 2,
}, { }, {
.id = 0x3c, .id = 0x3c,
.name = "ppcsahbslvw", .name = "ppcsahbslvw",
@@ -866,6 +926,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x06, .def = 0x06,
}, },
.fifo_size = 16 * 4,
}, { }, {
.id = 0x3d, .id = 0x3d,
.name = "sataw", .name = "sataw",
@@ -880,6 +941,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x33, .def = 0x33,
}, },
.fifo_size = 16 * 32,
}, { }, {
.id = 0x3e, .id = 0x3e,
.name = "vdebsevw", .name = "vdebsevw",
@@ -894,6 +956,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xff, .def = 0xff,
}, },
.fifo_size = 16 * 4,
}, { }, {
.id = 0x3f, .id = 0x3f,
.name = "vdedbgw", .name = "vdedbgw",
@@ -908,6 +971,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0xff, .def = 0xff,
}, },
.fifo_size = 16 * 16,
}, { }, {
.id = 0x40, .id = 0x40,
.name = "vdembew", .name = "vdembew",
@@ -922,6 +986,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x42, .def = 0x42,
}, },
.fifo_size = 16 * 2,
}, { }, {
.id = 0x41, .id = 0x41,
.name = "vdetpmw", .name = "vdetpmw",
@@ -936,6 +1001,7 @@ static const struct tegra_mc_client tegra30_mc_clients[] = {
.mask = 0xff, .mask = 0xff,
.def = 0x2a, .def = 0x2a,
}, },
.fifo_size = 16 * 16,
}, },
}; };