mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-22 17:36:20 +03:00
gpu: nvgpu: mig: Defer dev_nodes creation and create new power node to support MIG
- This is deferring the dev_nodes creation after power_on to select the MIG config and to create the dev_nodes as per the selected MIG config. - The patch is adding a device node to issue power on. The nodes are: for igpu :/dev/nvgpu/igpu0/power for dgpu:/dev/nvgpu/dgpu-0001:01:00.0/power To issue power on : echo "1" > /dev/nvgpu/igpu0/power echo "1" > /dev/nvgpu/dgpu-0001:01:00.0/power JIRA NVGPU-6633 Change-Id: Ic4f1f3e42724cc788dcfaf0e881d188fd3bd1ce1 Signed-off-by: dt <dt@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2512647 Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
@@ -438,6 +438,18 @@ int gk20a_pm_finalize_poweron(struct device *dev)
|
||||
if (err)
|
||||
goto done;
|
||||
|
||||
/**
|
||||
* TODO: Need to add nvgpu_early_poweron() sequence before
|
||||
* creating device nodes.
|
||||
*/
|
||||
if (!l->dev_nodes_created) {
|
||||
err = gk20a_user_init(dev);
|
||||
if (err) {
|
||||
goto done;
|
||||
}
|
||||
l->dev_nodes_created = true;
|
||||
}
|
||||
|
||||
if (g->sim) {
|
||||
if (g->sim->sim_init_late)
|
||||
err = g->sim->sim_init_late(g);
|
||||
@@ -530,6 +542,9 @@ done:
|
||||
if (err != 0) {
|
||||
nvgpu_disable_irqs(g);
|
||||
nvgpu_remove_sim_support_linux(g);
|
||||
if (l->dev_nodes_created) {
|
||||
gk20a_user_deinit(dev);
|
||||
}
|
||||
}
|
||||
|
||||
nvgpu_mutex_release(&g->power_lock);
|
||||
|
||||
Reference in New Issue
Block a user