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