1*91f16700Schasinglulu /* 2*91f16700Schasinglulu * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved. 3*91f16700Schasinglulu * 4*91f16700Schasinglulu * SPDX-License-Identifier: BSD-3-Clause 5*91f16700Schasinglulu */ 6*91f16700Schasinglulu 7*91f16700Schasinglulu #include <stdint.h> 8*91f16700Schasinglulu 9*91f16700Schasinglulu #include <lib/mmio.h> 10*91f16700Schasinglulu 11*91f16700Schasinglulu #include <imx_caam.h> 12*91f16700Schasinglulu 13*91f16700Schasinglulu void imx_caam_init(void) 14*91f16700Schasinglulu { 15*91f16700Schasinglulu struct caam_ctrl *caam = (struct caam_ctrl *)CAAM_AIPS_BASE; 16*91f16700Schasinglulu uint32_t reg; 17*91f16700Schasinglulu int i; 18*91f16700Schasinglulu 19*91f16700Schasinglulu for (i = 0; i < CAAM_NUM_JOB_RINGS; i++) { 20*91f16700Schasinglulu reg = mmio_read_32((uintptr_t)&caam->jr[i].jrmidr_ms); 21*91f16700Schasinglulu reg |= JROWN_NS | JROWN_MID; 22*91f16700Schasinglulu mmio_write_32((uintptr_t)&caam->jr[i].jrmidr_ms, reg); 23*91f16700Schasinglulu } 24*91f16700Schasinglulu } 25