1 /*
2 * Copyright 2024 NXP
3 * All rights reserved.
4 *
5 * SPDX-License-Identifier: BSD-3-Clause
6 */
7
8 #include "fsl_dbi.h"
9
10 /*******************************************************************************
11 * Definitions
12 ******************************************************************************/
13
14 /*******************************************************************************
15 * Prototypes
16 ******************************************************************************/
17
18 /*******************************************************************************
19 * Variables
20 ******************************************************************************/
21
22 /*******************************************************************************
23 * Code
24 ******************************************************************************/
25 #if !MCUX_DBI_LEGACY
DBI_IFACE_SelectArea(dbi_iface_t * dbiIface,uint16_t startX,uint16_t startY,uint16_t endX,uint16_t endY)26 status_t DBI_IFACE_SelectArea(dbi_iface_t *dbiIface, uint16_t startX, uint16_t startY, uint16_t endX, uint16_t endY)
27 {
28 uint8_t data[4];
29 status_t status;
30
31 /*Column addresses*/
32 data[0] = (uint8_t)(startX >> 8U) & 0xFFU;
33 data[1] = (uint8_t)startX & 0xFFU;
34 data[2] = (uint8_t)(endX >> 8U) & 0xFFU;
35 data[3] = (uint8_t)endX & 0xFFU;
36
37 status = DBI_IFACE_WriteCmdData(dbiIface, (uint8_t)kMIPI_DBI_SetColumnAddress, data, 4U);
38
39 if (status != kStatus_Success)
40 {
41 return status;
42 }
43
44 /*Page addresses*/
45 data[0] = (uint8_t)(startY >> 8U) & 0xFFU;
46 data[1] = (uint8_t)startY & 0xFFU;
47 data[2] = (uint8_t)(endY >> 8U) & 0xFFU;
48 data[3] = (uint8_t)endY & 0xFFU;
49
50 status = DBI_IFACE_WriteCmdData(dbiIface, (uint8_t)kMIPI_DBI_SetPageAddress, data, 4U);
51
52 return status;
53 }
54
DBI_IFACE_SetMemoryDoneCallback(dbi_iface_t * dbiIface,dbi_mem_done_callback_t callback,void * userData)55 void DBI_IFACE_SetMemoryDoneCallback(dbi_iface_t *dbiIface, dbi_mem_done_callback_t callback, void *userData)
56 {
57 dbiIface->memDoneCallback = callback;
58 dbiIface->memDoneCallbackParam = userData;
59 }
60 #endif /* !MCUX_DBI_LEGACY */
61