Lines Matching +full:client +full:- +full:id

1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2017-2021 NVIDIA CORPORATION. All rights reserved.
16 #include <dt-bindings/memory/tegra186-mc.h>
27 for (i = 0; i < mc->soc->num_clients; i++) { in tegra186_mc_program_sid()
28 const struct tegra_mc_client *client = &mc->soc->clients[i]; in tegra186_mc_program_sid() local
31 override = readl(mc->regs + client->regs.sid.override); in tegra186_mc_program_sid()
32 security = readl(mc->regs + client->regs.sid.security); in tegra186_mc_program_sid()
34 dev_dbg(mc->dev, "client %s: override: %x security: %x\n", in tegra186_mc_program_sid()
35 client->name, override, security); in tegra186_mc_program_sid()
37 dev_dbg(mc->dev, "setting SID %u for %s\n", client->sid, in tegra186_mc_program_sid()
38 client->name); in tegra186_mc_program_sid()
39 writel(client->sid, mc->regs + client->regs.sid.override); in tegra186_mc_program_sid()
41 override = readl(mc->regs + client->regs.sid.override); in tegra186_mc_program_sid()
42 security = readl(mc->regs + client->regs.sid.security); in tegra186_mc_program_sid()
44 dev_dbg(mc->dev, "client %s: override: %x security: %x\n", in tegra186_mc_program_sid()
45 client->name, override, security); in tegra186_mc_program_sid()
53 err = of_platform_populate(mc->dev->of_node, NULL, NULL, mc->dev); in tegra186_mc_probe()
64 of_platform_depopulate(mc->dev); in tegra186_mc_remove()
76 const struct tegra_mc_client *client, in tegra186_mc_client_sid_override() argument
81 value = readl(mc->regs + client->regs.sid.security); in tegra186_mc_client_sid_override()
85 * for this memory client, there's nothing we can do here. in tegra186_mc_client_sid_override()
100 writel(value, mc->regs + client->regs.sid.security); in tegra186_mc_client_sid_override()
103 value = readl(mc->regs + client->regs.sid.override); in tegra186_mc_client_sid_override()
107 dev_dbg(mc->dev, "overriding SID %x for %s with %x\n", old, in tegra186_mc_client_sid_override()
108 client->name, sid); in tegra186_mc_client_sid_override()
109 writel(sid, mc->regs + client->regs.sid.override); in tegra186_mc_client_sid_override()
121 while (!of_parse_phandle_with_args(dev->of_node, "interconnects", "#interconnect-cells", in tegra186_mc_probe_device()
123 if (args.np == mc->dev->of_node && args.args_count != 0) { in tegra186_mc_probe_device()
124 for (i = 0; i < mc->soc->num_clients; i++) { in tegra186_mc_probe_device()
125 const struct tegra_mc_client *client = &mc->soc->clients[i]; in tegra186_mc_probe_device() local
127 if (client->id == args.args[0]) { in tegra186_mc_probe_device()
128 u32 sid = fwspec->ids[0] & MC_SID_STREAMID_OVERRIDE_MASK; in tegra186_mc_probe_device()
130 tegra186_mc_client_sid_override(mc, client, sid); in tegra186_mc_probe_device()
152 .id = TEGRA186_MEMORY_CLIENT_PTCR,
162 .id = TEGRA186_MEMORY_CLIENT_AFIR,
172 .id = TEGRA186_MEMORY_CLIENT_HDAR,
182 .id = TEGRA186_MEMORY_CLIENT_HOST1XDMAR,
192 .id = TEGRA186_MEMORY_CLIENT_NVENCSRD,
202 .id = TEGRA186_MEMORY_CLIENT_SATAR,
212 .id = TEGRA186_MEMORY_CLIENT_MPCORER,
222 .id = TEGRA186_MEMORY_CLIENT_NVENCSWR,
232 .id = TEGRA186_MEMORY_CLIENT_AFIW,
242 .id = TEGRA186_MEMORY_CLIENT_HDAW,
252 .id = TEGRA186_MEMORY_CLIENT_MPCOREW,
262 .id = TEGRA186_MEMORY_CLIENT_SATAW,
272 .id = TEGRA186_MEMORY_CLIENT_ISPRA,
282 .id = TEGRA186_MEMORY_CLIENT_ISPWA,
292 .id = TEGRA186_MEMORY_CLIENT_ISPWB,
302 .id = TEGRA186_MEMORY_CLIENT_XUSB_HOSTR,
312 .id = TEGRA186_MEMORY_CLIENT_XUSB_HOSTW,
322 .id = TEGRA186_MEMORY_CLIENT_XUSB_DEVR,
332 .id = TEGRA186_MEMORY_CLIENT_XUSB_DEVW,
342 .id = TEGRA186_MEMORY_CLIENT_TSECSRD,
352 .id = TEGRA186_MEMORY_CLIENT_TSECSWR,
362 .id = TEGRA186_MEMORY_CLIENT_GPUSRD,
372 .id = TEGRA186_MEMORY_CLIENT_GPUSWR,
382 .id = TEGRA186_MEMORY_CLIENT_SDMMCRA,
392 .id = TEGRA186_MEMORY_CLIENT_SDMMCRAA,
402 .id = TEGRA186_MEMORY_CLIENT_SDMMCR,
412 .id = TEGRA186_MEMORY_CLIENT_SDMMCRAB,
422 .id = TEGRA186_MEMORY_CLIENT_SDMMCWA,
432 .id = TEGRA186_MEMORY_CLIENT_SDMMCWAA,
442 .id = TEGRA186_MEMORY_CLIENT_SDMMCW,
452 .id = TEGRA186_MEMORY_CLIENT_SDMMCWAB,
462 .id = TEGRA186_MEMORY_CLIENT_VICSRD,
472 .id = TEGRA186_MEMORY_CLIENT_VICSWR,
482 .id = TEGRA186_MEMORY_CLIENT_VIW,
492 .id = TEGRA186_MEMORY_CLIENT_NVDECSRD,
502 .id = TEGRA186_MEMORY_CLIENT_NVDECSWR,
512 .id = TEGRA186_MEMORY_CLIENT_APER,
522 .id = TEGRA186_MEMORY_CLIENT_APEW,
532 .id = TEGRA186_MEMORY_CLIENT_NVJPGSRD,
542 .id = TEGRA186_MEMORY_CLIENT_NVJPGSWR,
552 .id = TEGRA186_MEMORY_CLIENT_SESRD,
562 .id = TEGRA186_MEMORY_CLIENT_SESWR,
572 .id = TEGRA186_MEMORY_CLIENT_ETRR,
582 .id = TEGRA186_MEMORY_CLIENT_ETRW,
592 .id = TEGRA186_MEMORY_CLIENT_TSECSRDB,
602 .id = TEGRA186_MEMORY_CLIENT_TSECSWRB,
612 .id = TEGRA186_MEMORY_CLIENT_GPUSRD2,
622 .id = TEGRA186_MEMORY_CLIENT_GPUSWR2,
632 .id = TEGRA186_MEMORY_CLIENT_AXISR,
642 .id = TEGRA186_MEMORY_CLIENT_AXISW,
652 .id = TEGRA186_MEMORY_CLIENT_EQOSR,
662 .id = TEGRA186_MEMORY_CLIENT_EQOSW,
672 .id = TEGRA186_MEMORY_CLIENT_UFSHCR,
682 .id = TEGRA186_MEMORY_CLIENT_UFSHCW,
692 .id = TEGRA186_MEMORY_CLIENT_NVDISPLAYR,
702 .id = TEGRA186_MEMORY_CLIENT_BPMPR,
712 .id = TEGRA186_MEMORY_CLIENT_BPMPW,
722 .id = TEGRA186_MEMORY_CLIENT_BPMPDMAR,
732 .id = TEGRA186_MEMORY_CLIENT_BPMPDMAW,
742 .id = TEGRA186_MEMORY_CLIENT_AONR,
752 .id = TEGRA186_MEMORY_CLIENT_AONW,
762 .id = TEGRA186_MEMORY_CLIENT_AONDMAR,
772 .id = TEGRA186_MEMORY_CLIENT_AONDMAW,
782 .id = TEGRA186_MEMORY_CLIENT_SCER,
792 .id = TEGRA186_MEMORY_CLIENT_SCEW,
802 .id = TEGRA186_MEMORY_CLIENT_SCEDMAR,
812 .id = TEGRA186_MEMORY_CLIENT_SCEDMAW,
822 .id = TEGRA186_MEMORY_CLIENT_APEDMAR,
832 .id = TEGRA186_MEMORY_CLIENT_APEDMAW,
842 .id = TEGRA186_MEMORY_CLIENT_NVDISPLAYR1,
852 .id = TEGRA186_MEMORY_CLIENT_VICSRD1,
862 .id = TEGRA186_MEMORY_CLIENT_NVDECSRD1,