nuttx/include/nuttx
Lee Lup Yuen b895207489 arm64/a64: Add driver for MIPI DSI
This PR adds the driver for Allwinner A64's MIPI Display Serial Interface (DSI) and MIPI Display Physical Layer (D-PHY).

This driver will be used by the upcoming Display Driver for PINE64 PinePhone.

- `include/nuttx/crc16.h`: Added 16-bit CRC-CCITT

- `libs/libc/misc/Make.defs`: Added 16-bit CRC-CCITT to Makefile

- `arch/arm64/src/a64/Kconfig`: Added the Kconfig option for "A64 Peripheral Selection > MIPI DSI" (`CONFIG_A64_MIPI_DSI`), which enables the MIPI DSI Driver

- `arch/arm64/src/a64/hardware/a64_memorymap.h`: Added the Base Address for MIPI DSI

- `arch/arm64/src/a64/Make.defs`: Added the MIPI DSI Driver to the Makefile

- `libs/libc/misc/lib_crc16ccitt.c`: Compute 16-bit CRC-CCITT

- `arch/arm64/src/a64/mipi_dsi.c`, `mipi_dsi.h`: Compose MIPI DSI Packets (Long, Short, Short with Parameter)

- `arch/arm64/src/a64/a64_mipi_dsi.c`, `a64_mipi_dsi.h`: MIPI DSI Driver for Allwinner A64

- `arch/arm64/src/a64/a64_mipi_dphy.c`, `a64_mipi_dphy.h`: MIPI D-PHY Driver for Allwinner A64

- `platforms/arm/a64/boards/pinephone/index.rst`: Added MIPI DSI as supported peripheral for PinePhone

Co-Authored-By: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-12-14 22:37:32 +08:00
..
1wire
analog Call nxsem_destroy or nxmutex_destry in the error path 2022-10-30 13:56:52 +01:00
audio audio: Add support for the ES8388 codec (output) 2022-11-08 10:03:18 -03:00
binfmt sched/spawn: Support task_spawnattr_[set|get]stackaddr 2022-10-31 12:46:58 +09:00
can Replace nxsem API when used as a lock with nxmutex API 2022-10-17 15:59:46 +09:00
clk
contactless
crypto crypto: Initial copy from https://github.com/openbsd/sys/crypto 2022-12-14 02:33:56 +08:00
drivers Call nxsem_destroy or nxmutex_destry in the error path 2022-10-30 13:56:52 +01:00
eeprom
efuse
fs fs/hostfs: mode_t of mkdir(2) should use the nuttx prototype 2022-12-13 18:16:20 +08:00
himem
hwspinlock hwspinlock: add hwspinlock driver for multi CPU 2022-11-09 09:12:01 +01:00
i2c Added I2C Slave to RP2040 2022-07-16 01:56:52 +08:00
input libc/stream: Rename [lib_stream_](put|get) to [lib_stream_](putc|getc) 2022-12-05 14:27:55 +01:00
ioexpander ioexpander: Fix typos in comments 2022-08-15 10:25:11 +08:00
lcd libc/stream: Rename [lib_stream_](put|get) to [lib_stream_](putc|getc) 2022-12-05 14:27:55 +01:00
leds Replace nxsem API when used as a lock with nxmutex API 2022-10-17 15:59:46 +09:00
lib lib/math32.h: support LOG2_CEIL/LOG2_FLOOR function at compile time 2022-10-29 00:12:02 +08:00
math
mbox drivers/mbox: Don't reference the nonexistent CONFIG_MBOX 2022-11-07 10:14:20 +01:00
mm mm/iob: add support of partial bytes clone 2022-12-14 21:37:20 +08:00
modem drivers: modem: update altair modem 2022-10-22 09:00:32 +08:00
motor Replace nxsem API when used as a lock with nxmutex API 2022-10-17 15:59:46 +09:00
mtd Replace nxsem API when used as a lock with nxmutex API 2022-10-17 15:59:46 +09:00
net Adjust ioctl function of cellular 2022-12-09 11:19:55 +08:00
note Sysview add prefix kconfig to add an option to decouple sched_note calls 2022-12-08 17:49:55 +01:00
nx Replace nxsem API when used as a lock with nxmutex API 2022-10-17 15:59:46 +09:00
power Replace nxsem API when used as a lock with nxmutex API 2022-10-17 15:59:46 +09:00
rc
rf
rptun rptun: add ns_match callback to resolve rptun deadlock 2022-07-27 20:36:51 +08:00
segger driver/segger: Move SYSLOG_RTT config from drivers/syslog to drivers/segger 2022-11-27 23:10:39 +01:00
sensors drivers/sensors: add LTR308 ambient light sensor 2022-11-21 23:48:52 +08:00
serial Replace nxsem API when used as a lock with nxmutex API 2022-10-17 15:59:46 +09:00
spi Replace nxsem API when used as a lock with nxmutex API 2022-10-17 15:59:46 +09:00
syslog drivers/syslog:support stream as syslog backend. 2022-11-28 20:19:00 +08:00
timers In case of SAMV7 it is possible to overwrite the pwm output with 0 or 1 immediately. Changing the dutycycle to 0 or 100 will take effect only on end of cycle, which could be to late for some applications. 2022-11-16 12:07:09 +08:00
usb Fix error: format specifies type 'unsigned short' but the argument has type 'int' 2022-11-01 17:12:42 +01:00
video drivers/video: minor fix 2022-12-09 23:37:49 +08:00
virtio virtio: Add virtio drivers 2022-11-29 13:16:44 +08:00
wireless Adjust ioctl function of cellular 2022-12-09 11:19:55 +08:00
.gitignore
addrenv.h mm/shm: Fix ARCH_SHM_VEND 2022-11-22 08:54:34 +01:00
allsyms.h
arch.h nuttx/sched: merge up_block_task and up_unblock_task 2022-11-22 22:59:08 +08:00
ascii.h
atexit.h
board.h
cache.h
can.h include/nuttx/can.h: make error definitions compatible with Linux 2022-10-21 18:47:29 +08:00
cancelpt.h
clock.h sched: use tick count for sched timer expiration 2022-10-12 11:55:46 +08:00
compiler.h Fix error: unknown attribute 'long_call' ignored [-Werror,-Wunknown-attributes] 2022-11-13 22:35:19 +08:00
crc8.h libc/crc: Add full suffix to avoid the the penitential symbol collision 2022-08-29 18:06:53 +02:00
crc16.h arm64/a64: Add driver for MIPI DSI 2022-12-14 22:37:32 +08:00
crc32.h libc/crc: Add full suffix to avoid the the penitential symbol collision 2022-08-29 18:06:53 +02:00
crc64.h libc/crc: Add full suffix to avoid the the penitential symbol collision 2022-08-29 18:06:53 +02:00
elf.h
environ.h
envpath.h
init.h boards: Remove the duplicated prototype of CONFIG_INIT_ENTRYPOINT 2022-10-16 19:02:44 +02:00
ipcc.h stm32wl5: fix unbuffered mode and other possible bugs 2022-08-18 11:46:38 +08:00
irq.h SMP: fix crash when switch to new task which is still running 2022-09-17 17:37:47 +09:00
kmalloc.h mm: add kmm/umm_memdump 2022-10-29 11:35:27 +08:00
kthread.h sched/spawn: Support task_spawnattr_[set|get]stackaddr 2022-10-31 12:46:58 +09:00
lirc.h
list.h list.h: Add local temp variable to avoid the double evaluation 2022-10-06 08:29:39 +02:00
mmcsd.h
module.h
mqueue.h sched/mqueue: decoupling condition member to common prologue 2022-10-22 12:58:11 +08:00
mutex.h Fix the coding style and typo issue 2022-11-14 09:34:04 +09:00
notifier.h include/nuttx/notifier:fix compiling error. 2022-12-06 00:12:41 +08:00
nuttx.h
page.h nuttx/sched: merge up_block_task and up_unblock_task 2022-11-22 22:59:08 +08:00
panic_notifier.h move common assert logic together. 2022-12-12 17:05:02 +08:00
pgalloc.h
progmem.h
pthread.h
queue.h net/nat: Add TCP entry expiration logic 2022-11-11 14:36:55 +08:00
random.h
sched_note.h sched: Optimize sched_note_begin/end 2022-09-27 21:32:35 +08:00
sched.h sched/mqueue: make mqueue and mqueue sysv can disable separately 2022-11-16 20:03:40 +08:00
scsi.h
sdio.h
semaphore.h sched: semaphore wait list optimize 2022-09-28 18:08:37 +08:00
signal.h
spawn.h
spinlock.h netdev: fix visual studio Compiler Error C2016 2022-08-17 21:38:30 +08:00
streams.h libc/stream: Rename [lib_stream_](put|get) to [lib_stream_](putc|getc) 2022-12-05 14:27:55 +01:00
symtab.h
time.h libs/libc/time: mktime normalize struct tm 2022-10-27 21:22:08 +08:00
tls.h include/nuttx/tls.h: add CXX extern define for tls 2022-11-18 12:42:26 +08:00
tree.h
userspace.h
vt100.h
wdog.h libc: Move queue.h from include to include/nuttx 2022-09-26 08:04:58 +02:00
wqueue.h libc: Move queue.h from include to include/nuttx 2022-09-26 08:04:58 +02:00
zoneinfo.h