diff options
author | Angelos Mouzakitis <a.mouzakitis@virtualopensystems.com> | 2023-10-10 14:33:42 +0000 |
---|---|---|
committer | Angelos Mouzakitis <a.mouzakitis@virtualopensystems.com> | 2023-10-10 14:33:42 +0000 |
commit | af1a266670d040d2f4083ff309d732d648afba2a (patch) | |
tree | 2fc46203448ddcc6f81546d379abfaeb323575e9 /roms/u-boot/arch/arm/mach-tegra/cmd_enterrcm.c | |
parent | e02cda008591317b1625707ff8e115a4841aa889 (diff) |
Change-Id: Iaf8d18082d3991dec7c0ebbea540f092188eb4ec
Diffstat (limited to 'roms/u-boot/arch/arm/mach-tegra/cmd_enterrcm.c')
-rw-r--r-- | roms/u-boot/arch/arm/mach-tegra/cmd_enterrcm.c | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/roms/u-boot/arch/arm/mach-tegra/cmd_enterrcm.c b/roms/u-boot/arch/arm/mach-tegra/cmd_enterrcm.c new file mode 100644 index 000000000..92ff6cb1b --- /dev/null +++ b/roms/u-boot/arch/arm/mach-tegra/cmd_enterrcm.c @@ -0,0 +1,52 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright (c) 2012-2019, NVIDIA CORPORATION. All rights reserved. + * + * Derived from code (arch/arm/lib/reset.c) that is: + * + * (C) Copyright 2002 + * Sysgo Real-Time Solutions, GmbH <www.elinos.com> + * Marius Groeger <mgroeger@sysgo.de> + * + * (C) Copyright 2002 + * Sysgo Real-Time Solutions, GmbH <www.elinos.com> + * Alex Zuepke <azu@sysgo.de> + * + * (C) Copyright 2002 + * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de> + * + * (C) Copyright 2004 + * DAVE Srl + * http://www.dave-tech.it + * http://www.wawnet.biz + * mailto:info@wawnet.biz + * + * (C) Copyright 2004 Texas Insturments + */ + +#include <common.h> +#include <command.h> +#include <cpu_func.h> +#include <irq_func.h> +#include <asm/arch/tegra.h> +#include <asm/arch-tegra/pmc.h> +#include <linux/delay.h> + +static int do_enterrcm(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) +{ + puts("Entering RCM...\n"); + udelay(50000); + + tegra_pmc_writel(2, PMC_SCRATCH0); + disable_interrupts(); + reset_cpu(); + + return 0; +} + +U_BOOT_CMD( + enterrcm, 1, 0, do_enterrcm, + "reset Tegra and enter USB Recovery Mode", + "" +); |