1*f7ea6d52SBryan O'Donoghue /* 2*f7ea6d52SBryan O'Donoghue * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved. 3*f7ea6d52SBryan O'Donoghue * 4*f7ea6d52SBryan O'Donoghue * SPDX-License-Identifier: BSD-3-Clause 5*f7ea6d52SBryan O'Donoghue */ 6*f7ea6d52SBryan O'Donoghue 7*f7ea6d52SBryan O'Donoghue #include <mmio.h> 8*f7ea6d52SBryan O'Donoghue #include <imx_regs.h> 9*f7ea6d52SBryan O'Donoghue #include <imx_snvs.h> 10*f7ea6d52SBryan O'Donoghue 11*f7ea6d52SBryan O'Donoghue void imx_snvs_init(void) 12*f7ea6d52SBryan O'Donoghue { 13*f7ea6d52SBryan O'Donoghue struct snvs *snvs = (struct snvs *)SNVS_BASE; 14*f7ea6d52SBryan O'Donoghue uintptr_t addr; 15*f7ea6d52SBryan O'Donoghue uint32_t val; 16*f7ea6d52SBryan O'Donoghue 17*f7ea6d52SBryan O'Donoghue addr = (uintptr_t)&snvs->hpcomr; 18*f7ea6d52SBryan O'Donoghue val = mmio_read_32(addr); 19*f7ea6d52SBryan O'Donoghue val |= HPCOMR_NPSWA_EN; 20*f7ea6d52SBryan O'Donoghue mmio_write_32(addr, val); 21*f7ea6d52SBryan O'Donoghue } 22