|  | /* | 
|  | * Copyright 2023 Google LLC | 
|  | * | 
|  | * Licensed under the Apache License, Version 2.0 (the "License"); | 
|  | * you may not use this file except in compliance with the License. | 
|  | * You may obtain a copy of the License at | 
|  | * | 
|  | *      http://www.apache.org/licenses/LICENSE-2.0 | 
|  | * | 
|  | * Unless required by applicable law or agreed to in writing, software | 
|  | * distributed under the License is distributed on an "AS IS" BASIS, | 
|  | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
|  | * See the License for the specific language governing permissions and | 
|  | * limitations under the License. | 
|  | */ | 
|  |  | 
|  |  | 
|  | #include "hw/top_matcha/sw/autogen/top_matcha.h" | 
|  | #include "sw/device/lib/arch/device.h" | 
|  | #include "sw/device/lib/dif/dif_isp_wrapper.h" | 
|  | #include "sw/device/lib/dif/dif_uart.h" | 
|  | #include "sw/device/lib/runtime/hart.h" | 
|  | #include "sw/device/lib/runtime/log.h" | 
|  | #include "sw/device/lib/runtime/print.h" | 
|  | #include "sw/device/lib/testing/test_framework/check.h" | 
|  | #include "sw/device/lib/testing/test_framework/ottf_test_config.h" | 
|  | #include "sw/device/lib/testing/test_framework/status.h" | 
|  | #include "sw/device/lib/testing/test_framework/test_util.h" | 
|  |  | 
|  | OTTF_DEFINE_TEST_CONFIG(); | 
|  |  | 
|  | static dif_uart_t uart; | 
|  | static dif_isp_wrapper_t isp_wrapper; | 
|  |  | 
|  | void _ottf_main(void) { | 
|  | // Initialize the UART to enable logging for non-DV simulation platforms. | 
|  | if (kDeviceType != kDeviceSimDV) { | 
|  | init_uart(TOP_MATCHA_UART0_BASE_ADDR, &uart); | 
|  | } | 
|  |  | 
|  | LOG_INFO("Hello Shodan!"); | 
|  |  | 
|  | // Start testing | 
|  | test_status_set(kTestStatusInTest); | 
|  |  | 
|  | CHECK_DIF_OK(dif_isp_wrapper_init( | 
|  | mmio_region_from_addr(TOP_MATCHA_CAM_CTRL_BASE_ADDR), &isp_wrapper)); | 
|  |  | 
|  | test_status_set(kTestStatusPassed); | 
|  | } |