Registers

Summary

NameOffsetLengthDescription
sensor_ctrl.INTR_STATE0x04Interrupt State Register
sensor_ctrl.INTR_ENABLE0x44Interrupt Enable Register
sensor_ctrl.INTR_TEST0x84Interrupt Test Register
sensor_ctrl.ALERT_TEST0xc4Alert Test Register
sensor_ctrl.CFG_REGWEN0x104Controls the configurability of !!FATAL_ALERT_EN register.
sensor_ctrl.ALERT_TRIG0x144Alert trigger test
sensor_ctrl.ALERT_EN_00x184Each multibit value enables a corresponding alert.
sensor_ctrl.ALERT_EN_10x1c4Each multibit value enables a corresponding alert.
sensor_ctrl.ALERT_EN_20x204Each multibit value enables a corresponding alert.
sensor_ctrl.ALERT_EN_30x244Each multibit value enables a corresponding alert.
sensor_ctrl.ALERT_EN_40x284Each multibit value enables a corresponding alert.
sensor_ctrl.ALERT_EN_50x2c4Each multibit value enables a corresponding alert.
sensor_ctrl.ALERT_EN_60x304Each multibit value enables a corresponding alert.
sensor_ctrl.ALERT_EN_70x344Each multibit value enables a corresponding alert.
sensor_ctrl.ALERT_EN_80x384Each multibit value enables a corresponding alert.
sensor_ctrl.ALERT_EN_90x3c4Each multibit value enables a corresponding alert.
sensor_ctrl.ALERT_EN_100x404Each multibit value enables a corresponding alert.
sensor_ctrl.FATAL_ALERT_EN0x444Each bit marks a corresponding alert as fatal or recoverable.
sensor_ctrl.RECOV_ALERT0x484Each bit represents a recoverable alert that has been triggered by AST.
sensor_ctrl.FATAL_ALERT0x4c4Each bit represents a fatal alert that has been triggered by AST.
sensor_ctrl.STATUS0x504Status readback for ast
sensor_ctrl.MANUAL_PAD_ATTR_REGWEN_00x544Register write enable for attributes of manual pads
sensor_ctrl.MANUAL_PAD_ATTR_REGWEN_10x584Register write enable for attributes of manual pads
sensor_ctrl.MANUAL_PAD_ATTR_REGWEN_20x5c4Register write enable for attributes of manual pads
sensor_ctrl.MANUAL_PAD_ATTR_REGWEN_30x604Register write enable for attributes of manual pads
sensor_ctrl.MANUAL_PAD_ATTR_00x644Attributes of manual pads.
sensor_ctrl.MANUAL_PAD_ATTR_10x684Attributes of manual pads.
sensor_ctrl.MANUAL_PAD_ATTR_20x6c4Attributes of manual pads.
sensor_ctrl.MANUAL_PAD_ATTR_30x704Attributes of manual pads.

INTR_STATE

Interrupt State Register

  • Offset: 0x0
  • Reset default: 0x0
  • Reset mask: 0x3

Fields

{"reg": [{"name": "io_status_change", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"name": "init_status_change", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"bits": 30}], "config": {"lanes": 1, "fontsize": 10, "vspace": 200}}
BitsTypeResetNameDescription
31:2Reserved
1rw1c0x0init_status_changeast init status has changed
0rw1c0x0io_status_changeio power status has changed

INTR_ENABLE

Interrupt Enable Register

  • Offset: 0x4
  • Reset default: 0x0
  • Reset mask: 0x3

Fields

{"reg": [{"name": "io_status_change", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "init_status_change", "bits": 1, "attr": ["rw"], "rotate": -90}, {"bits": 30}], "config": {"lanes": 1, "fontsize": 10, "vspace": 200}}
BitsTypeResetNameDescription
31:2Reserved
1rw0x0init_status_changeEnable interrupt when INTR_STATE.init_status_change is set.
0rw0x0io_status_changeEnable interrupt when INTR_STATE.io_status_change is set.

INTR_TEST

Interrupt Test Register

  • Offset: 0x8
  • Reset default: 0x0
  • Reset mask: 0x3

Fields

{"reg": [{"name": "io_status_change", "bits": 1, "attr": ["wo"], "rotate": -90}, {"name": "init_status_change", "bits": 1, "attr": ["wo"], "rotate": -90}, {"bits": 30}], "config": {"lanes": 1, "fontsize": 10, "vspace": 200}}
BitsTypeResetNameDescription
31:2Reserved
1wo0x0init_status_changeWrite 1 to force INTR_STATE.init_status_change to 1.
0wo0x0io_status_changeWrite 1 to force INTR_STATE.io_status_change to 1.

ALERT_TEST

Alert Test Register

  • Offset: 0xc
  • Reset default: 0x0
  • Reset mask: 0x3

Fields

{"reg": [{"name": "recov_alert", "bits": 1, "attr": ["wo"], "rotate": -90}, {"name": "fatal_alert", "bits": 1, "attr": ["wo"], "rotate": -90}, {"bits": 30}], "config": {"lanes": 1, "fontsize": 10, "vspace": 130}}
BitsTypeResetNameDescription
31:2Reserved
1wo0x0fatal_alertWrite 1 to trigger one alert event of this kind.
0wo0x0recov_alertWrite 1 to trigger one alert event of this kind.

CFG_REGWEN

Controls the configurability of FATAL_ALERT_EN register.

  • Offset: 0x10
  • Reset default: 0x1
  • Reset mask: 0x1

Fields

{"reg": [{"name": "EN", "bits": 1, "attr": ["rw0c"], "rotate": -90}, {"bits": 31}], "config": {"lanes": 1, "fontsize": 10, "vspace": 80}}
BitsTypeResetNameDescription
31:1Reserved
0rw0c0x1ENConfiguration enable.

ALERT_TRIG

Alert trigger test

  • Offset: 0x14
  • Reset default: 0x0
  • Reset mask: 0x7ff

Fields

{"reg": [{"name": "VAL_0", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_1", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_2", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_3", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_4", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_5", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_6", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_7", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_8", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_9", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_10", "bits": 1, "attr": ["rw"], "rotate": -90}, {"bits": 21}], "config": {"lanes": 1, "fontsize": 10, "vspace": 80}}
BitsTypeResetNameDescription
31:11Reserved
10rw0x0VAL_10Alert trigger for testing 0 No alerts triggered 1 Continuously trigger alert until disabled For bit mapping, please see ALERT_TEST
9rw0x0VAL_9Alert trigger for testing 0 No alerts triggered 1 Continuously trigger alert until disabled For bit mapping, please see ALERT_TEST
8rw0x0VAL_8Alert trigger for testing 0 No alerts triggered 1 Continuously trigger alert until disabled For bit mapping, please see ALERT_TEST
7rw0x0VAL_7Alert trigger for testing 0 No alerts triggered 1 Continuously trigger alert until disabled For bit mapping, please see ALERT_TEST
6rw0x0VAL_6Alert trigger for testing 0 No alerts triggered 1 Continuously trigger alert until disabled For bit mapping, please see ALERT_TEST
5rw0x0VAL_5Alert trigger for testing 0 No alerts triggered 1 Continuously trigger alert until disabled For bit mapping, please see ALERT_TEST
4rw0x0VAL_4Alert trigger for testing 0 No alerts triggered 1 Continuously trigger alert until disabled For bit mapping, please see ALERT_TEST
3rw0x0VAL_3Alert trigger for testing 0 No alerts triggered 1 Continuously trigger alert until disabled For bit mapping, please see ALERT_TEST
2rw0x0VAL_2Alert trigger for testing 0 No alerts triggered 1 Continuously trigger alert until disabled For bit mapping, please see ALERT_TEST
1rw0x0VAL_1Alert trigger for testing 0 No alerts triggered 1 Continuously trigger alert until disabled For bit mapping, please see ALERT_TEST
0rw0x0VAL_0Alert trigger for testing 0 No alerts triggered 1 Continuously trigger alert until disabled For bit mapping, please see ALERT_TEST

ALERT_EN

Each multibit value enables a corresponding alert.

  • Reset default: 0x6
  • Reset mask: 0xf

Instances

NameOffset
ALERT_EN_00x18
ALERT_EN_10x1c
ALERT_EN_20x20
ALERT_EN_30x24
ALERT_EN_40x28
ALERT_EN_50x2c
ALERT_EN_60x30
ALERT_EN_70x34
ALERT_EN_80x38
ALERT_EN_90x3c
ALERT_EN_100x40

Fields

{"reg": [{"name": "VAL", "bits": 4, "attr": ["rw"], "rotate": 0}, {"bits": 28}], "config": {"lanes": 1, "fontsize": 10, "vspace": 80}}
BitsTypeResetName
31:4Reserved
3:0rw0x6VAL

ALERT_EN . VAL

kMultiBitBool4True - An alert event is enabled. kMultiBitBool4False - An alert event is disabled.

At reset, all alerts are enabled. This is by design so that no alerts get missed unless they get disabled explicitly. Firmware can disable alerts that may be problematic for the designated use case.

FATAL_ALERT_EN

Each bit marks a corresponding alert as fatal or recoverable.

Note that alerts are ignored if they are not enabled in ALERT_EN.

  • Offset: 0x44
  • Reset default: 0x0
  • Reset mask: 0x7ff
  • Register enable: CFG_REGWEN

Fields

{"reg": [{"name": "VAL_0", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_1", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_2", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_3", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_4", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_5", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_6", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_7", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_8", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_9", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "VAL_10", "bits": 1, "attr": ["rw"], "rotate": -90}, {"bits": 21}], "config": {"lanes": 1, "fontsize": 10, "vspace": 80}}
BitsTypeResetName
31:11Reserved
10rw0x0VAL_10
9rw0x0VAL_9
8rw0x0VAL_8
7rw0x0VAL_7
6rw0x0VAL_6
5rw0x0VAL_5
4rw0x0VAL_4
3rw0x0VAL_3
2rw0x0VAL_2
1rw0x0VAL_1
0rw0x0VAL_0

FATAL_ALERT_EN . VAL_10

1 - An alert event is fatal. 0 - An alert event is recoverable.

At reset, all alerts are recoverable. This is by design so that a false-positive alert event early in the reset sequence doesn’t jam the alert until the next reset. Firmware can define alerts that are critical for the designated use case as fatal.

FATAL_ALERT_EN . VAL_9

1 - An alert event is fatal. 0 - An alert event is recoverable.

At reset, all alerts are recoverable. This is by design so that a false-positive alert event early in the reset sequence doesn’t jam the alert until the next reset. Firmware can define alerts that are critical for the designated use case as fatal.

FATAL_ALERT_EN . VAL_8

1 - An alert event is fatal. 0 - An alert event is recoverable.

At reset, all alerts are recoverable. This is by design so that a false-positive alert event early in the reset sequence doesn’t jam the alert until the next reset. Firmware can define alerts that are critical for the designated use case as fatal.

FATAL_ALERT_EN . VAL_7

1 - An alert event is fatal. 0 - An alert event is recoverable.

At reset, all alerts are recoverable. This is by design so that a false-positive alert event early in the reset sequence doesn’t jam the alert until the next reset. Firmware can define alerts that are critical for the designated use case as fatal.

FATAL_ALERT_EN . VAL_6

1 - An alert event is fatal. 0 - An alert event is recoverable.

At reset, all alerts are recoverable. This is by design so that a false-positive alert event early in the reset sequence doesn’t jam the alert until the next reset. Firmware can define alerts that are critical for the designated use case as fatal.

FATAL_ALERT_EN . VAL_5

1 - An alert event is fatal. 0 - An alert event is recoverable.

At reset, all alerts are recoverable. This is by design so that a false-positive alert event early in the reset sequence doesn’t jam the alert until the next reset. Firmware can define alerts that are critical for the designated use case as fatal.

FATAL_ALERT_EN . VAL_4

1 - An alert event is fatal. 0 - An alert event is recoverable.

At reset, all alerts are recoverable. This is by design so that a false-positive alert event early in the reset sequence doesn’t jam the alert until the next reset. Firmware can define alerts that are critical for the designated use case as fatal.

FATAL_ALERT_EN . VAL_3

1 - An alert event is fatal. 0 - An alert event is recoverable.

At reset, all alerts are recoverable. This is by design so that a false-positive alert event early in the reset sequence doesn’t jam the alert until the next reset. Firmware can define alerts that are critical for the designated use case as fatal.

FATAL_ALERT_EN . VAL_2

1 - An alert event is fatal. 0 - An alert event is recoverable.

At reset, all alerts are recoverable. This is by design so that a false-positive alert event early in the reset sequence doesn’t jam the alert until the next reset. Firmware can define alerts that are critical for the designated use case as fatal.

FATAL_ALERT_EN . VAL_1

1 - An alert event is fatal. 0 - An alert event is recoverable.

At reset, all alerts are recoverable. This is by design so that a false-positive alert event early in the reset sequence doesn’t jam the alert until the next reset. Firmware can define alerts that are critical for the designated use case as fatal.

FATAL_ALERT_EN . VAL_0

1 - An alert event is fatal. 0 - An alert event is recoverable.

At reset, all alerts are recoverable. This is by design so that a false-positive alert event early in the reset sequence doesn’t jam the alert until the next reset. Firmware can define alerts that are critical for the designated use case as fatal.

RECOV_ALERT

Each bit represents a recoverable alert that has been triggered by AST. Since these are recoverable alerts, they can be cleared by software.

  • Offset: 0x48
  • Reset default: 0x0
  • Reset mask: 0x7ff

Fields

{"reg": [{"name": "VAL_0", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"name": "VAL_1", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"name": "VAL_2", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"name": "VAL_3", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"name": "VAL_4", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"name": "VAL_5", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"name": "VAL_6", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"name": "VAL_7", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"name": "VAL_8", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"name": "VAL_9", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"name": "VAL_10", "bits": 1, "attr": ["rw1c"], "rotate": -90}, {"bits": 21}], "config": {"lanes": 1, "fontsize": 10, "vspace": 80}}
BitsTypeResetNameDescription
31:11Reserved
10rw1c0x0VAL_101 - An alert event has been set 0 - No alert event has been set
9rw1c0x0VAL_91 - An alert event has been set 0 - No alert event has been set
8rw1c0x0VAL_81 - An alert event has been set 0 - No alert event has been set
7rw1c0x0VAL_71 - An alert event has been set 0 - No alert event has been set
6rw1c0x0VAL_61 - An alert event has been set 0 - No alert event has been set
5rw1c0x0VAL_51 - An alert event has been set 0 - No alert event has been set
4rw1c0x0VAL_41 - An alert event has been set 0 - No alert event has been set
3rw1c0x0VAL_31 - An alert event has been set 0 - No alert event has been set
2rw1c0x0VAL_21 - An alert event has been set 0 - No alert event has been set
1rw1c0x0VAL_11 - An alert event has been set 0 - No alert event has been set
0rw1c0x0VAL_01 - An alert event has been set 0 - No alert event has been set

FATAL_ALERT

Each bit represents a fatal alert that has been triggered by AST. Since these registers represent fatal alerts, they cannot be cleared.

The lower bits are used for ast alert events. The upper bits are used for local events.

  • Offset: 0x4c
  • Reset default: 0x0
  • Reset mask: 0xfff

Fields

{"reg": [{"name": "VAL_0", "bits": 1, "attr": ["ro"], "rotate": -90}, {"name": "VAL_1", "bits": 1, "attr": ["ro"], "rotate": -90}, {"name": "VAL_2", "bits": 1, "attr": ["ro"], "rotate": -90}, {"name": "VAL_3", "bits": 1, "attr": ["ro"], "rotate": -90}, {"name": "VAL_4", "bits": 1, "attr": ["ro"], "rotate": -90}, {"name": "VAL_5", "bits": 1, "attr": ["ro"], "rotate": -90}, {"name": "VAL_6", "bits": 1, "attr": ["ro"], "rotate": -90}, {"name": "VAL_7", "bits": 1, "attr": ["ro"], "rotate": -90}, {"name": "VAL_8", "bits": 1, "attr": ["ro"], "rotate": -90}, {"name": "VAL_9", "bits": 1, "attr": ["ro"], "rotate": -90}, {"name": "VAL_10", "bits": 1, "attr": ["ro"], "rotate": -90}, {"name": "VAL_11", "bits": 1, "attr": ["ro"], "rotate": -90}, {"bits": 20}], "config": {"lanes": 1, "fontsize": 10, "vspace": 80}}
BitsTypeResetNameDescription
31:12Reserved
11ro0x0VAL_111 - An alert event has been set 0 - No alert event has been set
10ro0x0VAL_101 - An alert event has been set 0 - No alert event has been set
9ro0x0VAL_91 - An alert event has been set 0 - No alert event has been set
8ro0x0VAL_81 - An alert event has been set 0 - No alert event has been set
7ro0x0VAL_71 - An alert event has been set 0 - No alert event has been set
6ro0x0VAL_61 - An alert event has been set 0 - No alert event has been set
5ro0x0VAL_51 - An alert event has been set 0 - No alert event has been set
4ro0x0VAL_41 - An alert event has been set 0 - No alert event has been set
3ro0x0VAL_31 - An alert event has been set 0 - No alert event has been set
2ro0x0VAL_21 - An alert event has been set 0 - No alert event has been set
1ro0x0VAL_11 - An alert event has been set 0 - No alert event has been set
0ro0x0VAL_01 - An alert event has been set 0 - No alert event has been set

STATUS

Status readback for ast

  • Offset: 0x50
  • Reset default: 0x0
  • Reset mask: 0x7

Fields

{"reg": [{"name": "ast_init_done", "bits": 1, "attr": ["ro"], "rotate": -90}, {"name": "io_pok", "bits": 2, "attr": ["ro"], "rotate": -90}, {"bits": 29}], "config": {"lanes": 1, "fontsize": 10, "vspace": 150}}
BitsTypeResetNameDescription
31:3Reserved
2:1ro0x0io_pokIO power is ready
0ro0x0ast_init_doneAST has finished initializing

MANUAL_PAD_ATTR_REGWEN

Register write enable for attributes of manual pads

  • Reset default: 0x1
  • Reset mask: 0x1

Instances

NameOffset
MANUAL_PAD_ATTR_REGWEN_00x54
MANUAL_PAD_ATTR_REGWEN_10x58
MANUAL_PAD_ATTR_REGWEN_20x5c
MANUAL_PAD_ATTR_REGWEN_30x60

Fields

{"reg": [{"name": "EN", "bits": 1, "attr": ["rw0c"], "rotate": -90}, {"bits": 31}], "config": {"lanes": 1, "fontsize": 10, "vspace": 80}}
BitsTypeResetNameDescription
31:1Reserved
0rw0c0x1ENRegister write enable bit. If this is cleared to 0, the corresponding MANUAL_PAD_ATTR is not writable anymore.

MANUAL_PAD_ATTR

Attributes of manual pads. This register has WARL behavior since not every pad may support each attribute. The mapping of registers to pads is as follows (only supported for targets that instantiate chip_earlgrey_asic):

  • MANUAL_PAD_ATTR_0: CC1
  • MANUAL_PAD_ATTR_1: CC2
  • MANUAL_PAD_ATTR_2: FLASH_TEST_MODE0
  • MANUAL_PAD_ATTR_3: FLASH_TEST_MODE1
  • Reset default: 0x0
  • Reset mask: 0x8c

Instances

NameOffset
MANUAL_PAD_ATTR_00x64
MANUAL_PAD_ATTR_10x68
MANUAL_PAD_ATTR_20x6c
MANUAL_PAD_ATTR_30x70

Fields

{"reg": [{"bits": 2}, {"name": "pull_en", "bits": 1, "attr": ["rw"], "rotate": -90}, {"name": "pull_select", "bits": 1, "attr": ["rw"], "rotate": -90}, {"bits": 3}, {"name": "input_disable", "bits": 1, "attr": ["rw"], "rotate": -90}, {"bits": 24}], "config": {"lanes": 1, "fontsize": 10, "vspace": 150}}
BitsTypeResetName
31:8Reserved
7rw0x0input_disable
6:4Reserved
3rw0x0pull_select
2rw0x0pull_en
1:0Reserved

MANUAL_PAD_ATTR . input_disable

Disable input drivers. Setting this to 1 for pads that are not used as input can reduce their leakage current.

MANUAL_PAD_ATTR . pull_select

Pull select (0: pull-down, 1: pull-up).

ValueNameDescription
0x0pull_downSelect the pull-down resistor.
0x1pull_upSelect the pull-up resistor.

MANUAL_PAD_ATTR . pull_en

Enable pull-up or pull-down resistor.