1*b45b5bacSMarek Vasut /* 2*b45b5bacSMarek Vasut * Copyright (c) 2015-2025, Renesas Electronics Corporation. All rights reserved. 3*b45b5bacSMarek Vasut * 4*b45b5bacSMarek Vasut * SPDX-License-Identifier: BSD-3-Clause 5*b45b5bacSMarek Vasut */ 6*b45b5bacSMarek Vasut 7*b45b5bacSMarek Vasut #include <lib/mmio.h> 8*b45b5bacSMarek Vasut #include <lib/utils_def.h> 9*b45b5bacSMarek Vasut 10*b45b5bacSMarek Vasut #define RCAR_CPG_BASE 0xE6150000U 11*b45b5bacSMarek Vasut #define RCAR_CPG_CPGWPR (RCAR_CPG_BASE + 0x0000U) 12*b45b5bacSMarek Vasut #define RCAR_CPG_CPGWPCR (RCAR_CPG_BASE + 0x0004U) 13*b45b5bacSMarek Vasut 14*b45b5bacSMarek Vasut #define RCAR_CPG_MSTPCR27 (RCAR_CPG_BASE + 0x2D6CU) 15*b45b5bacSMarek Vasut #define RCAR_CPG_MSTPSR27 (RCAR_CPG_BASE + 0x2E6CU) 16*b45b5bacSMarek Vasut 17*b45b5bacSMarek Vasut #define RCAR_PTPRO_BASE 0xE6449000U 18*b45b5bacSMarek Vasut #define RCAR_PTPSCR0 (RCAR_PTPRO_BASE + 0x780U) 19*b45b5bacSMarek Vasut #define RCAR_PTPSCR1 (RCAR_PTPRO_BASE + 0x784U) 20*b45b5bacSMarek Vasut rcar_ptp_setup(void)21*b45b5bacSMarek Vasutvoid rcar_ptp_setup(void) 22*b45b5bacSMarek Vasut { 23*b45b5bacSMarek Vasut #if PTP_NONSECURE_ACCESS 24*b45b5bacSMarek Vasut mmio_clrbits_32(RCAR_CPG_MSTPCR27, BIT(23)); 25*b45b5bacSMarek Vasut while ((mmio_read_32(RCAR_CPG_MSTPSR27) & BIT(23)) != 0) 26*b45b5bacSMarek Vasut ; 27*b45b5bacSMarek Vasut 28*b45b5bacSMarek Vasut mmio_write_32(RCAR_PTPSCR0, 0x30003); /* PTPSCR0 */ 29*b45b5bacSMarek Vasut mmio_write_32(RCAR_PTPSCR1, 0x30003); /* PTPSCR1 */ 30*b45b5bacSMarek Vasut #endif /* PTP_NONSECURE_ACCESS */ 31*b45b5bacSMarek Vasut } 32