| // Copyright 2022 Google LLC. | |
| // Copyright lowRISC contributors. | |
| // Licensed under the Apache License, Version 2.0, see LICENSE for details. | |
| // SPDX-License-Identifier: Apache-2.0 | |
| #include "sw/device/lib/dif/dif_isp_wrapper.h" | |
| #include <stddef.h> | |
| #include "sw/device/lib/base/bitfield.h" | |
| #include "sw/device/lib/base/macros.h" | |
| #include "sw/device/lib/dif/dif_base.h" | |
| #include "isp_wrapper_regs.h" // Generated. | |
| // ISP configuration: | |
| // size: 120 * 64, colar bar, force triggering interrupts(isp_irq and mi_irq) | |
| dif_result_t dif_isp_wrapper_set_en(const dif_isp_wrapper_t *isp_wrapper) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0010, 0x00000049); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0014, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400, 0x00206016); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0004, 0x00000011); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0008, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x000C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0010, 0x00000078); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0014, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x04, | |
| 0x00d9c054); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x08, | |
| 0x001e0040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x0C, 0x002e400f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x10, 0x00484004); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x14, 0x00454001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x18, | |
| 0x000a0015); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x1C, | |
| 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x20, | |
| 0x4d777439); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x24, | |
| 0x00000003); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x000, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x004, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x008, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x00C, 0x00000078); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x010, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x624 + 0x0, 0x00010001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x624 + 0x4, 0x01580393); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x0, 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x4, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x8, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0xC, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x10, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x000, 0x80000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x004, 0x0000000c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x008, 0x00000008); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x00C, 0x00000015); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x010, 0x00000008); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x800 + 0x0, | |
| 0x011a0109); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x800 + 0x4, 0x01260109); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x810, 0x00000004); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x000, 0x000003f3); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x004, | |
| 0x0000001a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x008, | |
| 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x00C, 0x00000029); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x010, 0x00000043); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x014, | |
| 0x00032040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x018, 0x0000000c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x01C, 0x0000000a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x020, 0x00000008); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x024, 0x00000004); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x028, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x000, 0x0000000c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x004, | |
| 0x0020003c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x008, 0x002b01e5); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x00C, 0x01f10014); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x010, 0x01fa0000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x014, 0x00050010); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x018, 0x00050010); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x04, 0x000000f6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x08, 0x00000252); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x0C, 0x000000c9); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x10, 0x000000db); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x14, 0x00000036); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x18, 0x00000269); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x1C, 0x0000008a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x20, 0x00000299); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x24, 0x00000217); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x28, 0x00000118); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x2C, 0x000001d1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x30, 0x000003ed); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x34, 0x000001c1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x38, 0x000000f8); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x3C, 0x0000026a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x40, 0x000002f4); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x44, 0x0000024e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0550, 0x80000006); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0554, 0x00000060); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0558, 0x0000002f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x055c, 0x00000009); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0560, 0x0000000d); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0564, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0568, 0x0000a504); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x056C, 0x11b98318); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x0, 0x00000026); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x4, 0x0000004b); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x8, 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0xC, 0x000001ea); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x10, 0x000001d6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x14, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x18, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x1C, 0x000001ca); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x20, 0x000001f6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0xA24, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A30, 0x000000dd); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A34, 0x000007c6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A38, 0x000007df); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A3C, 0x000007bf); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A40, 0x000000ec); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A44, 0x000007de); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A48, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A4C, 0x000007ae); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A50, 0x000000e0); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A54, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A58, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A5C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B00, 0x0004007c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B0C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B10, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B18, 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x04 + 0x0C00, | |
| 0x00008c10); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x08 + 0x0C00, | |
| 0x000041f5); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0C + 0x0C00, | |
| 0x0000604f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x10 + 0x0C00, | |
| 0x0000bad1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x14 + 0x0C00, | |
| 0x0000d46c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x18 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x1C + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x20 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x24 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x6C + 0x0C00, | |
| 0x0000006a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x08 + 0x0E00, | |
| 0x5a000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0C + 0x0E00, | |
| 0x00001e00); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x10 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x18 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x1C + 0x0E00, | |
| 0x5a002000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x20 + 0x0E00, | |
| 0x00001e00); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x24 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x2C + 0x0E00, | |
| 0x5a004000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x30 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x34 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0xF8 + 0x0E00, 0x0000007d); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x104 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x108 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x110 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x130 + 0x0E00, | |
| 0x00008000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x134 + 0x0E00, | |
| 0x0000a000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x138 + 0x0E00, | |
| 0x0000c000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x150 + 0x0E00, | |
| 0x00000078); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x15C + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x160 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x164 + 0x0E00, | |
| 0x00000078); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x168 + 0x0E00, | |
| 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x16C + 0x0E00, | |
| 0x00001e00); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x00 + 0x0E00, 0x007a2801); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x00, 0x00000c63); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0000, 0x00207257); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x00 + 0x0C00, 0x00000120); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x04 + 0x0E00, 0x00000050); | |
| return kDifOk; | |
| } | |
| // ISP configuration: | |
| // size: 64 * 64, TPG(test pattern generation mode) | |
| dif_result_t | |
| dif_isp_wrapper_set_tpg_64_64_en(const dif_isp_wrapper_t *isp_wrapper) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0000, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0010, 0x00000049); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0014, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0000, 0x00206016); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0004, 0x00000011); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0008, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x000C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0010, 0x00000080); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0014, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x04, | |
| 0x00d1c054); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x08, | |
| 0x00200040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x0C, 0x003e400f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x10, 0x002e4004); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x14, 0x00454001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x18, | |
| 0x000a8015); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x1C, | |
| 0x00000010); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x20, | |
| 0x4d777439); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x24, | |
| 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x000, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x004, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x008, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x00C, 0x00000080); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x010, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x624 + 0x0, 0x00010001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x624 + 0x4, 0x01580393); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x0, 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x4, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x8, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0xC, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x10, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x000, 0x80000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x004, 0x00000017); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x008, 0x0000001e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x00C, 0x00000013); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x010, 0x00000006); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x800 + 0x0, | |
| 0x011a0109); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x800 + 0x4, 0x01260109); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x810, 0x00000004); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x000, 0x000003f3); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x004, | |
| 0x0000001a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x008, | |
| 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x00C, 0x00000029); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x010, 0x00000043); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x014, | |
| 0x00032040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x018, 0x0000000c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x01C, 0x0000000a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x020, 0x00000008); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x024, 0x00000004); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x028, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x000, 0x0000000c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x004, | |
| 0x00200040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x008, 0x002b01e5); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x00C, 0x01f10014); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x010, 0x01fa0000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x014, 0x00050010); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x018, 0x00050010); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x04, 0x000000f6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x08, 0x00000252); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x0C, 0x000000c9); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x10, 0x000000db); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x14, 0x00000036); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x18, 0x00000269); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x1C, 0x0000008a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x20, 0x00000299); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x24, 0x00000217); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x28, 0x00000118); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x2C, 0x000001d1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x30, 0x000003ed); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x34, 0x000001c1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x38, 0x000000f8); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x3C, 0x0000026a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x40, 0x000002f4); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x44, 0x0000024e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0550, 0x80000006); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0554, 0x00000074); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0558, 0x00000021); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x055c, 0x00000006); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0560, 0x00000010); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0564, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0568, 0x0000a504); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x056C, 0x11b98318); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x0, 0x00000026); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x4, 0x0000004b); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x8, 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0xC, 0x000001ea); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x10, 0x000001d6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x14, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x18, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x1C, 0x000001ca); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x20, 0x000001f6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0xA24, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A30, 0x000000dd); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A34, 0x000007c6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A38, 0x000007df); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A3C, 0x000007bf); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A40, 0x000000ec); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A44, 0x000007de); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A48, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A4C, 0x000007ae); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A50, 0x000000e0); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A54, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A58, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A5C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B00, 0x0004007c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B0C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B10, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B18, 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x04 + 0x0C00, | |
| 0x00007efe); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x08 + 0x0C00, | |
| 0x00007df8); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0C + 0x0C00, | |
| 0x00007df8); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x10 + 0x0C00, | |
| 0x00008c10); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x14 + 0x0C00, | |
| 0x0000bad1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x18 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x1C + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x20 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x24 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x6C + 0x0C00, | |
| 0x0000006a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x08 + 0x0E00, | |
| 0x5a000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0C + 0x0E00, | |
| 0x00001000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x10 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x18 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x1C + 0x0E00, | |
| 0x5a001000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x20 + 0x0E00, | |
| 0x00001000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x24 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x2C + 0x0E00, | |
| 0x5a002000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x30 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x34 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0xF8 + 0x0E00, 0x0000007d); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x104 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x108 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x110 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x130 + 0x0E00, | |
| 0x00004000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x134 + 0x0E00, | |
| 0x00005000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x138 + 0x0E00, | |
| 0x00006000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x150 + 0x0E00, | |
| 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x15C + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x160 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x164 + 0x0E00, | |
| 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x168 + 0x0E00, | |
| 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x16C + 0x0E00, | |
| 0x00001000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x00 + 0x0E00, 0x007a2801); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x00, 0x00000c63); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0000, 0x00207257); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x00 + 0x0C00, 0x00000103); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x04 + 0x0E00, 0x00000050); | |
| return kDifOk; | |
| } | |
| dif_result_t | |
| dif_isp_wrapper_set_tpg_64_64_en_for_enc(const dif_isp_wrapper_t *isp_wrapper) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0000, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0010, 0x00000049); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0014, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0000, 0x00206016); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0004, 0x00000011); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0008, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x000C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0010, 0x00000080); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0014, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x04, | |
| 0x00d1c054); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x08, | |
| 0x00200040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x0C, 0x003e400f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x10, 0x002e4004); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x14, 0x00454001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x18, | |
| 0x000a8015); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x1C, | |
| 0x00000010); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x20, | |
| 0x4d777439); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x24, | |
| 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x000, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x004, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x008, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x00C, 0x00000080); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x010, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x624 + 0x0, 0x00010001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x624 + 0x4, 0x01580393); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x0, 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x4, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x8, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0xC, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x10, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x000, 0x80000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x004, 0x00000017); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x008, 0x0000001e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x00C, 0x00000013); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x010, 0x00000006); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x800 + 0x0, | |
| 0x011a0109); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x800 + 0x4, 0x01260109); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x810, 0x00000004); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x000, 0x000003f3); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x004, | |
| 0x0000001a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x008, | |
| 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x00C, 0x00000029); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x010, 0x00000043); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x014, | |
| 0x00032040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x018, 0x0000000c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x01C, 0x0000000a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x020, 0x00000008); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x024, 0x00000004); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x028, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x000, 0x0000000c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x004, | |
| 0x00200040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x008, 0x002b01e5); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x00C, 0x01f10014); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x010, 0x01fa0000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x014, 0x00050010); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x018, 0x00050010); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x04, 0x000000f6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x08, 0x00000252); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x0C, 0x000000c9); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x10, 0x000000db); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x14, 0x00000036); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x18, 0x00000269); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x1C, 0x0000008a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x20, 0x00000299); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x24, 0x00000217); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x28, 0x00000118); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x2C, 0x000001d1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x30, 0x000003ed); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x34, 0x000001c1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x38, 0x000000f8); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x3C, 0x0000026a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x40, 0x000002f4); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x44, 0x0000024e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0550, 0x80000006); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0554, 0x00000074); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0558, 0x00000021); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x055c, 0x00000006); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0560, 0x00000010); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0564, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0568, 0x0000a504); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x056C, 0x11b98318); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x0, 0x00000026); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x4, 0x0000004b); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x8, 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0xC, 0x000001ea); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x10, 0x000001d6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x14, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x18, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x1C, 0x000001ca); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x20, 0x000001f6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0xA24, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A30, 0x000000dd); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A34, 0x000007c6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A38, 0x000007df); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A3C, 0x000007bf); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A40, 0x000000ec); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A44, 0x000007de); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A48, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A4C, 0x000007ae); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A50, 0x000000e0); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A54, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A58, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A5C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B00, 0x0004007c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B0C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B10, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B18, 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x04 + 0x0C00, | |
| 0x00007efe); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x08 + 0x0C00, | |
| 0x00007df8); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0C + 0x0C00, | |
| 0x00007df8); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x10 + 0x0C00, | |
| 0x00008c10); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x14 + 0x0C00, | |
| 0x0000bad1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x18 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x1C + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x20 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x24 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x6C + 0x0C00, | |
| 0x0000006a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x08 + 0x0E00, | |
| 0x55000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0C + 0x0E00, | |
| 0x00001000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x10 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x18 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x1C + 0x0E00, | |
| 0x55001000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x20 + 0x0E00, | |
| 0x00001000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x24 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x2C + 0x0E00, | |
| 0x55002000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x30 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x34 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0xF8 + 0x0E00, 0x0000007d); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x104 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x108 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x110 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x130 + 0x0E00, | |
| 0x00004000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x134 + 0x0E00, | |
| 0x00005000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x138 + 0x0E00, | |
| 0x00006000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x150 + 0x0E00, | |
| 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x15C + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x160 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x164 + 0x0E00, | |
| 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x168 + 0x0E00, | |
| 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x16C + 0x0E00, | |
| 0x00001000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x00 + 0x0E00, 0x007a2801); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x00, 0x00000c63); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0000, 0x00207257); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x00 + 0x0C00, 0x00000103); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x04 + 0x0E00, 0x00000050); | |
| return kDifOk; | |
| } | |
| dif_result_t | |
| dif_isp_wrapper_set_ml_mem_byp_324x324_en(const dif_isp_wrapper_t *isp_wrapper) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0000, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0010, 0x00000049); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0014, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0000, 0x00206018); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0004, 0x00000199); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0008, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x000C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0010, 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0014, 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x04, | |
| 0x00ad3f05); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x08, | |
| 0x00510144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x0C, 0x0d6e000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x10, 0x028b8004); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x14, 0x0bad0001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x18, | |
| 0x04a1415b); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x1C, | |
| 0x00002a97); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x20, | |
| 0x4d777439); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x24, | |
| 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x000, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x004, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x008, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x00C, 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x010, 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x624 + 0x0, 0x00010001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x624 + 0x4, 0x01580393); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x0, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x4, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x8, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0xC, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x10, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x000, 0x80000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x004, 0x00000020); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x008, 0x00000028); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x00C, 0x00000030); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x010, 0x00000036); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x800 + 0x0, | |
| 0x011a00d1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x800 + 0x4, 0x01260109); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x810, 0x00000414); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x000, 0x00000692); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x004, | |
| 0x00000167); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x008, | |
| 0x00000142); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x00C, 0x00000177); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x010, 0x000001c7); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x014, | |
| 0x0006698a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x018, 0x00000032); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x01C, 0x00000023); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x020, 0x00000019); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x024, 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x028, | |
| 0x00000006); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x000, 0x0000000a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x004, | |
| 0x00a200a2); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x008, 0x00170118); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x00C, 0x01d101ed); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x010, 0x01c100f8); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x014, 0x00020005); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x018, 0x00050019); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x04, 0x000002f4); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x08, 0x0000024e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x0C, 0x00000083); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x10, 0x000001af); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x14, 0x00000346); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x18, 0x000000a5); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x1C, 0x00000304); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x20, 0x00000111); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x24, 0x000003b9); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x28, 0x00000383); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x2C, 0x00000018); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x30, 0x0000028c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x34, 0x0000001e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x38, 0x00000087); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x3C, 0x00000047); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x40, 0x000001a4); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x44, 0x000002bc); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0550, 0x80000007); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0554, 0x0000011c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0558, 0x000000c1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x055c, 0x0000001e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0560, 0x00000078); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0564, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0568, 0x0000c2e6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x056C, 0x8ef9ad1e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x0, 0x00000026); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x4, 0x0000004b); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x8, 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0xC, 0x000001ea); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x10, 0x000001d6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x14, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x18, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x1C, 0x000001ca); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x20, 0x000001f6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0xA24, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A30, 0x000000dd); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A34, 0x000007c6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A38, 0x000007df); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A3C, 0x000007bf); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A40, 0x000000ec); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A44, 0x000007de); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A48, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A4C, 0x000007ae); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A50, 0x000000e0); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A54, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A58, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A5C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B00, 0x00000020); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B0C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B10, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B18, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x04 + 0x0C00, | |
| 0x00008469); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x08 + 0x0C00, | |
| 0x0000a674); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0C + 0x0C00, | |
| 0x0000fa3d); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x10 + 0x0C00, | |
| 0x0000ef61); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x14 + 0x0C00, | |
| 0x0000f9b7); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x18 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x1C + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x20 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x24 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x6C + 0x0C00, | |
| 0x000000fa); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x08 + 0x0E00, | |
| 0x5a300000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0C + 0x0E00, | |
| 0x00019f20); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x10 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x18 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x1C + 0x0E00, | |
| 0x5a320000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x20 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x24 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x2C + 0x0E00, | |
| 0x5a320000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x30 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x34 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0xF8 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x104 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x108 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x110 + 0x0E00, | |
| 0x00000003); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x130 + 0x0E00, | |
| 0x5a340000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x134 + 0x0E00, | |
| 0x5a360000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x138 + 0x0E00, | |
| 0x5a360000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x150 + 0x0E00, | |
| 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x15C + 0x0E00, | |
| 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x160 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x164 + 0x0E00, | |
| 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x168 + 0x0E00, | |
| 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x16C + 0x0E00, | |
| 0x00019a10); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x00 + 0x0E00, 0x003a2808); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x00, 0x00000868); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0000, 0x00207259); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x00 + 0x0C00, 0x00000190); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x04 + 0x0E00, 0x000000b0); | |
| return kDifOk; | |
| } | |
| dif_result_t _dif_isp_wrapper_set_raw_320x240_byp_320x240_en( | |
| const dif_isp_wrapper_t *isp_wrapper, | |
| const uint32_t y_base_ad_init_addr, const uint32_t cb_base_ad_init_addr, | |
| const uint32_t cr_base_ad_init_addr, const uint32_t y_base_ad_init2_addr, | |
| const uint32_t cb_base_ad_init2_addr, const uint32_t cr_base_ad_init2_addr) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0000, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0010, 0x00000049); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0014, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0000, 0x00206018); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0004, 0x000199); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0008, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x000C, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0010, 0x00000140); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0014, 0x000000f0); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x04, | |
| 0x00ad3f05); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x08, | |
| 0x00510144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x0C, 0x0d6e000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x10, 0x028b8004); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x14, 0x0bad0001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x18, | |
| 0x04a1415b); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x1C, | |
| 0x00002a97); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x20, | |
| 0x4d777439); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x24, | |
| 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x000, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x004, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x008, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x00C, 0x00000140); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x010, 0x000000f0); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x624 + 0x0, 0x00010001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x624 + 0x4, 0x01580393); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x0, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x4, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x8, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0xC, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x10, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x000, 0x80000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x004, 0x00000020); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x008, 0x00000028); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x00C, 0x00000030); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x010, 0x00000036); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x800 + 0x0, | |
| 0x011a00d1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x800 + 0x4, 0x01260109); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x810, 0x00000414); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x000, 0x00000692); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x004, | |
| 0x00000167); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x008, | |
| 0x00000142); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x00C, 0x00000177); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x010, 0x000001c7); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x014, | |
| 0x0006698a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x018, 0x00000032); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x01C, 0x00000023); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x020, 0x00000019); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x024, 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x028, | |
| 0x00000006); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x000, 0x0000000a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x004, | |
| 0x00a200a2); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x008, 0x00170118); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x00C, 0x01d101ed); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x010, 0x01c100f8); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x014, 0x00020005); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x018, 0x00050019); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x04, 0x000002f4); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x08, 0x0000024e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x0C, 0x00000083); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x10, 0x000001af); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x14, 0x00000346); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x18, 0x000000a5); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x1C, 0x00000304); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x20, 0x00000111); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x24, 0x000003b9); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x28, 0x00000383); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x2C, 0x00000018); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x30, 0x0000028c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x34, 0x0000001e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x38, 0x00000087); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x3C, 0x00000047); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x40, 0x000001a4); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x44, 0x000002bc); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0550, 0x80000007); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0554, 0x0000011c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0558, 0x000000c1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x055c, 0x0000001e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0560, 0x00000078); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0564, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0568, 0x0000c2e6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x056C, 0x8ef9ad1e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x0, 0x00000026); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x4, 0x0000004b); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x8, 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0xC, 0x000001ea); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x10, 0x000001d6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x14, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x18, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x1C, 0x000001ca); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x20, 0x000001f6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0xA24, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A30, 0x000000dd); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A34, 0x000007c6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A38, 0x000007df); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A3C, 0x000007bf); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A40, 0x000000ec); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A44, 0x000007de); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A48, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A4C, 0x000007ae); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A50, 0x000000e0); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A54, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A58, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A5C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B00, 0x00000020); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B0C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B10, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B18, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x04 + 0x0C00, | |
| 0x00008469); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x08 + 0x0C00, | |
| 0x0000a674); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0C + 0x0C00, | |
| 0x0000fa3d); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x10 + 0x0C00, | |
| 0x0000ef61); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x14 + 0x0C00, | |
| 0x0000f9b7); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x18 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x1C + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x20 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x24 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x6C + 0x0C00, | |
| 0x000000fa); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x08 + 0x0E00, | |
| y_base_ad_init_addr); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0C + 0x0E00, | |
| 0x00012c00); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x10 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x18 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x1C + 0x0E00, | |
| cb_base_ad_init_addr); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x20 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x24 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x2C + 0x0E00, | |
| cr_base_ad_init_addr); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x30 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x34 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0xF8 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x104 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x108 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x110 + 0x0E00, | |
| 0x00000003); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x130 + 0x0E00, | |
| y_base_ad_init2_addr); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x134 + 0x0E00, | |
| cb_base_ad_init2_addr); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x138 + 0x0E00, | |
| cr_base_ad_init2_addr); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x150 + 0x0E00, | |
| 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x15C + 0x0E00, | |
| 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x160 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x164 + 0x0E00, | |
| 0x00000140); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x168 + 0x0E00, | |
| 0x000000f0); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x16C + 0x0E00, | |
| 0x00012c00); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x00 + 0x0E00, 0x003a2808); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x00, 0x00000868); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0000, 0x00207251); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x00 + 0x0C00, 0x00000190); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x04 + 0x0E00, 0x000000b0); | |
| return kDifOk; | |
| } | |
| // ISP configuration: | |
| // raw:320x240, byp:320x240 | |
| dif_result_t dif_isp_wrapper_set_raw_320x240_byp_320x240_en( | |
| const dif_isp_wrapper_t *isp_wrapper) | |
| { | |
| return _dif_isp_wrapper_set_raw_320x240_byp_320x240_en(isp_wrapper, | |
| 0x5a000000, | |
| 0x5a01a000, | |
| 0x5a01a000, | |
| 0x5a020000, | |
| 0x5a03a000, | |
| 0x5a03a000); | |
| } | |
| // ISP configuration: | |
| // raw:320x240, byp:320x240, hps image address: 0x00300000 | |
| dif_result_t | |
| dif_isp_wrapper_set_ml_mem_byp_320x240_en(const dif_isp_wrapper_t *isp_wrapper) | |
| { | |
| return _dif_isp_wrapper_set_raw_320x240_byp_320x240_en(isp_wrapper, | |
| 0x5a300000, | |
| 0x5a320000, | |
| 0x5a320000, | |
| 0x5a340000, | |
| 0x5a360000, | |
| 0x5a360000); | |
| } | |
| // ISP configuration: | |
| // raw:324x324, byp:324x324 | |
| dif_result_t dif_isp_wrapper_set_raw_324x324_byp_324x324_en( | |
| const dif_isp_wrapper_t *isp_wrapper) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0000, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0010, 0x00000049); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0014, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0000, 0x00206018); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0004, 0x00000199); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0008, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x000C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0010, 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0014, 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x04, | |
| 0x00ad3f05); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x08, | |
| 0x00510144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x0C, 0x0d6e000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x10, 0x028b8004); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x14, 0x0bad0001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x18, | |
| 0x04a1415b); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x1C, | |
| 0x00002a97); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x20, | |
| 0x4d777439); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x24, | |
| 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x000, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x004, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x008, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x00C, 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0600 + 0x010, 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x624 + 0x0, 0x00010001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x624 + 0x4, 0x01580393); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x0, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x4, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x8, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0xC, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x700 + 0x10, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x000, 0x80000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x004, 0x00000020); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x008, 0x00000028); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x00C, 0x00000030); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x720 + 0x010, 0x00000036); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x800 + 0x0, | |
| 0x011a00d1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x800 + 0x4, 0x01260109); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x810, 0x00000414); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x000, 0x00000692); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x004, | |
| 0x00000167); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x008, | |
| 0x00000142); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x00C, 0x00000177); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x010, 0x000001c7); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x014, | |
| 0x0006698a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x018, 0x00000032); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x01C, 0x00000023); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x020, 0x00000019); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x024, 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0814 + 0x028, | |
| 0x00000006); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x000, 0x0000000a); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x004, | |
| 0x00a200a2); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x008, 0x00170118); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x00C, 0x01d101ed); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x010, 0x01c100f8); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x014, 0x00020005); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0870 + 0x018, 0x00050019); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x04, 0x000002f4); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x08, 0x0000024e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x0C, 0x00000083); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x10, 0x000001af); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x14, 0x00000346); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x18, 0x000000a5); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x1C, 0x00000304); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x20, 0x00000111); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x24, 0x000003b9); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x28, 0x00000383); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x2C, 0x00000018); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x30, 0x0000028c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x34, 0x0000001e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x38, 0x00000087); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x3C, 0x00000047); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x40, 0x000001a4); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0900 + 0x44, 0x000002bc); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0550, 0x80000007); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0554, 0x0000011c); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0558, 0x000000c1); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x055c, 0x0000001e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0560, 0x00000078); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0564, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0568, 0x0000c2e6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x056C, 0x8ef9ad1e); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x0, 0x00000026); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x4, 0x0000004b); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x8, 0x0000000f); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0xC, 0x000001ea); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x10, 0x000001d6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x14, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x18, 0x00000040); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x1C, 0x000001ca); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0A00 + 0x20, 0x000001f6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0xA24, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A30, 0x000000dd); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A34, 0x000007c6); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A38, 0x000007df); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A3C, 0x000007bf); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A40, 0x000000ec); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A44, 0x000007de); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A48, 0x00000002); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A4C, 0x000007ae); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A50, 0x000000e0); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A54, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A58, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0A5C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B00, 0x00000020); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B0C, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B10, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B18, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x04 + 0x0C00, | |
| 0x00008469); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x08 + 0x0C00, | |
| 0x0000a674); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0C + 0x0C00, | |
| 0x0000fa3d); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x10 + 0x0C00, | |
| 0x0000ef61); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x14 + 0x0C00, | |
| 0x0000f9b7); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x18 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x1C + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x20 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x24 + 0x0C00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x6C + 0x0C00, | |
| 0x000000fa); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x08 + 0x0E00, | |
| 0x5a000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0C + 0x0E00, | |
| 0x00019f20); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x10 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x18 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x1C + 0x0E00, | |
| 0x5a01a000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x20 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x24 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x2C + 0x0E00, | |
| 0x5a01a000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x30 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x34 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0xF8 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x104 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x108 + 0x0E00, 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x110 + 0x0E00, | |
| 0x00000003); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x130 + 0x0E00, | |
| 0x00034000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x134 + 0x0E00, | |
| 0x0004e000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x138 + 0x0E00, | |
| 0x0004e000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x150 + 0x0E00, | |
| 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x15C + 0x0E00, | |
| 0x00000001); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x160 + 0x0E00, | |
| 0x00000000); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x164 + 0x0E00, | |
| 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x168 + 0x0E00, | |
| 0x00000144); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x16C + 0x0E00, | |
| 0x00019a10); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x00 + 0x0E00, 0x003a2808); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0500 + 0x00, 0x00000868); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0400 + 0x0000, 0x00207259); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x00 + 0x0C00, 0x00000190); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x04 + 0x0E00, 0x000000b0); | |
| return kDifOk; | |
| } | |
| dif_result_t dif_isp_wrapper_clear_en(const dif_isp_wrapper_t *isp_wrapper) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| mmio_region_write32(isp_wrapper->base_addr, 0xb00, 0x00040000); | |
| return kDifOk; | |
| } | |
| dif_result_t dif_isp_wrapper_isp_irq_mask(const dif_isp_wrapper_t *isp_wrapper) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| // ISP_IMSC Interrupt mask, 0 active | |
| mmio_region_write32(isp_wrapper->base_addr, 0xb00, 0x00000000); | |
| return kDifOk; | |
| } | |
| dif_result_t dif_isp_wrapper_mi_irq_mask(const dif_isp_wrapper_t *isp_wrapper) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| // MI_IMSC Interrupt mask, 0 active | |
| mmio_region_write32(isp_wrapper->base_addr, 0xef8, 0x00000000); | |
| return kDifOk; | |
| } | |
| dif_result_t dif_isp_wrapper_isp_irq_done(const dif_isp_wrapper_t *isp_wrapper) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| uint32_t irq_status = mmio_region_read32(isp_wrapper->base_addr, 0x0000 + 0x0B08); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B0C, irq_status); | |
| return kDifOk; | |
| } | |
| dif_result_t dif_isp_wrapper_mi_irq_done(const dif_isp_wrapper_t *isp_wrapper) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| uint32_t irq_status = | |
| mmio_region_read32(isp_wrapper->base_addr, 0x100 + 0x0E00); | |
| mmio_region_write32(isp_wrapper->base_addr, 0x104 + 0x0E00, irq_status); | |
| return kDifOk; | |
| } | |
| dif_result_t dif_isp_wrapper_read_en(const dif_isp_wrapper_t *isp_wrapper, | |
| uint32_t *result) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| // MI_MIS Masked Interrupt Status | |
| *result = mmio_region_read32(isp_wrapper->base_addr, 0xf00); | |
| return kDifOk; | |
| } | |
| dif_result_t dif_isp_wrapper_read_mi_mis(const dif_isp_wrapper_t *isp_wrapper, | |
| uint32_t *result) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| *result = mmio_region_read32(isp_wrapper->base_addr, 0x100 + 0x0E00); | |
| return kDifOk; | |
| } | |
| dif_result_t dif_isp_wrapper_read_isp_mis(const dif_isp_wrapper_t *isp_wrapper, | |
| uint32_t *result) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| *result = mmio_region_read32(isp_wrapper->base_addr, 0x0000 + 0x0B08); | |
| return kDifOk; | |
| } | |
| dif_result_t dif_isp_wrapper_read_isp_ris(const dif_isp_wrapper_t *isp_wrapper, | |
| uint32_t *val) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| *val = mmio_region_read32(isp_wrapper->base_addr, 0x0000 + 0x0B04); | |
| return kDifOk; | |
| } | |
| dif_result_t dif_isp_wrapper_read_mi_ris(const dif_isp_wrapper_t *isp_wrapper, | |
| uint32_t *val) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| *val = mmio_region_read32(isp_wrapper->base_addr, 0xFC + 0x0E00); | |
| return kDifOk; | |
| } | |
| dif_result_t dif_isp_wrapper_write_isp_icr(const dif_isp_wrapper_t *isp_wrapper, | |
| uint32_t val) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| mmio_region_write32(isp_wrapper->base_addr, 0x0000 + 0x0B0C, val); | |
| return kDifOk; | |
| } | |
| dif_result_t dif_isp_wrapper_write_mi_icr(const dif_isp_wrapper_t *isp_wrapper, | |
| uint32_t val) | |
| { | |
| if (isp_wrapper == NULL) { | |
| return kDifBadArg; | |
| } | |
| mmio_region_write32(isp_wrapper->base_addr, 0x104 + 0x0E00, val); | |
| return kDifOk; | |
| } |