Intel Integrated Sensor Hub (ISH)
Overview
Intel Integrated Sensor Hub (ISH) is a lower-power/always-on co-processor inside many Intel Processors. It helps offload sensor processing tasks from the core processor for better power saving.
Hardware
LMT MinuteIA Core:
16KB instruction cache and 16KB data cache.
640KB SRAM space for code and data - implemented as L2 SRAM.
8KB AON RF space for code resident during deep D0i2/3 PG states.
Interface-to-Sensor peripherals (I2C, SPI, UART, I3C, GPIO, DMA).
Inter Process Communications (IPC) to core processor and other IP processors.
Supported Features
In addition to the standard architecture devices (HPET, local and I/O APICs, etc.), Zephyr supports the following ISH-specific SoC devices:
HSUART
Programming and Debugging
Use the following procedures for booting an ISH image on a ADL RVP board for Chrome.
Build Zephyr application
Build a Zephyr application; for instance, to build the
hello_world
application for ISH 5.4.1 on Intel ADL Processor:# From the root of the zephyr repository west build -b intel_ish_5_4_1 samples/hello_world
Note
A Zephyr image file named
ish_fw.bin
is automatically created in the build directory after the application is built.
Run ish_fw.bin on ADL RVP board for Chrome
Power on the ADL RVP board.
Log in Chrome OS. (Note: the user must have root access right, see Developer Mode)
Re-mount the root filesystem as read-write:
$ mount -o remount,rw /
If re-mount fails, execute below commands to Remove rootfs verification:
$ /usr/share/vboot/bin/make_dev_ssd.sh --remove_rootfs_verification --partitions
$ reboot
Go to the ISH firmware direcoty:
$ cd /lib/firmware/intel
Relace the file adlrvp_ish.bin with zephyr image built out, ish_fw.bin.
Reboot, then observe Zephyr log output via ISH UART0.