Drivers | Folders or files | Features |
8-bit NAND | mtd/nand/raw/sp_paranand/ | Support MTD framework. Support read and write standard 2k/4k/8k ECC sectors. Support block and chip erase.
|
ADC (SAR12B) | iio/adc/sp-adc.c | Support read 4 channels external voltage. Support IIO interface.
|
AXI DMA | dma/dw-axi-dmac/ | Support Linux DMA Engine framework. Support memory-to-memory copy.
|
AXI Monitor | soc/sunplus/ | Sunplus internal use for monitoring AXI bus.
|
CB DMA | dma/sp_cbdma.c | Sunplus internal use.
|
Clock | clk/clk-sp7350.c | Support Linux Common Clock Framework. Support clock functions for all devices.
|
CPUFreq | cpufreq/sp7350-cpufreq.c | Support CPU frequency scaling.
|
Crypto Engine | crypto/sunplus/ | Support RSA-256/512/1024/2048 encryption. Support AES-128/192/256 encryption and decryption with ECB, CBC, CTR, modes Support MD5, SHA3-224/256/384/512. Support GHASH for AES GCM mode RSA. Support POLY1305. Support modular exponentiation.
|
Display (framebuffer) | media/platform/sunplus/display/ sp7350/ | Support framebuffer. Support V4L2 framework Video input : Support 5 layers input video source, including 4 layers OSD and 1 layer image with scaling up and down. OSD layers (osd0, osd1, osd2, osd3): Support formats: ARGB8888, RGBA8888, ARGB4444, RGBA4444, ARGB1555, RGB565, YUY2, 8bpp Support source resolution upto 1920x1080.
Image layer (vpp0): Supports formats: UYVY, NV12, NV24, NV16, YUY2 Support up and down scaling up Support source resolution upto 3840x2880.
Video output : Support MIPI/DSI TX and MIPI/CSI TX. MIPI/DSI TX: Support fromats: RGB888, RGB666_24BITS, RGB666_18BITS, RGB565 Support resolution upto 1920x1080.
MIPI/CSI TX: Support fromats: YUV422_20BITS, RGB888, RGB565 Support resolution upto 3840x2880.
Note that MIPI/DSI TX and MIPI/CSI TX share the same D-PHY. Support clock frequency up to 1.5G bps. Support 1, 2 and 4 data lanes.
MIPI/DSI-TX supports: LT8912B MIPI to HDMI Bridge Raspberry Pi LCD (800x480) Panel TCXD024IBLON-2 LCD (240x320) Panel HXM0686TFT-001 LCD (480x1280) Panel
|
Display (DRM) | drivers/gpu/drm/sunplus/sp7350/ | Support DRM framework. Support legacy framebuffer device Video input : Support 5 layers fixed input video source, including 4 layers OSD and 1 layer image with scaling up/down and blending. L6-OSD0: Cursor plane (not yet) L5-OSD1: Overlay plane L4-OSD2: Overlay plane L3-VPP0: Overlay (media) plane L1-OSD3: Primary plane OSD layers (osd0, osd1, osd2, osd3): Support formats: ARGB8888, RGBA8888, ARGB4444, RGBA4444, ARGB1555, RGB565, YUY2, 8bpp Support source resolution upto 1920x1080 Support blend alpha and color-keying function.
Image layer (vpp0): Supports formats: UYVY, NV12, NV24, NV16, YUY2 Support up and down scaling up Support source resolution upto 3840x2880 Support blend alpha function.
Support crop and pan function for all layers.
Video output : upport support MIPI/DSI TX. MIPI/DSI TX: Support fromatsformats: RGB888, RGB666_24BITS, RGB666_18BITS, RGB565 Support resolution upto 1920x1080.
MIPI/CSI TX( not yet): Support fromatsformats: YUV422_20BITS, RGB888, RGB565 Support resolution upto 3840x2880.
Note that MIPI/DSI TX and MIPI/CSI TX share the same D-PHY. Support clock frequency up to 1.5G bps. Support 1, 2 and 4 data lanes.
MIPI/DSI-TX supports: LT8912B MIPI to HDMI Bridge Raspberry Pi LCD (800x480) Panel TCXD024IBLON-2 LCD (240x320) Panel HXM0686TFT-001 LCD (480x1280) Panel
|
eMMC | mmc/host/sunplus_mmc.* | Support Linux MMC framework. Support read and write User Data Area. Support access RPMB partition. Support DDR52, HS200 and HS400 speeds. Support dma mode. Support 1.8V and 3.3V devices.
|
Ethernet | net/ethernet/stmicro/stmmac/ | Support Half-duplex / Full-duplex operations. Support RMON/MIB counters. Support IEEE 1588 time-stamping (PTP). Support ARP offloading. Support automatic CRC / PAD insertion and checking. Support checksum offload for received and transmitted packets. Support standard or jumbo Ethernet packets. Support multi-cast. Support remote wake-up detection. Support programmable burst length, threshold, queue size. Support ethtool operations. Support loading MAC address from OTP.
|
GDC | media/platform/sunplus/gdc/ | Only support 8-bit data. Supported image formats: Grayscale(L8)、I420、YV12、NV12、NV21. Support max 4K UHD resolution. Support four simultaneous geometric warp functions at video resolutions up to 4K UHD. Support four types of transformations: Equisolid projected to plane. Equisolid projected to cylinder. Equidistant projected to arbitrary plane. Custom.
All transformation types have three common parameters: pan, tilt, and zoom.
|
I2C | i2c/busses/i2c-designware-*.c | Support RX and TX transferring. Support 100kHz, 400kHz, 1.6M speeds.
|
Mailbox | mailbox/sunplus*.* | Support Linux mailbox framework. Support communication between CA55 and CM4.
|
MIPI/CSI-RX | media/platform/sunplus/mipicsi/ | Support Linux V4L2 framework. Support RAW8, RAW10 and RAW12 formats. Support packed RAW10 and RAW12 formats output. Support enumerating camera supported formats. Support media control. Support virtual channel. Support 1, 2 and 4 data lanes.
|
NVMEM (OTP) | nvmem/sp-ocotp*.c | Support read OTP.
|
PinCtl / GPIO | pinctrl/sunplus/pinctrl-*.* pinctrl/sunplus/gpio-sp7350.* | Support Linux pinctrl framework. Support generic helper bindings. Support pin-mux of all devices. Support all GPIO pins. Support interrupt pins.
|
PWM | pwm/pwm-sunplus.c | Support set frequency and duty. Support set polarity. Support enable and disable.
|
Regulators | regulator/rt5759-regulator.c regulator/sti8070x-regulator.c
| Support Linux regulator framework. CPU frequency scaling.
|
Remoteproc | remote/sp_remoteproc.c | Support downloading firmware of CM4. Support start and stop CM4. Support rpmsg (virtual serial port).
|
Reset | reset/reset-sunplus.c | Support reset functions for all devices.
|
HW RNG | char/hw_random/sp7350-rng.c | Support generating random number.
|
RTC | rtc/rtc-sp7350.c | Support set and read time. Support set and read alarm. Support alarm interrupt.
|
Semaphore | hwspinlock/sunplus_hwspinlock.c | Support hardware lock and unlock.
|
SPI | spi/spi-dw* | Support master mode RX and TX transferring. Support set clock frequency. Support mode 0, 1, 2 and 3. Support DMA mode.
|
SPI-NAND | mtd/nand/raw/sp_* | Support Linux mtd framework. Support read and write standard 2k ECC sectors for 1 or 2 planes. Support read and write standard 4k ECC sectors for 1 plane only. Support block and chip erase. Support 4-bit operations. Support set clock frequency.
|
SPI-NOR | mtd/spi-nor/controllers/ sp-spi-nor.c | Support Linux MTD framework. Support read and write operations. Support block and chip erase. Support set clock frequency.
|
SD / SDIO | mmc/host/sunplus_sd3.* | Support Linux MMC framework. Support read and write operations. Support DMA mode. Support SDR25, SDR50 and SDR104 speeds. Support dynamic voltage-switching.
|
Thermal | thermal/sunplus_thermal.c | Support Linux Thermal framework. Support Linux HW monitor. Support read temperature of chip. Chip calibration data stored in OTP.
|
USB2.0 EHCI | usb/host/ehci*-sunplus.* | Support high-speed read and write operation.
|
USB2.0 OHCI | usb/host/ohci*-sunplus.* | Support full-speed read and write operation.
|
USB2.0 PHY | phy/sunplus/phy-sunplus-usb2.c | PHY driver of USB2.0.
|
USB2.0 UDC | usb/gadget/udc/sunplus_udc2.* | Support device mode.
|
USB2.0 OTG | usb/phy/otg-sp7350-sunplus.c | Support role switch between host mode and device mode. Support only HNP and SRP.
|
USB3.0 DRD | usb/dw3/ | Support super-speed, high-speed and full-speed access. Support host and device mode. Support dynamic-role switch.
|
USB3.0 extcon | extcon/extcon-usb-gpio-sunplus.c | Support USB type C receptacle.
|
USB3.0 PHY | usb/phy/synopsysu3phy-sunplus.c | PHY driver of USB3.0.
|
UART | tty/serial/sunplus-uart-sp7350.c | Support all standard Baud rate. Support non-standard Baud rate up to 3,000,000 bps. Support hardware flow-control for UART1 and UART2. Support system console and early console for UART0. Support system request (sysrq) for system console.
|
Video sensors | media/i2c/imx219.c media/i2c/imx307.c media/i2c/imx708.c media/i2c/ov5640.c media/i2c/ov5647.c media/i2c/tp2815.c | Support video sensors: imx219, imx307, imx708, ov5640, and ov5647. Support CVBS to mipi-csi bridge, tp2815.
|
VIP9000 (NPU) | media/platform/sunplus/vip9000/ | Support VIP9000 opoerations.
|
Video decoder (VC8000D nano) | media/platform/sunplus/ videocodec/ | Support H.264 decode. Support output formats: byte stream, NAL stream, SVC stream Support resolution upto 1920*1080.
Support JPEG decode. Support output formats: JFIF file format 1.02 Support resolution upto 1920*1080.
Support H.264 post-processing. Support output formats: YUYV422, YVYU422, UYVY422, VYUY422
Support JPEG post-processing. Support output formats: YUYV422, YVYU422, UYVY422, VYUY422Drivers Folders or files Features 8-bit NAND mtd/nand/raw/sp_paranand/ Support mtd framework. Support read and write standard 2k/4k/8k ECC sectors. Support block and chip erase. ADC (SAR12B) iio/adc/sp-adc.c Support read external voltage. Support iio interface. Audio (I2S) sound/soc/sunplus/ Support Linux ALSA framework. Support S16_LE format, stereo record and play. Support frequencies: 32kHz, 44.1kHz, 48kHz, 64kHz, 96kHz and 192kHz. Support digital volume.
|
Video encoder (VC8000E nano) | media/platform/sunplus/ videocodec/ | Support H.264 encode. Support input formats: YUV20P,NV12, NV21, YUYV422, UYVY422 Support resolution upto 1920*1080.
Support VP8 encode. Support input formats: YUV20P,NV12, NV21, YUYV422, UYVY422 Support resolution upto 1920*1080.
Support JPEG encode. Support input formats: YUV20P,NV12, NV21, YUYV422, UYVY422 Support resolution: 96*32 ~ 8192*8192
|
Watchdog | watchdog/sunplus_wdt_sp7350.c | Support pretimeout function. Support nowayout function.
|