blob: a3fc6f540dc8eb84e86041b237d7370594e0ff21 [file] [log] [blame]
.. _intel_ish:
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.
.. include:: ../../../../soc/x86/intel_ish/doc/supported_features.txt
Programming and Debugging
*************************
Use the following procedures for booting an ISH image on a ADL RVP board
for Chrome.
.. contents::
:depth: 1
:local:
:backlinks: top
Build Zephyr application
========================
#. Build a Zephyr application; for instance, to build the ``hello_world``
application for ISH 5.4.1 on Intel ADL Processor:
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: intel_ish_5_4_1
:goals: build
.. note::
A Zephyr image file named :file:`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:
.. code-block:: console
$ mount -o remount,rw /
- If re-mount fails, execute below commands to Remove rootfs verification:
.. code-block:: console
$ /usr/share/vboot/bin/make_dev_ssd.sh --remove_rootfs_verification --partitions
$ reboot
- Go to the ISH firmware direcoty:
.. code-block:: console
$ 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.
.. _Developer Mode: https://chromium.googlesource.com/chromiumos/docs/+/HEAD/developer_mode.md