summaryrefslogtreecommitdiff
path: root/zephyr/program
diff options
context:
space:
mode:
Diffstat (limited to 'zephyr/program')
-rw-r--r--zephyr/program/.pylintrc28
-rw-r--r--zephyr/program/brya/BUILD.py43
-rw-r--r--zephyr/program/brya/CMakeLists.txt39
-rw-r--r--zephyr/program/brya/Kconfig11
-rw-r--r--zephyr/program/brya/adc.dts36
-rw-r--r--zephyr/program/brya/battery.dts15
-rw-r--r--zephyr/program/brya/battery_present.c21
-rw-r--r--zephyr/program/brya/brya.dts24
-rw-r--r--zephyr/program/brya/fan.dts39
-rw-r--r--zephyr/program/brya/gpio.dts341
-rw-r--r--zephyr/program/brya/i2c.dts284
-rw-r--r--zephyr/program/brya/interrupts.dts150
-rw-r--r--zephyr/program/brya/kblight_hooks.c69
-rw-r--r--zephyr/program/brya/keyboard.dts47
-rw-r--r--zephyr/program/brya/motionsense.dts257
-rw-r--r--zephyr/program/brya/prj.conf175
-rw-r--r--zephyr/program/brya/prj_brya.conf6
-rw-r--r--zephyr/program/brya/pwm_leds.dts79
-rw-r--r--zephyr/program/brya/temp_sensors.dts75
-rw-r--r--zephyr/program/brya/usbc.dts69
-rw-r--r--zephyr/program/corsola/BUILD.py52
-rw-r--r--zephyr/program/corsola/CMakeLists.txt88
-rw-r--r--zephyr/program/corsola/Kconfig58
-rw-r--r--zephyr/program/corsola/adc_magikarp.dtsi63
-rw-r--r--zephyr/program/corsola/adc_tentacruel.dtsi72
-rw-r--r--zephyr/program/corsola/battery_krabby.dtsi12
-rw-r--r--zephyr/program/corsola/battery_magikarp.dtsi12
-rw-r--r--zephyr/program/corsola/battery_tentacruel.dtsi12
-rw-r--r--zephyr/program/corsola/cbi_magikarp.dtsi36
-rw-r--r--zephyr/program/corsola/cbi_tentacruel.dtsi36
-rw-r--r--zephyr/program/corsola/common.dtsi25
-rw-r--r--zephyr/program/corsola/gpio_magikarp.dtsi237
-rw-r--r--zephyr/program/corsola/gpio_tentacruel.dtsi235
-rw-r--r--zephyr/program/corsola/i2c_krabby.dtsi23
-rw-r--r--zephyr/program/corsola/i2c_magikarp.dtsi37
-rw-r--r--zephyr/program/corsola/i2c_tentacruel.dtsi39
-rw-r--r--zephyr/program/corsola/include/baseboard_usbc_config.h42
-rw-r--r--zephyr/program/corsola/include/variant_db_detection.h37
-rw-r--r--zephyr/program/corsola/interrupts_magikarp.dtsi115
-rw-r--r--zephyr/program/corsola/interrupts_tentacruel.dtsi115
-rw-r--r--zephyr/program/corsola/ite_adc.dtsi38
-rw-r--r--zephyr/program/corsola/ite_gpio.dtsi231
-rw-r--r--zephyr/program/corsola/ite_i2c.dtsi131
-rw-r--r--zephyr/program/corsola/ite_interrupts.dtsi110
-rw-r--r--zephyr/program/corsola/ite_keyboard.dtsi28
-rw-r--r--zephyr/program/corsola/ite_motionsense.dtsi146
-rw-r--r--zephyr/program/corsola/ite_program.conf85
-rw-r--r--zephyr/program/corsola/ite_usbc.dtsi59
-rw-r--r--zephyr/program/corsola/kingler/project.conf9
-rw-r--r--zephyr/program/corsola/kingler/project.overlay96
-rw-r--r--zephyr/program/corsola/krabby/project.conf9
-rw-r--r--zephyr/program/corsola/krabby/project.overlay19
-rw-r--r--zephyr/program/corsola/led_it81202_base.dtsi174
-rw-r--r--zephyr/program/corsola/led_krabby.dtsi5
-rw-r--r--zephyr/program/corsola/led_magikarp.dtsi137
-rw-r--r--zephyr/program/corsola/led_tentacruel.dtsi119
-rw-r--r--zephyr/program/corsola/magikarp/project.conf22
-rw-r--r--zephyr/program/corsola/magikarp/project.overlay20
-rw-r--r--zephyr/program/corsola/motionsense_magikarp.dtsi199
-rw-r--r--zephyr/program/corsola/motionsense_tentacruel.dtsi199
-rw-r--r--zephyr/program/corsola/npcx_adc.dtsi46
-rw-r--r--zephyr/program/corsola/npcx_default_gpio_pinctrl.dtsi44
-rw-r--r--zephyr/program/corsola/npcx_gpio.dtsi249
-rw-r--r--zephyr/program/corsola/npcx_host_interface.dtsi12
-rw-r--r--zephyr/program/corsola/npcx_i2c.dtsi169
-rw-r--r--zephyr/program/corsola/npcx_interrupts.dtsi114
-rw-r--r--zephyr/program/corsola/npcx_keyboard.dtsi32
-rw-r--r--zephyr/program/corsola/npcx_motionsense.dtsi150
-rw-r--r--zephyr/program/corsola/npcx_program.conf84
-rw-r--r--zephyr/program/corsola/npcx_usbc.dtsi56
-rw-r--r--zephyr/program/corsola/power_signal.dtsi26
-rw-r--r--zephyr/program/corsola/program.conf96
-rw-r--r--zephyr/program/corsola/src/board.c36
-rw-r--r--zephyr/program/corsola/src/board_chipset.c51
-rw-r--r--zephyr/program/corsola/src/hibernate.c22
-rw-r--r--zephyr/program/corsola/src/kingler/board_steelix.c76
-rw-r--r--zephyr/program/corsola/src/kingler/button.c35
-rw-r--r--zephyr/program/corsola/src/kingler/i2c.c21
-rw-r--r--zephyr/program/corsola/src/kingler/led.c52
-rw-r--r--zephyr/program/corsola/src/kingler/led_steelix.c181
-rw-r--r--zephyr/program/corsola/src/kingler/usb_pd_policy.c73
-rw-r--r--zephyr/program/corsola/src/kingler/usbc_config.c317
-rw-r--r--zephyr/program/corsola/src/krabby/charger_workaround.c93
-rw-r--r--zephyr/program/corsola/src/krabby/hooks.c91
-rw-r--r--zephyr/program/corsola/src/krabby/i2c.c19
-rw-r--r--zephyr/program/corsola/src/krabby/keyboard_magikarp.c29
-rw-r--r--zephyr/program/corsola/src/krabby/ppc_krabby.c31
-rw-r--r--zephyr/program/corsola/src/krabby/ppc_magikarp.c44
-rw-r--r--zephyr/program/corsola/src/krabby/ppc_tentacruel.c89
-rw-r--r--zephyr/program/corsola/src/krabby/sensor_magikarp.c41
-rw-r--r--zephyr/program/corsola/src/krabby/sensor_tentacruel.c41
-rw-r--r--zephyr/program/corsola/src/krabby/temp_tentacruel.c129
-rw-r--r--zephyr/program/corsola/src/krabby/usb_pd_policy.c88
-rw-r--r--zephyr/program/corsola/src/krabby/usbc_config.c142
-rw-r--r--zephyr/program/corsola/src/usb_pd_policy.c225
-rw-r--r--zephyr/program/corsola/src/usbc_config.c247
-rw-r--r--zephyr/program/corsola/src/variant_db_detection.c210
-rw-r--r--zephyr/program/corsola/steelix/cbi.dtsi95
-rw-r--r--zephyr/program/corsola/steelix/interrupts.dtsi12
-rw-r--r--zephyr/program/corsola/steelix/project.conf34
-rw-r--r--zephyr/program/corsola/steelix/project.overlay298
-rw-r--r--zephyr/program/corsola/tentacruel/project.conf21
-rw-r--r--zephyr/program/corsola/tentacruel/project.overlay21
-rw-r--r--zephyr/program/corsola/thermistor_tentacruel.dtsi140
-rw-r--r--zephyr/program/corsola/usba.dtsi11
-rw-r--r--zephyr/program/corsola/usbc_magikarp.dtsi59
-rw-r--r--zephyr/program/corsola/usbc_tentacruel.dtsi60
-rw-r--r--zephyr/program/corsola/voltorb/project.conf41
-rw-r--r--zephyr/program/corsola/voltorb/project.overlay309
-rw-r--r--zephyr/program/herobrine/BUILD.py49
-rw-r--r--zephyr/program/herobrine/CMakeLists.txt36
-rw-r--r--zephyr/program/herobrine/Kconfig41
-rw-r--r--zephyr/program/herobrine/adc.dtsi47
-rw-r--r--zephyr/program/herobrine/common.dtsi44
-rw-r--r--zephyr/program/herobrine/default_gpio_pinctrl.dtsi44
-rw-r--r--zephyr/program/herobrine/display.dtsi18
-rw-r--r--zephyr/program/herobrine/evoker/gpio.dtsi309
-rw-r--r--zephyr/program/herobrine/evoker/led_pins.dtsi64
-rw-r--r--zephyr/program/herobrine/evoker/led_policy.dtsi86
-rw-r--r--zephyr/program/herobrine/evoker/motionsense.dtsi148
-rw-r--r--zephyr/program/herobrine/evoker/project.conf22
-rw-r--r--zephyr/program/herobrine/evoker/project.overlay59
-rw-r--r--zephyr/program/herobrine/gpio.dtsi321
-rw-r--r--zephyr/program/herobrine/herobrine/CMakeLists.txt6
-rw-r--r--zephyr/program/herobrine/herobrine/led_pins.dtsi62
-rw-r--r--zephyr/program/herobrine/herobrine/led_policy.dtsi202
-rw-r--r--zephyr/program/herobrine/herobrine/project.conf13
-rw-r--r--zephyr/program/herobrine/herobrine/project.overlay64
-rw-r--r--zephyr/program/herobrine/herobrine/src/alt_dev_replacement.c37
-rw-r--r--zephyr/program/herobrine/hoglin/gpio.dtsi321
-rw-r--r--zephyr/program/herobrine/hoglin/led_pins.dtsi36
-rw-r--r--zephyr/program/herobrine/hoglin/led_policy.dtsi95
-rw-r--r--zephyr/program/herobrine/hoglin/motionsense.dtsi241
-rw-r--r--zephyr/program/herobrine/hoglin/project.conf15
-rw-r--r--zephyr/program/herobrine/hoglin/project.overlay54
-rw-r--r--zephyr/program/herobrine/i2c.dtsi181
-rw-r--r--zephyr/program/herobrine/include/board_chipset.h13
-rw-r--r--zephyr/program/herobrine/interrupts.dtsi115
-rw-r--r--zephyr/program/herobrine/keyboard.dtsi46
-rw-r--r--zephyr/program/herobrine/motionsense.dtsi241
-rw-r--r--zephyr/program/herobrine/program.conf140
-rw-r--r--zephyr/program/herobrine/src/board_chipset.c82
-rw-r--r--zephyr/program/herobrine/src/i2c.c17
-rw-r--r--zephyr/program/herobrine/src/usb_pd_policy.c254
-rw-r--r--zephyr/program/herobrine/src/usbc_config.c282
-rw-r--r--zephyr/program/herobrine/switchcap.dtsi12
-rw-r--r--zephyr/program/herobrine/usbc.dtsi42
-rw-r--r--zephyr/program/herobrine/villager/gpio.dtsi317
-rw-r--r--zephyr/program/herobrine/villager/led_pins.dtsi36
-rw-r--r--zephyr/program/herobrine/villager/led_policy.dtsi95
-rw-r--r--zephyr/program/herobrine/villager/motionsense.dtsi148
-rw-r--r--zephyr/program/herobrine/villager/project.conf8
-rw-r--r--zephyr/program/herobrine/villager/project.overlay33
-rw-r--r--zephyr/program/herobrine/zoglin/project.conf15
-rw-r--r--zephyr/program/herobrine/zoglin/project.overlay6
-rw-r--r--zephyr/program/herobrine/zombie/gpio.dtsi317
-rw-r--r--zephyr/program/herobrine/zombie/led_pins.dtsi36
-rw-r--r--zephyr/program/herobrine/zombie/led_policy.dtsi95
-rw-r--r--zephyr/program/herobrine/zombie/motionsense.dtsi148
-rw-r--r--zephyr/program/herobrine/zombie/project.conf8
-rw-r--r--zephyr/program/herobrine/zombie/project.overlay30
-rw-r--r--zephyr/program/intelrvp/BUILD.py98
-rw-r--r--zephyr/program/intelrvp/CMakeLists.txt32
-rw-r--r--zephyr/program/intelrvp/Kconfig26
-rw-r--r--zephyr/program/intelrvp/adlrvp/CMakeLists.txt6
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_mchp/adlrvp_mchp.dts200
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_mchp/bb_retimer.dts28
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_mchp/gpio.dts299
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_mchp/interrupts.dts80
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_mchp/keyboard.dts31
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_mchp/prj.conf75
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_mchp/usbc.dts89
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_npcx/adlrvp_npcx.dts257
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_npcx/fan.dts36
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_npcx/gpio.dts344
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_npcx/interrupts.dts100
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_npcx/keyboard.dts59
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_npcx/prj.conf13
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_npcx/pwm_leds.dts57
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_npcx/temp_sensor.dts89
-rw-r--r--zephyr/program/intelrvp/adlrvp/adlrvp_npcx/usbc.dts89
-rw-r--r--zephyr/program/intelrvp/adlrvp/battery.dts20
-rw-r--r--zephyr/program/intelrvp/adlrvp/include/adlrvp_zephyr.h58
-rw-r--r--zephyr/program/intelrvp/adlrvp/ioex.dts78
-rw-r--r--zephyr/program/intelrvp/adlrvp/prj.conf64
-rw-r--r--zephyr/program/intelrvp/adlrvp/src/adlrvp.c430
-rw-r--r--zephyr/program/intelrvp/include/intel_rvp_board_id.h17
-rw-r--r--zephyr/program/intelrvp/include/intelrvp.h35
-rw-r--r--zephyr/program/intelrvp/led.md44
-rw-r--r--zephyr/program/intelrvp/legacy_ec_pwrseq.conf12
-rw-r--r--zephyr/program/intelrvp/mtlrvp/CMakeLists.txt6
-rw-r--r--zephyr/program/intelrvp/mtlrvp/ioex.dts71
-rw-r--r--zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/fan.dts36
-rw-r--r--zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/gpio.dts366
-rw-r--r--zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/interrupts.dts65
-rw-r--r--zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/keyboard.dts59
-rw-r--r--zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/mtlrvp_npcx.dts272
-rw-r--r--zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/mtlrvp_npcx_power_signals.dts125
-rw-r--r--zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/prj.conf10
-rw-r--r--zephyr/program/intelrvp/mtlrvp/prj.conf67
-rw-r--r--zephyr/program/intelrvp/mtlrvp/src/board_power.c61
-rw-r--r--zephyr/program/intelrvp/mtlrvp/src/mtlrvp.c334
-rw-r--r--zephyr/program/intelrvp/mtlrvp/usbc.dts76
-rw-r--r--zephyr/program/intelrvp/prj.conf64
-rw-r--r--zephyr/program/intelrvp/src/chg_usb_pd.c122
-rw-r--r--zephyr/program/intelrvp/src/chg_usb_pd_mecc_1_1.c92
-rw-r--r--zephyr/program/intelrvp/src/intel_rvp_board_id.c31
-rw-r--r--zephyr/program/intelrvp/src/intel_rvp_led.c168
-rw-r--r--zephyr/program/intelrvp/src/intelrvp.c25
-rw-r--r--zephyr/program/intelrvp/src/usb_pd_policy_mecc_1_1.c106
-rw-r--r--zephyr/program/intelrvp/zephyr_ap_pwrseq.conf10
-rw-r--r--zephyr/program/it8xxx2_evb/BUILD.py18
-rw-r--r--zephyr/program/it8xxx2_evb/CMakeLists.txt11
-rw-r--r--zephyr/program/it8xxx2_evb/adc.dts41
-rw-r--r--zephyr/program/it8xxx2_evb/fan.dts27
-rw-r--r--zephyr/program/it8xxx2_evb/gpio.dts169
-rw-r--r--zephyr/program/it8xxx2_evb/i2c.dts59
-rw-r--r--zephyr/program/it8xxx2_evb/include/i2c_map.h16
-rw-r--r--zephyr/program/it8xxx2_evb/interrupts.dts26
-rw-r--r--zephyr/program/it8xxx2_evb/prj.conf33
-rw-r--r--zephyr/program/it8xxx2_evb/pwm.dts31
-rw-r--r--zephyr/program/minimal/BUILD.py22
-rw-r--r--zephyr/program/minimal/CMakeLists.txt9
-rw-r--r--zephyr/program/minimal/README.md32
-rw-r--r--zephyr/program/minimal/it8xxx2.dts22
-rw-r--r--zephyr/program/minimal/npcx9.dts28
-rw-r--r--zephyr/program/minimal/prj.conf18
-rw-r--r--zephyr/program/nissa/BUILD.py71
-rw-r--r--zephyr/program/nissa/CMakeLists.txt99
-rw-r--r--zephyr/program/nissa/Kconfig67
-rw-r--r--zephyr/program/nissa/cbi.dtsi61
-rw-r--r--zephyr/program/nissa/craask/cbi.dtsi152
-rw-r--r--zephyr/program/nissa/craask/fan.dtsi38
-rw-r--r--zephyr/program/nissa/craask/generated.dtsi289
-rw-r--r--zephyr/program/nissa/craask/keyboard.dtsi54
-rw-r--r--zephyr/program/nissa/craask/motionsense.dtsi256
-rw-r--r--zephyr/program/nissa/craask/overlay.dtsi414
-rw-r--r--zephyr/program/nissa/craask/power_signals.dtsi220
-rw-r--r--zephyr/program/nissa/craask/project.conf17
-rw-r--r--zephyr/program/nissa/craask/project.overlay15
-rw-r--r--zephyr/program/nissa/craask/pwm_leds.dtsi62
-rw-r--r--zephyr/program/nissa/craask/src/charger.c56
-rw-r--r--zephyr/program/nissa/craask/src/fan.c37
-rw-r--r--zephyr/program/nissa/craask/src/form_factor.c133
-rw-r--r--zephyr/program/nissa/craask/src/kb_backlight.c34
-rw-r--r--zephyr/program/nissa/craask/src/keyboard.c45
-rw-r--r--zephyr/program/nissa/craask/src/led.c56
-rw-r--r--zephyr/program/nissa/craask/src/usbc.c251
-rw-r--r--zephyr/program/nissa/include/nissa_common.h23
-rw-r--r--zephyr/program/nissa/include/nissa_hdmi.h55
-rw-r--r--zephyr/program/nissa/it8xxx2_program.conf65
-rw-r--r--zephyr/program/nissa/joxer/cbi.dtsi32
-rw-r--r--zephyr/program/nissa/joxer/generated.dtsi260
-rw-r--r--zephyr/program/nissa/joxer/joxer_vif.xml346
-rw-r--r--zephyr/program/nissa/joxer/keyboard.dtsi22
-rw-r--r--zephyr/program/nissa/joxer/motionsense.dtsi148
-rw-r--r--zephyr/program/nissa/joxer/overlay.dtsi459
-rw-r--r--zephyr/program/nissa/joxer/power_signals.dtsi223
-rw-r--r--zephyr/program/nissa/joxer/project.conf19
-rw-r--r--zephyr/program/nissa/joxer/project.overlay14
-rw-r--r--zephyr/program/nissa/joxer/pwm_leds.dtsi60
-rw-r--r--zephyr/program/nissa/joxer/src/charger.c56
-rw-r--r--zephyr/program/nissa/joxer/src/fan.c42
-rw-r--r--zephyr/program/nissa/joxer/src/keyboard.c68
-rw-r--r--zephyr/program/nissa/joxer/src/led.c181
-rw-r--r--zephyr/program/nissa/joxer/src/usbc.c368
-rw-r--r--zephyr/program/nissa/nereid/generated.dtsi260
-rw-r--r--zephyr/program/nissa/nereid/keyboard.dtsi22
-rw-r--r--zephyr/program/nissa/nereid/motionsense.dtsi147
-rw-r--r--zephyr/program/nissa/nereid/nereid_vif.xml350
-rw-r--r--zephyr/program/nissa/nereid/overlay.dtsi409
-rw-r--r--zephyr/program/nissa/nereid/power_signals.dtsi223
-rw-r--r--zephyr/program/nissa/nereid/project.conf17
-rw-r--r--zephyr/program/nissa/nereid/project.overlay13
-rw-r--r--zephyr/program/nissa/nereid/pwm_leds.dtsi60
-rw-r--r--zephyr/program/nissa/nereid/src/charger.c56
-rw-r--r--zephyr/program/nissa/nereid/src/hdmi.c29
-rw-r--r--zephyr/program/nissa/nereid/src/keyboard.c29
-rw-r--r--zephyr/program/nissa/nereid/src/usbc.c369
-rw-r--r--zephyr/program/nissa/nissa.csv122
-rw-r--r--zephyr/program/nissa/nivviks/cbi.dtsi30
-rw-r--r--zephyr/program/nissa/nivviks/generated.dtsi291
-rw-r--r--zephyr/program/nissa/nivviks/keyboard.dtsi48
-rw-r--r--zephyr/program/nissa/nivviks/motionsense.dtsi166
-rw-r--r--zephyr/program/nissa/nivviks/overlay.dtsi439
-rw-r--r--zephyr/program/nissa/nivviks/power_signals.dtsi220
-rw-r--r--zephyr/program/nissa/nivviks/project.conf8
-rw-r--r--zephyr/program/nissa/nivviks/project.overlay14
-rw-r--r--zephyr/program/nissa/nivviks/pwm_leds.dtsi62
-rw-r--r--zephyr/program/nissa/nivviks/src/charger.c56
-rw-r--r--zephyr/program/nissa/nivviks/src/fan.c42
-rw-r--r--zephyr/program/nissa/nivviks/src/form_factor.c46
-rw-r--r--zephyr/program/nissa/nivviks/src/keyboard.c29
-rw-r--r--zephyr/program/nissa/nivviks/src/led.c51
-rw-r--r--zephyr/program/nissa/nivviks/src/usbc.c251
-rw-r--r--zephyr/program/nissa/npcx_program.conf48
-rw-r--r--zephyr/program/nissa/program.conf145
-rw-r--r--zephyr/program/nissa/pujjo/cbi.dtsi190
-rw-r--r--zephyr/program/nissa/pujjo/generated.dtsi277
-rw-r--r--zephyr/program/nissa/pujjo/keyboard.dtsi48
-rw-r--r--zephyr/program/nissa/pujjo/motionsense.dtsi245
-rw-r--r--zephyr/program/nissa/pujjo/overlay.dtsi371
-rw-r--r--zephyr/program/nissa/pujjo/power_signals.dtsi220
-rw-r--r--zephyr/program/nissa/pujjo/project.conf33
-rw-r--r--zephyr/program/nissa/pujjo/project.overlay13
-rw-r--r--zephyr/program/nissa/pujjo/pujjo_vif.xml350
-rw-r--r--zephyr/program/nissa/pujjo/src/charger.c64
-rw-r--r--zephyr/program/nissa/pujjo/src/fan.c42
-rw-r--r--zephyr/program/nissa/pujjo/src/form_factor.c78
-rw-r--r--zephyr/program/nissa/pujjo/src/hdmi.c12
-rw-r--r--zephyr/program/nissa/pujjo/src/keyboard.c29
-rw-r--r--zephyr/program/nissa/pujjo/src/led.c134
-rw-r--r--zephyr/program/nissa/pujjo/src/usbc.c227
-rw-r--r--zephyr/program/nissa/src/board_power.c169
-rw-r--r--zephyr/program/nissa/src/common.c199
-rw-r--r--zephyr/program/nissa/src/led.c52
-rw-r--r--zephyr/program/nissa/src/sub_board.c288
-rw-r--r--zephyr/program/nissa/xivu/cbi.dtsi133
-rw-r--r--zephyr/program/nissa/xivu/generated.dtsi291
-rw-r--r--zephyr/program/nissa/xivu/keyboard.dtsi34
-rw-r--r--zephyr/program/nissa/xivu/led_pins.dtsi84
-rw-r--r--zephyr/program/nissa/xivu/led_policy.dtsi122
-rw-r--r--zephyr/program/nissa/xivu/motionsense.dtsi252
-rw-r--r--zephyr/program/nissa/xivu/overlay.dtsi383
-rw-r--r--zephyr/program/nissa/xivu/power_signals.dtsi220
-rw-r--r--zephyr/program/nissa/xivu/project.conf25
-rw-r--r--zephyr/program/nissa/xivu/project.overlay15
-rw-r--r--zephyr/program/nissa/xivu/src/charger.c69
-rw-r--r--zephyr/program/nissa/xivu/src/form_factor.c78
-rw-r--r--zephyr/program/nissa/xivu/src/keyboard.c29
-rw-r--r--zephyr/program/nissa/xivu/src/usbc.c343
-rw-r--r--zephyr/program/nissa/xivur/cbi.dtsi30
-rw-r--r--zephyr/program/nissa/xivur/generated.dtsi291
-rw-r--r--zephyr/program/nissa/xivur/keyboard.dtsi48
-rw-r--r--zephyr/program/nissa/xivur/motionsense.dtsi166
-rw-r--r--zephyr/program/nissa/xivur/overlay.dtsi418
-rw-r--r--zephyr/program/nissa/xivur/power_signals.dtsi220
-rw-r--r--zephyr/program/nissa/xivur/project.conf8
-rw-r--r--zephyr/program/nissa/xivur/project.overlay14
-rw-r--r--zephyr/program/nissa/xivur/pwm_leds.dtsi62
-rw-r--r--zephyr/program/nissa/xivur/src/charger.c56
-rw-r--r--zephyr/program/nissa/xivur/src/fan.c43
-rw-r--r--zephyr/program/nissa/xivur/src/form_factor.c47
-rw-r--r--zephyr/program/nissa/xivur/src/keyboard.c29
-rw-r--r--zephyr/program/nissa/xivur/src/led.c51
-rw-r--r--zephyr/program/nissa/xivur/src/usbc.c277
-rw-r--r--zephyr/program/nissa/yaviks/cbi.dtsi99
-rw-r--r--zephyr/program/nissa/yaviks/fan.dtsi71
-rw-r--r--zephyr/program/nissa/yaviks/gpio.dtsi232
-rw-r--r--zephyr/program/nissa/yaviks/keyboard.dtsi22
-rw-r--r--zephyr/program/nissa/yaviks/overlay.dtsi383
-rw-r--r--zephyr/program/nissa/yaviks/power_signals.dtsi180
-rw-r--r--zephyr/program/nissa/yaviks/project.conf34
-rw-r--r--zephyr/program/nissa/yaviks/project.overlay13
-rw-r--r--zephyr/program/nissa/yaviks/src/charger.c74
-rw-r--r--zephyr/program/nissa/yaviks/src/fan.c37
-rw-r--r--zephyr/program/nissa/yaviks/src/keyboard.c106
-rw-r--r--zephyr/program/nissa/yaviks/src/led.c231
-rw-r--r--zephyr/program/nissa/yaviks/src/thermal.c108
-rw-r--r--zephyr/program/nissa/yaviks/src/usbc.c369
-rw-r--r--zephyr/program/nissa/yaviks/yaviks_vif.xml350
-rw-r--r--zephyr/program/npcx_evb/npcx7/BUILD.py11
-rw-r--r--zephyr/program/npcx_evb/npcx7/CMakeLists.txt10
-rw-r--r--zephyr/program/npcx_evb/npcx7/fan.dts39
-rw-r--r--zephyr/program/npcx_evb/npcx7/gpio.dts68
-rw-r--r--zephyr/program/npcx_evb/npcx7/interrupts.dts26
-rw-r--r--zephyr/program/npcx_evb/npcx7/keyboard.dts42
-rw-r--r--zephyr/program/npcx_evb/npcx7/prj.conf56
-rw-r--r--zephyr/program/npcx_evb/npcx9/BUILD.py16
-rw-r--r--zephyr/program/npcx_evb/npcx9/CMakeLists.txt10
-rw-r--r--zephyr/program/npcx_evb/npcx9/fan.dts39
-rw-r--r--zephyr/program/npcx_evb/npcx9/gpio.dts72
-rw-r--r--zephyr/program/npcx_evb/npcx9/interrupts.dts26
-rw-r--r--zephyr/program/npcx_evb/npcx9/keyboard.dts42
-rw-r--r--zephyr/program/npcx_evb/npcx9/prj.conf60
-rw-r--r--zephyr/program/rex/BUILD.py45
-rw-r--r--zephyr/program/rex/CMakeLists.txt12
-rw-r--r--zephyr/program/rex/Kconfig11
-rw-r--r--zephyr/program/rex/battery.dts12
-rw-r--r--zephyr/program/rex/fan.dts39
-rw-r--r--zephyr/program/rex/generated.dts363
-rw-r--r--zephyr/program/rex/include/gpio_map.h9
-rw-r--r--zephyr/program/rex/interrupts.dts80
-rw-r--r--zephyr/program/rex/keyboard.dts47
-rw-r--r--zephyr/program/rex/led.dts122
-rw-r--r--zephyr/program/rex/motionsense.dts257
-rw-r--r--zephyr/program/rex/power_signals.dts152
-rw-r--r--zephyr/program/rex/prj.conf151
-rw-r--r--zephyr/program/rex/prj_rex.conf6
-rw-r--r--zephyr/program/rex/rex.dts262
-rw-r--r--zephyr/program/rex/rex0_gpio.csv122
-rw-r--r--zephyr/program/rex/src/board_power.c61
-rw-r--r--zephyr/program/rex/src/usb_pd_policy.c77
-rw-r--r--zephyr/program/rex/src/usbc_config.c292
-rw-r--r--zephyr/program/rex/temp_sensors.dts69
-rw-r--r--zephyr/program/rex/usbc.dts51
-rw-r--r--zephyr/program/skyrim/BUILD.py48
-rw-r--r--zephyr/program/skyrim/CMakeLists.txt43
-rw-r--r--zephyr/program/skyrim/Kconfig46
-rw-r--r--zephyr/program/skyrim/adc.dtsi82
-rw-r--r--zephyr/program/skyrim/crystaldrift/CMakeLists.txt12
-rw-r--r--zephyr/program/skyrim/crystaldrift/battery.dtsi15
-rw-r--r--zephyr/program/skyrim/crystaldrift/crystaldrift.dtsi209
-rw-r--r--zephyr/program/skyrim/crystaldrift/led_pins.dtsi61
-rw-r--r--zephyr/program/skyrim/crystaldrift/led_policy.dtsi103
-rw-r--r--zephyr/program/skyrim/crystaldrift/motionsense.dtsi135
-rw-r--r--zephyr/program/skyrim/crystaldrift/project.conf26
-rw-r--r--zephyr/program/skyrim/crystaldrift/project.overlay19
-rw-r--r--zephyr/program/skyrim/crystaldrift/src/alt_charger.c31
-rw-r--r--zephyr/program/skyrim/crystaldrift/src/fan.c62
-rw-r--r--zephyr/program/skyrim/crystaldrift/src/form_factor.c38
-rw-r--r--zephyr/program/skyrim/crystaldrift/src/ppc_config.c46
-rw-r--r--zephyr/program/skyrim/crystaldrift/src/usb_mux_config.c142
-rw-r--r--zephyr/program/skyrim/fan.dtsi39
-rw-r--r--zephyr/program/skyrim/frostflow/CMakeLists.txt15
-rw-r--r--zephyr/program/skyrim/frostflow/battery.dtsi12
-rw-r--r--zephyr/program/skyrim/frostflow/frostflow.dtsi223
-rw-r--r--zephyr/program/skyrim/frostflow/include/keyboard_customization.h78
-rw-r--r--zephyr/program/skyrim/frostflow/led_pins.dtsi59
-rw-r--r--zephyr/program/skyrim/frostflow/led_policy.dtsi122
-rw-r--r--zephyr/program/skyrim/frostflow/motionsense.dtsi135
-rw-r--r--zephyr/program/skyrim/frostflow/project.conf33
-rw-r--r--zephyr/program/skyrim/frostflow/project.overlay19
-rw-r--r--zephyr/program/skyrim/frostflow/src/keyboard.c74
-rw-r--r--zephyr/program/skyrim/frostflow/src/keyboard_customization.c85
-rw-r--r--zephyr/program/skyrim/frostflow/src/ppc_config.c46
-rw-r--r--zephyr/program/skyrim/frostflow/src/thermal.c109
-rw-r--r--zephyr/program/skyrim/frostflow/src/usb_mux_config.c62
-rw-r--r--zephyr/program/skyrim/gpio.dtsi370
-rw-r--r--zephyr/program/skyrim/i2c.dtsi294
-rw-r--r--zephyr/program/skyrim/include/keyboard_customization.h78
-rw-r--r--zephyr/program/skyrim/interrupts.dtsi146
-rw-r--r--zephyr/program/skyrim/keyboard.dtsi48
-rw-r--r--zephyr/program/skyrim/morthal/CMakeLists.txt8
-rw-r--r--zephyr/program/skyrim/morthal/battery.dtsi15
-rw-r--r--zephyr/program/skyrim/morthal/led_pins.dtsi59
-rw-r--r--zephyr/program/skyrim/morthal/led_policy.dtsi103
-rw-r--r--zephyr/program/skyrim/morthal/morthal.dtsi185
-rw-r--r--zephyr/program/skyrim/morthal/motionsense.dtsi135
-rw-r--r--zephyr/program/skyrim/morthal/project.conf23
-rw-r--r--zephyr/program/skyrim/morthal/project.overlay19
-rw-r--r--zephyr/program/skyrim/morthal/src/ppc_config.c46
-rw-r--r--zephyr/program/skyrim/morthal/src/usb_mux_config.c142
-rw-r--r--zephyr/program/skyrim/motionsense.dtsi135
-rw-r--r--zephyr/program/skyrim/program.conf140
-rw-r--r--zephyr/program/skyrim/skyrim/CMakeLists.txt13
-rw-r--r--zephyr/program/skyrim/skyrim/battery.dtsi15
-rw-r--r--zephyr/program/skyrim/skyrim/led_pins.dtsi59
-rw-r--r--zephyr/program/skyrim/skyrim/led_policy.dtsi103
-rw-r--r--zephyr/program/skyrim/skyrim/motionsense.dtsi135
-rw-r--r--zephyr/program/skyrim/skyrim/project.conf26
-rw-r--r--zephyr/program/skyrim/skyrim/project.overlay19
-rw-r--r--zephyr/program/skyrim/skyrim/skyrim.dtsi209
-rw-r--r--zephyr/program/skyrim/skyrim/skyrim_vif.xml346
-rw-r--r--zephyr/program/skyrim/skyrim/src/alt_charger.c31
-rw-r--r--zephyr/program/skyrim/skyrim/src/fan.c62
-rw-r--r--zephyr/program/skyrim/skyrim/src/form_factor.c38
-rw-r--r--zephyr/program/skyrim/skyrim/src/keyboard.c29
-rw-r--r--zephyr/program/skyrim/skyrim/src/ppc_config.c46
-rw-r--r--zephyr/program/skyrim/skyrim/src/usb_mux_config.c142
-rw-r--r--zephyr/program/skyrim/src/common.c8
-rw-r--r--zephyr/program/skyrim/src/power_signals.c245
-rw-r--r--zephyr/program/skyrim/src/stt.c28
-rw-r--r--zephyr/program/skyrim/src/usb_pd_policy.c93
-rw-r--r--zephyr/program/skyrim/src/usbc_config.c394
-rw-r--r--zephyr/program/skyrim/usbc.dtsi26
-rw-r--r--zephyr/program/skyrim/winterhold/CMakeLists.txt12
-rw-r--r--zephyr/program/skyrim/winterhold/battery.dtsi33
-rw-r--r--zephyr/program/skyrim/winterhold/led_pins.dtsi59
-rw-r--r--zephyr/program/skyrim/winterhold/led_policy.dtsi103
-rw-r--r--zephyr/program/skyrim/winterhold/motionsense.dtsi124
-rw-r--r--zephyr/program/skyrim/winterhold/project.conf47
-rw-r--r--zephyr/program/skyrim/winterhold/project.overlay19
-rw-r--r--zephyr/program/skyrim/winterhold/src/battery_present.c81
-rw-r--r--zephyr/program/skyrim/winterhold/src/kb_backlight.c34
-rw-r--r--zephyr/program/skyrim/winterhold/src/keyboard.c29
-rw-r--r--zephyr/program/skyrim/winterhold/src/ppc_config.c27
-rw-r--r--zephyr/program/skyrim/winterhold/src/sensor.c37
-rw-r--r--zephyr/program/skyrim/winterhold/src/usb_mux_config.c146
-rw-r--r--zephyr/program/skyrim/winterhold/winterhold.dtsi168
-rw-r--r--zephyr/program/trogdor/lazor/BUILD.py25
-rw-r--r--zephyr/program/trogdor/lazor/CMakeLists.txt23
-rw-r--r--zephyr/program/trogdor/lazor/adc.dts48
-rw-r--r--zephyr/program/trogdor/lazor/battery.dts24
-rw-r--r--zephyr/program/trogdor/lazor/default_gpio_pinctrl.dts43
-rw-r--r--zephyr/program/trogdor/lazor/display.dts18
-rw-r--r--zephyr/program/trogdor/lazor/gpio.dts314
-rw-r--r--zephyr/program/trogdor/lazor/host_interface_npcx.dts12
-rw-r--r--zephyr/program/trogdor/lazor/i2c.dts145
-rw-r--r--zephyr/program/trogdor/lazor/include/sku.h17
-rw-r--r--zephyr/program/trogdor/lazor/interrupts.dts140
-rw-r--r--zephyr/program/trogdor/lazor/keyboard.dts38
-rw-r--r--zephyr/program/trogdor/lazor/led.dts90
-rw-r--r--zephyr/program/trogdor/lazor/motionsense.dts181
-rw-r--r--zephyr/program/trogdor/lazor/prj.conf149
-rw-r--r--zephyr/program/trogdor/lazor/pwm_led.dts55
-rw-r--r--zephyr/program/trogdor/lazor/src/hibernate.c48
-rw-r--r--zephyr/program/trogdor/lazor/src/i2c.c17
-rw-r--r--zephyr/program/trogdor/lazor/src/power.c59
-rw-r--r--zephyr/program/trogdor/lazor/src/sku.c92
-rw-r--r--zephyr/program/trogdor/lazor/src/switchcap.c128
-rw-r--r--zephyr/program/trogdor/lazor/src/usb_pd_policy.c261
-rw-r--r--zephyr/program/trogdor/lazor/src/usbc_config.c334
-rw-r--r--zephyr/program/trogdor/lazor/usbc.dts36
504 files changed, 0 insertions, 50520 deletions
diff --git a/zephyr/program/.pylintrc b/zephyr/program/.pylintrc
deleted file mode 100644
index 8bdb6378e4..0000000000
--- a/zephyr/program/.pylintrc
+++ /dev/null
@@ -1,28 +0,0 @@
-[BASIC]
-additional-builtins=
- here,
- register_binman_project,
- register_host_project,
- register_host_test,
- register_mchp_project,
- register_npcx_project,
- register_raw_project,
-good-names=BUILD
-
-# cros lint doesn't inherit the pylintrc from the parent dir.
-# These settings are copied from platform/ec/pylintrc
-[MESSAGES CONTROL]
-
-disable=
- bad-continuation,
- bad-whitespace,
- # These have nothing to do with black, they are just annoying
- fixme,
- too-many-arguments,
- too-many-statements,
- too-many-branches,
- too-many-locals
-
-[format]
-
-string-quote=double
diff --git a/zephyr/program/brya/BUILD.py b/zephyr/program/brya/BUILD.py
deleted file mode 100644
index 9991335ca7..0000000000
--- a/zephyr/program/brya/BUILD.py
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Define zmake projects for brya."""
-
-
-def register_npcx9_variant(
- project_name, extra_dts_overlays=(), extra_kconfig_files=()
-):
- """Register a variant of a brya, even though this is not named as such."""
- return register_npcx_project(
- project_name=project_name,
- zephyr_board="npcx9m3f",
- dts_overlays=[
- "adc.dts",
- "battery.dts",
- "fan.dts",
- "gpio.dts",
- "i2c.dts",
- "interrupts.dts",
- "keyboard.dts",
- "motionsense.dts",
- "pwm_leds.dts",
- "temp_sensors.dts",
- "usbc.dts",
- # Project-specific DTS customization.
- *extra_dts_overlays,
- ],
- kconfig_files=[
- # Common to all projects.
- here / "prj.conf",
- # Project-specific KConfig customization.
- *extra_kconfig_files,
- ],
- )
-
-
-brya = register_npcx9_variant(
- project_name="brya",
- extra_dts_overlays=[here / "brya.dts"],
- extra_kconfig_files=[here / "prj_brya.conf"],
-)
diff --git a/zephyr/program/brya/CMakeLists.txt b/zephyr/program/brya/CMakeLists.txt
deleted file mode 100644
index 11c1a8386f..0000000000
--- a/zephyr/program/brya/CMakeLists.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cmake_minimum_required(VERSION 3.13.1)
-
-find_package(Zephyr REQUIRED HINTS "${ZEPHYR_BASE}")
-project(brya)
-
-set(PLATFORM_EC_BOARD "${PLATFORM_EC}/board/brya" CACHE PATH
- "Path to the platform/ec board directory")
-set(PLATFORM_EC_BASEBOARD "${PLATFORM_EC}/baseboard/brya" CACHE PATH
- "Path to the platform/ec baseboard directory")
-
-# Include board specific header files
-zephyr_include_directories(
- include
- "${PLATFORM_EC}/driver/tcpm"
- "${PLATFORM_EC_BASEBOARD}"
- "${PLATFORM_EC_BOARD}")
-
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_BATTERY
- "${PLATFORM_EC_BASEBOARD}/battery_presence.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_CBI_EEPROM
- "${PLATFORM_EC_BASEBOARD}/cbi.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_PWM_KBLIGHT
- "kblight_hooks.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_BATTERY
- "${PLATFORM_EC_BASEBOARD}/battery_presence.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_BATTERY
- "battery_present.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USB_POWER_DELIVERY
- "${PLATFORM_EC_BASEBOARD}/usb_pd_policy.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "${PLATFORM_EC_BOARD}/usbc_config.c"
- "${PLATFORM_EC_BOARD}/fw_config.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_CHARGE_MANAGER
- "${PLATFORM_EC_BOARD}/charger.c"
- "${PLATFORM_EC}/common/math_util.c")
diff --git a/zephyr/program/brya/Kconfig b/zephyr/program/brya/Kconfig
deleted file mode 100644
index 4dd8e23443..0000000000
--- a/zephyr/program/brya/Kconfig
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-config BOARD_BRYA
- bool "Google Brya Baseboard"
- help
- Build Google Brya reference board. The board uses the Nuvuton NPCX9
- chip as the EC.
-
-source "Kconfig.zephyr"
diff --git a/zephyr/program/brya/adc.dts b/zephyr/program/brya/adc.dts
deleted file mode 100644
index f3f0d1e064..0000000000
--- a/zephyr/program/brya/adc.dts
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_ddr_soc: ddr_soc {
- enum-name = "ADC_TEMP_SENSOR_1_DDR_SOC";
- io-channels = <&adc0 0>;
- };
- adc_ambient: ambient {
- enum-name = "ADC_TEMP_SENSOR_2_AMBIENT";
- io-channels = <&adc0 1>;
- };
- adc_charger: charger {
- enum-name = "ADC_TEMP_SENSOR_3_CHARGER";
- io-channels = <&adc0 6>;
- };
- adc_wwan: wwan {
- enum-name = "ADC_TEMP_SENSOR_4_WWAN";
- io-channels = <&adc0 7>;
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_chan0_gp45
- &adc0_chan1_gp44
- &adc0_chan6_gp34
- &adc0_chan7_gpe1>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/brya/battery.dts b/zephyr/program/brya/battery.dts
deleted file mode 100644
index 4844d88d92..0000000000
--- a/zephyr/program/brya/battery.dts
+++ /dev/null
@@ -1,15 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- batteries {
- default_battery: batgqa05l22 {
- compatible = "powertech,batgqa05l22", "battery-smart";
- };
- lgc_ac17a8m {
- compatible = "lgc,ac17a8m", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/brya/battery_present.c b/zephyr/program/brya/battery_present.c
deleted file mode 100644
index b2af448271..0000000000
--- a/zephyr/program/brya/battery_present.c
+++ /dev/null
@@ -1,21 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "battery.h"
-#include "cbi.h"
-
-#include <zephyr/drivers/gpio.h>
-
-enum battery_present battery_hw_present(void)
-{
- const struct gpio_dt_spec *batt_pres;
-
- if (get_board_id() == 1)
- batt_pres = GPIO_DT_FROM_NODELABEL(gpio_id_1_ec_batt_pres_odl);
- else
- batt_pres = GPIO_DT_FROM_NODELABEL(gpio_ec_batt_pres_odl);
-
- /* The GPIO is low when the battery is physically present */
- return gpio_pin_get_dt(batt_pres) ? BP_NO : BP_YES;
-}
diff --git a/zephyr/program/brya/brya.dts b/zephyr/program/brya/brya.dts
deleted file mode 100644
index 4b0490afa9..0000000000
--- a/zephyr/program/brya/brya.dts
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- model = "Google Brya Baseboard";
-
- chosen {
- cros,rtc = &mtc;
- };
-
- ec-console {
- compatible = "ec-console";
- disabled = "events", "lpc", "hostcmd";
- };
-};
-
-/* host interface */
-&espi0 {
- status = "okay";
- pinctrl-0 = <&espi_lpc_gp46_47_51_52_53_54_55_57>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/brya/fan.dts b/zephyr/program/brya/fan.dts
deleted file mode 100644
index aa6dcfde7d..0000000000
--- a/zephyr/program/brya/fan.dts
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- fans {
- compatible = "cros-ec,fans";
-
- fan_0 {
- pwms = <&pwm5 0 PWM_KHZ(1) PWM_POLARITY_NORMAL>;
- rpm_min = <2200>;
- rpm_start = <2200>;
- rpm_max = <4200>;
- tach = <&tach1>;
- enable_gpio = <&gpio_en_pp5000_fan>;
- };
- };
-};
-
-/* Tachemeter for fan speed measurement */
-&tach1 {
- status = "okay";
- pinctrl-0 = <&ta1_1_in_gp40>;
- pinctrl-names = "default";
- port = <NPCX_TACH_PORT_A>; /* port-A is selected */
- sample-clk = <NPCX_TACH_FREQ_LFCLK>; /* Use LFCLK as sampling clock */
- pulses-per-round = <2>; /* number of pulses per round of encoder */
-};
-
-&pwm5_gpb7 {
- drive-open-drain;
-};
-
-&pwm5 {
- status = "okay";
- pinctrl-0 = <&pwm5_gpb7>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/brya/gpio.dts b/zephyr/program/brya/gpio.dts
deleted file mode 100644
index 6c6a2ac054..0000000000
--- a/zephyr/program/brya/gpio.dts
+++ /dev/null
@@ -1,341 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &gpio_ec_wp_l;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- lid_open: lid_open {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gsc_ec_pwr_btn_odl: gsc_ec_pwr_btn_odl {
- gpios = <&gpio0 1 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_ec_wp_l: ec_wp_odl {
- gpios = <&gpioa 1 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- charger_vap_otg_en {
- gpios = <&gpio7 3 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_batt_pres_odl: ec_batt_pres_odl {
- gpios = <&gpioa 3 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- /*
- * Same GPIO as gpio_ec_batt_pres_odl,
- * but only enabled for board id 1.
- */
- gpio_id_1_ec_kb_bl_en: id_1_ec_kb_bl_en {
- gpios = <&gpioa 3 GPIO_OUTPUT_LOW>;
- no-auto-init;
- };
- gpio_id_1_ec_batt_pres_odl: id_1_ec_batt_pres_odl {
- gpios = <&gpioe 1 GPIO_INPUT>;
- };
- ec_i2c_bat_scl {
- gpios = <&gpio3 3 GPIO_INPUT>;
- };
- ec_i2c_bat_sda {
- gpios = <&gpio3 6 GPIO_INPUT>;
- };
- gpio_ec_kb_bl_en_l: ec_kb_bl_en_l {
- gpios = <&gpio8 6 GPIO_OUTPUT_HIGH>;
- };
- ec_i2c_misc_scl_r {
- gpios = <&gpiob 3 GPIO_INPUT>;
- };
- ec_i2c_misc_sda_r {
- gpios = <&gpiob 2 GPIO_INPUT>;
- };
- ec_i2c_sensor_scl {
- gpios = <&gpiob 5 GPIO_INPUT>;
- };
- ec_i2c_sensor_sda {
- gpios = <&gpiob 4 GPIO_INPUT>;
- };
- ec_i2c_usb_c0_c2_ppc_bc_scl {
- gpios = <&gpio9 2 GPIO_INPUT>;
- };
- ec_i2c_usb_c0_c2_ppc_bc_sda {
- gpios = <&gpio9 1 GPIO_INPUT>;
- };
- ec_i2c_usb_c0_c2_rt_scl {
- gpios = <&gpiod 1 GPIO_INPUT>;
- };
- ec_i2c_usb_c0_c2_rt_sda {
- gpios = <&gpiod 0 GPIO_INPUT>;
- };
- ec_i2c_usb_c0_c2_tcpc_scl {
- gpios = <&gpio9 0 GPIO_INPUT>;
- };
- ec_i2c_usb_c0_c2_tcpc_sda {
- gpios = <&gpio8 7 GPIO_INPUT>;
- };
- ec_i2c_usb_c1_mix_scl {
- gpios = <&gpioe 4 GPIO_INPUT>;
- };
- ec_i2c_usb_c1_mix_sda {
- gpios = <&gpioe 3 GPIO_INPUT>;
- };
- ec_i2c_usb_c1_tcpc_scl {
- gpios = <&gpiof 3 GPIO_INPUT>;
- };
- ec_i2c_usb_c1_tcpc_sda {
- gpios = <&gpiof 2 GPIO_INPUT>;
- };
- ec_chg_led_y_c1 {
- gpios = <&gpioc 3 GPIO_OUTPUT_LOW>;
- };
- ec_chg_led_b_c1 {
- gpios = <&gpioc 4 GPIO_OUTPUT_LOW>;
- };
- ec_gsc_packet_mode {
- gpios = <&gpio7 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ec_accel_int_l: ec_accel_int_l {
- gpios = <&gpio8 1 GPIO_INPUT>;
- };
- gpio_ec_imu_int_l: gpio_ec_imu_int_l {
- gpios = <&gpio5 6 GPIO_INPUT>;
- };
- gpio_ec_als_rgb_int_l: gpio_ec_als_rgb_int_l {
- gpios = <&gpiod 4 GPIO_INPUT>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpio9 5 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- acok_od: acok_od {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
- gpio_ec_pch_wake_odl: ec_pch_wake_r_odl {
- gpios = <&gpioc 0 GPIO_ODR_HIGH>;
- };
- ec_pch_int_odl {
- gpios = <&gpiob 0 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_pg_ec_dsw_pwrok: pg_ec_dsw_pwrok {
- gpios = <&gpioc 7 GPIO_INPUT>;
- enum-name = "GPIO_PG_EC_DSW_PWROK";
- alias = "GPIO_SEQ_EC_DSW_PWROK";
- };
- en_s5_rails {
- gpios = <&gpiob 6 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_S5_RAILS";
- alias = "GPIO_TEMP_SENSOR_POWER";
- };
- sys_rst_odl {
- gpios = <&gpioc 5 GPIO_ODR_HIGH>;
- enum-name = "GPIO_SYS_RESET_L";
- };
- gpio_pg_ec_rsmrst_odl: pg_ec_rsmrst_odl {
- gpios = <&gpioe 2 GPIO_INPUT>;
- enum-name = "GPIO_PG_EC_RSMRST_ODL";
- };
- ec_pch_rsmrst_odl {
- gpios = <&gpioa 6 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PCH_RSMRST_L";
- };
- gpio_pg_ec_all_sys_pwrgd: pg_ec_all_sys_pwrgd {
- gpios = <&gpiof 4 GPIO_INPUT>;
- enum-name = "GPIO_PG_EC_ALL_SYS_PWRGD";
- };
- gpio_slp_s0_l: slp_s0_l {
- gpios = <&gpiod 5 GPIO_INPUT>;
- enum-name = "GPIO_PCH_SLP_S0_L";
- };
- gpio_slp_s3_l: slp_s3_l {
- gpios = <&gpioa 5 GPIO_INPUT>;
- enum-name = "GPIO_PCH_SLP_S3_L";
- };
- vccst_pwrgd_od {
- gpios = <&gpioa 4 GPIO_ODR_LOW>;
- enum-name = "GPIO_VCCST_PWRGD_OD";
- };
- ec_prochot_odl {
- gpios = <&gpio6 3 GPIO_ODR_HIGH>;
- enum-name = "GPIO_CPU_PROCHOT";
- };
- ec_pch_pwr_btn_odl {
- gpios = <&gpioc 1 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- gpio_slp_sus_l: slp_sus_l {
- gpios = <&gpiof 1 GPIO_INPUT>;
- enum-name = "GPIO_SLP_SUS_L";
- };
- pch_pwrok {
- gpios = <&gpio7 2 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PCH_PWROK";
- };
- ec_pch_sys_pwrok {
- gpios = <&gpio3 7 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EC_PCH_SYS_PWROK";
- };
- imvp9_vrrdy_od {
- gpios = <&gpio4 3 GPIO_INPUT>;
- enum-name = "GPIO_IMVP9_VRRDY_OD";
- };
- ec_edp_bl_en {
- gpios = <&gpiod 3 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- gpio_ec_prochot_in_l: ec_prochot_in_l {
- gpios = <&gpiof 0 GPIO_INPUT>;
- };
- gpio_en_pp5000_fan: en_pp5000_fan {
- gpios = <&gpio6 1 GPIO_OUTPUT_HIGH>;
- };
- gpio_ec_voldn_btn_odl: ec_voldn_btn_odl {
- gpios = <&gpio9 3 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_ec_volup_btn_odl: ec_volup_btn_odl {
- gpios = <&gpio9 7 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_usb_c0_c2_tcpc_int_odl: usb_c0_c2_tcpc_int_odl {
- gpios = <&gpioe 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_C2_TCPC_INT_ODL";
- };
- gpio_usb_c1_tcpc_int_odl: usb_c1_tcpc_int_odl {
- gpios = <&gpioa 2 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_TCPC_INT_ODL";
- };
- gpio_usb_c0_ppc_int_odl: usb_c0_ppc_int_odl {
- gpios = <&gpio6 2 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_PPC_INT_ODL";
- };
- gpio_usb_c1_ppc_int_odl: usb_c1_ppc_int_odl {
- gpios = <&gpiof 5 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_PPC_INT_ODL";
- };
- gpio_usb_c2_ppc_int_odl: usb_c2_ppc_int_odl {
- gpios = <&gpio7 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C2_PPC_INT_ODL";
- };
- gpio_usb_c0_bc12_int_odl: usb_c0_bc12_int_odl {
- gpios = <&gpioc 6 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_BC12_INT_ODL";
- };
- gpio_usb_c1_bc12_int_odl: usb_c1_bc12_int_odl {
- gpios = <&gpio5 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_BC12_INT_ODL";
- };
- gpio_usb_c2_bc12_int_odl: usb_c2_bc12_int_odl {
- gpios = <&gpio8 3 GPIO_INPUT>;
- enum-name = "GPIO_USB_C2_BC12_INT_ODL";
- };
- gpio_en_pp5000_usba_r: en_pp5000_usba_r {
- gpios = <&gpiod 7 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_PP5000_USBA_R";
- };
- usb_c1_rt_rst_r_odl {
- gpios = <&gpio0 2 GPIO_ODR_LOW>;
- enum-name = "GPIO_USB_C1_RT_RST_R_ODL";
- };
- usb_c1_rst_odl {
- gpios = <&gpio9 6 GPIO_ODR_LOW>;
- enum-name = "GPIO_USB_C1_RST_ODL";
- };
- usb_c0_c2_tcpc_rst_odl {
- gpios = <&gpioa 7 GPIO_ODR_HIGH>;
- enum-name = "GPIO_USB_C0_C2_TCPC_RST_ODL";
- };
- id_1_usb_c0_c2_tcpc_rst_odl {
- gpios = <&gpio3 4 GPIO_ODR_LOW>;
- };
- usb_c0_int_odl {
- gpios = <&gpiob 1 GPIO_INPUT>;
- };
- usb_c2_int_odl {
- gpios = <&gpio4 1 GPIO_INPUT>;
- };
- usb_c0_rt_int_odl: usb_c0_rt_int_odl {
- gpios = <&gpiob 1 GPIO_INPUT>;
- };
- usb_c2_rt_int_odl: usb_c2_rt_int_odl {
- gpios = <&gpio4 1 GPIO_INPUT>;
- };
- usb_c0_oc_odl {
- gpios = <&ioex_port1 4 GPIO_ODR_HIGH>;
- no-auto-init;
- };
- usb_c0_frs_en: usb_c0_frs_en {
- gpios = <&ioex_port1 6 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_FRS_EN";
- no-auto-init;
- };
- usb_c0_rt_rst_odl: usb_c0_rt_rst_odl {
- gpios = <&ioex_port1 7 GPIO_ODR_LOW>;
- no-auto-init;
- };
- usb_c2_rt_rst_odl: usb_c2_rt_rst_odl {
- gpios = <&ioex_port2 2 GPIO_ODR_LOW>;
- no-auto-init;
- };
- usb_c1_oc_odl {
- gpios = <&ioex_port2 3 GPIO_ODR_HIGH>;
- no-auto-init;
- };
- usb_c2_oc_odl {
- gpios = <&ioex_port2 4 GPIO_ODR_HIGH>;
- no-auto-init;
- };
- usb_c2_frs_en: usb_c2_frs_en {
- gpios = <&ioex_port2 6 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C2_FRS_EN";
- no-auto-init;
- };
- /* unimplemented GPIOs */
- entering-rw {
- enum-name = "GPIO_ENTERING_RW";
- };
- };
-
- usba-port-enable-list {
- compatible = "cros-ec,usba-port-enable-pins";
- enable-pins = <&gpio_en_pp5000_usba_r>;
- };
-};
-
-/* Power switch logic input pads */
-/* LID_OPEN_OD */
-&psl_in1_gpd2 {
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-/* ACOK_EC_OD */
-&psl_in2_gp00 {
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-/* GSC_EC_PWR_BTN_ODL */
-&psl_in3_gp01 {
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-/* Power domain device controlled by PSL (Power Switch Logic) IO pads */
-&power_ctrl_psl {
- status = "okay";
- pinctrl-names = "sleep";
- pinctrl-0 = <&psl_in1_gpd2 &psl_in2_gp00 &psl_in3_gp01>;
-};
diff --git a/zephyr/program/brya/i2c.dts b/zephyr/program/brya/i2c.dts
deleted file mode 100644
index 8de12cdb5e..0000000000
--- a/zephyr/program/brya/i2c.dts
+++ /dev/null
@@ -1,284 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
- #include <dt-bindings/usb_pd_tcpm.h>
-
-/ {
- named-i2c-ports {
- compatible = "named-i2c-ports";
- i2c_sensor: sensor {
- i2c-port = <&i2c0_0>;
- enum-names = "I2C_PORT_SENSOR";
- };
- tcpc0_2: tcpc0_2 {
- i2c-port = <&i2c1_0>;
- enum-names = "I2C_PORT_USB_C0_C2_TCPC";
- };
- tcpc1: tcpc1 {
- i2c-port = <&i2c4_1>;
- enum-names = "I2C_PORT_USB_C1_TCPC";
- dynamic-speed;
- };
- c0_c2_bc12: c0_c2_bc12 {
- i2c-port = <&i2c2_0>;
- enum-names = "I2C_PORT_USB_C0_C2_PPC",
- "I2C_PORT_USB_C0_C2_BC12";
- };
- c1_bc12: c1_bc12 {
- i2c-port = <&i2c6_1>;
- enum-names = "I2C_PORT_USB_C1_PPC",
- "I2C_PORT_USB_C1_BC12";
- dynamic-speed;
- };
- retimer0_2: retimer0_2 {
- i2c-port = <&i2c3_0>;
- enum-names = "I2C_PORT_USB_C0_C2_MUX";
- };
- battery {
- i2c-port = <&i2c5_0>;
- enum-names = "I2C_PORT_BATTERY";
- };
- i2c_charger: charger {
- i2c-port = <&i2c7_0>;
- enum-names = "I2C_PORT_CHARGER",
- "I2C_PORT_EEPROM",
- "I2C_PORT_MP2964";
- };
- };
-};
-
-&i2c0_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-&i2c1_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-
- tcpc_port0: nct38xx@70 {
- compatible = "nuvoton,nct38xx";
- reg = <0x70>;
- gpio-dev = <&nct3808_0_P1>;
- tcpc-flags = <(
- TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_NO_DEBUG_ACC_CONTROL)>;
- };
-
- nct3808_0_P1: nct3808_0_P1@70 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "nuvoton,nct38xx-gpio";
- reg = <0x70>;
- label = "NCT3808_0_P1";
-
- ioex_port1: gpio@0 {
- compatible = "nuvoton,nct38xx-gpio-port";
- reg = <0x0>;
- label = "NCT3808_0_P1_GPIO0";
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- pin_mask = <0xdc>;
- pinmux_mask = <0xff>;
- };
- };
-
- tcpc_port2: nct38xx@74 {
- compatible = "nuvoton,nct38xx";
- reg = <0x74>;
- gpio-dev = <&nct3808_0_P2>;
- tcpc-flags = <(TCPC_FLAGS_TCPCI_REV2_0)>;
- };
-
- nct3808_0_P2: nct3808_0_P2@74 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "nuvoton,nct38xx-gpio";
- reg = <0x74>;
- label = "NCT3808_0_P2";
-
- ioex_port2: gpio@0 {
- compatible = "nuvoton,nct38xx-gpio-port";
- reg = <0x0>;
- label = "NCT3808_0_P2_GPIO0";
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- pin_mask = <0xdc>;
- pinmux_mask = <0xff>;
- };
- };
-
- nct3808_alert_1 {
- compatible = "nuvoton,nct38xx-gpio-alert";
- irq-gpios = <&gpioe 0 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
- nct38xx-dev = <&nct3808_0_P1 &nct3808_0_P2>;
- label = "NCT3808_ALERT_1";
- };
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-&i2c2_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c2_0_sda_scl_gp91_92>;
- pinctrl-names = "default";
-
- ppc_port0: syv682x@40 {
- compatible = "silergy,syv682x";
- status = "okay";
- reg = <0x40>;
- frs_en_gpio = <&usb_c0_frs_en>;
- };
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c0_bc12>;
- };
-
- ppc_port2: syv682x@42 {
- compatible = "silergy,syv682x";
- status = "okay";
- reg = <0x42>;
- frs_en_gpio = <&usb_c2_frs_en>;
- };
-
- bc12_port2: pi3usb9201@5d {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5d>;
- irq = <&int_usb_c2_bc12>;
- };
-};
-
-&i2c_ctrl2 {
- status = "okay";
-};
-
-&i2c3_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c3_0_sda_scl_gpd0_d1>;
- pinctrl-names = "default";
-
- usb_c0_bb_retimer: jhl8040r-c0@56 {
- compatible = "intel,jhl8040r";
- reg = <0x56>;
- int-pin = <&usb_c0_rt_int_odl>;
- reset-pin = <&usb_c0_rt_rst_odl>;
- };
-
- usb_c2_bb_retimer: jhl8040r-c2@57 {
- compatible = "intel,jhl8040r";
- reg = <0x57>;
- int-pin = <&usb_c2_rt_int_odl>;
- reset-pin = <&usb_c2_rt_rst_odl>;
- };
-};
-
-&i2c_ctrl3 {
- status = "okay";
-};
-
-&i2c4_1 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c4_1_sda_scl_gpf2_f3>;
- pinctrl-names = "default";
-
- tcpc_port1: ps8xxx@b {
- compatible = "parade,ps8xxx";
- reg = <0xb>;
- tcpc-flags = <(
- TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_TCPCI_REV2_0_NO_VSAFE0V |
- TCPC_FLAGS_CONTROL_VCONN |
- TCPC_FLAGS_CONTROL_FRS)>;
- };
-};
-
-&i2c_ctrl4 {
- status = "okay";
-};
-
-&i2c5_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_STANDARD>;
- pinctrl-0 = <&i2c5_0_sda_scl_gp33_36>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl5 {
- status = "okay";
-};
-
-&i2c6_1 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c6_1_sda_scl_gpe3_e4>;
- pinctrl-names = "default";
-
- ppc_port1: nx20p348x@72 {
- compatible = "nxp,nx20p348x";
- status = "okay";
- reg = <0x72>;
- };
-
- bc12_port1: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c1_bc12>;
- };
-};
-
-&i2c_ctrl6 {
- status = "okay";
-};
-
-&i2c7_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>;
- pinctrl-names = "default";
-
- pmic_mp2964@20 {
- compatible = "mps,mp2964";
- reg = <0x20>;
- };
-
- charger: bq25710@9 {
- compatible = "ti,bq25710";
- status = "okay";
- reg = <0x9>;
- };
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-};
-
-&i2c_ctrl7 {
- status = "okay";
-};
diff --git a/zephyr/program/brya/interrupts.dts b/zephyr/program/brya/interrupts.dts
deleted file mode 100644
index 1adca3e035..0000000000
--- a/zephyr/program/brya/interrupts.dts
+++ /dev/null
@@ -1,150 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- int-wp = &int_wp;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_tablet_mode: tablet_mode {
- irq-pin = <&gpio_tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_lid_open: lid_open {
- irq-pin = <&lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_power_button: power_button {
- irq-pin = <&gsc_ec_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_wp: wp {
- irq-pin = <&gpio_ec_wp_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_ac_present: ac_present {
- irq-pin = <&acok_od>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_volume_up: volume_up {
- irq-pin = <&gpio_ec_volup_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_volume_down: volume_down {
- irq-pin = <&gpio_ec_voldn_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_accel: accel {
- irq-pin = <&gpio_ec_accel_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "lis2dw12_interrupt";
- };
- int_imu: imu {
- irq-pin = <&gpio_ec_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "lsm6dso_interrupt";
- };
- int_slp_s0: slp_s0 {
- irq-pin = <&gpio_slp_s0_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_slp_s3: slp_s3 {
- irq-pin = <&gpio_slp_s3_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_slp_sus: slp_sus {
- irq-pin = <&gpio_slp_sus_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_pg_dsw_pwrok: pg_dsw_pwrok {
- irq-pin = <&gpio_pg_ec_dsw_pwrok>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_pg_rsmrst_odl: pg_rsmrst_odl {
- irq-pin = <&gpio_pg_ec_rsmrst_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_pg_all_sys_pwrgd: pg_all_sys_pwrgd {
- irq-pin = <&gpio_pg_ec_all_sys_pwrgd>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_als_rgb: als_rgb {
- irq-pin = <&gpio_ec_als_rgb_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcs3400_interrupt";
- };
- int_prochot: prochot {
- irq-pin = <&gpio_ec_prochot_in_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "throttle_ap_prochot_input_interrupt";
- };
- int_usb_c0_c2_tcpc: usb_c0_c2_tcpc {
- irq-pin = <&gpio_usb_c0_c2_tcpc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c1_tcpc: usb_c1_tcpc {
- irq-pin = <&gpio_usb_c1_tcpc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c0_ppc: usb_c0_ppc {
- irq-pin = <&gpio_usb_c0_ppc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c1_ppc: usb_c1_ppc {
- irq-pin = <&gpio_usb_c1_ppc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c2_ppc: usb_c2_ppc {
- irq-pin = <&gpio_usb_c2_ppc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c0_bc12: usb_c0_bc12 {
- irq-pin = <&gpio_usb_c0_bc12_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bc12_interrupt";
- };
- int_usb_c1_bc12: usb_c1_bc12 {
- irq-pin = <&gpio_usb_c1_bc12_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bc12_interrupt";
- };
- int_usb_c2_bc12: usb_c2_bc12 {
- irq-pin = <&gpio_usb_c2_bc12_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bc12_interrupt";
- };
- int_usb_c0_rt: usb_c0_rt {
- irq-pin = <&usb_c0_rt_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "retimer_interrupt";
- };
- int_usb_c2_rt: usb_c2_rt {
- irq-pin = <&usb_c2_rt_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "retimer_interrupt";
- };
- };
-};
diff --git a/zephyr/program/brya/kblight_hooks.c b/zephyr/program/brya/kblight_hooks.c
deleted file mode 100644
index 8716537f5d..0000000000
--- a/zephyr/program/brya/kblight_hooks.c
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "cbi.h"
-#include "hooks.h"
-
-#include <stdbool.h>
-
-#include <zephyr/drivers/gpio.h>
-
-#include <ap_power/ap_power.h>
-
-/* Enable/Disable keyboard backlight gpio */
-static inline void kbd_backlight_enable(bool enable)
-{
- if (get_board_id() == 1)
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_id_1_ec_kb_bl_en),
- enable);
- else
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_ec_kb_bl_en_l),
- !enable);
-}
-
-static void board_backlight_handler(struct ap_power_ev_callback *cb,
- struct ap_power_ev_data data)
-{
- bool enable;
-
- switch (data.event) {
- default:
- return;
-
- case AP_POWER_RESUME:
- /* Called on AP S3 -> S0 transition */
- enable = true;
- break;
-
- case AP_POWER_SUSPEND:
- /* Called on AP S0 -> S3 transition */
- enable = false;
- break;
- }
- kbd_backlight_enable(enable);
-}
-
-/*
- * Explicitly apply the board ID 1 *gpio.inc settings to pins that
- * were reassigned on current boards.
- */
-static void set_board_id_1_gpios(void)
-{
- static struct ap_power_ev_callback cb;
-
- /*
- * Add a callback for suspend/resume to
- * control the keyboard backlight.
- */
- ap_power_ev_init_callback(&cb, board_backlight_handler,
- AP_POWER_RESUME | AP_POWER_SUSPEND);
- ap_power_ev_add_callback(&cb);
-
- if (get_board_id() != 1)
- return;
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_id_1_ec_kb_bl_en),
- GPIO_OUTPUT_LOW);
-}
-DECLARE_HOOK(HOOK_INIT, set_board_id_1_gpios, HOOK_PRIO_FIRST);
diff --git a/zephyr/program/brya/keyboard.dts b/zephyr/program/brya/keyboard.dts
deleted file mode 100644
index 91fad2db92..0000000000
--- a/zephyr/program/brya/keyboard.dts
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- kblight {
- compatible = "cros-ec,kblight-pwm";
- pwms = <&pwm3 0 PWM_HZ(2400) PWM_POLARITY_NORMAL>;
- };
-};
-
-&pwm3 {
- status = "okay";
- pinctrl-0 = <&pwm3_gp80>;
- pinctrl-names = "default";
-};
-
-&cros_kb_raw {
- status = "okay";
- /* No KSO2 (it's inverted and implemented by GPIO) */
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- &kso13_gp04
- &kso14_gp82
- >;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/brya/motionsense.dts b/zephyr/program/brya/motionsense.dts
deleted file mode 100644
index 08994e30cc..0000000000
--- a/zephyr/program/brya/motionsense.dts
+++ /dev/null
@@ -1,257 +0,0 @@
-/*
- * Copyright 2022 The ChromiumOS Authors
- *
- * SPDX-License-Identifier: Apache-2.0
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- lsm6dso-int = &base_accel;
- lis2dw12-int = &lid_accel;
- tcs3400-int = &als_clear;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- mutex_lis2dw12: lis2dw12-mutex {
- };
-
- mutex_lsm6dso: lsm6dso-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 1 0
- 1 0 0
- 0 0 (-1)>;
- };
- base_rot_ref: base-rotation-ref {
- mat33 = <1 0 0
- 0 (-1) 0
- 0 0 (-1)>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- lis2dw12_data: lis2dw12-drv-data {
- compatible = "cros-ec,drvdata-lis2dw12";
- status = "okay";
- };
-
- lsm6dso_accel_data: lsm6dso-accel-drv-data {
- compatible = "cros-ec,drvdata-lsm6dso";
- status = "okay";
- };
-
- lsm6dso_gyro_data: lsm6dso-gyro-drv-data {
- compatible = "cros-ec,drvdata-lsm6dso";
- status = "okay";
- };
-
- tcs_clear_data: tcs3400-clear-drv-data {
- compatible = "cros-ec,drvdata-tcs3400-clear";
- status = "okay";
-
- als-drv-data {
- compatible = "cros-ec,accelgyro-als-drv-data";
- als-cal {
- scale = <1>;
- uscale = <0>;
- offset = <0>;
- als-channel-scale {
- compatible =
- "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- };
- };
-
- tcs_rgb_data: tcs3400-rgb-drv-data {
- compatible = "cros-ec,drvdata-tcs3400-rgb";
- status = "okay";
-
- /* node for rgb_calibration_t defined in accelgyro.h */
- rgb_calibration {
- compatible =
- "cros-ec,accelgyro-rgb-calibration";
-
- irt = <1>;
-
- rgb-cal-x {
- offset = <0>;
- coeff = <0 0 0 1>;
- als-channel-scale {
- compatible =
- "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- rgb-cal-y {
- offset = <0>;
- coeff = <0 0 0 1>;
- als-channel-scale {
- compatible =
- "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- rgb-cal-z {
- offset = <0>;
- coeff = <0 0 0 1>;
- als-channel-scale {
- compatible =
- "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- };
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,lis2dw12";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&mutex_lis2dw12>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&lis2dw12_data>;
- i2c-spi-addr-flags = "LIS2DWL_ADDR0_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,lsm6dso-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_lsm6dso>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- default-range = <4>;
- drv-data = <&lsm6dso_accel_data>;
- i2c-spi-addr-flags = "LSM6DSO_ADDR0_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(13000 | ROUND_UP_FLAG)>;
- ec-rate = <(100 * USEC_PER_MSEC)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- ec-rate = <(100 * USEC_PER_MSEC)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,lsm6dso-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_lsm6dso>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- default-range = <(1000 | ROUND_UP_FLAG)>; /* dps */
- drv-data = <&lsm6dso_gyro_data>;
- i2c-spi-addr-flags = "LSM6DSO_ADDR0_FLAGS";
- };
-
- als_clear: base-als-clear {
- compatible = "cros-ec,tcs3400-clear";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_CAMERA";
- port = <&i2c_sensor>;
- default-range = <0x10000>;
- drv-data = <&tcs_clear_data>;
- i2c-spi-addr-flags = "TCS3400_I2C_ADDR_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- /* Run ALS sensor in S0 */
- odr = <1000>;
- };
- };
- };
-
- base-als-rgb {
- compatible = "cros-ec,tcs3400-rgb";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_CAMERA";
- default-range = <0x10000>; /* scale = 1x, uscale = 0 */
- drv-data = <&tcs_rgb_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /* list of entries for motion_als_sensors */
- als-sensors = <&als_clear>;
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_imu &int_als_rgb &int_accel>;
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel &als_clear>;
- };
-};
diff --git a/zephyr/program/brya/prj.conf b/zephyr/program/brya/prj.conf
deleted file mode 100644
index 402db74994..0000000000
--- a/zephyr/program/brya/prj.conf
+++ /dev/null
@@ -1,175 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_CROS_EC=y
-CONFIG_PLATFORM_EC=y
-CONFIG_SHIMMED_TASKS=y
-CONFIG_PLATFORM_EC_POWER_BUTTON=y
-CONFIG_PLATFORM_EC_LID_SWITCH=y
-CONFIG_PLATFORM_EC_SWITCH=y
-CONFIG_LTO=y
-CONFIG_CROS_SYSTEM_NPCX=y
-CONFIG_PLATFORM_EC_VBOOT_EFS2=y
-CONFIG_PLATFORM_EC_VBOOT_HASH=y
-CONFIG_PLATFORM_EC_EXTPOWER_GPIO=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_SYSINFO=y
-
-CONFIG_PLATFORM_EC_ADC_CHANNELS_RUNTIME_CONFIG=y
-
-CONFIG_KERNEL_SHELL=y
-
-# SoC configuration
-CONFIG_AP=y
-CONFIG_AP_X86_INTEL_ADL=y
-CONFIG_FPU=y
-CONFIG_ARM_MPU=y
-
-# CBI
-CONFIG_EEPROM=y
-CONFIG_PLATFORM_EC_BOARD_VERSION_CBI=y
-
-# eSPI
-CONFIG_ESPI=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S4=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S5=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_DEFAULT_VW_WIDTH_US=150
-
-# Power Sequencing
-CONFIG_PLATFORM_EC_POWERSEQ=y
-CONFIG_PLATFORM_EC_POWERSEQ_RTC_RESET=y
-CONFIG_PLATFORM_EC_POWERSEQ_S0IX=y
-CONFIG_PLATFORM_EC_POWERSEQ_S4=y
-CONFIG_PLATFORM_EC_POWER_SLEEP_FAILURE_DETECTION=y
-CONFIG_PLATFORM_EC_THROTTLE_AP=y
-
-# Host command
-CONFIG_PLATFORM_EC_HOSTCMD=y
-CONFIG_PLATFORM_EC_HOSTCMD_AP_RESET=y
-
-# Console command
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCELS=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCEL_INFO=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_I2C_SPEED=y
-
-# Sensors
-CONFIG_SENSOR=y
-CONFIG_SENSOR_SHELL=n
-CONFIG_PLATFORM_EC_MOTIONSENSE=y
-CONFIG_PLATFORM_EC_ACCEL_FIFO=y
-CONFIG_PLATFORM_EC_ALS=y
-CONFIG_PLATFORM_EC_DYNAMIC_MOTION_SENSOR_COUNT=y
-CONFIG_PLATFORM_EC_GMR_TABLET_MODE=y
-CONFIG_PLATFORM_EC_LID_ANGLE=y
-CONFIG_PLATFORM_EC_LID_ANGLE_UPDATE=y
-CONFIG_PLATFORM_EC_SENSOR_TIGHT_TIMESTAMPS=y
-CONFIG_PLATFORM_EC_TABLET_MODE=y
-CONFIG_PLATFORM_EC_TABLET_MODE_SWITCH=y
-
-# Sensor Drivers
-CONFIG_PLATFORM_EC_ACCELGYRO_LSM6DSO=y
-CONFIG_PLATFORM_EC_ACCEL_LIS2DW12=y
-CONFIG_PLATFORM_EC_ALS_TCS3400=y
-
-# Temperature sensors
-CONFIG_PLATFORM_EC_TEMP_SENSOR_POWER=y
-
-# MKBP event
-CONFIG_PLATFORM_EC_MKBP_EVENT=y
-CONFIG_PLATFORM_EC_MKBP_INPUT_DEVICES=y
-CONFIG_PLATFORM_EC_MKBP_USE_GPIO_AND_HOST_EVENT=y
-
-# PMIC
-CONFIG_PLATFORM_EC_PMIC=y
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_PROTOCOL_8042=y
-CONFIG_PLATFORM_EC_KEYBOARD_COL2_INVERTED=y
-CONFIG_PLATFORM_EC_KEYBOARD_KEYPAD=y
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI3=y
-CONFIG_PLATFORM_EC_VOLUME_BUTTONS=y
-CONFIG_PLATFORM_EC_CMD_BUTTON=n
-
-CONFIG_PLATFORM_EC_WORKAROUND_FLASH_DOWNLOAD_API=y
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_SMART=y
-CONFIG_PLATFORM_EC_BATTERY_FUEL_GAUGE=y
-CONFIG_PLATFORM_EC_BATTERY_CUT_OFF=y
-CONFIG_PLATFORM_EC_BATTERY_HW_PRESENT_CUSTOM=y
-CONFIG_PLATFORM_EC_BATTERY_REVIVE_DISCONNECT=y
-
-# USB-C and charging
-CONFIG_PLATFORM_EC_CHARGER_BQ25720=y
-CONFIG_PLATFORM_EC_CHARGER_BQ25720_VSYS_TH2_CUSTOM=y
-CONFIG_PLATFORM_EC_CHARGER_BQ25720_VSYS_TH2_DV=70
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC=y
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC_CHARGER=y
-CONFIG_PLATFORM_EC_CHARGER_MIN_INPUT_CURRENT_LIMIT=512
-CONFIG_PLATFORM_EC_CHARGER_MIN_BAT_PCT_FOR_POWER_ON=3
-CONFIG_PLATFORM_EC_CHARGER_MIN_BAT_PCT_FOR_POWER_ON_WITH_AC=1
-CONFIG_PLATFORM_EC_CHARGER_MIN_POWER_MW_FOR_POWER_ON_WITH_BATT=15000
-CONFIG_PLATFORM_EC_CHARGER_MIN_POWER_MW_FOR_POWER_ON=15001
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR=10
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR_AC=10
-CONFIG_PLATFORM_EC_CHARGE_RAMP_SW=y
-CONFIG_PLATFORM_EC_USB_PID=0x504F
-CONFIG_PLATFORM_EC_USBC_PPC_SYV682X=y
-CONFIG_PLATFORM_EC_USBC_PPC_NX20P3483=y
-CONFIG_PLATFORM_EC_USBC_RETIMER_INTEL_BB=y
-CONFIG_PLATFORM_EC_USB_DRP_ACC_TRYSRC=y
-CONFIG_PLATFORM_EC_USB_MUX_VIRTUAL=y
-CONFIG_PLATFORM_EC_USB_MUX_RUNTIME_CONFIG=n
-CONFIG_PLATFORM_EC_USB_MUX_TASK=y
-CONFIG_PLATFORM_EC_USB_PD_DEBUG_FIXED_LEVEL=y
-CONFIG_PLATFORM_EC_USB_PD_DEBUG_LEVEL=2
-CONFIG_PLATFORM_EC_USB_PD_ALT_MODE_UFP=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_MEASURE_CHARGER=y
-CONFIG_PLATFORM_EC_USB_PD_DISCHARGE_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_REV30=y
-CONFIG_PLATFORM_EC_USB_PD_USB32_DRD=y
-CONFIG_PLATFORM_EC_USB_PD_TBT_COMPAT_MODE=y
-CONFIG_PLATFORM_EC_USB_PD_USB4=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_PS8815=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_RT1715=n
-CONFIG_PLATFORM_EC_USB_PD_TCPM_TUSB422=n
-CONFIG_PLATFORM_EC_USB_PD_TCPM_NCT38XX=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_MUX=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_TCPCI=y
-CONFIG_PLATFORM_EC_USBC_PPC_DEDICATED_INT=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_PPC_DUMP=n
-CONFIG_PLATFORM_EC_CONSOLE_CMD_TCPC_DUMP=n
-CONFIG_PLATFORM_EC_USB_PD_TCPC_RUNTIME_CONFIG=n
-CONFIG_PLATFORM_EC_USB_PD_REQUIRE_AP_MODE_ENTRY=y
-CONFIG_PLATFORM_EC_USB_PD_INT_SHARED=y
-CONFIG_PLATFORM_EC_USB_PD_PORT_0_SHARED=y
-CONFIG_PLATFORM_EC_USB_PD_PORT_2_SHARED=y
-
-CONFIG_SYSCON=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_COMMON=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_LEDTEST=n
-CONFIG_PLATFORM_EC_LED_PWM_NEAR_FULL_COLOR=4
-CONFIG_PLATFORM_EC_LED_PWM_SOC_ON_COLOR=4
-CONFIG_PLATFORM_EC_LED_PWM_SOC_SUSPEND_COLOR=4
-CONFIG_PLATFORM_EC_LED_PWM_LOW_BATT_COLOR=5
-
-# TODO(b/188605676): bring these features up
-CONFIG_PLATFORM_EC_BOARD_VERSION_GPIO=n
-
-# Power Sequencing
-CONFIG_PLATFORM_EC_POWERSEQ=y
-CONFIG_PLATFORM_EC_POWERSEQ_PP5000_CONTROL=n
-CONFIG_CHIPSET_ALDERLAKE_SLG4BD44540=y
-CONFIG_PLATFORM_EC_POWERSEQ_RTC_RESET=n
-CONFIG_PLATFORM_EC_POWERSEQ_S0IX=y
-CONFIG_PLATFORM_EC_POWER_SLEEP_FAILURE_DETECTION=y
-# Treat 2nd reset from H1 as Power-On
-CONFIG_PLATFORM_EC_BOARD_RESET_AFTER_POWER_ON=y
-CONFIG_PLATFORM_EC_THROTTLE_AP=y
-
-# RTC
-CONFIG_PLATFORM_EC_RTC=y
diff --git a/zephyr/program/brya/prj_brya.conf b/zephyr/program/brya/prj_brya.conf
deleted file mode 100644
index 5aaf86a8c9..0000000000
--- a/zephyr/program/brya/prj_brya.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# BRYA-NPCX9 reference-board-specific Kconfig settings.
-CONFIG_BOARD_BRYA=y
diff --git a/zephyr/program/brya/pwm_leds.dts b/zephyr/program/brya/pwm_leds.dts
deleted file mode 100644
index 4321b4bd34..0000000000
--- a/zephyr/program/brya/pwm_leds.dts
+++ /dev/null
@@ -1,79 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_led0: pwm_led_0 {
- pwms = <&pwm2 0 PWM_HZ(4800) PWM_POLARITY_INVERTED
- &pwm0 0 PWM_HZ(4800) PWM_POLARITY_INVERTED>;
- };
- pwm_led1: pwm_led_1 {
- pwms = <&pwm1 0 PWM_HZ(4800) PWM_POLARITY_INVERTED
- &pwm7 0 PWM_HZ(4800) PWM_POLARITY_INVERTED>;
- };
- };
-
- cros-pwmleds {
- compatible = "cros-ec,pwm-leds";
-
- leds = <&pwm_led0 &pwm_led1>;
-
- /*<amber white>*/
- color-map-red = <0 0>;
- color-map-green = <0 0>;
- color-map-blue = <0 0>;
- color-map-yellow = <0 0>;
- color-map-white = <0 50>;
- color-map-amber = <50 0>;
-
- brightness-range = <0 0 0 0 100 100>;
-
- #address-cells = <1>;
- #size-cells = <0>;
-
- pwm_led_0@0 {
- reg = <0>;
- ec-led-name = "EC_LED_ID_LEFT_LED";
- };
-
- pwm_led_1@1 {
- reg = <1>;
- ec-led-name = "EC_LED_ID_RIGHT_LED";
- };
- };
-};
-
-/* LED2 */
-&pwm0 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm0_gpc3>;
- pinctrl-names = "default";
-};
-
-/* LED3 */
-&pwm1 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm1_gpc2>;
- pinctrl-names = "default";
-};
-
-/* LED1 */
-&pwm2 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
-
-/* LED4 */
-&pwm7 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm7_gp60>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/brya/temp_sensors.dts b/zephyr/program/brya/temp_sensors.dts
deleted file mode 100644
index ae436a2c6b..0000000000
--- a/zephyr/program/brya/temp_sensors.dts
+++ /dev/null
@@ -1,75 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-
-/ {
- temp_ddr_soc: ddr_soc {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_30K9_47K_4050B>;
- adc = <&adc_ddr_soc>;
- };
-
- temp_ambient: ambient {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_30K9_47K_4050B>;
- adc = <&adc_ambient>;
- };
-
- temp_charger: charger {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_30K9_47K_4050B>;
- adc = <&adc_charger>;
- };
-
- temp_wwan: wwan {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_30K9_47K_4050B>;
- adc = <&adc_wwan>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- ddr_soc {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- sensor = <&temp_ddr_soc>;
- };
-
- ambient {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- sensor = <&temp_ambient>;
- };
-
- charger {
- temp_fan_off = <35>;
- temp_fan_max = <65>;
- temp_host_high = <105>;
- temp_host_halt = <120>;
- temp_host_release_high = <90>;
- sensor = <&temp_charger>;
- };
-
- wwan {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <130>;
- temp_host_halt = <130>;
- temp_host_release_high = <100>;
- sensor = <&temp_wwan>;
- };
- };
-};
-
-&thermistor_3V3_30K9_47K_4050B {
- status = "okay";
-};
diff --git a/zephyr/program/brya/usbc.dts b/zephyr/program/brya/usbc.dts
deleted file mode 100644
index 1be9ac94ac..0000000000
--- a/zephyr/program/brya/usbc.dts
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- tcpc = <&tcpc_port0>;
- chg = <&charger>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c0_bb_retimer
- &virtual_mux_c0>;
- };
- ppc = <&ppc_port0>;
- };
- port0-muxes {
- virtual_mux_c0: virtual-mux-c0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&bc12_port1>;
- tcpc = <&tcpc_port1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_c1 &tcpci_mux_c1>;
- };
- ppc = <&ppc_port1>;
- };
- port1-muxes {
- tcpci_mux_c1: tcpci-mux-c1 {
- compatible = "cros-ec,usbc-mux-tcpci";
- hpd-update = "ps8xxx_tcpc_update_hpd_status";
- };
- virtual_mux_c1: virtual-mux-c1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- port2@2 {
- compatible = "named-usbc-port";
- reg = <2>;
- bc12 = <&bc12_port2>;
- tcpc = <&tcpc_port2>;
- usb-mux-chain-2 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c2_bb_retimer
- &virtual_mux_c2>;
- };
- ppc = <&ppc_port2>;
- };
- port2-muxes {
- virtual_mux_c2: virtual-mux-c2 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-};
diff --git a/zephyr/program/corsola/BUILD.py b/zephyr/program/corsola/BUILD.py
deleted file mode 100644
index f145953e0d..0000000000
--- a/zephyr/program/corsola/BUILD.py
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Define zmake projects for corsola."""
-
-# Default chip is it81202bx, some variants will use NPCX9X.
-
-
-def register_corsola_project(
- project_name,
- chip="it81202bx",
-):
- """Register a variant of corsola."""
- register_func = register_binman_project
- if chip.startswith("npcx"):
- register_func = register_npcx_project
-
- chip_kconfig = {"it81202bx": "ite", "npcx9m3f": "npcx"}[chip]
-
- register_func(
- project_name=project_name,
- zephyr_board=chip,
- dts_overlays=[here / project_name / "project.overlay"],
- kconfig_files=[
- here / "program.conf",
- here / f"{chip_kconfig}_program.conf",
- here / project_name / "project.conf",
- ],
- )
-
-
-register_corsola_project("krabby")
-
-register_corsola_project(
- project_name="kingler",
- chip="npcx9m3f",
-)
-
-register_corsola_project(
- project_name="steelix",
- chip="npcx9m3f",
-)
-
-register_corsola_project("tentacruel")
-
-register_corsola_project("magikarp")
-
-register_corsola_project(
- project_name="voltorb",
- chip="npcx9m3f",
-)
diff --git a/zephyr/program/corsola/CMakeLists.txt b/zephyr/program/corsola/CMakeLists.txt
deleted file mode 100644
index 33aa0804d2..0000000000
--- a/zephyr/program/corsola/CMakeLists.txt
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cmake_minimum_required(VERSION 3.13.1)
-
-find_package(Zephyr REQUIRED HINTS "${ZEPHYR_BASE}")
-
-cros_ec_library_include_directories(include)
-
-# Include selected EC source from the baseboard
-zephyr_library_sources(
- "src/board.c"
- "src/board_chipset.c"
- "src/hibernate.c"
-)
-
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "src/usbc_config.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "src/usb_pd_policy.c")
-zephyr_library_sources_ifdef(CONFIG_VARIANT_CORSOLA_DB_DETECTION
- "src/variant_db_detection.c")
-
-if(DEFINED CONFIG_BOARD_KRABBY)
- project(krabby)
- zephyr_library_sources("src/krabby/hooks.c"
- "src/krabby/charger_workaround.c"
- "src/krabby/ppc_krabby.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_I2C "src/krabby/i2c.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/krabby/usb_pd_policy.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/krabby/usbc_config.c")
-elseif(DEFINED CONFIG_BOARD_KINGLER)
- project(kingler)
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_I2C "src/kingler/i2c.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_LED_COMMON
- "src/kingler/led.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/kingler/usb_pd_policy.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/kingler/usbc_config.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_BUTTONS_RUNTIME_CONFIG
- "src/kingler/button.c")
-elseif(DEFINED CONFIG_BOARD_STEELIX)
- project(steelix)
- zephyr_library_sources("src/kingler/board_steelix.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_I2C "src/kingler/i2c.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_LED_COMMON
- "src/kingler/led_steelix.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/kingler/usb_pd_policy.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/kingler/usbc_config.c")
-
-elseif(DEFINED CONFIG_BOARD_TENTACRUEL)
- project(tentacruel)
- zephyr_library_sources("src/krabby/hooks.c"
- "src/krabby/charger_workaround.c"
- "src/krabby/sensor_tentacruel.c"
- "src/krabby/temp_tentacruel.c"
- "src/krabby/ppc_tentacruel.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_I2C "src/krabby/i2c.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/krabby/usb_pd_policy.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/krabby/usbc_config.c")
-
-elseif(DEFINED CONFIG_BOARD_MAGIKARP)
- project(magikarp)
- zephyr_library_sources("src/krabby/hooks.c"
- "src/krabby/sensor_magikarp.c"
- "src/krabby/ppc_magikarp.c"
- "src/krabby/keyboard_magikarp.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_I2C "src/krabby/i2c.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/krabby/usb_pd_policy.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/krabby/usbc_config.c")
-
-elseif(DEFINED CONFIG_BOARD_VOLTORB)
- project(voltorb)
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_I2C "src/kingler/i2c.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/kingler/usb_pd_policy.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/kingler/usbc_config.c")
-
-endif()
diff --git a/zephyr/program/corsola/Kconfig b/zephyr/program/corsola/Kconfig
deleted file mode 100644
index 731de33d8b..0000000000
--- a/zephyr/program/corsola/Kconfig
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-config BOARD_KRABBY
- bool "Google Krabby Board"
- help
- Build Google Krabby reference board. Krabby has MediaTek MT8186 SoC
- with ITE it81202-bx EC.
-
-config BOARD_KINGLER
- bool "Google Kingler Board"
- help
- Build Google Kingler reference board. Krabby has MediaTek MT8186 SoC
- with NPCX993FA0BX EC.
-
-config BOARD_STEELIX
- bool "Google Steelix Board"
- help
- Build Google Steelix variant board. Steelix is a variant of Kingler
- and has MediaTek MT8186 SoC with NPCX993FA0BX EC.
-
-config BOARD_TENTACRUEL
- bool "Google Tentacruel Board"
- help
- Build Google Tentacruel variant board. Tentacruel is a variant of Krabby
- and has MediaTek MT8186 SoC with ITE it81202-bx EC.
-
-config BOARD_MAGIKARP
- bool "Google Magikarp Board"
- help
- Build Google Magikarp variant board. Magikarp is a variant of Krabby
- and has MediaTek MT8186 SoC with ITE it81202-bx EC.
-
-config BOARD_VOLTORB
- bool "Google Voltorb Board"
- help
- Build Google Voltorb variant board. Voltorb is a variant of Kingler
- and has MediaTek MT8186/MT8186T SoC with NPCX993FA0BX EC.
-
-config VARIANT_CORSOLA_DB_DETECTION
- bool "Corsola Platform Runtime Daughter Board Detection"
- depends on PLATFORM_EC_USB_PD_TCPC_RUNTIME_CONFIG
- depends on PLATFORM_EC_USB_MUX_RUNTIME_CONFIG
- help
- Daughter board detection for Type-C subboard or HDMI subboard. This
- includes pin configuration and driver loading.
- default y
-
-config VARIANT_CORSOLA_USBA
- bool "Corsola Platform USB-A support"
- help
- Support Corsola USB-A related functions. Enable this function if
- it has USB-A ports.
- depends on PLATFORM_EC_USBC
- default y
-
-source "Kconfig.zephyr"
diff --git a/zephyr/program/corsola/adc_magikarp.dtsi b/zephyr/program/corsola/adc_magikarp.dtsi
deleted file mode 100644
index 358af6f0f4..0000000000
--- a/zephyr/program/corsola/adc_magikarp.dtsi
+++ /dev/null
@@ -1,63 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-
-/ {
- named-adc-channels {
- compatible = "named-adc-channels";
- adc_vbus_c0 {
- enum-name = "ADC_VBUS_C0";
- io-channels = <&adc0 0>;
- mul = <10>;
- };
- adc_board_id0 {
- enum-name = "ADC_BOARD_ID_0";
- io-channels = <&adc0 1>;
- };
- adc_board_id1 {
- enum-name = "ADC_BOARD_ID_1";
- io-channels = <&adc0 2>;
- };
- adc_vbus_c1 {
- enum-name = "ADC_VBUS_C1";
- io-channels = <&adc0 7>;
- mul = <10>;
- };
- adc_ambient: ambient {
- enum-name = "ADC_TEMP_SENSOR_2_AMBIENT";
- io-channels = <&adc0 5>;
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_ch0_gpi0_default
- &adc0_ch1_gpi1_default
- &adc0_ch2_gpi2_default
- &adc0_ch5_gpi5_default
- &adc0_ch7_gpi7_default>;
- pinctrl-names = "default";
-};
-
-/ {
- temp_ambient: ambient {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_30K9_47K_NCP15WB>;
- adc = <&adc_ambient>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- ambient {
- sensor = <&temp_ambient>;
- };
- };
-};
-
-&thermistor_3V3_30K9_47K_NCP15WB {
- status = "okay";
-};
diff --git a/zephyr/program/corsola/adc_tentacruel.dtsi b/zephyr/program/corsola/adc_tentacruel.dtsi
deleted file mode 100644
index 63ecb23a8e..0000000000
--- a/zephyr/program/corsola/adc_tentacruel.dtsi
+++ /dev/null
@@ -1,72 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-
-/ {
- named-adc-channels {
- compatible = "named-adc-channels";
- adc_vbus_c0 {
- enum-name = "ADC_VBUS_C0";
- io-channels = <&adc0 0>;
- mul = <10>;
- };
- adc_board_id0 {
- enum-name = "ADC_BOARD_ID_0";
- io-channels = <&adc0 1>;
- };
- adc_board_id1 {
- enum-name = "ADC_BOARD_ID_1";
- io-channels = <&adc0 2>;
- };
- adc_vbus_c1 {
- enum-name = "ADC_VBUS_C1";
- io-channels = <&adc0 7>;
- mul = <10>;
- };
- adc_ambient: ambient {
- enum-name = "ADC_TEMP_SENSOR_2_AMBIENT";
- io-channels = <&adc0 5>;
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_ch0_gpi0_default
- &adc0_ch1_gpi1_default
- &adc0_ch2_gpi2_default
- &adc0_ch5_gpi5_default
- &adc0_ch7_gpi7_default>;
- pinctrl-names = "default";
-};
-
-/ {
- temp_ambient: ambient {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_30K9_47K_NCP15WB>;
- adc = <&adc_ambient>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- ambient {
- temp_host_high = <56>;
- temp_host_halt = <80>;
- temp_host_release_high = <42>;
- sensor = <&temp_ambient>;
- };
- temp_charger: charger {
- temp_host_high = <68>;
- temp_host_halt = <90>;
- temp_host_release_high = <59>;
- sensor = <&charger_bc12_port1>;
- };
- };
-};
-
-&thermistor_3V3_30K9_47K_NCP15WB {
- status = "okay";
-};
diff --git a/zephyr/program/corsola/battery_krabby.dtsi b/zephyr/program/corsola/battery_krabby.dtsi
deleted file mode 100644
index ce41859182..0000000000
--- a/zephyr/program/corsola/battery_krabby.dtsi
+++ /dev/null
@@ -1,12 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- batteries {
- default_battery: c235 {
- compatible = "celxpert,c235-41", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/corsola/battery_magikarp.dtsi b/zephyr/program/corsola/battery_magikarp.dtsi
deleted file mode 100644
index bbdd6ac0c5..0000000000
--- a/zephyr/program/corsola/battery_magikarp.dtsi
+++ /dev/null
@@ -1,12 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- batteries {
- default_battery: smp_c31n1915 {
- compatible = "smp,c31n1915", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/corsola/battery_tentacruel.dtsi b/zephyr/program/corsola/battery_tentacruel.dtsi
deleted file mode 100644
index f116c20a51..0000000000
--- a/zephyr/program/corsola/battery_tentacruel.dtsi
+++ /dev/null
@@ -1,12 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- batteries {
- default_battery: dynapack_c140254 {
- compatible = "dynapack,c140254", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/corsola/cbi_magikarp.dtsi b/zephyr/program/corsola/cbi_magikarp.dtsi
deleted file mode 100644
index 5eac6b82c6..0000000000
--- a/zephyr/program/corsola/cbi_magikarp.dtsi
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- /* magikarp-specific fw_config fields. */
- magikarp-fw-config {
- compatible = "cros-ec,cbi-fw-config";
- /*
- * FW_CONFIG field to describe mainboard orientation in chassis.
- */
- base-gyro {
- enum-name = "FW_BASE_GYRO";
- start = <0>;
- size = <2>;
-
- None {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_BASE_NONE";
- value = <0>;
- };
- icm42607 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_BASE_ICM42607";
- value = <1>;
- default;
- };
- bmi323 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_BASE_BMI323";
- value = <2>;
- };
- };
- };
-};
diff --git a/zephyr/program/corsola/cbi_tentacruel.dtsi b/zephyr/program/corsola/cbi_tentacruel.dtsi
deleted file mode 100644
index 2cd4594417..0000000000
--- a/zephyr/program/corsola/cbi_tentacruel.dtsi
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- /* tentacruel-specific fw_config fields. */
- tentacruel-fw-config {
- compatible = "cros-ec,cbi-fw-config";
- /*
- * FW_CONFIG field to describe mainboard orientation in chassis.
- */
- base-gyro {
- enum-name = "FW_BASE_GYRO";
- start = <8>;
- size = <2>;
-
- None {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_BASE_NONE";
- value = <0>;
- };
- icm42607 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_BASE_ICM42607";
- value = <1>;
- default;
- };
- bmi323 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_BASE_BMI323";
- value = <2>;
- };
- };
- };
-};
diff --git a/zephyr/program/corsola/common.dtsi b/zephyr/program/corsola/common.dtsi
deleted file mode 100644
index 001dcc7ce3..0000000000
--- a/zephyr/program/corsola/common.dtsi
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/wake_mask_event_defines.h>
-
-/ {
- ec-mkbp-host-event-wakeup-mask {
- compatible = "ec-wake-mask-event";
- wakeup-mask = <(
- HOST_EVENT_AC_CONNECTED |
- HOST_EVENT_AC_DISCONNECTED |
- HOST_EVENT_LID_OPEN |
- HOST_EVENT_POWER_BUTTON |
- HOST_EVENT_HANG_DETECT |
- HOST_EVENT_MODE_CHANGE)>;
- };
-
- ec-mkbp-event-wakeup-mask {
- compatible = "ec-wake-mask-event";
- wakeup-mask = <(MKBP_EVENT_KEY_MATRIX |
- MKBP_EVENT_HOST_EVENT)>;
- };
-};
diff --git a/zephyr/program/corsola/gpio_magikarp.dtsi b/zephyr/program/corsola/gpio_magikarp.dtsi
deleted file mode 100644
index cb9f6f1a0a..0000000000
--- a/zephyr/program/corsola/gpio_magikarp.dtsi
+++ /dev/null
@@ -1,237 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/gpio_defines.h>
-
-/ {
- aliases {
- gpio-cbi-wp = &gpio_ec_cbi_wp;
- gpio-wp = &ec_flash_wp_odl;
- gpio-en-hdmi-pwr = &gpio_ec_x_gpio1;
- gpio-usb-c1-frs-en = &gpio_ec_x_gpio1;
- gpio-usb-c1-ppc-int-odl = &gpio_x_ec_gpio2;
- gpio-ps185-ec-dp-hpd = &gpio_x_ec_gpio2;
- gpio-usb-c1-dp-in-hpd = &gpio_ec_x_gpio3;
- gpio-ps185-pwrdn-odl = &gpio_ec_x_gpio3;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- power_button_l: power_button_l {
- gpios = <&gpioe 4 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- lid_open: lid_open {
- gpios = <&gpioe 2 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- tablet_mode_l: tablet_mode_l {
- gpios = <&gpioj 7 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- ap_ec_warm_rst_req: ap_ec_warm_rst_req {
- gpios = <&gpiod 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_HIGH)>;
- enum-name = "GPIO_AP_EC_WARM_RST_REQ";
- };
- ap_in_sleep_l: ap_in_sleep_l {
- gpios = <&gpiob 6 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_AP_IN_SLEEP_L";
- };
- base_imu_int_l: base_imu_int_l {
- gpios = <&gpiom 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- lid_accel_int_l: lid_accel_int_l {
- gpios = <&gpiom 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- volume_down_l: volume_down_l {
- gpios = <&gpiod 5 GPIO_INPUT>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- volume_up_l: volume_up_l {
- gpios = <&gpiod 6 GPIO_INPUT>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_ap_xhci_init_done: ap_xhci_init_done {
- gpios = <&gpioj 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ac_present: ac_present {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpioc 3 GPIO_OUTPUT_LOW>;
- };
- ec_flash_wp_odl: ec_flash_wp_odl {
- gpios = <&gpioi 4 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_LOW)>;
- };
- spi0_cs: spi0_cs {
- gpios = <&gpiom 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_x_ec_gpio2: x_ec_gpio2 {
- gpios = <&gpiob 2 GPIO_INPUT>;
- };
- usb_c0_ppc_int_odl: usb_c0_ppc_int_odl {
- gpios = <&gpiod 1 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_PPC_INT_ODL";
- };
- usb_c0_bc12_int_odl: usb_c0_bc12_int_odl {
- gpios = <&gpiof 1 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_BC12_INT_ODL";
- };
- usb_c1_bc12_charger_int_odl: usb_c1_bc12_charger_int_odl {
- gpios = <&gpioj 4 GPIO_INPUT>;
- };
- ec_pmic_en_odl: ec_pmic_en_odl {
- gpios = <&gpiod 0 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_EC_PMIC_EN_ODL";
- };
- en_pp5000_z2: en_pp5000_z2 {
- gpios = <&gpioc 6 GPIO_OUTPUT_HIGH>;
- };
- gpio_en_ulp: en_ulp {
- gpios = <&gpioe 3 GPIO_OUTPUT_LOW>;
- };
- sys_rst_odl: sys_rst_odl {
- gpios = <&gpiog 1 GPIO_ODR_LOW>;
- enum-name = "GPIO_SYS_RST_ODL";
- };
- gpio_ec_bl_en_od: ec_bl_en_od {
- gpios = <&gpiob 5 (GPIO_ODR_LOW | GPIO_VOLTAGE_1P8)>;
- };
- ap_sysrst_odl_r: ap_ec_sysrst_odl {
- gpios = <&gpioj 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_AP_EC_SYSRST_ODL";
- };
- ap_ec_wdtrst_l: ap_ec_wdtrst_l {
- gpios = <&gpioc 7 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_AP_EC_WDTRST_L";
- };
- ec_int_l: ec_int_l {
- gpios = <&gpioe 6 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_EC_INT_L";
- };
- dp_aux_path_sel: dp_aux_path_sel {
- gpios = <&gpiog 0 GPIO_OUTPUT_HIGH>;
- };
- ec_ap_dp_hpd_odl: ec_ap_dp_hpd_odl {
- gpios = <&gpioj 0 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- };
- en_pp5000_usb_a0_vbus: en_pp5000_usb_a0_vbus {
- gpios = <&gpiob 7 GPIO_OUTPUT_LOW>;
- };
- usb_c0_frs_en: usb_c0_frs_en {
- gpios = <&gpiof 0 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C0_FRS_EN";
- };
- ec_batt_pres_odl: ec_batt_pres_odl {
- gpios = <&gpioc 0 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- en_ec_id_odl: en_ec_id_odl {
- gpios = <&gpioh 5 GPIO_ODR_HIGH>;
- };
- entering_rw: entering_rw {
- gpios = <&gpioc 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_en_5v_usm: en_5v_usm {
- gpios = <&gpiog 3 GPIO_OUTPUT_LOW>;
- };
- usb_a0_fault_odl: usb_a0_fault_odl {
- gpios = <&gpioj 6 GPIO_INPUT>;
- };
- gpio_ec_x_gpio1: ec_x_gpio1 {
- gpios = <&gpioh 4 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_x_gpio3: ec_x_gpio3 {
- gpios = <&gpioj 1 GPIO_OUTPUT_LOW>;
- };
- gpio_hdmi_prsnt_odl: hdmi_prsnt_odl {
- gpios = <&gpioj 3 GPIO_INPUT>;
- };
- gpio_packet_mode_en: packet_mode_en {
- gpios = <&gpiod 4 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioc 4 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <&int_ac_present
- &int_power_button
- &int_lid_open>;
- };
-
- unused-pins {
- compatible = "unused-gpios";
-
- unused-gpios =
- /* pg_pp5000_z2_od */
- <&gpiod 2 GPIO_INPUT>,
- /* pg_mt6315_proc_b_odl */
- <&gpioe 1 GPIO_INPUT>,
- /* ec_pen_chg_dis_odl */
- <&gpioh 3 GPIO_ODR_HIGH>,
- /* unnamed nc pins */
- <&gpioa 3 GPIO_INPUT_PULL_DOWN>,
- <&gpioa 6 GPIO_INPUT_PULL_DOWN>,
- <&gpioa 7 GPIO_INPUT_PULL_DOWN>,
- /* reserved for b:241345809 */
- <&gpiod 7 GPIO_OUTPUT_LOW>,
- <&gpiog 2 GPIO_INPUT_PULL_DOWN>,
- <&gpioh 0 GPIO_INPUT_PULL_DOWN>,
- <&gpioh 6 GPIO_INPUT_PULL_DOWN>,
- <&gpioi 3 GPIO_INPUT_PULL_DOWN>,
- <&gpioi 6 GPIO_INPUT_PULL_DOWN>,
- <&gpiom 6 (GPIO_INPUT_PULL_DOWN | GPIO_VOLTAGE_1P8)>,
- /* spi_clk_gpg6 */
- <&gpiog 6 GPIO_INPUT_PULL_UP>,
- /* spi_mosi_gpg4 */
- <&gpiog 4 GPIO_OUTPUT_LOW>,
- /* spi_miso_gpg5 */
- <&gpiog 5 GPIO_OUTPUT_LOW>,
- /* spi_cs_gpg7 */
- <&gpiog 7 GPIO_OUTPUT_LOW>;
- };
-};
-
-&pinctrl {
- /* I2C property setting */
- i2c0_clk_gpb3_default: i2c0_clk_gpb3_default {
- gpio-voltage = "1v8";
- };
- i2c0_data_gpb4_default: i2c0_data_gpb4_default {
- gpio-voltage = "1v8";
- };
- i2c3_clk_gpf2_default: i2c3_clk_gpf2_default {
- gpio-voltage = "1v8";
- };
- i2c3_data_gpf3_default: i2c3_data_gpf3_default {
- gpio-voltage = "1v8";
- };
- /* SHI property setting */
- shi_mosi_gpm0_default: shi_mosi_gpm0_default {
- gpio-voltage = "1v8";
- };
- shi_miso_gpm1_default: shi_miso_gpm1_default {
- gpio-voltage = "1v8";
- };
- shi_clk_gpm4_default: shi_clk_gpm4_default {
- gpio-voltage = "1v8";
- };
- shi_cs_gpm5_default: shi_cs_gpm5_default {
- gpio-voltage = "1v8";
- };
-};
diff --git a/zephyr/program/corsola/gpio_tentacruel.dtsi b/zephyr/program/corsola/gpio_tentacruel.dtsi
deleted file mode 100644
index a9ac9e8eac..0000000000
--- a/zephyr/program/corsola/gpio_tentacruel.dtsi
+++ /dev/null
@@ -1,235 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/gpio_defines.h>
-
-/ {
- aliases {
- gpio-cbi-wp = &gpio_ec_cbi_wp;
- gpio-wp = &ec_flash_wp_odl;
- gpio-en-hdmi-pwr = &gpio_ec_x_gpio1;
- gpio-usb-c1-frs-en = &gpio_ec_x_gpio1;
- gpio-usb-c1-ppc-int-odl = &gpio_x_ec_gpio2;
- gpio-ps185-ec-dp-hpd = &gpio_x_ec_gpio2;
- gpio-usb-c1-dp-in-hpd = &gpio_ec_x_gpio3;
- gpio-ps185-pwrdn-odl = &gpio_ec_x_gpio3;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- power_button_l: power_button_l {
- gpios = <&gpioe 4 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- lid_open: lid_open {
- gpios = <&gpioe 2 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- tablet_mode_l: tablet_mode_l {
- gpios = <&gpioj 7 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- ap_ec_warm_rst_req: ap_ec_warm_rst_req {
- gpios = <&gpiod 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_HIGH)>;
- enum-name = "GPIO_AP_EC_WARM_RST_REQ";
- };
- ap_in_sleep_l: ap_in_sleep_l {
- gpios = <&gpiob 6 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_AP_IN_SLEEP_L";
- };
- base_imu_int_l: base_imu_int_l {
- gpios = <&gpiom 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- lid_accel_int_l: lid_accel_int_l {
- gpios = <&gpiom 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- volume_down_l: volume_down_l {
- gpios = <&gpiod 5 GPIO_INPUT>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- volume_up_l: volume_up_l {
- gpios = <&gpiod 6 GPIO_INPUT>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_ap_xhci_init_done: ap_xhci_init_done {
- gpios = <&gpioj 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ac_present: ac_present {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpioc 3 GPIO_OUTPUT_LOW>;
- };
- ec_flash_wp_odl: ec_flash_wp_odl {
- gpios = <&gpioi 4 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_LOW)>;
- };
- spi0_cs: spi0_cs {
- gpios = <&gpiom 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_x_ec_gpio2: x_ec_gpio2 {
- gpios = <&gpiob 2 GPIO_INPUT>;
- };
- usb_c0_ppc_int_odl: usb_c0_ppc_int_odl {
- gpios = <&gpiod 1 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_PPC_INT_ODL";
- };
- usb_c0_bc12_int_odl: usb_c0_bc12_int_odl {
- gpios = <&gpiof 1 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_BC12_INT_ODL";
- };
- usb_c1_bc12_charger_int_odl: usb_c1_bc12_charger_int_odl {
- gpios = <&gpioj 4 GPIO_INPUT>;
- };
- ec_pmic_en_odl: ec_pmic_en_odl {
- gpios = <&gpiod 0 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_EC_PMIC_EN_ODL";
- };
- en_pp5000_z2: en_pp5000_z2 {
- gpios = <&gpioc 6 GPIO_OUTPUT_HIGH>;
- };
- gpio_en_ulp: en_ulp {
- gpios = <&gpioe 3 GPIO_OUTPUT_LOW>;
- };
- sys_rst_odl: sys_rst_odl {
- gpios = <&gpiog 1 GPIO_ODR_LOW>;
- enum-name = "GPIO_SYS_RST_ODL";
- };
- gpio_ec_bl_en_od: ec_bl_en_od {
- gpios = <&gpiob 5 (GPIO_ODR_LOW | GPIO_VOLTAGE_1P8)>;
- };
- ap_sysrst_odl_r: ap_ec_sysrst_odl {
- gpios = <&gpioj 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_AP_EC_SYSRST_ODL";
- };
- ap_ec_wdtrst_l: ap_ec_wdtrst_l {
- gpios = <&gpioc 7 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_AP_EC_WDTRST_L";
- };
- ec_int_l: ec_int_l {
- gpios = <&gpioe 6 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_EC_INT_L";
- };
- dp_aux_path_sel: dp_aux_path_sel {
- gpios = <&gpiog 0 GPIO_OUTPUT_HIGH>;
- };
- ec_ap_dp_hpd_odl: ec_ap_dp_hpd_odl {
- gpios = <&gpioj 0 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- };
- en_pp5000_usb_a0_vbus: en_pp5000_usb_a0_vbus {
- gpios = <&gpiob 7 GPIO_OUTPUT_LOW>;
- };
- usb_c0_frs_en: usb_c0_frs_en {
- gpios = <&gpiof 0 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C0_FRS_EN";
- };
- ec_batt_pres_odl: ec_batt_pres_odl {
- gpios = <&gpioc 0 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- en_ec_id_odl: en_ec_id_odl {
- gpios = <&gpioh 5 GPIO_ODR_HIGH>;
- };
- entering_rw: entering_rw {
- gpios = <&gpioc 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_en_5v_usm: en_5v_usm {
- gpios = <&gpiog 3 GPIO_OUTPUT_LOW>;
- };
- usb_a0_fault_odl: usb_a0_fault_odl {
- gpios = <&gpioj 6 GPIO_INPUT>;
- };
- gpio_ec_x_gpio1: ec_x_gpio1 {
- gpios = <&gpioh 4 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_x_gpio3: ec_x_gpio3 {
- gpios = <&gpioj 1 GPIO_OUTPUT_LOW>;
- };
- gpio_hdmi_prsnt_odl: hdmi_prsnt_odl {
- gpios = <&gpioj 3 GPIO_INPUT>;
- };
- gpio_packet_mode_en: packet_mode_en {
- gpios = <&gpiod 4 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioc 4 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <&int_ac_present
- &int_power_button
- &int_lid_open>;
- };
-
- unused-pins {
- compatible = "unused-gpios";
-
- unused-gpios =
- /* pg_pp5000_z2_od */
- <&gpiod 2 GPIO_INPUT>,
- /* pg_mt6315_proc_b_odl */
- <&gpioe 1 GPIO_INPUT>,
- /* ec_pen_chg_dis_odl */
- <&gpioh 3 GPIO_ODR_HIGH>,
- /* unnamed nc pins */
- <&gpioa 3 GPIO_INPUT_PULL_DOWN>,
- <&gpioa 6 GPIO_INPUT_PULL_DOWN>,
- <&gpioa 7 GPIO_INPUT_PULL_DOWN>,
- <&gpiod 7 GPIO_INPUT_PULL_DOWN>,
- <&gpioh 0 GPIO_INPUT_PULL_DOWN>,
- <&gpioh 6 GPIO_INPUT_PULL_DOWN>,
- <&gpioi 3 GPIO_INPUT_PULL_DOWN>,
- <&gpioi 6 GPIO_INPUT_PULL_DOWN>,
- <&gpiom 6 (GPIO_INPUT_PULL_DOWN | GPIO_VOLTAGE_1P8)>,
- /* spi_clk_gpg6 */
- <&gpiog 6 GPIO_INPUT_PULL_UP>,
- /* spi_mosi_gpg4 */
- <&gpiog 4 GPIO_OUTPUT_LOW>,
- /* spi_miso_gpg5 */
- <&gpiog 5 GPIO_OUTPUT_LOW>,
- /* spi_cs_gpg7 */
- <&gpiog 7 GPIO_OUTPUT_LOW>;
- };
-};
-
-&pinctrl {
- /* I2C property setting */
- i2c0_clk_gpb3_default: i2c0_clk_gpb3_default {
- gpio-voltage = "1v8";
- };
- i2c0_data_gpb4_default: i2c0_data_gpb4_default {
- gpio-voltage = "1v8";
- };
- i2c3_clk_gpf2_default: i2c3_clk_gpf2_default {
- gpio-voltage = "1v8";
- };
- i2c3_data_gpf3_default: i2c3_data_gpf3_default {
- gpio-voltage = "1v8";
- };
- /* SHI property setting */
- shi_mosi_gpm0_default: shi_mosi_gpm0_default {
- gpio-voltage = "1v8";
- };
- shi_miso_gpm1_default: shi_miso_gpm1_default {
- gpio-voltage = "1v8";
- };
- shi_clk_gpm4_default: shi_clk_gpm4_default {
- gpio-voltage = "1v8";
- };
- shi_cs_gpm5_default: shi_cs_gpm5_default {
- gpio-voltage = "1v8";
- };
-};
diff --git a/zephyr/program/corsola/i2c_krabby.dtsi b/zephyr/program/corsola/i2c_krabby.dtsi
deleted file mode 100644
index 102ec4947c..0000000000
--- a/zephyr/program/corsola/i2c_krabby.dtsi
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ite_i2c.dtsi"
-
-&i2c0 {
- charger_bc12_port1: rt9490@53 {
- compatible = "richtek,rt9490";
- status = "okay";
- reg = <0x53>;
- irq = <&int_usb_c1_bc12_charger>;
- };
-};
-
-&i2c4 {
- tusb1064_mux_1: tusb1064-mux-1@44 {
- compatible = "ti,tusb1064";
- reg = <0x44>;
- board-init = "tusb1064_mux_1_board_init";
- };
-};
diff --git a/zephyr/program/corsola/i2c_magikarp.dtsi b/zephyr/program/corsola/i2c_magikarp.dtsi
deleted file mode 100644
index 0dfd317b88..0000000000
--- a/zephyr/program/corsola/i2c_magikarp.dtsi
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ite_i2c.dtsi"
-
-&i2c0 {
- charger_bc12_port1: rt9490@53 {
- compatible = "richtek,rt9490";
- status = "okay";
- reg = <0x53>;
- irq = <&int_usb_c1_bc12_charger>;
- };
-};
-
-&i2c2 {
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c0_bc12>;
- };
- ppc_port0: syv682x@40 {
- compatible = "silergy,syv682x";
- status = "okay";
- reg = <0x40>;
- frs_en_gpio = <&usb_c0_frs_en>;
- };
-};
-
-&i2c4 {
- ps8743_mux_1: ps8743-mux-1@10 {
- compatible = "parade,ps8743";
- reg = <0x10>;
- };
-};
diff --git a/zephyr/program/corsola/i2c_tentacruel.dtsi b/zephyr/program/corsola/i2c_tentacruel.dtsi
deleted file mode 100644
index 05203103d5..0000000000
--- a/zephyr/program/corsola/i2c_tentacruel.dtsi
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ite_i2c.dtsi"
-
-&i2c0 {
- charger_bc12_port1: rt9490@53 {
- compatible = "richtek,rt9490";
- status = "okay";
- reg = <0x53>;
- irq = <&int_usb_c1_bc12_charger>;
- thermistor = <&thermistor_rt9490>;
- };
-};
-
-&i2c2 {
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c0_bc12>;
- };
- ppc_port0: syv682x@40 {
- compatible = "silergy,syv682x";
- status = "okay";
- reg = <0x40>;
- frs_en_gpio = <&usb_c0_frs_en>;
- };
-};
-
-&i2c4 {
- ps8743_mux_1: ps8743-mux-1@10 {
- compatible = "parade,ps8743";
- reg = <0x10>;
- board-init = "ps8743_eq_c1_setting";
- };
-};
diff --git a/zephyr/program/corsola/include/baseboard_usbc_config.h b/zephyr/program/corsola/include/baseboard_usbc_config.h
deleted file mode 100644
index a80aa10446..0000000000
--- a/zephyr/program/corsola/include/baseboard_usbc_config.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Corsola daughter board detection */
-
-#ifndef __CROS_EC_BASEBOARD_USBC_CONFIG_H
-#define __CROS_EC_BASEBOARD_USBC_CONFIG_H
-
-#include "gpio.h"
-
-#ifdef CONFIG_PLATFORM_EC_USB_PD_TCPM_RT1718S
-#define GPIO_EN_USB_C1_SINK RT1718S_GPIO1
-#define GPIO_EN_USB_C1_SOURCE RT1718S_GPIO2
-#define GPIO_EN_USB_C1_FRS RT1718S_GPIO3
-#endif
-
-void ppc_interrupt(enum gpio_signal signal);
-void ccd_interrupt(enum gpio_signal signal);
-void hdmi_hpd_interrupt(enum gpio_signal signal);
-void ps185_hdmi_hpd_mux_set(void);
-int corsola_is_dp_muxable(int port);
-
-/* USB-A ports */
-enum usba_port { USBA_PORT_A0 = 0, USBA_PORT_COUNT };
-
-/* USB-C ports */
-enum usbc_port { USBC_PORT_C0 = 0, USBC_PORT_C1, USBC_PORT_COUNT };
-BUILD_ASSERT(USBC_PORT_COUNT == CONFIG_USB_PD_PORT_MAX_COUNT);
-
-/**
- * Is the port fine to be muxed its DisplayPort lines?
- *
- * Only one port can be muxed to DisplayPort at a time.
- *
- * @param port Port number of TCPC.
- * @return 1 is fine; 0 is bad as other port is already muxed;
- */
-int corsola_is_dp_muxable(int port);
-
-#endif /* __CROS_EC_BASEBOARD_USBC_CONFIG_H */
diff --git a/zephyr/program/corsola/include/variant_db_detection.h b/zephyr/program/corsola/include/variant_db_detection.h
deleted file mode 100644
index e98ba3067d..0000000000
--- a/zephyr/program/corsola/include/variant_db_detection.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Corsola daughter board detection */
-
-#ifndef __CROS_EC_CORSOLA_DB_DETECTION_H
-#define __CROS_EC_CORSOLA_DB_DETECTION_H
-
-enum corsola_db_type {
- CORSOLA_DB_UNINIT = -1,
- CORSOLA_DB_NONE,
- CORSOLA_DB_TYPEC,
- CORSOLA_DB_HDMI,
- CORSOLA_DB_COUNT,
-};
-
-#ifdef CONFIG_VARIANT_CORSOLA_DB_DETECTION
-/*
- * Get the connected daughterboard type.
- *
- * @return The daughterboard type.
- */
-enum corsola_db_type corsola_get_db_type(void);
-#else
-inline enum corsola_db_type corsola_get_db_type(void)
-{
- return CORSOLA_DB_NONE;
-};
-#endif /* CONFIG_VARIANT_CORSOLA_DB_DETECTION */
-
-/* return the adjusted port count for board overridden usbc/charger functions.
- */
-uint8_t board_get_adjusted_usb_pd_port_count(void);
-
-#endif /* __CROS_EC_CORSOLA_DB_DETECTION_H */
diff --git a/zephyr/program/corsola/interrupts_magikarp.dtsi b/zephyr/program/corsola/interrupts_magikarp.dtsi
deleted file mode 100644
index 4f4e0ba100..0000000000
--- a/zephyr/program/corsola/interrupts_magikarp.dtsi
+++ /dev/null
@@ -1,115 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- int-wp = &int_wp;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&power_button_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_volume_up: volume_up {
- irq-pin = <&volume_up_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_volume_down: volume_down {
- irq-pin = <&volume_down_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_warm_rst: warm_rst {
- irq-pin = <&ap_ec_warm_rst_req>;
- flags = <GPIO_INT_EDGE_RISING>;
- handler = "chipset_reset_request_interrupt";
- };
- int_ap_in_sleep: ap_in_sleep {
- irq-pin = <&ap_in_sleep_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_ap_in_rst: ap_in_rst {
- irq-pin = <&ap_sysrst_odl_r>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_ap_wdtrst: ap_wdtrst {
- irq-pin = <&ap_ec_wdtrst_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "chipset_watchdog_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_base_imu: base_imu {
- irq-pin = <&base_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "motion_interrupt";
- };
- int_lid_imu: lid_imu {
- irq-pin = <&lid_accel_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "lis2dw12_interrupt";
- };
- int_ac_present: ac_present {
- irq-pin = <&ac_present>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_usba: usba {
- irq-pin = <&gpio_ap_xhci_init_done>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "usb_a0_interrupt";
- };
- int_wp: wp {
- irq-pin = <&ec_flash_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_spi0_cs: spi0_cs {
- irq-pin = <&spi0_cs>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "spi_event";
- };
- int_x_ec_gpio2: x_ec_gpio2 {
- irq-pin = <&gpio_x_ec_gpio2>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "x_ec_interrupt";
- };
- int_usb_c0_bc12: usb_c0_bc12 {
- irq-pin = <&usb_c0_bc12_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bc12_interrupt";
- };
- int_usb_c0_ppc: usb_c0_ppc {
- irq-pin = <&usb_c0_ppc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c1_bc12_charger: usb_c1_bc12_charger {
- irq-pin = <&usb_c1_bc12_charger_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "rt9490_bc12_dt_interrupt";
- };
- int_ccd_mode_odl: ccd-mode-odl {
- irq-pin = <&gpio_ccd_mode_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ccd_interrupt";
- };
- };
-};
diff --git a/zephyr/program/corsola/interrupts_tentacruel.dtsi b/zephyr/program/corsola/interrupts_tentacruel.dtsi
deleted file mode 100644
index 11229daf36..0000000000
--- a/zephyr/program/corsola/interrupts_tentacruel.dtsi
+++ /dev/null
@@ -1,115 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- int-wp = &int_wp;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&power_button_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_volume_up: volume_up {
- irq-pin = <&volume_up_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_volume_down: volume_down {
- irq-pin = <&volume_down_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_warm_rst: warm_rst {
- irq-pin = <&ap_ec_warm_rst_req>;
- flags = <GPIO_INT_EDGE_RISING>;
- handler = "chipset_reset_request_interrupt";
- };
- int_ap_in_sleep: ap_in_sleep {
- irq-pin = <&ap_in_sleep_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_ap_in_rst: ap_in_rst {
- irq-pin = <&ap_sysrst_odl_r>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_ap_wdtrst: ap_wdtrst {
- irq-pin = <&ap_ec_wdtrst_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "chipset_watchdog_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_base_imu: base_imu {
- irq-pin = <&base_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "motion_interrupt";
- };
- int_lid_imu: lid_imu {
- irq-pin = <&lid_accel_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "lis2dw12_interrupt";
- };
- int_ac_present: ac_present {
- irq-pin = <&ac_present>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_usba: usba {
- irq-pin = <&gpio_ap_xhci_init_done>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "usb_a0_interrupt";
- };
- int_wp: wp {
- irq-pin = <&ec_flash_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_spi0_cs: spi0_cs {
- irq-pin = <&spi0_cs>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "spi_event";
- };
- int_x_ec_gpio2: x_ec_gpio2 {
- irq-pin = <&gpio_x_ec_gpio2>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "x_ec_interrupt";
- };
- int_usb_c0_ppc: usb_c0_ppc {
- irq-pin = <&usb_c0_ppc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c0_bc12: usb_c0_bc12 {
- irq-pin = <&usb_c0_bc12_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bc12_interrupt";
- };
- int_usb_c1_bc12_charger: usb_c1_bc12_charger {
- irq-pin = <&usb_c1_bc12_charger_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "rt9490_bc12_dt_interrupt";
- };
- int_ccd_mode_odl: ccd-mode-odl {
- irq-pin = <&gpio_ccd_mode_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ccd_interrupt";
- };
- };
-};
diff --git a/zephyr/program/corsola/ite_adc.dtsi b/zephyr/program/corsola/ite_adc.dtsi
deleted file mode 100644
index be65e9eea7..0000000000
--- a/zephyr/program/corsola/ite_adc.dtsi
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_vbus_c0 {
- enum-name = "ADC_VBUS_C0";
- io-channels = <&adc0 0>;
- mul = <10>;
- };
- adc_board_id0 {
- enum-name = "ADC_BOARD_ID_0";
- io-channels = <&adc0 1>;
- };
- adc_board_id1 {
- enum-name = "ADC_BOARD_ID_1";
- io-channels = <&adc0 2>;
- };
- adc_vbus_c1 {
- enum-name = "ADC_VBUS_C1";
- io-channels = <&adc0 7>;
- mul = <10>;
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_ch0_gpi0_default
- &adc0_ch1_gpi1_default
- &adc0_ch2_gpi2_default
- &adc0_ch7_gpi7_default>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/corsola/ite_gpio.dtsi b/zephyr/program/corsola/ite_gpio.dtsi
deleted file mode 100644
index 5f06609f43..0000000000
--- a/zephyr/program/corsola/ite_gpio.dtsi
+++ /dev/null
@@ -1,231 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/gpio_defines.h>
-
-/ {
- aliases {
- gpio-cbi-wp = &gpio_ec_cbi_wp;
- gpio-wp = &ec_flash_wp_odl;
- gpio-en-hdmi-pwr = &gpio_ec_x_gpio1;
- gpio-usb-c1-frs-en = &gpio_ec_x_gpio1;
- gpio-usb-c1-ppc-int-odl = &gpio_x_ec_gpio2;
- gpio-ps185-ec-dp-hpd = &gpio_x_ec_gpio2;
- gpio-usb-c1-dp-in-hpd = &gpio_ec_x_gpio3;
- gpio-ps185-pwrdn-odl = &gpio_ec_x_gpio3;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- power_button_l: power_button_l {
- gpios = <&gpioe 4 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- lid_open: lid_open {
- gpios = <&gpioe 2 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- tablet_mode_l: tablet_mode_l {
- gpios = <&gpioj 7 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- ap_ec_warm_rst_req: ap_ec_warm_rst_req {
- gpios = <&gpiod 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_HIGH)>;
- enum-name = "GPIO_AP_EC_WARM_RST_REQ";
- };
- ap_in_sleep_l: ap_in_sleep_l {
- gpios = <&gpiob 6 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_AP_IN_SLEEP_L";
- };
- base_imu_int_l: base_imu_int_l {
- gpios = <&gpiom 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- lid_accel_int_l: lid_accel_int_l {
- gpios = <&gpiom 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- volume_down_l: volume_down_l {
- gpios = <&gpiod 5 GPIO_INPUT>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- volume_up_l: volume_up_l {
- gpios = <&gpiod 6 GPIO_INPUT>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_ap_xhci_init_done: ap_xhci_init_done {
- gpios = <&gpioj 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ac_present: ac_present {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpioc 3 GPIO_OUTPUT_LOW>;
- };
- ec_flash_wp_odl: ec_flash_wp_odl {
- gpios = <&gpioi 4 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_LOW)>;
- };
- spi0_cs: spi0_cs {
- gpios = <&gpiom 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_x_ec_gpio2: x_ec_gpio2 {
- gpios = <&gpiob 2 GPIO_INPUT>;
- };
- usb_c0_ppc_bc12_int_odl: usb_c0_ppc_bc12_int_odl {
- gpios = <&gpiod 1 GPIO_INPUT>;
- };
- usb_c1_bc12_charger_int_odl: usb_c1_bc12_charger_int_odl {
- gpios = <&gpioj 4 GPIO_INPUT>;
- };
- ec_pmic_en_odl: ec_pmic_en_odl {
- gpios = <&gpiod 0 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_EC_PMIC_EN_ODL";
- };
- en_pp5000_z2: en_pp5000_z2 {
- gpios = <&gpioc 6 GPIO_OUTPUT_HIGH>;
- };
- gpio_en_ulp: en_ulp {
- gpios = <&gpioe 3 GPIO_OUTPUT_LOW>;
- };
- sys_rst_odl: sys_rst_odl {
- gpios = <&gpiog 1 GPIO_ODR_LOW>;
- enum-name = "GPIO_SYS_RST_ODL";
- };
- gpio_ec_bl_en_od: ec_bl_en_od {
- gpios = <&gpiob 5 (GPIO_ODR_LOW | GPIO_VOLTAGE_1P8)>;
- };
- ap_sysrst_odl_r: ap_ec_sysrst_odl {
- gpios = <&gpioj 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_AP_EC_SYSRST_ODL";
- };
- ap_ec_wdtrst_l: ap_ec_wdtrst_l {
- gpios = <&gpioc 7 (GPIO_INPUT | GPIO_VOLTAGE_1P8 |
- GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_AP_EC_WDTRST_L";
- };
- ec_int_l: ec_int_l {
- gpios = <&gpioe 6 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_EC_INT_L";
- };
- dp_aux_path_sel: dp_aux_path_sel {
- gpios = <&gpiog 0 GPIO_OUTPUT_HIGH>;
- };
- ec_ap_dp_hpd_odl: ec_ap_dp_hpd_odl {
- gpios = <&gpioj 0 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- };
- en_pp5000_usb_a0_vbus: en_pp5000_usb_a0_vbus {
- gpios = <&gpiob 7 GPIO_OUTPUT_LOW>;
- };
- usb_c0_ppc_frsinfo: usb_c0_ppc_frsinfo {
- gpios = <&gpiof 0 GPIO_INPUT>;
- };
- ec_batt_pres_odl: ec_batt_pres_odl {
- gpios = <&gpioc 0 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- en_ec_id_odl: en_ec_id_odl {
- gpios = <&gpioh 5 GPIO_ODR_HIGH>;
- };
- entering_rw: entering_rw {
- gpios = <&gpioc 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_en_5v_usm: en_5v_usm {
- gpios = <&gpiog 3 GPIO_OUTPUT_LOW>;
- };
- usb_a0_fault_odl: usb_a0_fault_odl {
- gpios = <&gpioj 6 GPIO_INPUT>;
- };
- gpio_ec_x_gpio1: ec_x_gpio1 {
- gpios = <&gpioh 4 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_x_gpio3: ec_x_gpio3 {
- gpios = <&gpioj 1 GPIO_OUTPUT_LOW>;
- };
- gpio_hdmi_prsnt_odl: hdmi_prsnt_odl {
- gpios = <&gpioj 3 GPIO_INPUT>;
- };
- gpio_packet_mode_en: packet_mode_en {
- gpios = <&gpiod 4 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioc 4 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <&int_ac_present
- &int_power_button
- &int_lid_open>;
- };
-
- unused-pins {
- compatible = "unused-gpios";
-
- unused-gpios =
- /* pg_pp5000_z2_od */
- <&gpiod 2 GPIO_INPUT>,
- /* pg_mt6315_proc_b_odl */
- <&gpioe 1 GPIO_INPUT>,
- /* ec_pen_chg_dis_odl */
- <&gpioh 3 GPIO_ODR_HIGH>,
- /* unnamed nc pins */
- <&gpioa 3 GPIO_INPUT_PULL_DOWN>,
- <&gpioa 6 GPIO_INPUT_PULL_DOWN>,
- <&gpioa 7 GPIO_INPUT_PULL_DOWN>,
- <&gpiod 7 GPIO_INPUT_PULL_DOWN>,
- <&gpiof 1 GPIO_INPUT_PULL_DOWN>,
- <&gpioh 0 GPIO_INPUT_PULL_DOWN>,
- <&gpioh 6 GPIO_INPUT_PULL_DOWN>,
- <&gpioi 3 GPIO_INPUT_PULL_DOWN>,
- <&gpioi 5 GPIO_INPUT_PULL_DOWN>,
- <&gpioi 6 GPIO_INPUT_PULL_DOWN>,
- <&gpiom 6 (GPIO_INPUT_PULL_DOWN | GPIO_VOLTAGE_1P8)>,
- /* spi_clk_gpg6 */
- <&gpiog 6 GPIO_INPUT_PULL_UP>,
- /* spi_mosi_gpg4 */
- <&gpiog 4 GPIO_OUTPUT_LOW>,
- /* spi_miso_gpg5 */
- <&gpiog 5 GPIO_OUTPUT_LOW>,
- /* spi_cs_gpg7 */
- <&gpiog 7 GPIO_OUTPUT_LOW>;
- };
-};
-
-&pinctrl {
- /* I2C property setting */
- i2c0_clk_gpb3_default: i2c0_clk_gpb3_default {
- gpio-voltage = "1v8";
- };
- i2c0_data_gpb4_default: i2c0_data_gpb4_default {
- gpio-voltage = "1v8";
- };
- i2c3_clk_gpf2_default: i2c3_clk_gpf2_default {
- gpio-voltage = "1v8";
- };
- i2c3_data_gpf3_default: i2c3_data_gpf3_default {
- gpio-voltage = "1v8";
- };
- /* SHI property setting */
- shi_mosi_gpm0_default: shi_mosi_gpm0_default {
- gpio-voltage = "1v8";
- };
- shi_miso_gpm1_default: shi_miso_gpm1_default {
- gpio-voltage = "1v8";
- };
- shi_clk_gpm4_default: shi_clk_gpm4_default {
- gpio-voltage = "1v8";
- };
- shi_cs_gpm5_default: shi_cs_gpm5_default {
- gpio-voltage = "1v8";
- };
-};
diff --git a/zephyr/program/corsola/ite_i2c.dtsi b/zephyr/program/corsola/ite_i2c.dtsi
deleted file mode 100644
index ba8e31423a..0000000000
--- a/zephyr/program/corsola/ite_i2c.dtsi
+++ /dev/null
@@ -1,131 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- battery {
- i2c-port = <&i2c1>;
- remote-port = <1>;
- enum-names = "I2C_PORT_BATTERY",
- "I2C_PORT_VIRTUAL_BATTERY";
- };
- i2c_charger: charger {
- i2c-port = <&i2c0>;
- enum-names = "I2C_PORT_CHARGER",
- "I2C_PORT_EEPROM";
- };
- i2c_sensor: sensor {
- i2c-port = <&i2c3>;
- enum-names = "I2C_PORT_SENSOR";
- };
- i2c_usb_c0: usb-c0 {
- i2c-port = <&i2c2>;
- enum-names = "I2C_PORT_USB_C0",
- "I2C_PORT_USB_MUX0";
- };
- i2c_usb_c1: usb-c1 {
- i2c-port = <&i2c4>;
- enum-names = "I2C_PORT_USB_C1",
- "I2C_PORT_USB_MUX1";
- };
- };
-
-};
-
-&pinctrl {
- i2c3_clk_gpf2_sleep: i2c3_clk_gpf2_sleep {
- pinmuxs = <&pinctrlf 2 IT8XXX2_ALT_DEFAULT>;
- };
- i2c3_data_gpf3_sleep: i2c3_data_gpf3_sleep {
- pinmuxs = <&pinctrlf 3 IT8XXX2_ALT_DEFAULT>;
- };
-};
-
-&i2c0 {
- /* EC_I2C_PWR_CBI */
- label = "I2C_PWR_CBI";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c0_clk_gpb3_default
- &i2c0_data_gpb4_default>;
- pinctrl-names = "default";
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-};
-
-&i2c1 {
- /* EC_I2C_BATTERY */
- label = "I2C_BATTERY";
- status = "okay";
- clock-frequency = <50000>;
- pinctrl-0 = <&i2c1_clk_gpc1_default
- &i2c1_data_gpc2_default>;
- pinctrl-names = "default";
- fifo-enable;
-};
-
-&i2c2 {
- /* EC_I2C_USB_C0 */
- label = "I2C_USB_C0";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c2_clk_gpf6_default
- &i2c2_data_gpf7_default>;
- pinctrl-names = "default";
- /delete-property/ fifo-enable;
-
- bc12_ppc_port0: rt1739@70 {
- compatible = "richtek,rt1739";
- status = "okay";
- reg = <0x70>;
- };
-
- it5205_mux_0: it5205-mux-0@48 {
- compatible = "ite,it5205";
- reg = <0x48>;
- };
-};
-
-&i2c3 {
- /* EC_I2C_SENSOR */
- label = "I2C_SENSOR";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- scl-gpios = <&gpiof 2 0>;
- sda-gpios = <&gpiof 3 0>;
- pinctrl-0 = <&i2c3_clk_gpf2_default
- &i2c3_data_gpf3_default>;
- pinctrl-1 = <&i2c3_clk_gpf2_sleep
- &i2c3_data_gpf3_sleep>;
- pinctrl-names = "default", "sleep";
- prescale-scl-low = <1>;
-};
-
-&i2c4 {
- /* EC_I2C_USB_C1 */
- label = "I2C_USB_C1";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c4_clk_gpe0_default
- &i2c4_data_gpe7_default>;
- pinctrl-names = "default";
- prescale-scl-low = <1>;
-
- ppc_port1: syv682x@40 {
- compatible = "silergy,syv682x";
- status = "okay";
- reg = <0x40>;
- frs_en_gpio = <&gpio_ec_x_gpio1>;
- };
-};
diff --git a/zephyr/program/corsola/ite_interrupts.dtsi b/zephyr/program/corsola/ite_interrupts.dtsi
deleted file mode 100644
index 3caf4660ae..0000000000
--- a/zephyr/program/corsola/ite_interrupts.dtsi
+++ /dev/null
@@ -1,110 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- int-wp = &int_wp;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&power_button_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_volume_up: volume_up {
- irq-pin = <&volume_up_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_volume_down: volume_down {
- irq-pin = <&volume_down_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_warm_rst: warm_rst {
- irq-pin = <&ap_ec_warm_rst_req>;
- flags = <GPIO_INT_EDGE_RISING>;
- handler = "chipset_reset_request_interrupt";
- };
- int_ap_in_sleep: ap_in_sleep {
- irq-pin = <&ap_in_sleep_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_ap_in_rst: ap_in_rst {
- irq-pin = <&ap_sysrst_odl_r>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_ap_wdtrst: ap_wdtrst {
- irq-pin = <&ap_ec_wdtrst_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "chipset_watchdog_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_base_imu: base_imu {
- irq-pin = <&base_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "icm42607_interrupt";
- };
- int_lid_imu: lid_imu {
- irq-pin = <&lid_accel_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "lis2dw12_interrupt";
- };
- int_ac_present: ac_present {
- irq-pin = <&ac_present>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_usba: usba {
- irq-pin = <&gpio_ap_xhci_init_done>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "usb_a0_interrupt";
- };
- int_wp: wp {
- irq-pin = <&ec_flash_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_spi0_cs: spi0_cs {
- irq-pin = <&spi0_cs>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "spi_event";
- };
- int_x_ec_gpio2: x_ec_gpio2 {
- irq-pin = <&gpio_x_ec_gpio2>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "x_ec_interrupt";
- };
- int_usb_c0_ppc_bc12: usb_c0_ppc_bc12 {
- irq-pin = <&usb_c0_ppc_bc12_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "c0_bc12_interrupt";
- };
- int_usb_c1_bc12_charger: usb_c1_bc12_charger {
- irq-pin = <&usb_c1_bc12_charger_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "rt9490_bc12_dt_interrupt";
- };
- int_ccd_mode_odl: ccd-mode-odl {
- irq-pin = <&gpio_ccd_mode_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ccd_interrupt";
- };
- };
-};
diff --git a/zephyr/program/corsola/ite_keyboard.dtsi b/zephyr/program/corsola/ite_keyboard.dtsi
deleted file mode 100644
index 8d2a345ff0..0000000000
--- a/zephyr/program/corsola/ite_keyboard.dtsi
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- cros-keyscan {
- compatible = "cros-ec,keyscan";
-
- scan-period = <10000>;
-
- actual-key-mask = <
- 0x1c /* C0 */
- 0xff /* C1 */
- 0xff /* C2 */
- 0xff /* C3 */
- 0xff /* C4 */
- 0xf5 /* C5 */
- 0xff /* C6 */
- 0xa4 /* C7 */
- 0xff /* C8 */
- 0xfe /* C9 */
- 0x55 /* C10 */
- 0xfa /* C11 */
- 0xca /* C12 */
- >;
- };
-};
diff --git a/zephyr/program/corsola/ite_motionsense.dtsi b/zephyr/program/corsola/ite_motionsense.dtsi
deleted file mode 100644
index 1c7d5b2df4..0000000000
--- a/zephyr/program/corsola/ite_motionsense.dtsi
+++ /dev/null
@@ -1,146 +0,0 @@
-/* Copyright 2020 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- icm42607-int = &base_accel;
- lis2dw12-int = &lid_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- base_mutex: icm42607-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <1 0 0
- 0 1 0
- 0 0 1>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <1 0 0
- 0 1 0
- 0 0 1>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- icm42607_data: icm42607-drv-data {
- compatible = "cros-ec,drvdata-icm42607";
- status = "okay";
- };
-
- lis2dw12_data: lis2dw12-drv-data {
- compatible = "cros-ec,drvdata-lis2dw12";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,lis2dw12";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&lis2dw12_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,icm42607-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&icm42607_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_gyro: base-gyro {
- compatible = "cros-ec,icm42607-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&icm42607_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_base_imu &int_lid_imu>;
- };
-};
diff --git a/zephyr/program/corsola/ite_program.conf b/zephyr/program/corsola/ite_program.conf
deleted file mode 100644
index 55aecebb90..0000000000
--- a/zephyr/program/corsola/ite_program.conf
+++ /dev/null
@@ -1,85 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Bring up options
-CONFIG_SHELL_HISTORY_BUFFER=256
-CONFIG_PLATFORM_EC_SYSTEM_UNLOCKED=y
-CONFIG_PLATFORM_EC_BRINGUP=y
-
-# Power Sequencing
-CONFIG_PLATFORM_EC_CHIPSET_RESET_HOOK=y
-
-# Lid Switch
-CONFIG_PLATFORM_EC_LID_SWITCH=y
-
-# Charger
-CONFIG_PLATFORM_EC_CHARGE_RAMP_HW=y
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC=y
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC_CHARGER=y
-CONFIG_PLATFORM_EC_CHARGER_MAINTAIN_VBAT=y
-CONFIG_PLATFORM_EC_CHARGER_PSYS=y
-CONFIG_PLATFORM_EC_CHARGER_PSYS_READ=y
-# BOARD_RS2
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR=10
-# BOARD_RS1
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR_AC=20
-CONFIG_PLATFORM_EC_CONSOLE_CMD_CHARGER_DUMP=y
-
-# Host Commands
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCELS=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCEL_INFO=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_CHARGER_ADC_AMON_BMON=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_SYSINFO=y
-CONFIG_PLATFORM_EC_HOST_COMMAND_STATUS=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_DT=y
-
-# Sensors
-CONFIG_PLATFORM_EC_MOTIONSENSE=y
-CONFIG_PLATFORM_EC_ACCEL_FIFO=y
-CONFIG_PLATFORM_EC_GMR_TABLET_MODE=y
-CONFIG_PLATFORM_EC_LID_ANGLE=y
-CONFIG_PLATFORM_EC_LID_ANGLE_UPDATE=y
-CONFIG_PLATFORM_EC_SENSOR_TIGHT_TIMESTAMPS=y
-CONFIG_PLATFORM_EC_TABLET_MODE=y
-CONFIG_PLATFORM_EC_TABLET_MODE_SWITCH=y
-CONFIG_PLATFORM_EC_MAX_SENSOR_FREQ_MILLIHZ=100000
-
-# Sensor Drivers
-CONFIG_PLATFORM_EC_ACCEL_LIS2DW12=y
-CONFIG_PLATFORM_EC_ACCELGYRO_ICM42607=y
-CONFIG_PLATFORM_EC_ACCELGYRO_ICM_COMM_I2C=y
-
-# Tasks
-CONFIG_TASK_CHARGER_STACK_SIZE=1024
-CONFIG_TASK_CHIPSET_STACK_SIZE=1440
-CONFIG_TASK_MOTIONSENSE_STACK_SIZE=1024
-CONFIG_TASK_PD_STACK_SIZE=1280
-
-# USB-C
-CONFIG_PLATFORM_EC_BC12_SINGLE_DRIVER=n
-CONFIG_PLATFORM_EC_USBC_PPC_RT1739=y
-CONFIG_PLATFORM_EC_USBC_PPC_SYV682C=y
-CONFIG_PLATFORM_EC_USBC_PPC_SYV682X=y
-CONFIG_PLATFORM_EC_USB_MUX_IT5205=y
-CONFIG_PLATFORM_EC_USB_MUX_TUSB546=y
-CONFIG_PLATFORM_EC_USB_MUX_VIRTUAL=y
-CONFIG_PLATFORM_EC_USB_PD_DISCHARGE_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_FRS_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_LOGGING=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_DRIVER_IT8XXX2=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_ITE_ON_CHIP=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_TCPCI=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_MEASURE_ADC_EACH_PORT=y
-CONFIG_PLATFORM_EC_USB_PD_DUAL_ROLE_AUTO_TOGGLE=n
-CONFIG_PLATFORM_EC_CONFIG_USB_PD_3A_PORTS=0
-CONFIG_PLATFORM_EC_USB_PD_PULLUP=1
-
-CONFIG_PLATFORM_EC_SHA256_UNROLLED=y
-
-# TODO(b/180980668): bring these features up
-CONFIG_LTO=n
-CONFIG_PLATFORM_EC_BACKLIGHT_LID=n
diff --git a/zephyr/program/corsola/ite_usbc.dtsi b/zephyr/program/corsola/ite_usbc.dtsi
deleted file mode 100644
index f8881e437c..0000000000
--- a/zephyr/program/corsola/ite_usbc.dtsi
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_ppc_port0>;
- ppc = <&bc12_ppc_port0>;
- tcpc = <&usbpd0>;
- chg = <&charger_bc12_port1>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&it5205_mux_0 &virtual_mux_0>;
- };
- };
- port0-muxes {
- virtual_mux_0: virtual-mux-0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&charger_bc12_port1>;
- ppc = <&ppc_port1>;
- tcpc = <&usbpd1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&tusb1064_mux_1 &virtual_mux_1>;
- };
- usb_mux_chain_1_hdmi_db: usb-mux-chain-1-hdmi-db {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&virtual_mux_1>;
- };
- };
- port1-muxes {
- virtual_mux_1: virtual-mux-1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-};
-
-&usbpd0 {
- status = "okay";
-};
-
-&usbpd1 {
- status = "okay";
-};
diff --git a/zephyr/program/corsola/kingler/project.conf b/zephyr/program/corsola/kingler/project.conf
deleted file mode 100644
index cd4a735d71..0000000000
--- a/zephyr/program/corsola/kingler/project.conf
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Variant config
-CONFIG_BOARD_KINGLER=y
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI2=y
diff --git a/zephyr/program/corsola/kingler/project.overlay b/zephyr/program/corsola/kingler/project.overlay
deleted file mode 100644
index 93f06d94e2..0000000000
--- a/zephyr/program/corsola/kingler/project.overlay
+++ /dev/null
@@ -1,96 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Corsola program common DTS includes */
-
-#include "../common.dtsi"
-#include "../power_signal.dtsi"
-#include "../usba.dtsi"
-#include "../npcx_adc.dtsi"
-#include "../npcx_host_interface.dtsi"
-#include "../npcx_i2c.dtsi"
-#include "../npcx_interrupts.dtsi"
-#include "../npcx_gpio.dtsi"
-#include "../npcx_keyboard.dtsi"
-#include "../npcx_motionsense.dtsi"
-#include "../npcx_usbc.dtsi"
-#include "../npcx_default_gpio_pinctrl.dtsi"
-
-/* board override */
-/ {
- batteries {
- default_battery: smp_l20m3pg2 {
- compatible = "smp,l20m3pg2", "battery-smart";
- };
- lgc_l20l3pg2 {
- compatible = "lgc,l20l3pg2", "battery-smart";
- };
- };
-
- pwmleds {
- compatible = "pwm-leds";
- pwm_led0: pwm_led_0 {
- pwms = <&pwm0 0 PWM_HZ(100) PWM_POLARITY_INVERTED
- &pwm1 0 PWM_HZ(100) PWM_POLARITY_INVERTED
- &pwm2 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- };
-
- cros-pwmleds {
- compatible = "cros-ec,pwm-leds";
-
- leds = <&pwm_led0>;
-
- color-map-red = <100 0 0>;
- color-map-green = < 0 100 0>;
- color-map-amber = <100 20 0>;
-
- brightness-range = <255 255 0 0 0 255>;
-
- #address-cells = <1>;
- #size-cells = <0>;
-
- pwm_led_0@0 {
- reg = <0>;
- ec-led-name = "EC_LED_ID_BATTERY_LED";
- };
- };
-};
-
-/* Red LED */
-&pwm0_gpc3 {
- drive-open-drain;
-};
-
-&pwm0 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm0_gpc3>;
- pinctrl-names = "default";
-};
-
-/* Green LED */
-&pwm1_gpc2 {
- drive-open-drain;
-};
-
-&pwm1 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm1_gpc2>;
- pinctrl-names = "default";
-};
-
-/* Blue LED */
-&pwm2_gpc4 {
- drive-open-drain;
-};
-
-&pwm2 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/corsola/krabby/project.conf b/zephyr/program/corsola/krabby/project.conf
deleted file mode 100644
index c4cde05c16..0000000000
--- a/zephyr/program/corsola/krabby/project.conf
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Variant config
-CONFIG_BOARD_KRABBY=y
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI2=y
diff --git a/zephyr/program/corsola/krabby/project.overlay b/zephyr/program/corsola/krabby/project.overlay
deleted file mode 100644
index 6aafaf4379..0000000000
--- a/zephyr/program/corsola/krabby/project.overlay
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Corsola program common DTS includes */
-
-#include "../common.dtsi"
-#include "../power_signal.dtsi"
-#include "../usba.dtsi"
-#include "../ite_adc.dtsi"
-#include "../battery_krabby.dtsi"
-#include "../ite_gpio.dtsi"
-#include "../ite_keyboard.dtsi"
-#include "../i2c_krabby.dtsi"
-#include "../ite_interrupts.dtsi"
-#include "../led_krabby.dtsi"
-#include "../ite_motionsense.dtsi"
-#include "../ite_usbc.dtsi"
diff --git a/zephyr/program/corsola/led_it81202_base.dtsi b/zephyr/program/corsola/led_it81202_base.dtsi
deleted file mode 100644
index 582af0b092..0000000000
--- a/zephyr/program/corsola/led_it81202_base.dtsi
+++ /dev/null
@@ -1,174 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include <dt-bindings/battery.h>
-
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- bat-power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
-
- color-0 {
- led-color = <&color_battery_amber>;
- };
- };
-
- bat-power-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_battery_white>;
- };
- };
-
- bat-power-state-discharge {
- charge-state = "PWR_STATE_DISCHARGE";
-
- color-0 {
- led-color = <&color_battery_off>;
- };
- };
-
- bat-power-state-discharge-s0-bat-low {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
-
- color-0 {
- led-color = <&color_battery_amber>;
- period-ms = <1000>;
- };
-
- color-1 {
- led-color = <&color_battery_off>;
- period-ms = <3000>;
- };
- };
-
- bat-power-state-error {
- charge-state = "PWR_STATE_ERROR";
-
- color-0 {
- led-color = <&color_battery_amber>;
- period-ms = <1000>;
- };
-
- color-1 {
- led-color = <&color_battery_off>;
- period-ms = <1000>;
- };
- };
-
- pwr-power-state-off {
- color-0 {
- led-color = <&color_power_off>;
- };
- };
-
- pwr-power-state-on {
- chipset-state = "POWER_S0";
-
- color-0 {
- led-color = <&color_power_white>;
- };
- };
-
- pwr-power-state-s3 {
- chipset-state = "POWER_S3";
-
- color-0 {
- led-color = <&color_power_white>;
- period-ms = <1000>;
- };
-
- color-1 {
- led-color = <&color_power_off>;
- period-ms = <3000>;
- };
- };
- };
-
- pwmleds {
- compatible = "pwm-leds";
-
- /* NOTE: &pwm number needs same with channel number */
- led_power_white: ec_led1_odl {
- pwms = <&pwm0 PWM_CHANNEL_0 PWM_HZ(324) PWM_POLARITY_INVERTED>;
- };
- led_battery_amber: ec_led2_odl {
- pwms = <&pwm1 PWM_CHANNEL_1 PWM_HZ(324) PWM_POLARITY_INVERTED>;
- };
- led_battery_white: ec_led3_odl {
- pwms = <&pwm2 PWM_CHANNEL_2 PWM_HZ(324) PWM_POLARITY_INVERTED>;
- };
- };
-
- pwm-led-pins {
- compatible = "cros-ec,pwm-led-pins";
-
- color_power_off: color-power-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_POWER_LED";
- led-pwms = <&led_power_white>;
- led-values = <0>;
- };
-
- color_power_white: color-power-white {
- led-color = "LED_WHITE";
- br-color = "EC_LED_COLOR_WHITE";
- led-id = "EC_LED_ID_POWER_LED";
- led-pwms = <&led_power_white>;
- led-values = <100>;
- };
-
- color_battery_off: color-battery-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pwms = <&led_battery_amber &led_battery_white>;
- led-values = <0 0>;
- };
-
- color_battery_amber: color-battery-amber {
- led-color = "LED_AMBER";
- br-color = "EC_LED_COLOR_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pwms = <&led_battery_amber &led_battery_white>;
- led-values = <100 0>;
- };
-
- color_battery_white: color-battery-white {
- led-color = "LED_WHITE";
- br-color = "EC_LED_COLOR_WHITE";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pwms = <&led_battery_amber &led_battery_white>;
- led-values = <0 100>;
- };
- };
-};
-
-/* LED1 */
-&pwm0 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm0_gpa0_default>;
- pinctrl-names = "default";
-};
-
-/* LED2 */
-&pwm1 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm1_gpa1_default>;
- pinctrl-names = "default";
-};
-
-/* LED3 */
-&pwm2 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm2_gpa2_default>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/corsola/led_krabby.dtsi b/zephyr/program/corsola/led_krabby.dtsi
deleted file mode 100644
index b16bff3cac..0000000000
--- a/zephyr/program/corsola/led_krabby.dtsi
+++ /dev/null
@@ -1,5 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "led_it81202_base.dtsi"
diff --git a/zephyr/program/corsola/led_magikarp.dtsi b/zephyr/program/corsola/led_magikarp.dtsi
deleted file mode 100644
index f8b53a42ec..0000000000
--- a/zephyr/program/corsola/led_magikarp.dtsi
+++ /dev/null
@@ -1,137 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "led_it81202_base.dtsi"
-
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- /* Magikarp LED bat charge */
- bat-power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
- /* Battery percent range (>= Empty, <= 94%) */
- batt-lvl = <BATTERY_LEVEL_EMPTY
- (BATTERY_LEVEL_NEAR_FULL - 3)>;
- color-0 {
- led-color = <&color_battery_amber>;
- };
- };
-
- bat-power-state-charge-near-full {
- charge-state = "PWR_STATE_CHARGE";
- /* Battery percent range (>= 95%, <= Full) */
- batt-lvl = <(BATTERY_LEVEL_NEAR_FULL - 2)
- BATTERY_LEVEL_FULL>;
- color-0 {
- led-color = <&color_battery_white>;
- };
- };
-
- /* Magikarp LED bat discharge */
- bat-power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= 11%, <= Full) */
- batt-lvl = <(BATTERY_LEVEL_LOW + 1) BATTERY_LEVEL_FULL>;
-
- color-0 {
- led-color = <&color_battery_white>;
- };
- };
-
-
- bat-power-state-discharge-s0-bat-low {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= Empty, <= 10%) */
- batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
-
- color-0 {
- led-color = <&color_battery_amber>;
- period-ms = <1000>;
- };
-
- color-1 {
- led-color = <&color_battery_off>;
- period-ms = <3000>;
- };
- };
-
- bat-power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- color-0 {
- led-color = <&color_battery_white>;
- period-ms = <1000>;
- };
-
- color-1 {
- led-color = <&color_battery_off>;
- period-ms = <3000>;
- };
- };
-
- bat-power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
- color-0 {
- led-color = <&color_battery_off>;
- };
- };
-
- /* Magikarp LED bat error */
- bat-power-state-error {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S0";
-
- color-0 {
- led-color = <&color_battery_amber>;
- period-ms = <1000>;
- };
-
- color-1 {
- led-color = <&color_battery_off>;
- period-ms = <1000>;
- };
- };
-
- bat-power-state-error-s3 {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S3";
-
- color-0 {
- led-color = <&color_battery_white>;
- period-ms = <1000>;
- };
-
- color-1 {
- led-color = <&color_battery_off>;
- period-ms = <3000>;
- };
- };
-
- bat-power-state-error-s5 {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_battery_off>;
- };
- };
- };
-
- pwm-led-pins {
- compatible = "cros-ec,pwm-led-pins";
-
- /* Overwrite Power LED white to off */
- color_power_white: color-power-white {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_POWER_LED";
- led-pwms = <&led_power_white>;
- led-values = <0>;
- };
- };
-};
diff --git a/zephyr/program/corsola/led_tentacruel.dtsi b/zephyr/program/corsola/led_tentacruel.dtsi
deleted file mode 100644
index 05d49371af..0000000000
--- a/zephyr/program/corsola/led_tentacruel.dtsi
+++ /dev/null
@@ -1,119 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "led_it81202_base.dtsi"
-
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- /* Tentacruel LED bat charge */
- bat-power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
- /* Battery percent range (>= Empty, <= 94%) */
- batt-lvl = <BATTERY_LEVEL_EMPTY
- (BATTERY_LEVEL_NEAR_FULL - 3)>;
- color-0 {
- led-color = <&color_battery_amber>;
- };
- };
-
- bat-power-state-charge-near-full {
- charge-state = "PWR_STATE_CHARGE";
- /* Battery percent range (>= 95%, <= Full) */
- batt-lvl = <(BATTERY_LEVEL_NEAR_FULL - 2)
- BATTERY_LEVEL_FULL>;
- color-0 {
- led-color = <&color_battery_white>;
- };
- };
-
- /* Tentacruel LED bat discharge */
- bat-power-state-discharge {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= 11%, <= Full) */
- batt-lvl = <(BATTERY_LEVEL_LOW + 1) BATTERY_LEVEL_FULL>;
-
- color-0 {
- led-color = <&color_battery_white>;
- };
- };
-
- bat-power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- color-0 {
- led-color = <&color_battery_white>;
- period-ms = <1000>;
- };
-
- color-1 {
- led-color = <&color_battery_off>;
- period-ms = <3000>;
- };
- };
-
- bat-power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
- color-0 {
- led-color = <&color_battery_off>;
- };
- };
-
- /* Tentacruel LED bat error */
- bat-power-state-error {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S0";
-
- color-0 {
- led-color = <&color_battery_amber>;
- period-ms = <1000>;
- };
-
- color-1 {
- led-color = <&color_battery_off>;
- period-ms = <1000>;
- };
- };
-
- bat-power-state-error-s3 {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S3";
-
- color-0 {
- led-color = <&color_battery_white>;
- period-ms = <1000>;
- };
-
- color-1 {
- led-color = <&color_battery_off>;
- period-ms = <3000>;
- };
- };
-
- bat-power-state-error-s5 {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_battery_off>;
- };
- };
- };
-
- pwm-led-pins {
- compatible = "cros-ec,pwm-led-pins";
-
- /* Overwrite Power LED white to off */
- color_power_white: color-power-white {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_POWER_LED";
- led-pwms = <&led_power_white>;
- led-values = <0>;
- };
- };
-};
diff --git a/zephyr/program/corsola/magikarp/project.conf b/zephyr/program/corsola/magikarp/project.conf
deleted file mode 100644
index 2fd94d6fbe..0000000000
--- a/zephyr/program/corsola/magikarp/project.conf
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Variant config
-CONFIG_BOARD_MAGIKARP=y
-
-# USB-C
-CONFIG_PLATFORM_EC_USB_MUX_TUSB546=n
-CONFIG_PLATFORM_EC_USB_MUX_PS8743=y
-CONFIG_PLATFORM_EC_PD_MAX_POWER_MW=45000
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_REFRESH_ROW3=y
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI3=y
-
-# Sensor
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI3XX=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=y
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_REVIVE_DISCONNECT=y
diff --git a/zephyr/program/corsola/magikarp/project.overlay b/zephyr/program/corsola/magikarp/project.overlay
deleted file mode 100644
index f4ca85e375..0000000000
--- a/zephyr/program/corsola/magikarp/project.overlay
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Corsola program common DTS includes */
-
-#include "../common.dtsi"
-#include "../power_signal.dtsi"
-#include "../usba.dtsi"
-#include "../adc_magikarp.dtsi"
-#include "../battery_magikarp.dtsi"
-#include "../cbi_magikarp.dtsi"
-#include "../gpio_magikarp.dtsi"
-#include "../ite_keyboard.dtsi"
-#include "../i2c_magikarp.dtsi"
-#include "../interrupts_magikarp.dtsi"
-#include "../led_magikarp.dtsi"
-#include "../motionsense_magikarp.dtsi"
-#include "../usbc_magikarp.dtsi"
diff --git a/zephyr/program/corsola/motionsense_magikarp.dtsi b/zephyr/program/corsola/motionsense_magikarp.dtsi
deleted file mode 100644
index 92e73bd2c6..0000000000
--- a/zephyr/program/corsola/motionsense_magikarp.dtsi
+++ /dev/null
@@ -1,199 +0,0 @@
-/* Copyright 2020 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- icm42607-int = &base_accel;
- lis2dw12-int = &lid_accel;
- bmi3xx-int = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- base_mutex: icm42607-mutex {
- };
-
- base_mutex_bmi323: bmi323-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <1 0 0
- 0 1 0
- 0 0 (-1)>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <1 0 0
- 0 1 0
- 0 0 1>;
- };
-
- base_rot_ref_bmi: base-rotation-ref-bmi {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- icm42607_data: icm42607-drv-data {
- compatible = "cros-ec,drvdata-icm42607";
- status = "okay";
- };
-
- lis2dw12_data: lis2dw12-drv-data {
- compatible = "cros-ec,drvdata-lis2dw12";
- status = "okay";
- };
-
- bmi323_data: bmi323-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,lis2dw12";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&lis2dw12_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,icm42607-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&icm42607_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_gyro: base-gyro {
- compatible = "cros-ec,icm42607-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&icm42607_data>;
- };
- };
-
- motionsense-sensor-alt {
- alt_base_accel: alt-base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex_bmi323>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref_bmi>;
- drv-data = <&bmi323_data>;
- alternate-for = <&base_accel>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- alt_base_gyro: alt-base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex_bmi323>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref_bmi>;
- drv-data = <&bmi323_data>;
- alternate-for = <&base_gyro>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_base_imu &int_lid_imu>;
- };
-};
diff --git a/zephyr/program/corsola/motionsense_tentacruel.dtsi b/zephyr/program/corsola/motionsense_tentacruel.dtsi
deleted file mode 100644
index 68b2c023df..0000000000
--- a/zephyr/program/corsola/motionsense_tentacruel.dtsi
+++ /dev/null
@@ -1,199 +0,0 @@
-/* Copyright 2020 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- icm42607-int = &base_accel;
- lis2dw12-int = &lid_accel;
- bmi3xx-int = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- base_mutex: icm42607-mutex {
- };
-
- base_mutex_bmi323: bmi323-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <1 0 0
- 0 1 0
- 0 0 1>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <1 0 0
- 0 1 0
- 0 0 1>;
- };
-
- base_rot_ref_bmi: base-rotation-ref-bmi {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- icm42607_data: icm42607-drv-data {
- compatible = "cros-ec,drvdata-icm42607";
- status = "okay";
- };
-
- lis2dw12_data: lis2dw12-drv-data {
- compatible = "cros-ec,drvdata-lis2dw12";
- status = "okay";
- };
-
- bmi323_data: bmi323-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,lis2dw12";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&lis2dw12_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,icm42607-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&icm42607_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_gyro: base-gyro {
- compatible = "cros-ec,icm42607-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&icm42607_data>;
- };
- };
-
- motionsense-sensor-alt {
- alt_base_accel: alt-base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex_bmi323>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref_bmi>;
- drv-data = <&bmi323_data>;
- alternate-for = <&base_accel>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- alt_base_gyro: alt-base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex_bmi323>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref_bmi>;
- drv-data = <&bmi323_data>;
- alternate-for = <&base_gyro>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_base_imu &int_lid_imu>;
- };
-};
diff --git a/zephyr/program/corsola/npcx_adc.dtsi b/zephyr/program/corsola/npcx_adc.dtsi
deleted file mode 100644
index 7b69abe48a..0000000000
--- a/zephyr/program/corsola/npcx_adc.dtsi
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/*
- * Kingler and Steelix use the same dts, take care of this when modify it.
- */
-
-/ {
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_charger_pmon_r {
- enum-name = "ADC_PSYS";
- io-channels = <&adc0 0>;
- /*
- * ISL9238C PSYS output is 1.44 uA/W over 33K resistor.
- */
- mul = <21043>;
- };
- adc_ec_id0 {
- enum-name = "ADC_ID_0";
- io-channels = <&adc0 1>;
- };
- adc_ec_id1 {
- enum-name = "ADC_ID_1";
- io-channels = <&adc0 2>;
- };
- adc_charger_amon_r {
- enum-name = "ADC_AMON_BMON";
- io-channels = <&adc0 3>;
- mul = <1000>;
- div = <18>;
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_chan0_gp45
- &adc0_chan1_gp44
- &adc0_chan2_gp43
- &adc0_chan3_gp42>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/corsola/npcx_default_gpio_pinctrl.dtsi b/zephyr/program/corsola/npcx_default_gpio_pinctrl.dtsi
deleted file mode 100644
index 604658a145..0000000000
--- a/zephyr/program/corsola/npcx_default_gpio_pinctrl.dtsi
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Adds the &alt1_no_lpc_espi setting over the NPCX9 default setting. */
-&{/def-io-conf-list} {
- pinmux = <&alt0_gpio_no_spip
- &alt0_gpio_no_fpip
- &alt1_no_pwrgd
- &alt1_no_lpc_espi
- &alta_no_peci_en
- &altd_npsl_in1_sl
- &altd_npsl_in2_sl
- &altd_psl_in3_sl
- &altd_psl_in4_sl
- &alt7_no_ksi0_sl
- &alt7_no_ksi1_sl
- &alt7_no_ksi2_sl
- &alt7_no_ksi3_sl
- &alt7_no_ksi4_sl
- &alt7_no_ksi5_sl
- &alt7_no_ksi6_sl
- &alt7_no_ksi7_sl
- &alt8_no_kso00_sl
- &alt8_no_kso01_sl
- &alt8_no_kso02_sl
- &alt8_no_kso03_sl
- &alt8_no_kso04_sl
- &alt8_no_kso05_sl
- &alt8_no_kso06_sl
- &alt8_no_kso07_sl
- &alt9_no_kso08_sl
- &alt9_no_kso09_sl
- &alt9_no_kso10_sl
- &alt9_no_kso11_sl
- &alt9_no_kso12_sl
- &alt9_no_kso13_sl
- &alt9_no_kso14_sl
- &alt9_no_kso15_sl
- &alta_no_kso16_sl
- &alta_no_kso17_sl
- &altg_psl_gpo_sl>;
-};
diff --git a/zephyr/program/corsola/npcx_gpio.dtsi b/zephyr/program/corsola/npcx_gpio.dtsi
deleted file mode 100644
index 9a827a06dd..0000000000
--- a/zephyr/program/corsola/npcx_gpio.dtsi
+++ /dev/null
@@ -1,249 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-cbi-wp = &gpio_ec_cbi_wp;
- gpio-wp = &gpio_ec_wp_l;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- /*
- * In npcx9 series, gpio46, gpio47, and the whole gpio5 port
- * belong to VHIF power well. On kingler, it is connencted to
- * 1.8V.
- */
- base_imu_int_l: base_imu_int_l {
- gpios = <&gpio5 6 GPIO_INPUT>;
- };
- spi_ap_clk_ec {
- gpios = <&gpio5 5 GPIO_INPUT>;
- };
- spi_ap_cs_ec_l {
- gpios = <&gpio5 3 GPIO_INPUT>;
- };
- spi_ap_do_ec_di {
- gpios = <&gpio4 6 GPIO_INPUT>;
- };
- spi_ap_di_ec_do {
- gpios = <&gpio4 7 GPIO_INPUT>;
- };
- ap_ec_warm_rst_req: ap_ec_warm_rst_req {
- gpios = <&gpio5 1 (GPIO_INPUT | GPIO_ACTIVE_HIGH)>;
- enum-name = "GPIO_AP_EC_WARM_RST_REQ";
- };
- ap_ec_wdtrst_l: ap_ec_wdtrst_l {
- gpios = <&gpio5 2 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_AP_EC_WDTRST_L";
- };
- ap_in_sleep_l: ap_in_sleep_l {
- gpios = <&gpio5 4 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_AP_IN_SLEEP_L";
- };
- gpio_en_ulp: en_ulp {
- gpios = <&gpioc 6 GPIO_OUTPUT_LOW>;
- };
- en_ec_id_odl {
- gpios = <&gpio7 6 GPIO_ODR_HIGH>;
- };
- sys_rst_odl {
- gpios = <&gpioc 5 (GPIO_ODR_LOW | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_SYS_RST_ODL";
- };
- ec_i2c_sensor_scl {
- gpios = <&gpiob 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec_i2c_sensor_sda {
- gpios = <&gpiob 4 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec_i2c_usb_c0_scl {
- gpios = <&gpio9 0 GPIO_INPUT>;
- };
- ec_i2c_usb_c0_sda {
- gpios = <&gpio8 7 GPIO_INPUT>;
- };
- ec_i2c_usb_c1_scl {
- gpios = <&gpio9 2 GPIO_INPUT>;
- };
- ec_i2c_usb_c1_sda {
- gpios = <&gpio9 1 GPIO_INPUT>;
- };
- ec_i2c_pwr_cbi_scl {
- gpios = <&gpiod 1 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec_i2c_pwr_cbi_sda {
- gpios = <&gpiod 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec_i2c_batt_scl {
- gpios = <&gpio3 3 GPIO_INPUT>;
- };
- ec_i2c_batt_sda {
- gpios = <&gpio3 6 GPIO_INPUT>;
- };
- ec_pen_chg_dis_odl {
- gpios = <&gpioe 4 GPIO_INPUT>;
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpio8 0 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_wp_l: ec_wp_odl {
- gpios = <&gpioe 3 (GPIO_INPUT | GPIO_ACTIVE_LOW |
- GPIO_VOLTAGE_1P8)>;
- };
- lid_accel_int_l {
- gpios = <&gpiob 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpiob 2 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- ec_ap_int_odl {
- gpios = <&gpioc 1 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
- gpio_usb_c0_bc12_int_odl: usb_c0_bc12_int_odl {
- gpios = <&gpio8 3 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_BC12_INT_ODL";
- };
- ec_entering_rw {
- gpios = <&gpio0 3 GPIO_OUTPUT_LOW>;
- };
- charger_prochot_odl {
- gpios = <&gpiob 1 GPIO_INPUT>;
- };
- ec_rst_odl {
- gpios = <&gpio7 7 GPIO_INPUT>;
- };
- gpio_lid_open: lid_open {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_acok_od: acok_od {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_gsc_ec_pwr_btn_odl: gsc_ec_pwr_btn_odl {
- gpios = <&gpio0 1 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_en_5v_usm: en_5v_usm {
- gpios = <&gpio0 2 GPIO_OUTPUT_LOW>;
- };
- packet_mode_en {
- gpios = <&gpio7 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_x_ec_gpio2: x_ec_gpio2 {
- gpios = <&gpiod 4 GPIO_INPUT>;
- };
- /*
- * In npcx9 series, gpio93-97, the whole gpioa port, and gpiob0
- * belong to VSPI power rail. On kingler, it is connencted to
- * 1.8V.
- */
- ap_sysrst_odl_r: ap_sysrst_odl_r {
- gpios = <&gpioa 1 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_AP_EC_SYSRST_ODL";
- };
- gpio_ap_xhci_init_done: ap_xhci_init_done {
- gpios = <&gpioa 3 GPIO_INPUT>;
- };
- gpio_usb_c0_ppc_int_odl: usb_c0_ppc_int_odl {
- gpios = <&gpio6 7 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_PPC_INT_ODL";
- };
- pg_pp5000_z2_od {
- gpios = <&gpio7 0 GPIO_INPUT>;
- };
- gpio_ec_x_gpio1: ec_x_gpio1 {
- gpios = <&gpio6 2 GPIO_OUTPUT_LOW>;
- };
- dp_aux_path_sel: dp_aux_path_sel {
- gpios = <&gpio6 3 GPIO_OUTPUT_HIGH>;
- };
- gpio_ec_bl_en_od: ec_bl_en_od {
- gpios = <&gpio4 0 (GPIO_ODR_LOW | GPIO_VOLTAGE_1P8)>;
- };
- gpio_ec_x_gpio3: ec_x_gpio3 {
- gpios = <&gpiod 3 GPIO_OUTPUT_LOW>;
- };
- gpio_usb_c0_tcpc_int_odl: usb_c0_tcpc_int_odl {
- gpios = <&gpio7 3 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_TCPC_INT_ODL";
- };
- gpio_usb_c0_tcpc_rst: usb_c0_tcpc_rst {
- gpios = <&gpioc 0 GPIO_OUTPUT_LOW>;
- };
- en_pp5000_usb_a0_vbus: en_pp5000_usb_a0_vbus {
- gpios = <&gpio6 0 GPIO_OUTPUT_LOW>;
- };
- gpio_hdmi_prsnt_odl: hdmi_prsnt_odl {
- gpios = <&gpio3 7 GPIO_INPUT>;
- };
- en_pp5000_z2 {
- gpios = <&gpio3 4 GPIO_OUTPUT_HIGH>;
- };
- gpio_usb_c1_tcpc_int_odl: usb_c1_tcpc_int_odl {
- gpios = <&gpioe 1 GPIO_INPUT>;
- };
- ec_batt_pres_odl {
- gpios = <&gpioe 0 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- usb_a0_fault_odl {
- gpios = <&gpioc 7 GPIO_INPUT>;
- };
- ec_ap_dp_hpd_odl: ec_ap_dp_hpd_odl {
- gpios = <&gpio6 1 GPIO_ODR_HIGH>;
- };
- ec_pmic_en_odl {
- gpios = <&gpio7 4 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_EC_PMIC_EN_ODL";
- };
- gpio_ec_volup_btn_odl: ec_volup_btn_odl {
- gpios = <&gpiod 5 GPIO_INPUT>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_ec_voldn_btn_odl: ec_voldn_btn_odl {
- gpios = <&gpioe 2 GPIO_INPUT>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- /* unimplemented GPIOs */
- entering-rw {
- enum-name = "GPIO_ENTERING_RW";
- };
- };
-
- /*
- * aliases for sub-board GPIOs
- */
- aliases {
- gpio-en-hdmi-pwr = &gpio_ec_x_gpio1;
- gpio-usb-c1-frs-en = &gpio_ec_x_gpio1;
- gpio-usb-c1-ppc-int-odl = &gpio_x_ec_gpio2;
- gpio-ps185-ec-dp-hpd = &gpio_x_ec_gpio2;
- gpio-usb-c1-dp-in-hpd = &gpio_ec_x_gpio3;
- gpio-ps185-pwrdn-odl = &gpio_ec_x_gpio3;
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_ac_present
- &int_power_button
- &int_lid_open
- >;
- };
-};
diff --git a/zephyr/program/corsola/npcx_host_interface.dtsi b/zephyr/program/corsola/npcx_host_interface.dtsi
deleted file mode 100644
index 14efa3c6b2..0000000000
--- a/zephyr/program/corsola/npcx_host_interface.dtsi
+++ /dev/null
@@ -1,12 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* host interface */
-&shi {
- status = "okay";
- pinctrl-0 = <&shi_gp46_47_53_55>;
- pinctrl-1 = <&shi_gpio_gp46_47_53_55>;
- pinctrl-names = "default", "sleep";
-};
diff --git a/zephyr/program/corsola/npcx_i2c.dtsi b/zephyr/program/corsola/npcx_i2c.dtsi
deleted file mode 100644
index 90390ab8a0..0000000000
--- a/zephyr/program/corsola/npcx_i2c.dtsi
+++ /dev/null
@@ -1,169 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/usb_pd_tcpm.h>
-
-/*
- * Kingler and Steelix use the same dts, take care of this when modify it.
- */
-
-/ {
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_sensor: sensor {
- i2c-port = <&i2c0_0>;
- enum-names = "I2C_PORT_SENSOR";
- };
- i2c_usb_c0: usb-c0 {
- i2c-port = <&i2c1_0>;
- remote-port = <7>;
- enum-names = "I2C_PORT_USB_C0";
- };
- i2c_usb_c1: usb-c1 {
- i2c-port = <&i2c2_0>;
- enum-names = "I2C_PORT_USB_C1",
- "I2C_PORT_USB_C1_TCPC",
- "I2C_PORT_USB_C1_PPC";
- };
- i2c_charger: charger {
- i2c-port = <&i2c3_0>;
- enum-names = "I2C_PORT_POWER",
- "I2C_PORT_EEPROM";
- };
- battery {
- i2c-port = <&i2c5_0>;
- remote-port = <1>;
- enum-names = "I2C_PORT_BATTERY",
- "I2C_PORT_VIRTUAL_BATTERY";
- };
- };
-};
-
-&i2c0_0 {
- label = "I2C_SENSOR";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-&i2c1_0 {
- label = "I2C_USB_C0";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c0_bc12>;
- };
-
- tcpc_port0: anx7447-tcpc@2c {
- compatible = "analogix,anx7447-tcpc";
- status = "okay";
- reg = <0x2c>;
- tcpc-flags = <(
- TCPC_FLAGS_VBUS_MONITOR |
- TCPC_FLAGS_ALERT_OD |
- TCPC_FLAGS_CONTROL_VCONN |
- TCPC_FLAGS_CONTROL_FRS)>;
- };
-
- ppc_port0: nx20p348x@72 {
- compatible = "nxp,nx20p348x";
- status = "okay";
- reg = <0x72>;
- };
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-&i2c2_0 {
- label = "I2C_USB_C1";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c2_0_sda_scl_gp91_92>;
- pinctrl-names = "default";
-
- bc12_port1: rt1718s-bc12@40 {
- compatible = "richtek,rt1718s-bc12";
- status = "okay";
- reg = <0x40>;
- };
-
- tcpc_port1: rt1718s-tcpc@40 {
- compatible = "richtek,rt1718s-tcpc";
- reg = <0x40>;
- tcpc-flags = <(
- TCPC_FLAGS_ALERT_OD |
- TCPC_FLAGS_CONTROL_VCONN |
- TCPC_FLAGS_CONTROL_FRS)>;
- };
-
- ppc_port1: nx20p348x@72 {
- compatible = "nxp,nx20p348x";
- status = "okay";
- reg = <0x72>;
- };
-
- ps8743_mux_1: ps8743-mux-1@10 {
- compatible = "parade,ps8743";
- reg = <0x10>;
- board-init = "ps8743_mux_1_board_init";
- };
-};
-
-&i2c_ctrl2 {
- status = "okay";
-};
-
-&i2c3_0 {
- label = "I2C_PWR_CBI";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c3_0_sda_scl_gpd0_d1>;
- pinctrl-names = "default";
-
- charger: isl923x@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-};
-
-&i2c_ctrl3 {
- status = "okay";
-};
-
-&i2c5_0 {
- label = "I2C_BATTERY";
- status = "okay";
- clock-frequency = <I2C_BITRATE_STANDARD>;
- pinctrl-0 = <&i2c5_0_sda_scl_gp33_36>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl5 {
- status = "okay";
-};
diff --git a/zephyr/program/corsola/npcx_interrupts.dtsi b/zephyr/program/corsola/npcx_interrupts.dtsi
deleted file mode 100644
index f3da785a60..0000000000
--- a/zephyr/program/corsola/npcx_interrupts.dtsi
+++ /dev/null
@@ -1,114 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/*
- * Kingler and Steelix use the same dts, take care of this when modify it.
- */
-
-/ {
- aliases {
- int-wp = &int_wp;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&gpio_gsc_ec_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_volume_up: volume_up {
- irq-pin = <&gpio_ec_volup_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_volume_down: volume_down {
- irq-pin = <&gpio_ec_voldn_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_warm_rst: warm_rst {
- irq-pin = <&ap_ec_warm_rst_req>;
- flags = <GPIO_INT_EDGE_RISING>;
- handler = "chipset_reset_request_interrupt";
- };
- int_ap_in_sleep: ap_in_sleep {
- irq-pin = <&ap_in_sleep_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_ap_in_rst: ap_in_rst {
- irq-pin = <&ap_sysrst_odl_r>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_ap_wdtrst: ap_wdtrst {
- irq-pin = <&ap_ec_wdtrst_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "chipset_watchdog_interrupt";
- };
- int_ac_present: ac_present {
- irq-pin = <&gpio_acok_od>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_usba: usba {
- irq-pin = <&gpio_ap_xhci_init_done>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "usb_a0_interrupt";
- };
- int_wp: wp {
- irq-pin = <&gpio_ec_wp_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_usb_c0_tcpc: usb_c0_tcpc {
- irq-pin = <&gpio_usb_c0_tcpc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c1_tcpc: usb_c1_tcpc {
- irq-pin = <&gpio_usb_c1_tcpc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c0_ppc: usb_c0_ppc {
- irq-pin = <&gpio_usb_c0_ppc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c0_bc12: usb_c0_bc12 {
- irq-pin = <&gpio_usb_c0_bc12_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bc12_interrupt";
- };
- int_x_ec_gpio2: x_ec_gpio2 {
- irq-pin = <&gpio_x_ec_gpio2>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "x_ec_interrupt";
- };
- int_base_imu: base_imu {
- irq-pin = <&base_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bmi3xx_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&gpio_tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_ccd_mode_odl: ccd-mode-odl {
- irq-pin = <&gpio_ccd_mode_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ccd_interrupt";
- };
- };
-};
diff --git a/zephyr/program/corsola/npcx_keyboard.dtsi b/zephyr/program/corsola/npcx_keyboard.dtsi
deleted file mode 100644
index f9e46de1f2..0000000000
--- a/zephyr/program/corsola/npcx_keyboard.dtsi
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-&cros_kb_raw {
- status = "okay";
- /* No KSO2 (it's inverted and implemented by GPIO) */
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- >;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/corsola/npcx_motionsense.dtsi b/zephyr/program/corsola/npcx_motionsense.dtsi
deleted file mode 100644
index a7f674e01f..0000000000
--- a/zephyr/program/corsola/npcx_motionsense.dtsi
+++ /dev/null
@@ -1,150 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/*
- * Kingler and Steelix use the same dts, take care of this when modify it.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi3xx-int = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
- base_mutex: base-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 (-1) 0
- (-1) 0 0
- 0 0 (-1)>;
- };
- base_rot_ref: base-rotation-ref {
- mat33 = <0 (-1) 0
- 1 0 0
- 0 0 1>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bma4xx_data: bma4xx-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
- bmi3xx_data: bmi3xx-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&bma4xx_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <(100 * USEC_PER_MSEC)>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <0>;
- };
- };
- };
-
- base_gyro: base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
- };
-
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_base_imu>;
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/corsola/npcx_program.conf b/zephyr/program/corsola/npcx_program.conf
deleted file mode 100644
index 300cbe085d..0000000000
--- a/zephyr/program/corsola/npcx_program.conf
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-
-# Bring up options
-CONFIG_PLATFORM_EC_SYSTEM_UNLOCKED=y
-
-# Debug options and features; can be disabled to save memory or once bringup
-# is complete.
-CONFIG_SHELL_MINIMAL=n
-
-# Charger
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC=y
-CONFIG_PLATFORM_EC_CHARGER_ISL9238C=y
-CONFIG_PLATFORM_EC_CHARGER_PSYS=y
-CONFIG_PLATFORM_EC_CHARGER_PSYS_READ=y
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR=10
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR_AC=20
-CONFIG_PLATFORM_EC_CONSOLE_CMD_CHARGER_ADC_AMON_BMON=y
-
-# PWM
-CONFIG_PWM=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_COMMON=y
-CONFIG_PLATFORM_EC_LED_ONOFF_STATES=y
-
-# Math
-CONFIG_PLATFORM_EC_MATH_UTIL=y
-
-# Power sequencing
-CONFIG_PLATFORM_EC_POWERSEQ_MT8186=y
-CONFIG_PLATFORM_EC_POWERSEQ_S4=n
-
-# Button
-CONFIG_PLATFORM_EC_BUTTONS_RUNTIME_CONFIG=y
-
-# Sensors
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI3XX=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=y
-CONFIG_PLATFORM_EC_ACCEL_BMA4XX=y
-CONFIG_PLATFORM_EC_ACCEL_FIFO=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCELS=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCEL_INFO=y
-CONFIG_PLATFORM_EC_GMR_TABLET_MODE=y
-CONFIG_PLATFORM_EC_LID_ANGLE=y
-CONFIG_PLATFORM_EC_LID_ANGLE_UPDATE=y
-CONFIG_PLATFORM_EC_LID_SWITCH=y
-CONFIG_PLATFORM_EC_MOTIONSENSE=y
-CONFIG_PLATFORM_EC_SENSOR_TIGHT_TIMESTAMPS=y
-CONFIG_PLATFORM_EC_TABLET_MODE=y
-CONFIG_PLATFORM_EC_TABLET_MODE_SWITCH=y
-
-# USBC
-CONFIG_PLATFORM_EC_BC12_SINGLE_DRIVER=n
-CONFIG_PLATFORM_EC_PD_POWER_SUPPLY_TURN_OFF_DELAY=15000
-CONFIG_PLATFORM_EC_PD_POWER_SUPPLY_TURN_ON_DELAY=15000
-CONFIG_PLATFORM_EC_USBC_PPC=y
-CONFIG_PLATFORM_EC_USBC_PPC_NX20P3483=y
-CONFIG_PLATFORM_EC_USBC_PPC_RT1718S=y
-CONFIG_PLATFORM_EC_USB_MUX_PS8743=y
-CONFIG_PLATFORM_EC_USB_MUX_VIRTUAL=y
-CONFIG_PLATFORM_EC_USB_PD_DISCHARGE_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_FRS_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_LOGGING=y
-CONFIG_PLATFORM_EC_USB_PD_DEBUG_FIXED_LEVEL=y
-CONFIG_PLATFORM_EC_USB_PD_DEBUG_LEVEL=2
-CONFIG_PLATFORM_EC_USB_PD_TCPM_ANX7447=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_ANX7447_AUX_PU_PD=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_RT1718S=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_SBU=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_MEASURE_BY_BOARD=y
-
-# External power
-CONFIG_PLATFORM_EC_BACKLIGHT_LID=n
-
-# Keyboard
-CONFIG_CROS_KB_RAW_NPCX_KSO_HIGH_DRIVE=y
-
-CONFIG_SYSCON=y
-
-CONFIG_PLATFORM_EC_BOARD_VERSION_GPIO=n
diff --git a/zephyr/program/corsola/npcx_usbc.dtsi b/zephyr/program/corsola/npcx_usbc.dtsi
deleted file mode 100644
index 18bc6ce303..0000000000
--- a/zephyr/program/corsola/npcx_usbc.dtsi
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- tcpc = <&tcpc_port0>;
- ppc = <&ppc_port0>;
- chg = <&charger>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&anx7447_mux_0 &virtual_mux_0>;
- };
- };
-
- port0-muxes {
- anx7447_mux_0: anx7447-mux-0 {
- compatible = "analogix,usbc-mux-anx7447";
- };
- virtual_mux_0: virtual-mux-0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&bc12_port1>;
- tcpc = <&tcpc_port1>;
- ppc = <&ppc_port1>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&ps8743_mux_1 &virtual_mux_1>;
- };
- usb_mux_chain_1_hdmi_db: usb-mux-chain-1-hdmi-db {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&virtual_mux_1>;
- };
- };
-
- port1-muxes {
- virtual_mux_1: virtual-mux-1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-};
diff --git a/zephyr/program/corsola/power_signal.dtsi b/zephyr/program/corsola/power_signal.dtsi
deleted file mode 100644
index 5037bac228..0000000000
--- a/zephyr/program/corsola/power_signal.dtsi
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- power_signal_list: power-signal-list {
- compatible = "mediatek,mt8186-power-signal-list";
- ap_in_rst {
- power-enum-name = "AP_IN_RST";
- power-gpio-pin = <&ap_sysrst_odl_r>;
- };
- ap_in_s3 {
- power-enum-name = "AP_IN_S3";
- power-gpio-pin = <&ap_in_sleep_l>;
- };
- ap_wdt_asserted {
- power-enum-name = "AP_WDT_ASSERTED";
- power-gpio-pin = <&ap_ec_wdtrst_l>;
- };
- ap_warm_rst_req {
- power-enum-name = "AP_WARM_RST_REQ";
- power-gpio-pin = <&ap_ec_warm_rst_req>;
- };
- };
-};
diff --git a/zephyr/program/corsola/program.conf b/zephyr/program/corsola/program.conf
deleted file mode 100644
index 86bd30aaed..0000000000
--- a/zephyr/program/corsola/program.conf
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-#
-
-# http://google3/hardware/standards/usb/
-CONFIG_PLATFORM_EC_USB_PID=0x505C
-
-# CROS EC
-CONFIG_CROS_EC=y
-CONFIG_PLATFORM_EC=y
-CONFIG_PLATFORM_EC_SWITCH=y
-CONFIG_SHIMMED_TASKS=y
-
-# AP SoC configuration
-CONFIG_AP=y
-CONFIG_AP_ARM_MTK_MT8186=y
-
-# Variant config
-CONFIG_VARIANT_CORSOLA_DB_DETECTION=y
-
-# Shell features
-CONFIG_KERNEL_SHELL=y
-CONFIG_SHELL_HELP=y
-CONFIG_SHELL_HISTORY=y
-CONFIG_SHELL_TAB=y
-CONFIG_SHELL_TAB_AUTOCOMPLETION=y
-
-# CBI
-CONFIG_EEPROM=y
-CONFIG_PLATFORM_EC_BOARD_VERSION_CBI=y
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_PROTOCOL_MKBP=y
-CONFIG_PLATFORM_EC_KEYBOARD_COL2_INVERTED=y
-
-# MKBP
-CONFIG_PLATFORM_EC_MKBP_EVENT=y
-CONFIG_PLATFORM_EC_MKBP_INPUT_DEVICES=y
-CONFIG_PLATFORM_EC_MKBP_USE_GPIO=y
-
-# EFS2
-CONFIG_PLATFORM_EC_VBOOT_EFS2=y
-
-# USB
-CONFIG_PLATFORM_EC_USB_PD_TBT_COMPAT_MODE=n
-CONFIG_PLATFORM_EC_USB_PD_USB32_DRD=n
-CONFIG_PLATFORM_EC_USB_PD_USB4=n
-CONFIG_PLATFORM_EC_USB_PORT_POWER_DUMB_CUSTOM_HOOK=y
-
-# USB-C
-CONFIG_PLATFORM_EC_USBC=y
-CONFIG_PLATFORM_EC_USBC_SS_MUX_DFP_ONLY=y
-CONFIG_PLATFORM_EC_USB_PD_DPS=y
-CONFIG_PLATFORM_EC_USB_PD_DP_HPD_GPIO=y
-CONFIG_PLATFORM_EC_USB_PD_DP_HPD_GPIO_CUSTOM=y
-CONFIG_PLATFORM_EC_USB_PD_FRS=y
-CONFIG_PLATFORM_EC_USB_PD_CLEAR_HARD_RESET_STATUS=y
-
-# Power Seq
-CONFIG_PLATFORM_EC_CHIPSET_RESUME_INIT_HOOK=y
-CONFIG_PLATFORM_EC_EXTPOWER_GPIO=y
-CONFIG_PLATFORM_EC_POWERSEQ=y
-CONFIG_PLATFORM_EC_POWERSEQ_HOST_SLEEP=y
-CONFIG_PLATFORM_EC_POWERSEQ_PP5000_CONTROL=n
-CONFIG_PLATFORM_EC_POWER_SLEEP_FAILURE_DETECTION=y
-
-# Optional features
-CONFIG_FLASH_SHELL=n
-
-# EEPROM
-CONFIG_PLATFORM_EC_EEPROM_CBI_WP=y
-
-# Host Commands
-CONFIG_PLATFORM_EC_HOSTCMD=y
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_CUT_OFF=y
-CONFIG_PLATFORM_EC_BATTERY_FUEL_GAUGE=y
-CONFIG_PLATFORM_EC_BATTERY_PRESENT_GPIO=y
-CONFIG_PLATFORM_EC_BATTERY_SMART=y
-CONFIG_PLATFORM_EC_BATT_FULL_CHIPSET_OFF_INPUT_LIMIT_MV=9000
-CONFIG_PLATFORM_EC_I2C_PASSTHRU_RESTRICTED=y
-CONFIG_PLATFORM_EC_I2C_VIRTUAL_BATTERY=y
-
-# Charger
-CONFIG_PLATFORM_EC_BC12_CLIENT_MODE_ONLY_PI3USB9201=y
-CONFIG_PLATFORM_EC_CHARGE_MANAGER=y
-# b:257167723: Adapter output current exceeds the spec on heavy-load.
-# Preserve a margin in case of charger overdraw.
-CONFIG_PLATFORM_EC_CHARGER_INPUT_CURRENT_DERATE_PCT=3
-
-# Button
-CONFIG_PLATFORM_EC_CMD_BUTTON=y
-CONFIG_PLATFORM_EC_POWER_BUTTON=y
-CONFIG_PLATFORM_EC_VOLUME_BUTTONS=y
diff --git a/zephyr/program/corsola/src/board.c b/zephyr/program/corsola/src/board.c
deleted file mode 100644
index bd0ee739b5..0000000000
--- a/zephyr/program/corsola/src/board.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "baseboard_usbc_config.h"
-#include "console.h"
-#include "hooks.h"
-#include "typec_control.h"
-#include "usb_dp_alt_mode.h"
-#include "usb_mux.h"
-#include "usb_pd.h"
-#include "usbc_ppc.h"
-
-#define CPRINTS(format, args...) cprints(CC_USB, format, ##args)
-
-static void ccd_interrupt_deferred(void)
-{
- /*
- * If CCD_MODE_ODL asserts, it means there's a debug accessory connected
- * and we should enable the SBU FETs.
- */
- typec_set_sbu(CONFIG_CCD_USBC_PORT_NUMBER, 1);
-
- /* Mux DP AUX away when CCD enabled to prevent the AUX channel
- * interferes the SBU pins.
- */
- CPRINTS("CCD Enabled, mux DP_AUX_PATH_SEL to 1");
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(dp_aux_path_sel), 1);
-}
-DECLARE_DEFERRED(ccd_interrupt_deferred);
-
-void ccd_interrupt(enum gpio_signal signal)
-{
- hook_call_deferred(&ccd_interrupt_deferred_data, 0);
-}
diff --git a/zephyr/program/corsola/src/board_chipset.c b/zephyr/program/corsola/src/board_chipset.c
deleted file mode 100644
index e534bfafcb..0000000000
--- a/zephyr/program/corsola/src/board_chipset.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Corsola baseboard-chipset specific configuration */
-
-#include "gpio.h"
-
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/init.h>
-
-#include <ap_power/ap_power.h>
-
-static void board_backlight_handler(struct ap_power_ev_callback *cb,
- struct ap_power_ev_data data)
-{
- int value;
-
- switch (data.event) {
- default:
- return;
-
- case AP_POWER_RESUME:
- /* Called on AP S3 -> S0 transition */
- value = 1;
- break;
-
- case AP_POWER_SUSPEND:
- /* Called on AP S0 -> S3 transition */
- value = 0;
- break;
- }
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_ec_bl_en_od), value);
-}
-
-static int install_backlight_handler(const struct device *unused)
-{
- static struct ap_power_ev_callback cb;
-
- /*
- * Add a callback for suspend/resume to
- * control the keyboard backlight.
- */
- ap_power_ev_init_callback(&cb, board_backlight_handler,
- AP_POWER_RESUME | AP_POWER_SUSPEND);
- ap_power_ev_add_callback(&cb);
- return 0;
-}
-
-SYS_INIT(install_backlight_handler, APPLICATION, 1);
diff --git a/zephyr/program/corsola/src/hibernate.c b/zephyr/program/corsola/src/hibernate.c
deleted file mode 100644
index 2b7ed9795d..0000000000
--- a/zephyr/program/corsola/src/hibernate.c
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "charger.h"
-#include "driver/charger/isl923x_public.h"
-#include "system.h"
-
-#include <zephyr/drivers/gpio.h>
-
-/* Corsola board specific hibernate implementation */
-__override void board_hibernate(void)
-{
-#ifdef CONFIG_CHARGER_ISL9238C
- isl9238c_hibernate(CHARGER_SOLO);
-#endif
-}
-
-__override void board_hibernate_late(void)
-{
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_en_ulp), 1);
-}
diff --git a/zephyr/program/corsola/src/kingler/board_steelix.c b/zephyr/program/corsola/src/kingler/board_steelix.c
deleted file mode 100644
index b4faf5af0c..0000000000
--- a/zephyr/program/corsola/src/kingler/board_steelix.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Board re-init for Rusty board
- * Rusty shares the firmware with Steelix.
- * Steelix is convertible but Rusty is clamshell
- * so some functions should be disabled for clamshell.
- */
-#include "accelgyro.h"
-#include "common.h"
-#include "cros_cbi.h"
-#include "driver/accelgyro_bmi3xx.h"
-#include "driver/accelgyro_lsm6dsm.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "motion_sense.h"
-#include "motionsense_sensors.h"
-#include "tablet_mode.h"
-
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_REGISTER(board_init, LOG_LEVEL_ERR);
-
-static bool board_is_clamshell;
-
-static void board_setup_init(void)
-{
- int ret;
- uint32_t val;
-
- ret = cros_cbi_get_fw_config(FORM_FACTOR, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FORM_FACTOR);
- return;
- }
- if (val == CLAMSHELL) {
- board_is_clamshell = true;
- motion_sensor_count = 0;
- gmr_tablet_switch_disable();
- }
-}
-DECLARE_HOOK(HOOK_INIT, board_setup_init, HOOK_PRIO_PRE_DEFAULT);
-
-static void disable_base_imu_irq(void)
-{
- if (board_is_clamshell) {
- gpio_disable_dt_interrupt(
- GPIO_INT_FROM_NODELABEL(int_base_imu));
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(base_imu_int_l),
- GPIO_INPUT | GPIO_PULL_UP);
- }
-}
-DECLARE_HOOK(HOOK_INIT, disable_base_imu_irq, HOOK_PRIO_POST_DEFAULT);
-
-static bool base_use_alt_sensor;
-
-void motion_interrupt(enum gpio_signal signal)
-{
- if (base_use_alt_sensor) {
- lsm6dsm_interrupt(signal);
- } else {
- bmi3xx_interrupt(signal);
- }
-}
-
-static void alt_sensor_init(void)
-{
- base_use_alt_sensor = cros_cbi_ssfc_check_match(
- CBI_SSFC_VALUE_ID(DT_NODELABEL(base_sensor_1)));
-
- motion_sensors_check_ssfc();
-}
-DECLARE_HOOK(HOOK_INIT, alt_sensor_init, HOOK_PRIO_POST_I2C);
diff --git a/zephyr/program/corsola/src/kingler/button.c b/zephyr/program/corsola/src/kingler/button.c
deleted file mode 100644
index 920069bef6..0000000000
--- a/zephyr/program/corsola/src/kingler/button.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* kingler button */
-
-#include "button.h"
-#include "cros_board_info.h"
-#include "gpio.h"
-#include "hooks.h"
-
-static void buttons_hook(void)
-{
- int version;
-
- if (cbi_get_board_version(&version)) {
- return;
- }
-
- /* b:219891339: drop this workaround when we deprecate rev0 */
- if (version == 0) {
- /* swap VOLUP/VOLDN */
- button_reassign_gpio(BUTTON_VOLUME_DOWN, GPIO_VOLUME_UP_L);
- button_reassign_gpio(BUTTON_VOLUME_UP, GPIO_VOLUME_DOWN_L);
- /*
- * button_reassign_gpio will disable the old button interrupt
- * and then enable the new button interrupt which cause the
- * GPIO_VOLUME_UP_L interrupt disabled after we reassign
- * BUTTON_VOLUME_UP, so we need to re-enable it here.
- */
- gpio_enable_interrupt(GPIO_VOLUME_UP_L);
- }
-}
-DECLARE_HOOK(HOOK_INIT, buttons_hook, HOOK_PRIO_DEFAULT);
diff --git a/zephyr/program/corsola/src/kingler/i2c.c b/zephyr/program/corsola/src/kingler/i2c.c
deleted file mode 100644
index 5bd8aef7d5..0000000000
--- a/zephyr/program/corsola/src/kingler/i2c.c
+++ /dev/null
@@ -1,21 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "i2c.h"
-#include "i2c/i2c.h"
-
-/* Kingler and Steelix board specific i2c implementation */
-
-#ifdef CONFIG_PLATFORM_EC_I2C_PASSTHRU_RESTRICTED
-int board_allow_i2c_passthru(const struct i2c_cmd_desc_t *cmd_desc)
-{
- return (i2c_get_device_for_port(cmd_desc->port) ==
- i2c_get_device_for_port(I2C_PORT_VIRTUAL_BATTERY) ||
- i2c_get_device_for_port(cmd_desc->port) ==
- i2c_get_device_for_port(I2C_PORT_EEPROM) ||
- i2c_get_device_for_port(cmd_desc->port) ==
- i2c_get_device_for_port(I2C_PORT_USB_C0));
-}
-#endif
diff --git a/zephyr/program/corsola/src/kingler/led.c b/zephyr/program/corsola/src/kingler/led.c
deleted file mode 100644
index 4e2c5b12fb..0000000000
--- a/zephyr/program/corsola/src/kingler/led.c
+++ /dev/null
@@ -1,52 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * Battery LED control for Kingler
- */
-#include "common.h"
-#include "ec_commands.h"
-#include "led_common.h"
-#include "led_onoff_states.h"
-#include "led_pwm.h"
-
-__override const int led_charge_lvl_1 = 5;
-__override const int led_charge_lvl_2 = 97;
-__override struct led_descriptor
- led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
- [STATE_CHARGING_LVL_1] = { { EC_LED_COLOR_RED,
- LED_INDEFINITE } },
- [STATE_CHARGING_LVL_2] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_CHARGING_FULL_CHARGE] = { { EC_LED_COLOR_GREEN,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S0] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S0_BAT_LOW] = { { EC_LED_COLOR_AMBER,
- 1 * LED_ONE_SEC },
- { LED_OFF, 3 * LED_ONE_SEC } },
- [STATE_DISCHARGE_S3] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S5] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_BATTERY_ERROR] = { { EC_LED_COLOR_RED, 1 * LED_ONE_SEC },
- { LED_OFF, 1 * LED_ONE_SEC } },
- [STATE_FACTORY_TEST] = { { EC_LED_COLOR_RED, 2 * LED_ONE_SEC },
- { EC_LED_COLOR_GREEN,
- 2 * LED_ONE_SEC } },
- };
-
-__override void led_set_color_battery(enum ec_led_colors color)
-{
- switch (color) {
- case EC_LED_COLOR_RED:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_RED);
- break;
- case EC_LED_COLOR_GREEN:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_GREEN);
- break;
- case EC_LED_COLOR_AMBER:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_AMBER);
- break;
- default: /* LED_OFF and other unsupported colors */
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, -1);
- break;
- }
-}
diff --git a/zephyr/program/corsola/src/kingler/led_steelix.c b/zephyr/program/corsola/src/kingler/led_steelix.c
deleted file mode 100644
index 1188c4f95e..0000000000
--- a/zephyr/program/corsola/src/kingler/led_steelix.c
+++ /dev/null
@@ -1,181 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * Battery LED control for Steelix
- */
-
-#include "board_led.h"
-#include "common.h"
-#include "cros_cbi.h"
-#include "led_common.h"
-#include "led_onoff_states.h"
-#include "util.h"
-
-#include <zephyr/drivers/pwm.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_REGISTER(board_led, LOG_LEVEL_ERR);
-
-#define BOARD_LED_PWM_PERIOD_NS BOARD_LED_HZ_TO_PERIOD_NS(100)
-
-static const struct board_led_pwm_dt_channel board_led_battery_red =
- BOARD_LED_PWM_DT_CHANNEL_INITIALIZER(DT_NODELABEL(led_battery_red));
-static const struct board_led_pwm_dt_channel board_led_battery_green =
- BOARD_LED_PWM_DT_CHANNEL_INITIALIZER(DT_NODELABEL(led_battery_green));
-static const struct board_led_pwm_dt_channel board_led_power_white =
- BOARD_LED_PWM_DT_CHANNEL_INITIALIZER(DT_NODELABEL(led_power_white));
-
-__override const int led_charge_lvl_1 = 5;
-__override const int led_charge_lvl_2 = 97;
-__override struct led_descriptor
- led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
- [STATE_CHARGING_LVL_1] = { { EC_LED_COLOR_RED,
- LED_INDEFINITE } },
- [STATE_CHARGING_LVL_2] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_CHARGING_FULL_CHARGE] = { { EC_LED_COLOR_GREEN,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S0] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S0_BAT_LOW] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S3] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S5] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_BATTERY_ERROR] = { { EC_LED_COLOR_RED, 1 * LED_ONE_SEC },
- { LED_OFF, 1 * LED_ONE_SEC } },
- [STATE_FACTORY_TEST] = { { EC_LED_COLOR_RED, 2 * LED_ONE_SEC },
- { EC_LED_COLOR_GREEN,
- 2 * LED_ONE_SEC } },
- };
-
-__override const struct led_descriptor
- led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
- [PWR_LED_STATE_ON] = { { EC_LED_COLOR_WHITE, LED_INDEFINITE } },
- [PWR_LED_STATE_SUSPEND_AC] = { { EC_LED_COLOR_WHITE,
- 3 * LED_ONE_SEC },
- { LED_OFF, 0.5 * LED_ONE_SEC } },
- [PWR_LED_STATE_SUSPEND_NO_AC] = { { EC_LED_COLOR_WHITE,
- 3 * LED_ONE_SEC },
- { LED_OFF,
- 0.5 * LED_ONE_SEC } },
- [PWR_LED_STATE_OFF] = { { LED_OFF, LED_INDEFINITE } },
- };
-
-const enum ec_led_id supported_led_ids[] = {
- EC_LED_ID_BATTERY_LED,
- EC_LED_ID_POWER_LED,
-};
-
-const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-
-static void board_led_pwm_set_duty(const struct board_led_pwm_dt_channel *ch,
- int percent)
-{
- uint32_t pulse_ns;
- int rv;
-
- if (!device_is_ready(ch->dev)) {
- LOG_ERR("PWM device %s not ready", ch->dev->name);
- return;
- }
-
- pulse_ns = DIV_ROUND_NEAREST(BOARD_LED_PWM_PERIOD_NS * percent, 100);
-
- LOG_DBG("Board LED PWM %s set percent (%d), pulse %d", ch->dev->name,
- percent, pulse_ns);
-
- rv = pwm_set(ch->dev, ch->channel, BOARD_LED_PWM_PERIOD_NS, pulse_ns,
- ch->flags);
- if (rv) {
- LOG_ERR("pwm_set() failed %s (%d)", ch->dev->name, rv);
- }
-}
-
-static bool device_is_clamshell(void)
-{
- int ret;
- uint32_t val;
-
- ret = cros_cbi_get_fw_config(FORM_FACTOR, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FORM_FACTOR);
- return false;
- }
-
- return val == CLAMSHELL;
-}
-
-__override void led_set_color_battery(enum ec_led_colors color)
-{
- switch (color) {
- case EC_LED_COLOR_RED:
- board_led_pwm_set_duty(&board_led_battery_red, 100);
- board_led_pwm_set_duty(&board_led_battery_green, 0);
- break;
- case EC_LED_COLOR_GREEN:
- board_led_pwm_set_duty(&board_led_battery_red, 0);
- board_led_pwm_set_duty(&board_led_battery_green, 100);
- break;
- case EC_LED_COLOR_AMBER:
- board_led_pwm_set_duty(&board_led_battery_red, 100);
- board_led_pwm_set_duty(&board_led_battery_green, 20);
- break;
- default: /* LED_OFF and other unsupported colors */
- board_led_pwm_set_duty(&board_led_battery_red, 0);
- board_led_pwm_set_duty(&board_led_battery_green, 0);
- break;
- }
-}
-
-__override void led_set_color_power(enum ec_led_colors color)
-{
- if (device_is_clamshell()) {
- board_led_pwm_set_duty(&board_led_power_white, 0);
- } else {
- switch (color) {
- case EC_LED_COLOR_WHITE:
- board_led_pwm_set_duty(&board_led_power_white, 100);
- break;
- default:
- board_led_pwm_set_duty(&board_led_power_white, 0);
- break;
- }
- }
-}
-
-void led_get_brightness_range(enum ec_led_id led_id, uint8_t *brightness_range)
-{
- if (led_id == EC_LED_ID_BATTERY_LED) {
- brightness_range[EC_LED_COLOR_RED] = 1;
- brightness_range[EC_LED_COLOR_GREEN] = 1;
- brightness_range[EC_LED_COLOR_AMBER] = 1;
- } else if (led_id == EC_LED_ID_POWER_LED) {
- if (device_is_clamshell()) {
- brightness_range[EC_LED_COLOR_WHITE] = 0;
- } else {
- brightness_range[EC_LED_COLOR_WHITE] = 1;
- }
- }
-}
-
-int led_set_brightness(enum ec_led_id led_id, const uint8_t *brightness)
-{
- if (led_id == EC_LED_ID_BATTERY_LED) {
- if (brightness[EC_LED_COLOR_RED] != 0) {
- led_set_color_battery(EC_LED_COLOR_RED);
- } else if (brightness[EC_LED_COLOR_GREEN] != 0) {
- led_set_color_battery(EC_LED_COLOR_GREEN);
- } else if (brightness[EC_LED_COLOR_AMBER] != 0) {
- led_set_color_battery(EC_LED_COLOR_AMBER);
- } else {
- led_set_color_battery(LED_OFF);
- }
- } else if (led_id == EC_LED_ID_POWER_LED) {
- if (brightness[EC_LED_COLOR_WHITE] != 0) {
- led_set_color_power(EC_LED_COLOR_WHITE);
- } else {
- led_set_color_power(LED_OFF);
- }
- }
-
- return EC_SUCCESS;
-}
diff --git a/zephyr/program/corsola/src/kingler/usb_pd_policy.c b/zephyr/program/corsola/src/kingler/usb_pd_policy.c
deleted file mode 100644
index c9e26f6681..0000000000
--- a/zephyr/program/corsola/src/kingler/usb_pd_policy.c
+++ /dev/null
@@ -1,73 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "baseboard_usbc_config.h"
-#include "charge_manager.h"
-#include "console.h"
-#include "driver/ppc/rt1718s.h"
-#include "system.h"
-#include "usb_mux.h"
-#include "usb_pd.h"
-#include "usbc_ppc.h"
-#include "util.h"
-
-#define CPRINTS(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-void pd_power_supply_reset(int port)
-{
- int prev_en;
-
- prev_en = ppc_is_sourcing_vbus(port);
-
- if (port == USBC_PORT_C1) {
- rt1718s_gpio_set_level(port, GPIO_EN_USB_C1_SOURCE, 0);
- }
-
- /* Disable VBUS. */
- ppc_vbus_source_enable(port, 0);
-
- /* Enable discharge if we were previously sourcing 5V */
- if (prev_en) {
- pd_set_vbus_discharge(port, 1);
- }
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- int rv;
-
- /* Disable charging. */
- rv = ppc_vbus_sink_enable(port, 0);
- if (rv) {
- return rv;
- }
-
- pd_set_vbus_discharge(port, 0);
-
- /* Provide Vbus. */
- if (port == USBC_PORT_C1) {
- rt1718s_gpio_set_level(port, GPIO_EN_USB_C1_SOURCE, 1);
- }
-
- rv = ppc_vbus_source_enable(port, 1);
- if (rv) {
- return rv;
- }
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-int pd_snk_is_vbus_provided(int port)
-{
- /* TODO: use ADC? */
- return tcpm_check_vbus_level(port, VBUS_PRESENT);
-}
diff --git a/zephyr/program/corsola/src/kingler/usbc_config.c b/zephyr/program/corsola/src/kingler/usbc_config.c
deleted file mode 100644
index 2e05d3720e..0000000000
--- a/zephyr/program/corsola/src/kingler/usbc_config.c
+++ /dev/null
@@ -1,317 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Kingler board-specific USB-C configuration */
-
-/* TODO(b/220196310): Create GPIO driver for RT17181S TCPC */
-#ifdef __REQUIRE_ZEPHYR_GPIOS__
-#undef __REQUIRE_ZEPHYR_GPIOS__
-#endif
-
-#include "baseboard_usbc_config.h"
-#include "charger.h"
-#include "console.h"
-#include "driver/bc12/pi3usb9201_public.h"
-#include "driver/charger/isl923x_public.h"
-#include "driver/ppc/nx20p348x.h"
-#include "driver/ppc/rt1718s.h"
-#include "driver/tcpm/anx7447.h"
-#include "driver/tcpm/rt1718s.h"
-#include "driver/usb_mux/ps8743.h"
-#include "gpio.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "timer.h"
-#include "usb_charge.h"
-#include "usb_mux.h"
-#include "usb_pd_tcpm.h"
-#include "usbc_ppc.h"
-#include "variant_db_detection.h"
-
-#define CPRINTS(format, args...) cprints(CC_USBPD, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_USBPD, format, ##args)
-
-/* USB Mux */
-
-/* USB Mux C1 : board_init of PS8743 */
-int ps8743_mux_1_board_init(const struct usb_mux *me)
-{
- ps8743_tune_usb_eq(me, PS8743_USB_EQ_TX_3_6_DB,
- PS8743_USB_EQ_RX_16_0_DB);
-
- return EC_SUCCESS;
-}
-
-void board_usb_mux_init(void)
-{
- if (corsola_get_db_type() == CORSOLA_DB_TYPEC) {
- /* Disable DCI function. This is not needed for ARM. */
- ps8743_field_update(usb_muxes[1].mux, PS8743_REG_DCI_CONFIG_2,
- PS8743_AUTO_DCI_MODE_MASK,
- PS8743_AUTO_DCI_MODE_FORCE_USB);
- }
-}
-DECLARE_HOOK(HOOK_INIT, board_usb_mux_init, HOOK_PRIO_INIT_I2C + 1);
-
-void board_tcpc_init(void)
-{
- /* Only reset TCPC if not sysjump */
- if (!system_jumped_late()) {
- /* TODO(crosbug.com/p/61098): How long do we need to wait? */
- board_reset_pd_mcu();
- }
-
- /* Enable TCPC interrupts */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_tcpc));
- if (corsola_get_db_type() == CORSOLA_DB_TYPEC) {
- gpio_enable_dt_interrupt(
- GPIO_INT_FROM_NODELABEL(int_usb_c1_tcpc));
- }
-
- /* Enable BC1.2 interrupts. */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_bc12));
-
- /*
- * Initialize HPD to low; after sysjump SOC needs to see
- * HPD pulse to enable video path
- */
- for (int port = 0; port < CONFIG_USB_PD_PORT_MAX_COUNT; ++port) {
- usb_mux_hpd_update(port, USB_PD_MUX_HPD_LVL_DEASSERTED |
- USB_PD_MUX_HPD_IRQ_DEASSERTED);
- }
-}
-DECLARE_HOOK(HOOK_INIT, board_tcpc_init, HOOK_PRIO_POST_I2C);
-
-__override int board_rt1718s_init(int port)
-{
- static bool gpio_initialized;
-
- if (!system_jumped_late() && !gpio_initialized) {
- /* set GPIO 1~3 as push pull, as output, output low. */
- rt1718s_gpio_set_flags(port, RT1718S_GPIO1, GPIO_OUT_LOW);
- rt1718s_gpio_set_flags(port, RT1718S_GPIO2, GPIO_OUT_LOW);
- rt1718s_gpio_set_flags(port, RT1718S_GPIO3, GPIO_OUT_LOW);
- gpio_initialized = true;
- }
-
- /* gpio1 low, gpio2 output high when receiving frs signal */
- RETURN_ERROR(rt1718s_update_bits8(port, RT1718S_GPIO1_VBUS_CTRL,
- RT1718S_GPIO1_VBUS_CTRL_FRS_RX_VBUS,
- 0));
- RETURN_ERROR(rt1718s_update_bits8(port, RT1718S_GPIO2_VBUS_CTRL,
- RT1718S_GPIO2_VBUS_CTRL_FRS_RX_VBUS,
- 0xFF));
-
- /* Trigger GPIO 1/2 change when FRS signal received */
- RETURN_ERROR(rt1718s_update_bits8(
- port, RT1718S_FRS_CTRL3,
- RT1718S_FRS_CTRL3_FRS_RX_WAIT_GPIO2 |
- RT1718S_FRS_CTRL3_FRS_RX_WAIT_GPIO1,
- RT1718S_FRS_CTRL3_FRS_RX_WAIT_GPIO2 |
- RT1718S_FRS_CTRL3_FRS_RX_WAIT_GPIO1));
- /* Set FRS signal detect time to 46.875us */
- RETURN_ERROR(rt1718s_update_bits8(port, RT1718S_FRS_CTRL1,
- RT1718S_FRS_CTRL1_FRSWAPRX_MASK,
- 0xFF));
-
- /* Disable BC1.2 SRC mode */
- RETURN_ERROR(rt1718s_update_bits8(port, RT1718S_RT2_BC12_SRC_FUNC,
- RT1718S_RT2_BC12_SRC_FUNC_BC12_SRC_EN,
- 0));
-
- return EC_SUCCESS;
-}
-
-__override int board_rt1718s_set_frs_enable(int port, int enable)
-{
- if (port == USBC_PORT_C1)
- /*
- * Use set_flags (implemented by a single i2c write) instead
- * of set_level (= i2c_update) to save one read operation in
- * FRS path.
- */
- rt1718s_gpio_set_flags(port, GPIO_EN_USB_C1_FRS,
- enable ? GPIO_OUT_HIGH : GPIO_OUT_LOW);
- return EC_SUCCESS;
-}
-
-void board_reset_pd_mcu(void)
-{
- CPRINTS("Resetting TCPCs...");
- /* reset C0 ANX3447 */
- /* Assert reset */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_tcpc_rst), 1);
- msleep(1);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_tcpc_rst), 0);
- /* After TEST_R release, anx7447/3447 needs 2ms to finish eFuse
- * loading.
- */
- msleep(2);
-
- /* reset C1 RT1718s */
- rt1718s_sw_reset(USBC_PORT_C1);
-}
-
-/* Used by Vbus discharge common code with CONFIG_USB_PD_DISCHARGE */
-int board_vbus_source_enabled(int port)
-{
- return ppc_is_sourcing_vbus(port);
-}
-
-__override int board_rt1718s_set_snk_enable(int port, int enable)
-{
- if (port == USBC_PORT_C1) {
- rt1718s_gpio_set_level(port, GPIO_EN_USB_C1_SINK, enable);
- }
-
- return EC_SUCCESS;
-}
-
-int board_set_active_charge_port(int port)
-{
- int i;
- bool is_valid_port =
- (port >= 0 && port < board_get_adjusted_usb_pd_port_count());
- /* adjust the actual port count when not the type-c db connected. */
-
- if (!is_valid_port && port != CHARGE_PORT_NONE) {
- return EC_ERROR_INVAL;
- }
-
- if (port == CHARGE_PORT_NONE) {
- CPRINTS("Disabling all charger ports");
-
- /* Disable all ports. */
- for (i = 0; i < board_get_adjusted_usb_pd_port_count(); i++) {
- /*
- * Do not return early if one fails otherwise we can
- * get into a boot loop assertion failure.
- */
- if (ppc_vbus_sink_enable(i, 0)) {
- CPRINTS("Disabling C%d as sink failed.", i);
- }
- }
-
- return EC_SUCCESS;
- }
-
- /* Check if the port is sourcing VBUS. */
- if (ppc_is_sourcing_vbus(port)) {
- CPRINTS("Skip enable C%d", port);
- return EC_ERROR_INVAL;
- }
-
- CPRINTS("New charge port: C%d", port);
-
- /*
- * Turn off the other ports' sink path FETs, before enabling the
- * requested charge port.
- */
- for (i = 0; i < board_get_adjusted_usb_pd_port_count(); i++) {
- if (i == port) {
- continue;
- }
-
- if (ppc_vbus_sink_enable(i, 0)) {
- CPRINTS("C%d: sink path disable failed.", i);
- }
- }
-
- /* Enable requested charge port. */
- if (ppc_vbus_sink_enable(port, 1)) {
- CPRINTS("C%d: sink path enable failed.", port);
- return EC_ERROR_UNKNOWN;
- }
-
- return EC_SUCCESS;
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- uint16_t status = 0;
-
- if (!gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_usb_c0_tcpc_int_odl))) {
- if (!gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_usb_c0_tcpc_rst))) {
- status |= PD_STATUS_TCPC_ALERT_0;
- }
- }
-
- if (!gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_usb_c1_tcpc_int_odl))) {
- return status |= PD_STATUS_TCPC_ALERT_1;
- }
- return status;
-}
-
-void tcpc_alert_event(enum gpio_signal signal)
-{
- int port;
-
- switch (signal) {
- case GPIO_SIGNAL(DT_NODELABEL(gpio_usb_c0_tcpc_int_odl)):
- port = 0;
- break;
- case GPIO_SIGNAL(DT_NODELABEL(gpio_usb_c1_tcpc_int_odl)):
- port = 1;
- break;
- default:
- return;
- }
-
- schedule_deferred_pd_interrupt(port);
-}
-
-void ppc_interrupt(enum gpio_signal signal)
-{
- switch (signal) {
- case GPIO_SIGNAL(DT_NODELABEL(gpio_usb_c0_ppc_int_odl)):
- ppc_chips[0].drv->interrupt(0);
- break;
- case GPIO_SIGNAL(DT_ALIAS(gpio_usb_c1_ppc_int_odl)):
- ppc_chips[1].drv->interrupt(1);
- break;
- default:
- break;
- }
-}
-
-void bc12_interrupt(enum gpio_signal signal)
-{
- usb_charger_task_set_event(0, USB_CHG_EVENT_BC12);
-}
-
-__override int board_get_vbus_voltage(int port)
-{
- int voltage = 0;
- int rv;
-
- switch (port) {
- case USBC_PORT_C0:
- rv = tcpc_config[USBC_PORT_C0].drv->get_vbus_voltage(port,
- &voltage);
- if (rv)
- return 0;
- break;
- case USBC_PORT_C1:
- rt1718s_get_adc(port, RT1718S_ADC_VBUS1, &voltage);
- break;
- default:
- return 0;
- }
- return voltage;
-}
-
-__override int board_nx20p348x_init(int port)
-{
- int rv;
-
- rv = i2c_update8(ppc_chips[port].i2c_port,
- ppc_chips[port].i2c_addr_flags,
- NX20P348X_DEVICE_CONTROL_REG, NX20P348X_CTRL_LDO_SD,
- MASK_SET);
- return rv;
-}
diff --git a/zephyr/program/corsola/src/krabby/charger_workaround.c b/zephyr/program/corsola/src/krabby/charger_workaround.c
deleted file mode 100644
index be046a947b..0000000000
--- a/zephyr/program/corsola/src/krabby/charger_workaround.c
+++ /dev/null
@@ -1,93 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charger.h"
-#include "driver/charger/rt9490.h"
-#include "hooks.h"
-#include "i2c.h"
-#include "system.h"
-
-#include <zephyr/sys/util.h>
-
-/*
- * This workaround and the board id checks only apply to krabby and early
- * tentacruel devices.
- * Newer project should have all of these fixed.
- */
-BUILD_ASSERT(IS_ENABLED(CONFIG_BOARD_KRABBY) ||
- IS_ENABLED(CONFIG_BOARD_TENTACRUEL) || IS_ENABLED(CONFIG_TEST));
-
-/* b/194967754#comment5: work around for IBUS ADC unstable issue */
-static void ibus_adc_workaround(void)
-{
- if (system_get_board_version() != 0) {
- return;
- }
-
- i2c_update8(chg_chips[CHARGER_SOLO].i2c_port,
- chg_chips[CHARGER_SOLO].i2c_addr_flags,
- RT9490_REG_ADC_CHANNEL0, RT9490_VSYS_ADC_DIS, MASK_SET);
-
- rt9490_enable_hidden_mode(CHARGER_SOLO, true);
- /* undocumented registers... */
- i2c_write8(chg_chips[CHARGER_SOLO].i2c_port,
- chg_chips[CHARGER_SOLO].i2c_addr_flags, 0x52, 0xC4);
-
- i2c_update8(chg_chips[CHARGER_SOLO].i2c_port,
- chg_chips[CHARGER_SOLO].i2c_addr_flags,
- RT9490_REG_ADC_CHANNEL0, RT9490_VSYS_ADC_DIS, MASK_CLR);
- rt9490_enable_hidden_mode(CHARGER_SOLO, false);
-}
-
-/* b/214880220#comment44: lock i2c at 400khz */
-static void i2c_speed_workaround(void)
-{
- if (system_get_board_version() >= 3) {
- return;
- }
-
- rt9490_enable_hidden_mode(CHARGER_SOLO, true);
- /* Set to Auto mode, default run at 400kHz */
- i2c_write8(chg_chips[CHARGER_SOLO].i2c_port,
- chg_chips[CHARGER_SOLO].i2c_addr_flags, 0x71, 0x22);
- /* Manually select for 400kHz, valid only when 0x71[7] == 1 */
- i2c_write8(chg_chips[CHARGER_SOLO].i2c_port,
- chg_chips[CHARGER_SOLO].i2c_addr_flags, 0xF7, 0x14);
- rt9490_enable_hidden_mode(CHARGER_SOLO, false);
-}
-
-static void eoc_deglitch_workaround(void)
-{
- if (system_get_board_version() != 1) {
- return;
- }
-
- /* set end-of-charge deglitch time to 2ms */
- i2c_update8(chg_chips[CHARGER_SOLO].i2c_port,
- chg_chips[CHARGER_SOLO].i2c_addr_flags,
- RT9490_REG_ADD_CTRL0, RT9490_TD_EOC, MASK_CLR);
-}
-
-static void disable_safety_timer(void)
-{
- if (system_get_board_version() >= 2) {
- return;
- }
- /* Disable charge timer */
- i2c_write8(chg_chips[CHARGER_SOLO].i2c_port,
- chg_chips[CHARGER_SOLO].i2c_addr_flags,
- RT9490_REG_SAFETY_TMR_CTRL,
- RT9490_EN_TRICHG_TMR | RT9490_EN_PRECHG_TMR |
- RT9490_EN_FASTCHG_TMR);
-}
-
-static void board_rt9490_workaround(void)
-{
- ibus_adc_workaround();
- i2c_speed_workaround();
- eoc_deglitch_workaround();
- disable_safety_timer();
-}
-DECLARE_HOOK(HOOK_INIT, board_rt9490_workaround, HOOK_PRIO_DEFAULT);
diff --git a/zephyr/program/corsola/src/krabby/hooks.c b/zephyr/program/corsola/src/krabby/hooks.c
deleted file mode 100644
index 2582998b9c..0000000000
--- a/zephyr/program/corsola/src/krabby/hooks.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charger.h"
-#include "driver/charger/rt9490.h"
-#include "extpower.h"
-#include "gpio.h"
-#include "hooks.h"
-
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/drivers/pinctrl.h>
-#include <zephyr/init.h>
-
-#include <ap_power/ap_power.h>
-
-#define I2C3_NODE DT_NODELABEL(i2c3)
-PINCTRL_DT_DEFINE(I2C3_NODE);
-
-static void board_i2c3_ctrl(bool enable)
-{
- if (DEVICE_DT_GET(
- DT_GPIO_CTLR_BY_IDX(DT_NODELABEL(i2c3), scl_gpios, 0)) ==
- DEVICE_DT_GET(DT_NODELABEL(gpiof))) {
- const struct pinctrl_dev_config *pcfg =
- PINCTRL_DT_DEV_CONFIG_GET(I2C3_NODE);
-
- if (enable) {
- pinctrl_apply_state(pcfg, PINCTRL_STATE_DEFAULT);
- } else {
- pinctrl_apply_state(pcfg, PINCTRL_STATE_SLEEP);
- }
- }
-}
-
-static void board_enable_i2c3(void)
-{
- board_i2c3_ctrl(1);
-}
-DECLARE_HOOK(HOOK_CHIPSET_PRE_INIT, board_enable_i2c3, HOOK_PRIO_FIRST);
-
-static void board_disable_i2c3(void)
-{
- board_i2c3_ctrl(0);
-}
-DECLARE_HOOK(HOOK_CHIPSET_HARD_OFF, board_disable_i2c3, HOOK_PRIO_LAST);
-
-static void board_suspend_handler(struct ap_power_ev_callback *cb,
- struct ap_power_ev_data data)
-{
- int value;
-
- switch (data.event) {
- default:
- return;
-
- case AP_POWER_RESUME:
- value = 1;
- break;
-
- case AP_POWER_SUSPEND:
- value = 0;
- break;
- }
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_en_5v_usm), value);
-}
-
-static int install_suspend_handler(const struct device *unused)
-{
- static struct ap_power_ev_callback cb;
-
- /*
- * Add a callback for suspend/resume.
- */
- ap_power_ev_init_callback(&cb, board_suspend_handler,
- AP_POWER_RESUME | AP_POWER_SUSPEND);
- ap_power_ev_add_callback(&cb);
- return 0;
-}
-
-SYS_INIT(install_suspend_handler, APPLICATION, 1);
-
-static void board_hook_ac_change(void)
-{
- if (system_get_board_version() >= 1) {
- rt9490_enable_adc(CHARGER_SOLO, extpower_is_present());
- }
-}
-DECLARE_HOOK(HOOK_AC_CHANGE, board_hook_ac_change, HOOK_PRIO_DEFAULT);
-DECLARE_HOOK(HOOK_INIT, board_hook_ac_change, HOOK_PRIO_LAST);
diff --git a/zephyr/program/corsola/src/krabby/i2c.c b/zephyr/program/corsola/src/krabby/i2c.c
deleted file mode 100644
index 66b88b09b0..0000000000
--- a/zephyr/program/corsola/src/krabby/i2c.c
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "i2c.h"
-#include "i2c/i2c.h"
-
-/* Krabby board specific i2c implementation */
-
-#ifdef CONFIG_PLATFORM_EC_I2C_PASSTHRU_RESTRICTED
-int board_allow_i2c_passthru(const struct i2c_cmd_desc_t *cmd_desc)
-{
- return (i2c_get_device_for_port(cmd_desc->port) ==
- i2c_get_device_for_port(I2C_PORT_VIRTUAL_BATTERY) ||
- i2c_get_device_for_port(cmd_desc->port) ==
- i2c_get_device_for_port(I2C_PORT_EEPROM));
-}
-#endif
diff --git a/zephyr/program/corsola/src/krabby/keyboard_magikarp.c b/zephyr/program/corsola/src/krabby/keyboard_magikarp.c
deleted file mode 100644
index bcb706bba3..0000000000
--- a/zephyr/program/corsola/src/krabby/keyboard_magikarp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ec_commands.h"
-
-static const struct ec_response_keybd_config magikarp_kb_legacy = {
- .num_top_row_keys = 10,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_REFRESH, /* T2 */
- TK_FULLSCREEN, /* T3 */
- TK_OVERVIEW, /* T4 */
- TK_SNAPSHOT, /* T5 */
- TK_BRIGHTNESS_DOWN, /* T6 */
- TK_BRIGHTNESS_UP, /* T7 */
- TK_VOL_MUTE, /* T8 */
- TK_VOL_DOWN, /* T9 */
- TK_VOL_UP, /* T10 */
- },
- .capabilities = KEYBD_CAP_SCRNLOCK_KEY,
-};
-
-__override const struct ec_response_keybd_config *
-board_vivaldi_keybd_config(void)
-{
- return &magikarp_kb_legacy;
-}
diff --git a/zephyr/program/corsola/src/krabby/ppc_krabby.c b/zephyr/program/corsola/src/krabby/ppc_krabby.c
deleted file mode 100644
index dbbfee57b5..0000000000
--- a/zephyr/program/corsola/src/krabby/ppc_krabby.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Krabby PPC/BC12 (RT1739) configuration */
-
-#include "baseboard_usbc_config.h"
-#include "driver/ppc/rt1739.h"
-#include "driver/ppc/syv682x.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "variant_db_detection.h"
-
-void c0_bc12_interrupt(enum gpio_signal signal)
-{
- rt1739_interrupt(0);
-}
-
-static void board_usbc_init(void)
-{
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_ppc_bc12));
-}
-DECLARE_HOOK(HOOK_INIT, board_usbc_init, HOOK_PRIO_POST_DEFAULT);
-
-void ppc_interrupt(enum gpio_signal signal)
-{
- if (signal == GPIO_SIGNAL(DT_ALIAS(gpio_usb_c1_ppc_int_odl))) {
- syv682x_interrupt(1);
- }
-}
diff --git a/zephyr/program/corsola/src/krabby/ppc_magikarp.c b/zephyr/program/corsola/src/krabby/ppc_magikarp.c
deleted file mode 100644
index 41cce3f73d..0000000000
--- a/zephyr/program/corsola/src/krabby/ppc_magikarp.c
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Tentacruel PPC/BC12 (mixed RT1739 or PI3USB9201+SYV682X) configuration */
-
-#include "baseboard_usbc_config.h"
-#include "console.h"
-#include "cros_board_info.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "usbc/ppc.h"
-#include "variant_db_detection.h"
-
-#include <zephyr/logging/log.h>
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTS(format, args...) cprints(CC_SYSTEM, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_SYSTEM, format, ##args)
-
-void bc12_interrupt(enum gpio_signal signal)
-{
- usb_charger_task_set_event(0, USB_CHG_EVENT_BC12);
-}
-
-static void board_usbc_init(void)
-{
- /* Enable PPC interrupts. */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_ppc));
-
- /* Enable BC1.2 interrupts. */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_bc12));
-}
-DECLARE_HOOK(HOOK_INIT, board_usbc_init, HOOK_PRIO_POST_DEFAULT);
-
-void ppc_interrupt(enum gpio_signal signal)
-{
- if (signal == GPIO_SIGNAL(DT_NODELABEL(usb_c0_ppc_int_odl))) {
- syv682x_interrupt(0);
- } else if (signal == GPIO_SIGNAL(DT_ALIAS(gpio_usb_c1_ppc_int_odl))) {
- syv682x_interrupt(1);
- }
-}
diff --git a/zephyr/program/corsola/src/krabby/ppc_tentacruel.c b/zephyr/program/corsola/src/krabby/ppc_tentacruel.c
deleted file mode 100644
index 877b9940b4..0000000000
--- a/zephyr/program/corsola/src/krabby/ppc_tentacruel.c
+++ /dev/null
@@ -1,89 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Tentacruel PPC/BC12 (mixed RT1739 or PI3USB9201+SYV682X) configuration */
-
-#include "baseboard_usbc_config.h"
-#include "console.h"
-#include "cros_board_info.h"
-#include "driver/usb_mux/ps8743.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "usb_mux.h"
-#include "usbc/ppc.h"
-#include "variant_db_detection.h"
-
-#include <zephyr/logging/log.h>
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTS(format, args...) cprints(CC_SYSTEM, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_SYSTEM, format, ##args)
-
-LOG_MODULE_REGISTER(alt_dev_replacement);
-
-#define BOARD_VERSION_UNKNOWN 0xffffffff
-
-/* Check board version to decide which ppc/bc12 is used. */
-static bool board_has_syv_ppc(void)
-{
- static uint32_t board_version = BOARD_VERSION_UNKNOWN;
-
- if (board_version == BOARD_VERSION_UNKNOWN) {
- if (cbi_get_board_version(&board_version) != EC_SUCCESS) {
- LOG_ERR("Failed to get board version.");
- board_version = 0;
- }
- }
-
- return (board_version >= 3);
-}
-
-static void check_alternate_devices(void)
-{
- /* Configure the PPC driver */
- if (board_has_syv_ppc())
- /* Arg is the USB port number */
- PPC_ENABLE_ALTERNATE(0);
-}
-DECLARE_HOOK(HOOK_INIT, check_alternate_devices, HOOK_PRIO_DEFAULT);
-
-void bc12_interrupt(enum gpio_signal signal)
-{
- usb_charger_task_set_event(0, USB_CHG_EVENT_BC12);
-}
-
-/* USB Mux C1 : board_init of PS8743 */
-int ps8743_eq_c1_setting(void)
-{
- ps8743_write(usb_muxes[1].mux, PS8743_REG_USB_EQ_RX, 0x90);
- return EC_SUCCESS;
-}
-
-static void board_usbc_init(void)
-{
- if (board_has_syv_ppc()) {
- /* Enable PPC interrupts. */
- gpio_enable_dt_interrupt(
- GPIO_INT_FROM_NODELABEL(int_usb_c0_ppc));
-
- /* Enable BC1.2 interrupts. */
- gpio_enable_dt_interrupt(
- GPIO_INT_FROM_NODELABEL(int_usb_c0_bc12));
- } else {
- gpio_enable_dt_interrupt(
- GPIO_INT_FROM_NODELABEL(int_usb_c0_ppc));
- }
-}
-DECLARE_HOOK(HOOK_INIT, board_usbc_init, HOOK_PRIO_POST_DEFAULT);
-
-void ppc_interrupt(enum gpio_signal signal)
-{
- if (signal == GPIO_SIGNAL(DT_NODELABEL(usb_c0_ppc_int_odl))) {
- ppc_chips[0].drv->interrupt(0);
- }
- if (signal == GPIO_SIGNAL(DT_ALIAS(gpio_usb_c1_ppc_int_odl))) {
- ppc_chips[1].drv->interrupt(1);
- }
-}
diff --git a/zephyr/program/corsola/src/krabby/sensor_magikarp.c b/zephyr/program/corsola/src/krabby/sensor_magikarp.c
deleted file mode 100644
index 48e6f6c23c..0000000000
--- a/zephyr/program/corsola/src/krabby/sensor_magikarp.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "accelgyro.h"
-#include "common.h"
-#include "cros_cbi.h"
-#include "driver/accelgyro_bmi323.h"
-#include "driver/accelgyro_icm42607.h"
-#include "hooks.h"
-#include "motionsense_sensors.h"
-
-void motion_interrupt(enum gpio_signal signal)
-{
- uint32_t val;
-
- cros_cbi_get_fw_config(FW_BASE_GYRO, &val);
- if (val == FW_BASE_ICM42607) {
- icm42607_interrupt(signal);
- } else if (val == FW_BASE_BMI323) {
- bmi3xx_interrupt(signal);
- }
-}
-
-static void motionsense_init(void)
-{
- uint32_t val;
-
- cros_cbi_get_fw_config(FW_BASE_GYRO, &val);
- if (val == FW_BASE_ICM42607) {
- ccprints("BASE ACCEL is ICM42607");
- } else if (val == FW_BASE_BMI323) {
- MOTIONSENSE_ENABLE_ALTERNATE(alt_base_accel);
- MOTIONSENSE_ENABLE_ALTERNATE(alt_base_gyro);
- ccprints("BASE ACCEL IS BMI323");
- } else {
- ccprints("no motionsense");
- }
-}
-DECLARE_HOOK(HOOK_INIT, motionsense_init, HOOK_PRIO_DEFAULT);
diff --git a/zephyr/program/corsola/src/krabby/sensor_tentacruel.c b/zephyr/program/corsola/src/krabby/sensor_tentacruel.c
deleted file mode 100644
index 48e6f6c23c..0000000000
--- a/zephyr/program/corsola/src/krabby/sensor_tentacruel.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "accelgyro.h"
-#include "common.h"
-#include "cros_cbi.h"
-#include "driver/accelgyro_bmi323.h"
-#include "driver/accelgyro_icm42607.h"
-#include "hooks.h"
-#include "motionsense_sensors.h"
-
-void motion_interrupt(enum gpio_signal signal)
-{
- uint32_t val;
-
- cros_cbi_get_fw_config(FW_BASE_GYRO, &val);
- if (val == FW_BASE_ICM42607) {
- icm42607_interrupt(signal);
- } else if (val == FW_BASE_BMI323) {
- bmi3xx_interrupt(signal);
- }
-}
-
-static void motionsense_init(void)
-{
- uint32_t val;
-
- cros_cbi_get_fw_config(FW_BASE_GYRO, &val);
- if (val == FW_BASE_ICM42607) {
- ccprints("BASE ACCEL is ICM42607");
- } else if (val == FW_BASE_BMI323) {
- MOTIONSENSE_ENABLE_ALTERNATE(alt_base_accel);
- MOTIONSENSE_ENABLE_ALTERNATE(alt_base_gyro);
- ccprints("BASE ACCEL IS BMI323");
- } else {
- ccprints("no motionsense");
- }
-}
-DECLARE_HOOK(HOOK_INIT, motionsense_init, HOOK_PRIO_DEFAULT);
diff --git a/zephyr/program/corsola/src/krabby/temp_tentacruel.c b/zephyr/program/corsola/src/krabby/temp_tentacruel.c
deleted file mode 100644
index 08d5204e28..0000000000
--- a/zephyr/program/corsola/src/krabby/temp_tentacruel.c
+++ /dev/null
@@ -1,129 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charge_state.h"
-#include "charger.h"
-#include "common.h"
-#include "config.h"
-#include "console.h"
-#include "driver/charger/rt9490.h"
-#include "hooks.h"
-#include "temp_sensor/temp_sensor.h"
-#include "thermal.h"
-#include "util.h"
-
-#define NUM_CURRENT_LEVELS ARRAY_SIZE(current_table)
-#define TEMP_THRESHOLD 50
-#define TEMP_BUFF_SIZE 60
-#define KEEP_TIME 5
-
-BUILD_ASSERT(IS_ENABLED(CONFIG_BOARD_TENTACRUEL) || IS_ENABLED(CONFIG_TEST));
-/* calculate current average temperature */
-static int average_tempature(void)
-{
- static int temp_history_buffer[TEMP_BUFF_SIZE];
- static int buff_ptr;
- static int temp_sum;
- static int past_temp;
- static int avg_temp;
- int cur_temp, t;
-
- temp_sensor_read(TEMP_SENSOR_ID(DT_NODELABEL(temp_charger)), &t);
- cur_temp = K_TO_C(t);
- past_temp = temp_history_buffer[buff_ptr];
- temp_history_buffer[buff_ptr] = cur_temp;
- temp_sum = temp_sum + temp_history_buffer[buff_ptr] - past_temp;
- buff_ptr++;
- if (buff_ptr >= TEMP_BUFF_SIZE) {
- buff_ptr = 0;
- }
- /* Calculate per minute temperature.
- * It's expected low temperature when the first 60 seconds.
- */
- avg_temp = temp_sum / TEMP_BUFF_SIZE;
- return avg_temp;
-}
-
-static int current_level;
-
-/* Limit charging current table : 3600/3000/2400/1800
- * note this should be in descending order.
- */
-static uint16_t current_table[] = {
- 3600,
- 3000,
- 2400,
- 1600,
-};
-
-/* Called by hook task every hook second (1 sec) */
-static void current_update(void)
-{
- int temp;
- static uint8_t uptime;
- static uint8_t dntime;
-
- temp = average_tempature();
-#ifndef CONFIG_TEST
- if (charge_get_state() == PWR_STATE_DISCHARGE) {
- current_level = 0;
- uptime = 0;
- dntime = 0;
- return;
- }
-#endif
- if (temp >= TEMP_THRESHOLD) {
- dntime = 0;
- if (uptime < KEEP_TIME) {
- uptime++;
- } else {
- uptime = 0;
- current_level++;
- }
- } else if (current_level != 0 && temp < TEMP_THRESHOLD) {
- uptime = 0;
- if (dntime < KEEP_TIME) {
- dntime++;
- } else {
- dntime = 0;
- current_level--;
- }
- } else {
- uptime = 0;
- dntime = 0;
- }
- if (current_level > NUM_CURRENT_LEVELS) {
- current_level = NUM_CURRENT_LEVELS;
- }
-}
-DECLARE_HOOK(HOOK_SECOND, current_update, HOOK_PRIO_DEFAULT);
-
-int charger_profile_override(struct charge_state_data *curr)
-{
- /*
- * Precharge must be executed when communication is failed on
- * dead battery.
- */
- if (!(curr->batt.flags & BATT_FLAG_RESPONSIVE))
- return 0;
- if (current_level != 0) {
- if (curr->requested_current > current_table[current_level - 1])
- curr->requested_current =
- current_table[current_level - 1];
- }
- return 0;
-}
-
-enum ec_status charger_profile_override_get_param(uint32_t param,
- uint32_t *value)
-{
- return EC_RES_INVALID_PARAM;
-}
-
-enum ec_status charger_profile_override_set_param(uint32_t param,
- uint32_t value)
-{
- return EC_RES_INVALID_PARAM;
-}
diff --git a/zephyr/program/corsola/src/krabby/usb_pd_policy.c b/zephyr/program/corsola/src/krabby/usb_pd_policy.c
deleted file mode 100644
index 8f2a2c3515..0000000000
--- a/zephyr/program/corsola/src/krabby/usb_pd_policy.c
+++ /dev/null
@@ -1,88 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "adc.h"
-#include "charge_manager.h"
-#include "chipset.h"
-#include "usb_charge.h"
-#include "usb_pd.h"
-#include "usbc_ppc.h"
-
-int pd_snk_is_vbus_provided(int port)
-{
- static atomic_t vbus_prev[CONFIG_USB_PD_PORT_MAX_COUNT];
- int vbus;
-
- /*
- * (b:181203590#comment20) TODO(yllin): use
- * PD_VSINK_DISCONNECT_PD for non-5V case.
- */
- vbus = adc_read_channel(board_get_vbus_adc(port)) >=
- PD_V_SINK_DISCONNECT_MAX;
-
-#ifdef CONFIG_USB_CHARGER
- /*
- * There's no PPC to inform VBUS change for usb_charger, so inform
- * the usb_charger now.
- */
- if (!!(vbus_prev[port] != vbus)) {
- usb_charger_vbus_change(port, vbus);
- }
-
- if (vbus) {
- atomic_or(&vbus_prev[port], 1);
- } else {
- atomic_clear(&vbus_prev[port]);
- }
-#endif
- return vbus;
-}
-
-void pd_power_supply_reset(int port)
-{
- int prev_en;
-
- prev_en = ppc_is_sourcing_vbus(port);
-
- /* Disable VBUS. */
- ppc_vbus_source_enable(port, 0);
-
- /* Enable discharge if we were previously sourcing 5V */
- if (prev_en) {
- pd_set_vbus_discharge(port, 1);
- }
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- int rv;
-
- /* Disable charging. */
- rv = ppc_vbus_sink_enable(port, 0);
- if (rv) {
- return rv;
- }
-
- pd_set_vbus_discharge(port, 0);
-
- /* Provide Vbus. */
- rv = ppc_vbus_source_enable(port, 1);
- if (rv) {
- return rv;
- }
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-int board_vbus_source_enabled(int port)
-{
- return ppc_is_sourcing_vbus(port);
-}
diff --git a/zephyr/program/corsola/src/krabby/usbc_config.c b/zephyr/program/corsola/src/krabby/usbc_config.c
deleted file mode 100644
index ab5888616e..0000000000
--- a/zephyr/program/corsola/src/krabby/usbc_config.c
+++ /dev/null
@@ -1,142 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Krabby board-specific USB-C configuration */
-
-#include "adc.h"
-#include "baseboard_usbc_config.h"
-#include "charge_manager.h"
-#include "console.h"
-#include "driver/tcpm/it83xx_pd.h"
-#include "driver/usb_mux/tusb1064.h"
-#include "i2c.h"
-#include "usb_pd.h"
-#include "usbc_ppc.h"
-#include "variant_db_detection.h"
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTS(format, args...) cprints(CC_SYSTEM, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_SYSTEM, format, ##args)
-
-int tusb1064_mux_1_board_init(const struct usb_mux *me)
-{
- int rv;
-
- rv = i2c_write8(me->i2c_port, me->i2c_addr_flags,
- TUSB1064_REG_DP1DP3EQ_SEL,
- TUSB1064_DP1EQ(TUSB1064_DP_EQ_RX_8_9_DB) |
- TUSB1064_DP3EQ(TUSB1064_DP_EQ_RX_5_4_DB));
- if (rv)
- return rv;
-
- /* Enable EQ_OVERRIDE so the gain registers are used */
- return i2c_update8(me->i2c_port, me->i2c_addr_flags,
- TUSB1064_REG_GENERAL, REG_GENERAL_EQ_OVERRIDE,
- MASK_SET);
-}
-
-#ifdef CONFIG_USB_PD_TCPM_ITE_ON_CHIP
-const struct cc_para_t *board_get_cc_tuning_parameter(enum usbpd_port port)
-{
- const static struct cc_para_t
- cc_parameter[CONFIG_USB_PD_ITE_ACTIVE_PORT_COUNT] = {
- {
- .rising_time =
- IT83XX_TX_PRE_DRIVING_TIME_1_UNIT,
- .falling_time =
- IT83XX_TX_PRE_DRIVING_TIME_2_UNIT,
- },
- {
- .rising_time =
- IT83XX_TX_PRE_DRIVING_TIME_1_UNIT,
- .falling_time =
- IT83XX_TX_PRE_DRIVING_TIME_2_UNIT,
- },
- };
-
- return &cc_parameter[port];
-}
-#endif
-
-void board_reset_pd_mcu(void)
-{
- /*
- * C0 & C1: TCPC is embedded in the EC and processes interrupts in the
- * chip code (it83xx/intc.c)
- */
-}
-
-int board_set_active_charge_port(int port)
-{
- int i;
- int is_valid_port =
- (port >= 0 && port < board_get_adjusted_usb_pd_port_count());
- /* adjust the actual port count when not the type-c db connected. */
-
- if (!is_valid_port && port != CHARGE_PORT_NONE) {
- return EC_ERROR_INVAL;
- }
-
- if (port == CHARGE_PORT_NONE) {
- CPRINTS("Disabling all charger ports");
-
- /* Disable all ports. */
- for (i = 0; i < board_get_adjusted_usb_pd_port_count(); i++) {
- /*
- * Do not return early if one fails otherwise we can
- * get into a boot loop assertion failure.
- */
- if (ppc_vbus_sink_enable(i, 0)) {
- CPRINTS("Disabling C%d as sink failed.", i);
- }
- }
-
- return EC_SUCCESS;
- }
-
- /* Check if the port is sourcing VBUS. */
- if (ppc_is_sourcing_vbus(port)) {
- CPRINTS("Skip enable C%d", port);
- return EC_ERROR_INVAL;
- }
-
- CPRINTS("New charge port: C%d", port);
-
- /*
- * Turn off the other ports' sink path FETs, before enabling the
- * requested charge port.
- */
- for (i = 0; i < board_get_adjusted_usb_pd_port_count(); i++) {
- if (i == port) {
- continue;
- }
-
- if (ppc_vbus_sink_enable(i, 0)) {
- CPRINTS("C%d: sink path disable failed.", i);
- }
- }
-
- /* Enable requested charge port. */
- if (ppc_vbus_sink_enable(port, 1)) {
- CPRINTS("C%d: sink path enable failed.", port);
- return EC_ERROR_UNKNOWN;
- }
-
- return EC_SUCCESS;
-}
-
-#ifdef CONFIG_USB_PD_VBUS_MEASURE_ADC_EACH_PORT
-enum adc_channel board_get_vbus_adc(int port)
-{
- if (port == 0) {
- return ADC_VBUS_C0;
- }
- if (port == 1) {
- return ADC_VBUS_C1;
- }
- CPRINTSUSB("Unknown vbus adc port id: %d", port);
- return ADC_VBUS_C0;
-}
-#endif /* CONFIG_USB_PD_VBUS_MEASURE_ADC_EACH_PORT */
diff --git a/zephyr/program/corsola/src/usb_pd_policy.c b/zephyr/program/corsola/src/usb_pd_policy.c
deleted file mode 100644
index a5f3f11134..0000000000
--- a/zephyr/program/corsola/src/usb_pd_policy.c
+++ /dev/null
@@ -1,225 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "atomic.h"
-#include "baseboard_usbc_config.h"
-#include "chipset.h"
-#include "console.h"
-#include "hooks.h"
-#include "timer.h"
-#include "typec_control.h"
-#include "usb_dp_alt_mode.h"
-#include "usb_mux.h"
-#include "usb_pd.h"
-#include "usbc_ppc.h"
-
-#define CPRINTS(format, args...) cprints(CC_USBPD, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_USBPD, format, ##args)
-
-static int active_aux_port = -1;
-
-int pd_check_vconn_swap(int port)
-{
- /* Allow Vconn swap if AP is on. */
- return chipset_in_state(CHIPSET_STATE_SUSPEND | CHIPSET_STATE_ON);
-}
-
-static void set_dp_aux_path_sel(int port)
-{
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(dp_aux_path_sel), port);
- CPRINTS("Set DP_AUX_PATH_SEL: %d", port);
-}
-
-int svdm_get_hpd_gpio(int port)
-{
- /* HPD is low active, inverse the result */
- return !gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(ec_ap_dp_hpd_odl));
-}
-
-static void reset_aux_deferred(void)
-{
- if (active_aux_port == -1)
- /* reset to 1 for lower power consumption. */
- set_dp_aux_path_sel(1);
-}
-DECLARE_DEFERRED(reset_aux_deferred);
-
-void svdm_set_hpd_gpio(int port, int en)
-{
- /*
- * HPD is low active, inverse the en.
- *
- * Implement FCFS policy:
- * 1) Enable hpd if no active port.
- * 2) Disable hpd if active port is the given port.
- */
- if (en && active_aux_port < 0) {
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(ec_ap_dp_hpd_odl), 0);
- active_aux_port = port;
- hook_call_deferred(&reset_aux_deferred_data, -1);
- }
-
- if (!en && active_aux_port == port) {
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(ec_ap_dp_hpd_odl), 1);
- active_aux_port = -1;
- /*
- * This might be a HPD debounce to send a HPD IRQ (500us), so
- * do not reset the aux path immediately. Defer this call and
- * re-check if this is a real disable.
- */
- hook_call_deferred(&reset_aux_deferred_data, 1 * MSEC);
- }
-}
-
-__override int svdm_dp_config(int port, uint32_t *payload)
-{
- int opos = pd_alt_mode(port, TCPCI_MSG_SOP, USB_SID_DISPLAYPORT);
- uint8_t pin_mode = get_dp_pin_mode(port);
- mux_state_t mux_mode = svdm_dp_get_mux_mode(port);
- int mf_pref = PD_VDO_DPSTS_MF_PREF(dp_status[port]);
-
- if (!pin_mode) {
- return 0;
- }
-
- CPRINTS("pin_mode: %x, mf: %d, mux: %d", pin_mode, mf_pref, mux_mode);
- /*
- * Defer setting the usb_mux until HPD goes high, svdm_dp_attention().
- * The AP only supports one DP phy. An external DP mux switches between
- * the two ports. Should switch those muxes when it is really used,
- * i.e. HPD high; otherwise, the real use case is preempted, like:
- * (1) plug a dongle without monitor connected to port-0,
- * (2) plug a dongle without monitor connected to port-1,
- * (3) plug a monitor to the port-1 dongle.
- */
-
- payload[0] =
- VDO(USB_SID_DISPLAYPORT, 1, CMD_DP_CONFIG | VDO_OPOS(opos));
- payload[1] = VDO_DP_CFG(pin_mode, /* pin mode */
- 1, /* DPv1.3 signaling */
- 2); /* UFP connected */
- return 2;
-};
-
-__override void svdm_dp_post_config(int port)
-{
- mux_state_t mux_mode = svdm_dp_get_mux_mode(port);
-
- typec_set_sbu(port, true);
-
- /*
- * Prior to post-config, the mux will be reset to safe mode, and this
- * will break mux config and aux path config we did in the first DP
- * status command. Only enable this if the port is the current aux-port.
- */
- if (port == active_aux_port) {
- usb_mux_set(port, mux_mode, USB_SWITCH_CONNECT,
- polarity_rm_dts(pd_get_polarity(port)));
- usb_mux_hpd_update(port, USB_PD_MUX_HPD_LVL |
- USB_PD_MUX_HPD_IRQ_DEASSERTED);
- }
-
- dp_flags[port] |= DP_FLAGS_DP_ON;
-}
-
-int corsola_is_dp_muxable(int port)
-{
- int i;
-
- for (i = 0; i < board_get_usb_pd_port_count(); i++) {
- if (i != port) {
- if (usb_mux_get(i) & USB_PD_MUX_DP_ENABLED) {
- return 0;
- }
- }
- }
-
- return 1;
-}
-
-__override int svdm_dp_attention(int port, uint32_t *payload)
-{
- int lvl = PD_VDO_DPSTS_HPD_LVL(payload[1]);
- int irq = PD_VDO_DPSTS_HPD_IRQ(payload[1]);
-#ifdef CONFIG_USB_PD_DP_HPD_GPIO
- int cur_lvl = svdm_get_hpd_gpio(port);
-#endif /* CONFIG_USB_PD_DP_HPD_GPIO */
- mux_state_t mux_state;
-
- dp_status[port] = payload[1];
-
- if (!corsola_is_dp_muxable(port)) {
- /* TODO(waihong): Info user? */
- CPRINTS("p%d: The other port is already muxed.", port);
- return 0; /* nak */
- }
-
- if (lvl) {
- set_dp_aux_path_sel(port);
-
- usb_mux_set(port, USB_PD_MUX_DOCK, USB_SWITCH_CONNECT,
- polarity_rm_dts(pd_get_polarity(port)));
- } else {
- usb_mux_set(port, USB_PD_MUX_USB_ENABLED, USB_SWITCH_CONNECT,
- polarity_rm_dts(pd_get_polarity(port)));
- }
-
- if (chipset_in_state(CHIPSET_STATE_ANY_SUSPEND) && (irq || lvl)) {
- /*
- * Wake up the AP. IRQ or level high indicates a DP sink is now
- * present.
- */
- if (IS_ENABLED(CONFIG_MKBP_EVENT)) {
- pd_notify_dp_alt_mode_entry(port);
- }
- }
-
-#ifdef CONFIG_USB_PD_DP_HPD_GPIO
- if (irq && !lvl) {
- /*
- * IRQ can only be generated when the level is high, because
- * the IRQ is signaled by a short low pulse from the high level.
- */
- CPRINTF("ERR:HPD:IRQ&LOW\n");
- return 0; /* nak */
- }
-
- if (irq && cur_lvl) {
- uint64_t now = get_time().val;
- /* wait for the minimum spacing between IRQ_HPD if needed */
- if (now < svdm_hpd_deadline[port]) {
- usleep(svdm_hpd_deadline[port] - now);
- }
-
- /* generate IRQ_HPD pulse */
- svdm_set_hpd_gpio(port, 0);
- /*
- * b/171172053#comment14: since the HPD_DSTREAM_DEBOUNCE_IRQ is
- * very short (500us), we can use udelay instead of usleep for
- * more stable pulse period.
- */
- udelay(HPD_DSTREAM_DEBOUNCE_IRQ);
- svdm_set_hpd_gpio(port, 1);
- } else {
- svdm_set_hpd_gpio(port, lvl);
- }
-
- /* set the minimum time delay (2ms) for the next HPD IRQ */
- svdm_hpd_deadline[port] = get_time().val + HPD_USTREAM_DEBOUNCE_LVL;
-#endif /* CONFIG_USB_PD_DP_HPD_GPIO */
-
- mux_state = (lvl ? USB_PD_MUX_HPD_LVL : USB_PD_MUX_HPD_LVL_DEASSERTED) |
- (irq ? USB_PD_MUX_HPD_IRQ : USB_PD_MUX_HPD_IRQ_DEASSERTED);
- usb_mux_hpd_update(port, mux_state);
-
-#ifdef USB_PD_PORT_TCPC_MST
- if (port == USB_PD_PORT_TCPC_MST) {
- baseboard_mst_enable_control(port, lvl);
- }
-#endif
-
- /* ack */
- return 1;
-}
diff --git a/zephyr/program/corsola/src/usbc_config.c b/zephyr/program/corsola/src/usbc_config.c
deleted file mode 100644
index 93eb72a48f..0000000000
--- a/zephyr/program/corsola/src/usbc_config.c
+++ /dev/null
@@ -1,247 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Corsola baseboard-specific USB-C configuration */
-
-#include "adc.h"
-#include "baseboard_usbc_config.h"
-#include "button.h"
-#include "charge_state_v2.h"
-#include "charger.h"
-#include "console.h"
-#include "ec_commands.h"
-#include "extpower.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "i2c.h"
-#include "lid_switch.h"
-#include "power.h"
-#include "power_button.h"
-#include "ppc/syv682x_public.h"
-#include "spi.h"
-#include "switch.h"
-#include "tablet_mode.h"
-#include "task.h"
-#include "uart.h"
-#include "usb_charge.h"
-#include "usb_mux.h"
-#include "usb_pd_tcpm.h"
-#include "usb_tc_sm.h"
-#include "usbc/usb_muxes.h"
-#include "usbc_ppc.h"
-#include "variant_db_detection.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#include <ap_power/ap_power.h>
-
-#define CPRINTS(format, args...) cprints(CC_SYSTEM, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_SYSTEM, format, ##args)
-
-/* a flag for indicating the tasks are inited. */
-static bool tasks_inited;
-
-/* Baseboard */
-static void baseboard_init(void)
-{
-#ifdef CONFIG_VARIANT_CORSOLA_USBA
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usba));
-#endif
- /* If CCD mode has enabled before init, force the ccd_interrupt. */
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_ccd_mode_odl))) {
- ccd_interrupt(GPIO_CCD_MODE_ODL);
- }
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_ccd_mode_odl));
-}
-DECLARE_HOOK(HOOK_INIT, baseboard_init, HOOK_PRIO_PRE_DEFAULT);
-
-__override uint8_t board_get_usb_pd_port_count(void)
-{
- /* This function returns the PORT_COUNT+1 when HDMI db is connected.
- * This is a trick to ensure the usb_mux_set being set properley.
- * HDMI display functions using the USB virtual mux to * communicate
- * with the DP bridge.
- */
- if (corsola_get_db_type() == CORSOLA_DB_HDMI) {
- if (tasks_inited) {
- return CONFIG_USB_PD_PORT_MAX_COUNT;
- } else {
- return CONFIG_USB_PD_PORT_MAX_COUNT - 1;
- }
- } else if (corsola_get_db_type() == CORSOLA_DB_NONE) {
- return CONFIG_USB_PD_PORT_MAX_COUNT - 1;
- }
-
- return CONFIG_USB_PD_PORT_MAX_COUNT;
-}
-
-uint8_t board_get_adjusted_usb_pd_port_count(void)
-{
- if (corsola_get_db_type() == CORSOLA_DB_TYPEC) {
- return CONFIG_USB_PD_PORT_MAX_COUNT;
- } else {
- return CONFIG_USB_PD_PORT_MAX_COUNT - 1;
- }
-}
-
-/* USB-A */
-void usb_a0_interrupt(enum gpio_signal signal)
-{
- enum usb_charge_mode mode = gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(
- gpio_ap_xhci_init_done)) ?
- USB_CHARGE_MODE_ENABLED :
- USB_CHARGE_MODE_DISABLED;
-
- const int xhci_stat = gpio_get_level(signal);
-
- for (int i = 0; i < USB_PORT_COUNT; i++) {
- usb_charge_set_mode(i, mode, USB_ALLOW_SUSPEND_CHARGE);
- }
-
- for (int i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- /*
- * Enable DRP toggle after XHCI inited. This is used to follow
- * USB 3.2 spec 10.3.1.1.
- */
- if (xhci_stat) {
- pd_set_dual_role(i, PD_DRP_TOGGLE_ON);
- } else if (tc_is_attached_src(i)) {
- /*
- * This is a AP reset S0->S0 transition.
- * We should set the role back to sink.
- */
- pd_set_dual_role(i, PD_DRP_FORCE_SINK);
- }
- }
-}
-
-__override enum pd_dual_role_states pd_get_drp_state_in_s0(void)
-{
- if (gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_ap_xhci_init_done))) {
- return PD_DRP_TOGGLE_ON;
- } else {
- return PD_DRP_FORCE_SINK;
- }
-}
-
-void board_pd_vconn_ctrl(int port, enum usbpd_cc_pin cc_pin, int enabled)
-{
- /*
- * We ignore the cc_pin and PPC vconn because polarity and PPC vconn
- * should already be set correctly in the PPC driver via the pd
- * state machine.
- */
-}
-
-/* HDMI/TYPE-C function shared subboard interrupt */
-void x_ec_interrupt(enum gpio_signal signal)
-{
- int sub = corsola_get_db_type();
-
- if (sub == CORSOLA_DB_TYPEC) {
- /* C1: PPC interrupt */
- ppc_interrupt(signal);
- } else if (sub == CORSOLA_DB_HDMI) {
- hdmi_hpd_interrupt(signal);
- } else {
- CPRINTS("Undetected subboard interrupt.");
- }
-}
-
-static void board_hdmi_handler(struct ap_power_ev_callback *cb,
- struct ap_power_ev_data data)
-{
- int value;
-
- switch (data.event) {
- default:
- return;
-
- case AP_POWER_RESUME:
- value = 1;
- break;
-
- case AP_POWER_SUSPEND:
- value = 0;
- break;
- }
- gpio_pin_set_dt(GPIO_DT_FROM_ALIAS(gpio_en_hdmi_pwr), value);
- gpio_pin_set_dt(GPIO_DT_FROM_ALIAS(gpio_ps185_pwrdn_odl), value);
-}
-
-static void tasks_init_deferred(void)
-{
- tasks_inited = true;
- if (corsola_get_db_type() == CORSOLA_DB_HDMI) {
- /* If the HDMI port is plugged on-boot, and the usb_mux won't
- * be configured before the task inited. Re-invoke the
- * HPD configuration after task inited.
- */
- ps185_hdmi_hpd_mux_set();
- }
-}
-DECLARE_DEFERRED(tasks_init_deferred);
-
-static void baseboard_x_ec_gpio2_init(void)
-{
- static struct ppc_drv virtual_ppc_drv = { 0 };
- static struct tcpm_drv virtual_tcpc_drv = { 0 };
- static struct bc12_drv virtual_bc12_drv = { 0 };
-
- /* no sub board */
- if (corsola_get_db_type() == CORSOLA_DB_NONE) {
- return;
- }
-
- /* type-c: USB_C1_PPC_INT_ODL / hdmi: PS185_EC_DP_HPD */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_x_ec_gpio2));
-
- if (corsola_get_db_type() == CORSOLA_DB_TYPEC) {
- gpio_pin_interrupt_configure_dt(
- GPIO_DT_FROM_ALIAS(gpio_usb_c1_ppc_int_odl),
- GPIO_INT_EDGE_FALLING);
- return;
- }
- if (corsola_get_db_type() == CORSOLA_DB_HDMI) {
- static struct ap_power_ev_callback cb;
-
- ap_power_ev_init_callback(&cb, board_hdmi_handler,
- AP_POWER_RESUME | AP_POWER_SUSPEND);
- ap_power_ev_add_callback(&cb);
- }
-
- /* drop related C1 port drivers when it's a HDMI DB. */
- ppc_chips[USBC_PORT_C1] =
- (const struct ppc_config_t){ .drv = &virtual_ppc_drv };
- tcpc_config[USBC_PORT_C1] =
- (const struct tcpc_config_t){ .drv = &virtual_tcpc_drv };
- bc12_ports[USBC_PORT_C1] =
- (const struct bc12_config){ .drv = &virtual_bc12_drv };
- /* Use virtual mux to notify AP the mainlink direction. */
- USB_MUX_ENABLE_ALTERNATIVE(usb_mux_chain_1_hdmi_db);
-
- /*
- * If a HDMI DB is attached, C1 port tasks will be exiting in that
- * the port number is larger than board_get_usb_pd_port_count().
- * After C1 port tasks finished, we intentionally increase the port
- * count by 1 for usb_mux to access the C1 virtual mux for notifying
- * mainlink direction.
- */
- hook_call_deferred(&tasks_init_deferred_data, 2 * SECOND);
-}
-DECLARE_HOOK(HOOK_INIT, baseboard_x_ec_gpio2_init, HOOK_PRIO_DEFAULT);
-
-__override uint8_t get_dp_pin_mode(int port)
-{
- if (corsola_get_db_type() == CORSOLA_DB_HDMI && port == USBC_PORT_C1) {
- if (usb_mux_get(USBC_PORT_C1) & USB_PD_MUX_DP_ENABLED) {
- return MODE_DP_PIN_E;
- } else {
- return 0;
- }
- }
-
- return pd_dfp_dp_get_pin_mode(port, dp_status[port]);
-}
diff --git a/zephyr/program/corsola/src/variant_db_detection.c b/zephyr/program/corsola/src/variant_db_detection.c
deleted file mode 100644
index 9ade144513..0000000000
--- a/zephyr/program/corsola/src/variant_db_detection.c
+++ /dev/null
@@ -1,210 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Corsola daughter board detection */
-#include "baseboard_usbc_config.h"
-#include "console.h"
-#include "cros_cbi.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "usb_mux.h"
-#include "variant_db_detection.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTS(format, args...) cprints(CC_SYSTEM, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_SYSTEM, format, ##args)
-
-#ifdef TEST_BUILD
-uint32_t dp_status[CONFIG_USB_PD_PORT_MAX_COUNT];
-#endif
-
-static void corsola_db_config(enum corsola_db_type type)
-{
- switch (type) {
- case CORSOLA_DB_HDMI:
- /* EC_X_GPIO1 */
- gpio_pin_configure_dt(GPIO_DT_FROM_ALIAS(gpio_en_hdmi_pwr),
- GPIO_OUTPUT_HIGH);
- /* X_EC_GPIO2 */
- gpio_pin_configure_dt(GPIO_DT_FROM_ALIAS(gpio_ps185_ec_dp_hpd),
- GPIO_INPUT);
- gpio_enable_dt_interrupt(
- GPIO_INT_FROM_NODELABEL(int_x_ec_gpio2));
- /* EC_X_GPIO3 */
- gpio_pin_configure_dt(GPIO_DT_FROM_ALIAS(gpio_ps185_pwrdn_odl),
- GPIO_OUTPUT_HIGH | GPIO_OPEN_DRAIN);
- return;
- case CORSOLA_DB_TYPEC:
- /* EC_X_GPIO1 */
- gpio_pin_configure_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_frs_en),
- GPIO_OUTPUT_LOW);
- /* X_EC_GPIO2 */
- gpio_pin_configure_dt(
- GPIO_DT_FROM_ALIAS(gpio_usb_c1_ppc_int_odl),
- GPIO_INPUT | GPIO_PULL_UP);
- gpio_enable_dt_interrupt(
- GPIO_INT_FROM_NODELABEL(int_x_ec_gpio2));
- /* EC_X_GPIO3 */
- gpio_pin_configure_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_dp_in_hpd),
- GPIO_OUTPUT_LOW);
- return;
- case CORSOLA_DB_NONE:
- /* Set floating pins as input with PU to prevent leakage */
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_ec_x_gpio1),
- GPIO_INPUT | GPIO_PULL_UP);
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_x_ec_gpio2),
- GPIO_INPUT | GPIO_PULL_UP);
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_ec_x_gpio3),
- GPIO_INPUT | GPIO_PULL_UP);
- return;
- default:
- break;
- }
-}
-
-enum corsola_db_type corsola_get_db_type(void)
-{
-#if DT_NODE_EXISTS(DT_NODELABEL(db_config))
- int ret;
- uint32_t val;
-#endif
- static enum corsola_db_type db = CORSOLA_DB_UNINIT;
-
- if (db != CORSOLA_DB_UNINIT) {
- return db;
- }
-
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_hdmi_prsnt_odl))) {
- db = CORSOLA_DB_HDMI;
- } else {
- db = CORSOLA_DB_TYPEC;
- }
-
-/* Detect for no sub board case by FW_CONFIG */
-#if DT_NODE_EXISTS(DT_NODELABEL(db_config))
- ret = cros_cbi_get_fw_config(DB, &val);
- if (ret != 0) {
- CPRINTS("Error retrieving CBI FW_CONFIG field %d", DB);
- } else if (val == DB_NONE) {
- db = CORSOLA_DB_NONE;
- }
-#endif
-
- corsola_db_config(db);
-
- switch (db) {
- case CORSOLA_DB_NONE:
- CPRINTS("Detect %s DB", "NONE");
- break;
- case CORSOLA_DB_TYPEC:
- CPRINTS("Detect %s DB", "TYPEC");
- break;
- case CORSOLA_DB_HDMI:
- CPRINTS("Detect %s DB", "HDMI");
- break;
- default:
- CPRINTS("DB UNINIT");
- break;
- }
-
- return db;
-}
-
-static void corsola_db_init(void)
-{
- corsola_get_db_type();
-}
-DECLARE_HOOK(HOOK_INIT, corsola_db_init, HOOK_PRIO_PRE_I2C);
-
-/**
- * Handle PS185 HPD changing state.
- */
-void ps185_hdmi_hpd_mux_set(void)
-{
- const int hpd =
- gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_ps185_ec_dp_hpd));
-
- if (!corsola_is_dp_muxable(USBC_PORT_C1)) {
- return;
- }
-
- if (hpd && !(usb_mux_get(USBC_PORT_C1) & USB_PD_MUX_DP_ENABLED)) {
- dp_status[USBC_PORT_C1] =
- VDO_DP_STATUS(0, /* HPD IRQ ... not applicable */
- 0, /* HPD level ... not applicable */
- 0, /* exit DP? ... no */
- 0, /* usb mode? ... no */
- 0, /* multi-function ... no */
- 1, /* DP enabled ... yes */
- 0, /* power low? ... no */
- (!!DP_FLAGS_DP_ON));
- /* update C1 virtual mux */
- usb_mux_set(USBC_PORT_C1, USB_PD_MUX_DP_ENABLED,
- USB_SWITCH_DISCONNECT,
- 0 /* polarity, don't care */);
- CPRINTS("HDMI plug");
- }
-}
-
-static void ps185_hdmi_hpd_deferred(void)
-{
- const int hpd =
- gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_ps185_ec_dp_hpd));
-
- if (!hpd && (usb_mux_get(USBC_PORT_C1) & USB_PD_MUX_DP_ENABLED)) {
- dp_status[USBC_PORT_C1] =
- VDO_DP_STATUS(0, /* HPD IRQ ... not applicable */
- 0, /* HPD level ... not applicable */
- 0, /* exit DP? ... no */
- 0, /* usb mode? ... no */
- 0, /* multi-function ... no */
- 0, /* DP enabled ... no */
- 0, /* power low? ... no */
- (!DP_FLAGS_DP_ON));
- usb_mux_set(USBC_PORT_C1, USB_PD_MUX_NONE,
- USB_SWITCH_DISCONNECT,
- 0 /* polarity, don't care */);
- CPRINTS("HDMI unplug");
-
- return;
- }
-
- ps185_hdmi_hpd_mux_set();
-}
-DECLARE_DEFERRED(ps185_hdmi_hpd_deferred);
-
-#define HPD_SINK_ABSENCE_DEBOUNCE (2 * MSEC)
-
-void hdmi_hpd_interrupt(enum gpio_signal signal)
-{
- const int hpd =
- gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_ps185_ec_dp_hpd));
-
- if (!hpd) {
- hook_call_deferred(&ps185_hdmi_hpd_deferred_data,
- HPD_SINK_ABSENCE_DEBOUNCE);
- } else {
- hook_call_deferred(&ps185_hdmi_hpd_deferred_data, -1);
- }
-
- /* C0 DP is muxed, we should not send HPD to the AP */
- if (!corsola_is_dp_muxable(USBC_PORT_C1)) {
- if (hpd) {
- CPRINTS("C0 port is already muxed.");
- }
- return;
- }
-
- if (hpd && !(usb_mux_get(USBC_PORT_C1) & USB_PD_MUX_DP_ENABLED)) {
- /* set dp_aux_path_sel first, and configure the usb_mux in the
- * deferred hook to prevent from dead locking.
- */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(dp_aux_path_sel), hpd);
- hook_call_deferred(&ps185_hdmi_hpd_deferred_data, 0);
- }
-
- svdm_set_hpd_gpio(USBC_PORT_C1, hpd);
-}
diff --git a/zephyr/program/corsola/steelix/cbi.dtsi b/zephyr/program/corsola/steelix/cbi.dtsi
deleted file mode 100644
index 6636b53a96..0000000000
--- a/zephyr/program/corsola/steelix/cbi.dtsi
+++ /dev/null
@@ -1,95 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- steelix-fw-config {
- compatible = "cros-ec,cbi-fw-config";
-
- /*
- * FW_CONFIG field to indicate the device is clamshell
- * or convertible.
- */
- form_factor {
- enum-name = "FORM_FACTOR";
- start = <13>;
- size = <3>;
-
- convertible {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "CONVERTIBLE";
- value = <1>;
- };
- clamshell {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "CLAMSHELL";
- value = <0>;
- };
- };
-
- /* FW_CONFIG field to indicate which DB is attached. */
- db_config: db {
- enum-name = "DB";
- start = <0>;
- size = <4>;
-
- sub-board-1 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "DB_NONE";
- value = <0>;
- };
- sub-board-2 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "DB_USBA_HDMI";
- value = <1>;
- };
- sub-board-3 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "DB_USBA_HDMI_LTE";
- value = <2>;
- };
- };
- };
-
- /* Steelix-specific ssfc fields. */
- steelix-ssfc {
- compatible = "cros-ec,cbi-ssfc";
-
- /* SSFC field to identify BASE motion sensor. */
- base-sensor {
- enum-name = "BASE_SENSOR";
- size = <3>;
-
- base_sensor_0: bmi323 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <1>;
- default;
- };
- base_sensor_1: lsm6dsm {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <2>;
- };
- };
-
- /* SSFC field to identify LID motion sensor. */
- lid-sensor {
- enum-name = "LID_SENSOR";
- size = <3>;
-
- lid_sensor_0: bma422 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <1>;
- default;
- };
- lid_sensor_1: lis2dw12 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <2>;
- };
- };
- };
-};
diff --git a/zephyr/program/corsola/steelix/interrupts.dtsi b/zephyr/program/corsola/steelix/interrupts.dtsi
deleted file mode 100644
index b212cd9496..0000000000
--- a/zephyr/program/corsola/steelix/interrupts.dtsi
+++ /dev/null
@@ -1,12 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
- /* This file should only be included in the project.overlay. */
-&int_base_imu {
- irq-pin = <&base_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "motion_interrupt";
-};
-
diff --git a/zephyr/program/corsola/steelix/project.conf b/zephyr/program/corsola/steelix/project.conf
deleted file mode 100644
index bf2de72512..0000000000
--- a/zephyr/program/corsola/steelix/project.conf
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Variant config
-CONFIG_BOARD_STEELIX=y
-
-# steelix only use D2, drop the workaround config for H1
-CONFIG_PLATFORM_EC_BOARD_RESET_AFTER_POWER_ON=n
-
-# Motion sensor
-CONFIG_PLATFORM_EC_ACCEL_LIS2DW12=y
-CONFIG_PLATFORM_EC_ACCELGYRO_LSM6DSM=y
-CONFIG_PLATFORM_EC_DYNAMIC_MOTION_SENSOR_COUNT=y
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_REFRESH_ROW3=y
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI3=y
-CONFIG_PLATFORM_EC_KEYBOARD_STRICT_DEBOUNCE=y
-
-# USBC
-CONFIG_PLATFORM_EC_PD_MAX_CURRENT_MA=3250
-CONFIG_PLATFORM_EC_PD_MAX_POWER_MW=65000
-
-# Remove bring up options for FW QUAL
-CONFIG_PLATFORM_EC_SYSTEM_UNLOCKED=n
-
-# Remove debug options and features for FW QUAL
-CONFIG_LOG=n
-CONFIG_LOG_MODE_MINIMAL=n
-CONFIG_SHELL_MINIMAL=y
-
-# AC_OK debounce time
-CONFIG_PLATFORM_EC_EXTPOWER_DEBOUNCE_MS=800
diff --git a/zephyr/program/corsola/steelix/project.overlay b/zephyr/program/corsola/steelix/project.overlay
deleted file mode 100644
index f850a51563..0000000000
--- a/zephyr/program/corsola/steelix/project.overlay
+++ /dev/null
@@ -1,298 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Corsola program common DTS includes */
-
-#include "../common.dtsi"
-#include "../power_signal.dtsi"
-#include "../usba.dtsi"
-#include "../npcx_adc.dtsi"
-#include "../npcx_gpio.dtsi"
-#include "../npcx_host_interface.dtsi"
-#include "../npcx_i2c.dtsi"
-#include "../npcx_interrupts.dtsi"
-#include "../npcx_keyboard.dtsi"
-#include "../npcx_motionsense.dtsi"
-#include "../npcx_usbc.dtsi"
-#include "../npcx_default_gpio_pinctrl.dtsi"
-
-/* Projrect level DTS shared with tests */
-#include "./cbi.dtsi"
-#include "./interrupts.dtsi"
-
-/* board override */
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- lsm6dsm-int = &base_accel;
- };
-
- named-gpios {
- en_pp5000_usb_a1_vbus: en_pp5000_usb_a1_vbus_x {
- gpios = <&gpiof 5 GPIO_OUTPUT_LOW>;
- };
- usb_a1_fault_odl {
- gpios = <&gpiof 4 GPIO_INPUT>;
- };
- };
-
- batteries {
- default_battery: byd_l22b3pg0 {
- compatible = "byd,l22b3pg0", "battery-smart";
- };
- celxpert_l22c3pg0 {
- compatible = "celxpert,l22c3pg0", "battery-smart";
- };
- cosmx_l22x3pg0 {
- compatible = "cosmx,l22x3pg0", "battery-smart";
- };
- smp_l22m3pg0 {
- compatible = "smp,l22m3pg0", "battery-smart";
- };
- sunwoda_l22d3pg0 {
- compatible = "sunwoda,l22d3pg0", "battery-smart";
- };
- };
-
-
- /* Steelix-specific ssfc fields. */
- steelix-ssfc {
- compatible = "cros-ec,cbi-ssfc";
-
- /* SSFC field to identify BASE motion sensor. */
- base-sensor {
- enum-name = "BASE_SENSOR";
- size = <3>;
-
- base_sensor_0: bmi323 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <1>;
- default;
- };
- base_sensor_1: lsm6dsm {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <2>;
- };
- };
-
- /* SSFC field to identify LID motion sensor. */
- lid-sensor {
- enum-name = "LID_SENSOR";
- size = <3>;
-
- lid_sensor_0: bma422 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <1>;
- default;
- };
- lid_sensor_1: lis2dw12 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <2>;
- };
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- base_rot_ref_lsm6dsm: base-rotation-ref-lsm6dsm {
- mat33 = <0 1 0
- 1 0 0
- 0 0 (-1)>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- lis2dw12_data: lis2dw12-drv-data {
- compatible = "cros-ec,drvdata-lis2dw12";
- status = "okay";
- };
- lsm6dsm_data_accel: lsm6dsm-accel-drv-data {
- compatible = "cros-ec,drvdata-lsm6dsm";
- status = "okay";
- };
- lsm6dsm_data_gyro: lsm6dsm-gyro-drv-data {
- compatible = "cros-ec,drvdata-lsm6dsm";
- status = "okay";
- };
- };
-
- motionsense-sensor-alt {
- alt_lid_accel: alt-lid-accel {
- compatible = "cros-ec,lis2dw12";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&lis2dw12_data>;
- i2c-spi-addr-flags = "LIS2DWL_ADDR0_FLAGS";
- alternate-for = <&lid_accel>;
- alternate-ssfc-indicator = <&lid_sensor_1>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- alt_base_accel: alt-base-accel {
- compatible = "cros-ec,lsm6dsm-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref_lsm6dsm>;
- drv-data = <&lsm6dsm_data_accel>;
- alternate-for = <&base_accel>;
- alternate-ssfc-indicator = <&base_sensor_1>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <(100 * USEC_PER_MSEC)>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <0>;
- };
- };
- };
-
- alt_base_gyro: alt-base-gyro {
- compatible = "cros-ec,lsm6dsm-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref_lsm6dsm>;
- default-range = <(1000 | ROUND_UP_FLAG)>; /* dps */
- drv-data = <&lsm6dsm_data_gyro>;
- alternate-for = <&base_gyro>;
- alternate-ssfc-indicator = <&base_sensor_1>;
- };
- };
-
- cros-keyscan {
- compatible = "cros-ec,keyscan";
-
- debounce-down = <15000>;
- debounce-up = <15000>;
-
- actual-key-mask = <
- 0x1c /* C0 */
- 0xff /* C1 */
- 0xff /* C2 */
- 0xff /* C3 */
- 0xff /* C4 */
- 0xf5 /* C5 */
- 0xff /* C6 */
- 0xa4 /* C7 */
- 0xff /* C8 */
- 0xfe /* C9 */
- 0x55 /* C10 */
- 0xfa /* C11 */
- 0xca /* C12 */
- >;
- };
-
- pwmleds {
- compatible = "pwm-leds";
- led_battery_red: ec_led1_odl {
- pwms = <&pwm0 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- led_battery_green: ec_led2_odl {
- pwms = <&pwm1 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- led_power_white: ec_led3_odl {
- pwms = <&pwm4 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- };
-};
-
-/* Red LED */
-&pwm0_gpc3 {
- drive-open-drain;
-};
-
-&pwm0 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm0_gpc3>;
- pinctrl-names = "default";
-};
-
-/* Green LED */
-&pwm1_gpc2 {
- drive-open-drain;
-};
-
-&pwm1 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm1_gpc2>;
- pinctrl-names = "default";
-};
-
-/* White LED */
-&pwm4_gpb6 {
- drive-open-drain;
-};
-
-&pwm4 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm4_gpb6>;
- pinctrl-names = "default";
-};
-
-/* inherit the rot_ref from Kingler and overwrite it */
-&lid_rot_ref {
- mat33 = <0 1 0
- 1 0 0
- 0 0 (-1)>;
-};
-
-&base_rot_ref {
- mat33 = <1 0 0
- 0 (-1) 0
- 0 0 (-1)>;
-};
-
-/* steelix usba port enable config */
-&usba_port_enable_list {
- enable-pins = <&en_pp5000_usb_a0_vbus
- &en_pp5000_usb_a1_vbus>;
-};
diff --git a/zephyr/program/corsola/tentacruel/project.conf b/zephyr/program/corsola/tentacruel/project.conf
deleted file mode 100644
index cf5f727cbc..0000000000
--- a/zephyr/program/corsola/tentacruel/project.conf
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Variant config
-CONFIG_BOARD_TENTACRUEL=y
-
-# USB-C
-CONFIG_PLATFORM_EC_USB_MUX_TUSB546=n
-CONFIG_PLATFORM_EC_USB_MUX_PS8743=y
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_REFRESH_ROW3=y
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI3=y
-
-# Sensor
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI3XX=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=y
-
-# Battery
-CONFIG_PLATFORM_EC_CHARGER_PROFILE_OVERRIDE=y
diff --git a/zephyr/program/corsola/tentacruel/project.overlay b/zephyr/program/corsola/tentacruel/project.overlay
deleted file mode 100644
index 79bf2baa3d..0000000000
--- a/zephyr/program/corsola/tentacruel/project.overlay
+++ /dev/null
@@ -1,21 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Corsola program common DTS includes */
-
-#include "../common.dtsi"
-#include "../power_signal.dtsi"
-#include "../usba.dtsi"
-#include "../adc_tentacruel.dtsi"
-#include "../battery_tentacruel.dtsi"
-#include "../cbi_tentacruel.dtsi"
-#include "../gpio_tentacruel.dtsi"
-#include "../ite_keyboard.dtsi"
-#include "../i2c_tentacruel.dtsi"
-#include "../interrupts_tentacruel.dtsi"
-#include "../led_tentacruel.dtsi"
-#include "../motionsense_tentacruel.dtsi"
-#include "../usbc_tentacruel.dtsi"
-#include "../thermistor_tentacruel.dtsi"
diff --git a/zephyr/program/corsola/thermistor_tentacruel.dtsi b/zephyr/program/corsola/thermistor_tentacruel.dtsi
deleted file mode 100644
index f9e5306f24..0000000000
--- a/zephyr/program/corsola/thermistor_tentacruel.dtsi
+++ /dev/null
@@ -1,140 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- thermistor_rt9490: thermistor-rt9490 {
- status = "okay";
- compatible = "cros-ec,thermistor";
- scaling-factor = <3>;
- num-pairs = <21>;
- steinhart-reference-mv = <4900>;
- steinhart-reference-res = <10000>;
-
- sample-datum-0 {
- milivolt = <(731 / 3)>;
- temp = <0>;
- sample-index = <0>;
- };
-
- sample-datum-1 {
- milivolt = <(708 / 3)>;
- temp = <5>;
- sample-index = <1>;
- };
-
- sample-datum-2 {
- milivolt = <(682 / 3)>;
- temp = <10>;
- sample-index = <2>;
- };
-
- sample-datum-3 {
- milivolt = <(653 / 3)>;
- temp = <15>;
- sample-index = <3>;
- };
-
- sample-datum-4 {
- milivolt = <(622 / 3)>;
- temp = <20>;
- sample-index = <4>;
- };
-
- sample-datum-5 {
- milivolt = <(589 / 3)>;
- temp = <25>;
- sample-index = <5>;
- };
-
- sample-datum-6 {
- milivolt = <(554 / 3)>;
- temp = <30>;
- sample-index = <6>;
- };
-
- sample-datum-7 {
- milivolt = <(519 / 3)>;
- temp = <35>;
- sample-index = <7>;
- };
-
- sample-datum-8 {
- milivolt = <(483 / 3)>;
- temp = <40>;
- sample-index = <8>;
- };
-
- sample-datum-9 {
- milivolt = <(446 / 3)>;
- temp = <45>;
- sample-index = <9>;
- };
-
- sample-datum-10 {
- milivolt = <(411 / 3)>;
- temp = <50>;
- sample-index = <10>;
- };
- sample-datum-11 {
- milivolt = <(376 / 3)>;
- temp = <55>;
- sample-index = <11>;
- };
-
- sample-datum-12 {
- milivolt = <(343 / 3)>;
- temp = <60>;
- sample-index = <12>;
- };
-
- sample-datum-13 {
- milivolt = <(312 / 3)>;
- temp = <65>;
- sample-index = <13>;
- };
-
- sample-datum-14 {
- milivolt = <(284 / 3)>;
- temp = <70>;
- sample-index = <14>;
- };
-
- sample-datum-15 {
- milivolt = <(257 / 3)>;
- temp = <75>;
- sample-index = <15>;
- };
-
- sample-datum-16 {
- milivolt = <(232 / 3)>;
- temp = <80>;
- sample-index = <16>;
- };
-
- sample-datum-17 {
- milivolt = <(209 / 3)>;
- temp = <85>;
- sample-index = <17>;
- };
-
- sample-datum-18 {
- milivolt = <(188 / 3)>;
- temp = <90>;
- sample-index = <18>;
- };
-
- sample-datum-19 {
- milivolt = <(169 / 3)>;
- temp = <95>;
- sample-index = <19>;
- };
-
- sample-datum-20 {
- milivolt = <(152 / 3)>;
- temp = <100>;
- sample-index = <20>;
- };
- };
-};
diff --git a/zephyr/program/corsola/usba.dtsi b/zephyr/program/corsola/usba.dtsi
deleted file mode 100644
index 2ecb3b7d5a..0000000000
--- a/zephyr/program/corsola/usba.dtsi
+++ /dev/null
@@ -1,11 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usba_port_enable_list: usba-port-enable-list {
- compatible = "cros-ec,usba-port-enable-pins";
- enable-pins = <&en_pp5000_usb_a0_vbus>;
- };
-};
diff --git a/zephyr/program/corsola/usbc_magikarp.dtsi b/zephyr/program/corsola/usbc_magikarp.dtsi
deleted file mode 100644
index 1d96f2a194..0000000000
--- a/zephyr/program/corsola/usbc_magikarp.dtsi
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- ppc = <&ppc_port0>;
- tcpc = <&usbpd0>;
- chg = <&charger_bc12_port1>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&it5205_mux_0 &virtual_mux_0>;
- };
- };
- port0-muxes {
- virtual_mux_0: virtual-mux-0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&charger_bc12_port1>;
- ppc = <&ppc_port1>;
- tcpc = <&usbpd1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&ps8743_mux_1 &virtual_mux_1>;
- };
- usb_mux_chain_1_hdmi_db: usb-mux-chain-1-hdmi-db {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&virtual_mux_1>;
- };
- };
- port1-muxes {
- virtual_mux_1: virtual-mux-1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-};
-
-&usbpd0 {
- status = "okay";
-};
-
-&usbpd1 {
- status = "okay";
-};
diff --git a/zephyr/program/corsola/usbc_tentacruel.dtsi b/zephyr/program/corsola/usbc_tentacruel.dtsi
deleted file mode 100644
index 3a0ead7b3e..0000000000
--- a/zephyr/program/corsola/usbc_tentacruel.dtsi
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- ppc = <&bc12_ppc_port0>;
- ppc_alt = <&ppc_port0>;
- tcpc = <&usbpd0>;
- chg = <&charger_bc12_port1>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&it5205_mux_0 &virtual_mux_0>;
- };
- };
- port0-muxes {
- virtual_mux_0: virtual-mux-0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&charger_bc12_port1>;
- ppc = <&ppc_port1>;
- tcpc = <&usbpd1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&ps8743_mux_1 &virtual_mux_1>;
- };
- usb_mux_chain_1_hdmi_db: usb-mux-chain-1-hdmi-db {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&virtual_mux_1>;
- };
- };
- port1-muxes {
- virtual_mux_1: virtual-mux-1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-};
-
-&usbpd0 {
- status = "okay";
-};
-
-&usbpd1 {
- status = "okay";
-};
diff --git a/zephyr/program/corsola/voltorb/project.conf b/zephyr/program/corsola/voltorb/project.conf
deleted file mode 100644
index c1be25bfc1..0000000000
--- a/zephyr/program/corsola/voltorb/project.conf
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Variant config
-CONFIG_BOARD_VOLTORB=y
-
-# Voltorb only use D2, drop the workaround config for H1
-CONFIG_PLATFORM_EC_BOARD_RESET_AFTER_POWER_ON=n
-
-# No A+Gsensor
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI3XX=n
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=n
-CONFIG_PLATFORM_EC_ACCEL_BMA4XX=n
-CONFIG_PLATFORM_EC_ACCEL_FIFO=n
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCELS=n
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCEL_INFO=n
-CONFIG_PLATFORM_EC_GMR_TABLET_MODE=n
-CONFIG_PLATFORM_EC_LID_ANGLE=n
-CONFIG_PLATFORM_EC_LID_ANGLE_UPDATE=n
-CONFIG_PLATFORM_EC_MOTIONSENSE=n
-CONFIG_PLATFORM_EC_SENSOR_TIGHT_TIMESTAMPS=n
-CONFIG_PLATFORM_EC_TABLET_MODE=n
-CONFIG_PLATFORM_EC_TABLET_MODE_SWITCH=n
-
-# LED
-CONFIG_PLATFORM_EC_LED_COMMON=n
-CONFIG_PLATFORM_EC_LED_ONOFF_STATES=n
-CONFIG_PLATFORM_EC_LED_DT=y
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_REFRESH_ROW3=y
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI3=y
-CONFIG_PLATFORM_EC_KEYBOARD_STRICT_DEBOUNCE=y
-
-# USBC
-CONFIG_PLATFORM_EC_PD_MAX_CURRENT_MA=3250
-CONFIG_PLATFORM_EC_PD_MAX_POWER_MW=65000
-
-# AC_OK debounce time
-CONFIG_PLATFORM_EC_EXTPOWER_DEBOUNCE_MS=800
diff --git a/zephyr/program/corsola/voltorb/project.overlay b/zephyr/program/corsola/voltorb/project.overlay
deleted file mode 100644
index 8cd5a2bad8..0000000000
--- a/zephyr/program/corsola/voltorb/project.overlay
+++ /dev/null
@@ -1,309 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Corsola program common DTS includes */
-
-#include "../common.dtsi"
-#include "../power_signal.dtsi"
-#include "../usba.dtsi"
-#include "../npcx_adc.dtsi"
-#include "../npcx_gpio.dtsi"
-#include "../npcx_host_interface.dtsi"
-#include "../npcx_i2c.dtsi"
-#include "../npcx_interrupts.dtsi"
-#include "../npcx_keyboard.dtsi"
-#include "../npcx_usbc.dtsi"
-#include "../npcx_default_gpio_pinctrl.dtsi"
-#include <dt-bindings/battery.h>
-
-/ {
- unused-pins {
- compatible = "unused-gpios";
-
- unused-gpios =
- /* base_imu_int_l */
- <&gpio5 6 0>,
- /* ec_pen_chg_dis_odl */
- <&gpioe 4 0>,
- /* lid_accel_int_l */
- <&gpiob 3 0>,
- /* gpio_tablet_mode_l */
- <&gpiob 2 0>,
- /* LED3 */
- <&gpioc 4 0>;
- };
-
- batteries {
- default_battery: lgc_ap18c8k {
- compatible = "lgc,ap18c8k", "battery-smart";
- };
- cosmx_ap20cbl-2 {
- compatible = "cosmx,ap20cbl-2", "battery-smart";
- };
- };
-
- cros-keyscan {
- compatible = "cros-ec,keyscan";
-
- debounce-down = <20000>;
- debounce-up = <20000>;
-
- actual-key-mask = <
- 0x1c /* C0 */
- 0xff /* C1 */
- 0xff /* C2 */
- 0xff /* C3 */
- 0xff /* C4 */
- 0xf5 /* C5 */
- 0xff /* C6 */
- 0xa4 /* C7 */
- 0xff /* C8 */
- 0xfe /* C9 */
- 0x55 /* C10 */
- 0xfa /* C11 */
- 0xca /* C12 */
- >;
- };
-
- led_colors: led-colors {
- compatible = "cros-ec,led-policy";
-
- /* Voltorb LED bat charge */
- bat-power-state-charge-lvl-1 {
- charge-state = "PWR_STATE_CHARGE";
- /* Battery percent range (>= Empty, <= 94%) */
- batt-lvl = <BATTERY_LEVEL_EMPTY
- (BATTERY_LEVEL_NEAR_FULL - 3)>;
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
- bat-power-state-charge-lvl-2 {
- charge-state = "PWR_STATE_CHARGE";
- /* Battery percent range (>= 95%, <= 96%) */
- batt-lvl = <(BATTERY_LEVEL_NEAR_FULL - 2)
- (BATTERY_LEVEL_NEAR_FULL - 1)>;
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
-
- /* Voltorb LED bat charge near full */
- bat-power-state-charge-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
-
- /* Voltorb LED bat discharge */
- bat-power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= 14%, <= Full) */
- batt-lvl = <(BATTERY_LEVEL_LOW + 4) BATTERY_LEVEL_FULL>;
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
- bat-power-state-discharge-s0-bat-low {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= 7%, <= 13%) */
- batt-lvl = <(BATTERY_LEVEL_CRITICAL + 2)
- (BATTERY_LEVEL_LOW + 3)>;
-
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
- bat-power-state-discharge-s0-bat-critical {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= Empty, <= 6%) */
- batt-lvl = <BATTERY_LEVEL_EMPTY
- (BATTERY_LEVEL_CRITICAL + 1)>;
-
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
- bat-power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
- bat-power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- /* Voltorb LED bat error */
- bat-power-state-error {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S0";
-
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
- bat-power-state-error-s3 {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S3";
-
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
- bat-power-state-error-s5 {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- /* Voltorb LED power idle */
- power-state-idle {
- charge-state = "PWR_STATE_IDLE";
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
-
- /* Voltorb LED power forced idle */
- power-state-forced-idle-right {
- charge-state = "PWR_STATE_FORCED_IDLE";
-
- color-0 {
- led-color = <&color_amber>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_blue>;
- period-ms = <2000>;
- };
- };
- };
-
- pwmleds {
- compatible = "pwm-leds";
-
- led_amber: ec_led1_odl {
- pwms = <&pwm0 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
-
- led_blue: ec_led2_odl {
- pwms = <&pwm1 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- };
-
- pwm-led-pins {
- compatible = "cros-ec,pwm-led-pins";
-
- color_off: color-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pwms = <&led_amber &led_blue>;
- led-values = <0 0>;
- };
-
- color_amber: color-amber {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pwms = <&led_amber &led_blue>;
- led-values = <100 0>;
- };
-
- color_blue: color_blue {
- led-color = "LED_BLUE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_BLUE";
- led-pwms = <&led_amber &led_blue>;
- led-values = <0 100>;
- };
- };
-};
-
-/* Amber LED */
-&pwm0_gpc3 {
- drive-open-drain;
-};
-
-&pwm0 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm0_gpc3>;
- pinctrl-names = "default";
-};
-
-/* Blue LED */
-&pwm1_gpc2 {
- drive-open-drain;
-};
-
-&pwm1 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm1_gpc2>;
- pinctrl-names = "default";
-};
-
-/* gpio overrides */
-/ {
- named-gpios {
- /delete-node/ base_imu_int_l;
- /delete-node/ ec_pen_chg_dis_odl;
- /delete-node/ lid_accel_int_l;
- /delete-node/ gpio_tablet_mode_l;
- };
-};
-
-/* interrupts overrides */
-/ {
- gpio-interrupts {
- /delete-node/ base_imu;
- /delete-node/ tablet_mode;
- };
-};
diff --git a/zephyr/program/herobrine/BUILD.py b/zephyr/program/herobrine/BUILD.py
deleted file mode 100644
index 0bee6ffe2a..0000000000
--- a/zephyr/program/herobrine/BUILD.py
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Define zmake projects for herobrine."""
-
-
-def register_variant(
- project_name,
-):
- """Register a variant of herobrine."""
- register_npcx_project(
- project_name=project_name,
- zephyr_board="npcx9m3f",
- dts_overlays=[
- here / project_name / "project.overlay",
- ],
- kconfig_files=[
- # Common to all projects.
- here / "program.conf",
- # Project-specific KConfig customization.
- here / project_name / "project.conf",
- ],
- )
-
-
-register_variant(
- project_name="evoker",
-)
-
-register_variant(
- project_name="herobrine",
-)
-
-register_variant(
- project_name="hoglin",
-)
-
-register_variant(
- project_name="villager",
-)
-
-register_variant(
- project_name="zoglin",
-)
-
-register_variant(
- project_name="zombie",
-)
diff --git a/zephyr/program/herobrine/CMakeLists.txt b/zephyr/program/herobrine/CMakeLists.txt
deleted file mode 100644
index 90a49a053e..0000000000
--- a/zephyr/program/herobrine/CMakeLists.txt
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cmake_minimum_required(VERSION 3.13.1)
-
-find_package(Zephyr REQUIRED HINTS "${ZEPHYR_BASE}")
-
-cros_ec_library_include_directories(include)
-
-# Common Herobrine implementation
-zephyr_library_sources(
- "src/board_chipset.c"
-)
-
-# Board specific implementation
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/usbc_config.c"
- "src/usb_pd_policy.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_I2C
- "src/i2c.c")
-
-if(DEFINED CONFIG_BOARD_EVOKER)
- project(evoker)
-elseif(DEFINED CONFIG_BOARD_HEROBRINE)
- project(herobrine)
- add_subdirectory(herobrine)
-elseif(DEFINED CONFIG_BOARD_HOGLIN)
- project(hoglin)
-elseif(DEFINED CONFIG_BOARD_VILLAGER)
- project(villager)
-elseif(DEFINED CONFIG_BOARD_ZOGLIN)
- project(zoglin)
-elseif(DEFINED CONFIG_BOARD_ZOMBIE)
- project(zombie)
-endif()
diff --git a/zephyr/program/herobrine/Kconfig b/zephyr/program/herobrine/Kconfig
deleted file mode 100644
index d0056288d5..0000000000
--- a/zephyr/program/herobrine/Kconfig
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-config BOARD_EVOKER
- bool "Evoker Board"
- help
- Build the Evoker board. The board is based on the Herobrine
- reference design.
-
-config BOARD_HEROBRINE
- bool "Google Herobrine Baseboard"
- help
- Build Google Herobrine reference board. The board uses Nuvoton
- NPCX9 chip as the EC.
-
-config BOARD_HOGLIN
- bool "Qualcomm Hoglin Baseboard"
- help
- Build Qualcomm Hoglin reference board. The board uses Nuvoton
- NPCX9 chip as the EC.
-
-config BOARD_VILLAGER
- bool "Villager Board"
- help
- Build the Villager board. The board is based on the Herobrine
- reference design.
-
-config BOARD_ZOGLIN
- bool "Qualcomm Zoglin Baseboard"
- help
- Build Qualcomm Zoglin reference board. The board uses Nuvoton
- NPCX9 chip as the EC.
-
-config BOARD_ZOMBIE
- bool "Zombie Board"
- help
- Build the Zombie board. The board is based on the Herobrine
- reference design.
-
-source "Kconfig.zephyr"
diff --git a/zephyr/program/herobrine/adc.dtsi b/zephyr/program/herobrine/adc.dtsi
deleted file mode 100644
index 16a5434e9d..0000000000
--- a/zephyr/program/herobrine/adc.dtsi
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <zephyr/dt-bindings/adc/adc.h>
-
-/ {
- named-adc-channels {
- compatible = "named-adc-channels";
-
- vbus {
- enum-name = "ADC_VBUS";
- io-channels = <&adc0 1>;
- /* Measure VBUS through a 1/10 voltage divider */
- mul = <10>;
- };
- amon_bmon {
- enum-name = "ADC_AMON_BMON";
- io-channels = <&adc0 2>;
- /*
- * Adapter current output or battery charging/
- * discharging current (uV) 18x amplification on
- * charger side.
- */
- mul = <1000>;
- div = <18>;
- };
- psys {
- enum-name = "ADC_PSYS";
- io-channels = <&adc0 3>;
- /*
- * ISL9238 PSYS output is 1.44 uA/W over 5.6K resistor,
- * to read 0.8V @ 99 W, i.e. 124000 uW/mV.
- */
- mul = <124000>;
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_chan1_gp44
- &adc0_chan2_gp43
- &adc0_chan3_gp42>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/herobrine/common.dtsi b/zephyr/program/herobrine/common.dtsi
deleted file mode 100644
index a722f1dfa2..0000000000
--- a/zephyr/program/herobrine/common.dtsi
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/wake_mask_event_defines.h>
-
-/ {
- chosen {
- cros,rtc = &pcf85063a;
- };
-
- ec-console {
- compatible = "ec-console";
- disabled = "hostcmd";
- };
-
- ec-mkbp-host-event-wakeup-mask {
- compatible = "ec-wake-mask-event";
- wakeup-mask = <(
- HOST_EVENT_LID_OPEN |
- HOST_EVENT_POWER_BUTTON |
- HOST_EVENT_AC_CONNECTED |
- HOST_EVENT_AC_DISCONNECTED |
- HOST_EVENT_HANG_DETECT |
- HOST_EVENT_RTC |
- HOST_EVENT_MODE_CHANGE |
- HOST_EVENT_DEVICE)>;
- };
-
- ec-mkbp-event-wakeup-mask {
- compatible = "ec-wake-mask-event";
- wakeup-mask = <(MKBP_EVENT_KEY_MATRIX | \
- MKBP_EVENT_HOST_EVENT | \
- MKBP_EVENT_SENSOR_FIFO)>;
- };
-};
-
-&shi {
- status = "okay";
- pinctrl-0 = <&shi_gp46_47_53_55>;
- pinctrl-1 = <&shi_gpio_gp46_47_53_55>;
- pinctrl-names = "default", "sleep";
-};
diff --git a/zephyr/program/herobrine/default_gpio_pinctrl.dtsi b/zephyr/program/herobrine/default_gpio_pinctrl.dtsi
deleted file mode 100644
index 604658a145..0000000000
--- a/zephyr/program/herobrine/default_gpio_pinctrl.dtsi
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Adds the &alt1_no_lpc_espi setting over the NPCX9 default setting. */
-&{/def-io-conf-list} {
- pinmux = <&alt0_gpio_no_spip
- &alt0_gpio_no_fpip
- &alt1_no_pwrgd
- &alt1_no_lpc_espi
- &alta_no_peci_en
- &altd_npsl_in1_sl
- &altd_npsl_in2_sl
- &altd_psl_in3_sl
- &altd_psl_in4_sl
- &alt7_no_ksi0_sl
- &alt7_no_ksi1_sl
- &alt7_no_ksi2_sl
- &alt7_no_ksi3_sl
- &alt7_no_ksi4_sl
- &alt7_no_ksi5_sl
- &alt7_no_ksi6_sl
- &alt7_no_ksi7_sl
- &alt8_no_kso00_sl
- &alt8_no_kso01_sl
- &alt8_no_kso02_sl
- &alt8_no_kso03_sl
- &alt8_no_kso04_sl
- &alt8_no_kso05_sl
- &alt8_no_kso06_sl
- &alt8_no_kso07_sl
- &alt9_no_kso08_sl
- &alt9_no_kso09_sl
- &alt9_no_kso10_sl
- &alt9_no_kso11_sl
- &alt9_no_kso12_sl
- &alt9_no_kso13_sl
- &alt9_no_kso14_sl
- &alt9_no_kso15_sl
- &alta_no_kso16_sl
- &alta_no_kso17_sl
- &altg_psl_gpo_sl>;
-};
diff --git a/zephyr/program/herobrine/display.dtsi b/zephyr/program/herobrine/display.dtsi
deleted file mode 100644
index 65d3a2d91b..0000000000
--- a/zephyr/program/herobrine/display.dtsi
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- displight {
- compatible = "cros-ec,displight";
- pwms = <&pwm5 0 PWM_HZ(4800) PWM_POLARITY_NORMAL>;
- generic-pwm-channel = <1>;
- };
-};
-
-&pwm5 {
- status = "okay";
- pinctrl-0 = <&pwm5_gpb7>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/herobrine/evoker/gpio.dtsi b/zephyr/program/herobrine/evoker/gpio.dtsi
deleted file mode 100644
index fd4a773369..0000000000
--- a/zephyr/program/herobrine/evoker/gpio.dtsi
+++ /dev/null
@@ -1,309 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &gpio_ec_wp_odl;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_usb_c0_pd_int_odl: usb_c0_pd_int_odl {
- gpios = <&gpioe 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_PD_INT_ODL";
- };
- gpio_usb_c1_pd_int_odl: usb_c1_pd_int_odl {
- gpios = <&gpiof 5 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_PD_INT_ODL";
- };
- gpio_usb_c0_swctl_int_odl: usb_c0_swctl_int_odl {
- gpios = <&gpio0 3 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_SWCTL_INT_ODL";
- };
- gpio_usb_c1_swctl_int_odl: usb_c1_swctl_int_odl {
- gpios = <&gpio4 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_SWCTL_INT_ODL";
- };
- gpio_usb_c0_bc12_int_l: usb_c0_bc12_int_l {
- gpios = <&gpio6 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_usb_c1_bc12_int_l: usb_c1_bc12_int_l {
- gpios = <&gpio8 2 GPIO_INPUT_PULL_UP>;
- };
- gpio_chg_acok_od: chg_acok_od {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_ec_pwr_btn_odl: ec_pwr_btn_odl {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_ec_voldn_btn_odl: ec_voldn_btn_odl {
- gpios = <&gpio6 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_ec_volup_btn_odl: ec_volup_btn_odl {
- gpios = <&gpioc 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpiod 3 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_lid_open_ec: lid_open_ec {
- gpios = <&gpio0 1 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_ap_rst_l: ap_rst_l {
- gpios = <&gpio5 1 GPIO_INPUT>;
- enum-name = "GPIO_AP_RST_L";
- };
- gpio_ps_hold: ps_hold {
- gpios = <&gpioa 6 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_PS_HOLD";
- };
- gpio_ap_suspend: ap_suspend {
- gpios = <&gpio5 7 GPIO_INPUT>;
- enum-name = "GPIO_AP_SUSPEND";
- };
- gpio_mb_power_good: mb_power_good {
- gpios = <&gpio3 7 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_POWER_GOOD";
- };
- gpio_warm_reset_l: warm_reset_l {
- gpios = <&gpiob 0 GPIO_INPUT>;
- enum-name = "GPIO_WARM_RESET_L";
- };
- ap_ec_spi_cs_l {
- gpios = <&gpio5 3 GPIO_INPUT_PULL_DOWN>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpioc 6 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_accel_gyro_int_l: accel_gyro_int_l {
- gpios = <&gpioa 3 GPIO_INPUT>;
- };
- gpio_rtc_ec_wake_odl: rtc_ec_wake_odl {
- gpios = <&gpio0 2 GPIO_INPUT>;
- };
- ec_entering_rw {
- gpios = <&gpio7 2 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- ccd_mode_odl {
- gpios = <&gpio6 3 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- ec_batt_pres_odl {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- ec_gsc_packet_mode {
- gpios = <&gpio8 3 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- pmic_resin_l {
- gpios = <&gpioa 0 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PMIC_RESIN_L";
- };
- pmic_kpd_pwr_odl {
- gpios = <&gpioa 2 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PMIC_KPD_PWR_ODL";
- };
- ap_ec_int_l {
- gpios = <&gpio5 6 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_switchcap_on: switchcap_on {
- gpios = <&gpiod 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_SWITCHCAP_ON";
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpio7 3 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_EN_PP5000";
- };
- ec_bl_disable_l {
- /* The PMIC controls backlight enable and this pin must
- * be HiZ for normal operation. But the backlight can
- * be enabled by setting this pin low and configuring it
- * as an output.
- */
- gpios = <&gpiob 6 GPIO_INPUT>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- lid_accel_int_l {
- gpios = <&gpioa 1 GPIO_INPUT>;
- };
- tp_int_gate {
- gpios = <&gpio7 4 GPIO_OUTPUT_LOW>;
- };
- gpio_usb_c0_pd_rst_l: usb_c0_pd_rst_l {
- gpios = <&gpiof 1 GPIO_OUTPUT_HIGH>;
- };
- gpio_usb_c1_pd_rst_l: usb_c1_pd_rst_l {
- gpios = <&gpioe 4 GPIO_OUTPUT_HIGH>;
- };
- gpio_dp_mux_oe_l: dp_mux_oe_l {
- gpios = <&gpiob 1 GPIO_ODR_HIGH>;
- };
- gpio_dp_mux_sel: dp_mux_sel {
- gpios = <&gpio4 5 GPIO_OUTPUT_LOW>;
- };
- gpio_dp_hot_plug_det_r: dp_hot_plug_det_r {
- gpios = <&gpio9 5 GPIO_OUTPUT_LOW>;
- };
- gpio_usb_c0_frs_en: usb_c0_frs_en {
- gpios = <&gpioc 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C0_FRS_EN";
- };
- gpio_usb_c1_frs_en: usb_c1_frs_en {
- gpios = <&gpioc 1 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C1_FRS_EN";
- };
- gpio_ec_chg_led_y_c0: ec_chg_led_y_c0 {
- gpios = <&gpio6 0 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_chg_led_w_c0: ec_chg_led_w_c0 {
- gpios = <&gpioc 0 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_chg_led_w_c1: ec_chg_led_w_c1 {
- gpios = <&gpioc 3 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_chg_led_r_c0: ec_chg_led_r_c0 {
- gpios = <&gpioc 4 GPIO_OUTPUT_LOW>;
- };
- ap_ec_spi_mosi {
- gpios = <&gpio4 6 GPIO_INPUT_PULL_DOWN>;
- };
- ap_ec_spi_miso {
- gpios = <&gpio4 7 GPIO_INPUT_PULL_DOWN>;
- };
- ap_ec_spi_clk {
- gpios = <&gpio5 5 GPIO_INPUT_PULL_DOWN>;
- };
- gpio_brd_id0: brd_id0 {
- gpios = <&gpio9 4 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION1";
- };
- gpio_brd_id1: brd_id1 {
- gpios = <&gpio9 7 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION2";
- };
- gpio_brd_id2: brd_id2 {
- gpios = <&gpioa 5 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION3";
- };
- gpio_sku_id0: sku_id0 {
- gpios = <&gpio6 7 GPIO_INPUT>;
- };
- gpio_sku_id1: sku_id1 {
- gpios = <&gpio7 0 GPIO_INPUT>;
- };
- gpio_sku_id2: sku_id2 {
- gpios = <&gpioe 1 GPIO_INPUT>;
- };
- gpio_switchcap_pg: src_vph_pwr_pg {
- gpios = <&gpioe 2 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_SWITCHCAP_PG";
- };
- arm_x86 {
- gpios = <&gpio6 6 GPIO_OUTPUT_LOW>;
- };
- ec-i2c-sensor-scl {
- gpios = <&gpiob 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-sensor-sda {
- gpios = <&gpiob 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
- };
-
- gpio_id_sku: sku {
- compatible = "cros-ec,gpio-id";
- bits = <
- &gpio_sku_id0
- &gpio_sku_id1
- &gpio_sku_id2
- >;
- system = "ternary";
- };
-
- gpio_id_board: board {
- compatible = "cros-ec,gpio-id";
- bits = <
- &gpio_brd_id0
- &gpio_brd_id1
- &gpio_brd_id2
- >;
- system = "ternary";
- };
-
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios =
- <&gpio5 2 0>,
- <&gpio5 4 0>,
- <&gpio7 6 0>,
- <&gpiod 1 0>,
- <&gpiod 0 0>,
- <&gpioe 3 0>,
- <&gpio0 4 0>,
- <&gpiod 6 0>,
- <&gpio3 2 0>,
- <&gpio3 5 0>,
- <&gpiod 7 0>,
- <&gpio8 6 0>,
- <&gpiod 4 0>,
- <&gpio4 1 0>,
- <&gpio3 4 0>,
- <&gpioc 7 0>,
- <&gpioa 4 0>,
- <&gpio9 6 0>,
- <&gpio9 3 0>,
- <&gpioa 7 0>,
- <&gpio5 0 0>,
- <&gpio8 1 0>,
- <&gpiof 0 0>,
- <&gpio7 5 0>,
- <&gpiof 4 0>,
- <&gpiob 7 0>;
- };
-};
-
-/* Power switch logic input pads */
-&psl_in1_gpd2 {
- /* ACOK_OD */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in2_gp00 {
- /* EC_PWR_BTN_ODL */
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-&psl_in3_gp01 {
- /* LID_OPEN_EC */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in4_gp02 {
- /* RTC_EC_WAKE_ODL */
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-/* Power domain device controlled by PSL (Power Switch Logic) IO pads */
-&power_ctrl_psl {
- status = "okay";
- pinctrl-names = "sleep";
- pinctrl-0 = <&psl_in1_gpd2 &psl_in2_gp00 &psl_in3_gp01 &psl_in4_gp02>;
-};
diff --git a/zephyr/program/herobrine/evoker/led_pins.dtsi b/zephyr/program/herobrine/evoker/led_pins.dtsi
deleted file mode 100644
index 8365691f4d..0000000000
--- a/zephyr/program/herobrine/evoker/led_pins.dtsi
+++ /dev/null
@@ -1,64 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- gpio-led-pins {
- compatible = "cros-ec,gpio-led-pins";
-
- color_power_off: color-power-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_POWER_LED";
- led-pins = <&gpio_ec_chg_led_w_c1>;
- led-values = <0>;
- };
-
- color_power_white: color-power-white {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_POWER_LED";
- br-color = "EC_LED_COLOR_WHITE";
- led-pins = <&gpio_ec_chg_led_w_c1>;
- led-values = <1>;
- };
-
- color_battery_off: color-battery-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_w_c0
- &gpio_ec_chg_led_r_c0>;
- led-values = <0 0 0>;
- };
-
- color_battery_amber: color-battery-amber {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_w_c0
- &gpio_ec_chg_led_r_c0>;
- led-values = <1 0 0>;
- };
-
- color_battery_white: color-battery-white {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_WHITE";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_w_c0
- &gpio_ec_chg_led_r_c0>;
- led-values = <0 1 0>;
- };
-
- color_battery_red: color-battery-red {
- led-color = "LED_RED";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_RED";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_w_c0
- &gpio_ec_chg_led_r_c0>;
- led-values = <0 0 1>;
- };
- };
-};
diff --git a/zephyr/program/herobrine/evoker/led_policy.dtsi b/zephyr/program/herobrine/evoker/led_policy.dtsi
deleted file mode 100644
index fc17755ede..0000000000
--- a/zephyr/program/herobrine/evoker/led_policy.dtsi
+++ /dev/null
@@ -1,86 +0,0 @@
-#include <dt-bindings/battery.h>
-
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- battery-state-charge {
- charge-state = "PWR_STATE_CHARGE";
-
- color-0 {
- led-color = <&color_battery_amber>;
- };
- };
-
- battery-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_battery_white>;
- };
- };
-
- battery-state-discharge {
- charge-state = "PWR_STATE_DISCHARGE";
-
- color-0 {
- led-color = <&color_battery_off>;
- };
- };
-
- battery-state-error {
- charge-state = "PWR_STATE_ERROR";
-
- color-0 {
- led-color = <&color_battery_red>;
- };
- };
-
- /* force idle mode */
- battery-state-forced-idle {
- charge-state = "PWR_STATE_FORCED_IDLE";
-
- /* Red 1 sec, White 1 sec */
- color-0 {
- led-color = <&color_battery_red>;
- period-ms = <1000>;
- };
-
- color-1 {
- led-color = <&color_battery_white>;
- period-ms = <1000>;
- };
- };
-
- pwr-power-state-s0 {
- chipset-state = "POWER_S0";
-
- color-0 {
- led-color = <&color_power_white>;
- };
- };
-
- power-state-s3 {
- chipset-state = "POWER_S3";
-
- /* white LED - on 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_power_white>;
- period-ms = <1000>;
- };
-
- color-1 {
- led-color = <&color_power_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-s5 {
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_power_off>;
- };
- };
- };
-};
diff --git a/zephyr/program/herobrine/evoker/motionsense.dtsi b/zephyr/program/herobrine/evoker/motionsense.dtsi
deleted file mode 100644
index aa7646e0b3..0000000000
--- a/zephyr/program/herobrine/evoker/motionsense.dtsi
+++ /dev/null
@@ -1,148 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi260-int = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- mutex_bmi260: bmi260-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <(-1) 0 0
- 0 (-1) 0
- 0 0 1>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bma4xx_data: bma4xx-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
-
- bmi260_data: bmi260-drv-data {
- compatible = "cros-ec,drvdata-bmi260";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&bma4xx_data>;
- i2c-spi-addr-flags = "BMA4_I2C_ADDR_PRIMARY";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi260-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi260>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi260_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,bmi260-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi260>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi260_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_accel_gyro>;
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/herobrine/evoker/project.conf b/zephyr/program/herobrine/evoker/project.conf
deleted file mode 100644
index a57c119b90..0000000000
--- a/zephyr/program/herobrine/evoker/project.conf
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Evoker board-specific Kconfig settings.
-CONFIG_BOARD_EVOKER=y
-
-# Disable type-c port sourcing 3A
-CONFIG_PLATFORM_EC_CONFIG_USB_PD_3A_PORTS=0
-
-CONFIG_PLATFORM_EC_ACCEL_BMA255=n
-CONFIG_PLATFORM_EC_ACCEL_BMA4XX=y
-
-# ISL9238C disable the CMOUT latch function.
-CONFIG_PLATFORM_EC_ISL9238C_DISABLE_CMOUT_LATCH=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_CHARGER_DUMP=y
-
-# Disable USB-A
-CONFIG_PLATFORM_EC_USBA=n
-
-# Set PCF85063A CAP_SEL
-CONFIG_PLATFORM_EC_PCF85063A_CAP_SEL=y
diff --git a/zephyr/program/herobrine/evoker/project.overlay b/zephyr/program/herobrine/evoker/project.overlay
deleted file mode 100644
index 61d3129f70..0000000000
--- a/zephyr/program/herobrine/evoker/project.overlay
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Herobrine program common DTS includes */
-#include "../adc.dtsi"
-#include "../common.dtsi"
-#include "../i2c.dtsi"
-#include "../interrupts.dtsi"
-#include "../keyboard.dtsi"
-#include "../default_gpio_pinctrl.dtsi"
-#include "../display.dtsi"
-#include "../switchcap.dtsi"
-#include "../usbc.dtsi"
-
-/* Evoker project DTS includes*/
-#include "gpio.dtsi"
-#include "led_pins.dtsi"
-#include "led_policy.dtsi"
-#include "motionsense.dtsi"
-
-/* evoker overrides follow... */
-/* battery overrides */
-/ {
- batteries {
- default_battery: pc_vp_bp153 {
- compatible = "smp,pc-vp-bp153", "battery-smart";
- };
- ap16l5j {
- compatible = "panasonic,ap16l5j", "battery-smart";
- };
- };
-
-};
-
-/* i2c overrides */
-&i2c1_0 {
- ppc_port0_alt: sn5s330@40 {
- compatible = "ti,sn5s330";
- status = "okay";
- reg = <0x40>;
- };
-};
-
-&i2c2_0 {
- ppc_port1_alt: sn5s330@40 {
- compatible = "ti,sn5s330";
- status = "okay";
- reg = <0x40>;
- };
-};
-
-/* interrupts overrides */
-/ {
- gpio-interrupts {
- /delete-node/ usb_a0_oc;
- };
-};
diff --git a/zephyr/program/herobrine/gpio.dtsi b/zephyr/program/herobrine/gpio.dtsi
deleted file mode 100644
index 60a60ec658..0000000000
--- a/zephyr/program/herobrine/gpio.dtsi
+++ /dev/null
@@ -1,321 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &gpio_ec_wp_odl;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_usb_c0_pd_int_odl: usb_c0_pd_int_odl {
- gpios = <&gpioe 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_PD_INT_ODL";
- };
- gpio_usb_c1_pd_int_odl: usb_c1_pd_int_odl {
- gpios = <&gpiof 5 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_PD_INT_ODL";
- };
- gpio_usb_c0_swctl_int_odl: usb_c0_swctl_int_odl {
- gpios = <&gpio0 3 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_SWCTL_INT_ODL";
- };
- gpio_usb_c1_swctl_int_odl: usb_c1_swctl_int_odl {
- gpios = <&gpio4 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_SWCTL_INT_ODL";
- };
- gpio_usb_c0_bc12_int_l: usb_c0_bc12_int_l {
- gpios = <&gpio6 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_usb_c1_bc12_int_l: usb_c1_bc12_int_l {
- gpios = <&gpio8 2 GPIO_INPUT_PULL_UP>;
- };
- gpio_usb_a0_oc_odl: usb_a0_oc_odl {
- gpios = <&gpiof 4 GPIO_INPUT_PULL_UP>;
- };
- gpio_chg_acok_od: chg_acok_od {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_ec_pwr_btn_odl: ec_pwr_btn_odl {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_ec_voldn_btn_odl: ec_voldn_btn_odl {
- gpios = <&gpio6 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_ec_volup_btn_odl: ec_volup_btn_odl {
- gpios = <&gpioc 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpiod 3 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_lid_open_ec: lid_open_ec {
- gpios = <&gpio0 1 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_ap_rst_l: ap_rst_l {
- gpios = <&gpio5 1 GPIO_INPUT>;
- enum-name = "GPIO_AP_RST_L";
- };
- gpio_ps_hold: ps_hold {
- gpios = <&gpioa 6 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_PS_HOLD";
- };
- gpio_ap_suspend: ap_suspend {
- gpios = <&gpio5 7 GPIO_INPUT>;
- enum-name = "GPIO_AP_SUSPEND";
- };
- gpio_mb_power_good: mb_power_good {
- gpios = <&gpio3 7 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_POWER_GOOD";
- };
- gpio_warm_reset_l: warm_reset_l {
- gpios = <&gpiob 0 GPIO_INPUT>;
- enum-name = "GPIO_WARM_RESET_L";
- };
- ap_ec_spi_cs_l {
- gpios = <&gpio5 3 GPIO_INPUT_PULL_DOWN>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpioc 6 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_accel_gyro_int_l: accel_gyro_int_l {
- gpios = <&gpioa 3 GPIO_INPUT>;
- };
- gpio_rtc_ec_wake_odl: rtc_ec_wake_odl {
- gpios = <&gpio0 2 GPIO_INPUT>;
- };
- ec_entering_rw {
- gpios = <&gpio7 2 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- ccd_mode_odl {
- gpios = <&gpio6 3 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- ec_batt_pres_odl {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- ec_gsc_packet_mode {
- gpios = <&gpio8 3 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- pmic_resin_l {
- gpios = <&gpioa 0 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PMIC_RESIN_L";
- };
- pmic_kpd_pwr_odl {
- gpios = <&gpioa 2 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PMIC_KPD_PWR_ODL";
- };
- ap_ec_int_l {
- gpios = <&gpio5 6 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_switchcap_on: switchcap_on {
- gpios = <&gpiod 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_SWITCHCAP_ON";
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpio7 3 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_EN_PP5000";
- };
- ec_bl_disable_l {
- /* The PMIC controls backlight enable and this pin must
- * be HiZ for normal operation. But the backlight can
- * be enabled by setting this pin low and configuring it
- * as an output.
- */
- gpios = <&gpiob 6 GPIO_INPUT>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- lid_accel_int_l {
- gpios = <&gpioa 1 GPIO_INPUT>;
- };
- tp_int_gate {
- gpios = <&gpio7 4 GPIO_OUTPUT_LOW>;
- };
- gpio_usb_c0_pd_rst_l: usb_c0_pd_rst_l {
- gpios = <&gpiof 1 GPIO_OUTPUT_HIGH>;
- };
- gpio_usb_c1_pd_rst_l: usb_c1_pd_rst_l {
- gpios = <&gpioe 4 GPIO_OUTPUT_HIGH>;
- };
- gpio_dp_mux_oe_l: dp_mux_oe_l {
- gpios = <&gpiob 1 GPIO_ODR_HIGH>;
- };
- gpio_dp_mux_sel: dp_mux_sel {
- gpios = <&gpio4 5 GPIO_OUTPUT_LOW>;
- };
- gpio_dp_hot_plug_det_r: dp_hot_plug_det_r {
- gpios = <&gpio9 5 GPIO_OUTPUT_LOW>;
- };
- gpio_en_usb_a_5v: en_usb_a_5v {
- gpios = <&gpiof 0 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_USB_A_5V";
- };
- usb_a_cdp_ilim_en_l {
- gpios = <&gpio7 5 GPIO_OUTPUT_HIGH>;
- };
- gpio_usb_c0_frs_en: usb_c0_frs_en {
- gpios = <&gpioc 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C0_FRS_EN";
- };
- gpio_usb_c1_frs_en: usb_c1_frs_en {
- gpios = <&gpioc 1 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C1_FRS_EN";
- };
- gpio_ec_chg_led_y_c0: ec_chg_led_y_c0 {
- gpios = <&gpio6 0 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_chg_led_w_c0: ec_chg_led_w_c0 {
- gpios = <&gpioc 0 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_chg_led_y_c1: ec_chg_led_y_c1 {
- gpios = <&gpioc 3 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_chg_led_w_c1: ec_chg_led_w_c1 {
- gpios = <&gpioc 4 GPIO_OUTPUT_LOW>;
- };
- ap_ec_spi_mosi {
- gpios = <&gpio4 6 GPIO_INPUT_PULL_DOWN>;
- };
- ap_ec_spi_miso {
- gpios = <&gpio4 7 GPIO_INPUT_PULL_DOWN>;
- };
- ap_ec_spi_clk {
- gpios = <&gpio5 5 GPIO_INPUT_PULL_DOWN>;
- };
- gpio_brd_id0: brd_id0 {
- gpios = <&gpio9 4 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION1";
- };
- gpio_brd_id1: brd_id1 {
- gpios = <&gpio9 7 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION2";
- };
- gpio_brd_id2: brd_id2 {
- gpios = <&gpioa 5 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION3";
- };
- gpio_sku_id0: sku_id0 {
- gpios = <&gpio6 7 GPIO_INPUT>;
- };
- gpio_sku_id1: sku_id1 {
- gpios = <&gpio7 0 GPIO_INPUT>;
- };
- gpio_sku_id2: sku_id2 {
- gpios = <&gpioe 1 GPIO_INPUT>;
- };
- gpio_switchcap_pg: src_vph_pwr_pg {
- gpios = <&gpioe 2 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_SWITCHCAP_PG";
- };
- arm_x86 {
- gpios = <&gpio6 6 GPIO_OUTPUT_LOW>;
- };
- ec-i2c-sensor-scl {
- gpios = <&gpiob 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-sensor-sda {
- gpios = <&gpiob 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
- };
-
- usba-port-enable-list {
- compatible = "cros-ec,usba-port-enable-pins";
- enable-pins = <&gpio_en_usb_a_5v>;
- };
-
- gpio_id_sku: sku {
- compatible = "cros-ec,gpio-id";
- bits = <
- &gpio_sku_id0
- &gpio_sku_id1
- &gpio_sku_id2
- >;
- system = "ternary";
- };
-
- gpio_id_board: board {
- compatible = "cros-ec,gpio-id";
- bits = <
- &gpio_brd_id0
- &gpio_brd_id1
- &gpio_brd_id2
- >;
- system = "ternary";
- };
-
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios =
- <&gpio5 2 0>,
- <&gpio5 4 0>,
- <&gpio7 6 0>,
- <&gpiod 1 0>,
- <&gpiod 0 0>,
- <&gpioe 3 0>,
- <&gpio0 4 0>,
- <&gpiod 6 0>,
- <&gpio3 2 0>,
- <&gpio3 5 0>,
- <&gpiod 7 0>,
- <&gpio8 6 0>,
- <&gpiod 4 0>,
- <&gpio4 1 0>,
- <&gpio3 4 0>,
- <&gpioc 7 0>,
- <&gpioa 4 0>,
- <&gpio9 6 0>,
- <&gpio9 3 0>,
- <&gpioa 7 0>,
- <&gpio5 0 0>,
- <&gpio8 1 0>,
- <&gpiob 7 0>;
- };
-};
-
-/* Power switch logic input pads */
-&psl_in1_gpd2 {
- /* ACOK_OD */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in2_gp00 {
- /* EC_PWR_BTN_ODL */
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-&psl_in3_gp01 {
- /* LID_OPEN_EC */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in4_gp02 {
- /* RTC_EC_WAKE_ODL */
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-/* Power domain device controlled by PSL (Power Switch Logic) IO pads */
-&power_ctrl_psl {
- status = "okay";
- pinctrl-names = "sleep";
- pinctrl-0 = <&psl_in1_gpd2 &psl_in2_gp00 &psl_in3_gp01 &psl_in4_gp02>;
-};
diff --git a/zephyr/program/herobrine/herobrine/CMakeLists.txt b/zephyr/program/herobrine/herobrine/CMakeLists.txt
deleted file mode 100644
index 5524db7215..0000000000
--- a/zephyr/program/herobrine/herobrine/CMakeLists.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/alt_dev_replacement.c")
diff --git a/zephyr/program/herobrine/herobrine/led_pins.dtsi b/zephyr/program/herobrine/herobrine/led_pins.dtsi
deleted file mode 100644
index 23a0271e69..0000000000
--- a/zephyr/program/herobrine/herobrine/led_pins.dtsi
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- gpio-led-pins {
- compatible = "cros-ec,gpio-led-pins";
-
- color_off_left: color-off-left {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_LEFT_LED";
- led-pins = <&gpio_ec_chg_led_y_c1
- &gpio_ec_chg_led_w_c1>;
- led-values = <0 0>;
- };
-
- color_off_right: color-off-right {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_RIGHT_LED";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_w_c0>;
- led-values = <0 0>;
- };
-
- color_amber_left: color-amber-left {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_LEFT_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pins = <&gpio_ec_chg_led_y_c1
- &gpio_ec_chg_led_w_c1>;
- led-values = <1 0>;
- };
-
- color_amber_right: color-amber-right {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_RIGHT_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_w_c0>;
- led-values = <1 0>;
- };
-
- color_white_left: color-white-left {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_LEFT_LED";
- br-color = "EC_LED_COLOR_WHITE";
- led-pins = <&gpio_ec_chg_led_y_c1
- &gpio_ec_chg_led_w_c1>;
- led-values = <0 1>;
- };
-
- color_white_right: color-white-right {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_RIGHT_LED";
- br-color = "EC_LED_COLOR_WHITE";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_w_c0>;
- led-values = <0 1>;
- };
- };
-};
diff --git a/zephyr/program/herobrine/herobrine/led_policy.dtsi b/zephyr/program/herobrine/herobrine/led_policy.dtsi
deleted file mode 100644
index 13e5306deb..0000000000
--- a/zephyr/program/herobrine/herobrine/led_policy.dtsi
+++ /dev/null
@@ -1,202 +0,0 @@
-#include <dt-bindings/battery.h>
-
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- power-state-charge-left {
- charge-state = "PWR_STATE_CHARGE";
- charge-port = <1>; /* Left port */
-
- /* Turn off the right LED */
- color-0 {
- led-color = <&color_off_right>;
- };
- /* Left LED to Amber */
- color-1 {
- led-color = <&color_amber_left>;
- };
- };
-
- power-state-charge-right {
- charge-state = "PWR_STATE_CHARGE";
- charge-port = <0>; /* Right port */
-
- /* Turn off the left LED */
- color-0 {
- led-color = <&color_off_left>;
- };
- /* Right LED to Amber */
- color-1 {
- led-color = <&color_amber_right>;
- };
- };
-
- power-state-discharge-right-low {
- charge-state = "PWR_STATE_DISCHARGE";
- /* Battery percent range (>= Empty, <= Low) */
- batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
-
- /* Turn off the left LED */
- color-0 {
- led-color = <&color_off_left>;
- };
- /* Right LED - White 1 sec, off 3 sec */
- color-1 {
- led-color = <&color_white_right>;
- period-ms = <1000>;
- };
- color-2 {
- led-color = <&color_off_right>;
- period-ms = <3000>;
- };
- };
-
- power-state-discharge-right {
- charge-state = "PWR_STATE_DISCHARGE";
- /* Battery percent range (> Low, <= Full) */
- batt-lvl = <(BATTERY_LEVEL_LOW + 1) BATTERY_LEVEL_FULL>;
-
- /* Turn off the left LED */
- color-0 {
- led-color = <&color_off_left>;
- };
- /* Turn off the right LED */
- color-1 {
- led-color = <&color_off_right>;
- };
- };
-
- power-state-error-left {
- charge-state = "PWR_STATE_ERROR";
- charge-port = <1>; /* Left port */
-
- /* Turn off the right LED */
- color-0 {
- led-color = <&color_off_right>;
- };
- /* Left LED - White 2 sec, off 2 sec */
- color-1 {
- led-color = <&color_white_left>;
- period-ms = <2000>;
- };
- color-2 {
- led-color = <&color_off_right>;
- period-ms = <2000>;
- };
- };
-
- power-state-error-right {
- charge-state = "PWR_STATE_ERROR";
- charge-port = <0>; /* Right port */
-
- /* Turn off the left LED */
- color-0 {
- led-color = <&color_off_left>;
- };
- /* Right LED - White 2 sec, off 2 sec */
- color-1 {
- led-color = <&color_white_right>;
- period-ms = <2000>;
- };
- color-2 {
- led-color = <&color_off_right>;
- period-ms = <2000>;
- };
- };
-
- power-state-near-full-left {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
- charge-port = <1>; /* Left port */
-
- /* Turn off the right LED */
- color-0 {
- led-color = <&color_off_right>;
- };
- /* Left LED to White */
- color-1 {
- led-color = <&color_white_left>;
- };
- };
-
- power-state-near-full-right {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
- charge-port = <0>; /* Right port */
-
- /* Turn off the left LED */
- color-0 {
- led-color = <&color_off_left>;
- };
- /* Right LED to White */
- color-1 {
- led-color = <&color_white_right>;
- };
- };
-
- power-state-forced-idle-left {
- charge-state = "PWR_STATE_FORCED_IDLE";
- charge-port = <1>; /* Left port */
-
- /* Turn off the right LED */
- color-0 {
- led-color = <&color_off_right>;
- };
- /* Left LED - Amber 3 sec, Off 1 sec */
- color-1 {
- led-color = <&color_amber_left>;
- period-ms = <3000>;
- };
- color-2 {
- led-color = <&color_off_left>;
- period-ms = <1000>;
- };
- };
-
- power-state-forced-idle-right {
- charge-state = "PWR_STATE_FORCED_IDLE";
- charge-port = <0>; /* Right port */
-
- /* Turn off the left LED */
- color-0 {
- led-color = <&color_off_left>;
- };
- /* Right LED - Amber 3 sec, Off 1 sec */
- color-1 {
- led-color = <&color_amber_right>;
- period-ms = <3000>;
- };
- color-2 {
- led-color = <&color_off_right>;
- period-ms = <1000>;
- };
- };
-
- power-state-idle-left {
- charge-state = "PWR_STATE_IDLE";
- charge-port = <1>; /* Left port */
-
- /* Turn off the right LED */
- color-0 {
- led-color = <&color_off_right>;
- };
- /* Left LED to White */
- color-1 {
- led-color = <&color_white_left>;
- };
- };
-
- power-state-idle-right {
- charge-state = "PWR_STATE_IDLE";
- charge-port = <0>; /* Right port */
-
- /* Turn off the left LED */
- color-0 {
- led-color = <&color_off_left>;
- };
- /* Right LED to White */
- color-1 {
- led-color = <&color_white_right>;
- };
- };
- };
-};
diff --git a/zephyr/program/herobrine/herobrine/project.conf b/zephyr/program/herobrine/herobrine/project.conf
deleted file mode 100644
index bf39f65692..0000000000
--- a/zephyr/program/herobrine/herobrine/project.conf
+++ /dev/null
@@ -1,13 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Herobrine-NPCX9 reference-board-specific Kconfig settings.
-CONFIG_BOARD_HEROBRINE=y
-
-# Sensors
-CONFIG_PLATFORM_EC_ALS=y
-
-# Sensor Drivers
-CONFIG_PLATFORM_EC_ALS_TCS3400=y
-CONFIG_PLATFORM_EC_ALS_TCS3400_EMULATED_IRQ_EVENT=y
diff --git a/zephyr/program/herobrine/herobrine/project.overlay b/zephyr/program/herobrine/herobrine/project.overlay
deleted file mode 100644
index 6ee53f67f0..0000000000
--- a/zephyr/program/herobrine/herobrine/project.overlay
+++ /dev/null
@@ -1,64 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Herobrine program common DTS includes */
-#include "../adc.dtsi"
-#include "../common.dtsi"
-#include "../i2c.dtsi"
-#include "../interrupts.dtsi"
-#include "../keyboard.dtsi"
-#include "../default_gpio_pinctrl.dtsi"
-#include "../display.dtsi"
-#include "../gpio.dtsi"
-#include "../motionsense.dtsi"
-#include "../switchcap.dtsi"
-#include "../usbc.dtsi"
-
-/* Herobrine project DTS includes*/
-#include "led_pins.dtsi"
-#include "led_policy.dtsi"
-
-/* herobrine overrides follow... */
-/* battery overrides */
-/ {
- batteries {
- default_battery: ap16l5j {
- compatible = "panasonic,ap16l5j", "battery-smart";
- };
- };
-};
-
-/* i2c overrides */
-&i2c1_0 {
-
- /delete-node/ syv682x@41;
- ppc_port0: sn5s330@40 {
- compatible = "ti,sn5s330";
- status = "okay";
- reg = <0x40>;
- };
-
- ppc_port0_alt: syv682x@41 {
- compatible = "silergy,syv682x";
- status = "okay";
- reg = <0x41>;
- frs_en_gpio = <&gpio_usb_c0_frs_en>;
- };
-};
-
-&i2c2_0 {
-
- /delete-node/ syv682x@41;
- ppc_port1: sn5s330@40 {
- compatible = "ti,sn5s330";
- status = "okay";
- reg = <0x40>;
- };
-};
-
-/* usbc overrides */
-&port0 {
- ppc_alt = <&ppc_port0_alt>;
-};
diff --git a/zephyr/program/herobrine/herobrine/src/alt_dev_replacement.c b/zephyr/program/herobrine/herobrine/src/alt_dev_replacement.c
deleted file mode 100644
index e1e9250ec4..0000000000
--- a/zephyr/program/herobrine/herobrine/src/alt_dev_replacement.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "cros_board_info.h"
-#include "hooks.h"
-#include "usbc/ppc.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_REGISTER(alt_dev_replacement);
-
-#define BOARD_VERSION_UNKNOWN 0xffffffff
-
-/* Check board version to decide which ppc is used. */
-static bool board_has_alt_ppc(void)
-{
- static uint32_t board_version = BOARD_VERSION_UNKNOWN;
-
- if (board_version == BOARD_VERSION_UNKNOWN) {
- if (cbi_get_board_version(&board_version) != EC_SUCCESS) {
- LOG_ERR("Failed to get board version.");
- board_version = 0;
- }
- }
-
- return (board_version >= 1);
-}
-
-static void check_alternate_devices(void)
-{
- /* Configure the PPC driver */
- if (board_has_alt_ppc())
- /* Arg is the USB port number */
- PPC_ENABLE_ALTERNATE(0);
-}
-DECLARE_HOOK(HOOK_INIT, check_alternate_devices, HOOK_PRIO_DEFAULT);
diff --git a/zephyr/program/herobrine/hoglin/gpio.dtsi b/zephyr/program/herobrine/hoglin/gpio.dtsi
deleted file mode 100644
index c742393ff8..0000000000
--- a/zephyr/program/herobrine/hoglin/gpio.dtsi
+++ /dev/null
@@ -1,321 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &gpio_ec_wp_odl;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_usb_c0_pd_int_odl: usb_c0_pd_int_odl {
- gpios = <&gpioe 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_PD_INT_ODL";
- };
- gpio_usb_c1_pd_int_odl: usb_c1_pd_int_odl {
- gpios = <&gpiof 5 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_PD_INT_ODL";
- };
- gpio_usb_c0_swctl_int_odl: usb_c0_swctl_int_odl {
- gpios = <&gpio0 3 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_SWCTL_INT_ODL";
- };
- gpio_usb_c1_swctl_int_odl: usb_c1_swctl_int_odl {
- gpios = <&gpio4 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_SWCTL_INT_ODL";
- };
- gpio_usb_c0_bc12_int_l: usb_c0_bc12_int_l {
- gpios = <&gpio6 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_usb_c1_bc12_int_l: usb_c1_bc12_int_l {
- gpios = <&gpio8 2 GPIO_INPUT_PULL_UP>;
- };
- gpio_usb_a0_oc_odl: usb_a0_oc_odl {
- gpios = <&gpiof 4 GPIO_INPUT_PULL_UP>;
- };
- gpio_chg_acok_od: chg_acok_od {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_ec_pwr_btn_odl: ec_pwr_btn_odl {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_ec_voldn_btn_odl: ec_voldn_btn_odl {
- gpios = <&gpio6 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_ec_volup_btn_odl: ec_volup_btn_odl {
- gpios = <&gpioc 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpiod 3 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_lid_open_ec: lid_open_ec {
- gpios = <&gpio0 1 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_ap_rst_l: ap_rst_l {
- gpios = <&gpio5 1 GPIO_INPUT>;
- enum-name = "GPIO_AP_RST_L";
- };
- gpio_ps_hold: ps_hold {
- gpios = <&gpioa 6 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_PS_HOLD";
- };
- gpio_ap_suspend: ap_suspend {
- gpios = <&gpio5 7 GPIO_INPUT>;
- enum-name = "GPIO_AP_SUSPEND";
- };
- gpio_mb_power_good: mb_power_good {
- gpios = <&gpio3 7 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_POWER_GOOD";
- };
- gpio_warm_reset_l: warm_reset_l {
- gpios = <&gpiob 0 GPIO_INPUT>;
- enum-name = "GPIO_WARM_RESET_L";
- };
- ap_ec_spi_cs_l {
- gpios = <&gpio5 3 GPIO_INPUT_PULL_DOWN>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpioc 6 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_accel_gyro_int_l: accel_gyro_int_l {
- gpios = <&gpioa 3 GPIO_INPUT>;
- };
- gpio_rtc_ec_wake_odl: rtc_ec_wake_odl {
- gpios = <&gpio0 2 GPIO_INPUT>;
- };
- ec_entering_rw {
- gpios = <&gpio7 2 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- ccd_mode_odl {
- gpios = <&gpio6 3 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- ec_batt_pres_odl {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- ec_gsc_packet_mode {
- gpios = <&gpio8 3 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- pmic_resin_l {
- gpios = <&gpioa 0 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PMIC_RESIN_L";
- };
- pmic_kpd_pwr_odl {
- gpios = <&gpioa 2 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PMIC_KPD_PWR_ODL";
- };
- ap_ec_int_l {
- gpios = <&gpio5 6 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_switchcap_on: switchcap_on {
- gpios = <&gpio5 0 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_SWITCHCAP_ON";
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpio7 3 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_EN_PP5000";
- };
- ec_bl_disable_l {
- /* The PMIC controls backlight enable and this pin must
- * be HiZ for normal operation. But the backlight can
- * be enabled by setting this pin low and configuring it
- * as an output.
- */
- gpios = <&gpiob 6 GPIO_INPUT>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- lid_accel_int_l {
- gpios = <&gpioa 1 GPIO_INPUT>;
- };
- tp_int_gate {
- gpios = <&gpio7 4 GPIO_OUTPUT_LOW>;
- };
- gpio_usb_c0_pd_rst_l: usb_c0_pd_rst_l {
- gpios = <&gpiof 1 GPIO_OUTPUT_HIGH>;
- };
- gpio_usb_c1_pd_rst_l: usb_c1_pd_rst_l {
- gpios = <&gpioe 4 GPIO_OUTPUT_HIGH>;
- };
- gpio_dp_mux_oe_l: dp_mux_oe_l {
- gpios = <&gpiob 1 GPIO_ODR_HIGH>;
- };
- gpio_dp_mux_sel: dp_mux_sel {
- gpios = <&gpio4 5 GPIO_OUTPUT_LOW>;
- };
- gpio_dp_hot_plug_det_r: dp_hot_plug_det_r {
- gpios = <&gpio9 5 GPIO_OUTPUT_LOW>;
- };
- gpio_en_usb_a_5v: en_usb_a_5v {
- gpios = <&gpiof 0 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_USB_A_5V";
- };
- usb_a_cdp_ilim_en_l {
- gpios = <&gpio7 5 GPIO_OUTPUT_HIGH>;
- };
- gpio_usb_c0_frs_en: usb_c0_frs_en {
- gpios = <&gpioc 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C0_FRS_EN";
- };
- gpio_usb_c1_frs_en: usb_c1_frs_en {
- gpios = <&gpioc 1 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C1_FRS_EN";
- };
- gpio_ec_chg_led_b_c0: ec_chg_led_b_c0 {
- gpios = <&gpio6 0 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_chg_led_r_c0: ec_chg_led_r_c0 {
- gpios = <&gpioc 0 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_chg_led_y_c1: ec_chg_led_b_c1 {
- gpios = <&gpioc 3 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_chg_led_w_c1: ec_chg_led_r_c1 {
- gpios = <&gpioc 4 GPIO_OUTPUT_LOW>;
- };
- ap_ec_spi_mosi {
- gpios = <&gpio4 6 GPIO_INPUT_PULL_DOWN>;
- };
- ap_ec_spi_miso {
- gpios = <&gpio4 7 GPIO_INPUT_PULL_DOWN>;
- };
- ap_ec_spi_clk {
- gpios = <&gpio5 5 GPIO_INPUT_PULL_DOWN>;
- };
- gpio_brd_id0: brd_id0 {
- gpios = <&gpio9 4 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION1";
- };
- gpio_brd_id1: brd_id1 {
- gpios = <&gpio9 7 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION2";
- };
- gpio_brd_id2: brd_id2 {
- gpios = <&gpioa 5 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION3";
- };
- gpio_sku_id0: sku_id0 {
- gpios = <&gpio6 7 GPIO_INPUT>;
- };
- gpio_sku_id1: sku_id1 {
- gpios = <&gpio7 0 GPIO_INPUT>;
- };
- gpio_sku_id2: sku_id2 {
- gpios = <&gpioe 1 GPIO_INPUT>;
- };
- gpio_switchcap_pg: src_vph_pwr_pg {
- gpios = <&gpioe 2 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_SWITCHCAP_PG";
- };
- arm_x86 {
- gpios = <&gpio6 6 GPIO_OUTPUT_LOW>;
- };
- ec-i2c-sensor-scl {
- gpios = <&gpiob 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-sensor-sda {
- gpios = <&gpiob 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
- };
-
- usba-port-enable-list {
- compatible = "cros-ec,usba-port-enable-pins";
- enable-pins = <&gpio_en_usb_a_5v>;
- };
-
- gpio_id_sku: sku {
- compatible = "cros-ec,gpio-id";
- bits = <
- &gpio_sku_id0
- &gpio_sku_id1
- &gpio_sku_id2
- >;
- system = "ternary";
- };
-
- gpio_id_board: board {
- compatible = "cros-ec,gpio-id";
- bits = <
- &gpio_brd_id0
- &gpio_brd_id1
- &gpio_brd_id2
- >;
- system = "ternary";
- };
-
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios =
- <&gpio5 2 0>,
- <&gpio5 4 0>,
- <&gpio7 6 0>,
- <&gpiod 1 0>,
- <&gpiod 0 0>,
- <&gpioe 3 0>,
- <&gpio0 4 0>,
- <&gpiod 6 0>,
- <&gpio3 2 0>,
- <&gpio3 5 0>,
- <&gpiod 7 0>,
- <&gpio8 6 0>,
- <&gpiod 4 0>,
- <&gpio4 1 0>,
- <&gpio3 4 0>,
- <&gpioc 7 0>,
- <&gpioa 4 0>,
- <&gpio9 6 0>,
- <&gpio9 3 0>,
- <&gpioa 7 0>,
- <&gpiod 5 0>,
- <&gpio8 1 0>,
- <&gpiob 7 0>;
- };
-};
-
-/* Power switch logic input pads */
-&psl_in1_gpd2 {
- /* ACOK_OD */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in2_gp00 {
- /* EC_PWR_BTN_ODL */
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-&psl_in3_gp01 {
- /* LID_OPEN_EC */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in4_gp02 {
- /* RTC_EC_WAKE_ODL */
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-/* Power domain device controlled by PSL (Power Switch Logic) IO pads */
-&power_ctrl_psl {
- status = "okay";
- pinctrl-names = "sleep";
- pinctrl-0 = <&psl_in1_gpd2 &psl_in2_gp00 &psl_in3_gp01 &psl_in4_gp02>;
-};
diff --git a/zephyr/program/herobrine/hoglin/led_pins.dtsi b/zephyr/program/herobrine/hoglin/led_pins.dtsi
deleted file mode 100644
index b70c385b98..0000000000
--- a/zephyr/program/herobrine/hoglin/led_pins.dtsi
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- gpio-led-pins {
- compatible = "cros-ec,gpio-led-pins";
-
- color_off: color-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pins = <&gpio_ec_chg_led_b_c0
- &gpio_ec_chg_led_r_c0>;
- led-values = <0 0>;
- };
-
- color_blue: color-blue {
- led-color = "LED_BLUE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_BLUE";
- led-pins = <&gpio_ec_chg_led_b_c0
- &gpio_ec_chg_led_r_c0>;
- led-values = <1 0>;
- };
-
- color_red: color-red {
- led-color = "LED_RED";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_RED";
- led-pins = <&gpio_ec_chg_led_b_c0
- &gpio_ec_chg_led_r_c0>;
- led-values = <0 1>;
- };
- };
-};
diff --git a/zephyr/program/herobrine/hoglin/led_policy.dtsi b/zephyr/program/herobrine/hoglin/led_policy.dtsi
deleted file mode 100644
index 043dfbcaa5..0000000000
--- a/zephyr/program/herobrine/hoglin/led_policy.dtsi
+++ /dev/null
@@ -1,95 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
-
- power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- /* Blue 1 sec, off 3 sec */
- color-0 {
- led-color = <&color_blue>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
-
- power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-error {
- charge-state = "PWR_STATE_ERROR";
-
- /* Red 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_red>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_red>;
- };
- };
-
- power-state-forced-idle {
- charge-state = "PWR_STATE_FORCED_IDLE";
-
- /* Red 2 sec, Blue 2 sec */
- color-0 {
- led-color = <&color_red>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_blue>;
- period-ms = <2000>;
- };
- };
-
- power-state-idle-default {
- charge-state = "PWR_STATE_IDLE";
-
- color-0 {
- led-color = <&color_red>;
- };
- };
- };
-};
diff --git a/zephyr/program/herobrine/hoglin/motionsense.dtsi b/zephyr/program/herobrine/hoglin/motionsense.dtsi
deleted file mode 100644
index c3935178ff..0000000000
--- a/zephyr/program/herobrine/hoglin/motionsense.dtsi
+++ /dev/null
@@ -1,241 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi260-int = &base_accel;
- tcs3400-int = &als_clear;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- mutex_bmi260: bmi260-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <(-1) 0 0
- 0 (-1) 0
- 0 0 1>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <1 0 0
- 0 (-1) 0
- 0 0 (-1)>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bma4xx_data: bma4xx-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
-
- bmi260_data: bmi260-drv-data {
- compatible = "cros-ec,drvdata-bmi260";
- status = "okay";
- };
-
- tcs_clear_data: tcs3400-clear-drv-data {
- compatible = "cros-ec,drvdata-tcs3400-clear";
- status = "okay";
-
- als-drv-data {
- compatible = "cros-ec,accelgyro-als-drv-data";
- als-cal {
- scale = <1>;
- uscale = <0>;
- offset = <0>;
- als-channel-scale {
- compatible = "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- };
- };
-
- tcs_rgb_data: tcs3400-rgb-drv-data {
- compatible = "cros-ec,drvdata-tcs3400-rgb";
- status = "okay";
-
- /* node for rgb_calibration_t defined in accelgyro.h */
- rgb_calibration {
- compatible =
- "cros-ec,accelgyro-rgb-calibration";
-
- irt = <1>;
-
- rgb-cal-x {
- offset = <0>;
- coeff = <0 0 0 1>;
- als-channel-scale {
- compatible = "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- rgb-cal-y {
- offset = <0>;
- coeff = <0 0 0 1>;
- als-channel-scale {
- compatible = "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- rgb-cal-z {
- offset = <0>;
- coeff = <0 0 0 1>;
- als-channel-scale {
- compatible = "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- };
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&bma4xx_data>;
- i2c-spi-addr-flags = "BMA4_I2C_ADDR_PRIMARY";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi260-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi260>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi260_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,bmi260-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi260>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi260_data>;
- };
-
- als_clear: base-als-clear {
- compatible = "cros-ec,tcs3400-clear";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_CAMERA";
- port = <&i2c_sensor>;
- default-range = <0x10000>;
- drv-data = <&tcs_clear_data>;
- i2c-spi-addr-flags = "TCS3400_I2C_ADDR_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- /* Run ALS sensor in S0 */
- odr = <1000>;
- };
- };
- };
-
- base-als-rgb {
- compatible = "cros-ec,tcs3400-rgb";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_CAMERA";
- default-range = <0x10000>; /* scale = 1x, uscale = 0 */
- drv-data = <&tcs_rgb_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /* list of entries for motion_als_sensors */
- als-sensors = <&als_clear>;
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_accel_gyro>;
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel &als_clear>;
- };
-};
diff --git a/zephyr/program/herobrine/hoglin/project.conf b/zephyr/program/herobrine/hoglin/project.conf
deleted file mode 100644
index c6e20937c0..0000000000
--- a/zephyr/program/herobrine/hoglin/project.conf
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Hoglin reference-board-specific Kconfig settings.
-CONFIG_BOARD_HOGLIN=y
-CONFIG_PLATFORM_EC_ACCEL_BMA255=n
-CONFIG_PLATFORM_EC_ACCEL_BMA4XX=y
-
-# Sensors
-CONFIG_PLATFORM_EC_ALS=y
-
-# Sensor Drivers
-CONFIG_PLATFORM_EC_ALS_TCS3400=y
-CONFIG_PLATFORM_EC_ALS_TCS3400_EMULATED_IRQ_EVENT=y
diff --git a/zephyr/program/herobrine/hoglin/project.overlay b/zephyr/program/herobrine/hoglin/project.overlay
deleted file mode 100644
index e37a325654..0000000000
--- a/zephyr/program/herobrine/hoglin/project.overlay
+++ /dev/null
@@ -1,54 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Herobrine program common DTS includes */
-#include "../adc.dtsi"
-#include "../common.dtsi"
-#include "../i2c.dtsi"
-#include "../interrupts.dtsi"
-#include "../keyboard.dtsi"
-#include "../default_gpio_pinctrl.dtsi"
-#include "../usbc.dtsi"
-#include "../switchcap.dtsi"
-
-/* Hoglin project DTS includes*/
-#include "gpio.dtsi"
-#include "led_pins.dtsi"
-#include "led_policy.dtsi"
-#include "motionsense.dtsi"
-
-/* hoglin overrides follow... */
-/* battery overrides */
-/ {
- batteries {
- default_battery: 7c01 {
- compatible = "ganfeng,7c01", "battery-smart";
- };
- };
-
-};
-
-/* switchcap overrides */
-&{/switchcap} {
- /delete-property/ power-good-pin;
- poff-delay-ms = <550>;
-};
-
-/* i2c overrides */
-&i2c1_0 {
- /delete-node/ ps8xxx@b;
- tcpc_port0: ps8xxx@1b {
- compatible = "parade,ps8xxx";
- reg = <0x1b>;
- };
-};
-
-&i2c2_0 {
- /delete-node/ ps8xxx@b;
- tcpc_port1: ps8xxx@1b {
- compatible = "parade,ps8xxx";
- reg = <0x1b>;
- };
-};
diff --git a/zephyr/program/herobrine/i2c.dtsi b/zephyr/program/herobrine/i2c.dtsi
deleted file mode 100644
index 58c3f8d014..0000000000
--- a/zephyr/program/herobrine/i2c.dtsi
+++ /dev/null
@@ -1,181 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- i2c-0 = &i2c0_0;
- i2c-1 = &i2c1_0;
- i2c-2 = &i2c2_0;
- i2c-3 = &i2c3_0;
- i2c-4 = &i2c4_1;
- i2c-5 = &i2c5_0;
- i2c-7 = &i2c7_0;
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_power: power {
- i2c-port = <&i2c0_0>;
- remote-port = <0>;
- enum-names = "I2C_PORT_POWER",
- "I2C_PORT_BATTERY",
- "I2C_PORT_VIRTUAL_BATTERY",
- "I2C_PORT_CHARGER";
- };
- i2c_tcpc0: tcpc0 {
- i2c-port = <&i2c1_0>;
- dynamic-speed;
- enum-names = "I2C_PORT_TCPC0";
- };
- i2c_tcpc1: tcpc1 {
- i2c-port = <&i2c2_0>;
- dynamic-speed;
- enum-names = "I2C_PORT_TCPC1";
- };
- rtc {
- i2c-port = <&i2c4_1>;
- enum-names = "I2C_PORT_RTC";
- };
- i2c_eeprom: eeprom {
- i2c-port = <&i2c5_0>;
- enum-names = "I2C_PORT_EEPROM";
- };
- i2c_sensor: sensor {
- i2c-port = <&i2c7_0>;
- enum-names = "I2C_PORT_SENSOR",
- "I2C_PORT_ACCEL";
- };
- };
-
-
-};
-
-&i2c0_0 {
- label = "I2C_POWER";
- status = "okay";
- clock-frequency = <I2C_BITRATE_STANDARD>;
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c0_bc12>;
- };
-
- charger: isl923x@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-&i2c1_0 {
- label = "I2C_USB_C0_PD";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-
- ppc_port0: syv682x@41 {
- compatible = "silergy,syv682x";
- status = "okay";
- reg = <0x41>;
- frs_en_gpio = <&gpio_usb_c0_frs_en>;
- };
-
- tcpc_port0: ps8xxx@b {
- compatible = "parade,ps8xxx";
- reg = <0xb>;
- };
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-&i2c2_0 {
- label = "I2C_USB_C1_PD";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c2_0_sda_scl_gp91_92>;
- pinctrl-names = "default";
-
- ppc_port1: syv682x@41 {
- compatible = "silergy,syv682x";
- status = "okay";
- reg = <0x41>;
- frs_en_gpio = <&gpio_usb_c1_frs_en>;
- };
-
- tcpc_port1: ps8xxx@b {
- compatible = "parade,ps8xxx";
- reg = <0xb>;
- };
-};
-
-&i2c_ctrl2 {
- status = "okay";
-};
-
-&i2c3_0 {
- /* Not used as no WLC connected */
- clock-frequency = <I2C_BITRATE_FAST>;
-};
-
-&i2c4_1 {
- label = "I2C_RTC";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c4_1_sda_scl_gpf2_f3>;
- pinctrl-names = "default";
-
- pcf85063a: pcf85063a@51 {
- compatible = "nxp,rtc-pcf85063a";
- reg = <0x51>;
- int-pin = <&gpio_rtc_ec_wake_odl>;
- };
-};
-
-&i2c_ctrl4 {
- status = "okay";
-};
-
-&i2c5_0 {
- label = "I2C_EEPROM";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c5_0_sda_scl_gp33_36>;
- pinctrl-names = "default";
-
- bc12_port1: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c1_bc12>;
- };
-};
-
-&i2c_ctrl5 {
- status = "okay";
-};
-
-&i2c7_0 {
- label = "I2C_SENSOR";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl7 {
- status = "okay";
-};
diff --git a/zephyr/program/herobrine/include/board_chipset.h b/zephyr/program/herobrine/include/board_chipset.h
deleted file mode 100644
index 000bc06654..0000000000
--- a/zephyr/program/herobrine/include/board_chipset.h
+++ /dev/null
@@ -1,13 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#ifndef __CROS_EC_HEROBRINE_BOARD_CHIPSET_H
-#define __CROS_EC_HEROBRINE_BOARD_CHIPSET_H
-
-#include "common.h"
-
-__test_only void reset_pp5000_inited(void);
-
-#endif /* __CROS_EC_HEROBRINE_BOARD_CHIPSET_H */
diff --git a/zephyr/program/herobrine/interrupts.dtsi b/zephyr/program/herobrine/interrupts.dtsi
deleted file mode 100644
index 82650bfc51..0000000000
--- a/zephyr/program/herobrine/interrupts.dtsi
+++ /dev/null
@@ -1,115 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- int-wp = &int_wp_l;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_ac_present: ac_present {
- irq-pin = <&gpio_chg_acok_od>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open_ec>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_wp_l: wp_l {
- irq-pin = <&gpio_ec_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_power_button: power_button {
- irq-pin = <&gpio_ec_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_volume_up: volume_up {
- irq-pin = <&gpio_ec_volup_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_volume_down: volume_down {
- irq-pin = <&gpio_ec_voldn_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_ap_rst: ap_rst {
- irq-pin = <&gpio_ap_rst_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "chipset_ap_rst_interrupt";
- };
- int_ap_suspend: ap_suspend {
- irq-pin = <&gpio_ap_suspend>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_power_good: power_good {
- irq-pin = <&gpio_mb_power_good>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_ps_hold: ps_hold {
- irq-pin = <&gpio_ps_hold>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_warm_reset: warm_reset {
- irq-pin = <&gpio_warm_reset_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_usb_c0_pd: usb_c0_pd {
- irq-pin = <&gpio_usb_c0_pd_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c1_pd: usb_c1_pd {
- irq-pin = <&gpio_usb_c1_pd_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c0_swctl: usb_c0_swctl {
- irq-pin = <&gpio_usb_c0_swctl_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c1_swctl: usb_c1_swctl {
- irq-pin = <&gpio_usb_c1_swctl_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c0_bc12: usb_c0_bc12 {
- irq-pin = <&gpio_usb_c0_bc12_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb0_evt";
- };
- int_usb_c1_bc12: usb_c1_bc12 {
- irq-pin = <&gpio_usb_c1_bc12_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb1_evt";
- };
- int_usb_a0_oc: usb_a0_oc {
- irq-pin = <&gpio_usb_a0_oc_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "usba_oc_interrupt";
- };
- int_accel_gyro: accel_gyro {
- irq-pin = <&gpio_accel_gyro_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bmi260_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&gpio_tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- };
-};
diff --git a/zephyr/program/herobrine/keyboard.dtsi b/zephyr/program/herobrine/keyboard.dtsi
deleted file mode 100644
index 3b7e830f2f..0000000000
--- a/zephyr/program/herobrine/keyboard.dtsi
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- kblight {
- compatible = "cros-ec,kblight-pwm";
- pwms = <&pwm3 0 PWM_KHZ(10) PWM_POLARITY_NORMAL>;
- generic-pwm-channel = <0>;
- };
-};
-
-&pwm3 {
- status = "okay";
- pinctrl-0 = <&pwm3_gp80>;
- pinctrl-names = "default";
-};
-
-&cros_kb_raw {
- status = "okay";
- /* No KSO2 (it's inverted and implemented by GPIO) */
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- >;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/herobrine/motionsense.dtsi b/zephyr/program/herobrine/motionsense.dtsi
deleted file mode 100644
index 1955f43284..0000000000
--- a/zephyr/program/herobrine/motionsense.dtsi
+++ /dev/null
@@ -1,241 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi260-int = &base_accel;
- tcs3400-int = &als_clear;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- mutex_bmi260: bmi260-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 1 0
- 1 0 0
- 0 0 (-1)>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <1 0 0
- 0 (-1) 0
- 0 0 (-1)>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bma255_data: bma255-drv-data {
- compatible = "cros-ec,drvdata-bma255";
- status = "okay";
- };
-
- bmi260_data: bmi260-drv-data {
- compatible = "cros-ec,drvdata-bmi260";
- status = "okay";
- };
-
- tcs_clear_data: tcs3400-clear-drv-data {
- compatible = "cros-ec,drvdata-tcs3400-clear";
- status = "okay";
-
- als-drv-data {
- compatible = "cros-ec,accelgyro-als-drv-data";
- als-cal {
- scale = <1>;
- uscale = <0>;
- offset = <0>;
- als-channel-scale {
- compatible = "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- };
- };
-
- tcs_rgb_data: tcs3400-rgb-drv-data {
- compatible = "cros-ec,drvdata-tcs3400-rgb";
- status = "okay";
-
- /* node for rgb_calibration_t defined in accelgyro.h */
- rgb_calibration {
- compatible =
- "cros-ec,accelgyro-rgb-calibration";
-
- irt = <1>;
-
- rgb-cal-x {
- offset = <0>;
- coeff = <0 0 0 1>;
- als-channel-scale {
- compatible = "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- rgb-cal-y {
- offset = <0>;
- coeff = <0 0 0 1>;
- als-channel-scale {
- compatible = "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- rgb-cal-z {
- offset = <0>;
- coeff = <0 0 0 1>;
- als-channel-scale {
- compatible = "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- };
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma255";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&bma255_data>;
- i2c-spi-addr-flags = "BMA2x2_I2C_ADDR1_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi260-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi260>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi260_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,bmi260-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi260>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi260_data>;
- };
-
- als_clear: base-als-clear {
- compatible = "cros-ec,tcs3400-clear";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_CAMERA";
- port = <&i2c_sensor>;
- default-range = <0x10000>;
- drv-data = <&tcs_clear_data>;
- i2c-spi-addr-flags = "TCS3400_I2C_ADDR_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- /* Run ALS sensor in S0 */
- odr = <1000>;
- };
- };
- };
-
- base-als-rgb {
- compatible = "cros-ec,tcs3400-rgb";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_CAMERA";
- default-range = <0x10000>; /* scale = 1x, uscale = 0 */
- drv-data = <&tcs_rgb_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /* list of entries for motion_als_sensors */
- als-sensors = <&als_clear>;
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_accel_gyro>;
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel &als_clear>;
- };
-};
diff --git a/zephyr/program/herobrine/program.conf b/zephyr/program/herobrine/program.conf
deleted file mode 100644
index babc8483c9..0000000000
--- a/zephyr/program/herobrine/program.conf
+++ /dev/null
@@ -1,140 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_CROS_EC=y
-CONFIG_SHIMMED_TASKS=y
-CONFIG_PLATFORM_EC=y
-CONFIG_PLATFORM_EC_BRINGUP=y
-CONFIG_PLATFORM_EC_EXTPOWER_GPIO=y
-CONFIG_PLATFORM_EC_SWITCH=y
-CONFIG_PLATFORM_EC_LID_SWITCH=y
-CONFIG_PLATFORM_EC_BACKLIGHT_LID=y
-CONFIG_PLATFORM_EC_POWER_BUTTON=y
-CONFIG_KERNEL_SHELL=y
-CONFIG_PLATFORM_EC_BOARD_RESET_AFTER_POWER_ON=y
-
-# I2C options
-CONFIG_PLATFORM_EC_CONSOLE_CMD_I2C_SPEED=y
-CONFIG_PLATFORM_EC_HOSTCMD_I2C_CONTROL=y
-
-# Shell history and tab autocompletion (for convenience)
-CONFIG_SHELL_HELP=y
-CONFIG_SHELL_HISTORY=y
-CONFIG_SHELL_TAB=y
-CONFIG_SHELL_TAB_AUTOCOMPLETION=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_COMMON=n
-CONFIG_PLATFORM_EC_LED_DT=y
-
-# Application Processor is Qualcomm SC7280
-CONFIG_AP_ARM_QUALCOMM_SC7280=y
-
-# Board version is selected over GPIO board ID pins.
-CONFIG_PLATFORM_EC_BOARD_VERSION_GPIO=y
-
-# Power Sequencing
-CONFIG_PLATFORM_EC_POWERSEQ=y
-CONFIG_PLATFORM_EC_POWERSEQ_HOST_SLEEP=y
-CONFIG_PLATFORM_EC_POWERSEQ_PP5000_CONTROL=n
-CONFIG_PLATFORM_EC_POWER_SLEEP_FAILURE_DETECTION=y
-CONFIG_PLATFORM_EC_CHIPSET_RESET_HOOK=y
-CONFIG_PLATFORM_EC_CHIPSET_RESUME_INIT_HOOK=y
-
-# MKBP event
-CONFIG_PLATFORM_EC_MKBP_EVENT=y
-CONFIG_PLATFORM_EC_MKBP_USE_GPIO=y
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_PROTOCOL_MKBP=y
-CONFIG_PLATFORM_EC_MKBP_INPUT_DEVICES=y
-CONFIG_PLATFORM_EC_KEYBOARD_COL2_INVERTED=y
-CONFIG_PLATFORM_EC_KEYBOARD_REFRESH_ROW3=y
-CONFIG_PLATFORM_EC_VOLUME_BUTTONS=y
-CONFIG_PLATFORM_EC_CMD_BUTTON=y
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_SMART=y
-CONFIG_PLATFORM_EC_I2C_VIRTUAL_BATTERY=y
-CONFIG_PLATFORM_EC_I2C_PASSTHRU_RESTRICTED=y
-CONFIG_PLATFORM_EC_BATTERY_FUEL_GAUGE=y
-CONFIG_PLATFORM_EC_BATTERY_CUT_OFF=y
-CONFIG_PLATFORM_EC_BATTERY_PRESENT_GPIO=y
-CONFIG_PLATFORM_EC_CHARGER_ISL9238C=y
-CONFIG_PLATFORM_EC_CHARGE_RAMP_HW=y
-CONFIG_PLATFORM_EC_USE_BATTERY_DEVICE_CHEMISTRY=y
-CONFIG_PLATFORM_EC_BATTERY_DEVICE_CHEMISTRY="LION"
-CONFIG_PLATFORM_EC_BATTERY_REVIVE_DISCONNECT=y
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC=y
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC_CHARGER=y
-CONFIG_PLATFORM_EC_CHARGER_MIN_BAT_PCT_FOR_POWER_ON=2
-CONFIG_PLATFORM_EC_CHARGER_MIN_POWER_MW_FOR_POWER_ON=12500
-CONFIG_PLATFORM_EC_CHARGER_MIN_INPUT_CURRENT_LIMIT=512
-CONFIG_PLATFORM_EC_CHARGER_PROFILE_OVERRIDE=y
-CONFIG_PLATFORM_EC_CHARGER_PSYS=y
-CONFIG_PLATFORM_EC_CHARGER_PSYS_READ=y
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR=10
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR_AC=20
-CONFIG_PLATFORM_EC_CONSOLE_CMD_CHARGER_ADC_AMON_BMON=y
-
-# USB-C
-CONFIG_PLATFORM_EC_USB_PD_FRS=y
-CONFIG_PLATFORM_EC_USB_PD_USB32_DRD=n
-CONFIG_PLATFORM_EC_USBC_PPC_SN5S330=y
-CONFIG_PLATFORM_EC_USBC_PPC_SYV682C=y
-CONFIG_PLATFORM_EC_USBC_PPC_SYV682X=y
-CONFIG_PLATFORM_EC_USB_PD_FRS_PPC=y
-CONFIG_PLATFORM_EC_USBC_RETIMER_FW_UPDATE=n
-CONFIG_PLATFORM_EC_USBC_SS_MUX_DFP_ONLY=y
-CONFIG_PLATFORM_EC_USB_DRP_ACC_TRYSRC=y
-CONFIG_PLATFORM_EC_USB_PD_5V_EN_CUSTOM=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_DISCHARGE_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_DPS=y
-CONFIG_PLATFORM_EC_USB_PD_REV30=y
-CONFIG_PLATFORM_EC_USB_PD_TBT_COMPAT_MODE=n
-CONFIG_PLATFORM_EC_USB_PD_USB4=n
-CONFIG_PLATFORM_EC_USB_PD_TCPC_LOW_POWER=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_PS8805=y
-CONFIG_PLATFORM_EC_USB_PD_TCPC_RUNTIME_CONFIG=n
-CONFIG_PLATFORM_EC_USB_MUX_RUNTIME_CONFIG=n
-CONFIG_PLATFORM_EC_USB_PD_LOGGING=y
-CONFIG_PLATFORM_EC_CONFIG_USB_PD_3A_PORTS=2
-
-# USB ID
-# This is allocated specifically for Herobrine
-# http://google3/hardware/standards/usb/
-# TODO(b/183608112): Move to device tree
-CONFIG_PLATFORM_EC_USB_PID=0x5055
-
-# RTC
-CONFIG_PLATFORM_EC_RTC=y
-CONFIG_PLATFORM_EC_HOSTCMD_RTC=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_RTC=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_RTC_ALARM=y
-
-# EC software sync
-CONFIG_PLATFORM_EC_VBOOT_HASH=y
-
-# Sensors
-CONFIG_PLATFORM_EC_MOTIONSENSE=y
-CONFIG_PLATFORM_EC_ACCEL_FIFO=y
-CONFIG_PLATFORM_EC_ACCEL_SPOOF_MODE=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCELS=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCEL_INFO=y
-CONFIG_PLATFORM_EC_GMR_TABLET_MODE=y
-CONFIG_PLATFORM_EC_LID_ANGLE=y
-CONFIG_PLATFORM_EC_LID_ANGLE_UPDATE=y
-CONFIG_PLATFORM_EC_SENSOR_TIGHT_TIMESTAMPS=y
-CONFIG_PLATFORM_EC_TABLET_MODE=y
-CONFIG_PLATFORM_EC_TABLET_MODE_SWITCH=y
-CONFIG_PLATFORM_EC_MAX_SENSOR_FREQ_MILLIHZ=100000
-
-# Sensor Drivers
-CONFIG_PLATFORM_EC_ACCEL_BMA255=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI260=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=y
-
-CONFIG_SYSCON=y
-CONFIG_PLATFORM_EC_EMULATED_SYSRQ=y
diff --git a/zephyr/program/herobrine/src/board_chipset.c b/zephyr/program/herobrine/src/board_chipset.c
deleted file mode 100644
index dece9708ff..0000000000
--- a/zephyr/program/herobrine/src/board_chipset.c
+++ /dev/null
@@ -1,82 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Herobrine chipset-specific configuration */
-
-#include "battery.h"
-#include "board_chipset.h"
-#include "charger.h"
-#include "common.h"
-#include "console.h"
-#include "gpio.h"
-#include "hooks.h"
-#include "timer.h"
-#include "usb_pd.h"
-
-#define CPRINTS(format, args...) cprints(CC_HOOK, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_HOOK, format, ##args)
-
-/*
- * A window of PD negotiation. It starts from the Type-C state reaching
- * Attached.SNK, and ends when the PD contract is created. The VBUS may be
- * raised anytime in this window.
- *
- * The current implementation is the worst case scenario: every message the PD
- * negotiation is received at the last moment before timeout. More extra time
- * is added to compensate the delay internally, like the decision of the DPM.
- *
- * TODO(waihong): Cancel this timer when the PD contract is negotiated.
- */
-#define PD_READY_TIMEOUT \
- (PD_T_SINK_WAIT_CAP + PD_T_SENDER_RESPONSE + PD_T_SINK_TRANSITION + \
- 20 * MSEC)
-
-#define PD_READY_POLL_DELAY (10 * MSEC)
-
-static timestamp_t pd_ready_timeout;
-
-static bool pp5000_inited;
-
-__test_only void reset_pp5000_inited(void)
-{
- pp5000_inited = false;
-}
-
-/* Called on USB PD connected */
-static void board_usb_pd_connect(void)
-{
- int soc = -1;
-
- /* First boot, battery unattached or low SOC */
- if (!pp5000_inited &&
- ((battery_state_of_charge_abs(&soc) != EC_SUCCESS ||
- soc < charger_get_min_bat_pct_for_power_on()))) {
- pd_ready_timeout = get_time();
- pd_ready_timeout.val += PD_READY_TIMEOUT;
- }
-}
-DECLARE_HOOK(HOOK_USB_PD_CONNECT, board_usb_pd_connect, HOOK_PRIO_DEFAULT);
-
-static void wait_pd_ready(void)
-{
- CPRINTS("Wait PD negotiated VBUS transition %u",
- pd_ready_timeout.le.lo);
- while (pd_ready_timeout.val && get_time().val < pd_ready_timeout.val)
- usleep(PD_READY_POLL_DELAY);
-}
-
-/* Called on AP S5 -> S3 transition */
-static void board_chipset_pre_init(void)
-{
- if (!pp5000_inited) {
- if (pd_ready_timeout.val) {
- wait_pd_ready();
- }
- CPRINTS("Enable 5V rail");
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_en_pp5000_s5), 1);
- pp5000_inited = true;
- }
-}
-DECLARE_HOOK(HOOK_CHIPSET_PRE_INIT, board_chipset_pre_init, HOOK_PRIO_DEFAULT);
diff --git a/zephyr/program/herobrine/src/i2c.c b/zephyr/program/herobrine/src/i2c.c
deleted file mode 100644
index 8cf2cfc232..0000000000
--- a/zephyr/program/herobrine/src/i2c.c
+++ /dev/null
@@ -1,17 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "i2c.h"
-#include "i2c/i2c.h"
-
-/* Herobrine-NPCX9 board specific i2c implementation */
-
-#ifdef CONFIG_PLATFORM_EC_I2C_PASSTHRU_RESTRICTED
-int board_allow_i2c_passthru(const struct i2c_cmd_desc_t *cmd_desc)
-{
- return (i2c_get_device_for_port(cmd_desc->port) ==
- i2c_get_device_for_port(I2C_PORT_VIRTUAL_BATTERY));
-}
-#endif
diff --git a/zephyr/program/herobrine/src/usb_pd_policy.c b/zephyr/program/herobrine/src/usb_pd_policy.c
deleted file mode 100644
index ad34f3b6e4..0000000000
--- a/zephyr/program/herobrine/src/usb_pd_policy.c
+++ /dev/null
@@ -1,254 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charge_manager.h"
-#include "chipset.h"
-#include "console.h"
-#include "system.h"
-#include "usb_mux.h"
-#include "usbc_ppc.h"
-#include "util.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTS(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-int pd_check_vconn_swap(int port)
-{
- /* In G3, do not allow vconn swap since PP5000 rail is off */
- return gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_en_pp5000_s5));
-}
-
-static uint8_t vbus_en[CONFIG_USB_PD_PORT_MAX_COUNT];
-
-static void board_vbus_update_source_current(int port)
-{
- ppc_vbus_source_enable(port, vbus_en[port]);
-}
-
-void pd_power_supply_reset(int port)
-{
- int prev_en;
-
- prev_en = vbus_en[port];
-
- /* Disable VBUS */
- vbus_en[port] = 0;
- board_vbus_update_source_current(port);
-
- /* Enable discharge if we were previously sourcing 5V */
- if (prev_en)
- pd_set_vbus_discharge(port, 1);
-
- /* notify host of power info change */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- /* Disable charging */
- board_vbus_sink_enable(port, 0);
-
- pd_set_vbus_discharge(port, 0);
-
- /* Provide VBUS */
- vbus_en[port] = 1;
- board_vbus_update_source_current(port);
-
- /* notify host of power info change */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS; /* we are ready */
-}
-
-int board_vbus_source_enabled(int port)
-{
- return vbus_en[port];
-}
-
-int pd_snk_is_vbus_provided(int port)
-{
- return tcpm_check_vbus_level(port, VBUS_PRESENT);
-}
-
-/* ----------------- Vendor Defined Messages ------------------ */
-#ifdef CONFIG_USB_PD_ALT_MODE_DFP
-__override int svdm_dp_config(int port, uint32_t *payload)
-{
- int opos = pd_alt_mode(port, TCPCI_MSG_SOP, USB_SID_DISPLAYPORT);
- uint8_t pin_mode = get_dp_pin_mode(port);
-
- if (!pin_mode)
- return 0;
-
- /*
- * Defer setting the usb_mux until HPD goes high, svdm_dp_attention().
- * The AP only supports one DP phy. An external DP mux switches between
- * the two ports. Should switch those muxes when it is really used,
- * i.e. HPD high; otherwise, the real use case is preempted, like:
- * (1) plug a dongle without monitor connected to port-0,
- * (2) plug a dongle without monitor connected to port-1,
- * (3) plug a monitor to the port-1 dongle.
- */
-
- payload[0] =
- VDO(USB_SID_DISPLAYPORT, 1, CMD_DP_CONFIG | VDO_OPOS(opos));
- payload[1] = VDO_DP_CFG(pin_mode, /* pin mode */
- 1, /* DPv1.3 signaling */
- 2); /* UFP connected */
- return 2;
-};
-
-__override void svdm_dp_post_config(int port)
-{
- dp_flags[port] |= DP_FLAGS_DP_ON;
-}
-
-/**
- * Is the port fine to be muxed its DisplayPort lines?
- *
- * Only one port can be muxed to DisplayPort at a time.
- *
- * @param port Port number of TCPC.
- * @return 1 is fine; 0 is bad as other port is already muxed;
- */
-static int is_dp_muxable(int port)
-{
- int i;
-
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++)
- if (i != port) {
- if (usb_mux_get(i) & USB_PD_MUX_DP_ENABLED)
- return 0;
- }
-
- return 1;
-}
-
-__override int svdm_dp_attention(int port, uint32_t *payload)
-{
- const struct gpio_dt_spec *hpd =
- GPIO_DT_FROM_NODELABEL(gpio_dp_hot_plug_det_r);
- int lvl = PD_VDO_DPSTS_HPD_LVL(payload[1]);
- int irq = PD_VDO_DPSTS_HPD_IRQ(payload[1]);
- int cur_lvl = gpio_pin_get_dt(hpd);
- mux_state_t mux_state;
-
- dp_status[port] = payload[1];
-
- if (!is_dp_muxable(port)) {
- /* TODO(waihong): Info user? */
- CPRINTS("p%d: The other port is already muxed.", port);
- return 0;
- }
-
- /*
- * Initial implementation to handle HPD. Only the first-plugged port
- * works, i.e. sending HPD signal to AP. The second-plugged port
- * will be ignored.
- *
- * TODO(waihong): Continue the above case, if the first-plugged port
- * is then unplugged, switch to the second-plugged port and signal AP?
- */
- if (lvl) {
- /*
- * Enable and switch the DP port selection mux to the
- * correct port.
- *
- * TODO(waihong): Better to move switching DP mux to
- * the usb_mux abstraction.
- */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_mux_sel),
- port == 1);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_mux_oe_l), 0);
-
- /* Connect the SBU lines in PPC chip. */
- if (IS_ENABLED(CONFIG_USBC_PPC_SBU))
- ppc_set_sbu(port, 1);
-
- /*
- * Connect the USB SS/DP lines in TCPC chip.
- *
- * When mf_pref not true, still use the dock muxing
- * because of the board USB-C topology (limited to 2
- * lanes DP).
- */
- usb_mux_set(port, USB_PD_MUX_DOCK, USB_SWITCH_CONNECT,
- polarity_rm_dts(pd_get_polarity(port)));
- } else {
- /* Disconnect the DP port selection mux. */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_mux_oe_l), 1);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_mux_sel), 0);
-
- /* Disconnect the SBU lines in PPC chip. */
- if (IS_ENABLED(CONFIG_USBC_PPC_SBU))
- ppc_set_sbu(port, 0);
-
- /* Disconnect the DP but keep the USB SS lines in TCPC chip. */
- usb_mux_set(port, USB_PD_MUX_USB_ENABLED, USB_SWITCH_CONNECT,
- polarity_rm_dts(pd_get_polarity(port)));
- }
-
- if (chipset_in_state(CHIPSET_STATE_ANY_SUSPEND) && (irq || lvl))
- /*
- * Wake up the AP. IRQ or level high indicates a DP sink is now
- * present.
- */
- pd_notify_dp_alt_mode_entry(port);
-
- /* Configure TCPC for the HPD event, for proper muxing */
- mux_state = (lvl ? USB_PD_MUX_HPD_LVL : USB_PD_MUX_HPD_LVL_DEASSERTED) |
- (irq ? USB_PD_MUX_HPD_IRQ : USB_PD_MUX_HPD_IRQ_DEASSERTED);
- usb_mux_hpd_update(port, mux_state);
-
- /* Signal AP for the HPD event, through GPIO to AP */
- if (irq & cur_lvl) {
- uint64_t now = get_time().val;
- /* Wait for the minimum spacing between IRQ_HPD if needed */
- if (now < svdm_hpd_deadline[port])
- usleep(svdm_hpd_deadline[port] - now);
-
- /* Generate IRQ_HPD pulse */
- CPRINTS("C%d: Recv IRQ. HPD->0", port);
- gpio_pin_set_dt(hpd, 0);
- usleep(HPD_DSTREAM_DEBOUNCE_IRQ);
- gpio_pin_set_dt(hpd, 1);
- CPRINTS("C%d: Recv IRQ. HPD->1", port);
-
- /* Set the minimum time delay (2ms) for the next HPD IRQ */
- svdm_hpd_deadline[port] =
- get_time().val + HPD_USTREAM_DEBOUNCE_LVL;
- } else if (irq & !lvl) {
- CPRINTF("ERR:HPD:IRQ&LOW\n");
- return 0;
- } else {
- CPRINTS("C%d: Recv lvl. HPD->%d", port, lvl);
- gpio_pin_set_dt(hpd, lvl);
- /* Set the minimum time delay (2ms) for the next HPD IRQ */
- svdm_hpd_deadline[port] =
- get_time().val + HPD_USTREAM_DEBOUNCE_LVL;
- }
-
- return 1;
-}
-
-__override void svdm_exit_dp_mode(int port)
-{
- CPRINTS("%s(%d)", __func__, port);
- if (is_dp_muxable(port)) {
- /* Disconnect the DP port selection mux. */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_mux_oe_l), 1);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_mux_sel), 0);
-
- /* Signal AP for the HPD low event */
- usb_mux_hpd_update(port, USB_PD_MUX_HPD_LVL_DEASSERTED |
- USB_PD_MUX_HPD_IRQ_DEASSERTED);
- CPRINTS("C%d: DP exit. HPD->0", port);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_hot_plug_det_r),
- 0);
- }
-}
-#endif /* CONFIG_USB_PD_ALT_MODE_DFP */
diff --git a/zephyr/program/herobrine/src/usbc_config.c b/zephyr/program/herobrine/src/usbc_config.c
deleted file mode 100644
index 3333a110da..0000000000
--- a/zephyr/program/herobrine/src/usbc_config.c
+++ /dev/null
@@ -1,282 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Herobrine board-specific USB-C configuration */
-
-#include "charge_manager.h"
-#include "charge_state.h"
-#include "charger.h"
-#include "charger/isl923x_public.h"
-#include "common.h"
-#include "config.h"
-#include "cros_board_info.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "ppc/sn5s330_public.h"
-#include "ppc/syv682x_public.h"
-#include "system.h"
-#include "tcpm/ps8xxx_public.h"
-#include "tcpm/tcpci.h"
-#include "timer.h"
-#include "usb_mux.h"
-#include "usb_pd.h"
-#include "usbc/ppc.h"
-#include "usbc_ocp.h"
-#include "usbc_ppc.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTS(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-/* GPIO Interrupt Handlers */
-void tcpc_alert_event(enum gpio_signal signal)
-{
- int port = -1;
-
- switch (signal) {
- case GPIO_USB_C0_PD_INT_ODL:
- port = 0;
- break;
- case GPIO_USB_C1_PD_INT_ODL:
- port = 1;
- break;
- default:
- return;
- }
-
- schedule_deferred_pd_interrupt(port);
-}
-
-#ifdef CONFIG_PLATFORM_EC_USBA
-static void usba_oc_deferred(void)
-{
- /* Use next number after all USB-C ports to indicate the USB-A port */
- board_overcurrent_event(
- CONFIG_USB_PD_PORT_MAX_COUNT,
- !gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_a0_oc_odl)));
-}
-DECLARE_DEFERRED(usba_oc_deferred);
-
-void usba_oc_interrupt(enum gpio_signal signal)
-{
- hook_call_deferred(&usba_oc_deferred_data, 0);
-}
-#endif
-
-void ppc_interrupt(enum gpio_signal signal)
-{
- switch (signal) {
- case GPIO_USB_C0_SWCTL_INT_ODL:
- ppc_chips[0].drv->interrupt(0);
- break;
-
- case GPIO_USB_C1_SWCTL_INT_ODL:
- ppc_chips[1].drv->interrupt(1);
- break;
-
- default:
- break;
- }
-}
-
-int charger_profile_override(struct charge_state_data *curr)
-{
- int usb_mv;
- int port;
-
- if (curr->state != ST_CHARGE)
- return 0;
-
- /* Lower the max requested voltage to 5V when battery is full. */
- if (chipset_in_state(CHIPSET_STATE_ANY_OFF) &&
- !(curr->batt.flags & BATT_FLAG_BAD_STATUS) &&
- !(curr->batt.flags & BATT_FLAG_WANT_CHARGE) &&
- (curr->batt.status & STATUS_FULLY_CHARGED))
- usb_mv = 5000;
- else
- usb_mv = PD_MAX_VOLTAGE_MV;
-
- if (pd_get_max_voltage() != usb_mv) {
- CPRINTS("VBUS limited to %dmV", usb_mv);
- for (port = 0; port < CONFIG_USB_PD_PORT_MAX_COUNT; port++)
- pd_set_external_voltage_limit(port, usb_mv);
- }
-
- return 0;
-}
-
-enum ec_status charger_profile_override_get_param(uint32_t param,
- uint32_t *value)
-{
- return EC_RES_INVALID_PARAM;
-}
-
-enum ec_status charger_profile_override_set_param(uint32_t param,
- uint32_t value)
-{
- return EC_RES_INVALID_PARAM;
-}
-
-#ifdef CONFIG_PLATFORM_EC_USBA
-/* Initialize board USC-C things */
-static void board_init_usbc(void)
-{
- /* Enable USB-A overcurrent interrupt */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_a0_oc));
-}
-DECLARE_HOOK(HOOK_INIT, board_init_usbc, HOOK_PRIO_DEFAULT);
-#endif
-
-void board_tcpc_init(void)
-{
- /* Only reset TCPC if not sysjump */
- if (!system_jumped_late()) {
- /* TODO(crosbug.com/p/61098): How long do we need to wait? */
- board_reset_pd_mcu();
- }
-
- /* Enable PPC interrupts */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_swctl));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c1_swctl));
-
- /* Enable TCPC interrupts */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_pd));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c1_pd));
-
- /*
- * Initialize HPD to low; after sysjump SOC needs to see
- * HPD pulse to enable video path
- */
- for (int port = 0; port < CONFIG_USB_PD_PORT_MAX_COUNT; ++port)
- usb_mux_hpd_update(port, USB_PD_MUX_HPD_LVL_DEASSERTED |
- USB_PD_MUX_HPD_IRQ_DEASSERTED);
-}
-DECLARE_HOOK(HOOK_INIT, board_tcpc_init, HOOK_PRIO_POST_I2C);
-
-void board_reset_pd_mcu(void)
-{
- cprints(CC_USB, "Resetting TCPCs...");
- cflush();
-
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_pd_rst_l), 0);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c1_pd_rst_l), 0);
- msleep(PS8XXX_RESET_DELAY_MS);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_pd_rst_l), 1);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c1_pd_rst_l), 1);
- msleep(PS8805_FW_INIT_DELAY_MS);
-}
-
-void board_set_tcpc_power_mode(int port, int mode)
-{
- /* Ignore the "mode" to turn the chip on. We can only do a reset. */
- if (mode)
- return;
-
- board_reset_pd_mcu();
-}
-
-int board_vbus_sink_enable(int port, int enable)
-{
- /* Both ports are controlled by PPC SN5S330 */
- return ppc_vbus_sink_enable(port, enable);
-}
-
-int board_is_sourcing_vbus(int port)
-{
- /* Both ports are controlled by PPC SN5S330 */
- return ppc_is_sourcing_vbus(port);
-}
-
-void board_overcurrent_event(int port, int is_overcurrented)
-{
- /* TODO(b/120231371): Notify AP */
- CPRINTS("p%d: overcurrent!", port);
-}
-
-int board_set_active_charge_port(int port)
-{
- int is_real_port = (port >= 0 && port < CONFIG_USB_PD_PORT_MAX_COUNT);
- int i;
-
- if (!is_real_port && port != CHARGE_PORT_NONE)
- return EC_ERROR_INVAL;
-
- if (port == CHARGE_PORT_NONE) {
- CPRINTS("Disabling all charging port");
-
- /* Disable all ports. */
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- /*
- * Do not return early if one fails otherwise we can
- * get into a boot loop assertion failure.
- */
- if (board_vbus_sink_enable(i, 0))
- CPRINTS("Disabling p%d sink path failed.", i);
- }
-
- return EC_SUCCESS;
- }
-
- /* Check if the port is sourcing VBUS. */
- if (board_is_sourcing_vbus(port)) {
- CPRINTS("Skip enable p%d", port);
- return EC_ERROR_INVAL;
- }
-
- CPRINTS("New charge port: p%d", port);
-
- /*
- * Turn off the other ports' sink path FETs, before enabling the
- * requested charge port.
- */
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- if (i == port)
- continue;
-
- if (board_vbus_sink_enable(i, 0))
- CPRINTS("p%d: sink path disable failed.", i);
- }
-
- /* Enable requested charge port. */
- if (board_vbus_sink_enable(port, 1)) {
- CPRINTS("p%d: sink path enable failed.", port);
- return EC_ERROR_UNKNOWN;
- }
-
- return EC_SUCCESS;
-}
-
-__override void board_set_charge_limit(int port, int supplier, int charge_ma,
- int max_ma, int charge_mv)
-{
- /*
- * Ignore lower charge ceiling on PD transition if our battery is
- * critical, as we may brownout.
- */
- if (supplier == CHARGE_SUPPLIER_PD && charge_ma < 1500 &&
- charge_get_percent() < CONFIG_CHARGER_MIN_BAT_PCT_FOR_POWER_ON) {
- CPRINTS("Using max ilim %d", max_ma);
- charge_ma = max_ma;
- }
-
- charge_set_input_current_limit(charge_ma, charge_mv);
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- uint16_t status = 0;
-
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_pd_int_odl)))
- if (gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_usb_c0_pd_rst_l)))
- status |= PD_STATUS_TCPC_ALERT_0;
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c1_pd_int_odl)))
- if (gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_usb_c1_pd_rst_l)))
- status |= PD_STATUS_TCPC_ALERT_1;
-
- return status;
-}
diff --git a/zephyr/program/herobrine/switchcap.dtsi b/zephyr/program/herobrine/switchcap.dtsi
deleted file mode 100644
index fb2db35d1a..0000000000
--- a/zephyr/program/herobrine/switchcap.dtsi
+++ /dev/null
@@ -1,12 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- switchcap {
- compatible = "cros-ec,switchcap-gpio";
- enable-pin = <&gpio_switchcap_on>;
- power-good-pin = <&gpio_switchcap_pg>;
- };
-};
diff --git a/zephyr/program/herobrine/usbc.dtsi b/zephyr/program/herobrine/usbc.dtsi
deleted file mode 100644
index bed94800dd..0000000000
--- a/zephyr/program/herobrine/usbc.dtsi
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0: port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- ppc = <&ppc_port0>;
- tcpc = <&tcpc_port0>;
- chg = <&charger>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_mux_0>;
- };
- };
- usb_mux_0: usb-mux-0 {
- compatible = "parade,usbc-mux-ps8xxx";
- };
-
- port1: port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&bc12_port1>;
- ppc = <&ppc_port1>;
- tcpc = <&tcpc_port1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_mux_1>;
- };
- };
- usb_mux_1: usb-mux-1 {
- compatible = "parade,usbc-mux-ps8xxx";
- };
- };
-};
diff --git a/zephyr/program/herobrine/villager/gpio.dtsi b/zephyr/program/herobrine/villager/gpio.dtsi
deleted file mode 100644
index 9884fc7fb2..0000000000
--- a/zephyr/program/herobrine/villager/gpio.dtsi
+++ /dev/null
@@ -1,317 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &gpio_ec_wp_odl;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_usb_c0_pd_int_odl: usb_c0_pd_int_odl {
- gpios = <&gpioe 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_PD_INT_ODL";
- };
- gpio_usb_c1_pd_int_odl: usb_c1_pd_int_odl {
- gpios = <&gpiof 5 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_PD_INT_ODL";
- };
- gpio_usb_c0_swctl_int_odl: usb_c0_swctl_int_odl {
- gpios = <&gpio0 3 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_SWCTL_INT_ODL";
- };
- gpio_usb_c1_swctl_int_odl: usb_c1_swctl_int_odl {
- gpios = <&gpio4 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_SWCTL_INT_ODL";
- };
- gpio_usb_c0_bc12_int_l: usb_c0_bc12_int_l {
- gpios = <&gpio6 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_usb_c1_bc12_int_l: usb_c1_bc12_int_l {
- gpios = <&gpio8 2 GPIO_INPUT_PULL_UP>;
- };
- gpio_usb_a0_oc_odl: usb_a0_oc_odl {
- gpios = <&gpiof 4 GPIO_INPUT_PULL_UP>;
- };
- gpio_chg_acok_od: chg_acok_od {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_ec_pwr_btn_odl: ec_pwr_btn_odl {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_ec_voldn_btn_odl: ec_voldn_btn_odl {
- gpios = <&gpio6 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_ec_volup_btn_odl: ec_volup_btn_odl {
- gpios = <&gpioc 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpiod 3 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_lid_open_ec: lid_open_ec {
- gpios = <&gpio0 1 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_ap_rst_l: ap_rst_l {
- gpios = <&gpio5 1 GPIO_INPUT>;
- enum-name = "GPIO_AP_RST_L";
- };
- gpio_ps_hold: ps_hold {
- gpios = <&gpioa 6 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_PS_HOLD";
- };
- gpio_ap_suspend: ap_suspend {
- gpios = <&gpio5 7 GPIO_INPUT>;
- enum-name = "GPIO_AP_SUSPEND";
- };
- gpio_mb_power_good: mb_power_good {
- gpios = <&gpio3 7 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_POWER_GOOD";
- };
- gpio_warm_reset_l: warm_reset_l {
- gpios = <&gpiob 0 GPIO_INPUT>;
- enum-name = "GPIO_WARM_RESET_L";
- };
- ap_ec_spi_cs_l {
- gpios = <&gpio5 3 GPIO_INPUT_PULL_DOWN>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpioc 6 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_accel_gyro_int_l: accel_gyro_int_l {
- gpios = <&gpioa 3 GPIO_INPUT>;
- };
- gpio_rtc_ec_wake_odl: rtc_ec_wake_odl {
- gpios = <&gpio0 2 GPIO_INPUT>;
- };
- ec_entering_rw {
- gpios = <&gpio7 2 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- ccd_mode_odl {
- gpios = <&gpio6 3 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- ec_batt_pres_odl {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- ec_gsc_packet_mode {
- gpios = <&gpio8 3 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- pmic_resin_l {
- gpios = <&gpioa 0 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PMIC_RESIN_L";
- };
- pmic_kpd_pwr_odl {
- gpios = <&gpioa 2 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PMIC_KPD_PWR_ODL";
- };
- ap_ec_int_l {
- gpios = <&gpio5 6 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_switchcap_on: switchcap_on {
- gpios = <&gpiod 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_SWITCHCAP_ON";
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpio7 3 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_EN_PP5000";
- };
- ec_bl_disable_l {
- /* The PMIC controls backlight enable and this pin must
- * be HiZ for normal operation. But the backlight can
- * be enabled by setting this pin low and configuring it
- * as an output.
- */
- gpios = <&gpiob 6 GPIO_INPUT>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- lid_accel_int_l {
- gpios = <&gpioa 1 GPIO_INPUT>;
- };
- tp_int_gate {
- gpios = <&gpio7 4 GPIO_OUTPUT_LOW>;
- };
- gpio_usb_c0_pd_rst_l: usb_c0_pd_rst_l {
- gpios = <&gpiof 1 GPIO_OUTPUT_HIGH>;
- };
- gpio_usb_c1_pd_rst_l: usb_c1_pd_rst_l {
- gpios = <&gpioe 4 GPIO_OUTPUT_HIGH>;
- };
- gpio_dp_mux_oe_l: dp_mux_oe_l {
- gpios = <&gpiob 1 GPIO_ODR_HIGH>;
- };
- gpio_dp_mux_sel: dp_mux_sel {
- gpios = <&gpio4 5 GPIO_OUTPUT_LOW>;
- };
- gpio_dp_hot_plug_det_r: dp_hot_plug_det_r {
- gpios = <&gpio9 5 GPIO_OUTPUT_LOW>;
- };
- gpio_en_usb_a_5v: en_usb_a_5v {
- gpios = <&gpiof 0 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_USB_A_5V";
- };
- usb_a_cdp_ilim_en_l {
- gpios = <&gpio7 5 GPIO_OUTPUT_HIGH>;
- };
- gpio_usb_c0_frs_en: usb_c0_frs_en {
- gpios = <&gpioc 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C0_FRS_EN";
- };
- gpio_usb_c1_frs_en: usb_c1_frs_en {
- gpios = <&gpioc 1 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C1_FRS_EN";
- };
- gpio_ec_chg_led_y_c0: ec_chg_led_y_c0 {
- gpios = <&gpio6 0 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_chg_led_b_c0: ec_chg_led_b_c0 {
- gpios = <&gpioc 0 GPIO_OUTPUT_LOW>;
- };
- ap_ec_spi_mosi {
- gpios = <&gpio4 6 GPIO_INPUT_PULL_DOWN>;
- };
- ap_ec_spi_miso {
- gpios = <&gpio4 7 GPIO_INPUT_PULL_DOWN>;
- };
- ap_ec_spi_clk {
- gpios = <&gpio5 5 GPIO_INPUT_PULL_DOWN>;
- };
- gpio_brd_id0: brd_id0 {
- gpios = <&gpio9 4 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION1";
- };
- gpio_brd_id1: brd_id1 {
- gpios = <&gpio9 7 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION2";
- };
- gpio_brd_id2: brd_id2 {
- gpios = <&gpioa 5 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION3";
- };
- gpio_sku_id0: sku_id0 {
- gpios = <&gpio6 7 GPIO_INPUT>;
- };
- gpio_sku_id1: sku_id1 {
- gpios = <&gpio7 0 GPIO_INPUT>;
- };
- gpio_sku_id2: sku_id2 {
- gpios = <&gpioe 1 GPIO_INPUT>;
- };
- gpio_switchcap_pg: src_vph_pwr_pg {
- gpios = <&gpioe 2 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_SWITCHCAP_PG";
- };
- arm_x86 {
- gpios = <&gpio6 6 GPIO_OUTPUT_LOW>;
- };
- ec-i2c-sensor-scl {
- gpios = <&gpiob 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-sensor-sda {
- gpios = <&gpiob 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
- };
-
- usba-port-enable-list {
- compatible = "cros-ec,usba-port-enable-pins";
- enable-pins = <&gpio_en_usb_a_5v>;
- };
-
- gpio_id_sku: sku {
- compatible = "cros-ec,gpio-id";
- bits = <
- &gpio_sku_id0
- &gpio_sku_id1
- &gpio_sku_id2
- >;
- system = "ternary";
- };
-
- gpio_id_board: board {
- compatible = "cros-ec,gpio-id";
- bits = <
- &gpio_brd_id0
- &gpio_brd_id1
- &gpio_brd_id2
- >;
- system = "ternary";
- };
-
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios =
- <&gpio5 2 0>,
- <&gpio5 4 0>,
- <&gpio7 6 0>,
- <&gpiod 1 0>,
- <&gpiod 0 0>,
- <&gpioe 3 0>,
- <&gpio0 4 0>,
- <&gpiod 6 0>,
- <&gpio3 2 0>,
- <&gpio3 5 0>,
- <&gpiod 7 0>,
- <&gpio8 6 0>,
- <&gpiod 4 0>,
- <&gpio4 1 0>,
- <&gpio3 4 0>,
- <&gpioc 3 0>,
- <&gpioc 4 0>,
- <&gpioc 7 0>,
- <&gpioa 4 0>,
- <&gpio9 6 0>,
- <&gpio9 3 0>,
- <&gpioa 7 0>,
- <&gpio5 0 0>,
- <&gpio8 1 0>,
- <&gpiob 7 0>;
- };
-};
-
-/* Power switch logic input pads */
-&psl_in1_gpd2 {
- /* ACOK_OD */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in2_gp00 {
- /* EC_PWR_BTN_ODL */
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-&psl_in3_gp01 {
- /* LID_OPEN_EC */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in4_gp02 {
- /* RTC_EC_WAKE_ODL */
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-/* Power domain device controlled by PSL (Power Switch Logic) IO pads */
-&power_ctrl_psl {
- status = "okay";
- pinctrl-names = "sleep";
- pinctrl-0 = <&psl_in1_gpd2 &psl_in2_gp00 &psl_in3_gp01 &psl_in4_gp02>;
-};
diff --git a/zephyr/program/herobrine/villager/led_pins.dtsi b/zephyr/program/herobrine/villager/led_pins.dtsi
deleted file mode 100644
index 2a74fce58c..0000000000
--- a/zephyr/program/herobrine/villager/led_pins.dtsi
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- gpio-led-pins {
- compatible = "cros-ec,gpio-led-pins";
-
- color_off: color-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_b_c0>;
- led-values = <0 0>;
- };
-
- color_amber: color-amber {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_b_c0>;
- led-values = <1 0>;
- };
-
- color_blue: color-blue {
- led-color = "LED_BLUE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_BLUE";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_b_c0>;
- led-values = <0 1>;
- };
- };
-};
diff --git a/zephyr/program/herobrine/villager/led_policy.dtsi b/zephyr/program/herobrine/villager/led_policy.dtsi
deleted file mode 100644
index f8996a3f4b..0000000000
--- a/zephyr/program/herobrine/villager/led_policy.dtsi
+++ /dev/null
@@ -1,95 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
-
- power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
-
- power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- /* Amber 1 sec, off 3 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
-
- power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-error {
- charge-state = "PWR_STATE_ERROR";
-
- /* Amber 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
-
- power-state-forced-idle {
- charge-state = "PWR_STATE_FORCED_IDLE";
-
- /* Blue 2 sec, Amber 2 sec */
- color-0 {
- led-color = <&color_blue>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_amber>;
- period-ms = <2000>;
- };
- };
-
- power-state-idle {
- charge-state = "PWR_STATE_IDLE";
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
- };
-};
diff --git a/zephyr/program/herobrine/villager/motionsense.dtsi b/zephyr/program/herobrine/villager/motionsense.dtsi
deleted file mode 100644
index 31d00e04a5..0000000000
--- a/zephyr/program/herobrine/villager/motionsense.dtsi
+++ /dev/null
@@ -1,148 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi260-int = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- mutex_bmi260: bmi260-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <1 0 0
- 0 (-1) 0
- 0 0 (-1)>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- kx022_data: kx022-drv-data {
- compatible = "cros-ec,drvdata-kionix";
- status = "okay";
- };
-
- bmi260_data: bmi260-drv-data {
- compatible = "cros-ec,drvdata-bmi260";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,kx022";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&kx022_data>;
- i2c-spi-addr-flags = "KX022_ADDR0_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi260-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi260>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi260_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,bmi260-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi260>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi260_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_accel_gyro>;
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/herobrine/villager/project.conf b/zephyr/program/herobrine/villager/project.conf
deleted file mode 100644
index 35eebe6d99..0000000000
--- a/zephyr/program/herobrine/villager/project.conf
+++ /dev/null
@@ -1,8 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Villager board-specific Kconfig settings.
-CONFIG_BOARD_VILLAGER=y
-
-CONFIG_PLATFORM_EC_ACCEL_KX022=y
diff --git a/zephyr/program/herobrine/villager/project.overlay b/zephyr/program/herobrine/villager/project.overlay
deleted file mode 100644
index 5f968e4e9b..0000000000
--- a/zephyr/program/herobrine/villager/project.overlay
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Herobrine program common DTS includes */
-#include "../adc.dtsi"
-#include "../common.dtsi"
-#include "../i2c.dtsi"
-#include "../interrupts.dtsi"
-#include "../keyboard.dtsi"
-#include "../default_gpio_pinctrl.dtsi"
-#include "../switchcap.dtsi"
-#include "../usbc.dtsi"
-
-/* Villager project DTS includes*/
-#include "gpio.dtsi"
-#include "led_pins.dtsi"
-#include "led_policy.dtsi"
-#include "motionsense.dtsi"
-
-/* villager overrides follow... */
-/* battery overrides */
-/ {
- batteries {
- default_battery: ap19a5k {
- compatible = "panasonic,ap19a5k", "battery-smart";
- };
- ap19a8k {
- compatible = "lgc,ap19a8k", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/herobrine/zoglin/project.conf b/zephyr/program/herobrine/zoglin/project.conf
deleted file mode 100644
index 7f96cf6c79..0000000000
--- a/zephyr/program/herobrine/zoglin/project.conf
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Zoglin reference-board-specific Kconfig settings.
-CONFIG_BOARD_ZOGLIN=y
-CONFIG_PLATFORM_EC_ACCEL_BMA255=n
-CONFIG_PLATFORM_EC_ACCEL_BMA4XX=y
-
-# Sensors
-CONFIG_PLATFORM_EC_ALS=y
-
-# Sensor Drivers
-CONFIG_PLATFORM_EC_ALS_TCS3400=y
-CONFIG_PLATFORM_EC_ALS_TCS3400_EMULATED_IRQ_EVENT=y
diff --git a/zephyr/program/herobrine/zoglin/project.overlay b/zephyr/program/herobrine/zoglin/project.overlay
deleted file mode 100644
index b631d4b490..0000000000
--- a/zephyr/program/herobrine/zoglin/project.overlay
+++ /dev/null
@@ -1,6 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "../hoglin/project.overlay"
diff --git a/zephyr/program/herobrine/zombie/gpio.dtsi b/zephyr/program/herobrine/zombie/gpio.dtsi
deleted file mode 100644
index 711854fb79..0000000000
--- a/zephyr/program/herobrine/zombie/gpio.dtsi
+++ /dev/null
@@ -1,317 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &gpio_ec_wp_odl;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_usb_c0_pd_int_odl: usb_c0_pd_int_odl {
- gpios = <&gpioe 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_PD_INT_ODL";
- };
- gpio_usb_c1_pd_int_odl: usb_c1_pd_int_odl {
- gpios = <&gpiof 5 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_PD_INT_ODL";
- };
- gpio_usb_c0_swctl_int_odl: usb_c0_swctl_int_odl {
- gpios = <&gpio0 3 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_SWCTL_INT_ODL";
- };
- gpio_usb_c1_swctl_int_odl: usb_c1_swctl_int_odl {
- gpios = <&gpio4 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_SWCTL_INT_ODL";
- };
- gpio_usb_c0_bc12_int_l: usb_c0_bc12_int_l {
- gpios = <&gpio6 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_usb_c1_bc12_int_l: usb_c1_bc12_int_l {
- gpios = <&gpio8 2 GPIO_INPUT_PULL_UP>;
- };
- gpio_usb_a0_oc_odl: usb_a0_oc_odl {
- gpios = <&gpiof 4 GPIO_INPUT_PULL_UP>;
- };
- gpio_chg_acok_od: chg_acok_od {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_ec_pwr_btn_odl: ec_pwr_btn_odl {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_ec_voldn_btn_odl: ec_voldn_btn_odl {
- gpios = <&gpio6 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_ec_volup_btn_odl: ec_volup_btn_odl {
- gpios = <&gpioc 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpiod 3 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_lid_open_ec: lid_open_ec {
- gpios = <&gpio0 1 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_ap_rst_l: ap_rst_l {
- gpios = <&gpio5 1 GPIO_INPUT>;
- enum-name = "GPIO_AP_RST_L";
- };
- gpio_ps_hold: ps_hold {
- gpios = <&gpioa 6 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_PS_HOLD";
- };
- gpio_ap_suspend: ap_suspend {
- gpios = <&gpio5 7 GPIO_INPUT>;
- enum-name = "GPIO_AP_SUSPEND";
- };
- gpio_mb_power_good: mb_power_good {
- gpios = <&gpio3 7 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_POWER_GOOD";
- };
- gpio_warm_reset_l: warm_reset_l {
- gpios = <&gpiob 0 GPIO_INPUT>;
- enum-name = "GPIO_WARM_RESET_L";
- };
- ap_ec_spi_cs_l {
- gpios = <&gpio5 3 GPIO_INPUT_PULL_DOWN>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpioc 6 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_accel_gyro_int_l: accel_gyro_int_l {
- gpios = <&gpioa 3 GPIO_INPUT>;
- };
- gpio_rtc_ec_wake_odl: rtc_ec_wake_odl {
- gpios = <&gpio0 2 GPIO_INPUT>;
- };
- ec_entering_rw {
- gpios = <&gpio7 2 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- ccd_mode_odl {
- gpios = <&gpio6 3 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- ec_batt_pres_odl {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- ec_gsc_packet_mode {
- gpios = <&gpio8 3 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- pmic_resin_l {
- gpios = <&gpioa 0 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PMIC_RESIN_L";
- };
- pmic_kpd_pwr_odl {
- gpios = <&gpioa 2 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PMIC_KPD_PWR_ODL";
- };
- ap_ec_int_l {
- gpios = <&gpio5 6 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_switchcap_on: switchcap_on {
- gpios = <&gpiod 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_SWITCHCAP_ON";
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpio7 3 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_EN_PP5000";
- };
- ec_bl_disable_l {
- /* The PMIC controls backlight enable and this pin must
- * be HiZ for normal operation. But the backlight can
- * be enabled by setting this pin low and configuring it
- * as an output.
- */
- gpios = <&gpiob 6 GPIO_INPUT>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- lid_accel_int_l {
- gpios = <&gpioa 1 GPIO_INPUT>;
- };
- tp_int_gate {
- gpios = <&gpio7 4 GPIO_OUTPUT_LOW>;
- };
- gpio_usb_c0_pd_rst_l: usb_c0_pd_rst_l {
- gpios = <&gpiof 1 GPIO_OUTPUT_HIGH>;
- };
- gpio_usb_c1_pd_rst_l: usb_c1_pd_rst_l {
- gpios = <&gpioe 4 GPIO_OUTPUT_HIGH>;
- };
- gpio_dp_mux_oe_l: dp_mux_oe_l {
- gpios = <&gpiob 1 GPIO_ODR_HIGH>;
- };
- gpio_dp_mux_sel: dp_mux_sel {
- gpios = <&gpio4 5 GPIO_OUTPUT_LOW>;
- };
- gpio_dp_hot_plug_det_r: dp_hot_plug_det_r {
- gpios = <&gpio9 5 GPIO_OUTPUT_LOW>;
- };
- gpio_en_usb_a_5v: en_usb_a_5v {
- gpios = <&gpiof 0 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_USB_A_5V";
- };
- usb_a_cdp_ilim_en_l {
- gpios = <&gpio7 5 GPIO_OUTPUT_HIGH>;
- };
- gpio_usb_c0_frs_en: usb_c0_frs_en {
- gpios = <&gpioc 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C0_FRS_EN";
- };
- gpio_usb_c1_frs_en: usb_c1_frs_en {
- gpios = <&gpioc 1 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C1_FRS_EN";
- };
- gpio_ec_chg_led_y_c0: ec_chg_led_y_c0 {
- gpios = <&gpio6 0 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_chg_led_b_c0: ec_chg_led_b_c0 {
- gpios = <&gpioc 0 GPIO_OUTPUT_LOW>;
- };
- ap_ec_spi_mosi {
- gpios = <&gpio4 6 GPIO_INPUT_PULL_DOWN>;
- };
- ap_ec_spi_miso {
- gpios = <&gpio4 7 GPIO_INPUT_PULL_DOWN>;
- };
- ap_ec_spi_clk {
- gpios = <&gpio5 5 GPIO_INPUT_PULL_DOWN>;
- };
- gpio_brd_id0: brd_id0 {
- gpios = <&gpio9 4 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION1";
- };
- gpio_brd_id1: brd_id1 {
- gpios = <&gpio9 7 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION2";
- };
- gpio_brd_id2: brd_id2 {
- gpios = <&gpioa 5 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION3";
- };
- gpio_sku_id0: sku_id0 {
- gpios = <&gpio6 7 GPIO_INPUT>;
- };
- gpio_sku_id1: sku_id1 {
- gpios = <&gpio7 0 GPIO_INPUT>;
- };
- gpio_sku_id2: sku_id2 {
- gpios = <&gpioe 1 GPIO_INPUT>;
- };
- gpio_switchcap_pg: src_vph_pwr_pg {
- gpios = <&gpioe 2 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_SWITCHCAP_PG";
- };
- arm_x86 {
- gpios = <&gpio6 6 GPIO_OUTPUT_LOW>;
- };
- ec-i2c-sensor-scl {
- gpios = <&gpiob 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-sensor-sda {
- gpios = <&gpiob 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
- };
-
- usba-port-enable-list {
- compatible = "cros-ec,usba-port-enable-pins";
- enable-pins = <&gpio_en_usb_a_5v>;
- };
-
- gpio_id_sku: sku {
- compatible = "cros-ec,gpio-id";
- bits = <
- &gpio_sku_id0
- &gpio_sku_id1
- &gpio_sku_id2
- >;
- system = "ternary";
- };
-
- gpio_id_board: board {
- compatible = "cros-ec,gpio-id";
- bits = <
- &gpio_brd_id0
- &gpio_brd_id1
- &gpio_brd_id2
- >;
- system = "ternary";
- };
-
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios =
- <&gpio5 2 0>,
- <&gpio5 4 0>,
- <&gpio7 6 0>,
- <&gpiod 1 0>,
- <&gpiod 0 0>,
- <&gpioe 3 0>,
- <&gpio0 4 0>,
- <&gpiod 6 0>,
- <&gpio3 2 0>,
- <&gpio3 5 0>,
- <&gpiod 7 0>,
- <&gpio8 6 0>,
- <&gpiod 4 0>,
- <&gpio4 1 0>,
- <&gpio3 4 0>,
- <&gpioc 3 0>,
- <&gpioc 4 0>,
- <&gpioc 7 0>,
- <&gpioa 4 0>,
- <&gpio9 6 0>,
- <&gpio9 3 0>,
- <&gpioa 7 0>,
- <&gpio5 0 0>,
- <&gpio8 1 0>,
- <&gpiob 7 0>;
- };
-};
-
-/* Power switch logic input pads */
-&psl_in1_gpd2 {
- /* ACOK_OD */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in2_gp00 {
- /* EC_PWR_BTN_ODL */
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-&psl_in3_gp01 {
- /* LID_OPEN_EC */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in4_gp02 {
- /* RTC_EC_WAKE_ODL */
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-/* Power domain device controlled by PSL (Power Switch Logic) IO pads */
-&power_ctrl_psl {
- status = "okay";
- pinctrl-names = "sleep";
- pinctrl-0 = <&psl_in1_gpd2 &psl_in2_gp00 &psl_in3_gp01 &psl_in4_gp02>;
-};
diff --git a/zephyr/program/herobrine/zombie/led_pins.dtsi b/zephyr/program/herobrine/zombie/led_pins.dtsi
deleted file mode 100644
index 2a74fce58c..0000000000
--- a/zephyr/program/herobrine/zombie/led_pins.dtsi
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- gpio-led-pins {
- compatible = "cros-ec,gpio-led-pins";
-
- color_off: color-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_b_c0>;
- led-values = <0 0>;
- };
-
- color_amber: color-amber {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_b_c0>;
- led-values = <1 0>;
- };
-
- color_blue: color-blue {
- led-color = "LED_BLUE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_BLUE";
- led-pins = <&gpio_ec_chg_led_y_c0
- &gpio_ec_chg_led_b_c0>;
- led-values = <0 1>;
- };
- };
-};
diff --git a/zephyr/program/herobrine/zombie/led_policy.dtsi b/zephyr/program/herobrine/zombie/led_policy.dtsi
deleted file mode 100644
index f8996a3f4b..0000000000
--- a/zephyr/program/herobrine/zombie/led_policy.dtsi
+++ /dev/null
@@ -1,95 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
-
- power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
-
- power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- /* Amber 1 sec, off 3 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
-
- power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-error {
- charge-state = "PWR_STATE_ERROR";
-
- /* Amber 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
-
- power-state-forced-idle {
- charge-state = "PWR_STATE_FORCED_IDLE";
-
- /* Blue 2 sec, Amber 2 sec */
- color-0 {
- led-color = <&color_blue>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_amber>;
- period-ms = <2000>;
- };
- };
-
- power-state-idle {
- charge-state = "PWR_STATE_IDLE";
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
- };
-};
diff --git a/zephyr/program/herobrine/zombie/motionsense.dtsi b/zephyr/program/herobrine/zombie/motionsense.dtsi
deleted file mode 100644
index e069564b35..0000000000
--- a/zephyr/program/herobrine/zombie/motionsense.dtsi
+++ /dev/null
@@ -1,148 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi260-int = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- mutex_bmi260: bmi260-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <1 0 0
- 0 (-1) 0
- 0 0 (-1)>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- kx022_data: kx022-drv-data {
- compatible = "cros-ec,drvdata-kionix";
- status = "okay";
- };
-
- bmi260_data: bmi260-drv-data {
- compatible = "cros-ec,drvdata-bmi260";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,kx022";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&kx022_data>;
- i2c-spi-addr-flags = "KX022_ADDR0_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi260-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi260>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi260_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,bmi260-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi260>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi260_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_accel_gyro>;
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/herobrine/zombie/project.conf b/zephyr/program/herobrine/zombie/project.conf
deleted file mode 100644
index 037ab5cc05..0000000000
--- a/zephyr/program/herobrine/zombie/project.conf
+++ /dev/null
@@ -1,8 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Zombie board-specific Kconfig settings.
-CONFIG_BOARD_ZOMBIE=y
-
-CONFIG_PLATFORM_EC_ACCEL_KX022=y
diff --git a/zephyr/program/herobrine/zombie/project.overlay b/zephyr/program/herobrine/zombie/project.overlay
deleted file mode 100644
index e5b530dc5f..0000000000
--- a/zephyr/program/herobrine/zombie/project.overlay
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Herobrine program common DTS includes */
-#include "../adc.dtsi"
-#include "../common.dtsi"
-#include "../i2c.dtsi"
-#include "../interrupts.dtsi"
-#include "../keyboard.dtsi"
-#include "../default_gpio_pinctrl.dtsi"
-#include "../switchcap.dtsi"
-#include "../usbc.dtsi"
-
-/* Zombie project DTS includes*/
-#include "gpio.dtsi"
-#include "led_pins.dtsi"
-#include "led_policy.dtsi"
-#include "motionsense.dtsi"
-
-/* zombie overrides follow... */
-/* battery overrides */
-/ {
- batteries {
- default_battery: sg20 {
- compatible = "ganfeng,sg20", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/intelrvp/BUILD.py b/zephyr/program/intelrvp/BUILD.py
deleted file mode 100644
index f129b3d2d2..0000000000
--- a/zephyr/program/intelrvp/BUILD.py
+++ /dev/null
@@ -1,98 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Define zmake projects for intelrvp."""
-
-# intelrvp has adlrvp_npcx, adlrvpp_ite, adlrvpp_mchp etc
-
-
-def register_intelrvp_project(
- project_name,
- chip="npcx9m3f",
- extra_dts_overlays=(),
- extra_kconfig_files=(),
-):
- """Register a variant of intelrvp."""
- register_func = register_binman_project
- if chip.startswith("mec1727"):
- register_func = register_mchp_project
- elif chip.startswith("npcx"):
- register_func = register_npcx_project
-
- kconfig_files = [here / "prj.conf"]
- dts_overlays = []
- if project_name.startswith("adlrvp"):
- kconfig_files.append(here / "adlrvp/prj.conf")
- dts_overlays.append(here / "adlrvp/battery.dts")
- dts_overlays.append(here / "adlrvp/ioex.dts")
- if project_name.startswith("mtlrvp"):
- kconfig_files.append(here / "mtlrvp/prj.conf")
- dts_overlays.append(here / "adlrvp/battery.dts")
- kconfig_files.extend(extra_kconfig_files)
- dts_overlays.extend(extra_dts_overlays)
-
- register_func(
- project_name=project_name,
- zephyr_board=chip,
- dts_overlays=dts_overlays,
- kconfig_files=kconfig_files,
- )
-
-
-register_intelrvp_project(
- project_name="adlrvp_mchp",
- chip="mec1727",
- extra_dts_overlays=[
- here / "adlrvp/adlrvp_mchp/adlrvp_mchp.dts",
- here / "adlrvp/adlrvp_mchp/gpio.dts",
- here / "adlrvp/adlrvp_mchp/interrupts.dts",
- here / "adlrvp/adlrvp_mchp/keyboard.dts",
- here / "adlrvp/adlrvp_mchp/usbc.dts",
- ],
- extra_kconfig_files=[
- here / "legacy_ec_pwrseq.conf",
- here / "adlrvp/adlrvp_mchp/prj.conf",
- ],
-)
-
-
-register_intelrvp_project(
- project_name="adlrvp_npcx",
- chip="npcx9m7f",
- extra_dts_overlays=[
- here / "adlrvp/adlrvp_npcx/adlrvp_npcx.dts",
- here / "adlrvp/adlrvp_npcx/fan.dts",
- here / "adlrvp/adlrvp_npcx/gpio.dts",
- here / "adlrvp/adlrvp_npcx/interrupts.dts",
- here / "adlrvp/adlrvp_npcx/keyboard.dts",
- here / "adlrvp/adlrvp_npcx/temp_sensor.dts",
- here / "adlrvp/adlrvp_npcx/usbc.dts",
- here / "adlrvp/adlrvp_npcx/pwm_leds.dts",
- ],
- extra_kconfig_files=[
- here / "legacy_ec_pwrseq.conf",
- here / "adlrvp/adlrvp_npcx/prj.conf",
- ],
-)
-
-
-register_intelrvp_project(
- project_name="mtlrvpp_npcx",
- chip="npcx9m3f",
- extra_dts_overlays=[
- here / "mtlrvp/mtlrvpp_npcx/fan.dts",
- here / "mtlrvp/mtlrvpp_npcx/gpio.dts",
- here / "mtlrvp/mtlrvpp_npcx/keyboard.dts",
- here / "mtlrvp/mtlrvpp_npcx/interrupts.dts",
- here / "mtlrvp/ioex.dts",
- here / "mtlrvp/mtlrvpp_npcx/mtlrvp_npcx.dts",
- here / "mtlrvp/mtlrvpp_npcx/mtlrvp_npcx_power_signals.dts",
- here / "adlrvp/adlrvp_npcx/temp_sensor.dts",
- here / "mtlrvp/usbc.dts",
- ],
- extra_kconfig_files=[
- here / "zephyr_ap_pwrseq.conf",
- here / "mtlrvp/mtlrvpp_npcx/prj.conf",
- ],
-)
diff --git a/zephyr/program/intelrvp/CMakeLists.txt b/zephyr/program/intelrvp/CMakeLists.txt
deleted file mode 100644
index 039627dec6..0000000000
--- a/zephyr/program/intelrvp/CMakeLists.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cmake_minimum_required(VERSION 3.13.1)
-
-find_package(Zephyr REQUIRED HINTS "${ZEPHYR_BASE}")
-project(intelrvp)
-
-cros_ec_library_include_directories(include)
-cros_ec_library_include_directories("${PLATFORM_EC}/driver/charger")
-cros_ec_library_include_directories("${PLATFORM_EC}/driver/ppc")
-cros_ec_library_include_directories("${PLATFORM_EC}/driver/tcpm")
-cros_ec_library_include_directories("${PLATFORM_EC}/driver/usb_mux")
-zephyr_library_sources("src/intel_rvp_board_id.c")
-
-if((DEFINED CONFIG_BOARD_ADLRVP_MCHP) OR (DEFINED CONFIG_BOARD_ADLRVP_NPCX))
- add_subdirectory(adlrvp)
- zephyr_library_sources("src/intelrvp.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "${PLATFORM_EC}/baseboard/intelrvp/usb_pd_policy_mecc_1_0.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "${PLATFORM_EC}/baseboard/intelrvp/chg_usb_pd_mecc_1_0.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "${PLATFORM_EC}/baseboard/intelrvp/chg_usb_pd.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_LED_PWM "src/intel_rvp_led.c")
-endif()
-
-if(DEFINED CONFIG_BOARD_MTLRVP_NPCX)
- add_subdirectory(mtlrvp)
- zephyr_library_sources("src/intelrvp.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "src/usb_pd_policy_mecc_1_1.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "src/chg_usb_pd_mecc_1_1.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "src/chg_usb_pd.c")
-endif()
diff --git a/zephyr/program/intelrvp/Kconfig b/zephyr/program/intelrvp/Kconfig
deleted file mode 100644
index 605f57c054..0000000000
--- a/zephyr/program/intelrvp/Kconfig
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-config BOARD_ADLRVP_MCHP
- bool "Intel ADLRVP_MCHP board"
- depends on SOC_MEC172X_NSZ
- help
- Build Intel ADLRVP_MCHP reference board. This board has Intel ADL RVP
- SoC with MEC1727 EC.
-
-config BOARD_ADLRVP_NPCX
- bool "Intel ADLRVP_NPCX board"
- depends on SOC_NPCX9M7F
- help
- Build Intel ADLRVP_NPCX reference board. This board has Intel ADL RVP
- SoC with NPCX9M37F EC.
-
-config BOARD_MTLRVP_NPCX
- bool "Intel MTLRVP_NPCX board"
- depends on SOC_NPCX9M3F
- help
- Build Intel MTLRVP_NPCX reference board. This board is Intel MTL RVP
- SOC with NPCX_NPCX9M3F
-
-source "Kconfig.zephyr"
diff --git a/zephyr/program/intelrvp/adlrvp/CMakeLists.txt b/zephyr/program/intelrvp/adlrvp/CMakeLists.txt
deleted file mode 100644
index 71dee29552..0000000000
--- a/zephyr/program/intelrvp/adlrvp/CMakeLists.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cros_ec_library_include_directories("include")
-zephyr_library_sources("src/adlrvp.c")
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/adlrvp_mchp.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/adlrvp_mchp.dts
deleted file mode 100644
index 39fd720290..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/adlrvp_mchp.dts
+++ /dev/null
@@ -1,200 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_ac_present
- &int_lid_open
- &int_power_button
- >;
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_charger: charger {
- i2c-port = <&i2c_smb_0>;
- enum-names = "I2C_PORT_BATTERY",
- "I2C_PORT_CHARGER",
- "I2C_PORT_EEPROM",
- "I2C_PORT_PORT80";
- };
- typec_0: typec-0 {
- i2c-port = <&i2c_smb_1>;
- enum-names = "I2C_PORT_TYPEC_0";
- };
- typec_1: typec-1 {
- i2c-port = <&i2c_smb_2>;
- enum-names = "I2C_PORT_TYPEC_1";
- };
- typec_2: typec-2 {
- i2c-port = <&i2c_smb_3>;
- enum-names = "I2C_PORT_TYPEC_2";
- };
- typec_3: typec-3 {
- i2c-port = <&i2c_smb_4>;
- enum-names = "I2C_PORT_TYPEC_3";
- };
- };
-};
-
-/* charger */
-&i2c_smb_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_STANDARD>;
- port_sel = <0>;
- pinctrl-0 = <&i2c00_scl_gpio004 &i2c00_sda_gpio003>;
- pinctrl-names = "default";
-
- pca95xx: pca95xx@22 {
- compatible = "nxp,pca95xx";
- label = "PCA95XX";
- reg = <0x22>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <16>;
- };
-
- rvp_board_id: rvp-board-id {
- compatible = "intel,rvp-board-id";
-
- /*
- * BOM ID [2] : IOEX[0]
- * BOM ID [1:0] : IOEX[15:14]
- */
- bom-gpios = <&pca95xx 0 0>, <&pca95xx 15 0>, <&pca95xx 14 0>;
-
- /*
- * FAB ID [1:0] : IOEX[2:1]
- */
- fab-gpios = <&pca95xx 2 0>, <&pca95xx 1 0>;
-
- /*
- * BOARD ID[5:0] : IOEX[13:8]
- */
- board-gpios = <&pca95xx 13 0>, <&pca95xx 12 0>, <&pca95xx 11 0>,
- <&pca95xx 10 0>, <&pca95xx 9 0>, <&pca95xx 8 0>;
- };
-
- max695x@38 {
- compatible = "maxim,max695x";
- reg = <0x38>;
- };
-
- charger: isl9241@9 {
- compatible = "intersil,isl9241";
- status = "okay";
- reg = <0x9>;
- };
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-};
-
-/* typec_0 */
-&i2c_smb_1 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- port_sel = <6>;
- pinctrl-0 = <&i2c06_scl_gpio140 &i2c06_sda_gpio132>;
- pinctrl-names = "default";
-
- tcpc_port0: fusb302@22 {
- compatible = "fairchild,fusb302";
- reg = <0x22>;
- };
-
- usb_c0_soc_side_bb_retimer: jhl8040r-c0-soc-side@54 {
- compatible = "intel,jhl8040r";
- reg = <0x54>;
- reset-pin = <&usb_c0_bb_retimer_rst>;
- ls-en-pin = <&usb_c0_bb_retimer_ls_en>;
- };
-
- usb_c0_bb_retimer: jhl8040r-c0@56 {
- compatible = "intel,jhl8040r";
- reg = <0x56>;
- reset-pin = <&usb_c0_bb_retimer_rst>;
- ls-en-pin = <&usb_c0_bb_retimer_ls_en>;
- };
-};
-
-/* typec_1 */
-&i2c_smb_2 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- port_sel = <3>;
- pinctrl-0 = <&i2c03_scl_gpio010 &i2c03_sda_gpio007>;
- pinctrl-names = "default";
-
- tcpc_port1: fusb302@22 {
- compatible = "fairchild,fusb302";
- reg = <0x22>;
- };
-
- usb_c1_soc_side_bb_retimer: jhl8040r-c1-soc-side@55 {
- compatible = "intel,jhl8040r";
- reg = <0x55>;
- reset-pin = <&usb_c1_bb_retimer_rst>;
- ls-en-pin = <&usb_c1_bb_retimer_ls_en>;
- };
-
- usb_c1_bb_retimer: jhl8040r-c1@57 {
- compatible = "intel,jhl8040r";
- reg = <0x57>;
- reset-pin = <&usb_c1_bb_retimer_rst>;
- ls-en-pin = <&usb_c1_bb_retimer_ls_en>;
- };
-};
-
-/* typec_2 */
-&i2c_smb_3 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- port_sel = <7>;
- pinctrl-0 = <&i2c07_scl_gpio013 &i2c07_sda_gpio012>;
- pinctrl-names = "default";
-
- tcpc_port2: fusb302@22 {
- compatible = "fairchild,fusb302";
- reg = <0x22>;
- };
-
- usb_c2_bb_retimer: jhl8040r-c2@58 {
- compatible = "intel,jhl8040r";
- reg = <0x58>;
- reset-pin = <&usb_c2_bb_retimer_rst>;
- ls-en-pin = <&usb_c2_bb_retimer_ls_en>;
- };
-};
-
-/* typec_3 */
-&i2c_smb_4 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- port_sel = <2>;
- pinctrl-0 = <&i2c02_scl_gpio155 &i2c02_sda_gpio154>;
- pinctrl-names = "default";
-
- tcpc_port3: fusb302@22 {
- compatible = "fairchild,fusb302";
- reg = <0x22>;
- };
-
- usb_c3_bb_retimer: jhl8040r-c3@59 {
- compatible = "intel,jhl8040r";
- reg = <0x59>;
- reset-pin = <&usb_c3_bb_retimer_rst>;
- ls-en-pin = <&usb_c3_bb_retimer_ls_en>;
- };
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/bb_retimer.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/bb_retimer.dts
deleted file mode 100644
index 1c760120f1..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/bb_retimer.dts
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-&i2c_smb_1 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- usb_c0_bb_retimer: jhl8040r@56 {
- compatible = "intel,jhl8040r";
- reg = <0x56>;
- label = "USB_C0_BB_RETIMER";
- reset-pin = <&usb_c0_bb_retimer_rst>;
- };
-};
-
-&i2c_smb_2 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- usb_c1_bb_retimer: jhl8040r@57 {
- compatible = "intel,jhl8040r";
- reg = <0x57>;
- label = "USB_C1_BB_RETIMER";
- reset-pin = <&usb_c1_bb_retimer_rst>;
- };
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/gpio.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/gpio.dts
deleted file mode 100644
index d526fdcb3b..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/gpio.dts
+++ /dev/null
@@ -1,299 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &gpio_wp;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- all_sys_pwrgd: all-sys-pwrgd {
- gpios = <&gpio_040_076 15 GPIO_INPUT>;
- enum-name = "GPIO_PG_EC_ALL_SYS_PWRGD";
- }; /* GPIO057 */
- rsmrst_pwrgd: rsmrst-pwrgd {
- gpios = <&gpio_200_236 17 GPIO_INPUT>;
- enum-name = "GPIO_PG_EC_RSMRST_ODL";
- }; /* GPIO221 */
- pch_slp_s0_n: pch-slp-s0-n {
- gpios = <&gpio_240_276 3 GPIO_INPUT>;
- enum-name = "GPIO_PCH_SLP_S0_L";
- }; /* GPIO243 */
- vccpdsw_3p3: vccpdsw-3p3 {
- gpios = <&gpio_200_236 1 GPIO_INPUT>;
- enum-name = "GPIO_PG_EC_DSW_PWROK";
- }; /* GPIO201 */
- pm_slp_sus_ec_n: pm-slp-sus-ec-n {
- gpios = <&gpio_200_236 23 GPIO_INPUT>;
- enum-name = "GPIO_SLP_SUS_L";
- }; /* GPIO227 */
- pm_slp_s3_n: pm-slp-s3-n {
- gpios = <&gpio_140_176 17 GPIO_INPUT>;
- enum-name = "GPIO_PCH_SLP_S3_L";
- }; /* GPIO161 */
- pm_slp_s4_n: pm-slp-s4-n {
- gpios = <&gpio_140_176 18 GPIO_INPUT>;
- }; /* GPIO162 */
- volume_up {
- gpios = <&gpio_000_036 30 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- }; /* GPIO036 */
- vol_dn_ec {
- gpios = <&gpio_240_276 12 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- }; /* GPIO254 */
- smc_lid: smc-lid {
- gpios = <&gpio_200_236 22 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_LID_OPEN";
- }; /* GPIO226 */
- mech_pwr_btn_odl: mech-pwr-btn-odl {
- gpios = <&gpio_100_136 13 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- }; /* GPIO115 */
- std_adp_prsnt: std-adp-prsnt {
- gpios = <&gpio_040_076 3 GPIO_INPUT>;
- enum-name= "GPIO_DC_JACK_PRESENT";
- }; /* GPIO043 */
- bc_acok: bc-acok {
- gpios = <&gpio_140_176 14 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- }; /* GPIO156 */
- usbc_tcpc_alrt_p0: usbc-tcpc-alrt-p0 {
- gpios = <&gpio_140_176 3 GPIO_INPUT>;
- }; /* GPIO143 */
- usbc_tcpc_alrt_p1: usbc-tcpc-alrt-p1 {
- gpios = <&gpio_240_276 1 GPIO_INPUT>;
- }; /* GPIO241 */
- usbc_tcpc_alrt_p2: usbc-tcpc-alrt-p2 {
- gpios = <&gpio_100_136 24 GPIO_INPUT>;
- }; /* GPIO130 */
- usbc_tcpc_alrt_p3: usbc-tcpc-alrt-p3 {
- gpios = <&gpio_240_276 2 GPIO_INPUT>;
- }; /* GPIO242 */
- usbc_tcpc_ppc_alrt_p0: usbc-tcpc-ppc-alrt-p0 {
- gpios = <&gpio_240_276 0 GPIO_INPUT>;
- }; /* GPIO240 */
- usbc_tcpc_ppc_alrt_p1: usbc-tcpc-ppc-alrt-p1 {
- gpios = <&gpio_100_136 1 GPIO_INPUT>;
- }; /* GPIO101 */
- usbc_tcpc_ppc_alrt_p2: usbc-tcpc-ppc-alrt-p2 {
- gpios = <&gpio_140_176 4 GPIO_INPUT>;
- }; /* GPIO144 */
- usbc_tcpc_ppc_alrt_p3: usbc-tcpc-ppc-alrt-p3 {
- gpios = <&gpio_140_176 2 GPIO_INPUT>;
- }; /* GPIO142 */
- gpio_ec_pch_wake_odl: smc-wake-sci-n-mecc {
- gpios = <&gpio_040_076 9 GPIO_ODR_HIGH>;
- }; /* GPIO051 */
- ec_pch_mkbp_int_odl {
- gpios = <&gpio_100_136 23 GPIO_ODR_HIGH>;
- }; /* GPIO127 */
- lpc_espi_rst_n {
- gpios = <&gpio_040_076 17 GPIO_INPUT>;
- }; /* GPIO061 NANA */
- plt_rst_l {
- gpios = <&gpio_040_076 10 GPIO_INPUT>;
- }; /* GPIO052 NANA */
- slate_mode_indication {
- gpios = <&gpio_200_236 18 GPIO_INPUT>;
- }; /* GPIO222 */
- prochot_ec_n {
- gpios = <&gpio_000_036 2 GPIO_INPUT>;
- enum-name = "GPIO_CPU_PROCHOT";
- }; /* GPIO002 ???? */
- sys_rst_odl {
- gpios = <&gpio_040_076 16 GPIO_ODR_HIGH>;
- enum-name = "GPIO_SYS_RESET_L";
- }; /* GPIO060 */
- pm_rsmrst_n {
- gpios = <&gpio_040_076 12 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PCH_RSMRST_L";
- }; /* GPIO054 */
- pm_pwrbtn_n {
- gpios = <&gpio_000_036 14 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- }; /* GPIO016 */
- ec_spi_oe_mecc: ec-spi-oe-mecc {
- gpios = <&gpio_040_076 2 GPIO_OUTPUT_LOW>;
- }; /* GPIO042 */
- ec_ds3 {
- gpios = <&gpio_000_036 21 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_PP3300_A";
- }; /* GPIO025 */
- pch_pwrok_ec {
- gpios = <&gpio_100_136 6 GPIO_INPUT>;
- enum-name = "GPIO_PCH_PWROK";
- }; /* GPIO106 */
- sys_pwrok {
- gpios = <&gpio_200_236 2 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PCH_SYS_PWROK";
- }; /* GPIO202 */
- ec_dsw_pwrok {
- gpios = <&gpio_000_036 28 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PCH_DSW_PWROK";
- }; /* GPIO034 */
- gpio_wp: ec-flash-wp-odl {
- gpios = <&gpio_000_036 12 GPIO_INPUT>;
- }; /* GPIO014 */
- ec_h1_packet_mode {
- gpios = <&gpio_000_036 29 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- }; /* GPIO035 */
- ec_entering_rw {
- gpios = <&gpio_100_136 2 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- }; /* GPIO102 */
- ccd_mode_odl: ccd-mode-odl {
- gpios = <&gpio_140_176 29 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- }; /* GPIO175 */
- bat_det {
- gpios = <&gpio_200_236 6 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- }; /* GPIO206 */
- edp_bklt_en_mecc {
- gpios = <&gpio_000_036 18 GPIO_OUTPUT_HIGH>;
- }; /* GPIO022 */
- led_1_l {
- gpios = <&gpio_140_176 15 GPIO_OUTPUT_HIGH>;
- }; /* GPIO157 */
- led_2_l {
- gpios = <&gpio_140_176 11 GPIO_OUTPUT_HIGH>;
- }; /* GPIO153 */
- therm_sen_mecc {
- gpios = <&gpio_140_176 1 GPIO_OUTPUT_LOW>;
- }; /* GPIO141 */
- smb_bs_clk {
- gpios = <&gpio_000_036 4 GPIO_INPUT>;
- }; /* GPIO004 */
- smb_bs_data {
- gpios = <&gpio_000_036 3 GPIO_INPUT>;
- }; /* GPIO003 */
- usbc_tcpc_i2c_clk_p0 {
- gpios = <&gpio_140_176 0 GPIO_INPUT>;
- }; /* GPIO140 */
- usbc_tcpc_i2c_data_p0 {
- gpios = <&gpio_100_136 26 GPIO_INPUT>;
- }; /* GPIO132 */
- usbc_tcpc_i2c_clk_p2 {
- gpios = <&gpio_000_036 8 GPIO_INPUT>;
- }; /* GPIO010 */
- usbc_tcpc_i2c_data_p2 {
- gpios = <&gpio_000_036 7 GPIO_INPUT>;
- }; /* GPIO007 */
- usbc_tcpc_i2c_clk_p1 {
- gpios = <&gpio_000_036 11 GPIO_INPUT>;
- }; /* GPIO013 */
- usbc_tcpc_i2c_data_p1 {
- gpios = <&gpio_000_036 10 GPIO_INPUT>;
- }; /* GPIO012 */
- usbc_tcpc_i2c_clk_p3 {
- gpios = <&gpio_140_176 13 GPIO_INPUT>;
- }; /* GPIO155 */
- usbc_tcpc_i2c_data_p3 {
- gpios = <&gpio_140_176 12 GPIO_INPUT>;
- }; /* GPIO154 */
- sml1_clk_mecc {
- gpios = <&gpio_100_136 25 GPIO_INPUT>;
- }; /* GPIO131 */
- cpu_cat_err_mecc {
- gpios = <&gpio_000_036 0 GPIO_INPUT>;
- }; /* GPIO000 */
- espi_alert0_n {
- gpios = <&gpio_040_076 19 GPIO_INPUT>;
- }; /* GPIO063 NANA */
- batt_disable_ec {
- gpios = <&gpio_040_076 23 GPIO_INPUT>;
- }; /* GPIO067 */
- cpu_c10_gate_mecc {
- gpios = <&gpio_000_036 19 GPIO_INPUT>;
- }; /* GPIO023 */
- smc_sdown_mecc {
- gpios = <&gpio_240_276 13 GPIO_INPUT>;
- }; /* GPIO255 */
- std_adpt_cntrl_gpio {
- gpios = <&gpio_240_276 4 GPIO_INPUT>;
- }; /* GPIO244 */
- smc_onoff_n {
- gpios = <&gpio_100_136 12 GPIO_INPUT>;
- }; /* GPIO114 */
- suswarn {
- gpios = <&gpio_000_036 20 GPIO_INPUT>;
- }; /* GPIO024 */
- me_g3_to_m3_ec {
- gpios = <&gpio_000_036 27 GPIO_INPUT>;
- }; /* GPIO033 */
- gpio_ec_kso_02_inv: ec-kso-02-inv {
- gpios = <&gpio_040_076 6 (GPIO_OUTPUT_LOW
- | GPIO_ACTIVE_LOW)>;
- }; /* GPIO046 */
-
- usb_c0_bb_retimer_rst: usb-c0-bb-retimer-rst {
- gpios = <&ioex_c0_port 0 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_BB_RETIMER_RST";
- };
- usb_c0_bb_retimer_ls_en: usb-c0-bb-retimer-ls-en {
- gpios = <&ioex_c0_port 1 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_BB_RETIMER_LS_EN";
- };
- usb-c0-usb-mux-cntrl-1 {
- gpios = <&ioex_c0_port 4 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_USB_MUX_CNTRL_1";
- };
- usb-c0-usb-mux-cntrl-0 {
- gpios = <&ioex_c0_port 5 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_USB_MUX_CNTRL_0";
- };
- usb_c1_bb_retimer_rst: usb-c1-bb-retimer-rst {
- gpios = <&ioex_c1_port 0 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C1_BB_RETIMER_RST";
- };
- usb_c1_bb_retimer_ls_en: usb-c1-bb-retimer-ls-en {
- gpios = <&ioex_c1_port 1 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C1_BB_RETIMER_LS_EN";
- };
- usb-c1-hpd {
- gpios = <&ioex_c1_port 2 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C1_HPD";
- };
- usb-c0-c1-oc {
- gpios = <&ioex_c1_port 8 GPIO_OUTPUT_HIGH>;
- enum-name = "IOEX_USB_C0_C1_OC";
- };
- usb_c2_bb_retimer_rst: usb-c2-bb-retimer-rst {
- gpios = <&ioex_c2_port 0 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C2_BB_RETIMER_RST";
- };
- usb_c2_bb_retimer_ls_en: usb-c2-bb-retimer-ls-en {
- gpios = <&ioex_c2_port 1 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C2_BB_RETIMER_LS_EN";
- };
- usb-c2-usb-mux-cntrl-1 {
- gpios = <&ioex_c2_port 4 GPIO_OUTPUT_LOW>;
- };
- usb-c2-usb-mux-cntrl-0 {
- gpios = <&ioex_c2_port 5 GPIO_OUTPUT_LOW>;
- };
- usb_c3_bb_retimer_rst: usb-c3-bb-retimer-rst {
- gpios = <&ioex_c3_port 0 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C3_BB_RETIMER_RST";
- };
- usb_c3_bb_retimer_ls_en: usb-c3-bb-retimer-ls-en {
- gpios = <&ioex_c3_port 1 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C3_BB_RETIMER_LS_EN";
- };
- usb-c2-c3-oc {
- gpios = <&ioex_c3_port 8 GPIO_OUTPUT_HIGH>;
- enum-name = "IOEX_USB_C2_C3_OC";
- };
- /* unimplemented GPIOs */
- en-pp5000 {
- enum-name = "GPIO_EN_PP5000";
- };
- };
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/interrupts.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/interrupts.dts
deleted file mode 100644
index 17986fe2c7..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/interrupts.dts
+++ /dev/null
@@ -1,80 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-/ {
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_lid_open: lid-open {
- irq-pin = <&smc_lid>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_power_button: power-button {
- irq-pin = <&mech_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_ac_present: ac-present {
- irq-pin = <&bc_acok>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_slp_s0: slp-s0 {
- irq-pin = <&pch_slp_s0_n>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_slp_sus: slp-sus {
- irq-pin = <&pm_slp_sus_ec_n>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_pg_dsw_pwrok: pg-dsw-pwrok {
- irq-pin = <&vccpdsw_3p3>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_rsmrst_pwrgd: rsmrst-pwrgd {
- irq-pin = <&rsmrst_pwrgd>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_all_sys_pwrgd: all-sys-pwrgd {
- irq-pin = <&all_sys_pwrgd>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_usbc_tcpc_alrt_p0: usbc-tcpc-alrt-p0 {
- irq-pin = <&usbc_tcpc_alrt_p0>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usbc_tcpc_alrt_p1: usbc-tcpc-alrt-p1 {
- irq-pin = <&usbc_tcpc_alrt_p1>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usbc_tcpc_ppc_alrt_p0: usbc-tcpc-ppc-alrt-p0 {
- irq-pin = <&usbc_tcpc_ppc_alrt_p0>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usbc_tcpc_ppc_alrt_p1: usbc-tcpc-ppc-alrt-p1 {
- irq-pin = <&usbc_tcpc_ppc_alrt_p1>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_std_adp_prsnt: std-adp-prsnt {
- irq-pin = <&std_adp_prsnt>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "board_dc_jack_interrupt";
- };
- int_ccd_mode_odl: ccd-mode-odl {
- irq-pin = <&ccd_mode_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "board_connect_c0_sbu";
- };
- };
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/keyboard.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/keyboard.dts
deleted file mode 100644
index 2601da793d..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/keyboard.dts
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- cros-keyscan {
- compatible = "cros-ec,keyscan";
-
- output-settle = <80>;
- debounce-down = <9000>;
- debounce-up = <30000>;
- poll-timeout = <100000>;
-
- actual-key-mask = <
- 0x14 /* C0 */
- 0xff /* C1 */
- 0xff /* C2 */
- 0xff /* C3 */
- 0xff /* C4 */
- 0xf5 /* C5 */
- 0xff /* C6 */
- 0xa4 /* C7 */
- 0xff /* C8 */
- 0xfe /* C9 */
- 0x55 /* C10 */
- 0xfa /* C11 */
- 0xca /* C12 */
- >;
- };
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/prj.conf b/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/prj.conf
deleted file mode 100644
index d7220368a2..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/prj.conf
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_BOARD_ADLRVP_MCHP=y
-CONFIG_CROS_SYSTEM_XEC=y
-
-# For MCHP ESPI Drivers
-CONFIG_ESPI_PERIPHERAL_EC_HOST_CMD=y
-CONFIG_ESPI_PERIPHERAL_ACPI_SHM_REGION=y
-CONFIG_ESPI_PERIPHERAL_CUSTOM_OPCODE=y
-CONFIG_ESPI_PERIPHERAL_XEC_EMI0=y
-CONFIG_ESPI_PERIPHERAL_ACPI_EC_IBF_EVT_DATA=y
-CONFIG_ESPI_PERIPHERAL_KBC_OBE_CBK=y
-CONFIG_ESPI_PERIPHERAL_KBC_IBF_EVT_DATA=y
-
-# Invoke SoC Python script to create zephyr.mchp.bin which
-# is zephyr.bin processed for Boot-ROM loading.
-CONFIG_MCHP_MEC_UNSIGNED_HEADER=y
-CONFIG_MCHP_MEC_HEADER_FLASH_SIZE_256K=y
-
-# Support Zephyr SPI NOR driver to work with MCHP SPI driver
-CONFIG_SPI_NOR=y
-CONFIG_SPI_XEC_QMSPI_FULL_DUPLEX=y
-
-# Sensors - MCHP TACH driver under sensor
-CONFIG_SENSOR=n
-CONFIG_SENSOR_SHELL=n
-
-# Debug option
-# Enable flash console commands
-CONFIG_PLATFORM_EC_CONSOLE_CMD_FLASH=y
-
-
-## TODO - support following features next
-# Fan
-CONFIG_PLATFORM_EC_FAN=n
-
-# RTC
-CONFIG_PLATFORM_EC_RTC=n
-
-# PWM
-CONFIG_PWM=n
-
-## INTEL RVP
-# Host command
-CONFIG_PLATFORM_EC_HOSTCMD_AP_RESET=n
-
-# Power Sequencing
-CONFIG_PLATFORM_EC_THROTTLE_AP=n
-
-## ADL RVP
-# CBI
-CONFIG_EEPROM=n
-
-# LED
-CONFIG_PLATFORM_EC_LED_COMMON=n
-CONFIG_PLATFORM_EC_LED_PWM=n
-CONFIG_PLATFORM_EC_LED_PWM_TASK_DISABLED=n
-
-# Temperature sensors
-CONFIG_PLATFORM_EC_TEMP_SENSOR=n
-CONFIG_PLATFORM_EC_THERMISTOR=n
-CONFIG_PLATFORM_EC_TEMP_SENSOR_POWER=n
-
-# Charger
-CONFIG_PLATFORM_EC_DEDICATED_CHARGE_PORT=y
-
-# H1 issues second reset
-CONFIG_PLATFORM_EC_BOARD_RESET_AFTER_POWER_ON=n
-
-# Debug options
-# Enable flash console commands
-CONFIG_PLATFORM_EC_CONSOLE_CMD_FLASH=y
-CONFIG_WDT_DISABLE_AT_BOOT=y
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/usbc.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/usbc.dts
deleted file mode 100644
index 471a1f52e9..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_mchp/usbc.dts
+++ /dev/null
@@ -1,89 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
- usbc_port0: port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- tcpc = <&tcpc_port0>;
- chg = <&charger>;
- usb_mux_chain_0: usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c0_bb_retimer
- &virtual_mux_c0>;
- };
- usb_mux_alt_chain_0: usb-mux-alt-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&usb_c0_bb_retimer
- &usb_c0_soc_side_bb_retimer
- &virtual_mux_c0>;
- };
- };
- port0-muxes {
- virtual_mux_c0: virtual-mux-c0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- usbc_port1: port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- tcpc = <&tcpc_port1>;
- usb_mux_chain_1: usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c1_bb_retimer
- &virtual_mux_c1>;
- };
- usb_mux_alt_chain_1: usb-mux-alt-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&usb_c1_bb_retimer
- &usb_c1_soc_side_bb_retimer
- &virtual_mux_c1>;
- };
- };
- port1-muxes {
- virtual_mux_c1: virtual-mux-c1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- port2@2 {
- compatible = "named-usbc-port";
- reg = <2>;
- tcpc = <&tcpc_port2>;
- usb_mux_chain_2: usb-mux-chain-2 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c2_bb_retimer
- &virtual_mux_c2>;
- };
- };
- port2-muxes {
- virtual_mux_c2: virtual-mux-c2 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- port3@3 {
- compatible = "named-usbc-port";
- reg = <3>;
- tcpc = <&tcpc_port3>;
- usb_mux_chain_3: usb-mux-chain-3 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c3_bb_retimer
- &virtual_mux_c3>;
- };
- };
- port3-muxes {
- virtual_mux_c3: virtual-mux-c3 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/adlrvp_npcx.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/adlrvp_npcx.dts
deleted file mode 100644
index b8fbd6656d..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/adlrvp_npcx.dts
+++ /dev/null
@@ -1,257 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- chosen {
- cros,rtc = &mtc;
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_ac_present
- &int_lid_open
- &int_power_button
- >;
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_charger: charger {
- i2c-port = <&i2c7_0>;
- enum-names = "I2C_PORT_BATTERY",
- "I2C_PORT_CHARGER",
- "I2C_PORT_EEPROM",
- "I2C_PORT_PORT80";
- };
- typec_0: typec-0 {
- i2c-port = <&i2c0_0>;
- enum-names = "I2C_PORT_TYPEC_0";
- };
- typec_1: typec-1 {
- i2c-port = <&i2c2_0>;
- enum-names = "I2C_PORT_TYPEC_1";
- };
- typec_2: typec-2 {
- i2c-port = <&i2c1_0>;
- enum-names = "I2C_PORT_TYPEC_2";
- };
- typec_3: typec-3 {
- i2c-port = <&i2c3_0>;
- enum-names = "I2C_PORT_TYPEC_3";
- };
- };
-
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_ambient: ambient {
- enum-name = "ADC_TEMP_SENSOR_1";
- io-channels = <&adc0 3>;
- };
- adc_ddr: ddr {
- enum-name = "ADC_TEMP_SENSOR_2";
- io-channels = <&adc0 4>;
- };
- adc_skin: skin {
- enum-name = "ADC_TEMP_SENSOR_3";
- io-channels = <&adc0 2>;
- };
- adc_vr: vr {
- enum-name = "ADC_TEMP_SENSOR_4";
- io-channels = <&adc0 1>;
- };
- };
-
-};
-
-/* host interface */
-&espi0 {
- status = "okay";
- pinctrl-0 = <&espi_lpc_gp46_47_51_52_53_54_55_57>;
- pinctrl-names = "default";
-};
-
-/* charger */
-&i2c7_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_STANDARD>;
- pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>;
- pinctrl-names = "default";
-
- pca95xx: pca95xx@22 {
- compatible = "nxp,pca95xx";
- label = "PCA95XX";
- reg = <0x22>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <16>;
- };
-
- rvp_board_id: rvp-board-id {
- compatible = "intel,rvp-board-id";
-
- /*
- * BOM ID [2] : IOEX[0]
- * BOM ID [1:0] : IOEX[15:14]
- */
- bom-gpios = <&pca95xx 0 0>, <&pca95xx 15 0>, <&pca95xx 14 0>;
-
- /*
- * FAB ID [1:0] : IOEX[2:1]
- */
- fab-gpios = <&pca95xx 2 0>, <&pca95xx 1 0>;
-
- /*
- * BOARD ID[5:0] : IOEX[13:8]
- */
- board-gpios = <&pca95xx 13 0>, <&pca95xx 12 0>, <&pca95xx 11 0>,
- <&pca95xx 10 0>, <&pca95xx 9 0>, <&pca95xx 8 0>;
- };
-
- max695x@38 {
- compatible = "maxim,max695x";
- reg = <0x38>;
- };
-
- charger: isl9241@9 {
- compatible = "intersil,isl9241";
- status = "okay";
- reg = <0x9>;
- };
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-};
-
-&i2c_ctrl7 {
- status = "okay";
-};
-
-/* typec_0 */
-&i2c0_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-
- tcpc_port0: fusb302@22 {
- compatible = "fairchild,fusb302";
- reg = <0x22>;
- };
-
- usb_c0_soc_side_bb_retimer: jhl8040r-c0-soc-side@54 {
- compatible = "intel,jhl8040r";
- reg = <0x54>;
- reset-pin = <&usb_c0_bb_retimer_rst>;
- ls-en-pin = <&usb_c0_bb_retimer_ls_en>;
- };
-
- usb_c0_bb_retimer: jhl8040r-c0@56 {
- compatible = "intel,jhl8040r";
- reg = <0x56>;
- reset-pin = <&usb_c0_bb_retimer_rst>;
- ls-en-pin = <&usb_c0_bb_retimer_ls_en>;
- };
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-/* typec_1 */
-&i2c2_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c2_0_sda_scl_gp91_92>;
- pinctrl-names = "default";
-
- tcpc_port1: fusb302@22 {
- compatible = "fairchild,fusb302";
- reg = <0x22>;
- };
-
- usb_c1_soc_side_bb_retimer: jhl8040r-c1-soc-side@55 {
- compatible = "intel,jhl8040r";
- reg = <0x55>;
- reset-pin = <&usb_c1_bb_retimer_rst>;
- ls-en-pin = <&usb_c1_bb_retimer_ls_en>;
- };
-
- usb_c1_bb_retimer: jhl8040r-c1@57 {
- compatible = "intel,jhl8040r";
- reg = <0x57>;
- reset-pin = <&usb_c1_bb_retimer_rst>;
- ls-en-pin = <&usb_c1_bb_retimer_ls_en>;
- };
-};
-
-&i2c_ctrl2 {
- status = "okay";
-};
-
-/* typec_2 */
-&i2c1_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-
- tcpc_port2: fusb302@22 {
- compatible = "fairchild,fusb302";
- reg = <0x22>;
- };
-
- usb_c2_bb_retimer: jhl8040r-c2@58 {
- compatible = "intel,jhl8040r";
- reg = <0x58>;
- reset-pin = <&usb_c2_bb_retimer_rst>;
- ls-en-pin = <&usb_c2_bb_retimer_ls_en>;
- };
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-/* typec_3 */
-&i2c3_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c3_0_sda_scl_gpd0_d1>;
- pinctrl-names = "default";
-
- tcpc_port3: fusb302@22 {
- compatible = "fairchild,fusb302";
- reg = <0x22>;
- };
-
- usb_c3_bb_retimer: jhl8040r-c3@59 {
- compatible = "intel,jhl8040r";
- reg = <0x59>;
- reset-pin = <&usb_c3_bb_retimer_rst>;
- ls-en-pin = <&usb_c3_bb_retimer_ls_en>;
- };
-};
-
-&i2c_ctrl3 {
- status = "okay";
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_chan1_gp44
- &adc0_chan2_gp43
- &adc0_chan3_gp42
- &adc0_chan4_gp41>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/fan.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/fan.dts
deleted file mode 100644
index 8babe53903..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/fan.dts
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- fans {
- compatible = "cros-ec,fans";
-
- fan_0 {
- pwms = <&pwm3 0 PWM_KHZ(30) PWM_POLARITY_NORMAL>;
- rpm_min = <3000>;
- rpm_start = <3000>;
- rpm_max = <10000>;
- tach = <&tach2>;
- pgood_gpio = <&all_sys_pwrgd>;
- enable_gpio = <&gpio_fan_control>;
- };
- };
-};
-
-/* Tachemeter for fan speed measurement */
-&tach2 {
- status = "okay";
- pinctrl-0 = <&ta2_2_in_gpa6>;
- pinctrl-names = "default";
- port = <NPCX_TACH_PORT_A>; /* port-A is selected */
- sample-clk = <NPCX_TACH_FREQ_LFCLK>; /* Use LFCLK as sampling clock */
- pulses-per-round = <2>; /* number of pulses per round of encoder */
-};
-
-&pwm3 {
- status = "okay";
- pinctrl-0 = <&pwm3_gp80>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/gpio.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/gpio.dts
deleted file mode 100644
index 1d38fc877c..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/gpio.dts
+++ /dev/null
@@ -1,344 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &gpio_wp;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- all_sys_pwrgd: all-sys-pwrgd {
- gpios = <&gpio7 0 GPIO_INPUT>;
- enum-name = "GPIO_PG_EC_ALL_SYS_PWRGD";
- };
- rsmrst_pwrgd: rsmrst-pwrgd {
- gpios = <&gpio3 7 GPIO_INPUT>;
- enum-name = "GPIO_PG_EC_RSMRST_ODL";
- };
- pch_slp_s0_n: pch-slp-s0-n {
- gpios = <&gpioa 1 GPIO_INPUT>;
- enum-name = "GPIO_PCH_SLP_S0_L";
- };
- vccpdsw_3p3: vccpdsw-3p3 {
- gpios = <&gpio4 5 GPIO_INPUT>;
- enum-name = "GPIO_PG_EC_DSW_PWROK";
- };
- pm_slp_sus_ec_n: pm-slp-sus-ec-n {
- gpios = <&gpio8 6 GPIO_INPUT>;
- enum-name = "GPIO_SLP_SUS_L";
- };
- pm-slp-s3-n {
- gpios = <&gpiob 0 GPIO_INPUT>;
- enum-name = "GPIO_PCH_SLP_S3_L";
- };
- pm-slp-s4-n {
- gpios = <&gpioa 5 GPIO_INPUT>;
- };
- volume-up {
- gpios = <&gpio6 1 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- vol-dn-ec {
- gpios = <&gpio0 3 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- smc_lid: smc-lid {
- gpios = <&gpio0 1 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_LID_OPEN";
- };
- mech_pwr_btn_odl: mech-pwr-btn-odl {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- std_adp_prsnt: std-adp-prsnt {
- gpios = <&gpio0 2 GPIO_INPUT>;
- enum-name= "GPIO_DC_JACK_PRESENT";
- };
- bc_acok: bc-acok {
- gpios = <&gpioc 6 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- usbc_tcpc_alrt_p0: usbc-tcpc-alrt-p0 {
- gpios = <&gpio4 0 GPIO_INPUT>;
- };
- usbc_tcpc_alrt_p1: usbc-tcpc-alrt-p1 {
- gpios = <&gpio6 2 GPIO_INPUT>;
- };
- usbc_tcpc_alrt_p2: usbc-tcpc-alrt-p2 {
- gpios = <&gpio6 3 GPIO_INPUT>;
- };
- usbc_tcpc_alrt_p3: usbc-tcpc-alrt-p3 {
- gpios = <&gpio6 7 GPIO_INPUT>;
- };
- usbc_tcpc_ppc_alrt_p0: usbc-tcpc-ppc-alrt-p0 {
- gpios = <&gpiof 0 GPIO_INPUT>;
- };
- usbc_tcpc_ppc_alrt_p1: usbc-tcpc-ppc-alrt-p1 {
- gpios = <&gpiof 1 GPIO_INPUT>;
- };
- usbc_tcpc_ppc_alrt_p2: usbc-tcpc-ppc-alrt-p2 {
- gpios = <&gpiof 2 GPIO_INPUT>;
- };
- usbc_tcpc_ppc_alrt_p3: usbc-tcpc-ppc-alrt-p3 {
- gpios = <&gpiof 3 GPIO_INPUT>;
- };
- gpio_ec_pch_wake_odl: smc-wake-sci-n-mecc {
- gpios = <&gpioa 4 GPIO_ODR_HIGH>;
- };
- ec-pch-mkbp-int-odl {
- gpios = <&gpiof 5 GPIO_ODR_HIGH>;
- };
- lpc-espi-rst-n {
- gpios = <&gpio5 4 GPIO_INPUT>;
- };
- plt-rst-l {
- gpios = <&gpioa 2 GPIO_INPUT>;
- };
- slate-mode-indication {
- gpios = <&gpioe 5 GPIO_INPUT>;
- };
- prochot-ec-n {
- gpios = <&gpioa 7 GPIO_INPUT>;
- enum-name = "GPIO_CPU_PROCHOT";
- };
- sys-rst-odl {
- gpios = <&gpioc 5 GPIO_ODR_HIGH>;
- enum-name = "GPIO_SYS_RESET_L";
- };
- pm-rsmrst-n {
- gpios = <&gpiod 3 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PCH_RSMRST_L";
- };
- pm-pwrbtn-n {
- gpios = <&gpio9 7 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- ec_spi_oe_mecc: ec-spi-oe-mecc {
- gpios = <&gpio6 0 GPIO_OUTPUT_LOW>;
- };
- ec-ds3 {
- gpios = <&gpioc 4 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_PP3300_A";
- alias = "GPIO_TEMP_SENSOR_POWER";
- };
- pch-pwrok-ec {
- gpios = <&gpioa 0 GPIO_INPUT>;
- enum-name = "GPIO_PCH_PWROK";
- };
- sys-pwrok {
- gpios = <&gpio9 3 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PCH_SYS_PWROK";
- };
- ec-dsw-pwrok {
- gpios = <&gpio9 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PCH_DSW_PWROK";
- };
- gpio_wp: ec-flash-wp-odl {
- gpios = <&gpio9 4 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- ec-h1-packet-mode {
- gpios = <&gpioe 2 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- ec-entering-rw {
- gpios = <&gpiod 4 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- ccd_mode_odl: ccd-mode-odl {
- gpios = <&gpiof 4 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- bat-det {
- gpios = <&gpio7 6 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- edp-bklt-en-mecc {
- gpios = <&gpioe 1 GPIO_OUTPUT_HIGH>;
- };
- led_red_l: led-1-l {
- gpios = <&gpiob 6 GPIO_OUTPUT_HIGH>;
- };
- led_white_l: led-2-l {
- gpios = <&gpiob 7 GPIO_OUTPUT_HIGH>;
- };
- gpio_fan_control: therm-sen-mecc {
- gpios = <&gpioc 0 GPIO_OUTPUT_LOW>;
- };
- smb-bs-clk {
- gpios = <&gpiob 3 GPIO_INPUT>;
- };
- smb-bs-data {
- gpios = <&gpiob 2 GPIO_INPUT>;
- };
- usbc-tcpc-i2c-clk-p0 {
- gpios = <&gpiob 5 GPIO_INPUT>;
- };
- usbc-tcpc-i2c-data-p0 {
- gpios = <&gpiob 4 GPIO_INPUT>;
- };
- usbc-tcpc-i2c-clk-p2 {
- gpios = <&gpio9 2 GPIO_INPUT>;
- };
- usbc-tcpc-i2c-data-p2 {
- gpios = <&gpio9 1 GPIO_INPUT>;
- };
- usbc-tcpc-i2c-clk-p1 {
- gpios = <&gpio9 0 GPIO_INPUT>;
- };
- usbc-tcpc-i2c-data-p1 {
- gpios = <&gpio8 7 GPIO_INPUT>;
- };
- usbc-tcpc-i2c-clk-p3 {
- gpios = <&gpiod 1 GPIO_INPUT>;
- };
- usbc-tcpc-i2c-data-p3 {
- gpios = <&gpiod 0 GPIO_INPUT>;
- };
- sml1-clk-mecc {
- gpios = <&gpio3 3 GPIO_INPUT>;
- };
- sml1-data-mecc {
- gpios = <&gpio3 6 GPIO_INPUT>;
- };
- smb-pch-clk {
- gpios = <&gpioc 2 GPIO_INPUT>;
- };
- smb-pch-data {
- gpios = <&gpioc 1 GPIO_INPUT>;
- };
- i3c-0-scl {
- gpios = <&gpioe 4 GPIO_INPUT>;
- };
- i3c-0-sda {
- gpios = <&gpioe 3 GPIO_INPUT>;
- };
- cpu-cat-err-mecc {
- gpios = <&gpio3 4 GPIO_INPUT>;
- };
- tp29 {
- gpios = <&gpio5 0 GPIO_INPUT>;
- };
- tp28 {
- gpios = <&gpio5 6 GPIO_INPUT>;
- };
- espi-alert0-n {
- gpios = <&gpio5 7 GPIO_INPUT>;
- };
- batt-disable-ec {
- gpios = <&gpio6 6 GPIO_INPUT>;
- };
- tp33 {
- gpios = <&gpio7 2 GPIO_INPUT>;
- };
- tp26 {
- gpios = <&gpio7 3 GPIO_INPUT>;
- };
- slp-s0-cs-n {
- gpios = <&gpio7 4 GPIO_INPUT>;
- };
- ec-peci {
- gpios = <&gpio8 1 GPIO_INPUT>;
- };
- cpu-c10-gate-mecc {
- gpios = <&gpio9 6 GPIO_INPUT>;
- };
- smb-pch-alrt {
- gpios = <&gpioa 3 GPIO_INPUT>;
- };
- smc-sdown-mecc {
- gpios = <&gpiob 1 GPIO_INPUT>;
- };
- std-adpt-cntrl-gpio {
- gpios = <&gpioc 3 GPIO_INPUT>;
- };
- sml1-alert {
- gpios = <&gpioc 7 GPIO_INPUT>;
- };
- smc-onoff-n {
- gpios = <&gpiod 2 GPIO_INPUT>;
- };
- suswarn {
- gpios = <&gpiod 5 GPIO_INPUT>;
- };
- tp-gpiod6-ec {
- gpios = <&gpiod 6 GPIO_INPUT>;
- };
- tp-gpiod7-ec {
- gpios = <&gpiod 7 GPIO_INPUT>;
- };
- me-g3-to-m3-ec {
- gpios = <&gpioe 0 GPIO_INPUT>;
- };
- gpio_ec_kso_02_inv: ec-kso-02-inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
-
- usb_c0_bb_retimer_rst: usb-c0-bb-retimer-rst {
- gpios = <&ioex_c0_port 0 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_BB_RETIMER_RST";
- };
- usb_c0_bb_retimer_ls_en: usb-c0-bb-retimer-ls-en {
- gpios = <&ioex_c0_port 1 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_BB_RETIMER_LS_EN";
- };
- usb-c0-usb-mux-cntrl-1 {
- gpios = <&ioex_c0_port 4 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_USB_MUX_CNTRL_1";
- };
- usb-c0-usb-mux-cntrl-0 {
- gpios = <&ioex_c0_port 5 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_USB_MUX_CNTRL_0";
- };
- usb_c1_bb_retimer_rst: usb-c1-bb-retimer-rst {
- gpios = <&ioex_c1_port 0 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C1_BB_RETIMER_RST";
- };
- usb_c1_bb_retimer_ls_en: usb-c1-bb-retimer-ls-en {
- gpios = <&ioex_c1_port 1 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C1_BB_RETIMER_LS_EN";
- };
- usb-c1-hpd {
- gpios = <&ioex_c1_port 2 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C1_HPD";
- };
- usb-c0-c1-oc {
- gpios = <&ioex_c1_port 8 GPIO_OUTPUT_HIGH>;
- enum-name = "IOEX_USB_C0_C1_OC";
- };
- usb_c2_bb_retimer_rst: usb-c2-bb-retimer-rst {
- gpios = <&ioex_c2_port 0 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C2_BB_RETIMER_RST";
- };
- usb_c2_bb_retimer_ls_en: usb-c2-bb-retimer-ls-en {
- gpios = <&ioex_c2_port 1 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C2_BB_RETIMER_LS_EN";
- };
- usb-c2-usb-mux-cntrl-1 {
- gpios = <&ioex_c2_port 4 GPIO_OUTPUT_LOW>;
- };
- usb-c2-usb-mux-cntrl-0 {
- gpios = <&ioex_c2_port 5 GPIO_OUTPUT_LOW>;
- };
- usb_c3_bb_retimer_rst: usb-c3-bb-retimer-rst {
- gpios = <&ioex_c3_port 0 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C3_BB_RETIMER_RST";
- };
- usb_c3_bb_retimer_ls_en: usb-c3-bb-retimer-ls-en {
- gpios = <&ioex_c3_port 1 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C3_BB_RETIMER_LS_EN";
- };
- usb-c2-c3-oc {
- gpios = <&ioex_c3_port 8 GPIO_OUTPUT_HIGH>;
- enum-name = "IOEX_USB_C2_C3_OC";
- };
- /* unimplemented GPIOs */
- en-pp5000 {
- enum-name = "GPIO_EN_PP5000";
- };
- };
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/interrupts.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/interrupts.dts
deleted file mode 100644
index d7bb40fad2..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/interrupts.dts
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-/ {
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_lid_open: lid-open {
- irq-pin = <&smc_lid>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_power_button: power-button {
- irq-pin = <&mech_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_ac_present: ac-present {
- irq-pin = <&bc_acok>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_slp_s0: slp-s0 {
- irq-pin = <&pch_slp_s0_n>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_slp_sus: slp-sus {
- irq-pin = <&pm_slp_sus_ec_n>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_pg_dsw_pwrok: pg-dsw-pwrok {
- irq-pin = <&vccpdsw_3p3>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_rsmrst_pwrgd: rsmrst-pwrgd {
- irq-pin = <&rsmrst_pwrgd>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_all_sys_pwrgd: all-sys-pwrgd {
- irq-pin = <&all_sys_pwrgd>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_usbc_tcpc_alrt_p0: usbc-tcpc-alrt-p0 {
- irq-pin = <&usbc_tcpc_alrt_p0>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usbc_tcpc_alrt_p1: usbc-tcpc-alrt-p1 {
- irq-pin = <&usbc_tcpc_alrt_p1>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usbc_tcpc_alrt_p2: usbc-tcpc-alrt-p2 {
- irq-pin = <&usbc_tcpc_alrt_p2>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usbc_tcpc_alrt_p3: usbc-tcpc-alrt-p3 {
- irq-pin = <&usbc_tcpc_alrt_p3>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usbc_tcpc_ppc_alrt_p0: usbc-tcpc-ppc-alrt-p0 {
- irq-pin = <&usbc_tcpc_ppc_alrt_p0>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usbc_tcpc_ppc_alrt_p1: usbc-tcpc-ppc-alrt-p1 {
- irq-pin = <&usbc_tcpc_ppc_alrt_p1>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usbc_tcpc_ppc_alrt_p2: usbc-tcpc-ppc-alrt-p2 {
- irq-pin = <&usbc_tcpc_ppc_alrt_p2>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usbc_tcpc_ppc_alrt_p3: usbc-tcpc-ppc-alrt-p3 {
- irq-pin = <&usbc_tcpc_ppc_alrt_p3>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_std_adp_prsnt: std-adp-prsnt {
- irq-pin = <&std_adp_prsnt>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "board_dc_jack_interrupt";
- };
- int_ccd_mode_odl: ccd-mode-odl {
- irq-pin = <&ccd_mode_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "board_connect_c0_sbu";
- };
- };
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/keyboard.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/keyboard.dts
deleted file mode 100644
index be0a570e95..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/keyboard.dts
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- cros-keyscan {
- compatible = "cros-ec,keyscan";
-
- output-settle = <35>;
- debounce-down = <5000>;
- debounce-up = <40000>;
- poll-timeout = <100000>;
-
- actual-key-mask = <
- 0x14 /* C0 */
- 0xff /* C1 */
- 0xff /* C2 */
- 0xff /* C3 */
- 0xff /* C4 */
- 0xf5 /* C5 */
- 0xff /* C6 */
- 0xa4 /* C7 */
- 0xff /* C8 */
- 0xfe /* C9 */
- 0x55 /* C10 */
- 0xfa /* C11 */
- 0xca /* C12 */
- >;
- };
-};
-
-&cros_kb_raw {
- status = "okay";
- /* No KSO2 (it's inverted and implemented by GPIO) */
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- >;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/prj.conf b/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/prj.conf
deleted file mode 100644
index d04abada31..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/prj.conf
+++ /dev/null
@@ -1,13 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_BOARD_ADLRVP_NPCX=y
-CONFIG_CROS_SYSTEM_NPCX=y
-CONFIG_SYSCON=y
-
-# Charger
-CONFIG_PLATFORM_EC_DEDICATED_CHARGE_PORT=y
-
-# RTC
-CONFIG_PLATFORM_EC_RTC=y
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/pwm_leds.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/pwm_leds.dts
deleted file mode 100644
index eb1576dbff..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/pwm_leds.dts
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_led0: pwm_led_0 {
- pwms = <&pwm4 0 PWM_HZ(4800) PWM_POLARITY_INVERTED>;
- };
- pwm_led1: pwm_led_1 {
- pwms = <&pwm5 0 PWM_HZ(4800) PWM_POLARITY_INVERTED>;
- };
- };
-
- cros-pwmleds {
- compatible = "cros-ec,pwm-leds";
-
- leds = <&pwm_led0 &pwm_led1>;
-
- color-map-green = <100>;
-
- /* brightness-range = <red green blue yellow white amber> */
- brightness-range = <0 100 0 0 0 0>;
-
-
- #address-cells = <1>;
- #size-cells = <0>;
-
- pwm_led_0@0 {
- reg = <0>;
- ec-led-name = "EC_LED_ID_BATTERY_LED";
- };
-
- pwm_led_1@1 {
- reg = <1>;
- ec-led-name = "EC_LED_ID_POWER_LED";
- };
- };
-};
-
-/* LED1 */
-&pwm4 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm4_gpb6>;
- pinctrl-names = "default";
-};
-
-/* LED2 */
-&pwm5 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm5_gpb7>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/temp_sensor.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/temp_sensor.dts
deleted file mode 100644
index 93ecaa02f6..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/temp_sensor.dts
+++ /dev/null
@@ -1,89 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-
-/ {
- temp_ambient: ambient {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V0_22K6_47K_4050B>;
- adc = <&adc_ambient>;
- };
- temp_ddr: ddr {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V0_22K6_47K_4050B>;
- adc = <&adc_ddr>;
- };
- temp_skin: skin {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V0_22K6_47K_4050B>;
- adc = <&adc_skin>;
- };
- temp_vr: vr {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V0_22K6_47K_4050B>;
- adc = <&adc_vr>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- ambient {
- temp_fan_off = <15>;
- temp_fan_max = <50>;
- temp_host_high = <75>;
- temp_host_halt = <80>;
- temp_host_release_high = <65>;
- sensor = <&temp_ambient>;
- };
-
- /*
- * TDB: battery temp read api is not using thermistor and
- * zephyr shim layer doesn't support to configure custom read
- * function.
- *
- * battery {
- * compatible = "cros-ec,temp-sensor-thermistor",
- * "cros-ec,temp-sensor";
- * thermistor = < >;
- * enum-name = "";
- * temp_fan_off = <15>;
- * temp_fan_max = <50>;
- * temp_host_high = <75>;
- * temp_host_halt = <80>;
- * temp_host_release_high = <65>;
- * adc = <&adc_battery>;
- * };
- */
-
- ddr {
- temp_fan_off = <15>;
- temp_fan_max = <50>;
- temp_host_high = <75>;
- temp_host_halt = <80>;
- temp_host_release_high = <65>;
- sensor = <&temp_ddr>;
- };
- skin {
- temp_fan_off = <15>;
- temp_fan_max = <50>;
- temp_host_high = <75>;
- temp_host_halt = <80>;
- temp_host_release_high = <65>;
- sensor = <&temp_skin>;
- };
- vr {
- temp_fan_off = <15>;
- temp_fan_max = <50>;
- temp_host_high = <75>;
- temp_host_halt = <80>;
- temp_host_release_high = <65>;
- sensor = <&temp_vr>;
- };
- };
-};
-
-&thermistor_3V0_22K6_47K_4050B {
- status = "okay";
-};
diff --git a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/usbc.dts b/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/usbc.dts
deleted file mode 100644
index 471a1f52e9..0000000000
--- a/zephyr/program/intelrvp/adlrvp/adlrvp_npcx/usbc.dts
+++ /dev/null
@@ -1,89 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
- usbc_port0: port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- tcpc = <&tcpc_port0>;
- chg = <&charger>;
- usb_mux_chain_0: usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c0_bb_retimer
- &virtual_mux_c0>;
- };
- usb_mux_alt_chain_0: usb-mux-alt-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&usb_c0_bb_retimer
- &usb_c0_soc_side_bb_retimer
- &virtual_mux_c0>;
- };
- };
- port0-muxes {
- virtual_mux_c0: virtual-mux-c0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- usbc_port1: port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- tcpc = <&tcpc_port1>;
- usb_mux_chain_1: usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c1_bb_retimer
- &virtual_mux_c1>;
- };
- usb_mux_alt_chain_1: usb-mux-alt-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&usb_c1_bb_retimer
- &usb_c1_soc_side_bb_retimer
- &virtual_mux_c1>;
- };
- };
- port1-muxes {
- virtual_mux_c1: virtual-mux-c1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- port2@2 {
- compatible = "named-usbc-port";
- reg = <2>;
- tcpc = <&tcpc_port2>;
- usb_mux_chain_2: usb-mux-chain-2 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c2_bb_retimer
- &virtual_mux_c2>;
- };
- };
- port2-muxes {
- virtual_mux_c2: virtual-mux-c2 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- port3@3 {
- compatible = "named-usbc-port";
- reg = <3>;
- tcpc = <&tcpc_port3>;
- usb_mux_chain_3: usb-mux-chain-3 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c3_bb_retimer
- &virtual_mux_c3>;
- };
- };
- port3-muxes {
- virtual_mux_c3: virtual-mux-c3 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-};
diff --git a/zephyr/program/intelrvp/adlrvp/battery.dts b/zephyr/program/intelrvp/adlrvp/battery.dts
deleted file mode 100644
index 1de4111791..0000000000
--- a/zephyr/program/intelrvp/adlrvp/battery.dts
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- getac-3s = &default_battery;
- getac-2s = &getac_smp_hhp_408_2s;
- };
-
- batteries {
- default_battery: getac-smp-hhp-408-3s {
- compatible = "getac,bq40z50-R3-S3", "battery-smart";
- };
- getac_smp_hhp_408_2s: getac-smp-hhp-408-2s {
- compatible = "getac,bq40z50-R3-S2", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/intelrvp/adlrvp/include/adlrvp_zephyr.h b/zephyr/program/intelrvp/adlrvp/include/adlrvp_zephyr.h
deleted file mode 100644
index 135fd4ef4f..0000000000
--- a/zephyr/program/intelrvp/adlrvp/include/adlrvp_zephyr.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Intel ADL-RVP specific configuration */
-
-#ifndef __ADLRVP_BOARD_H
-#define __ADLRVP_BOARD_H
-
-#include "config.h"
-
-#define I2C_ADDR_FUSB302_TCPC_AIC 0x22
-#define I2C_ADDR_SN5S330_TCPC_AIC_PPC 0x40
-
-#define I2C_ADDR_PCA9675_TCPC_AIC_IOEX 0x21
-
-/* SOC side BB retimers (dual retimer config) */
-#define I2C_PORT0_BB_RETIMER_SOC_ADDR 0x54
-#if defined(HAS_TASK_PD_C1)
-#define I2C_PORT1_BB_RETIMER_SOC_ADDR 0x55
-#endif
-
-#define ADLM_LP4_RVP1_SKU_BOARD_ID 0x01
-#define ADLM_LP5_RVP2_SKU_BOARD_ID 0x02
-#define ADLM_LP5_RVP3_SKU_BOARD_ID 0x03
-#define ADLN_LP5_ERB_SKU_BOARD_ID 0x06
-#define ADLN_LP5_RVP_SKU_BOARD_ID 0x07
-#define ADLP_DDR5_RVP_SKU_BOARD_ID 0x12
-#define ADLP_LP5_T4_RVP_SKU_BOARD_ID 0x13
-#define ADL_RVP_BOARD_ID(id) ((id)&0x3F)
-
-#define CONFIG_BATTERY_TYPE_NO_AUTO_DETECT
-
-enum adlrvp_charge_ports {
- TYPE_C_PORT_0,
-#if defined(HAS_TASK_PD_C1)
- TYPE_C_PORT_1,
-#endif
-#if defined(HAS_TASK_PD_C2)
- TYPE_C_PORT_2,
-#endif
-#if defined(HAS_TASK_PD_C3)
- TYPE_C_PORT_3,
-#endif
-};
-
-enum ioex_port {
- IOEX_C0_PCA9675,
- IOEX_C1_PCA9675,
-#if defined(HAS_TASK_PD_C2)
- IOEX_C2_PCA9675,
- IOEX_C3_PCA9675,
-#endif
- IOEX_PORT_COUNT
-};
-
-#endif /* __ADLRVP_BOARD_H */
diff --git a/zephyr/program/intelrvp/adlrvp/ioex.dts b/zephyr/program/intelrvp/adlrvp/ioex.dts
deleted file mode 100644
index 3e2227dacb..0000000000
--- a/zephyr/program/intelrvp/adlrvp/ioex.dts
+++ /dev/null
@@ -1,78 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- /* IOEX_C0_PCA9675 */
- ioex-c0 {
- compatible = "cros,ioex-chip";
- i2c-port = <&typec_0>;
- i2c-addr = <0x21>;
- drv = "pca9675_ioexpander_drv";
- flags = <0x00>;
- #address-cells = <1>;
- #size-cells = <0>;
- ioex_c0_port: ioex-c0-port@0 {
- compatible = "cros,ioex-port";
- reg = <0>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <16>;
- };
- };
-
- /* IOEX_C1_PCA9675 */
- ioex-c1 {
- compatible = "cros,ioex-chip";
- i2c-port = <&typec_1>;
- i2c-addr = <0x21>;
- drv = "pca9675_ioexpander_drv";
- flags = <0x00>;
- #address-cells = <1>;
- #size-cells = <0>;
- ioex_c1_port: ioex-c1-port@0 {
- compatible = "cros,ioex-port";
- reg = <0>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <16>;
- };
- };
-
- /* IOEX_C2_PCA9675 */
- ioex-c2 {
- compatible = "cros,ioex-chip";
- i2c-port = <&typec_2>;
- i2c-addr = <0x21>;
- drv = "pca9675_ioexpander_drv";
- flags = <0x00>;
- #address-cells = <1>;
- #size-cells = <0>;
- ioex_c2_port: ioex-c2-port@0 {
- compatible = "cros,ioex-port";
- reg = <0>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <16>;
- };
- };
-
- /* IOEX_C3_PCA9675 */
- ioex-c3 {
- compatible = "cros,ioex-chip";
- i2c-port = <&typec_3>;
- i2c-addr = <0x21>;
- drv = "pca9675_ioexpander_drv";
- flags = <0x00>;
- #address-cells = <1>;
- #size-cells = <0>;
- ioex_c3_port: ioex-c3-port@0 {
- compatible = "cros,ioex-port";
- reg = <0>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <16>;
- };
- };
-};
diff --git a/zephyr/program/intelrvp/adlrvp/prj.conf b/zephyr/program/intelrvp/adlrvp/prj.conf
deleted file mode 100644
index df0811ecdd..0000000000
--- a/zephyr/program/intelrvp/adlrvp/prj.conf
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Power Sequencing
-CONFIG_AP_X86_INTEL_TGL=y
-CONFIG_PLATFORM_EC_POWERSEQ_SLP_S3_L_OVERRIDE=n
-CONFIG_PLATFORM_EC_POWERSEQ_PP5000_CONTROL=n
-CONFIG_PLATFORM_EC_POWERSEQ_ICELAKE=y
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_TYPE_NO_AUTO_DETECT=y
-CONFIG_PLATFORM_EC_BATTERY_V2=y
-
-# BC1.2
-CONFIG_PLATFORM_EC_USB_CHARGER=n
-
-# CBI
-CONFIG_EEPROM=y
-
-# Charger
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC=y
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR=5
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR_AC=10
-CONFIG_PLATFORM_EC_CHARGE_RAMP_HW=n
-CONFIG_PLATFORM_EC_CHARGER_BQ25720=y
-CONFIG_PLATFORM_EC_CHARGER_BQ25720_VSYS_TH2_CUSTOM=y
-CONFIG_PLATFORM_EC_CHARGER_BQ25720_VSYS_TH2_DV=70
-CONFIG_PLATFORM_EC_CHARGER_ISL9241=y
-CONFIG_PLATFORM_EC_CHARGER_RUNTIME_CONFIG=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_COMMON=y
-CONFIG_PLATFORM_EC_LED_PWM_TASK_DISABLED=y
-
-# Temperature sensors
-CONFIG_PLATFORM_EC_TEMP_SENSOR_POWER=y
-
-# USB-C and PD
-CONFIG_PLATFORM_EC_USB_DRP_ACC_TRYSRC=y
-CONFIG_PLATFORM_EC_USB_PD_DUAL_ROLE_AUTO_TOGGLE=n
-CONFIG_PLATFORM_EC_USB_PD_VBUS_MEASURE_CHARGER=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_MEASURE_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_TCPC_RUNTIME_CONFIG=n
-CONFIG_PLATFORM_EC_USBC_RETIMER_INTEL_BB_RUNTIME_CONFIG=n
-CONFIG_PLATFORM_EC_USB_MUX_TUSB1044=y
-CONFIG_PLATFORM_EC_USB_MUX_VIRTUAL=y
-CONFIG_PLATFORM_EC_USB_PD_DISCHARGE_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_REV30=y
-CONFIG_PLATFORM_EC_USB_PD_USB32_DRD=y
-CONFIG_PLATFORM_EC_USB_PD_TBT_COMPAT_MODE=y
-CONFIG_PLATFORM_EC_USB_PD_USB4=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_FUSB302=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_MUX=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_TCPCI=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_PPC=y
-CONFIG_PLATFORM_EC_USBC_PPC_SN5S330=y
-CONFIG_PLATFORM_EC_USBC_RETIMER_INTEL_BB=y
-
-# IOEX
-CONFIG_PLATFORM_EC_IOEX_PCA9675=y
-
-# eSPI
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_DEFAULT_VW_WIDTH_US=150
diff --git a/zephyr/program/intelrvp/adlrvp/src/adlrvp.c b/zephyr/program/intelrvp/adlrvp/src/adlrvp.c
deleted file mode 100644
index d7d192b1af..0000000000
--- a/zephyr/program/intelrvp/adlrvp/src/adlrvp.c
+++ /dev/null
@@ -1,430 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* TODO: b/218904113: Convert to using Zephyr GPIOs */
-#include "adlrvp_zephyr.h"
-#include "battery.h"
-#include "battery_fuel_gauge.h"
-#include "bq25710.h"
-#include "charger.h"
-#include "common.h"
-#include "console.h"
-#include "driver/retimer/bb_retimer_public.h"
-#include "extpower.h"
-#include "gpio_signal.h"
-#include "hooks.h"
-#include "intel_rvp_board_id.h"
-#include "intelrvp.h"
-#include "ioexpander.h"
-#include "isl9241.h"
-#include "power/icelake.h"
-#include "sn5s330.h"
-#include "system.h"
-#include "task.h"
-#include "tusb1064.h"
-#include "usb_mux.h"
-#include "usbc/usb_muxes.h"
-#include "usbc_ppc.h"
-#include "util.h"
-
-#define CPRINTF(format, args...) cprintf(CC_COMMAND, format, ##args)
-#define CPRINTS(format, args...) cprints(CC_COMMAND, format, ##args)
-
-/* TCPC AIC GPIO Configuration */
-const struct tcpc_aic_gpio_config_t tcpc_aic_gpios[] = {
- [TYPE_C_PORT_0] = {
- .tcpc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_alrt_p0)),
- .ppc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_ppc_alrt_p0)),
- .ppc_intr_handler = sn5s330_interrupt,
- },
-#if defined(HAS_TASK_PD_C1)
- [TYPE_C_PORT_1] = {
- .tcpc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_alrt_p1)),
- .ppc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_ppc_alrt_p1)),
- .ppc_intr_handler = sn5s330_interrupt,
- },
-#endif
-#if defined(HAS_TASK_PD_C2)
- [TYPE_C_PORT_2] = {
- .tcpc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_alrt_p2)),
- .ppc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_ppc_alrt_p2)),
- .ppc_intr_handler = sn5s330_interrupt,
- },
-#endif
-#if defined(HAS_TASK_PD_C3)
- [TYPE_C_PORT_3] = {
- .tcpc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_alrt_p3)),
- .ppc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_ppc_alrt_p3)),
- .ppc_intr_handler = sn5s330_interrupt,
- },
-#endif
-};
-BUILD_ASSERT(ARRAY_SIZE(tcpc_aic_gpios) == CONFIG_USB_PD_PORT_MAX_COUNT);
-
-/* USB-C PPC configuration */
-struct ppc_config_t ppc_chips[] = {
- [TYPE_C_PORT_0] = {
- .i2c_port = I2C_PORT_TYPEC_0,
- .i2c_addr_flags = I2C_ADDR_SN5S330_TCPC_AIC_PPC,
- .drv = &sn5s330_drv,
- },
-#if defined(HAS_TASK_PD_C1)
- [TYPE_C_PORT_1] = {
- .i2c_port = I2C_PORT_TYPEC_1,
- .i2c_addr_flags = I2C_ADDR_SN5S330_TCPC_AIC_PPC,
- .drv = &sn5s330_drv
- },
-#endif
-#if defined(HAS_TASK_PD_C2)
- [TYPE_C_PORT_2] = {
- .i2c_port = I2C_PORT_TYPEC_2,
- .i2c_addr_flags = I2C_ADDR_SN5S330_TCPC_AIC_PPC,
- .drv = &sn5s330_drv,
- },
-#endif
-#if defined(HAS_TASK_PD_C3)
- [TYPE_C_PORT_3] = {
- .i2c_port = I2C_PORT_TYPEC_3,
- .i2c_addr_flags = I2C_ADDR_SN5S330_TCPC_AIC_PPC,
- .drv = &sn5s330_drv,
- },
-#endif
-};
-BUILD_ASSERT(ARRAY_SIZE(ppc_chips) == CONFIG_USB_PD_PORT_MAX_COUNT);
-unsigned int ppc_cnt = ARRAY_SIZE(ppc_chips);
-
-/* Cache BB retimer power state */
-static bool cache_bb_enable[CONFIG_USB_PD_PORT_MAX_COUNT];
-
-void board_overcurrent_event(int port, int is_overcurrented)
-{
- /* Port 0 & 1 and 2 & 3 share same line for over current indication */
-#if defined(HAS_TASK_PD_C2)
- enum ioex_signal oc_signal = port < TYPE_C_PORT_2 ? IOEX_USB_C0_C1_OC :
- IOEX_USB_C2_C3_OC;
-#else
- enum ioex_signal oc_signal = IOEX_USB_C0_C1_OC;
-#endif
-
- /* Overcurrent indication is active low signal */
- ioex_set_level(oc_signal, is_overcurrented ? 0 : 1);
-}
-
-__override int bb_retimer_power_enable(const struct usb_mux *me, bool enable)
-{
- /*
- * ADL-P-DDR5 RVP SKU has cascaded retimer topology.
- * Ports with cascaded retimers share common load switch and reset pin
- * hence no need to set the power state again if the 1st retimer's power
- * status has already changed.
- */
- if (cache_bb_enable[me->usb_port] == enable)
- return EC_SUCCESS;
-
- cache_bb_enable[me->usb_port] = enable;
-
- /* Handle retimer's power domain.*/
- if (enable) {
- ioex_set_level(bb_controls[me->usb_port].usb_ls_en_gpio, 1);
-
- /*
- * minimum time from VCC to RESET_N de-assertion is 100us
- * For boards that don't provide a load switch control, the
- * retimer_init() function ensures power is up before calling
- * this function.
- */
- msleep(1);
- ioex_set_level(bb_controls[me->usb_port].retimer_rst_gpio, 1);
-
- /*
- * Allow 1ms time for the retimer to power up lc_domain
- * which powers I2C controller within retimer
- */
- msleep(1);
-
- } else {
- ioex_set_level(bb_controls[me->usb_port].retimer_rst_gpio, 0);
- msleep(1);
- ioex_set_level(bb_controls[me->usb_port].usb_ls_en_gpio, 0);
- }
- return EC_SUCCESS;
-}
-
-static void board_connect_c0_sbu_deferred(void)
-{
- int ccd_intr_level = gpio_get_level(GPIO_CCD_MODE_ODL);
-
- if (ccd_intr_level) {
- /* Default set the SBU lines to AUX mode on TCPC-AIC */
- ioex_set_level(IOEX_USB_C0_USB_MUX_CNTRL_1, 0);
- ioex_set_level(IOEX_USB_C0_USB_MUX_CNTRL_0, 0);
- } else {
- /* Set the SBU lines to CCD mode on TCPC-AIC */
- ioex_set_level(IOEX_USB_C0_USB_MUX_CNTRL_1, 1);
- ioex_set_level(IOEX_USB_C0_USB_MUX_CNTRL_0, 0);
- }
-}
-DECLARE_DEFERRED(board_connect_c0_sbu_deferred);
-
-void board_connect_c0_sbu(enum gpio_signal s)
-{
- hook_call_deferred(&board_connect_c0_sbu_deferred_data, 0);
-}
-
-static void enable_h1_irq(void)
-{
- gpio_enable_interrupt(GPIO_CCD_MODE_ODL);
-}
-DECLARE_HOOK(HOOK_INIT, enable_h1_irq, HOOK_PRIO_LAST);
-
-void set_charger_system_voltage(void)
-{
- switch (ADL_RVP_BOARD_ID(board_get_version())) {
- case ADLN_LP5_ERB_SKU_BOARD_ID:
- case ADLN_LP5_RVP_SKU_BOARD_ID:
- /*
- * As per b:196184163 configure the PPVAR_SYS depend
- * on AC or AC+battery
- */
- if (extpower_is_present() && battery_is_present()) {
- bq25710_set_min_system_voltage(
- CHARGER_SOLO, battery_get_info()->voltage_min);
- } else {
- bq25710_set_min_system_voltage(
- CHARGER_SOLO, battery_get_info()->voltage_max);
- }
- break;
-
- /* Add additional board SKUs */
- default:
- break;
- }
-}
-DECLARE_HOOK(HOOK_AC_CHANGE, set_charger_system_voltage, HOOK_PRIO_DEFAULT);
-
-static void configure_charger(void)
-{
- switch (ADL_RVP_BOARD_ID(board_get_version())) {
- case ADLN_LP5_ERB_SKU_BOARD_ID:
- case ADLN_LP5_RVP_SKU_BOARD_ID:
- /* charger chip BQ25720 support */
- chg_chips[0].i2c_addr_flags = BQ25710_SMBUS_ADDR1_FLAGS;
- chg_chips[0].drv = &bq25710_drv;
- set_charger_system_voltage();
- break;
-
- /* Add additional board SKUs */
- default:
- break;
- }
-}
-
-static void configure_retimer_usbmux(void)
-{
- struct usb_mux *mux;
-
- switch (ADL_RVP_BOARD_ID(board_get_version())) {
- case ADLN_LP5_ERB_SKU_BOARD_ID:
- case ADLN_LP5_RVP_SKU_BOARD_ID:
- /* enable TUSB1044RNQR redriver on Port0 */
- mux = USB_MUX_POINTER(DT_NODELABEL(usb_mux_chain_0), 0);
- mux->i2c_addr_flags = TUSB1064_I2C_ADDR14_FLAGS;
- mux->driver = &tusb1064_usb_mux_driver;
- mux->hpd_update = tusb1044_hpd_update;
-
-#if defined(HAS_TASK_PD_C1)
- mux = USB_MUX_POINTER(DT_NODELABEL(usb_mux_chain_1), 0);
- mux->driver = NULL;
- mux->hpd_update = NULL;
-#endif
- break;
-
- case ADLP_LP5_T4_RVP_SKU_BOARD_ID:
- /* No retimer on Port-2 */
-#if defined(HAS_TASK_PD_C2)
- mux = USB_MUX_POINTER(DT_NODELABEL(usb_mux_chain_2), 0);
- mux->driver = NULL;
-#endif
- break;
-
- case ADLP_DDR5_RVP_SKU_BOARD_ID:
- /*
- * ADL-P-DDR5 RVP has dual BB-retimers for port0 & port1.
- * Change the default usb mux config on runtime to support
- * dual retimer topology.
- */
- USB_MUX_ENABLE_ALTERNATIVE(usb_mux_alt_chain_0);
-#if defined(HAS_TASK_PD_C1)
- USB_MUX_ENABLE_ALTERNATIVE(usb_mux_alt_chain_1);
-#endif
- break;
-
- /* Add additional board SKUs */
-
- default:
- break;
- }
-}
-
-static void configure_battery_type(void)
-{
- int bat_cell_type;
-
- switch (ADL_RVP_BOARD_ID(board_get_version())) {
- case ADLM_LP4_RVP1_SKU_BOARD_ID:
- case ADLM_LP5_RVP2_SKU_BOARD_ID:
- case ADLM_LP5_RVP3_SKU_BOARD_ID:
- case ADLN_LP5_ERB_SKU_BOARD_ID:
- case ADLN_LP5_RVP_SKU_BOARD_ID:
- /* configure Battery to 2S based */
- bat_cell_type = BATTERY_TYPE(DT_ALIAS(getac_2s));
- break;
- default:
- /* configure Battery to 3S based */
- bat_cell_type = BATTERY_TYPE(DT_ALIAS(getac_3s));
- break;
- }
-
- /* Set the fixed battery type */
- battery_set_fixed_battery_type(bat_cell_type);
-}
-/******************************************************************************/
-/* PWROK signal configuration */
-/*
- * On ADLRVP, SYS_PWROK_EC is an output controlled by EC and uses ALL_SYS_PWRGD
- * as input.
- */
-const struct intel_x86_pwrok_signal pwrok_signal_assert_list[] = {
- {
- .gpio = GPIO_PCH_SYS_PWROK,
- .delay_ms = 3,
- },
-};
-const int pwrok_signal_assert_count = ARRAY_SIZE(pwrok_signal_assert_list);
-
-const struct intel_x86_pwrok_signal pwrok_signal_deassert_list[] = {
- {
- .gpio = GPIO_PCH_SYS_PWROK,
- },
-};
-const int pwrok_signal_deassert_count = ARRAY_SIZE(pwrok_signal_deassert_list);
-
-/*
- * Returns board information (board id[7:0] and Fab id[15:8]) on success
- * -1 on error.
- */
-__override int board_get_version(void)
-{
- /* Cache the board ID */
- static int adlrvp_board_id;
-
- int i;
- int rv = EC_ERROR_UNKNOWN;
-
- int fab_id, board_id, bom_id;
-
- /* Board ID is already read */
- if (adlrvp_board_id)
- return adlrvp_board_id;
-
- /*
- * IOExpander that has Board ID information is on DSW-VAL rail on
- * ADL RVP. On cold boot cycles, DSW-VAL rail is taking time to settle.
- * This loop retries to ensure rail is settled and read is successful
- */
- for (i = 0; i < RVP_VERSION_READ_RETRY_CNT; i++) {
- rv = gpio_pin_get_dt(&bom_id_config[0]);
-
- if (rv >= 0)
- break;
-
- k_msleep(1);
- }
-
- /* retrun -1 if failed to read board id */
- if (rv < 0)
- return -1;
-
- /*
- * BOM ID [2] : IOEX[0]
- * BOM ID [1:0] : IOEX[15:14]
- */
- bom_id = gpio_pin_get_dt(&bom_id_config[0]) << 2;
- bom_id |= gpio_pin_get_dt(&bom_id_config[1]) << 1;
- bom_id |= gpio_pin_get_dt(&bom_id_config[2]);
-
- /*
- * FAB ID [1:0] : IOEX[2:1] + 1
- */
- fab_id = gpio_pin_get_dt(&fab_id_config[0]) << 1;
- fab_id |= gpio_pin_get_dt(&fab_id_config[1]);
- fab_id += 1;
-
- /*
- * BOARD ID[5:0] : IOEX[13:8]
- */
- board_id = gpio_pin_get_dt(&board_id_config[0]) << 5;
- board_id |= gpio_pin_get_dt(&board_id_config[1]) << 4;
- board_id |= gpio_pin_get_dt(&board_id_config[2]) << 3;
- board_id |= gpio_pin_get_dt(&board_id_config[3]) << 2;
- board_id |= gpio_pin_get_dt(&board_id_config[4]) << 1;
- board_id |= gpio_pin_get_dt(&board_id_config[5]);
-
- CPRINTF("BID:0x%x, FID:0x%x, BOM:0x%x", board_id, fab_id, bom_id);
-
- adlrvp_board_id = board_id | (fab_id << 8);
- return adlrvp_board_id;
-}
-
-__override bool board_is_tbt_usb4_port(int port)
-{
- bool tbt_usb4 = true;
-
- switch (ADL_RVP_BOARD_ID(board_get_version())) {
- case ADLN_LP5_ERB_SKU_BOARD_ID:
- case ADLN_LP5_RVP_SKU_BOARD_ID:
- /* No retimer on both ports */
- tbt_usb4 = false;
- break;
-
- case ADLP_LP5_T4_RVP_SKU_BOARD_ID:
- /* No retimer on Port-2 hence no platform level AUX & LSx mux */
-#if defined(HAS_TASK_PD_C2)
- if (port == TYPE_C_PORT_2)
- tbt_usb4 = false;
-#endif
- break;
-
- /* Add additional board SKUs */
- default:
- break;
- }
-
- return tbt_usb4;
-}
-
-static int board_pre_task_peripheral_init(const struct device *unused)
-{
- ARG_UNUSED(unused);
-
- /* Initialized IOEX-0 to access IOEX-GPIOs needed pre-task */
- ioex_init(IOEX_C0_PCA9675);
-
- /* Make sure SBU are routed to CCD or AUX based on CCD status at init */
- board_connect_c0_sbu_deferred();
-
- /* Configure battery type */
- configure_battery_type();
-
- /* Reconfigure board specific charger drivers */
- configure_charger();
-
- /* Configure board specific retimer & mux */
- configure_retimer_usbmux();
-
- return 0;
-}
-SYS_INIT(board_pre_task_peripheral_init, APPLICATION,
- CONFIG_APPLICATION_INIT_PRIORITY);
diff --git a/zephyr/program/intelrvp/include/intel_rvp_board_id.h b/zephyr/program/intelrvp/include/intel_rvp_board_id.h
deleted file mode 100644
index 7825b272e3..0000000000
--- a/zephyr/program/intelrvp/include/intel_rvp_board_id.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#ifndef __INTEL_RVP_BOARD_ID_H
-#define __INTEL_RVP_BOARD_ID_H
-
-#include <zephyr/drivers/gpio.h>
-
-extern const struct gpio_dt_spec bom_id_config[];
-
-extern const struct gpio_dt_spec fab_id_config[];
-
-extern const struct gpio_dt_spec board_id_config[];
-
-#endif /* __INTEL_RVP_BOARD_ID_H */
diff --git a/zephyr/program/intelrvp/include/intelrvp.h b/zephyr/program/intelrvp/include/intelrvp.h
deleted file mode 100644
index 9b6dc98485..0000000000
--- a/zephyr/program/intelrvp/include/intelrvp.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#ifndef __INTELRVP_BOARD_H
-#define __INTELRVP_BOARD_H
-
-#include "compiler.h"
-#include "gpio_signal.h"
-#include "stdbool.h"
-
-/* RVP ID read retry count */
-#define RVP_VERSION_READ_RETRY_CNT 2
-
-#define DC_JACK_MAX_VOLTAGE_MV 19000
-
-FORWARD_DECLARE_ENUM(tcpc_rp_value);
-
-struct tcpc_aic_gpio_config_t {
- /* TCPC interrupt */
- enum gpio_signal tcpc_alert;
- /* PPC interrupt */
- enum gpio_signal ppc_alert;
- /* PPC interrupt handler */
- void (*ppc_intr_handler)(int port);
-};
-extern const struct tcpc_aic_gpio_config_t tcpc_aic_gpios[];
-
-void board_charging_enable(int port, int enable);
-void board_vbus_enable(int port, int enable);
-void board_set_vbus_source_current_limit(int port, enum tcpc_rp_value rp);
-void board_dc_jack_interrupt(enum gpio_signal signal);
-void tcpc_alert_event(enum gpio_signal signal);
-bool is_typec_port(int port);
-#endif /* __INTELRVP_BOARD_H */
diff --git a/zephyr/program/intelrvp/led.md b/zephyr/program/intelrvp/led.md
deleted file mode 100644
index c36bc6b36c..0000000000
--- a/zephyr/program/intelrvp/led.md
+++ /dev/null
@@ -1,44 +0,0 @@
-## LED behavior on Intel RVP
-
-There are two LEDs on RVP, they represent battery and charger status
-respectively.
-
-LED | Description
-------------|------------------------
-CHARGER_LED | Represent charger state
-BATTERY_LED | Represent battery state
-
-LEDs on RVP emit a single color (green). Rather than just using the on and off
-state of the LED, PWM is used to blink the LED to represent multiple states and
-the below table represents the multiple LED states.
-
-LED State | Description
----------------|------------------------------
-LED_ON | Switch On using gpio/pwmduty
-LED_OFF | Switch Off using gpio/pwmduty
-LED_FLASH_SLOW | Flashing with 2 sec period
-LED_FLASH_FAST | Flashing with 250ms period
-
-### LED Behavior : Charger
-
-CHARGER_LED is dedicated to represent Charger status and the below table
-represents the LED states for the Charger.
-
-Charger Status | LED States
----------------------|---------------
-Charging | LED_ON
-Discharging | LED_FLASH_SLOW
-Charging error | LED_FLASH_FAST
-No Charger Connected | LED_OFF
-
-### LED Behavior : Battery
-
-BATTERY_LED is dedicated to represent Battery status and the below table
-represents the LED states for the Battery.
-
-Battery Status | LED States
-----------------------------|---------------
-Battery Low (<10%) | LED_FLASH_FAST
-Battery Normal (10% to 90%) | LED_FLASH_SLOW
-Battery Full (>90%) | LED_ON
-Battery Not Present | LED_OFF
diff --git a/zephyr/program/intelrvp/legacy_ec_pwrseq.conf b/zephyr/program/intelrvp/legacy_ec_pwrseq.conf
deleted file mode 100644
index 331afb637d..0000000000
--- a/zephyr/program/intelrvp/legacy_ec_pwrseq.conf
+++ /dev/null
@@ -1,12 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Legacy EC Power Sequencing Common Config
-CONFIG_PLATFORM_EC_POWERSEQ=y
-CONFIG_PLATFORM_EC_POWERSEQ_HOST_SLEEP=y
-CONFIG_PLATFORM_EC_POWERSEQ_INTEL=y
-CONFIG_PLATFORM_EC_POWERSEQ_RSMRST_DELAY=y
-CONFIG_PLATFORM_EC_POWERSEQ_S0IX=y
-CONFIG_PLATFORM_EC_POWERSEQ_S4=y
-CONFIG_PLATFORM_EC_THROTTLE_AP=y
diff --git a/zephyr/program/intelrvp/mtlrvp/CMakeLists.txt b/zephyr/program/intelrvp/mtlrvp/CMakeLists.txt
deleted file mode 100644
index c6729af776..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/CMakeLists.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-zephyr_library_sources("src/mtlrvp.c")
-zephyr_library_sources("src/board_power.c")
diff --git a/zephyr/program/intelrvp/mtlrvp/ioex.dts b/zephyr/program/intelrvp/mtlrvp/ioex.dts
deleted file mode 100644
index 7d2f4b5820..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/ioex.dts
+++ /dev/null
@@ -1,71 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- /* IOEX_KBD_GPIO IT8801 */
- ioex-kbd-gpio {
- compatible = "cros,ioex-chip";
- i2c-port = <&i2c_charger>;
- i2c-addr = <0x39>;
- drv = "it8801_ioexpander_drv";
- flags = <0x00>;
- #address-cells = <1>;
- #size-cells = <0>;
-
- ioex_it8801_port0: it8801_port@0 {
- compatible = "cros,ioex-port";
- reg = <0>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- };
-
- ioex_it8801_port1: it8801_port@1 {
- compatible = "cros,ioex-port";
- reg = <1>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- };
- };
- /* IOEX_C2_CCGXXF */
- ioex-c2 {
- compatible = "cros,ioex-chip";
- i2c-port = <&typec_aic2>;
- i2c-addr = <0x0B>;
- drv = "ccgxxf_ioexpander_drv";
- flags = <0x00>;
- #address-cells = <1>;
- #size-cells = <0>;
- ioex_c2_port0: ioex-c2-port@0 {
- compatible = "cros,ioex-port";
- reg = <0>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- };
- ioex_c2_port1: ioex-c2-port@1 {
- compatible = "cros,ioex-port";
- reg = <1>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- };
- ioex_c2_port2: ioex-c2-port@2 {
- compatible = "cros,ioex-port";
- reg = <2>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- };
- ioex_c2_port3: ioex-c2-port@3 {
- compatible = "cros,ioex-port";
- reg = <3>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- };
- };
-};
diff --git a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/fan.dts b/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/fan.dts
deleted file mode 100644
index cf85dd3413..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/fan.dts
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- fans {
- compatible = "cros-ec,fans";
-
- fan_0 {
- pwms = <&pwm3 0 PWM_KHZ(30) PWM_POLARITY_NORMAL>;
- rpm_min = <3200>;
- rpm_start = <2200>;
- rpm_max = <6600>;
- tach = <&tach2>;
- pgood_gpio = <&all_sys_pwrgd>;
- enable_gpio = <&gpio_fan_control>;
- };
- };
-};
-
-/* Tachemeter for fan speed measurement */
-&tach2 {
- status = "okay";
- pinctrl-0 = <&ta2_1_in_gp73>; /* TA2 input on GPIO73 */
- pinctrl-names = "default";
- port = <NPCX_TACH_PORT_A>; /* port-A is selected */
- sample-clk = <NPCX_TACH_FREQ_LFCLK>; /* Use LFCLK as sampling clock */
- pulses-per-round = <2>; /* number of pulses per round of encoder */
-};
-
-&pwm3 {
- status = "okay";
- pinctrl-0 = <&pwm3_gp80>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/gpio.dts b/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/gpio.dts
deleted file mode 100644
index 77b4cf0573..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/gpio.dts
+++ /dev/null
@@ -1,366 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &gpio_wp;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- ioex_kbd_intr_n: ioex-kbd-intr-n {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_KB_DISCRETE_INT";
- };
- all_sys_pwrgd: all-sys-pwrgd {
- gpios = <&gpio7 0 GPIO_INPUT>;
- enum-name = "GPIO_PG_EC_ALL_SYS_PWRGD";
- };
- rsmrst_pwrgd: rsmrst-pwrgd {
- gpios = <&gpio6 6 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_PG_EC_RSMRST_ODL";
- };
- pch_slp_s0_n: pch-slp-s0-n-ec {
- gpios = <&gpioa 1 GPIO_INPUT>;
- enum-name = "GPIO_PCH_SLP_S0_L"; /* 1.8V */
- };
- pm-slp-s3-n-ec {
- gpios = <&gpiob 0 GPIO_INPUT>; /* 1.8V */
- enum-name = "GPIO_PCH_SLP_S3_L";
- };
- pm-slp-s4-n-ec {
- gpios = <&gpioa 5 GPIO_INPUT>; /* 1.8V */
- };
- volume-up {
- gpios = <&gpio6 1 (GPIO_INPUT | GPIO_PULL_UP)>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- vol-dn-ec-r {
- gpios = <&gpio0 3 (GPIO_INPUT | GPIO_PULL_UP)>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- smc_lid: smc-lid {
- gpios = <&gpio0 1 (GPIO_INPUT | GPIO_PULL_UP)>;
- enum-name = "GPIO_LID_OPEN";
- };
- smc_onoff_n: smc-onoff-n {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_wp: wp-l {
- gpios = <&gpiod 5 GPIO_INPUT>;
- };
- std_adp_prsnt: std-adp-prsnt {
- gpios = <&gpioc 6 GPIO_INPUT>;
- enum-name = "GPIO_DC_JACK_PRESENT";
- };
- bc_acok: bc-acok-ec {
- gpios = <&gpio0 2 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- usbc_tcpc_alrt_p0: usbc-tcpc-alrt-p0 {
- gpios = <&gpio4 0 GPIO_INPUT>;
- };
- /* NOTE: Netname is USBC_TCPC_PPC_ALRT_P0 */
- usb_c0_c1_tcpc_rst_odl: usb-c0-c1-tcpc-rst-odl {
- gpios = <&gpiod 0 GPIO_ODR_HIGH>;
- };
- /* NOTE: Netname is USBC_TCPC_ALRT_P1 */
- usbc_tcpc_ppc_alrt_p0: usbc-tcpc-ppc-alrt-p0 {
- gpios = <&gpiod 1 GPIO_INPUT>;
- };
- usbc_tcpc_ppc_alrt_p1: usbc-tcpc-ppc-alrt-p1 {
- gpios = <&gpioe 4 GPIO_INPUT>;
- };
- usbc_tcpc_alrt_p2: usbc-tcpc-alrt-p2 {
- gpios = <&gpio9 1 GPIO_INPUT>;
- };
- /* NOTE: Netname is USBC_TCPC_PPC_ALRT_P3 */
- usbc_tcpc_alrt_p3: usbc-tcpc-alrt-p3 {
- gpios = <&gpiof 3 GPIO_INPUT>;
- };
- gpio_ec_pch_wake_odl: pch-wake-n {
- gpios = <&gpio7 4 GPIO_ODR_HIGH>;
- };
- espi-rst-n {
- gpios = <&gpio5 4 GPIO_INPUT>; /* 1.8V */
- };
- plt-rst-l {
- gpios = <&gpioa 2 GPIO_INPUT>; /* 1.8V */
- };
- slate-mode-indication {
- gpios = <&gpio9 4 GPIO_INPUT>; /* 1.8V */
- };
- prochot-ec {
- gpios = <&gpio6 0 GPIO_INPUT>;
- enum-name = "GPIO_CPU_PROCHOT";
- };
- sys_rst_odl: sys-rst-odl-ec {
- gpios = <&gpioc 5 GPIO_ODR_HIGH>;
- enum-name = "GPIO_SYS_RESET_L";
- };
- ec_pch_rsmrst_l: pm-rsmrst-r-n {
- gpios = <&gpioa 4 GPIO_OUTPUT_LOW>; /* 1.8V */
- enum-name = "GPIO_PCH_RSMRST_L";
- };
- pm-pwrbtn-n-ec {
- gpios = <&gpiod 4 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- ec_spi_oe_mecc: ec-spi-oe-mecc-r {
- gpios = <&gpioa 7 GPIO_OUTPUT_LOW>; /* 1.8V */
- };
- en_pp3300_a: ec-ds3-r {
- gpios = <&gpioc 4 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_PP3300_A";
- alias = "GPIO_TEMP_SENSOR_POWER";
- };
- ec_pch_pwrok_od: pch-pwrok-ec-r {
- gpios = <&gpiod 3 GPIO_ODR_LOW>;
- enum-name = "GPIO_PCH_PWROK";
- };
- sys_pwrok_ec: sys-pwrok-ec {
- gpios = <&gpiof 5 GPIO_ODR_LOW>;
- enum-name = "GPIO_PCH_SYS_PWROK";
- };
- bat-det-ec {
- gpios = <&gpio7 6 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- edp-bklt-en {
- gpios = <&gpioe 1 GPIO_OUTPUT_HIGH>;
- };
- /* TODO: move both LEDs to PWM */
- led-1-l-ec {
- gpios = <&gpiob 6 GPIO_OUTPUT_HIGH>;
- };
- led-2-l-ec {
- gpios = <&gpiob 7 GPIO_OUTPUT_HIGH>;
- };
- gpio_fan_control: therm-sen-mecc-r {
- gpios = <&gpioc 0 GPIO_OUTPUT_LOW>;
- };
- /* NOTE: Netname is USBC_TCPC_ALRT_P3 */
- ccd_mode_odl: ccd-mode-odl {
- gpios = <&gpio9 2 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- smb-bs-clk {
- gpios = <&gpiob 3 GPIO_INPUT>;
- };
- smb-bs-data {
- gpios = <&gpiob 2 GPIO_INPUT>;
- };
- usbc-tcpc-i2c-clk-aic1 {
- gpios = <&gpiob 5 GPIO_INPUT>;
- };
- usbc-tcpc-i2c-data-aic1 {
- gpios = <&gpiob 4 GPIO_INPUT>;
- };
- usbc-tcpc-i2c-clk-aic2 {
- gpios = <&gpio9 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- usbc-tcpc-i2c-data-aic2 {
- gpios = <&gpio8 7 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- /* Unused 1.8V pins */
- i3c-1-sda-r {
- gpios = <&gpio5 0 GPIO_INPUT>;
- };
- i3c-1-scl-r {
- gpios = <&gpio5 6 GPIO_INPUT>;
- };
- espi-alert0-n-r {
- gpios = <&gpio5 7 GPIO_INPUT>;
- };
- tp-gpio95 {
- gpios = <&gpio9 5 GPIO_INPUT>;
- };
- cpu-c10-gate {
- gpios = <&gpio9 6 GPIO_INPUT>;
- };
- slp-s0-cs-n-ec {
- gpios = <&gpio9 7 GPIO_INPUT>;
- };
- rtc-rst-n-r {
- gpios = <&gpioa 0 GPIO_INPUT>;
- };
- tp-gpioa6 {
- gpios = <&gpioa 6 GPIO_INPUT>;
- };
- sml1-clk-mecc {
- gpios = <&gpio3 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- sml1-data-mecc {
- gpios = <&gpio3 6 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- sml1-alert {
- gpios = <&gpioc 7 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- smb-pch-alrt {
- gpios = <&gpioa 3 GPIO_INPUT>;
- };
- smb-pch-data {
- gpios = <&gpioc 1 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- smb-pch-clk {
- gpios = <&gpioc 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- /* Unused 3.3V pins */
- cpu-cat-err-mecc {
- gpios = <&gpio3 4 GPIO_INPUT>;
- };
- tp-gpio37 {
- gpios = <&gpio3 7 GPIO_INPUT>;
- };
- tp-vccpdsw-3p3-ec {
- gpios = <&gpio4 5 GPIO_INPUT>;
- };
- mech-pwr-btn-in-odl {
- gpios = <&gpio6 2 GPIO_INPUT>;
- };
- tp-gpio63 {
- gpios = <&gpio6 3 GPIO_INPUT>;
- };
- tp-gpio67 {
- gpios = <&gpio6 7 GPIO_INPUT>;
- };
- tp-gpio72 {
- gpios = <&gpio7 2 GPIO_INPUT>;
- };
- tp-gpio75 {
- gpios = <&gpio7 5 GPIO_INPUT>;
- };
- ec-peci-ec {
- gpios = <&gpio8 1 GPIO_INPUT>;
- };
- tp-gpiob1 {
- gpios = <&gpiob 1 GPIO_INPUT>;
- };
- std-adpt-cntrl-GPIO_r {
- gpios = <&gpioc 3 GPIO_INPUT>;
- };
- ec-packet-mode-ec {
- gpios = <&gpioe 2 GPIO_INPUT>;
- };
- tp-gpioe3 {
- gpios = <&gpioe 3 GPIO_INPUT>;
- };
- boot-stall-r {
- gpios = <&gpioe 5 GPIO_INPUT>;
- };
- tp-gpiof0 {
- gpios = <&gpiof 0 GPIO_INPUT>;
- };
- tp-gpiof1 {
- gpios = <&gpiof 1 GPIO_INPUT>;
- };
- usbc_tcpc_ppc_alrt_p2: usbc-tcpc-ppc-alrt-p2 {
- gpios = <&gpiof 2 GPIO_INPUT>;
- };
- tp-gpiof4 {
- gpios = <&gpiof 4 GPIO_INPUT>;
- };
-
- /* KBD IOEX configuration */
- srtc-rst {
- gpios = <&ioex_it8801_port0 3 GPIO_OUTPUT_LOW>;
- };
- ec-h1-packet-mode {
- gpios = <&ioex_it8801_port0 4 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- rtc-rst {
- gpios = <&ioex_it8801_port0 6 GPIO_OUTPUT_LOW>;
- };
- ec-entering-rw {
- gpios = <&ioex_it8801_port0 7 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- ioex-sys-rst-odl-ec {
- gpios = <&ioex_it8801_port1 0 GPIO_INPUT>;
- };
- ioex-slate-mode-indication {
- gpios = <&ioex_it8801_port1 2 GPIO_INPUT>;
- };
-
- /* USB C IOEX configuration */
- usb_c0_hb_retimer_ls_en: usb-c0-hbr-ls-en {
- gpios = <&ioex_c0 2 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_HBR_LS_EN";
- no-auto-init;
- };
- usb_c0_hb_retimer_rst: usb-c0-hbr-rst {
- gpios = <&ioex_c0 3 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_HBR_RST";
- no-auto-init;
- };
- usb_c1_hb_retimer_ls_en: usb-c1-hbr-ls-en {
- gpios = <&ioex_c1 2 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C1_HBR_LS_EN";
- no-auto-init;
- };
- usb_c1_hb_retimer_rst: usb-c1-hbr-rst {
- gpios = <&ioex_c1 3 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C1_HBR_RST";
- no-auto-init;
- };
- usb-c0-mux-oe-n {
- gpios = <&ioex_c0 4 GPIO_OUTPUT_LOW>;
- no-auto-init;
- };
- usb-c0-mux-sbu-sel-0 {
- gpios = <&ioex_c0 6 GPIO_OUTPUT_HIGH>;
- enum-name = "IOEX_USB_C0_MUX_SBU_SEL_0";
- no-auto-init;
- };
- usb-c0-mux-sbu-sel-1 {
- gpios = <&ioex_c1 4 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_MUX_SBU_SEL_1";
- no-auto-init;
- };
- usb-c0-c1-prochot-n {
- gpios = <&ioex_c1 6 GPIO_INPUT>;
- no-auto-init;
- };
- dg-bssb-sbu-sel {
- gpios = <&ioex_c2_port1 4 GPIO_INPUT>;
- no-auto-init;
- };
- usb_c2_hb_retimer_rst: usb-c2-hbr-rst {
- gpios = <&ioex_c2_port1 1 (GPIO_ODR_LOW | \
- GPIO_VOLTAGE_1P8)>;
- enum-name = "IOEX_USB_C2_HBR_RST";
- no-auto-init;
- };
- usb_c2_hb_retimer_ls_en: usb-c2-hbr-ls-en {
- gpios = <&ioex_c2_port2 0 (GPIO_ODR_LOW | \
- GPIO_VOLTAGE_1P8)>;
- enum-name = "IOEX_USB_C2_HBR_LS_EN";
- no-auto-init;
- };
- usb_c3_hb_retimer_rst: usb-c3-hbr-rst {
- gpios = <&ioex_c2_port1 3 (GPIO_ODR_LOW | \
- GPIO_VOLTAGE_1P8)>;
- enum-name = "IOEX_USB_C3_HBR_RST";
- no-auto-init;
- };
- usb_c3_hb_retimer_ls_en: usb-c3-hbr-ls-en {
- gpios = <&ioex_c2_port3 3 (GPIO_ODR_LOW | \
- GPIO_VOLTAGE_1P8)>;
- enum-name = "IOEX_USB_C3_HBR_LS_EN";
- no-auto-init;
- };
- usb-c2-c3-prochot-n {
- gpios = <&ioex_c2_port0 0 GPIO_INPUT>;
- no-auto-init;
- };
- /* unimplemented GPIOs */
- en-pp5000 {
- enum-name = "GPIO_EN_PP5000";
- };
- };
-};
diff --git a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/interrupts.dts b/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/interrupts.dts
deleted file mode 100644
index ad928fd593..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/interrupts.dts
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-/ {
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_lid_open: lid_open {
- irq-pin = <&smc_lid>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_power_button: power_button {
- irq-pin = <&smc_onoff_n>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_ac_present: ac_present {
- irq-pin = <&bc_acok>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_ioex_kbd_intr_n: ioex_kbd_intr_n {
- irq-pin = <&ioex_kbd_intr_n>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "io_expander_it8801_interrupt";
- };
- int_usb_c0_c1_tcpc: usb_c0_tcpc {
- irq-pin = <&usbc_tcpc_alrt_p0>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c0_ppc: usb_c0_ppc {
- irq-pin = <&usbc_tcpc_ppc_alrt_p0>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c1_ppc: usb_c1_ppc {
- irq-pin = <&usbc_tcpc_ppc_alrt_p1>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c2_tcpc: usb_c2_tcpc {
- irq-pin = <&usbc_tcpc_alrt_p2>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c3_tcpc: usb_c3_tcpc {
- irq-pin = <&usbc_tcpc_alrt_p3>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_ccd_mode: ccd_mode {
- irq-pin = <&ccd_mode_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "board_connect_c0_sbu";
- };
- int_dc_jack_present: dc_jack_present {
- irq-pin = <&std_adp_prsnt>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "board_dc_jack_interrupt";
- };
- };
-};
diff --git a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/keyboard.dts b/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/keyboard.dts
deleted file mode 100644
index be0a570e95..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/keyboard.dts
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- cros-keyscan {
- compatible = "cros-ec,keyscan";
-
- output-settle = <35>;
- debounce-down = <5000>;
- debounce-up = <40000>;
- poll-timeout = <100000>;
-
- actual-key-mask = <
- 0x14 /* C0 */
- 0xff /* C1 */
- 0xff /* C2 */
- 0xff /* C3 */
- 0xff /* C4 */
- 0xf5 /* C5 */
- 0xff /* C6 */
- 0xa4 /* C7 */
- 0xff /* C8 */
- 0xfe /* C9 */
- 0x55 /* C10 */
- 0xfa /* C11 */
- 0xca /* C12 */
- >;
- };
-};
-
-&cros_kb_raw {
- status = "okay";
- /* No KSO2 (it's inverted and implemented by GPIO) */
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- >;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/mtlrvp_npcx.dts b/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/mtlrvp_npcx.dts
deleted file mode 100644
index 25ad865dd7..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/mtlrvp_npcx.dts
+++ /dev/null
@@ -1,272 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
- #include <dt-bindings/usb_pd_tcpm.h>
-
-/ {
- chosen {
- cros,rtc = &mtc;
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_ac_present
- &int_lid_open
- &int_power_button
- >;
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_charger: charger {
- i2c-port = <&i2c7_0>;
- enum-names = "I2C_PORT_CHARGER",
- "I2C_PORT_BATTERY",
- "I2C_PORT_EEPROM",
- "I2C_PORT_KB_DISCRETE",
- "I2C_PORT_PORT80";
- };
- typec_aic1: typec-aic1{
- i2c-port = <&i2c0_0>;
- enum-names = "I2C_PORT_TYPEC_AIC_1";
- };
- typec_aic2: typec-aic2{
- i2c-port = <&i2c1_0>;
- enum-names = "I2C_PORT_TYPEC_AIC_2";
- };
- };
-
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_ambient: ambient {
- enum-name = "ADC_TEMP_SENSOR_1";
- io-channels = <&adc0 3>;
- };
- adc_ddr: ddr {
- enum-name = "ADC_TEMP_SENSOR_2";
- io-channels = <&adc0 4>;
- };
- adc_skin: skin {
- enum-name = "ADC_TEMP_SENSOR_3";
- io-channels = <&adc0 2>;
- };
- adc_vr: vr {
- enum-name = "ADC_TEMP_SENSOR_4";
- io-channels = <&adc0 1>;
- };
- };
-};
-
-/* charger */
-&i2c7_0 {
- label = "I2C_CHARGER";
- status = "okay";
- clock-frequency = <I2C_BITRATE_STANDARD>;
- pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>;
- pinctrl-names = "default";
-
- pca95xx: pca95xx@22 {
- compatible = "nxp,pca95xx";
- label = "PCA95XX";
- reg = <0x22>;
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <16>;
- };
-
- rvp_board_id: rvp-board-id {
- compatible = "intel,rvp-board-id";
-
- /*
- * BOM ID [2] : IOEX[0]
- * BOM ID [1:0] : IOEX[15:14]
- */
- bom-gpios = <&pca95xx 0 0>, <&pca95xx 15 0>, <&pca95xx 14 0>;
-
- /*
- * FAB ID [1:0] : IOEX[2:1]
- */
- fab-gpios = <&pca95xx 2 0>, <&pca95xx 1 0>;
-
- /*
- * BOARD ID[5:0] : IOEX[13:8]
- */
- board-gpios = <&pca95xx 13 0>, <&pca95xx 12 0>, <&pca95xx 11 0>,
- <&pca95xx 10 0>, <&pca95xx 9 0>, <&pca95xx 8 0>;
- };
-
- kb_discrete: ite-it8801@39 {
- compatible = "ite,it8801";
- reg = <0x39>;
- };
-
- max695x@38 {
- compatible = "maxim,max695x";
- reg = <0x38>;
- };
-
- charger: isl9241@9 {
- compatible = "intersil,isl9241";
- status = "okay";
- reg = <0x9>;
- };
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-};
-
-/* host interface */
-&espi0 {
- status = "okay";
- pinctrl-0 = <&espi_lpc_gp46_47_51_52_53_54_55_57>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl7 {
- status = "okay";
-};
-
-/* typec_aic1 */
-&i2c0_0 {
- label = "I2C_USB_C0_C1_TCPC";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-
- tcpc_port0: nct38xx@73 {
- compatible = "nuvoton,nct38xx";
- reg = <0x73>;
- gpio-dev = <&nct38xx_c0>;
- tcpc-flags = <(
- TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_NO_DEBUG_ACC_CONTROL)>;
- };
-
- nct38xx_c0: nct38xx_c0@73 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "nuvoton,nct38xx-gpio";
- reg = <0x73>;
- label = "NCT38XX_C0";
-
- ioex_c0: gpio@0 {
- compatible = "nuvoton,nct38xx-gpio-port";
- reg = <0x0>;
- label = "NCT38XX_C0_GPIO0";
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- pin_mask = <0xdc>;
- pinmux_mask = <0xff>;
- };
- };
-
- tcpc_port1: nct38xx@77 {
- compatible = "nuvoton,nct38xx";
- reg = <0x77>;
- gpio-dev = <&nct38xx_c1>;
- tcpc-flags = <(TCPC_FLAGS_TCPCI_REV2_0)>;
- };
-
- nct38xx_c1: nct38xx_c1@77 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "nuvoton,nct38xx-gpio";
- reg = <0x77>;
- label = "NCT38XX_C1";
-
- ioex_c1: gpio@0 {
- compatible = "nuvoton,nct38xx-gpio-port";
- reg = <0x0>;
- label = "NCT38XX_C1_GPIO0";
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- pin_mask = <0xdc>;
- pinmux_mask = <0xff>;
- };
- };
-
- nct38xx_alert_0 {
- compatible = "nuvoton,nct38xx-gpio-alert";
- irq-gpios = <&gpio4 0 GPIO_ACTIVE_LOW>;
- nct38xx-dev = <&nct38xx_c0 &nct38xx_c1>;
- label = "NCT38XX_ALERT_1";
- };
-
- usb_c0_hb_retimer: jhl8040r-c0@56 {
- compatible = "intel,jhl8040r";
- reg = <0x56>;
- reset-pin = <&usb_c0_hb_retimer_rst>;
- ls-en-pin = <&usb_c0_hb_retimer_ls_en>;
- };
-
- usb_c1_hb_retimer: jhl8040r-c1@57 {
- compatible = "intel,jhl8040r";
- reg = <0x57>;
- reset-pin = <&usb_c1_hb_retimer_rst>;
- ls-en-pin = <&usb_c1_hb_retimer_ls_en>;
- };
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-/* typec_aic2 */
-&i2c1_0 {
- label = "I2C_USB_C2_C3_TCPC";
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-
- tcpc_port2: ccgxxf@b {
- compatible = "cypress,ccgxxf";
- reg = <0xb>;
- };
-
- tcpc_port3: ccgxxf@1b {
- compatible = "cypress,ccgxxf";
- reg = <0x1b>;
- };
-
- usb_c2_hb_retimer: jhl8040r-c2@58 {
- compatible = "intel,jhl8040r";
- reg = <0x58>;
- reset-pin = <&usb_c2_hb_retimer_rst>;
- ls-en-pin = <&usb_c2_hb_retimer_ls_en>;
- };
-
- usb_c3_hb_retimer: jhl8040r-c3@59 {
- compatible = "intel,jhl8040r";
- reg = <0x59>;
- reset-pin = <&usb_c3_hb_retimer_rst>;
- ls-en-pin = <&usb_c3_hb_retimer_ls_en>;
- };
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_chan1_gp44
- &adc0_chan2_gp43
- &adc0_chan3_gp42
- &adc0_chan4_gp41>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/mtlrvp_npcx_power_signals.dts b/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/mtlrvp_npcx_power_signals.dts
deleted file mode 100644
index 3c270d296f..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/mtlrvp_npcx_power_signals.dts
+++ /dev/null
@@ -1,125 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- chosen {
- intel-ap-pwrseq,espi = &espi0;
- };
-
- common-pwrseq {
- compatible = "intel,ap-pwrseq";
-
- sys-pwrok-delay = <3>;
- all-sys-pwrgd-timeout = <20>;
- sys-reset-delay = <60>;
- };
-
- pwr-en-pp3300-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP3300_S5 enable output to LS";
- enum-name = "PWR_EN_PP3300_A";
- gpios = <&gpioc 4 0>;
- output;
- };
- pwr-pg-ec-rsmrst-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST power good from regulator";
- enum-name = "PWR_RSMRST";
- gpios = <&gpio6 6 0>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-pch-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST output to PCH";
- enum-name = "PWR_EC_PCH_RSMRST";
- gpios = <&gpioa 4 0>;
- output;
- };
- pwr-slp-s0-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S0_L input from PCH";
- enum-name = "PWR_SLP_S0";
- gpios = <&gpioa 1 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-pch-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PCH_PWROK output to PCH";
- enum-name = "PWR_PCH_PWROK";
- gpios = <&gpiod 3 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-ec-pch-sys-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_PWROK output to PCH";
- enum-name = "PWR_EC_PCH_SYS_PWROK";
- gpios = <&gpiof 5 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-sys-rst-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_RESET# output to PCH";
- enum-name = "PWR_SYS_RST";
- gpios = <&gpioc 5 (GPIO_ACTIVE_LOW|GPIO_OPEN_DRAIN)>;
- output;
- };
- pwr-slp-s3 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S3 virtual wire input from PCH";
- enum-name = "PWR_SLP_S3";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S3";
- vw-invert;
- };
- pwr-slp-s4 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S4 virtual wire input from PCH";
- enum-name = "PWR_SLP_S4";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S4";
- vw-invert;
- };
- pwr-slp-s5 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S5 virtual wire input from PCH";
- enum-name = "PWR_SLP_S5";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S5";
- vw-invert;
- };
- pwr-all-sys-pwrgd {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "all power good";
- enum-name = "PWR_ALL_SYS_PWRGD";
- gpios = <&gpio7 0 0>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
-};
-
-/*
- * Because the power signals directly reference the GPIOs,
- * the correspinding named-gpios need to have no-auto-init set.
- */
-&en_pp3300_a {
- no-auto-init;
-};
-&rsmrst_pwrgd {
- no-auto-init;
-};
-&ec_pch_rsmrst_l {
- no-auto-init;
-};
-&pch_slp_s0_n {
- no-auto-init;
-};
-&ec_pch_pwrok_od {
- no-auto-init;
-};
-&sys_pwrok_ec {
- no-auto-init;
-};
-&sys_rst_odl {
- no-auto-init;
-};
-&all_sys_pwrgd {
- no-auto-init;
-};
diff --git a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/prj.conf b/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/prj.conf
deleted file mode 100644
index e4b25b48e7..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/mtlrvpp_npcx/prj.conf
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_BOARD_MTLRVP_NPCX=y
-CONFIG_CROS_SYSTEM_NPCX=y
-CONFIG_SYSCON=y
-
-# RTC
-CONFIG_PLATFORM_EC_RTC=y
diff --git a/zephyr/program/intelrvp/mtlrvp/prj.conf b/zephyr/program/intelrvp/mtlrvp/prj.conf
deleted file mode 100644
index 1270712f99..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/prj.conf
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Power Sequencing
-CONFIG_AP_X86_INTEL_MTL=y
-CONFIG_X86_NON_DSX_PWRSEQ_MTL=y
-CONFIG_PLATFORM_EC_POWERSEQ_SLP_S3_L_OVERRIDE=n
-CONFIG_PLATFORM_EC_POWERSEQ_PP5000_CONTROL=n
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_TYPE_NO_AUTO_DETECT=y
-CONFIG_PLATFORM_EC_BATTERY_V2=y
-
-# CBI
-CONFIG_EEPROM=y
-CONFIG_PLATFORM_EC_BYPASS_CBI_EEPROM_WP_CHECK=y
-CONFIG_PLATFORM_EC_SYSTEM_UNLOCKED=y
-
-# Disable BC1.2
-CONFIG_PLATFORM_EC_USB_CHARGER=n
-
-# Charger
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC=y
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR=5
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR_AC=10
-CONFIG_PLATFORM_EC_CHARGE_RAMP_HW=n
-CONFIG_PLATFORM_EC_CHARGER_ISL9241=y
-CONFIG_PLATFORM_EC_DEDICATED_CHARGE_PORT=y
-
-# IOEX
-CONFIG_PLATFORM_EC_IOEX_CCGXXF=y
-CONFIG_PLATFORM_EC_IOEX_IT8801=y
-
-#Keyboard from I/O expander
-CONFIG_CROS_KB_RAW_NPCX=n
-
-# Temperature sensors
-CONFIG_PLATFORM_EC_TEMP_SENSOR_POWER=y
-
-# USB CONFIG
-CONFIG_PLATFORM_EC_USB_DRP_ACC_TRYSRC=y
-CONFIG_PLATFORM_EC_USB_MUX_VIRTUAL=y
-CONFIG_PLATFORM_EC_USB_MUX_TASK=y
-CONFIG_PLATFORM_EC_USBC_PPC_SN5S330=y
-CONFIG_PLATFORM_EC_USBC_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_DISCHARGE_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_DISCHARGE_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_TCPC_LOW_POWER=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_TCPCI=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_CCGXXF=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_NCT38XX=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_MUX=y
-CONFIG_PLATFORM_EC_USB_PD_TRY_SRC=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_SBU=y
-CONFIG_PLATFORM_EC_USB_PD_DUAL_ROLE_AUTO_TOGGLE=y
-CONFIG_PLATFORM_EC_USBC_RETIMER_INTEL_HB=y
-CONFIG_PLATFORM_EC_USBC_VCONN=y
-CONFIG_PLATFORM_EC_USB_PD_TBT_COMPAT_MODE=y
-CONFIG_PLATFORM_EC_USB_PD_USB32_DRD=y
-CONFIG_PLATFORM_EC_USB_PD_USB4=y
-CONFIG_PLATFORM_EC_USB_PD_INT_SHARED=y
-CONFIG_PLATFORM_EC_USB_PD_PORT_0_SHARED=y
-CONFIG_PLATFORM_EC_USB_PD_PORT_1_SHARED=y
diff --git a/zephyr/program/intelrvp/mtlrvp/src/board_power.c b/zephyr/program/intelrvp/mtlrvp/src/board_power.c
deleted file mode 100644
index e35450b8b5..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/src/board_power.c
+++ /dev/null
@@ -1,61 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "gpio/gpio.h"
-#include "gpio_signal.h"
-
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-#include <zephyr/sys/atomic.h>
-
-#include <ap_power/ap_power.h>
-#include <ap_power/ap_power_events.h>
-#include <ap_power/ap_power_interface.h>
-#include <ap_power_override_functions.h>
-#include <power_signals.h>
-#include <x86_power_signals.h>
-
-LOG_MODULE_DECLARE(ap_pwrseq, LOG_LEVEL_INF);
-
-#if CONFIG_X86_NON_DSX_PWRSEQ_MTL
-#define X86_NON_DSX_MTL_FORCE_SHUTDOWN_TO_MS 50
-
-void board_ap_power_force_shutdown(void)
-{
- int timeout_ms = X86_NON_DSX_MTL_FORCE_SHUTDOWN_TO_MS;
-
- /* Turn off PCH_RMSRST to meet tPCH12 */
- power_signal_set(PWR_EC_PCH_RSMRST, 0);
-
- /* Turn off PRIM load switch. */
- power_signal_set(PWR_EN_PP3300_A, 0);
-
- /* Wait RSMRST to be off. */
- while (power_signal_get(PWR_RSMRST) && (timeout_ms > 0)) {
- k_msleep(1);
- timeout_ms--;
- };
-
- if (power_signal_get(PWR_RSMRST))
- LOG_WRN("RSMRST_ODL didn't go low! Assuming G3.");
-}
-
-void board_ap_power_action_g3_s5(void)
-{
- /* Turn on the PP3300_PRIM rail. */
- power_signal_set(PWR_EN_PP3300_A, 1);
-
- if (!power_wait_signals_timeout(
- IN_PGOOD_ALL_CORE,
- AP_PWRSEQ_DT_VALUE(wait_signal_timeout))) {
- ap_power_ev_send_callbacks(AP_POWER_PRE_INIT);
- }
-}
-
-bool board_ap_power_check_power_rails_enabled(void)
-{
- return power_signal_get(PWR_EN_PP3300_A);
-}
-#endif /* CONFIG_X86_NON_DSX_PWRSEQ_MTL */
diff --git a/zephyr/program/intelrvp/mtlrvp/src/mtlrvp.c b/zephyr/program/intelrvp/mtlrvp/src/mtlrvp.c
deleted file mode 100644
index e73995337a..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/src/mtlrvp.c
+++ /dev/null
@@ -1,334 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "battery.h"
-#include "battery_fuel_gauge.h"
-#include "charger.h"
-#include "common.h"
-#include "console.h"
-#include "driver/retimer/bb_retimer_public.h"
-#include "driver/tcpm/ccgxxf.h"
-#include "driver/tcpm/nct38xx.h"
-#include "driver/tcpm/tcpci.h"
-#include "extpower.h"
-#include "gpio.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "i2c.h"
-#include "intel_rvp_board_id.h"
-#include "intelrvp.h"
-#include "ioexpander.h"
-#include "isl9241.h"
-#include "keyboard_raw.h"
-#include "power/meteorlake.h"
-#include "sn5s330.h"
-#include "system.h"
-#include "task.h"
-#include "tusb1064.h"
-#include "usb_mux.h"
-#include "usbc_ppc.h"
-#include "util.h"
-
-#define CPRINTF(format, args...) cprintf(CC_COMMAND, format, ##args)
-#define CPRINTS(format, args...) cprints(CC_COMMAND, format, ##args)
-
-/*******************************************************************/
-/* USB-C Configuration Start */
-
-/* PPC */
-#define I2C_ADDR_SN5S330_P0 0x40
-#define I2C_ADDR_SN5S330_P1 0x41
-
-/* IOEX ports */
-enum ioex_port {
- IOEX_KBD = 0,
-#if defined(HAS_TASK_PD_C2)
- IOEX_C2_CCGXXF,
-#endif
- IOEX_COUNT
-};
-
-/* USB-C ports */
-enum usbc_port {
- USBC_PORT_C0 = 0,
- USBC_PORT_C1,
-#if defined(HAS_TASK_PD_C2)
- USBC_PORT_C2,
- USBC_PORT_C3,
-#endif
- USBC_PORT_COUNT
-};
-BUILD_ASSERT(USBC_PORT_COUNT == CONFIG_USB_PD_PORT_MAX_COUNT);
-
-/* USB-C PPC configuration */
-struct ppc_config_t ppc_chips[] = {
- [USBC_PORT_C0] = {
- .i2c_port = I2C_PORT_TYPEC_AIC_1,
- .i2c_addr_flags = I2C_ADDR_SN5S330_P0,
- .drv = &sn5s330_drv,
- },
- [USBC_PORT_C1] = {
- .i2c_port = I2C_PORT_TYPEC_AIC_1,
- .i2c_addr_flags = I2C_ADDR_SN5S330_P1,
- .drv = &sn5s330_drv,
- },
-};
-unsigned int ppc_cnt = ARRAY_SIZE(ppc_chips);
-
-/* TCPC AIC GPIO Configuration */
-const struct tcpc_aic_gpio_config_t tcpc_aic_gpios[] = {
- [USBC_PORT_C0] = {
- .tcpc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_alrt_p0)),
- .ppc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_ppc_alrt_p0)),
- .ppc_intr_handler = sn5s330_interrupt,
- },
- [USBC_PORT_C1] = {
- .tcpc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_alrt_p0)),
- .ppc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_ppc_alrt_p1)),
- .ppc_intr_handler = sn5s330_interrupt,
- },
-#if defined(HAS_TASK_PD_C2)
- [USBC_PORT_C2] = {
- .tcpc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_alrt_p2)),
- /* No PPC alert for CCGXXF */
- },
- [USBC_PORT_C3] = {
- .tcpc_alert = GPIO_SIGNAL(DT_NODELABEL(usbc_tcpc_alrt_p3)),
- /* No PPC alert for CCGXXF */
- },
-#endif
-};
-BUILD_ASSERT(ARRAY_SIZE(tcpc_aic_gpios) == CONFIG_USB_PD_PORT_MAX_COUNT);
-
-static void board_connect_c0_sbu_deferred(void)
-{
- enum pd_power_role prole;
-
- if (gpio_get_level(GPIO_CCD_MODE_ODL)) {
- CPRINTS("Default AUX line connected");
- /* Default set the SBU lines to AUX mode */
- ioex_set_level(IOEX_USB_C0_MUX_SBU_SEL_1, 0);
- ioex_set_level(IOEX_USB_C0_MUX_SBU_SEL_0, 1);
- } else {
- prole = pd_get_power_role(USBC_PORT_C0);
- CPRINTS("%s debug device is attached",
- prole == PD_ROLE_SINK ? "Servo V4C/SuzyQ" : "Intel");
-
- if (prole == PD_ROLE_SINK) {
- /* Set the SBU lines to Google CCD mode */
- ioex_set_level(IOEX_USB_C0_MUX_SBU_SEL_1, 1);
- ioex_set_level(IOEX_USB_C0_MUX_SBU_SEL_0, 1);
- } else {
- /* Set the SBU lines to Intel CCD mode */
- ioex_set_level(IOEX_USB_C0_MUX_SBU_SEL_1, 0);
- ioex_set_level(IOEX_USB_C0_MUX_SBU_SEL_0, 0);
- }
- }
-}
-DECLARE_DEFERRED(board_connect_c0_sbu_deferred);
-
-void board_overcurrent_event(int port, int is_overcurrented)
-{
- /*
- * TODO: Meteorlake PCH does not use Physical GPIO for over current
- * error, hence Send 'Over Current Virtual Wire' eSPI signal.
- */
-}
-
-void board_reset_pd_mcu(void)
-{
- /* Reset NCT38XX TCPC */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(usb_c0_c1_tcpc_rst_odl), 0);
- msleep(NCT38XX_RESET_HOLD_DELAY_MS);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(usb_c0_c1_tcpc_rst_odl), 1);
- nct38xx_reset_notify(0);
- nct38xx_reset_notify(1);
-
- if (NCT3807_RESET_POST_DELAY_MS != 0) {
- msleep(NCT3807_RESET_POST_DELAY_MS);
- }
-
- /* NCT38XX chip uses gpio ioex */
- gpio_reset_port(DEVICE_DT_GET(DT_NODELABEL(ioex_c0)));
- gpio_reset_port(DEVICE_DT_GET(DT_NODELABEL(ioex_c1)));
-
-#if defined(HAS_TASK_PD_C2)
- /* Reset the ccgxxf ports only resetting 1 is required */
- ccgxxf_reset(USBC_PORT_C2);
-
- /* CCGXXF has ioex on port 2 */
- ioex_init(IOEX_C2_CCGXXF);
-#endif
-}
-
-void board_connect_c0_sbu(enum gpio_signal signal)
-{
- hook_call_deferred(&board_connect_c0_sbu_deferred_data, 0);
-}
-
-/******************************************************************************/
-/* KSO mapping for discrete keyboard */
-__override const uint8_t it8801_kso_mapping[] = {
- 0, 1, 20, 3, 4, 5, 6, 11, 12, 13, 14, 15, 16,
-};
-BUILD_ASSERT(ARRAY_SIZE(it8801_kso_mapping) == KEYBOARD_COLS_MAX);
-
-/* PWROK signal configuration */
-/*
- * On MTLRVP, SYS_PWROK_EC is an output controlled by EC and uses ALL_SYS_PWRGD
- * as input.
- */
-const struct intel_x86_pwrok_signal pwrok_signal_assert_list[] = {
- {
- .gpio = GPIO_PCH_SYS_PWROK,
- .delay_ms = 3,
- },
-};
-const int pwrok_signal_assert_count = ARRAY_SIZE(pwrok_signal_assert_list);
-
-const struct intel_x86_pwrok_signal pwrok_signal_deassert_list[] = {
- {
- .gpio = GPIO_PCH_SYS_PWROK,
- },
-};
-const int pwrok_signal_deassert_count = ARRAY_SIZE(pwrok_signal_deassert_list);
-
-/*
- * Returns board information (board id[7:0] and Fab id[15:8]) on success
- * -1 on error.
- */
-__override int board_get_version(void)
-{
- /* Cache the MTLRVP board ID */
- static int mtlrvp_board_id;
-
- int i;
- int rv = EC_ERROR_UNKNOWN;
- int fab_id, board_id, bom_id;
-
- /* Board ID is already read */
- if (mtlrvp_board_id)
- return mtlrvp_board_id;
-
- /*
- * IOExpander that has Board ID information is on DSW-VAL rail on
- * ADL RVP. On cold boot cycles, DSW-VAL rail is taking time to settle.
- * This loop retries to ensure rail is settled and read is successful
- */
- for (i = 0; i < RVP_VERSION_READ_RETRY_CNT; i++) {
- rv = gpio_pin_get_dt(&bom_id_config[0]);
-
- if (rv >= 0)
- break;
-
- k_msleep(1);
- }
-
- /* return -1 if failed to read board id */
- if (rv)
- return -1;
-
- /*
- * BOM ID [2] : IOEX[0]
- * BOM ID [1:0] : IOEX[15:14]
- */
- bom_id = gpio_pin_get_dt(&bom_id_config[0]) << 2;
- bom_id |= gpio_pin_get_dt(&bom_id_config[1]) << 1;
- bom_id |= gpio_pin_get_dt(&bom_id_config[2]);
- /*
- * FAB ID [1:0] : IOEX[2:1] + 1
- */
- fab_id = gpio_pin_get_dt(&fab_id_config[0]) << 1;
- fab_id |= gpio_pin_get_dt(&fab_id_config[1]);
- fab_id += 1;
-
- /*
- * BOARD ID[5:0] : IOEX[13:8]
- */
- board_id = gpio_pin_get_dt(&board_id_config[0]) << 5;
- board_id |= gpio_pin_get_dt(&board_id_config[1]) << 4;
- board_id |= gpio_pin_get_dt(&board_id_config[2]) << 3;
- board_id |= gpio_pin_get_dt(&board_id_config[3]) << 2;
- board_id |= gpio_pin_get_dt(&board_id_config[4]) << 1;
- board_id |= gpio_pin_get_dt(&board_id_config[5]);
-
- CPRINTF("BID:0x%x, FID:0x%x, BOM:0x%x", board_id, fab_id, bom_id);
-
- mtlrvp_board_id = board_id | (fab_id << 8);
- return mtlrvp_board_id;
-}
-
-static void board_int_init(void)
-{
- /* Enable PPC interrupts. */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_ppc));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c1_ppc));
-
- /* Enable TCPC interrupts. */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_c1_tcpc));
-#if defined(HAS_TASK_PD_C2)
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c2_tcpc));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c3_tcpc));
-#endif
-
- /* Enable CCD Mode interrupt */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_ccd_mode));
-
- /* Enable DC jack interrupt */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_dc_jack_present));
-}
-
-static int board_pre_task_peripheral_init(const struct device *unused)
-{
- ARG_UNUSED(unused);
-
- /* Only reset tcpc/pd if not sysjump */
- if (!system_jumped_late()) {
- /* Initialize tcpc and all ioex */
- board_reset_pd_mcu();
- }
-
- /* Initialize all interrupts */
- board_int_init();
-
- /* Make sure SBU are routed to CCD or AUX based on CCD status at init */
- board_connect_c0_sbu_deferred();
-
- return 0;
-}
-SYS_INIT(board_pre_task_peripheral_init, APPLICATION,
- CONFIG_APPLICATION_INIT_PRIORITY);
-
-/*
- * Since MTLRVP has both PPC and TCPC ports override to check if the port
- * is a PPC or non PPC port
- */
-__override bool pd_check_vbus_level(int port, enum vbus_level level)
-{
- if (!board_port_has_ppc(port)) {
- return tcpm_check_vbus_level(port, level);
- } else if (level == VBUS_PRESENT) {
- return pd_snk_is_vbus_provided(port);
- } else {
- return !pd_snk_is_vbus_provided(port);
- }
-}
-
-__override bool board_port_has_ppc(int port)
-{
- bool ppc_port;
-
- switch (port) {
- case USBC_PORT_C0:
- case USBC_PORT_C1:
- ppc_port = true;
- break;
- default:
- ppc_port = false;
- break;
- }
-
- return ppc_port;
-}
diff --git a/zephyr/program/intelrvp/mtlrvp/usbc.dts b/zephyr/program/intelrvp/mtlrvp/usbc.dts
deleted file mode 100644
index e4f3bdc465..0000000000
--- a/zephyr/program/intelrvp/mtlrvp/usbc.dts
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- usbc_port0: port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- tcpc = <&tcpc_port0>;
- chg = <&charger>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c0_hb_retimer
- &virtual_mux_c0>;
- };
- };
- port0-muxes {
- virtual_mux_c0: virtual-mux-c0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- usbc_port1: port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- tcpc = <&tcpc_port1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c1_hb_retimer
- &virtual_mux_c1>;
- };
- };
- port1-muxes {
- virtual_mux_c1: virtual-mux-c1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- usbc_port2: port2@2 {
- compatible = "named-usbc-port";
- reg = <2>;
- tcpc = <&tcpc_port2>;
- usb-mux-chain-2 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c2_hb_retimer
- &virtual_mux_c2>;
- };
- };
- port2-muxes {
- virtual_mux_c2: virtual-mux-c2 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- usbc_port3: port3@3 {
- compatible = "named-usbc-port";
- reg = <3>;
- tcpc = <&tcpc_port3>;
- usb-mux-chain-3 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c3_hb_retimer
- &virtual_mux_c3>;
- };
- };
- port3-muxes {
- virtual_mux_c3: virtual-mux-c3 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-};
diff --git a/zephyr/program/intelrvp/prj.conf b/zephyr/program/intelrvp/prj.conf
deleted file mode 100644
index 9ca19c5071..0000000000
--- a/zephyr/program/intelrvp/prj.conf
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-
-CONFIG_CROS_EC=y
-CONFIG_LTO=y
-CONFIG_PLATFORM_EC=y
-CONFIG_PLATFORM_EC_POWER_BUTTON=y
-CONFIG_PLATFORM_EC_LID_SWITCH=y
-CONFIG_PLATFORM_EC_EXTPOWER_GPIO=y
-CONFIG_SHIMMED_TASKS=y
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_CUT_OFF=y
-CONFIG_PLATFORM_EC_BATTERY_FUEL_GAUGE=y
-CONFIG_PLATFORM_EC_BATTERY_PRESENT_GPIO=y
-CONFIG_PLATFORM_EC_BATTERY_REVIVE_DISCONNECT=y
-CONFIG_PLATFORM_EC_BATTERY_SMART=y
-CONFIG_PLATFORM_EC_BATTERY_TYPE_NO_AUTO_DETECT=y
-CONFIG_PLATFORM_EC_CHARGER_MIN_POWER_MW_FOR_POWER_ON_WITH_BATT=15000
-CONFIG_PLATFORM_EC_CHARGER_MIN_POWER_MW_FOR_POWER_ON=15001
-CONFIG_PLATFORM_EC_CHARGER_MIN_INPUT_CURRENT_LIMIT=512
-
-#Power Sequencing
-CONFIG_PLATFORM_EC_BOARD_RESET_AFTER_POWER_ON=y
-
-# Host command
-CONFIG_PLATFORM_EC_HOSTCMD_AP_RESET=y
-CONFIG_PLATFORM_EC_PORT80=y
-
-# USB-C and PD
-CONFIG_PLATFORM_EC_USB_VID=0x18d1
-CONFIG_PLATFORM_EC_USB_PID=0x8086
-CONFIG_PLATFORM_EC_USB_PD_REQUIRE_AP_MODE_ENTRY=y
-
-# eSPI
-CONFIG_ESPI=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S3=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S4=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S5=y
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_PROTOCOL_8042=y
-CONFIG_PLATFORM_EC_KEYBOARD_COL2_INVERTED=y
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI2=y
-CONFIG_PLATFORM_EC_VOLUME_BUTTONS=y
-CONFIG_PLATFORM_EC_CMD_BUTTON=n
-
-# Sensors
-CONFIG_SENSOR=y
-CONFIG_SENSOR_SHELL=n
-
-# Shell Commands
-CONFIG_SHELL_HELP=y
-CONFIG_SHELL_HISTORY=y
-CONFIG_SHELL_TAB=y
-CONFIG_SHELL_TAB_AUTOCOMPLETION=y
-CONFIG_KERNEL_SHELL=y
-
-# TODO
-# Below conf are disabled to compile successfully
-# These will be enabled in upcoming CLs
-CONFIG_PLATFORM_EC_BACKLIGHT_LID=n
diff --git a/zephyr/program/intelrvp/src/chg_usb_pd.c b/zephyr/program/intelrvp/src/chg_usb_pd.c
deleted file mode 100644
index 084617cb98..0000000000
--- a/zephyr/program/intelrvp/src/chg_usb_pd.c
+++ /dev/null
@@ -1,122 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Common USB PD charge configuration */
-
-#include "charge_manager.h"
-#include "charge_state_v2.h"
-#include "gpio.h"
-#include "hooks.h"
-#include "intelrvp.h"
-#include "tcpm/tcpci.h"
-
-#define CPRINTF(format, args...) cprintf(CC_USBPD, format, ##args)
-#define CPRINTS(format, args...) cprints(CC_USBPD, format, ##args)
-
-bool is_typec_port(int port)
-{
-#if CONFIG_DEDICATED_CHARGE_PORT_COUNT > 0
- return !(port == DEDICATED_CHARGE_PORT || port == CHARGE_PORT_NONE);
-#else
- return !(port == CHARGE_PORT_NONE);
-#endif /* CONFIG_DEDICATED_CHARGE_PORT_COUNT > 0 */
-}
-
-static inline int board_dc_jack_present(void)
-{
-#if CONFIG_DEDICATED_CHARGE_PORT_COUNT > 0
- return gpio_get_level(GPIO_DC_JACK_PRESENT);
-#else
- return 0;
-#endif /* CONFIG_DEDICATED_CHARGE_PORT_COUNT > 0 */
-}
-
-static void board_dc_jack_handle(void)
-{
-#if CONFIG_DEDICATED_CHARGE_PORT_COUNT > 0
- struct charge_port_info charge_dc_jack;
-
- /* System is booted from DC Jack */
- if (board_dc_jack_present()) {
- charge_dc_jack.current =
- (PD_MAX_POWER_MW * 1000) / DC_JACK_MAX_VOLTAGE_MV;
- charge_dc_jack.voltage = DC_JACK_MAX_VOLTAGE_MV;
- } else {
- charge_dc_jack.current = 0;
- charge_dc_jack.voltage = USB_CHARGER_VOLTAGE_MV;
- }
-
- charge_manager_update_charge(CHARGE_SUPPLIER_DEDICATED,
- DEDICATED_CHARGE_PORT, &charge_dc_jack);
-#endif /* CONFIG_DEDICATED_CHARGE_PORT_COUNT > 0 */
-}
-
-void board_dc_jack_interrupt(enum gpio_signal signal)
-{
- board_dc_jack_handle();
-}
-
-static void board_charge_init(void)
-{
- int port, supplier;
- struct charge_port_info charge_init = {
- .current = 0,
- .voltage = USB_CHARGER_VOLTAGE_MV,
- };
-
- /* Initialize all charge suppliers to seed the charge manager */
- for (port = 0; port < CHARGE_PORT_COUNT; port++) {
- for (supplier = 0; supplier < CHARGE_SUPPLIER_COUNT;
- supplier++) {
- charge_manager_update_charge(supplier, port,
- &charge_init);
- }
- }
-
- board_dc_jack_handle();
-}
-DECLARE_HOOK(HOOK_INIT, board_charge_init, HOOK_PRIO_DEFAULT);
-
-int board_set_active_charge_port(int port)
-{
- int i;
- /* charge port is a realy physical port */
- int is_real_port = (port >= 0 && port < CHARGE_PORT_COUNT);
- /* check if we are source vbus on that port */
- int source = board_vbus_source_enabled(port);
-
- if (is_real_port && source) {
- CPRINTS("Skip enable p%d", port);
- return EC_ERROR_INVAL;
- }
-
-#if CONFIG_DEDICATED_CHARGE_PORT_COUNT > 0
- /*
- * Do not enable Type-C port if the DC Jack is present.
- * When the Type-C is active port, hardware circuit will
- * block DC jack from enabling +VADP_OUT.
- */
- if (port != DEDICATED_CHARGE_PORT && board_dc_jack_present()) {
- CPRINTS("DC Jack present, Skip enable p%d", port);
- return EC_ERROR_INVAL;
- }
-#endif /* CONFIG_DEDICATED_CHARGE_PORT_COUNT */
-
- /* Make sure non-charging ports are disabled */
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- if (i != port) {
- board_charging_enable(i, 0);
- }
- }
-
- /* Enable charging port */
- if (is_typec_port(port)) {
- board_charging_enable(port, 1);
- }
-
- CPRINTS("New chg p%d", port);
-
- return EC_SUCCESS;
-}
diff --git a/zephyr/program/intelrvp/src/chg_usb_pd_mecc_1_1.c b/zephyr/program/intelrvp/src/chg_usb_pd_mecc_1_1.c
deleted file mode 100644
index 45fbbc6f65..0000000000
--- a/zephyr/program/intelrvp/src/chg_usb_pd_mecc_1_1.c
+++ /dev/null
@@ -1,92 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Intel-RVP family-specific configuration */
-
-#include "console.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "include/gpio.h"
-#include "intelrvp.h"
-#include "ioexpander.h"
-#include "system.h"
-#include "tcpm/tcpci.h"
-#include "usbc_ppc.h"
-
-#define CPRINTF(format, args...) cprintf(CC_USBPD, format, ##args)
-#define CPRINTS(format, args...) cprints(CC_USBPD, format, ##args)
-
-void tcpc_alert_event(enum gpio_signal signal)
-{
- int i;
-
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- /* No alerts for embedded TCPC */
- if (tcpc_config[i].bus_type == EC_BUS_TYPE_EMBEDDED) {
- continue;
- }
-
- if (signal == tcpc_aic_gpios[i].tcpc_alert) {
- schedule_deferred_pd_interrupt(i);
- break;
- }
- }
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- uint16_t status = 0;
- int i;
-
- /* Check which port has the ALERT line set */
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- /* No alerts for embdeded TCPC */
- if (tcpc_config[i].bus_type == EC_BUS_TYPE_EMBEDDED) {
- continue;
- }
-
- if (!gpio_get_level(tcpc_aic_gpios[i].tcpc_alert)) {
- status |= PD_STATUS_TCPC_ALERT_0 << i;
- }
- }
-
- return status;
-}
-
-int ppc_get_alert_status(int port)
-{
- return tcpc_aic_gpios[port].ppc_intr_handler &&
- !gpio_get_level(tcpc_aic_gpios[port].ppc_alert);
-}
-
-/* PPC support routines */
-void ppc_interrupt(enum gpio_signal signal)
-{
- int i;
-
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- if (tcpc_aic_gpios[i].ppc_intr_handler &&
- signal == tcpc_aic_gpios[i].ppc_alert) {
- tcpc_aic_gpios[i].ppc_intr_handler(i);
- break;
- }
- }
-}
-
-void board_charging_enable(int port, int enable)
-{
- int rv;
-
- if (tcpc_aic_gpios[port].ppc_intr_handler) {
- rv = ppc_vbus_sink_enable(port, enable);
- } else {
- rv = tcpc_config[port].drv->set_snk_ctrl(port, enable);
- }
-
- if (rv) {
- CPRINTS("C%d: sink path %s failed", port,
- enable ? "en" : "dis");
- }
-}
diff --git a/zephyr/program/intelrvp/src/intel_rvp_board_id.c b/zephyr/program/intelrvp/src/intel_rvp_board_id.c
deleted file mode 100644
index 7062cb74b9..0000000000
--- a/zephyr/program/intelrvp/src/intel_rvp_board_id.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "intel_rvp_board_id.h"
-
-#include <zephyr/devicetree.h>
-
-#define DT_DRV_COMPAT intel_rvp_board_id
-
-BUILD_ASSERT(DT_NUM_INST_STATUS_OKAY(DT_DRV_COMPAT) <= 1,
- "Unsupported RVP Board ID instance");
-
-#define RVP_ID_GPIO_DT_SPEC_GET(idx, node_id, prop) \
- GPIO_DT_SPEC_GET_BY_IDX(node_id, prop, idx),
-
-#define RVP_ID_CONFIG_LIST(node_id, prop) \
- LISTIFY(DT_PROP_LEN(node_id, prop), RVP_ID_GPIO_DT_SPEC_GET, (), \
- node_id, prop)
-
-#if DT_HAS_COMPAT_STATUS_OKAY(DT_DRV_COMPAT)
-const struct gpio_dt_spec bom_id_config[] = { RVP_ID_CONFIG_LIST(DT_DRV_INST(0),
- bom_gpios) };
-
-const struct gpio_dt_spec fab_id_config[] = { RVP_ID_CONFIG_LIST(DT_DRV_INST(0),
- fab_gpios) };
-
-const struct gpio_dt_spec board_id_config[] = { RVP_ID_CONFIG_LIST(
- DT_DRV_INST(0), board_gpios) };
-#endif /* #if DT_HAS_COMPAT_STATUS_OKAY */
diff --git a/zephyr/program/intelrvp/src/intel_rvp_led.c b/zephyr/program/intelrvp/src/intel_rvp_led.c
deleted file mode 100644
index 0e4d872963..0000000000
--- a/zephyr/program/intelrvp/src/intel_rvp_led.c
+++ /dev/null
@@ -1,168 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "battery.h"
-#include "charge_manager.h"
-#include "charge_state.h"
-#include "chipset.h"
-#include "common.h"
-#include "console.h"
-#include "ec_commands.h"
-#include "extpower.h"
-#include "hooks.h"
-#include "led_common.h"
-#include "led_pwm.h"
-#include "pwm.h"
-#include "timer.h"
-#include "util.h"
-
-/* Battery percentage thresholds to blink at different rates. */
-#define LOW_BATTERY_PERCENTAGE 10
-#define NORMAL_BATTERY_PERCENTAGE 90
-
-#define LED_OFF -1
-
-#define LED_PULSE_TICK (125 * MSEC)
-
-#define LED_FAST_PULSE_PERIOD (250 / 125) /* 250 ms */
-#define LED_SLOW_PULSE_PERIOD ((2 * MSEC) / 125) /* 2 sec */
-
-struct led_pulse_data {
- bool led_is_pulsing;
- uint8_t led_pulse_period;
- uint8_t led_tick_count;
-};
-
-static struct led_pulse_data rvp_led[CONFIG_LED_PWM_COUNT];
-
-static void pulse_led_deferred(void);
-DECLARE_DEFERRED(pulse_led_deferred);
-
-static void pulse_led_deferred(void)
-{
- int i = 0;
- bool call_deferred = false;
-
- for (i = 0; i < CONFIG_LED_PWM_COUNT; i++) {
- if (!rvp_led[i].led_is_pulsing) {
- rvp_led[i].led_tick_count = 0;
- continue;
- }
-
- /*
- * LED will be in ON state first half of the pulse period
- * and in OFF state in second half of the pulse period.
- */
- if (rvp_led[i].led_tick_count <
- (rvp_led[i].led_pulse_period >> 1))
- set_pwm_led_color(i, EC_LED_COLOR_GREEN);
- else
- set_pwm_led_color(i, LED_OFF);
-
- rvp_led[i].led_tick_count = (rvp_led[i].led_tick_count + 1) %
- rvp_led[i].led_pulse_period;
- call_deferred = true;
- }
-
- if (call_deferred)
- hook_call_deferred(&pulse_led_deferred_data, LED_PULSE_TICK);
-}
-
-static void pulse_leds(enum pwm_led_id id, int period)
-{
- rvp_led[id].led_pulse_period = period;
- rvp_led[id].led_is_pulsing = true;
-
- pulse_led_deferred();
-}
-
-static void update_charger_led(enum pwm_led_id id)
-{
- enum charge_state chg_st = charge_get_state();
-
- /*
- * The colors listed below are the default, but can be overridden.
- *
- * Fast Flash = Charging error
- * Slow Flash = Discharging
- * LED on = Charging
- * LED off = No Charger connected
- */
- if (chg_st == PWR_STATE_CHARGE ||
- chg_st == PWR_STATE_CHARGE_NEAR_FULL) {
- /* Charging: LED ON */
- rvp_led[id].led_is_pulsing = false;
- set_pwm_led_color(id, EC_LED_COLOR_GREEN);
- } else if (chg_st == PWR_STATE_DISCHARGE ||
- chg_st == PWR_STATE_DISCHARGE_FULL) {
- if (extpower_is_present()) {
- /* Discharging:
- * Flash slower (2 second period, 100% duty cycle)
- */
- pulse_leds(id, LED_SLOW_PULSE_PERIOD);
- } else {
- /* No Charger connected: LED OFF */
- rvp_led[id].led_is_pulsing = false;
- set_pwm_led_color(id, LED_OFF);
- }
- } else if (chg_st == PWR_STATE_ERROR) {
- /* Charging error:
- * Flash faster (250 ms period, 100% duty cycle)
- */
- pulse_leds(id, LED_FAST_PULSE_PERIOD);
- } else {
- /* LED OFF */
- rvp_led[id].led_is_pulsing = false;
- set_pwm_led_color(id, LED_OFF);
- }
-}
-
-static void update_battery_led(enum pwm_led_id id)
-{
- /*
- * Fast Flash = Low Battery
- * Slow Flash = Normal Battery
- * LED on = Full Battery
- * LED off = No Battery
- */
- if (battery_is_present() == BP_YES) {
- int batt_percentage = charge_get_percent();
-
- if (batt_percentage < LOW_BATTERY_PERCENTAGE) {
- /* Low Battery:
- * Flash faster (250 ms period, 100% duty cycle)
- */
- pulse_leds(id, LED_FAST_PULSE_PERIOD);
- } else if (batt_percentage < NORMAL_BATTERY_PERCENTAGE) {
- /* Normal Battery:
- * Flash slower (2 second period, 100% duty cycle)
- */
- pulse_leds(id, LED_SLOW_PULSE_PERIOD);
- } else {
- /* Full Battery: LED ON */
- rvp_led[id].led_is_pulsing = false;
- set_pwm_led_color(id, EC_LED_COLOR_GREEN);
- }
- } else {
- /* No Battery: LED OFF */
- rvp_led[id].led_is_pulsing = false;
- set_pwm_led_color(id, LED_OFF);
- }
-}
-
-static void init_rvp_leds_off(void)
-{
- /* Turn off LEDs such that they are in a known state with zero duty. */
- set_pwm_led_color(PWM_LED0, LED_OFF);
- set_pwm_led_color(PWM_LED1, LED_OFF);
-}
-DECLARE_HOOK(HOOK_INIT, init_rvp_leds_off, HOOK_PRIO_POST_PWM);
-
-static void update_led(void)
-{
- update_battery_led(PWM_LED0);
- update_charger_led(PWM_LED1);
-}
-DECLARE_HOOK(HOOK_SECOND, update_led, HOOK_PRIO_DEFAULT);
diff --git a/zephyr/program/intelrvp/src/intelrvp.c b/zephyr/program/intelrvp/src/intelrvp.c
deleted file mode 100644
index 7098f26cbf..0000000000
--- a/zephyr/program/intelrvp/src/intelrvp.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* TODO: b/218904113: Convert to using Zephyr GPIOs */
-#include "gpio.h"
-#include "hooks.h"
-
-static void board_init(void)
-{
- /* Enable SOC SPI */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(ec_spi_oe_mecc), 1);
-}
-DECLARE_HOOK(HOOK_INIT, board_init, HOOK_PRIO_LAST);
-
-__override void intel_x86_sys_reset_delay(void)
-{
- /*
- * From MAX6818 Data sheet, Range of 'Debounce Duaration' is
- * Minimum - 20 ms, Typical - 40 ms, Maximum - 80 ms.
- * See b/153128296.
- */
- udelay(60 * MSEC);
-}
diff --git a/zephyr/program/intelrvp/src/usb_pd_policy_mecc_1_1.c b/zephyr/program/intelrvp/src/usb_pd_policy_mecc_1_1.c
deleted file mode 100644
index a194b358f1..0000000000
--- a/zephyr/program/intelrvp/src/usb_pd_policy_mecc_1_1.c
+++ /dev/null
@@ -1,106 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "console.h"
-#include "gpio.h"
-#include "intelrvp.h"
-#include "usb_mux.h"
-#include "usbc_ppc.h"
-
-#define CPRINTF(format, args...) cprintf(CC_USBPD, format, ##args)
-#define CPRINTS(format, args...) cprints(CC_USBPD, format, ##args)
-
-static inline void board_pd_set_vbus_discharge(int port, bool enable)
-{
- if (tcpc_aic_gpios[port].ppc_intr_handler) {
- ppc_discharge_vbus(port, enable);
- } else {
- tcpc_discharge_vbus(port, enable);
- }
-}
-
-int pd_set_power_supply_ready(int port)
-{
- int rv;
-
- /* Disable charging. */
- if (tcpc_aic_gpios[port].ppc_intr_handler) {
- rv = ppc_vbus_sink_enable(port, 0);
- } else {
- rv = tcpc_config[port].drv->set_snk_ctrl(port, 0);
- }
-
- if (rv) {
- return rv;
- }
-
- board_pd_set_vbus_discharge(port, false);
-
- /* Provide Vbus. */
- if (tcpc_aic_gpios[port].ppc_intr_handler) {
- rv = ppc_vbus_source_enable(port, 1);
- } else {
- tcpc_config[port].drv->set_src_ctrl(port, 1);
- }
-
- if (rv) {
- return rv;
- }
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-void pd_power_supply_reset(int port)
-{
- int prev_en;
-
- prev_en = board_vbus_source_enabled(port);
-
- /* Disable VBUS. */
- if (tcpc_aic_gpios[port].ppc_intr_handler) {
- ppc_vbus_source_enable(port, 0);
- } else {
- tcpc_config[port].drv->set_src_ctrl(port, 0);
- }
-
- /* Enable discharge if we were previously sourcing 5V */
- if (prev_en) {
- board_pd_set_vbus_discharge(port, true);
- }
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-int pd_check_vconn_swap(int port)
-{
- /* Only allow vconn swap if PP3300 rail is enabled */
- return gpio_get_level(GPIO_EN_PP3300_A);
-}
-
-int pd_snk_is_vbus_provided(int port)
-{
- if (tcpc_aic_gpios[port].ppc_intr_handler) {
- return ppc_is_vbus_present(port);
- } else {
- return tcpc_config[port].drv->check_vbus_level(port,
- VBUS_PRESENT);
- }
-}
-
-int board_vbus_source_enabled(int port)
-{
- if (is_typec_port(port)) {
- if (tcpc_aic_gpios[port].ppc_intr_handler) {
- return ppc_is_sourcing_vbus(port);
- } else {
- return tcpc_config[port].drv->get_src_ctrl(port);
- }
- }
- return 0;
-}
diff --git a/zephyr/program/intelrvp/zephyr_ap_pwrseq.conf b/zephyr/program/intelrvp/zephyr_ap_pwrseq.conf
deleted file mode 100644
index d33b9bc963..0000000000
--- a/zephyr/program/intelrvp/zephyr_ap_pwrseq.conf
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Zephyr Inbuilt AP Power Sequencing Config
-CONFIG_AP_PWRSEQ=y
-CONFIG_X86_NON_DSX_PWRSEQ_CONSOLE=y
-CONFIG_X86_NON_DSX_PWRSEQ_HOST_CMD=y
-CONFIG_AP_PWRSEQ_S0IX=y
-CONFIG_AP_PWRSEQ_S0IX_ERROR_RECOVERY=y
diff --git a/zephyr/program/it8xxx2_evb/BUILD.py b/zephyr/program/it8xxx2_evb/BUILD.py
deleted file mode 100644
index ee89c75390..0000000000
--- a/zephyr/program/it8xxx2_evb/BUILD.py
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Define zmake projects for it8xxx2_evb."""
-
-register_raw_project(
- project_name="it8xxx2_evb",
- zephyr_board="it81302bx",
- dts_overlays=[
- "adc.dts",
- "fan.dts",
- "gpio.dts",
- "i2c.dts",
- "interrupts.dts",
- "pwm.dts",
- ],
-)
diff --git a/zephyr/program/it8xxx2_evb/CMakeLists.txt b/zephyr/program/it8xxx2_evb/CMakeLists.txt
deleted file mode 100644
index 170606a52d..0000000000
--- a/zephyr/program/it8xxx2_evb/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cmake_minimum_required(VERSION 3.13.1)
-
-find_package(Zephyr REQUIRED HINTS "${ZEPHYR_BASE}")
-project(it8xxx2_evb)
-
-# Include board specific header files
-zephyr_include_directories(include)
diff --git a/zephyr/program/it8xxx2_evb/adc.dts b/zephyr/program/it8xxx2_evb/adc.dts
deleted file mode 100644
index 509c9b9daf..0000000000
--- a/zephyr/program/it8xxx2_evb/adc.dts
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_vbussa: vbussa {
- enum-name = "ADC_VBUS";
- io-channels = <&adc0 0>;
- };
- adc_vbussb: vbussb {
- enum-name = "ADC_PSYS";
- io-channels = <&adc0 1>;
- };
- adc_evb_ch_13: evb_ch_13 {
- enum-name = "ADC_AMON_BMON";
- io-channels = <&adc0 2>;
- };
- adc_evb_ch_14: evb_ch_14 {
- enum-name = "ADC_TEMP_SENSOR_FAN";
- io-channels = <&adc0 3>;
- };
- adc_evb_ch_15: evb_ch_15 {
- enum-name = "ADC_TEMP_SENSOR_DDR_SOC";
- io-channels = <&adc0 4>;
- };
- adc_evb_ch_16: evb_ch_16 {
- enum-name = "ADC_TEMP_SENSOR_CHARGER";
- io-channels = <&adc0 5>;
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_ch3_gpi3_default>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/it8xxx2_evb/fan.dts b/zephyr/program/it8xxx2_evb/fan.dts
deleted file mode 100644
index 2551507ec3..0000000000
--- a/zephyr/program/it8xxx2_evb/fan.dts
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- fans {
- compatible = "cros-ec,fans";
-
- fan_0 {
- pwms = <&pwm7 PWM_CHANNEL_7 PWM_KHZ(30) PWM_POLARITY_NORMAL>;
- tach = <&tach0>;
- rpm_min = <1500>;
- rpm_start = <1500>;
- rpm_max = <6500>;
- };
- };
-};
-
-/* fan tachometer sensor */
-&tach0 {
- status = "okay";
- channel = <IT8XXX2_TACH_CHANNEL_A>;
- pulses-per-round = <2>;
- pinctrl-0 = <&tach0a_gpd6_default>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/it8xxx2_evb/gpio.dts b/zephyr/program/it8xxx2_evb/gpio.dts
deleted file mode 100644
index 85bb45d7a0..0000000000
--- a/zephyr/program/it8xxx2_evb/gpio.dts
+++ /dev/null
@@ -1,169 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/gpio_defines.h>
-
-/ {
- aliases {
- gpio-wp = &gpio_wp;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- power_button_l: power_button_l {
- gpios = <&gpioe 4 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- lid_open: lid_open {
- gpios = <&gpioe 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_wp: wp_l {
- gpios = <&gpioi 4 (GPIO_INPUT_PULL_UP |
- GPIO_ACTIVE_LOW)>;
- };
- pch_pltrst_l {
- gpios = <&gpioe 3 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_PCH_RSMRST_L";
- };
- sys_reset_l {
- gpios = <&gpiob 6 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_SYS_RESET_L";
- };
- gpio_ec_pch_wake_odl: pch_wake_l {
- gpios = <&gpiob 7 GPIO_OUTPUT_HIGH>;
- };
- spi0_cs: spi0_cs {
- gpios = <&gpiom 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- /* unimplemented GPIOs */
- entering-rw {
- enum-name = "GPIO_ENTERING_RW";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <&int_power_button
- &int_lid_open>;
- };
-
- unused-pins {
- compatible = "unused-gpios";
-
- unused-gpios =
- /* gpioa1 */
- <&gpioa 1 GPIO_INPUT_PULL_DOWN>,
- /* gpioa2 */
- <&gpioa 2 GPIO_INPUT_PULL_DOWN>,
- /* gpioa3 */
- <&gpioa 3 GPIO_INPUT_PULL_DOWN>,
- /* gpioa4 */
- <&gpioa 4 GPIO_INPUT_PULL_DOWN>,
- /* gpioa5 */
- <&gpioa 5 GPIO_INPUT_PULL_DOWN>,
-
- /* gpiob2 */
- <&gpiob 2 GPIO_INPUT_PULL_DOWN>,
- /* gpiob5 */
- <&gpiob 5 GPIO_INPUT_PULL_DOWN>,
-
- /* gpioc0 */
- <&gpioc 0 GPIO_INPUT_PULL_DOWN>,
- /* gpioc4 */
- <&gpioc 4 GPIO_INPUT_PULL_DOWN>,
- /* gpioc6 */
- <&gpioc 6 GPIO_INPUT_PULL_DOWN>,
- /* gpioc7 */
- <&gpioc 7 GPIO_INPUT_PULL_DOWN>,
-
- /* gpiod0 */
- <&gpiod 0 GPIO_INPUT_PULL_DOWN>,
- /* gpiod1 */
- <&gpiod 1 GPIO_INPUT_PULL_DOWN>,
- /* gpiod2 */
- <&gpiod 2 GPIO_INPUT_PULL_DOWN>,
- /* gpiod3 */
- <&gpiod 3 GPIO_INPUT_PULL_DOWN>,
- /* gpiod4 */
- <&gpiod 4 GPIO_INPUT_PULL_DOWN>,
- /* gpiod5 */
- <&gpiod 5 GPIO_INPUT_PULL_DOWN>,
- /* gpiod7 */
- <&gpiod 7 GPIO_INPUT_PULL_DOWN>,
-
- /* gpioe1 */
- <&gpioe 1 GPIO_INPUT_PULL_DOWN>,
- /* gpioe5 */
- <&gpioe 5 GPIO_INPUT_PULL_DOWN>,
- /* gpioe6 */
- <&gpioe 6 GPIO_INPUT_PULL_DOWN>,
-
- /* gpiof0 */
- <&gpiof 0 GPIO_INPUT_PULL_DOWN>,
- /* gpiof1 */
- <&gpiof 1 GPIO_INPUT_PULL_DOWN>,
- /* gpiof2 */
- <&gpiof 2 GPIO_INPUT_PULL_DOWN>,
- /* gpiof3 */
- <&gpiof 3 GPIO_INPUT_PULL_DOWN>,
- /* gpiof4 */
- <&gpiof 4 GPIO_INPUT_PULL_DOWN>,
- /* gpiof5 */
- <&gpiof 5 GPIO_INPUT_PULL_DOWN>,
-
- /* gpiog1 */
- <&gpiog 1 GPIO_INPUT_PULL_DOWN>,
- /* gpiog6 */
- <&gpiog 6 GPIO_INPUT_PULL_UP>,
-
- /* gpioh0 */
- <&gpioh 0 GPIO_INPUT_PULL_DOWN>,
- /* gpioh3 */
- <&gpioh 3 GPIO_INPUT_PULL_DOWN>,
- /* gpioh4 */
- <&gpioh 4 GPIO_INPUT_PULL_DOWN>,
- /* gpioh5 */
- <&gpioh 5 GPIO_INPUT_PULL_DOWN>,
- /* gpioh6 */
- <&gpioh 6 GPIO_INPUT_PULL_DOWN>,
-
- /* gpioi6 */
- <&gpioi 6 GPIO_INPUT_PULL_DOWN>,
- /* gpioi7 */
- <&gpioi 7 GPIO_INPUT_PULL_DOWN>,
-
- /* gpioj0 */
- <&gpioj 0 GPIO_INPUT_PULL_DOWN>,
- /* gpioj1 */
- <&gpioj 1 GPIO_INPUT_PULL_DOWN>,
- /* gpioj2 */
- <&gpioj 2 GPIO_INPUT_PULL_DOWN>,
- /* gpioj3 */
- <&gpioj 3 GPIO_INPUT_PULL_DOWN>,
- /* gpioj4 */
- <&gpioj 4 GPIO_INPUT_PULL_DOWN>,
- /* gpioj5 */
- <&gpioj 5 GPIO_INPUT_PULL_DOWN>,
- /* gpioj6 */
- <&gpioj 6 GPIO_OUTPUT_LOW>,
- /* gpioj7 */
- <&gpioj 7 GPIO_OUTPUT_LOW>,
-
- /* gpiom0 */
- <&gpiom 0 GPIO_INPUT_PULL_DOWN>,
- /* gpiom1 */
- <&gpiom 1 GPIO_INPUT_PULL_DOWN>,
- /* gpiom2 */
- <&gpiom 2 GPIO_INPUT_PULL_DOWN>,
- /* gpiom3 */
- <&gpiom 3 GPIO_INPUT_PULL_DOWN>,
- /* gpiom4 */
- <&gpiom 4 GPIO_INPUT_PULL_DOWN>,
- /* gpiom6 */
- <&gpiom 6 GPIO_INPUT_PULL_DOWN>;
- };
-};
diff --git a/zephyr/program/it8xxx2_evb/i2c.dts b/zephyr/program/it8xxx2_evb/i2c.dts
deleted file mode 100644
index c08c543e44..0000000000
--- a/zephyr/program/it8xxx2_evb/i2c.dts
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- battery {
- i2c-port = <&i2c2>;
- enum-names = "I2C_PORT_BATTERY";
- };
- evb-1 {
- i2c-port = <&i2c0>;
- enum-names = "I2C_PORT_EVB_1";
- };
- evb-2 {
- i2c-port = <&i2c1>;
- enum-names = "I2C_PORT_EVB_2";
- };
- opt-4 {
- i2c-port = <&i2c4>;
- enum-names = "I2C_PORT_OPT_4";
- };
- };
-};
-
-&i2c0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_STANDARD>;
- pinctrl-0 = <&i2c0_clk_gpb3_default
- &i2c0_data_gpb4_default>;
- pinctrl-names = "default";
-};
-
-&i2c1 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_STANDARD>;
- pinctrl-0 = <&i2c1_clk_gpc1_default
- &i2c1_data_gpc2_default>;
- pinctrl-names = "default";
-};
-
-&i2c2 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_STANDARD>;
- pinctrl-0 = <&i2c2_clk_gpf6_default
- &i2c2_data_gpf7_default>;
- pinctrl-names = "default";
-};
-
-&i2c4 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_STANDARD>;
- pinctrl-0 = <&i2c4_clk_gpe0_default
- &i2c4_data_gpe7_default>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/it8xxx2_evb/include/i2c_map.h b/zephyr/program/it8xxx2_evb/include/i2c_map.h
deleted file mode 100644
index a6878e8bae..0000000000
--- a/zephyr/program/it8xxx2_evb/include/i2c_map.h
+++ /dev/null
@@ -1,16 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#ifndef __ZEPHYR_CHROME_I2C_MAP_H
-#define __ZEPHYR_CHROME_I2C_MAP_H
-
-#include "config.h"
-
-#include <zephyr/devicetree.h>
-
-/* We need registers.h to get the chip specific defines for now */
-#include "i2c/i2c.h"
-
-#endif /* __ZEPHYR_CHROME_I2C_MAP_H */
diff --git a/zephyr/program/it8xxx2_evb/interrupts.dts b/zephyr/program/it8xxx2_evb/interrupts.dts
deleted file mode 100644
index 07fc0ed339..0000000000
--- a/zephyr/program/it8xxx2_evb/interrupts.dts
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&power_button_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_spi0_cs: spi0_cs {
- irq-pin = <&spi0_cs>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "spi_event";
- };
- };
-};
diff --git a/zephyr/program/it8xxx2_evb/prj.conf b/zephyr/program/it8xxx2_evb/prj.conf
deleted file mode 100644
index 7a608cb831..0000000000
--- a/zephyr/program/it8xxx2_evb/prj.conf
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_CROS_EC=y
-CONFIG_PLATFORM_EC=y
-CONFIG_SHIMMED_TASKS=y
-
-# SoC configuration
-CONFIG_AP=y
-CONFIG_AP_ARM_MTK_MT8192=y
-
-# Lid switch
-CONFIG_PLATFORM_EC_LID_SWITCH=y
-
-# Fan
-CONFIG_SENSOR=y
-
-# Power Button
-CONFIG_PLATFORM_EC_POWER_BUTTON=y
-
-# TODO(b:185202623): bring these features up
-CONFIG_PLATFORM_EC_BACKLIGHT_LID=n
-CONFIG_PLATFORM_EC_BOARD_VERSION_CBI=n
-CONFIG_PLATFORM_EC_BOARD_VERSION_GPIO=n
-CONFIG_PLATFORM_EC_KEYBOARD=n
-CONFIG_PLATFORM_EC_SWITCH=n
-CONFIG_PLATFORM_EC_VBOOT_EFS2=n
-CONFIG_PLATFORM_EC_VBOOT_HASH=n
-
-# USB-C
-CONFIG_PLATFORM_EC_USB_PD_TBT_COMPAT_MODE=n
-CONFIG_PLATFORM_EC_USB_PD_USB4=n
diff --git a/zephyr/program/it8xxx2_evb/pwm.dts b/zephyr/program/it8xxx2_evb/pwm.dts
deleted file mode 100644
index c566e5c029..0000000000
--- a/zephyr/program/it8xxx2_evb/pwm.dts
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
-
- /* NOTE: &pwm number needs same with channel number */
- pwm_led_test: pwm_led_test {
- pwms = <&pwm0 PWM_CHANNEL_0 PWM_MSEC(20) PWM_POLARITY_NORMAL>;
- };
- };
-};
-
-/* pwm for test */
-&pwm0 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C6>;
- pinctrl-0 = <&pwm0_gpa0_default>;
- pinctrl-names = "default";
-};
-
-/* pwm for fan */
-&pwm7 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm7_gpa7_default>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/minimal/BUILD.py b/zephyr/program/minimal/BUILD.py
deleted file mode 100644
index 5e892aa2d7..0000000000
--- a/zephyr/program/minimal/BUILD.py
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Minimal example project."""
-
-register_host_project(
- project_name="minimal-posix",
- zephyr_board="native_posix",
-)
-
-register_npcx_project(
- project_name="minimal-npcx9",
- zephyr_board="npcx9m3f",
- dts_overlays=[here / "npcx9.dts"],
-)
-
-register_binman_project(
- project_name="minimal-it8xxx2",
- zephyr_board="it81302bx",
- dts_overlays=[here / "it8xxx2.dts"],
-)
diff --git a/zephyr/program/minimal/CMakeLists.txt b/zephyr/program/minimal/CMakeLists.txt
deleted file mode 100644
index de3bec9428..0000000000
--- a/zephyr/program/minimal/CMakeLists.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cmake_minimum_required(VERSION 3.20.5)
-find_package(Zephyr REQUIRED HINTS "${ZEPHYR_BASE}")
-project(ec)
-
-zephyr_include_directories("${CMAKE_CURRENT_SOURCE_DIR}/include")
diff --git a/zephyr/program/minimal/README.md b/zephyr/program/minimal/README.md
deleted file mode 100644
index 72c092dfce..0000000000
--- a/zephyr/program/minimal/README.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# Minimal Example Zephyr EC Project
-
-This directory is intended to be an extremely minimal example of a
-project. Should you like, you can use it as a bring up a new program,
-or as reference as you require.
-
-If you're bringing up a new variant of a program, you don't need a
-whole project directory with a `BUILD.py` and all, and this example is
-likely not of use to you. Check out the [project config
-documentation] for instructions on adding a new variant.
-
-[project config documentation]: ../../../docs/zephyr/project_config.md
-
-# Building
-
-To build the `native_posix` example, run:
-
-``` shellsession
-(chroot) $ zmake build minimal-posix
-```
-
-To build the NPCX9 example, run:
-
-``` shellsession
-(chroot) $ zmake build minimal-npcx9
-```
-
-For the IT8XXX2 example, run:
-
-``` shellsession
-(chroot) $ zmake build minimal-it8xxx2
-```
diff --git a/zephyr/program/minimal/it8xxx2.dts b/zephyr/program/minimal/it8xxx2.dts
deleted file mode 100644
index 3d2028afb2..0000000000
--- a/zephyr/program/minimal/it8xxx2.dts
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &ec_wp_l;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- ec_wp_l: write-protect {
- gpios = <&gpioa 0 GPIO_INPUT>;
- };
- /* unimplemented GPIOs */
- entering-rw {
- enum-name = "GPIO_ENTERING_RW";
- };
- };
-};
diff --git a/zephyr/program/minimal/npcx9.dts b/zephyr/program/minimal/npcx9.dts
deleted file mode 100644
index 3a9f3b26e4..0000000000
--- a/zephyr/program/minimal/npcx9.dts
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &ec_wp_l;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- ec_wp_l: write-protect {
- gpios = <&gpioa 0 GPIO_INPUT>;
- };
- /* unimplemented GPIOs */
- entering-rw {
- enum-name = "GPIO_ENTERING_RW";
- };
- };
-};
-
-&cros_kb_raw {
- status = "okay";
- pinctrl-0 = <>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/minimal/prj.conf b/zephyr/program/minimal/prj.conf
deleted file mode 100644
index bacb4fe288..0000000000
--- a/zephyr/program/minimal/prj.conf
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_PLATFORM_EC=y
-CONFIG_CROS_EC=y
-CONFIG_SHIMMED_TASKS=y
-CONFIG_SYSCON=y
-
-# Disable default features we don't want in a minimal example.
-CONFIG_ADC=n
-CONFIG_PWM=n
-CONFIG_PLATFORM_EC_BACKLIGHT_LID=n
-CONFIG_PLATFORM_EC_KEYBOARD=n
-CONFIG_PLATFORM_EC_POWER_BUTTON=n
-CONFIG_PLATFORM_EC_SWITCH=n
-CONFIG_PLATFORM_EC_VBOOT_EFS2=n
-CONFIG_PLATFORM_EC_I2C=n
diff --git a/zephyr/program/nissa/BUILD.py b/zephyr/program/nissa/BUILD.py
deleted file mode 100644
index fa5c77baf9..0000000000
--- a/zephyr/program/nissa/BUILD.py
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Define zmake projects for nissa."""
-
-# Nivviks and Craask, Pujjo, Xivu, Xivur has NPCX993F, Nereid and Joxer, Yaviks has ITE81302
-
-
-def register_nissa_project(
- project_name,
- chip="it81302bx",
-):
- """Register a variant of nissa."""
- register_func = register_binman_project
- if chip.startswith("npcx"):
- register_func = register_npcx_project
-
- chip_kconfig = {"it81302bx": "it8xxx2", "npcx9m3f": "npcx"}[chip]
-
- return register_func(
- project_name=project_name,
- zephyr_board=chip,
- dts_overlays=[here / project_name / "project.overlay"],
- kconfig_files=[
- here / "program.conf",
- here / f"{chip_kconfig}_program.conf",
- here / project_name / "project.conf",
- ],
- )
-
-
-nivviks = register_nissa_project(
- project_name="nivviks",
- chip="npcx9m3f",
-)
-
-nereid = register_nissa_project(
- project_name="nereid",
- chip="it81302bx",
-)
-
-craask = register_nissa_project(
- project_name="craask",
- chip="npcx9m3f",
-)
-
-pujjo = register_nissa_project(
- project_name="pujjo",
- chip="npcx9m3f",
-)
-
-xivu = register_nissa_project(
- project_name="xivu",
- chip="npcx9m3f",
-)
-
-xivur = register_nissa_project(
- project_name="xivur",
- chip="npcx9m3f",
-)
-
-joxer = register_nissa_project(
- project_name="joxer",
- chip="it81302bx",
-)
-
-yaviks = register_nissa_project(
- project_name="yaviks",
- chip="it81302bx",
-)
diff --git a/zephyr/program/nissa/CMakeLists.txt b/zephyr/program/nissa/CMakeLists.txt
deleted file mode 100644
index 967fff2229..0000000000
--- a/zephyr/program/nissa/CMakeLists.txt
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cmake_minimum_required(VERSION 3.13.1)
-
-find_package(Zephyr REQUIRED HINTS "${ZEPHYR_BASE}")
-
-zephyr_include_directories(include)
-zephyr_library_sources("src/common.c")
-zephyr_library_sources_ifdef(CONFIG_NISSA_SUB_BOARD "src/sub_board.c")
-zephyr_library_sources_ifdef(CONFIG_AP_PWRSEQ "src/board_power.c")
-
-if(DEFINED CONFIG_BOARD_NIVVIKS)
- project(nivviks)
- zephyr_library_sources(
- "nivviks/src/led.c"
- "nivviks/src/form_factor.c"
- "nivviks/src/keyboard.c"
- )
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_FAN "nivviks/src/fan.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "nivviks/src/usbc.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_CHARGER "nivviks/src/charger.c")
-endif()
-if(DEFINED CONFIG_BOARD_NEREID)
- project(nereid)
- zephyr_library_sources(
- "src/led.c"
- "nereid/src/keyboard.c"
- "nereid/src/hdmi.c"
- )
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "nereid/src/usbc.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_CHARGER "nereid/src/charger.c")
-endif()
-if(DEFINED CONFIG_BOARD_CRAASK)
- zephyr_library_sources(
- "craask/src/fan.c"
- "craask/src/form_factor.c"
- "craask/src/keyboard.c"
- "craask/src/kb_backlight.c"
- "craask/src/led.c"
- )
- project(craask)
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "craask/src/usbc.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_CHARGER "craask/src/charger.c")
-endif()
-if(DEFINED CONFIG_BOARD_PUJJO)
- project(pujjo)
- zephyr_library_sources(
- "pujjo/src/led.c"
- "pujjo/src/keyboard.c"
- "pujjo/src/hdmi.c"
- "pujjo/src/form_factor.c"
- )
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_FAN "pujjo/src/fan.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "pujjo/src/usbc.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_CHARGER "pujjo/src/charger.c")
-endif()
-if(DEFINED CONFIG_BOARD_XIVU)
- project(xivu)
- zephyr_library_sources(
- "xivu/src/form_factor.c"
- "xivu/src/keyboard.c"
- )
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "xivu/src/usbc.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_CHARGER "xivu/src/charger.c")
-endif()
-if(DEFINED CONFIG_BOARD_JOXER)
- project(joxer)
- zephyr_library_sources(
- "joxer/src/led.c"
- "joxer/src/keyboard.c"
- )
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "joxer/src/usbc.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_CHARGER "joxer/src/charger.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_FAN "joxer/src/fan.c")
-endif()
-if(DEFINED CONFIG_BOARD_YAVIKS)
- project(yaviks)
- zephyr_library_sources(
- "yaviks/src/led.c"
- "yaviks/src/keyboard.c"
- "yaviks/src/thermal.c"
- )
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "yaviks/src/usbc.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_CHARGER "yaviks/src/charger.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_FAN "yaviks/src/fan.c")
-endif()
-if(DEFINED CONFIG_BOARD_XIVUR)
- project(xivur)
- zephyr_library_sources(
- "xivur/src/led.c"
- "xivur/src/form_factor.c"
- "xivur/src/keyboard.c"
- )
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_FAN "xivur/src/fan.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "xivur/src/usbc.c")
- zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_CHARGER "xivur/src/charger.c")
-endif()
diff --git a/zephyr/program/nissa/Kconfig b/zephyr/program/nissa/Kconfig
deleted file mode 100644
index a7fb4c666a..0000000000
--- a/zephyr/program/nissa/Kconfig
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-config NISSA_SUB_BOARD
- bool "Nissa sub-board support"
- default y
- help
- Enable the sub-board support for Nissa boards.
- This uses a common fw_config bitfield to select
- one of a number of option sub-boards with different
- hardware configurations.
-
-config BOARD_NIVVIKS
- bool "Google Nivviks Board"
- help
- Build Google Nivviks reference board. Nivviks has Intel ADL-N SoC
- with NPCX993FA0BX EC.
-
-config BOARD_NEREID
- bool "Google Nereid Board"
- help
- Build Google Nereid reference board. Nereid has Intel ADL-N SoC
- with IT81302 EC.
-
-config BOARD_CRAASK
- bool "Google Craask Board"
- help
- Build Google Craask board. Craask has Intel ADL-N SoC
- with NPCX993FA0BX EC.
-
-config BOARD_PUJJO
- bool "Google Pujjo Board"
- help
- Build Google Pujjo board. Pujjo has Intel ADL-N SoC
- with NPCX993FA0BX EC.
-
-config BOARD_XIVU
- bool "Google Xivu Board"
- help
- Build Google Xivu board. Xivu has Intel ADL-N SoC
- with NPCX993FA0BX EC.
-
-config BOARD_XIVUR
- bool "Google Xivur Board"
- help
- Build Google Xivur board. Xivur has Intel ADL-N SoC
- with NPCX993FA0BX EC.
-
-config BOARD_JOXER
- bool "Google Joxer Board"
- help
- Build Google Joxer reference board. Joxer has Intel ADL-N SoC
- with IT81302 EC.
-
-config BOARD_YAVIKS
- bool "Google Yaviks Board"
- help
- Build Google Yaviks board. Yaviks has Intel ADL-N SoC
- with IT81302 EC.
-
-
-module = NISSA
-module-str = Nissa board-specific code
-source "subsys/logging/Kconfig.template.log_config"
-
-source "Kconfig.zephyr"
diff --git a/zephyr/program/nissa/cbi.dtsi b/zephyr/program/nissa/cbi.dtsi
deleted file mode 100644
index d841be1624..0000000000
--- a/zephyr/program/nissa/cbi.dtsi
+++ /dev/null
@@ -1,61 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- nissa-fw-config {
- compatible = "cros-ec,cbi-fw-config";
-
- /*
- * FW_CONFIG field to indicate which sub-board
- * is attached.
- */
- sub-board {
- enum-name = "FW_SUB_BOARD";
- start = <0>;
- size = <2>;
-
- sub-board-1 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_SUB_BOARD_1";
- value = <1>;
- };
- sub-board-2 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_SUB_BOARD_2";
- value = <2>;
- };
- sub-board-3 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_SUB_BOARD_3";
- value = <3>;
- };
- };
-
- /*
- * FW_CONFIG field to enable fan or not.
- */
- fan {
- enum-name = "FW_FAN";
- start = <2>;
- size = <1>;
-
- no-fan {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FAN_NOT_PRESENT";
- value = <0>;
- };
- fan-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FAN_PRESENT";
- value = <1>;
- /*
- * Set as default so that unprovisioned
- * configs will run the fan regardless.
- */
- default;
- };
- };
- };
-};
diff --git a/zephyr/program/nissa/craask/cbi.dtsi b/zephyr/program/nissa/craask/cbi.dtsi
deleted file mode 100644
index e329929227..0000000000
--- a/zephyr/program/nissa/craask/cbi.dtsi
+++ /dev/null
@@ -1,152 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- /* Craask-specific fw_config fields. */
- nissa-fw-config {
- /*
- * FW_CONFIG field to describe Lid sensor orientation.
- */
- lid-inversion {
- enum-name = "FW_LID_INVERSION";
- start = <8>;
- size = <1>;
-
- /*
- * 0: regular placement of the lid sensor
- * 1: rotate 180' of xy plane.
- */
- regular {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_LID_REGULAR";
- value = <0>;
- default;
- };
- xy_rotate_180 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_LID_XY_ROT_180";
- value = <1>;
- };
- };
- /*
- * FW_CONFIG field to describe Clamshell/Convertible.
- */
- form_factor {
- enum-name = "FORM_FACTOR";
- start = <9>;
- size = <1>;
-
- /*
- * 0: convertible, 1: clamshell
- */
- convertible {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "CONVERTIBLE";
- value = <0>;
- };
- clamshell {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "CLAMSHELL";
- value = <1>;
- };
- };
-
- /*
- * FW_CONFIG field to enable fan or not.
- */
- fan {
- enum-name = "FW_FAN";
- start = <17>;
- size = <1>;
-
- no-fan {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FAN_NOT_PRESENT";
- value = <0>;
- };
- fan-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FAN_PRESENT";
- value = <1>;
- /*
- * Set as default so that unprovisioned
- * configs will run the fan regardless.
- */
- default;
- };
- };
-
- /*
- * FW_CONFIG field to enable KB back light or not.
- */
- kb-bl {
- enum-name = "FW_KB_BL";
- start = <18>;
- size = <1>;
-
- no-kb-bl {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_BL_NOT_PRESENT";
- value = <0>;
- };
- kb-bl-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_BL_PRESENT";
- value = <1>;
- };
- };
- };
- /* Craask-specific ssfc fields. */
- cbi-ssfc {
- compatible = "cros-ec,cbi-ssfc";
- /*
- * SSFC bit0-1 was defined for AUDIO CODEC.
- * 0: ALC5682I_VS
- * 1: NAU8825
- */
- audio_codec {
- enum-name = "AUDIO_CODEC";
- size = <2>;
- };
- /*
- * SSFC field to identify LID motion sensor.
- */
- lid-sensor {
- enum-name = "LID_SENSOR";
- size = <2>;
-
- lid_sensor_0: lis2dw12 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <0>;
- default;
- };
- lid_sensor_1: bma422 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <1>;
- };
- };
- /*
- * SSFC field to identify BASE motion sensor.
- */
- base-sensor {
- enum-name = "BASE_SENSOR";
- size = <2>;
-
- base_sensor_0: lsm6dso {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <0>;
- default;
- };
- base_sensor_1: bmi323 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <1>;
- };
- };
- };
-};
diff --git a/zephyr/program/nissa/craask/fan.dtsi b/zephyr/program/nissa/craask/fan.dtsi
deleted file mode 100644
index b94b0a018c..0000000000
--- a/zephyr/program/nissa/craask/fan.dtsi
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-/ {
- fans {
- compatible = "cros-ec,fans";
- fan_0 {
- pwms = <&pwm5 5 PWM_KHZ(25) PWM_POLARITY_NORMAL>;
- tach = <&tach2>;
- rpm_min = <2500>;
- rpm_start = <2500>;
- rpm_max = <4100>;
- enable_gpio = <&gpio_fan_enable>;
- };
- };
-};
-
-&pwm5_gpb7 {
- drive-open-drain;
-};
-
-/* pwm for fan */
-&pwm5 {
- status = "okay";
- pinctrl-0 = <&pwm5_gpb7>;
- pinctrl-names = "default";
-};
-
-/* Tachometer for fan speed measurement */
-&tach2 {
- status = "okay";
- pinctrl-0 = <&ta2_1_in_gp73>;
- pinctrl-names = "default";
- port = <NPCX_TACH_PORT_A>; /* port-A is selected */
- sample-clk = <NPCX_TACH_FREQ_LFCLK>; /* Use LFCLK as sampling clock */
- pulses-per-round = <2>; /* number of pulses per round of encoder */
-};
diff --git a/zephyr/program/nissa/craask/generated.dtsi b/zephyr/program/nissa/craask/generated.dtsi
deleted file mode 100644
index b10ec5f08b..0000000000
--- a/zephyr/program/nissa/craask/generated.dtsi
+++ /dev/null
@@ -1,289 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
-
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_ec_vsense_pp1050_proc: ec_vsense_pp1050_proc {
- enum-name = "ADC_PP1050_PROC";
- io-channels = <&adc0 4>;
- };
- adc_ec_vsense_pp3300_s5: ec_vsense_pp3300_s5 {
- enum-name = "ADC_PP3300_S5";
- io-channels = <&adc0 6>;
- };
- adc_temp_sensor_1: temp_sensor_1 {
- enum-name = "ADC_TEMP_SENSOR_1";
- io-channels = <&adc0 0>;
- };
- adc_temp_sensor_2: temp_sensor_2 {
- enum-name = "ADC_TEMP_SENSOR_2";
- io-channels = <&adc0 1>;
- };
- adc_temp_sensor_3: temp_sensor_3 {
- enum-name = "ADC_TEMP_SENSOR_3";
- io-channels = <&adc0 10>;
- };
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_acc_int_l: acc_int_l {
- gpios = <&gpio5 0 GPIO_INPUT>;
- };
- gpio_all_sys_pwrgd: all_sys_pwrgd {
- gpios = <&gpioa 7 GPIO_INPUT>;
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- gpio_cpu_c10_gate_l: cpu_c10_gate_l {
- gpios = <&gpio6 7 GPIO_INPUT>;
- };
- gpio_ec_battery_pres_odl: ec_battery_pres_odl {
- gpios = <&gpioa 3 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpio7 4 GPIO_OUTPUT>;
- };
- gpio_ec_edp_bl_en_od: ec_edp_bl_en_od {
- gpios = <&gpiod 3 GPIO_ODR_HIGH>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- gpio_ec_entering_rw: ec_entering_rw {
- gpios = <&gpio0 3 GPIO_OUTPUT>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_ec_gsc_packet_mode: ec_gsc_packet_mode {
- gpios = <&gpio7 5 GPIO_OUTPUT>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT | GPIO_ACTIVE_LOW)>;
- enum-name = "GPIO_KBD_KSO2";
- };
- gpio_ec_pch_wake_odl: ec_pch_wake_odl {
- gpios = <&gpiob 0 GPIO_ODR_LOW>;
- };
- gpio_ec_prochot_odl: ec_prochot_odl {
- gpios = <&gpiof 1 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_dsw_pwrok: ec_soc_dsw_pwrok {
- gpios = <&gpio6 1 GPIO_OUTPUT>;
- };
- gpio_ec_soc_hdmi_hpd: ec_soc_hdmi_hpd {
- gpios = <&gpioe 4 GPIO_OUTPUT>;
- };
- gpio_ec_soc_int_odl: ec_soc_int_odl {
- gpios = <&gpio8 0 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_ec_soc_pch_pwrok_od: ec_soc_pch_pwrok_od {
- gpios = <&gpio7 2 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_pwr_btn_odl: ec_soc_pwr_btn_odl {
- gpios = <&gpioc 1 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- gpio_ec_soc_rsmrst_l: ec_soc_rsmrst_l {
- gpios = <&gpioa 6 GPIO_OUTPUT>;
- };
- gpio_ec_soc_rtcrst: ec_soc_rtcrst {
- gpios = <&gpio7 6 GPIO_OUTPUT>;
- };
- gpio_ec_soc_sys_pwrok: ec_soc_sys_pwrok {
- gpios = <&gpio3 7 GPIO_OUTPUT>;
- };
- gpio_ec_soc_vccst_pwrgd_od: ec_soc_vccst_pwrgd_od {
- gpios = <&gpioa 4 GPIO_ODR_HIGH>;
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpioa 1 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_en_kb_bl: en_kb_bl {
- gpios = <&gpioa 0 GPIO_OUTPUT>;
- enum-name = "GPIO_EN_KEYBOARD_BACKLIGHT";
- };
- gpio_en_pp3300_s5: en_pp3300_s5 {
- gpios = <&gpiob 6 GPIO_OUTPUT>;
- enum-name = "GPIO_TEMP_SENSOR_POWER";
- };
- gpio_en_pp5000_pen_x: en_pp5000_pen_x {
- gpios = <&gpioe 2 GPIO_OUTPUT>;
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpio4 0 GPIO_OUTPUT>;
- };
- gpio_en_slp_z: en_slp_z {
- gpios = <&gpioe 1 GPIO_OUTPUT>;
- };
- gpio_en_usb_a0_vbus: en_usb_a0_vbus {
- gpios = <&gpio9 1 GPIO_OUTPUT>;
- };
- gpio_gsc_ec_pwr_btn_odl: gsc_ec_pwr_btn_odl {
- gpios = <&gpio0 0 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_hdmi_sel: hdmi_sel {
- gpios = <&gpioc 6 GPIO_OUTPUT>;
- };
- gpio_imu_int_l: imu_int_l {
- gpios = <&gpio5 6 GPIO_INPUT>;
- };
- gpio_imvp91_vrrdy_od: imvp91_vrrdy_od {
- gpios = <&gpio4 3 GPIO_INPUT>;
- };
- gpio_lid_open: lid_open {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_pen_detect_odl: pen_detect_odl {
- gpios = <&gpio9 6 GPIO_INPUT_PULL_UP>;
- };
- gpio_pg_pp1050_mem_s3_od: pg_pp1050_mem_s3_od {
- gpios = <&gpiof 0 GPIO_INPUT>;
- };
- gpio_pg_pp5000_s5_od: pg_pp5000_s5_od {
- gpios = <&gpio4 2 GPIO_INPUT>;
- };
- gpio_rsmrst_pwrgd_l: rsmrst_pwrgd_l {
- gpios = <&gpio9 4 GPIO_INPUT_PULL_UP>;
- };
- gpio_slp_s0_l: slp_s0_l {
- gpios = <&gpio9 7 GPIO_INPUT>;
- };
- gpio_slp_s3_l: slp_s3_l {
- gpios = <&gpioa 5 GPIO_INPUT>;
- };
- gpio_slp_s4_l: slp_s4_l {
- gpios = <&gpio7 0 GPIO_INPUT>;
- };
- gpio_slp_sus_l: slp_sus_l {
- gpios = <&gpio6 2 GPIO_INPUT>;
- };
- gpio_sub_usb_a1_ilimit_sdp: sub_usb_a1_ilimit_sdp {
- gpios = <&gpiod 5 GPIO_OUTPUT>;
- enum-name = "GPIO_USB2_ILIM_SEL";
- };
- gpio_sys_rst_odl: sys_rst_odl {
- gpios = <&gpioc 5 GPIO_ODR_HIGH>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpio9 5 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_usb_a0_ilimit_sdp: usb_a0_ilimit_sdp {
- gpios = <&gpio8 5 GPIO_OUTPUT>;
- enum-name = "GPIO_USB1_ILIM_SEL";
- };
- gpio_usb_c0_int_odl: usb_c0_int_odl {
- gpios = <&gpio0 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_vccin_aux_vid0: vccin_aux_vid0 {
- gpios = <&gpio9 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_vccin_aux_vid1: vccin_aux_vid1 {
- gpios = <&gpioe 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_voldn_btn_odl: voldn_btn_odl {
- gpios = <&gpio9 3 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_volup_btn_odl: volup_btn_odl {
- gpios = <&gpioa 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_ec_i2c_eeprom: ec_i2c_eeprom {
- i2c-port = <&i2c0_0>;
- enum-names = "I2C_PORT_EEPROM";
- };
- i2c_ec_i2c_sensor: ec_i2c_sensor {
- i2c-port = <&i2c1_0>;
- enum-names = "I2C_PORT_SENSOR";
- };
- i2c_ec_i2c_usb_c0: ec_i2c_usb_c0 {
- i2c-port = <&i2c3_0>;
- enum-names = "I2C_PORT_USB_C0_TCPC";
- };
- i2c_ec_i2c_sub_usb_c1: ec_i2c_sub_usb_c1 {
- i2c-port = <&i2c5_1>;
- enum-names = "I2C_PORT_USB_C1_TCPC";
- };
- i2c_ec_i2c_batt: ec_i2c_batt {
- i2c-port = <&i2c7_0>;
- enum-names = "I2C_PORT_BATTERY";
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_chan0_gp45
- &adc0_chan1_gp44
- &adc0_chan4_gp41
- &adc0_chan6_gp34
- &adc0_chan10_gpe0>;
- pinctrl-names = "default";
-};
-
-&i2c0_0 {
- status = "okay";
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-};
-
-&i2c1_0 {
- status = "okay";
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-};
-
-&i2c3_0 {
- status = "okay";
- pinctrl-0 = <&i2c3_0_sda_scl_gpd0_d1>;
- pinctrl-names = "default";
-};
-
-&i2c5_1 {
- status = "okay";
- pinctrl-0 = <&i2c5_1_sda_scl_gpf4_f5>;
- pinctrl-names = "default";
-};
-
-&i2c7_0 {
- status = "okay";
- pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-&i2c_ctrl3 {
- status = "okay";
-};
-
-&i2c_ctrl5 {
- status = "okay";
-};
-
-&i2c_ctrl7 {
- status = "okay";
-};
diff --git a/zephyr/program/nissa/craask/keyboard.dtsi b/zephyr/program/nissa/craask/keyboard.dtsi
deleted file mode 100644
index 06eb6bacfb..0000000000
--- a/zephyr/program/nissa/craask/keyboard.dtsi
+++ /dev/null
@@ -1,54 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-&cros_kb_raw {
- status = "okay";
- /* No KSO2 (it's inverted and implemented by GPIO) */
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- >;
- pinctrl-1 = <
- &ksi0_gpio_gp31
- &ksi1_gpio_gp30
- &ksi2_gpio_gp27
- &ksi3_gpio_gp26
- &ksi4_gpio_gp25
- &ksi5_gpio_gp24
- &ksi6_gpio_gp23
- &ksi7_gpio_gp22
- &kso00_gpio_gp21
- &kso01_gpio_gp20
- &kso03_gpio_gp16
- &kso04_gpio_gp15
- &kso05_gpio_gp14
- &kso06_gpio_gp13
- &kso07_gpio_gp12
- &kso08_gpio_gp11
- &kso09_gpio_gp10
- &kso10_gpio_gp07
- &kso11_gpio_gp06
- &kso12_gpio_gp05
- >;
- pinctrl-names = "default", "sleep";
-};
diff --git a/zephyr/program/nissa/craask/motionsense.dtsi b/zephyr/program/nissa/craask/motionsense.dtsi
deleted file mode 100644
index 941dfa2240..0000000000
--- a/zephyr/program/nissa/craask/motionsense.dtsi
+++ /dev/null
@@ -1,256 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * Interrupt bindings for sensor devices.
- */
- lsm6dso-int = &base_accel;
- lis2dw12-int = &lid_accel;
- bmi3xx-int = &base_accel;
- bma4xx-int = &lid_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lis2dw12-mutex {
- };
-
- lid_mutex_bma422: bma422-mutex {
- };
-
- base_mutex: base-mutex {
- };
-
- base_mutex_bmi323: bmi323-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <(-1) 0 0
- 0 1 0
- 0 0 (-1)>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <1 0 0
- 0 (-1) 0
- 0 0 (-1)>;
- };
-
- base_rot_ver1: base-rotation-ver1 {
- mat33 = <(-1) 0 0
- 0 (-1) 0
- 0 0 1>;
- };
-
- lid_rot_bma422: lid-rotation-bma {
- mat33 = <1 0 0
- 0 (-1) 0
- 0 0 (-1)>;
- };
-
- base_rot_bmi323: base-rotation-bmi323 {
- mat33 = <0 (-1) 0
- (-1) 0 0
- 0 0 (-1)>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- lsm6dso_accel_data: lsm6dso-accel-drv-data {
- compatible = "cros-ec,drvdata-lsm6dso";
- status = "okay";
- };
-
- lsm6dso_gyro_data: lsm6dso-gyro-drv-data {
- compatible = "cros-ec,drvdata-lsm6dso";
- status = "okay";
- };
-
- lis2dw12_data: lis2dw12-drv-data {
- compatible = "cros-ec,drvdata-lis2dw12";
- status = "okay";
- };
-
- bma422_data: bma4xx-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
-
- bmi323_data: bmi323-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- * TODO(b/238139272): The first entries of the array must be
- * accelerometers,then gyroscope. Fix this dependency in the DTS
- * processing which makes the devicetree entries independent.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,lis2dw12";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&lis2dw12_data>;
- i2c-spi-addr-flags = "LIS2DWL_ADDR0_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,lsm6dso-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&lsm6dso_accel_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_gyro: base-gyro {
- compatible = "cros-ec,lsm6dso-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- default-range = <(1000 | ROUND_UP_FLAG)>; /* dps */
- drv-data = <&lsm6dso_gyro_data>;
- };
- };
-
- motionsense-sensor-alt {
- alt_lid_accel: alt-lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex_bma422>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&lid_rot_bma422>;
- default-range = <2>;
- drv-data = <&bma422_data>;
- i2c-spi-addr-flags = "BMA4_I2C_ADDR_PRIMARY";
- alternate-for = <&lid_accel>;
- alternate-ssfc-indicator = <&lid_sensor_1>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- alt_base_accel: alt-base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex_bmi323>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_bmi323>;
- drv-data = <&bmi323_data>;
- alternate-for = <&base_accel>;
- alternate-ssfc-indicator = <&base_sensor_1>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- alt_base_gyro: alt-base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex_bmi323>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_bmi323>;
- drv-data = <&bmi323_data>;
- alternate-for = <&base_gyro>;
- alternate-ssfc-indicator = <&base_sensor_1>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_imu &int_lid_accel>;
- };
-};
diff --git a/zephyr/program/nissa/craask/overlay.dtsi b/zephyr/program/nissa/craask/overlay.dtsi
deleted file mode 100644
index 749317cbf5..0000000000
--- a/zephyr/program/nissa/craask/overlay.dtsi
+++ /dev/null
@@ -1,414 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-#include <dt-bindings/usbc_mux.h>
-#include <dt-bindings/usb_pd_tcpm.h>
-
-/ {
- aliases {
- gpio-cbi-wp = &gpio_ec_cbi_wp;
- gpio-wp = &gpio_ec_wp_odl;
- int-wp = &int_wp_l;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- ec-console {
- compatible = "ec-console";
- disabled = "events", "lpc", "hostcmd";
- };
-
- batteries {
- default_battery: lgc {
- compatible = "lgc,ap18c8k", "battery-smart";
- };
- cosmx {
- compatible = "cosmx,ap20cbl", "battery-smart";
- };
- cosmx-2 {
- compatible = "cosmx,ap20cbl-2", "battery-smart";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_power_button
- &int_lid_open
- >;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&gpio_gsc_ec_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_wp_l: wp_l {
- irq-pin = <&gpio_ec_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&gpio_tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_imu: ec_imu {
- irq-pin = <&gpio_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "motion_interrupt";
- };
- int_lid_accel: ec_lid_accel {
- irq-pin = <&gpio_acc_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "lid_accel_interrupt";
- };
- int_vol_down: vol_down {
- irq-pin = <&gpio_voldn_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_vol_up: vol_up {
- irq-pin = <&gpio_volup_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_usb_c0: usb_c0 {
- irq-pin = <&gpio_usb_c0_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_interrupt";
- };
- int_usb_c1: usb_c1 {
- irq-pin = <&gpio_sb_1>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_interrupt";
- };
- };
-
- named-gpios {
- gpio_sb_1: sb-1 {
- gpios = <&gpio0 2 GPIO_PULL_UP>;
- no-auto-init;
- };
-
- gpio_sb_2: sb-2 {
- gpios = <&gpiod 4 GPIO_OUTPUT>;
- no-auto-init;
- };
-
- /*
- * Set I2C pins for type C sub-board to be low voltage (I2C5_1).
- * We do this for all boards, since the pins are 3.3V tolerant,
- * and the only 2 types of sub-boards used on nivviks both have
- * type-C ports on them.
- */
- gpio_sb_3: sb-3 {
- gpios = <&gpiof 4 (GPIO_OPEN_DRAIN | GPIO_VOLTAGE_1P8)>;
- no-auto-init;
- };
- gpio_sb_4: sb-4 {
- gpios = <&gpiof 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- no-auto-init;
- };
- gpio_fan_enable: fan-enable {
- gpios = <&gpio6 3 GPIO_OUTPUT>;
- no-auto-init;
- };
- ec-i2c-sensor-scl {
- gpios = <&gpio9 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-sensor-sda {
- gpios = <&gpio8 7 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- };
-
- /*
- * Aliases used for sub-board GPIOs.
- */
- aliases {
- /*
- * Input GPIO when used with type-C port 1
- * Output when used with HDMI sub-board
- */
- gpio-usb-c1-int-odl = &gpio_sb_1;
- gpio-en-rails-odl = &gpio_sb_1;
- /*
- * Sub-board with type A USB, enable.
- */
- gpio-en-usb-a1-vbus = &gpio_sb_2;
- /*
- * HPD pins for HDMI sub-board.
- */
- gpio-hdmi-en-odl = &gpio_sb_3;
- gpio-hpd-odl = &gpio_sb_4;
- /*
- * Enable S5 rails for LTE sub-board
- */
- gpio-en-sub-s5-rails = &gpio_sb_2;
- };
-
- temp_memory: memory {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_1>;
- };
- temp_charger: charger {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_2>;
- };
- temp_ambient: ambient {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_3>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- memory {
- temp_host_high = <75>;
- temp_host_halt = <85>;
- temp_host_release_high = <70>;
- temp_host_release_halt = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_memory>;
- };
- charger {
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_charger>;
- };
- ambient {
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_ambient>;
- };
- };
-
- usba {
- compatible = "cros-ec,usba-port-enable-pins";
- /*
- * sb_2 is only configured as GPIO when USB-A1 is present,
- * but it's still safe to control when disabled.
- *
- * ILIM_SEL pins are referred to by legacy enum name,
- * GPIO_USB*_ILIM_SEL. The one for port A1 is unused on
- * sub-boards that don't have USB-A so is safe to control
- * regardless of system configuration.
- */
- enable-pins = <&gpio_en_usb_a0_vbus &gpio_sb_2>;
- status = "okay";
- };
-
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- chg = <&chg_port0>;
- tcpc = <&tcpc_port0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_0>;
- };
- };
- port0-muxes {
- virtual_mux_0: virtual-mux-0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- /*
- * TODO(b:211693800): port1 may not be present on some
- * sub-boards.
- */
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&bc12_port1>;
- chg = <&chg_port1>;
- tcpc = <&tcpc_port1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_1 &anx7483_mux_1>;
- };
- usb_mux_chain_1_no_mux: usb-mux-chain-1-no-mux {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&virtual_mux_1>;
- };
- };
- port1-muxes {
- virtual_mux_1: virtual-mux-1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-
- kblight {
- compatible = "cros-ec,kblight-pwm";
- pwms = <&pwm6 6 PWM_HZ(2400) PWM_POLARITY_NORMAL>;
- };
-
- /*
- * Declare unused GPIOs so that they are shut down
- * and use minimal power
- */
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios =
- <&gpio3 2 0>,
- <&gpio3 3 0>,
- <&gpio3 5 0>,
- <&gpio3 6 0>,
- <&gpio5 7 0>,
- <&gpio6 0 0>,
- <&gpio6 3 0>,
- <&gpio6 6 0>,
- <&gpio7 3 0>,
- <&gpio8 3 0>,
- <&gpio8 6 0>,
- <&gpiob 1 0>,
- <&gpiob 7 0>,
- <&gpioc 7 0>,
- <&gpiof 2 0>,
- <&gpiof 3 0>;
- };
-};
-
-&thermistor_3V3_51K1_47K_4050B {
- status = "okay";
-};
-
-&adc_ec_vsense_pp3300_s5 {
- /*
- * Voltage divider on input has 47k upper and 220k lower legs with
- * 2714 mV full-scale reading on the ADC. Apply the largest possible
- * multiplier (without overflowing int32) to get the best possible
- * approximation of the actual ratio, but derate by a factor of two to
- * ensure unexpectedly high values won't overflow.
- */
- mul = <(791261 / 2)>;
- div = <(651975 / 2)>;
-};
-
-/* Set bus speeds for I2C */
-&i2c0_0 {
- label = "I2C_EEPROM";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-};
-
-&i2c1_0 {
- label = "I2C_SENSOR";
- clock-frequency = <I2C_BITRATE_FAST>;
-};
-
-&i2c3_0 {
- label = "I2C_USB_C0_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- /*
- * BC1.2 interrupt is shared with TCPC, so
- * IRQ is not specified here and handled by
- * usb_c0_interrupt.
- */
- };
-
- chg_port0: isl923x@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-
- tcpc_port0: raa489000@22 {
- compatible = "renesas,raa489000";
- reg = <0x22>;
- tcpc-flags = <(
- TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_VBUS_MONITOR)>;
- };
-};
-
-&i2c5_1 {
- label = "I2C_SUB_C1_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
-
- bc12_port1: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- };
-
- chg_port1: isl923x@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-
- tcpc_port1: raa489000@22 {
- compatible = "renesas,raa489000";
- reg = <0x22>;
- tcpc-flags = <(
- TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_VBUS_MONITOR)>;
- };
-
- anx7483_mux_1: anx7483-mux-1@3e {
- compatible = "analogix,anx7483";
- reg = <0x3e>;
- board-set = "anx7483_set_default_tuning";
- flags = <USB_MUX_FLAG_RESETS_IN_G3>;
- };
-};
-
-&i2c7_0 {
- label = "I2C_BATTERY";
- clock-frequency = <I2C_BITRATE_STANDARD>;
-};
-
-&pwm6 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm6_gpc0>;
- pinctrl-names = "default";
-};
-
-/* host interface */
-&espi0 {
- status = "okay";
- pinctrl-0 = <&espi_lpc_gp46_47_51_52_53_54_55_57>;
- pinctrl-names = "default";
-};
-
-/*
- * Declare GPIOs that have leakage current caused by board issues here. NPCX ec
- * will disable their input buffers before entering deep sleep and restore them
- * after waking up automatically for better power consumption.
- */
-&power_leakage_io {
- leak-gpios = <&gpioa 4 0
- &gpiof 1 0>;
-};
diff --git a/zephyr/program/nissa/craask/power_signals.dtsi b/zephyr/program/nissa/craask/power_signals.dtsi
deleted file mode 100644
index 1d2b23069d..0000000000
--- a/zephyr/program/nissa/craask/power_signals.dtsi
+++ /dev/null
@@ -1,220 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- chosen {
- intel-ap-pwrseq,espi = &espi0;
- };
-
- common-pwrseq {
- compatible = "intel,ap-pwrseq";
-
- sys-pwrok-delay = <10>;
- all-sys-pwrgd-timeout = <20>;
- };
-
- pwr-en-pp5000-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP5000_S5 enable output to regulator";
- enum-name = "PWR_EN_PP5000_A";
- gpios = <&gpio4 0 0>;
- output;
- };
- pwr-en-pp3300-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP3300_S5 enable output to LS";
- enum-name = "PWR_EN_PP3300_A";
- gpios = <&gpiob 6 0>;
- output;
- };
- pwr-pg-ec-rsmrst-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST power good from regulator";
- enum-name = "PWR_RSMRST";
- gpios = <&gpio9 4 0>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-pch-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST output to PCH";
- enum-name = "PWR_EC_PCH_RSMRST";
- gpios = <&gpioa 6 0>;
- output;
- };
- pwr-slp-s0-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S0_L input from PCH";
- enum-name = "PWR_SLP_S0";
- gpios = <&gpio9 7 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-s3-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S3_L input from PCH";
- enum-name = "PWR_SLP_S3";
- gpios = <&gpioa 5 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-sus-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_SUS_L input from PCH";
- enum-name = "PWR_SLP_SUS";
- gpios = <&gpio6 2 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-soc-dsw-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "DSW_PWROK output to PCH";
- enum-name = "PWR_EC_SOC_DSW_PWROK";
- gpios = <&gpio6 1 0>;
- output;
- };
- pwr-vccst-pwrgd-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VCCST_PWRGD output to PCH";
- enum-name = "PWR_VCCST_PWRGD";
- gpios = <&gpioa 4 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-imvp9-vrrdy-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VRRDY input from IMVP9";
- enum-name = "PWR_IMVP9_VRRDY";
- gpios = <&gpio4 3 0>;
- };
- pwr-pch-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PCH_PWROK output to PCH";
- enum-name = "PWR_PCH_PWROK";
- gpios = <&gpio7 2 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-ec-pch-sys-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_PWROK output to PCH";
- enum-name = "PWR_EC_PCH_SYS_PWROK";
- gpios = <&gpio3 7 0>;
- output;
- };
- pwr-sys-rst-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_RESET# output to PCH";
- enum-name = "PWR_SYS_RST";
- gpios = <&gpioc 5 (GPIO_ACTIVE_LOW|GPIO_OPEN_DRAIN)>;
- output;
- };
- pwr-slp-s4 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S4 virtual wire input from PCH";
- enum-name = "PWR_SLP_S4";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S4";
- vw-invert;
- };
- pwr-slp-s5 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S5 virtual wire input from PCH";
- enum-name = "PWR_SLP_S5";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S5";
- vw-invert;
- };
- pwr-all-sys-pwrgd {
- compatible = "intel,ap-pwrseq-external";
- dbg-label = "Combined all power good";
- enum-name = "PWR_ALL_SYS_PWRGD";
- };
- pwr-adc-pp3300 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP3300 PWROK (from ADC)";
- enum-name = "PWR_DSW_PWROK";
- trigger-high = <&cmp_pp3300_s5_high>;
- trigger-low = <&cmp_pp3300_s5_low>;
- };
- pwr-adc-pp1p05 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP1P05 PWROK (from ADC)";
- enum-name = "PWR_PG_PP1P05";
- trigger-high = <&cmp_pp1p05_high>;
- trigger-low = <&cmp_pp1p05_low>;
- };
-
- adc-cmp {
- cmp_pp3300_s5_high: pp3300_high {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 6>;
- comparison = "ADC_CMP_NPCX_GREATER";
- /*
- * This is 90% of nominal voltage considering voltage
- * divider on ADC input.
- */
- threshold-mv = <2448>;
- };
- cmp_pp3300_s5_low: pp3300_low {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 6>;
- comparison = "ADC_CMP_NPCX_LESS_OR_EQUAL";
- threshold-mv = <2448>;
- };
- cmp_pp1p05_high: pp1p05_high {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 4>;
- comparison = "ADC_CMP_NPCX_GREATER";
- /* Setting at 90% of nominal voltage */
- threshold-mv = <945>;
- };
- cmp_pp1p05_low: pp1p05_low {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 4>;
- comparison = "ADC_CMP_NPCX_LESS_OR_EQUAL";
- threshold-mv = <945>;
- };
- };
-};
-
-/*
- * Because the power signals directly reference the GPIOs,
- * the correspinding named-gpios need to have no-auto-init set.
- */
-&gpio_ec_soc_dsw_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_pch_pwrok_od {
- no-auto-init;
-};
-&gpio_ec_soc_rsmrst_l {
- no-auto-init;
-};
-&gpio_ec_soc_sys_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_vccst_pwrgd_od {
- no-auto-init;
-};
-&gpio_en_pp3300_s5 {
- no-auto-init;
-};
-&gpio_en_pp5000_s5 {
- no-auto-init;
-};
-&gpio_imvp91_vrrdy_od {
- no-auto-init;
-};
-&gpio_rsmrst_pwrgd_l {
- no-auto-init;
-};
-&gpio_slp_s0_l {
- no-auto-init;
-};
-&gpio_slp_s3_l {
- no-auto-init;
-};
-&gpio_slp_s4_l {
- no-auto-init;
-};
-&gpio_slp_sus_l {
- no-auto-init;
-};
-&gpio_sys_rst_odl {
- no-auto-init;
-};
diff --git a/zephyr/program/nissa/craask/project.conf b/zephyr/program/nissa/craask/project.conf
deleted file mode 100644
index 85cef7caba..0000000000
--- a/zephyr/program/nissa/craask/project.conf
+++ /dev/null
@@ -1,17 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_BOARD_CRAASK=y
-CONFIG_PLATFORM_EC_OCPC=y
-
-# Sensor drivers
-CONFIG_PLATFORM_EC_ACCELGYRO_LSM6DSO=y
-CONFIG_PLATFORM_EC_ACCEL_BMA4XX=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI3XX=y
-CONFIG_PLATFORM_EC_DYNAMIC_MOTION_SENSOR_COUNT=y
-
-CONFIG_PLATFORM_EC_BUTTONS_RUNTIME_CONFIG=y
-
-CONFIG_PLATFORM_EC_KEYBOARD_FACTORY_TEST=y
diff --git a/zephyr/program/nissa/craask/project.overlay b/zephyr/program/nissa/craask/project.overlay
deleted file mode 100644
index 6107b6ef15..0000000000
--- a/zephyr/program/nissa/craask/project.overlay
+++ /dev/null
@@ -1,15 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "../cbi.dtsi"
-
-#include "cbi.dtsi"
-#include "fan.dtsi"
-#include "generated.dtsi"
-#include "keyboard.dtsi"
-#include "motionsense.dtsi"
-#include "overlay.dtsi"
-#include "power_signals.dtsi"
-#include "pwm_leds.dtsi"
diff --git a/zephyr/program/nissa/craask/pwm_leds.dtsi b/zephyr/program/nissa/craask/pwm_leds.dtsi
deleted file mode 100644
index e55aa1c9ef..0000000000
--- a/zephyr/program/nissa/craask/pwm_leds.dtsi
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_led0: pwm_led_0 {
- pwms = <&pwm2 2 PWM_HZ(324) PWM_POLARITY_INVERTED>,
- <&pwm0 0 PWM_HZ(324) PWM_POLARITY_INVERTED>,
- <&pwm1 1 PWM_HZ(324) PWM_POLARITY_INVERTED>;
- };
- };
-
- cros-pwmleds {
- compatible = "cros-ec,pwm-leds";
-
- leds = <&pwm_led0>;
-
- /*<red green blue>*/
- color-map-red = <100 0 0>;
- color-map-green = < 0 100 0>;
- color-map-blue = < 0 0 100>;
- color-map-yellow = < 0 50 50>;
- color-map-white = <100 100 100>;
- color-map-amber = < 90 10 0>;
-
- brightness-range = <100 100 100 0 0 0>;
-
- #address-cells = <1>;
- #size-cells = <0>;
-
- pwm_led_0@0 {
- reg = <0>;
- ec-led-name = "EC_LED_ID_BATTERY_LED";
- };
- };
-};
-
-/* Enable LEDs to work while CPU suspended */
-
-&pwm0 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm0_gpc3>;
- pinctrl-names = "default";
-};
-
-&pwm1 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm1_gpc2>;
- pinctrl-names = "default";
-};
-
-&pwm2 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/craask/src/charger.c b/zephyr/program/nissa/craask/src/charger.c
deleted file mode 100644
index 3984045a19..0000000000
--- a/zephyr/program/nissa/craask/src/charger.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "battery.h"
-#include "charger.h"
-#include "charger/isl923x_public.h"
-#include "console.h"
-#include "extpower.h"
-#include "nissa_common.h"
-#include "usb_pd.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-int extpower_is_present(void)
-{
- int port;
- int rv;
- bool acok;
-
- for (port = 0; port < board_get_usb_pd_port_count(); port++) {
- rv = raa489000_is_acok(port, &acok);
- if ((rv == EC_SUCCESS) && acok)
- return 1;
- }
-
- return 0;
-}
-
-/*
- * Craask does not have a GPIO indicating whether extpower is present,
- * so detect using the charger(s).
- */
-__override void board_check_extpower(void)
-{
- static int last_extpower_present;
- int extpower_present = extpower_is_present();
-
- if (last_extpower_present ^ extpower_present)
- extpower_handle_update(extpower_present);
-
- last_extpower_present = extpower_present;
-}
-
-__override void board_hibernate(void)
-{
- /* Shut down the chargers */
- if (board_get_usb_pd_port_count() == 2)
- raa489000_hibernate(CHARGER_SECONDARY, true);
- raa489000_hibernate(CHARGER_PRIMARY, true);
- LOG_INF("Charger(s) hibernated");
- cflush();
-}
diff --git a/zephyr/program/nissa/craask/src/fan.c b/zephyr/program/nissa/craask/src/fan.c
deleted file mode 100644
index c01ee3d752..0000000000
--- a/zephyr/program/nissa/craask/src/fan.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "cros_cbi.h"
-#include "fan.h"
-#include "gpio/gpio.h"
-#include "hooks.h"
-#include "nissa_common.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-static void fan_init(void)
-{
- int ret;
- uint32_t val;
- /*
- * Retrieve the fan config.
- */
- ret = cros_cbi_get_fw_config(FW_FAN, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_FAN);
- return;
- }
- if (val != FW_FAN_PRESENT) {
- /* Disable the fan */
- fan_set_count(0);
- } else {
- /* Configure the fan enable GPIO */
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_fan_enable),
- GPIO_OUTPUT);
- }
-}
-DECLARE_HOOK(HOOK_INIT, fan_init, HOOK_PRIO_POST_FIRST);
diff --git a/zephyr/program/nissa/craask/src/form_factor.c b/zephyr/program/nissa/craask/src/form_factor.c
deleted file mode 100644
index 56d0c50f73..0000000000
--- a/zephyr/program/nissa/craask/src/form_factor.c
+++ /dev/null
@@ -1,133 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "accelgyro.h"
-#include "button.h"
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-#include "driver/accel_bma4xx.h"
-#include "driver/accel_lis2dw12_public.h"
-#include "driver/accelgyro_bmi323.h"
-#include "driver/accelgyro_lsm6dso.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "motion_sense.h"
-#include "motionsense_sensors.h"
-#include "nissa_common.h"
-#include "tablet_mode.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-/*
- * Mainboard orientation support.
- */
-
-#define LIS_ALT_MAT SENSOR_ROT_STD_REF_NAME(DT_NODELABEL(lid_rot_bma422))
-#define BMA_ALT_MAT SENSOR_ROT_STD_REF_NAME(DT_NODELABEL(lid_rot_ref))
-#define ALT_MAT SENSOR_ROT_STD_REF_NAME(DT_NODELABEL(base_rot_ver1))
-#define LID_SENSOR SENSOR_ID(DT_NODELABEL(lid_accel))
-#define BASE_SENSOR SENSOR_ID(DT_NODELABEL(base_accel))
-#define BASE_GYRO SENSOR_ID(DT_NODELABEL(base_gyro))
-#define ALT_LID_S SENSOR_ID(DT_NODELABEL(alt_lid_accel))
-
-static bool use_alt_sensor;
-static bool use_alt_lid_accel;
-
-void motion_interrupt(enum gpio_signal signal)
-{
- if (use_alt_sensor)
- bmi3xx_interrupt(signal);
- else
- lsm6dso_interrupt(signal);
-}
-
-void lid_accel_interrupt(enum gpio_signal signal)
-{
- if (use_alt_lid_accel)
- bma4xx_interrupt(signal);
- else
- lis2dw12_interrupt(signal);
-}
-
-static void form_factor_init(void)
-{
- int ret;
- uint32_t val;
- enum nissa_sub_board_type sb = nissa_get_sb_type();
-
- ret = cbi_get_board_version(&val);
- if (ret != EC_SUCCESS) {
- LOG_ERR("Error retrieving CBI BOARD_VER.");
- return;
- }
- /*
- * The volume up/down button are exchanged on ver3 USB
- * sub board.
- *
- * LTE:
- * volup -> gpioa2, voldn -> gpio93
- * USB:
- * volup -> gpio93, voldn -> gpioa2
- */
- if (val == 3 && sb == NISSA_SB_C_A) {
- LOG_INF("Volume up/down btn exchanged on ver3 USB sku");
- buttons[BUTTON_VOLUME_UP].gpio = GPIO_VOLUME_DOWN_L;
- buttons[BUTTON_VOLUME_DOWN].gpio = GPIO_VOLUME_UP_L;
- }
-
- /*
- * If the board version is 1
- * use ver1 rotation matrix.
- */
- if (val == 1) {
- LOG_INF("Switching to ver1 base");
- motion_sensors[BASE_SENSOR].rot_standard_ref = &ALT_MAT;
- motion_sensors[BASE_GYRO].rot_standard_ref = &ALT_MAT;
- }
-
- /*
- * If the firmware config indicates
- * an craaskbowl form factor, use the alternative
- * rotation matrix.
- */
- ret = cros_cbi_get_fw_config(FW_LID_INVERSION, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d",
- FW_LID_INVERSION);
- return;
- }
- if (val == FW_LID_XY_ROT_180) {
- LOG_INF("Lid sensor placement rotate 180 on xy plane");
- motion_sensors[LID_SENSOR].rot_standard_ref = &LIS_ALT_MAT;
- motion_sensors_alt[ALT_LID_S].rot_standard_ref = &BMA_ALT_MAT;
- }
-
- /* check which motion sensors are used */
- use_alt_sensor = cros_cbi_ssfc_check_match(
- CBI_SSFC_VALUE_ID(DT_NODELABEL(base_sensor_1)));
- use_alt_lid_accel = cros_cbi_ssfc_check_match(
- CBI_SSFC_VALUE_ID(DT_NODELABEL(lid_sensor_1)));
-
- motion_sensors_check_ssfc();
-
- /* Check if it's clamshell or convertible */
- ret = cros_cbi_get_fw_config(FORM_FACTOR, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FORM_FACTOR);
- return;
- }
- if (val == CLAMSHELL) {
- LOG_INF("Clamshell: disable motionsense function.");
- motion_sensor_count = 0;
- gmr_tablet_switch_disable();
- gpio_disable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_imu));
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_imu_int_l),
- GPIO_DISCONNECTED);
- }
-}
-DECLARE_HOOK(HOOK_INIT, form_factor_init, HOOK_PRIO_POST_I2C);
diff --git a/zephyr/program/nissa/craask/src/kb_backlight.c b/zephyr/program/nissa/craask/src/kb_backlight.c
deleted file mode 100644
index 108cbb3abd..0000000000
--- a/zephyr/program/nissa/craask/src/kb_backlight.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "board_config.h"
-#include "common.h"
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-__override uint32_t board_override_feature_flags0(uint32_t flags0)
-{
- int ret;
- uint32_t val;
-
- /*
- * Remove keyboard backlight feature for devices that don't support it.
- */
- ret = cros_cbi_get_fw_config(FW_KB_BL, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_KB_BL);
- return flags0;
- }
-
- if (val == FW_KB_BL_NOT_PRESENT)
- return (flags0 & ~EC_FEATURE_MASK_0(EC_FEATURE_PWM_KEYB));
- else
- return flags0;
-}
diff --git a/zephyr/program/nissa/craask/src/keyboard.c b/zephyr/program/nissa/craask/src/keyboard.c
deleted file mode 100644
index 1d2102b655..0000000000
--- a/zephyr/program/nissa/craask/src/keyboard.c
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ec_commands.h"
-
-static const struct ec_response_keybd_config craask_kb = {
- .num_top_row_keys = 10,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_REFRESH, /* T2 */
- TK_FULLSCREEN, /* T3 */
- TK_OVERVIEW, /* T4 */
- TK_SNAPSHOT, /* T5 */
- TK_BRIGHTNESS_DOWN, /* T6 */
- TK_BRIGHTNESS_UP, /* T7 */
- TK_VOL_MUTE, /* T8 */
- TK_VOL_DOWN, /* T9 */
- TK_VOL_UP, /* T10 */
- },
- .capabilities = KEYBD_CAP_SCRNLOCK_KEY,
-};
-
-__override const struct ec_response_keybd_config *
-board_vivaldi_keybd_config(void)
-{
- return &craask_kb;
-}
-
-/*
- * We have total 30 pins for keyboard connecter {-1, -1} mean
- * the N/A pin that don't consider it and reserve index 0 area
- * that we don't have pin 0.
- */
-const int keyboard_factory_scan_pins[][2] = {
- { -1, -1 }, { 0, 5 }, { 1, 1 }, { 1, 0 }, { 0, 6 }, { 0, 7 },
- { -1, -1 }, { -1, -1 }, { 1, 4 }, { 1, 3 }, { -1, -1 }, { 1, 6 },
- { 1, 7 }, { 3, 1 }, { 2, 0 }, { 1, 5 }, { 2, 6 }, { 2, 7 },
- { 2, 1 }, { 2, 4 }, { 2, 5 }, { 1, 2 }, { 2, 3 }, { 2, 2 },
- { 3, 0 }, { -1, -1 }, { 0, 4 }, { -1, -1 }, { 8, 2 }, { -1, -1 },
- { -1, -1 },
-};
-const int keyboard_factory_scan_pins_used =
- ARRAY_SIZE(keyboard_factory_scan_pins);
diff --git a/zephyr/program/nissa/craask/src/led.c b/zephyr/program/nissa/craask/src/led.c
deleted file mode 100644
index 0af0202cf4..0000000000
--- a/zephyr/program/nissa/craask/src/led.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * Battery LED control for nissa
- */
-#include "common.h"
-#include "ec_commands.h"
-#include "led_common.h"
-#include "led_onoff_states.h"
-#include "led_pwm.h"
-
-__override const int led_charge_lvl_1 = 5;
-__override const int led_charge_lvl_2 = 97;
-__override struct led_descriptor
- led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
- [STATE_CHARGING_LVL_1] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_CHARGING_LVL_2] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_CHARGING_FULL_CHARGE] = { { EC_LED_COLOR_BLUE,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S0] = { { EC_LED_COLOR_BLUE,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S0_BAT_LOW] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S3] = { { EC_LED_COLOR_AMBER,
- 1 * LED_ONE_SEC },
- { LED_OFF, 3 * LED_ONE_SEC } },
- [STATE_DISCHARGE_S5] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_BATTERY_ERROR] = { { EC_LED_COLOR_AMBER,
- 1 * LED_ONE_SEC },
- { LED_OFF, 1 * LED_ONE_SEC } },
- [STATE_FACTORY_TEST] = { { EC_LED_COLOR_AMBER,
- 2 * LED_ONE_SEC },
- { EC_LED_COLOR_BLUE,
- 2 * LED_ONE_SEC } },
- };
-
-__override void led_set_color_battery(enum ec_led_colors color)
-{
- switch (color) {
- case EC_LED_COLOR_RED:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_RED);
- break;
- case EC_LED_COLOR_BLUE:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_BLUE);
- break;
- case EC_LED_COLOR_AMBER:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_AMBER);
- break;
- default: /* LED_OFF and other unsupported colors */
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, -1);
- break;
- }
-}
diff --git a/zephyr/program/nissa/craask/src/usbc.c b/zephyr/program/nissa/craask/src/usbc.c
deleted file mode 100644
index 1e0c1627bb..0000000000
--- a/zephyr/program/nissa/craask/src/usbc.c
+++ /dev/null
@@ -1,251 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charge_state_v2.h"
-#include "chipset.h"
-#include "driver/charger/isl923x_public.h"
-#include "driver/retimer/anx7483_public.h"
-#include "driver/tcpm/raa489000.h"
-#include "driver/tcpm/tcpci.h"
-#include "hooks.h"
-#include "nissa_common.h"
-#include "system.h"
-#include "usb_mux.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-int board_is_sourcing_vbus(int port)
-{
- int regval;
-
- tcpc_read(port, TCPC_REG_POWER_STATUS, &regval);
- return !!(regval & TCPC_REG_POWER_STATUS_SOURCING_VBUS);
-}
-
-int board_set_active_charge_port(int port)
-{
- int is_real_port = (port >= 0 && port < CONFIG_USB_PD_PORT_MAX_COUNT);
- int i;
- int old_port;
-
- if (!is_real_port && port != CHARGE_PORT_NONE)
- return EC_ERROR_INVAL;
-
- old_port = charge_manager_get_active_charge_port();
-
- LOG_INF("New chg p%d", port);
-
- /* Disable all ports. */
- if (port == CHARGE_PORT_NONE) {
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- tcpc_write(i, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_LOW);
- raa489000_enable_asgate(i, false);
- }
-
- return EC_SUCCESS;
- }
-
- /* Check if port is sourcing VBUS. */
- if (board_is_sourcing_vbus(port)) {
- LOG_WRN("Skip enable p%d", port);
- return EC_ERROR_INVAL;
- }
-
- /*
- * Turn off the other ports' sink path FETs, before enabling the
- * requested charge port.
- */
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- if (i == port)
- continue;
-
- if (tcpc_write(i, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_LOW))
- LOG_WRN("p%d: sink path disable failed.", i);
- raa489000_enable_asgate(i, false);
- }
-
- /*
- * Stop the charger IC from switching while changing ports. Otherwise,
- * we can overcurrent the adapter we're switching to. (crbug.com/926056)
- */
- if (old_port != CHARGE_PORT_NONE)
- charger_discharge_on_ac(1);
-
- /* Enable requested charge port. */
- if (raa489000_enable_asgate(port, true) ||
- tcpc_write(port, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_HIGH)) {
- LOG_WRN("p%d: sink path enable failed.", port);
- charger_discharge_on_ac(0);
- return EC_ERROR_UNKNOWN;
- }
-
- /* Allow the charger IC to begin/continue switching. */
- charger_discharge_on_ac(0);
-
- return EC_SUCCESS;
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- uint16_t status = 0;
- int regval;
-
- /*
- * The interrupt line is shared between the TCPC and BC1.2 detector IC.
- * Therefore, go out and actually read the alert registers to report the
- * alert status.
- */
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl))) {
- if (!tcpc_read16(0, TCPC_REG_ALERT, &regval)) {
- /* The TCPCI Rev 1.0 spec says to ignore bits 14:12. */
- if (!(tcpc_config[0].flags & TCPC_FLAGS_TCPCI_REV2_0))
- regval &= ~((1 << 14) | (1 << 13) | (1 << 12));
-
- if (regval)
- status |= PD_STATUS_TCPC_ALERT_0;
- }
- }
-
- if (board_get_usb_pd_port_count() == 2 &&
- !gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- if (!tcpc_read16(1, TCPC_REG_ALERT, &regval)) {
- /* TCPCI spec Rev 1.0 says to ignore bits 14:12. */
- if (!(tcpc_config[1].flags & TCPC_FLAGS_TCPCI_REV2_0))
- regval &= ~((1 << 14) | (1 << 13) | (1 << 12));
-
- if (regval)
- status |= PD_STATUS_TCPC_ALERT_1;
- }
- }
-
- return status;
-}
-
-void pd_power_supply_reset(int port)
-{
- /* Disable VBUS */
- tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SRC_CTRL_LOW);
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-__override void typec_set_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- if (port < 0 || port >= CONFIG_USB_PD_PORT_MAX_COUNT)
- return;
-
- raa489000_set_output_current(port, rp);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- int rv;
-
- if (port >= CONFIG_USB_PD_PORT_MAX_COUNT)
- return EC_ERROR_INVAL;
-
- /* Disable charging. */
- rv = tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SNK_CTRL_LOW);
- if (rv)
- return rv;
-
- /* Our policy is not to source VBUS when the AP is off. */
- if (chipset_in_state(CHIPSET_STATE_ANY_OFF))
- return EC_ERROR_NOT_POWERED;
-
- /* Provide Vbus. */
- rv = tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SRC_CTRL_HIGH);
- if (rv)
- return rv;
-
- rv = raa489000_enable_asgate(port, true);
- if (rv)
- return rv;
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-void board_reset_pd_mcu(void)
-{
- /*
- * TODO(b:147316511): could send a reset command to the TCPC here
- * if needed.
- */
-}
-
-/*
- * Because the TCPCs and BC1.2 chips share interrupt lines, it's possible
- * for an interrupt to be lost if one asserts the IRQ, the other does the same
- * then the first releases it: there will only be one falling edge to trigger
- * the interrupt, and the line will be held low. We handle this by running a
- * deferred check after a falling edge to see whether the IRQ is still being
- * asserted. If it is, we assume an interrupt may have been lost and we need
- * to poll each chip for events again.
- */
-#define USBC_INT_POLL_DELAY_US 5000
-
-static void poll_c0_int(void);
-DECLARE_DEFERRED(poll_c0_int);
-static void poll_c1_int(void);
-DECLARE_DEFERRED(poll_c1_int);
-
-static void usbc_interrupt_trigger(int port)
-{
- schedule_deferred_pd_interrupt(port);
- usb_charger_task_set_event(port, USB_CHG_EVENT_BC12);
-}
-
-static inline void poll_usb_gpio(int port, const struct gpio_dt_spec *gpio,
- const struct deferred_data *ud)
-{
- if (!gpio_pin_get_dt(gpio)) {
- usbc_interrupt_trigger(port);
- hook_call_deferred(ud, USBC_INT_POLL_DELAY_US);
- }
-}
-
-static void poll_c0_int(void)
-{
- poll_usb_gpio(0, GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl),
- &poll_c0_int_data);
-}
-
-static void poll_c1_int(void)
-{
- poll_usb_gpio(1, GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl),
- &poll_c1_int_data);
-}
-
-void usb_interrupt(enum gpio_signal signal)
-{
- int port;
- const struct deferred_data *ud;
-
- if (signal == GPIO_SIGNAL(DT_NODELABEL(gpio_usb_c0_int_odl))) {
- port = 0;
- ud = &poll_c0_int_data;
- } else {
- port = 1;
- ud = &poll_c1_int_data;
- }
- /*
- * We've just been called from a falling edge, so there's definitely
- * no lost IRQ right now. Cancel any pending check.
- */
- hook_call_deferred(ud, -1);
- /* Trigger polling of TCPC and BC1.2 in respective tasks */
- usbc_interrupt_trigger(port);
- /* Check for lost interrupts in a bit */
- hook_call_deferred(ud, USBC_INT_POLL_DELAY_US);
-}
diff --git a/zephyr/program/nissa/include/nissa_common.h b/zephyr/program/nissa/include/nissa_common.h
deleted file mode 100644
index 7cdaba2e50..0000000000
--- a/zephyr/program/nissa/include/nissa_common.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Nissa common declarations */
-
-#ifndef __CROS_EC_NISSA_NISSA_COMMON_H__
-#define __CROS_EC_NISSA_NISSA_COMMON_H__
-
-#include "usb_mux.h"
-
-enum nissa_sub_board_type {
- NISSA_SB_UNKNOWN = -1, /* Uninitialised */
- NISSA_SB_NONE = 0, /* No board defined */
- NISSA_SB_C_A = 1, /* USB type C, USB type A */
- NISSA_SB_C_LTE = 2, /* USB type C, WWAN LTE */
- NISSA_SB_HDMI_A = 3, /* HDMI, USB type A */
-};
-
-enum nissa_sub_board_type nissa_get_sb_type(void);
-
-#endif /* __CROS_EC_NISSA_NISSA_COMMON_H__ */
diff --git a/zephyr/program/nissa/include/nissa_hdmi.h b/zephyr/program/nissa/include/nissa_hdmi.h
deleted file mode 100644
index 9f2f533ba7..0000000000
--- a/zephyr/program/nissa/include/nissa_hdmi.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Nissa shared HDMI sub-board functionality */
-
-#ifndef __CROS_EC_NISSA_NISSA_HDMI_H__
-#define __CROS_EC_NISSA_NISSA_HDMI_H__
-
-#include "common.h"
-
-/** True if the board supports an HDMI sub-board. */
-#define NISSA_BOARD_HAS_HDMI_SUPPORT DT_NODE_EXISTS(DT_NODELABEL(gpio_hdmi_sel))
-
-/**
- * Configure the GPIO that controls core rails on the HDMI sub-board.
- *
- * This is the gpio_en_rails_odl pin, which is configured as active-low
- * open-drain output to enable power to the HDMI sub-board (typically when the
- * AP is in S5 or above).
- *
- * This function must be called if the pin is connected to the HDMI board and
- * power is not enabled by default.
- */
-void nissa_configure_hdmi_rails(void);
-
-/**
- * Configure the GPIO that controls the HDMI VCC pin on the HDMI sub-board.
- *
- * This is the gpio_hdmi_en_odl pin, which is configured as active-low
- * open-drain output to enable the VCC pin on the HDMI connector (typically when
- * the AP is on, in S0 or S0ix).
- *
- * This function must be called if the pin is connected to the HDMI board and
- * VCC is not enabled by default.
- */
-void nissa_configure_hdmi_vcc(void);
-
-/**
- * Configure the GPIOS controlling HDMI sub-board power (core rails and VCC).
- *
- * This function is called from shared code while configuring sub-boards, and
- * used if an HDMI sub-board is present. The default implementation enables the
- * core rails control pin (nissa_configure_hdmi_rails) but not VCC
- * (nissa_configure_hdmi_vcc), assuming that the pin for VCC is not connected
- * connected on most boards (and that VCC will be turned on whenever the core
- * rails are turned on).
- *
- * A board should override this function if it needs to enable more IOs for
- * HDMI, or if some pins need to be conditionally enabled.
- */
-__override_proto void nissa_configure_hdmi_power_gpios(void);
-
-#endif /* __CROS_EC_NISSA_NISSA_HDMI_H__ */
diff --git a/zephyr/program/nissa/it8xxx2_program.conf b/zephyr/program/nissa/it8xxx2_program.conf
deleted file mode 100644
index 475f34cf9d..0000000000
--- a/zephyr/program/nissa/it8xxx2_program.conf
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_CROS_FLASH_IT8XXX2=y
-CONFIG_CROS_SYSTEM_IT8XXX2=y
-CONFIG_ESPI_IT8XXX2=y
-CONFIG_FPU=y
-# rv32iafc/ilp32f is not supported by the toolchain, so use soft-float
-CONFIG_FLOAT_HARD=n
-
-# EC performance is bad; limiting sensor data rate helps keep it from degrading
-# so much that it causes problems. b/240485526, b/230818312
-CONFIG_PLATFORM_EC_MAX_SENSOR_FREQ_MILLIHZ=100000
-
-# Allow more time for the charger to stabilise
-CONFIG_PLATFORM_EC_POWER_BUTTON_INIT_TIMEOUT=5
-
-# ITE has more space, so don't restrict shell
-CONFIG_SHELL_MINIMAL=n
-
-# RAM savings, since this chip is tight on available RAM.
-# It's useful to store a lot of logs for the host to request, but the default 4k
-# is pretty large.
-CONFIG_PLATFORM_EC_HOSTCMD_CONSOLE_BUF_SIZE=2048
-# Our threads have short names, save 20 bytes per thread
-CONFIG_THREAD_MAX_NAME_LEN=12
-# Task stacks, tuned by experiment. Most expanded to prevent overflow, and a few
-# shrunk to save RAM.
-CONFIG_AP_PWRSEQ_STACK_SIZE=1408
-CONFIG_TASK_HOSTCMD_STACK_SIZE=1280
-CONFIG_TASK_MOTIONSENSE_STACK_SIZE=1280
-CONFIG_TASK_PD_INT_STACK_SIZE=1280
-
-# TCPC+PPC: ITE on-chip for C0, PS8745 for optional C1
-CONFIG_PLATFORM_EC_USB_PD_TCPM_ITE_ON_CHIP=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_DRIVER_IT8XXX2=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_PS8745=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_CHARGER=y
-# SM5803 controls power path on both ports
-CONFIG_PLATFORM_EC_USB_PD_5V_CHARGER_CTRL=y
-# SM5803 can discharge VBUS, but not via one of the available options;
-# pd_power_supply_reset() does discharge.
-CONFIG_PLATFORM_EC_USB_PD_DISCHARGE=n
-# The EC is put into programming mode while firmware is running
-# (after releasing reset) and PD after being reset will hard-reset
-# the port if a contract was already set up. If the system has no
-# battery, this will prevent programming because it will brown out
-# the system and reset. Inserting a delay gives the programmer more
-# time to put the EC into programming mode.
-CONFIG_PLATFORM_EC_USB_PD_STARTUP_DELAY_MS=2000
-
-# Charger driver and configuration
-CONFIG_PLATFORM_EC_OCPC=y
-CONFIG_PLATFORM_EC_CHARGER_SM5803=y
-CONFIG_PLATFORM_EC_OCPC_DEF_RBATT_MOHMS=21
-CONFIG_PLATFORM_EC_PD_MAX_VOLTAGE_MV=15000
-# SM5803 is very inefficient in buck-boost operation, so DPS doesn't help and
-# might actually contribute to charger failures.
-CONFIG_PLATFORM_EC_USB_PD_DPS=n
-
-# VSENSE: PP3300_S5 & PP1050_PROC
-CONFIG_VCMP_IT8XXX2=y
-CONFIG_SENSOR=y
-CONFIG_SENSOR_SHELL=n
diff --git a/zephyr/program/nissa/joxer/cbi.dtsi b/zephyr/program/nissa/joxer/cbi.dtsi
deleted file mode 100644
index afbd125b32..0000000000
--- a/zephyr/program/nissa/joxer/cbi.dtsi
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- nissa-fw-config {
- compatible = "cros-ec,cbi-fw-config";
-
- /*
- * FW_CONFIG field to indicate which keyboard layout
- * should be used.
- */
- keyboard {
- enum-name = "FW_KB_LAYOUT";
- start = <3>;
- size = <2>;
-
- layout-1 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_LAYOUT_DEFAULT";
- value = <0>;
- default;
- };
- layout-2 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_LAYOUT_US2";
- value = <1>;
- };
- };
- };
-};
diff --git a/zephyr/program/nissa/joxer/generated.dtsi b/zephyr/program/nissa/joxer/generated.dtsi
deleted file mode 100644
index 22214b9726..0000000000
--- a/zephyr/program/nissa/joxer/generated.dtsi
+++ /dev/null
@@ -1,260 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * This file is auto-generated - do not edit!
- */
-
-/ {
-
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_ec_vsense_pp1050_proc: ec_vsense_pp1050_proc {
- enum-name = "ADC_PP1050_PROC";
- io-channels = <&adc0 14>;
- };
- adc_ec_vsense_pp3300_s5: ec_vsense_pp3300_s5 {
- enum-name = "ADC_PP3300_S5";
- io-channels = <&adc0 0>;
- };
- adc_temp_sensor_1: temp_sensor_1 {
- enum-name = "ADC_TEMP_SENSOR_1";
- io-channels = <&adc0 2>;
- };
- adc_temp_sensor_2: temp_sensor_2 {
- enum-name = "ADC_TEMP_SENSOR_2";
- io-channels = <&adc0 3>;
- };
- adc_temp_sensor_3: temp_sensor_3 {
- enum-name = "ADC_TEMP_SENSOR_3";
- io-channels = <&adc0 13>;
- };
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_acc_int_l: acc_int_l {
- gpios = <&gpioc 0 GPIO_INPUT>;
- };
- gpio_all_sys_pwrgd: all_sys_pwrgd {
- gpios = <&gpiob 7 GPIO_INPUT>;
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioh 5 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- gpio_cpu_c10_gate_l: cpu_c10_gate_l {
- gpios = <&gpiog 1 GPIO_INPUT>;
- };
- gpio_ec_battery_pres_odl: ec_battery_pres_odl {
- gpios = <&gpioi 4 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpioj 5 GPIO_OUTPUT>;
- };
- gpio_ec_edp_bl_en_od: ec_edp_bl_en_od {
- gpios = <&gpiok 4 GPIO_ODR_HIGH>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- gpio_ec_entering_rw: ec_entering_rw {
- gpios = <&gpioc 7 GPIO_OUTPUT>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_ec_gsc_packet_mode: ec_gsc_packet_mode {
- gpios = <&gpioh 1 GPIO_OUTPUT>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ec_pch_wake_odl: ec_pch_wake_odl {
- gpios = <&gpiob 2 GPIO_ODR_LOW>;
- };
- gpio_ec_prochot_odl: ec_prochot_odl {
- gpios = <&gpioi 1 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_dsw_pwrok: ec_soc_dsw_pwrok {
- gpios = <&gpiol 7 GPIO_OUTPUT>;
- };
- gpio_ec_soc_hdmi_hpd: ec_soc_hdmi_hpd {
- gpios = <&gpiok 7 GPIO_OUTPUT>;
- };
- gpio_ec_soc_int_odl: ec_soc_int_odl {
- gpios = <&gpiod 5 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_ec_soc_pch_pwrok_od: ec_soc_pch_pwrok_od {
- gpios = <&gpiod 6 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_pwr_btn_odl: ec_soc_pwr_btn_odl {
- gpios = <&gpiob 6 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- gpio_ec_soc_rsmrst_l: ec_soc_rsmrst_l {
- gpios = <&gpioh 0 GPIO_OUTPUT>;
- };
- gpio_ec_soc_rtcrst: ec_soc_rtcrst {
- gpios = <&gpiok 2 GPIO_OUTPUT>;
- };
- gpio_ec_soc_sys_pwrok: ec_soc_sys_pwrok {
- gpios = <&gpiof 2 GPIO_OUTPUT>;
- };
- gpio_ec_soc_vccst_pwrgd_od: ec_soc_vccst_pwrgd_od {
- gpios = <&gpioe 5 GPIO_ODR_HIGH>;
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpioa 6 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_en_kb_bl: en_kb_bl {
- gpios = <&gpioj 3 GPIO_OUTPUT>;
- enum-name = "GPIO_EN_KEYBOARD_BACKLIGHT";
- };
- gpio_en_pp3300_s5: en_pp3300_s5 {
- gpios = <&gpioc 5 GPIO_OUTPUT>;
- enum-name = "GPIO_TEMP_SENSOR_POWER";
- };
- gpio_en_pp5000_pen_x: en_pp5000_pen_x {
- gpios = <&gpiob 5 GPIO_OUTPUT>;
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpiok 5 GPIO_OUTPUT>;
- };
- gpio_en_slp_z: en_slp_z {
- gpios = <&gpiok 3 GPIO_OUTPUT>;
- };
- gpio_en_usb_a0_vbus: en_usb_a0_vbus {
- gpios = <&gpiol 6 GPIO_OUTPUT>;
- };
- gpio_en_usb_c0_cc1_vconn: en_usb_c0_cc1_vconn {
- gpios = <&gpioh 4 GPIO_OUTPUT>;
- };
- gpio_en_usb_c0_cc2_vconn: en_usb_c0_cc2_vconn {
- gpios = <&gpioh 6 GPIO_OUTPUT>;
- };
- gpio_gsc_ec_pwr_btn_odl: gsc_ec_pwr_btn_odl {
- gpios = <&gpioe 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_hdmi_sel: hdmi_sel {
- gpios = <&gpioc 6 GPIO_OUTPUT>;
- };
- gpio_imu_int_l: imu_int_l {
- gpios = <&gpioj 0 GPIO_INPUT>;
- };
- gpio_imvp91_vrrdy_od: imvp91_vrrdy_od {
- gpios = <&gpioj 4 GPIO_INPUT>;
- };
- gpio_lid_open: lid_open {
- gpios = <&gpiof 3 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_pen_detect_odl: pen_detect_odl {
- gpios = <&gpioj 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_pg_pp1050_mem_s3_od: pg_pp1050_mem_s3_od {
- gpios = <&gpiod 3 GPIO_INPUT>;
- };
- gpio_pg_pp5000_s5_od: pg_pp5000_s5_od {
- gpios = <&gpioe 3 GPIO_INPUT>;
- };
- gpio_rsmrst_pwrgd_l: rsmrst_pwrgd_l {
- gpios = <&gpioe 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_slp_s0_l: slp_s0_l {
- gpios = <&gpioe 4 GPIO_INPUT>;
- };
- gpio_slp_s3_l: slp_s3_l {
- gpios = <&gpioh 3 GPIO_INPUT>;
- };
- gpio_slp_s4_l: slp_s4_l {
- gpios = <&gpioi 5 GPIO_INPUT>;
- };
- gpio_slp_sus_l: slp_sus_l {
- gpios = <&gpiog 2 GPIO_INPUT>;
- };
- gpio_sub_usb_a1_ilimit_sdp: sub_usb_a1_ilimit_sdp {
- gpios = <&gpiof 1 GPIO_OUTPUT>;
- enum-name = "GPIO_USB2_ILIM_SEL";
- };
- gpio_sys_rst_odl: sys_rst_odl {
- gpios = <&gpiod 1 GPIO_ODR_HIGH>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpioj 7 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_usb_a0_ilimit_sdp: usb_a0_ilimit_sdp {
- gpios = <&gpiol 5 GPIO_OUTPUT>;
- enum-name = "GPIO_USB1_ILIM_SEL";
- };
- gpio_usb_c0_frs: usb_c0_frs {
- gpios = <&gpioc 4 GPIO_OUTPUT>;
- };
- gpio_usb_c0_int_odl: usb_c0_int_odl {
- gpios = <&gpiok 0 GPIO_INPUT_PULL_UP>;
- };
- gpio_vccin_aux_vid0: vccin_aux_vid0 {
- gpios = <&gpiod 0 GPIO_INPUT>;
- };
- gpio_vccin_aux_vid1: vccin_aux_vid1 {
- gpios = <&gpiok 1 GPIO_INPUT>;
- };
- gpio_voldn_btn_odl: voldn_btn_odl {
- gpios = <&gpioi 6 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_volup_btn_odl: volup_btn_odl {
- gpios = <&gpioi 7 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_ec_i2c_eeprom: ec_i2c_eeprom {
- i2c-port = <&i2c0>;
- enum-names = "I2C_PORT_EEPROM";
- };
- i2c_ec_i2c_batt: ec_i2c_batt {
- i2c-port = <&i2c1>;
- enum-names = "I2C_PORT_BATTERY";
- };
- i2c_ec_i2c_sensor: ec_i2c_sensor {
- i2c-port = <&i2c2>;
- enum-names = "I2C_PORT_SENSOR";
- };
- i2c_ec_i2c_sub_usb_c1: ec_i2c_sub_usb_c1 {
- i2c-port = <&i2c4>;
- enum-names = "I2C_PORT_USB_C1_TCPC";
- };
- i2c_ec_i2c_usb_c0: ec_i2c_usb_c0 {
- i2c-port = <&i2c5>;
- enum-names = "I2C_PORT_USB_C0_TCPC";
- };
- };
-};
-
-&adc0 {
- status = "okay";
-};
-
-&i2c0 {
- status = "okay";
-};
-
-&i2c1 {
- status = "okay";
-};
-
-&i2c2 {
- status = "okay";
-};
-
-&i2c4 {
- status = "okay";
-};
-
-&i2c5 {
- status = "okay";
-};
diff --git a/zephyr/program/nissa/joxer/joxer_vif.xml b/zephyr/program/nissa/joxer/joxer_vif.xml
deleted file mode 100644
index cfbce5623a..0000000000
--- a/zephyr/program/nissa/joxer/joxer_vif.xml
+++ /dev/null
@@ -1,346 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<vif:VIF xmlns:opt="http://usb.org/VendorInfoFileOptionalContent.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="http://usb.org/VendorInfoFile.xsd">
- <vif:VIF_Specification>3.20</vif:VIF_Specification>
- <vif:VIF_App>
- <vif:Vendor>USB-IF</vif:Vendor>
- <vif:Name>VIF Editor</vif:Name>
- <vif:Version>3.3.0.0</vif:Version>
- </vif:VIF_App>
- <vif:Vendor_Name>Google</vif:Vendor_Name>
- <vif:Model_Part_Number>Joxer</vif:Model_Part_Number>
- <vif:Product_Revision>1</vif:Product_Revision>
- <vif:TID>0</vif:TID>
- <vif:VIF_Product_Type value="0">Port Product</vif:VIF_Product_Type>
- <vif:Certification_Type value="1">Reference Platform</vif:Certification_Type>
- <vif:Product>
- <!--Product Level Content:-->
- </vif:Product>
- <vif:Component>
- <!--Component 0: Port 0-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Component-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Port_Label>0</vif:Port_Label>
- <vif:Connector_Type value="2">Type-C®</vif:Connector_Type>
- <vif:USB4_Supported value="false" />
- <vif:USB_PD_Support value="true" />
- <vif:PD_Port_Type value="4">DRP</vif:PD_Port_Type>
- <vif:Type_C_State_Machine value="2">DRP</vif:Type_C_State_Machine>
- <vif:Port_Battery_Powered value="true" />
- <vif:BC_1_2_Support value="3">Both</vif:BC_1_2_Support>
- <vif:Captive_Cable value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;General PD-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Spec_Revision_Major value="3" />
- <vif:PD_Spec_Revision_Minor value="1" />
- <vif:PD_Spec_Version_Major value="1" />
- <vif:PD_Spec_Version_Minor value="3" />
- <vif:PD_Specification_Revision value="2">Revision 3</vif:PD_Specification_Revision>
- <vif:SOP_Capable value="true" />
- <vif:SOP_P_Capable value="true" />
- <vif:SOP_PP_Capable value="true" />
- <vif:SOP_P_Debug_Capable value="false" />
- <vif:SOP_PP_Debug_Capable value="false" />
- <vif:Manufacturer_Info_Supported_Port value="false" />
- <vif:Chunking_Implemented_SOP value="true" />
- <vif:Unchunked_Extended_Messages_Supported value="false" />
- <vif:Security_Msgs_Supported_SOP value="false" />
- <vif:Unconstrained_Power value="false" />
- <vif:Num_Fixed_Batteries value="1" />
- <vif:Num_Swappable_Battery_Slots value="1" />
- <vif:ID_Header_Connector_Type_SOP value="2">USB Type-C® Receptacle</vif:ID_Header_Connector_Type_SOP>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Capabilities-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:USB_Comms_Capable value="true" />
- <vif:DR_Swap_To_DFP_Supported value="true" />
- <vif:DR_Swap_To_UFP_Supported value="false" />
- <vif:VCONN_Swap_To_On_Supported value="true" />
- <vif:VCONN_Swap_To_Off_Supported value="true" />
- <vif:Responds_To_Discov_SOP_UFP value="false" />
- <vif:Responds_To_Discov_SOP_DFP value="true" />
- <vif:Attempts_Discov_SOP value="true" />
- <vif:Power_Interruption_Available value="0">No Interruption Possible</vif:Power_Interruption_Available>
- <vif:Data_Reset_Supported value="false" />
- <vif:Enter_USB_Supported value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Type-C®-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Type_C_Can_Act_As_Host value="true" />
- <vif:Type_C_Can_Act_As_Device value="false" />
- <vif:Type_C_Implements_Try_SRC value="true" />
- <vif:Type_C_Implements_Try_SNK value="false" />
- <vif:Type_C_Supports_Audio_Accessory value="false" />
- <vif:Type_C_Is_VCONN_Powered_Accessory value="false" />
- <vif:Type_C_Is_Debug_Target_SRC value="true" />
- <vif:Type_C_Is_Debug_Target_SNK value="true" />
- <vif:RP_Value value="1">1.5A</vif:RP_Value>
- <vif:Type_C_Port_On_Hub value="false" />
- <vif:Type_C_Power_Source value="2">Both</vif:Type_C_Power_Source>
- <vif:Type_C_Sources_VCONN value="true" />
- <vif:Type_C_Is_Alt_Mode_Controller value="true" />
- <vif:Type_C_Is_Alt_Mode_Adapter value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Product Power-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Product_Total_Source_Power_mW value="15000">15000 mW</vif:Product_Total_Source_Power_mW>
- <vif:Port_Source_Power_Type value="0">Assured</vif:Port_Source_Power_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Host-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Host_Supports_USB_Data value="true" />
- <vif:Host_Speed value="1">USB 3.2 Gen 1x1</vif:Host_Speed>
- <vif:Host_Contains_Captive_Retimer value="false" />
- <vif:Host_Truncates_DP_For_tDHPResponse value="false" />
- <vif:Host_Is_Embedded value="false" />
- <vif:Host_Suspend_Supported value="true" />
- <vif:Is_DFP_On_Hub value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Battery Charging 1.2-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:BC_1_2_Charging_Port_Type value="1">CDP</vif:BC_1_2_Charging_Port_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Source-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Source value="15000">15000 mW</vif:PD_Power_As_Source>
- <vif:EPR_Supported_As_Src value="false" />
- <vif:USB_Suspend_May_Be_Cleared value="false" />
- <vif:Sends_Pings value="false" />
- <vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink value="0">FR_Swap not supported</vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink>
- <vif:Master_Port value="false" />
- <vif:Num_Src_PDOs value="1" />
- <vif:PD_OC_Protection value="true" />
- <vif:PD_OCP_Method value="0">Over-Current Response</vif:PD_OCP_Method>
- <!--Bundle: SrcPdoList-->
- <vif:SrcPdoList>
- <vif:SrcPDO>
- <!--Source PDO 1-->
- <vif:Src_PDO_Supply_Type value="0">Fixed</vif:Src_PDO_Supply_Type>
- <vif:Src_PDO_Peak_Current value="0">100% IOC</vif:Src_PDO_Peak_Current>
- <vif:Src_PDO_Voltage value="100">5000 mV</vif:Src_PDO_Voltage>
- <vif:Src_PDO_Max_Current value="300">3000 mA</vif:Src_PDO_Max_Current>
- <vif:Src_PD_OCP_OC_Debounce value="0">0 msec</vif:Src_PD_OCP_OC_Debounce>
- <vif:Src_PD_OCP_OC_Threshold value="300">3000 mA</vif:Src_PD_OCP_OC_Threshold>
- </vif:SrcPDO>
- </vif:SrcPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Sink-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Sink value="45000">45000 mW</vif:PD_Power_As_Sink>
- <vif:EPR_Supported_As_Snk value="false" />
- <vif:No_USB_Suspend_May_Be_Set value="true" />
- <vif:GiveBack_May_Be_Set value="false" />
- <vif:Higher_Capability_Set value="false" />
- <vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source value="0">FR_Swap not supported</vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source>
- <vif:Num_Snk_PDOs value="3" />
- <!--Bundle: SnkPdoList-->
- <vif:SnkPdoList>
- <vif:SnkPDO>
- <!--Sink PDO 1-->
- <vif:Snk_PDO_Supply_Type value="0">Fixed</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Voltage value="100">5000 mV</vif:Snk_PDO_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 2-->
- <vif:Snk_PDO_Supply_Type value="1">Battery</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Op_Power value="60">15000 mW</vif:Snk_PDO_Op_Power>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="300">15000 mV</vif:Snk_PDO_Max_Voltage>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 3-->
- <vif:Snk_PDO_Supply_Type value="2">Variable</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="300">15000 mV</vif:Snk_PDO_Max_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- </vif:SnkPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Dual Role-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Accepts_PR_Swap_As_Src value="true" />
- <vif:Accepts_PR_Swap_As_Snk value="true" />
- <vif:Requests_PR_Swap_As_Src value="true" />
- <vif:Requests_PR_Swap_As_Snk value="true" />
- <vif:FR_Swap_Supported_As_Initial_Sink value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;SOP Discover ID-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:XID_SOP value="0" />
- <vif:Data_Capable_As_USB_Host_SOP value="true" />
- <vif:Data_Capable_As_USB_Device_SOP value="false" />
- <vif:Product_Type_UFP_SOP value="0">Undefined</vif:Product_Type_UFP_SOP>
- <vif:Product_Type_DFP_SOP value="2">PDUSB Host</vif:Product_Type_DFP_SOP>
- <vif:DFP_VDO_Port_Number value="0" />
- <vif:Modal_Operation_Supported_SOP value="false" />
- <vif:USB_VID_SOP value="6353">18D1</vif:USB_VID_SOP>
- <vif:PID_SOP value="20570">505A</vif:PID_SOP>
- <vif:bcdDevice_SOP value="0">0000</vif:bcdDevice_SOP>
- </vif:Component>
- <vif:Component>
- <!--Component 1: Port 1-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Component-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Port_Label>1</vif:Port_Label>
- <vif:Connector_Type value="2">Type-C®</vif:Connector_Type>
- <vif:USB4_Supported value="false" />
- <vif:USB_PD_Support value="true" />
- <vif:PD_Port_Type value="4">DRP</vif:PD_Port_Type>
- <vif:Type_C_State_Machine value="2">DRP</vif:Type_C_State_Machine>
- <vif:Port_Battery_Powered value="true" />
- <vif:BC_1_2_Support value="3">Both</vif:BC_1_2_Support>
- <vif:Captive_Cable value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;General PD-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Spec_Revision_Major value="3" />
- <vif:PD_Spec_Revision_Minor value="1" />
- <vif:PD_Spec_Version_Major value="1" />
- <vif:PD_Spec_Version_Minor value="3" />
- <vif:PD_Specification_Revision value="2">Revision 3</vif:PD_Specification_Revision>
- <vif:SOP_Capable value="true" />
- <vif:SOP_P_Capable value="true" />
- <vif:SOP_PP_Capable value="true" />
- <vif:SOP_P_Debug_Capable value="false" />
- <vif:SOP_PP_Debug_Capable value="false" />
- <vif:Manufacturer_Info_Supported_Port value="false" />
- <vif:Chunking_Implemented_SOP value="true" />
- <vif:Unchunked_Extended_Messages_Supported value="false" />
- <vif:Security_Msgs_Supported_SOP value="false" />
- <vif:Unconstrained_Power value="false" />
- <vif:Num_Fixed_Batteries value="1" />
- <vif:Num_Swappable_Battery_Slots value="1" />
- <vif:ID_Header_Connector_Type_SOP value="2">USB Type-C® Receptacle</vif:ID_Header_Connector_Type_SOP>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Capabilities-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:USB_Comms_Capable value="true" />
- <vif:DR_Swap_To_DFP_Supported value="true" />
- <vif:DR_Swap_To_UFP_Supported value="false" />
- <vif:VCONN_Swap_To_On_Supported value="true" />
- <vif:VCONN_Swap_To_Off_Supported value="true" />
- <vif:Responds_To_Discov_SOP_UFP value="false" />
- <vif:Responds_To_Discov_SOP_DFP value="true" />
- <vif:Attempts_Discov_SOP value="true" />
- <vif:Power_Interruption_Available value="0">No Interruption Possible</vif:Power_Interruption_Available>
- <vif:Data_Reset_Supported value="false" />
- <vif:Enter_USB_Supported value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Type-C®-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Type_C_Can_Act_As_Host value="true" />
- <vif:Type_C_Can_Act_As_Device value="false" />
- <vif:Type_C_Implements_Try_SRC value="true" />
- <vif:Type_C_Implements_Try_SNK value="false" />
- <vif:Type_C_Supports_Audio_Accessory value="false" />
- <vif:Type_C_Is_VCONN_Powered_Accessory value="false" />
- <vif:Type_C_Is_Debug_Target_SRC value="true" />
- <vif:Type_C_Is_Debug_Target_SNK value="true" />
- <vif:RP_Value value="1">1.5A</vif:RP_Value>
- <vif:Type_C_Port_On_Hub value="false" />
- <vif:Type_C_Power_Source value="2">Both</vif:Type_C_Power_Source>
- <vif:Type_C_Sources_VCONN value="true" />
- <vif:Type_C_Is_Alt_Mode_Controller value="true" />
- <vif:Type_C_Is_Alt_Mode_Adapter value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Product Power-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Product_Total_Source_Power_mW value="15000">15000 mW</vif:Product_Total_Source_Power_mW>
- <vif:Port_Source_Power_Type value="0">Assured</vif:Port_Source_Power_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Host-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Host_Supports_USB_Data value="true" />
- <vif:Host_Speed value="1">USB 3.2 Gen 1x1</vif:Host_Speed>
- <vif:Host_Contains_Captive_Retimer value="true" />
- <vif:Host_Truncates_DP_For_tDHPResponse value="false" />
- <vif:Host_Is_Embedded value="false" />
- <vif:Host_Suspend_Supported value="true" />
- <vif:Is_DFP_On_Hub value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Battery Charging 1.2-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:BC_1_2_Charging_Port_Type value="1">CDP</vif:BC_1_2_Charging_Port_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Source-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Source value="15000">15000 mW</vif:PD_Power_As_Source>
- <vif:EPR_Supported_As_Src value="false" />
- <vif:USB_Suspend_May_Be_Cleared value="false" />
- <vif:Sends_Pings value="false" />
- <vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink value="0">FR_Swap not supported</vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink>
- <vif:Master_Port value="false" />
- <vif:Num_Src_PDOs value="1" />
- <vif:PD_OC_Protection value="true" />
- <vif:PD_OCP_Method value="0">Over-Current Response</vif:PD_OCP_Method>
- <!--Bundle: SrcPdoList-->
- <vif:SrcPdoList>
- <vif:SrcPDO>
- <!--Source PDO 1-->
- <vif:Src_PDO_Supply_Type value="0">Fixed</vif:Src_PDO_Supply_Type>
- <vif:Src_PDO_Peak_Current value="0">100% IOC</vif:Src_PDO_Peak_Current>
- <vif:Src_PDO_Voltage value="100">5000 mV</vif:Src_PDO_Voltage>
- <vif:Src_PDO_Max_Current value="300">3000 mA</vif:Src_PDO_Max_Current>
- <vif:Src_PD_OCP_OC_Debounce value="0">0 msec</vif:Src_PD_OCP_OC_Debounce>
- <vif:Src_PD_OCP_OC_Threshold value="300">3000 mA</vif:Src_PD_OCP_OC_Threshold>
- </vif:SrcPDO>
- </vif:SrcPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Sink-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Sink value="45000">45000 mW</vif:PD_Power_As_Sink>
- <vif:EPR_Supported_As_Snk value="false" />
- <vif:No_USB_Suspend_May_Be_Set value="true" />
- <vif:GiveBack_May_Be_Set value="false" />
- <vif:Higher_Capability_Set value="false" />
- <vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source value="0">FR_Swap not supported</vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source>
- <vif:Num_Snk_PDOs value="3" />
- <!--Bundle: SnkPdoList-->
- <vif:SnkPdoList>
- <vif:SnkPDO>
- <!--Sink PDO 1-->
- <vif:Snk_PDO_Supply_Type value="0">Fixed</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Voltage value="100">5000 mV</vif:Snk_PDO_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 2-->
- <vif:Snk_PDO_Supply_Type value="1">Battery</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Op_Power value="60">15000 mW</vif:Snk_PDO_Op_Power>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="300">15000 mV</vif:Snk_PDO_Max_Voltage>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 3-->
- <vif:Snk_PDO_Supply_Type value="2">Variable</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="300">15000 mV</vif:Snk_PDO_Max_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- </vif:SnkPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Dual Role-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Accepts_PR_Swap_As_Src value="true" />
- <vif:Accepts_PR_Swap_As_Snk value="true" />
- <vif:Requests_PR_Swap_As_Src value="true" />
- <vif:Requests_PR_Swap_As_Snk value="true" />
- <vif:FR_Swap_Supported_As_Initial_Sink value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;SOP Discover ID-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:XID_SOP value="0" />
- <vif:Data_Capable_As_USB_Host_SOP value="true" />
- <vif:Data_Capable_As_USB_Device_SOP value="false" />
- <vif:Product_Type_UFP_SOP value="0">Undefined</vif:Product_Type_UFP_SOP>
- <vif:Product_Type_DFP_SOP value="2">PDUSB Host</vif:Product_Type_DFP_SOP>
- <vif:DFP_VDO_Port_Number value="1" />
- <vif:Modal_Operation_Supported_SOP value="false" />
- <vif:USB_VID_SOP value="6353">18D1</vif:USB_VID_SOP>
- <vif:PID_SOP value="20570">505A</vif:PID_SOP>
- <vif:bcdDevice_SOP value="0">0000</vif:bcdDevice_SOP>
- </vif:Component>
-</vif:VIF> \ No newline at end of file
diff --git a/zephyr/program/nissa/joxer/keyboard.dtsi b/zephyr/program/nissa/joxer/keyboard.dtsi
deleted file mode 100644
index 04a620767a..0000000000
--- a/zephyr/program/nissa/joxer/keyboard.dtsi
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- kblight {
- compatible = "cros-ec,kblight-pwm";
- /*
- * Use 324 Hz so that 32Khz clock source is used,
- * which is not gated in power saving mode.
- */
- pwms = <&pwm0 0 PWM_HZ(324) PWM_POLARITY_NORMAL>;
- };
-};
-
-&pwm0 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm0_gpa0_default>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/joxer/motionsense.dtsi b/zephyr/program/nissa/joxer/motionsense.dtsi
deleted file mode 100644
index e9c46a849a..0000000000
--- a/zephyr/program/nissa/joxer/motionsense.dtsi
+++ /dev/null
@@ -1,148 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * Interrupt bindings for sensor devices.
- */
- bmi3xx-int = &base_accel;
- bma4xx-int = &lid_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- base_mutex: base-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 (-1) 0
- (-1) 0 0
- 0 0 (-1)>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <1 0 0
- 0 1 0
- 0 0 1>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bmi323_data: bmi323-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
-
- bma422_data: bma422-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- * TODO(b/238139272): The first entries of the array must be
- * accelerometers,then gyroscope. Fix this dependency in the DTS
- * processing which makes the devicetree entries independent.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&bma422_data>;
- i2c-spi-addr-flags = "BMA4_I2C_ADDR_SECONDARY";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi323_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_gyro: base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi323_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_imu &int_lid_accel>;
- };
-};
diff --git a/zephyr/program/nissa/joxer/overlay.dtsi b/zephyr/program/nissa/joxer/overlay.dtsi
deleted file mode 100644
index 56f1d928cf..0000000000
--- a/zephyr/program/nissa/joxer/overlay.dtsi
+++ /dev/null
@@ -1,459 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-#include <dt-bindings/usb_pd_tcpm.h>
-
-/ {
- aliases {
- gpio-cbi-wp = &gpio_ec_cbi_wp;
- gpio-wp = &gpio_ec_wp_odl;
- int-wp = &int_wp_l;
- /*
- * USB-C: interrupt input.
- * I2C pins are on i2c_ec_i2c_sub_usb_c1
- */
- gpio-usb-c1-int-odl = &gpio_sb_1;
- /*
- * USB-A: VBUS enable output
- * LTE: power enable output
- */
- gpio-en-usb-a1-vbus = &gpio_sb_2;
- /*
- * HDMI: power enable output, HDMI enable output,
- * and HPD input
- */
- gpio-en-rails-odl = &gpio_sb_1;
- gpio-hdmi-en-odl = &gpio_sb_4;
- gpio-hpd-odl = &gpio_sb_3;
- /*
- * Enable S5 rails for LTE sub-board
- */
- gpio-en-sub-s5-rails = &gpio_sb_2;
- };
-
- ec-console {
- compatible = "ec-console";
- disabled = "events", "lpc", "hostcmd";
- };
-
- batteries {
- default_battery: cosmx {
- compatible = "cosmx,gh02047xl", "battery-smart";
- };
- dynapack_atl_gh02047xl {
- compatible = "dynapack,atl_gh02047xl", "battery-smart";
- };
- dynapack_cosmx_gh02047xl {
- compatible = "dynapack,cosmx_gh02047xl", "battery-smart";
- };
- smp_coslight_gh02047xl {
- compatible = "smp,coslight_gh02047xl", "battery-smart";
- };
- smp_highpower_gh02047xl {
- compatible = "smp,highpower_gh02047xl", "battery-smart";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_power_button
- &int_lid_open
- >;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&gpio_gsc_ec_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_vol_down: vol_down {
- irq-pin = <&gpio_voldn_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_vol_up: vol_up {
- irq-pin = <&gpio_volup_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_wp_l: wp_l {
- irq-pin = <&gpio_ec_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&gpio_tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_imu: ec_imu {
- irq-pin = <&gpio_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bmi3xx_interrupt";
- };
- int_lid_accel: ec_lid_accel {
- irq-pin = <&gpio_acc_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bma4xx_interrupt";
- };
- int_usb_c0: usb_c0 {
- irq-pin = <&gpio_usb_c0_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_c0_interrupt";
- };
- int_usb_c1: usb_c1 {
- irq-pin = <&gpio_sb_1>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_c1_interrupt";
- };
- };
-
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios = <&gpioc 3 0>,
- <&gpiod 4 0>,
- <&gpioh 2 0>,
- <&gpiol 4 0>;
- };
-
- named-gpios {
- /*
- * EC doesn't take any specific action on CC/SBU disconnect due to
- * fault, but this definition is useful for hardware testing.
- */
- gpio_usb_c0_prot_fault_odl: usb_c0_prot_fault_odl {
- gpios = <&gpiok 6 GPIO_INPUT_PULL_UP>;
- };
-
- gpio_sb_1: sb_1 {
- gpios = <&gpioe 6 0>;
- no-auto-init;
- };
- gpio_sb_2: sb_2 {
- gpios = <&gpiof 0 0>;
- no-auto-init;
- };
-
- gpio_sb_3: sb_3 {
- gpios = <&gpioe 7 0>;
- no-auto-init;
- };
- gpio_sb_4: sb_4 {
- gpios = <&gpioe 0 0>;
- no-auto-init;
- };
- gpio_fan_enable: fan-enable {
- gpios = <&gpiol 4 GPIO_OUTPUT>;
- no-auto-init;
- };
- gpio_power_led_gate: power_led_gate {
- gpios = <&gpiof 1 GPIO_OUTPUT_LOW>;
- };
- gpio_led_1_odl: led_1_odl {
- gpios = <&gpioa 1 GPIO_OUTPUT_HIGH>;
- };
- gpio_led_2_odl: led_2_odl {
- gpios = <&gpioa 2 GPIO_OUTPUT_HIGH>;
- };
- gpio_led_3_l: led_3_l {
- gpios = <&gpiol 2 GPIO_OUTPUT_HIGH>;
- };
- gpio_led_4_l: led_4_l {
- gpios = <&gpiol 3 GPIO_OUTPUT_HIGH>;
- };
- };
-
- temp_memory: memory {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_1>;
- };
- temp_charger: charger {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_2>;
- };
- temp_ambient: ambient {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_3>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- memory {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_memory>;
- };
- charger {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_charger>;
- };
- ambient {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_ambient>;
- };
- };
-
- usba {
- compatible = "cros-ec,usba-port-enable-pins";
- /*
- * sb_2 is only configured as GPIO when USB-A1 is present,
- * but it's still safe to control when disabled.
- *
- * ILIM_SEL pins are referred to by legacy enum name,
- * GPIO_USB*_ILIM_SEL. The one for port A1 is unused on
- * sub-boards that don't have USB-A so is safe to control
- * regardless of system configuration.
- */
- enable-pins = <&gpio_en_usb_a0_vbus &gpio_sb_2>;
- status = "okay";
- };
-
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- chg = <&chg_port0>;
- tcpc = <&usbpd0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_0>;
- };
- };
- port0-muxes {
- virtual_mux_0: virtual-mux-0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&bc12_port1>;
- chg = <&chg_port1>;
- tcpc = <&tcpc_port1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_1 &tcpci_mux_1>;
- };
- usb_mux_chain_1_no_mux: usb-mux-chain-1-no-mux {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&virtual_mux_1>;
- };
- };
- port1-muxes {
- virtual_mux_1: virtual-mux-1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- tcpci_mux_1: tcpci-mux-1 {
- compatible = "parade,usbc-mux-ps8xxx";
- };
- };
- };
- fans {
- compatible = "cros-ec,fans";
-
- fan_0 {
- pwms = <&pwm7 PWM_CHANNEL_7 PWM_KHZ(30) PWM_POLARITY_NORMAL>;
- tach = <&tach1>;
- rpm_min = <1500>;
- rpm_start = <1500>;
- rpm_max = <6500>;
- enable_gpio = <&gpio_fan_enable>;
- };
- };
-};
-
-&gpio_acc_int_l {
- gpios = <&gpioc 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
-};
-&gpio_imu_int_l {
- gpios = <&gpioj 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
-};
-&gpio_vccin_aux_vid0 {
- gpios = <&gpiod 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
-};
-&gpio_vccin_aux_vid1 {
- gpios = <&gpiok 1 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
-};
-
-&gpio_ec_prochot_odl {
- gpios = <&gpioi 1 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
-};
-
-&thermistor_3V3_51K1_47K_4050B {
- status = "okay";
-};
-
-&adc_ec_vsense_pp3300_s5 {
- /*
- * Voltage divider on input has 47k upper and 220k lower legs with 3 V
- * full-scale reading on the ADC. Apply the largest possible multiplier
- * (without overflowing int32) to get the best possible approximation
- * of the actual ratio, but derate by a factor of two to ensure
- * unexpectedly high values won't overflow.
- */
- mul = <(715828 / 2)>;
- div = <(589820 / 2)>;
-};
-
-&adc0 {
- pinctrl-0 = <&adc0_ch0_gpi0_default
- &adc0_ch2_gpi2_default
- &adc0_ch3_gpi3_default
- &adc0_ch13_gpl0_default
- &adc0_ch14_gpl1_default>;
- pinctrl-names = "default";
-};
-
-&pinctrl {
- i2c2_clk_gpf6_default: i2c2_clk_gpf6_default {
- gpio-voltage = "1v8";
- };
- i2c2_data_gpf7_default: i2c2_data_gpf7_default {
- gpio-voltage = "1v8";
- };
-};
-
-
-&i2c0 {
- label = "I2C_EEPROM";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
- pinctrl-0 = <&i2c0_clk_gpb3_default
- &i2c0_data_gpb4_default>;
- pinctrl-names = "default";
-};
-
-&i2c1 {
- label = "I2C_BATTERY";
- clock-frequency = <50000>;
- pinctrl-0 = <&i2c1_clk_gpc1_default
- &i2c1_data_gpc2_default>;
- pinctrl-names = "default";
-};
-
-&i2c2 {
- label = "I2C_SENSOR";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c2_clk_gpf6_default
- &i2c2_data_gpf7_default>;
- pinctrl-names = "default";
-};
-
-&i2c4 {
- label = "I2C_SUB_C1_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c4_clk_gpe0_default
- &i2c4_data_gpe7_default>;
- pinctrl-names = "default";
-
- bc12_port1: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- };
-
- chg_port1: sm5803@32 {
- compatible = "siliconmitus,sm5803";
- status = "okay";
- reg = <0x32>;
- };
-
- tcpc_port1: ps8745@b {
- compatible = "parade,ps8xxx";
- reg = <0xb>;
- tcpc-flags = <(TCPC_FLAGS_TCPCI_REV2_0)>;
- };
-};
-
-&i2c_ec_i2c_sub_usb_c1 {
- /*
- * Dynamic speed setting is used for AP-controlled firmware update
- * of PS8745 TCPC/redriver: the AP lowers speed to 400 kHz in order
- * to use more efficient window programming, then sets it back when
- * done.
- */
- dynamic-speed;
-};
-
-&i2c5 {
- label = "I2C_USB_C0_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c5_clk_gpa4_default
- &i2c5_data_gpa5_default>;
- pinctrl-names = "default";
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- };
-
- chg_port0: sm5803@32 {
- compatible = "siliconmitus,sm5803";
- status = "okay";
- reg = <0x32>;
- };
-};
-
-/* pwm for fan */
-&pwm7 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C6>;
- pinctrl-0 = <&pwm7_gpa7_default>;
- pinctrl-names = "default";
-};
-
-/* fan tachometer sensor */
-&tach1 {
- status = "okay";
- channel = <IT8XXX2_TACH_CHANNEL_A>;
- pulses-per-round = <2>;
- pinctrl-0 = <&tach1a_gpd7_default>;
- pinctrl-names = "default";
-};
-
-&usbpd0 {
- status = "okay";
-};
diff --git a/zephyr/program/nissa/joxer/power_signals.dtsi b/zephyr/program/nissa/joxer/power_signals.dtsi
deleted file mode 100644
index 8affae03b1..0000000000
--- a/zephyr/program/nissa/joxer/power_signals.dtsi
+++ /dev/null
@@ -1,223 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- chosen {
- intel-ap-pwrseq,espi = &espi0;
- };
-
- common-pwrseq {
- compatible = "intel,ap-pwrseq";
-
- sys-pwrok-delay = <10>;
- all-sys-pwrgd-timeout = <20>;
- };
-
- pwr-en-pp5000-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP5000_S5 enable output to regulator";
- enum-name = "PWR_EN_PP5000_A";
- gpios = <&gpiok 5 0>;
- output;
- };
- pwr-en-pp3300-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP3300_S5 enable output to LS";
- enum-name = "PWR_EN_PP3300_A";
- gpios = <&gpioc 5 0>;
- output;
- };
- pwr-pg-ec-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST power good from regulator";
- enum-name = "PWR_RSMRST";
- gpios = <&gpioe 1 0>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-pch-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST output to PCH";
- enum-name = "PWR_EC_PCH_RSMRST";
- gpios = <&gpioh 0 0>;
- output;
- };
- pwr-slp-s0-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S0_L input from PCH";
- enum-name = "PWR_SLP_S0";
- gpios = <&gpioe 4 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-s3-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S3_L input from PCH";
- enum-name = "PWR_SLP_S3";
- gpios = <&gpioh 3 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-sus-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_SUS_L input from PCH";
- enum-name = "PWR_SLP_SUS";
- gpios = <&gpiog 2 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-soc-dsw-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "DSW_PWROK output to PCH";
- enum-name = "PWR_EC_SOC_DSW_PWROK";
- gpios = <&gpiol 7 0>;
- output;
- };
- pwr-vccst-pwrgd-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VCCST_PWRGD output to PCH";
- enum-name = "PWR_VCCST_PWRGD";
- gpios = <&gpioe 5 (GPIO_OPEN_DRAIN | GPIO_VOLTAGE_1P8)>;
- output;
- };
- pwr-imvp9-vrrdy-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VRRDY input from IMVP9";
- enum-name = "PWR_IMVP9_VRRDY";
- gpios = <&gpioj 4 0>;
- };
- pwr-pch-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PCH_PWROK output to PCH";
- enum-name = "PWR_PCH_PWROK";
- gpios = <&gpiod 6 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-ec-pch-sys-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_PWROK output to PCH";
- enum-name = "PWR_EC_PCH_SYS_PWROK";
- gpios = <&gpiof 2 0>;
- output;
- };
- pwr-sys-rst-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_RESET# output to PCH";
- enum-name = "PWR_SYS_RST";
- gpios = <&gpiod 1 (GPIO_ACTIVE_LOW|GPIO_OPEN_DRAIN)>;
- output;
- };
- pwr-slp-s4 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S4 virtual wire input from PCH";
- enum-name = "PWR_SLP_S4";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S4";
- vw-invert;
- };
- pwr-slp-s5 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S5 virtual wire input from PCH";
- enum-name = "PWR_SLP_S5";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S5";
- vw-invert;
- };
- pwr-all-sys-pwrgd {
- /*
- * This is a board level signal, since this
- * signal needs some special processing.
- */
- compatible = "intel,ap-pwrseq-external";
- dbg-label = "Combined all power good";
- enum-name = "PWR_ALL_SYS_PWRGD";
- };
- pwr-adc-pp3300 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP3300_PROC";
- enum-name = "PWR_DSW_PWROK";
- trigger-high = <&vcmp0>;
- trigger-low = <&vcmp1>;
- };
- pwr-adc-pp1p05 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP1P05_PROC";
- enum-name = "PWR_PG_PP1P05";
- trigger-high = <&vcmp2>;
- trigger-low = <&vcmp3>;
- };
-
-};
-
-/*
- * Because the power signals directly reference the GPIOs,
- * the correspinding named-gpios need to have no-auto-init set.
- */
-&gpio_ec_soc_dsw_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_pch_pwrok_od {
- no-auto-init;
-};
-&gpio_ec_soc_rsmrst_l {
- no-auto-init;
-};
-&gpio_ec_soc_sys_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_vccst_pwrgd_od {
- no-auto-init;
-};
-&gpio_en_pp3300_s5 {
- no-auto-init;
-};
-&gpio_en_pp5000_s5 {
- no-auto-init;
-};
-&gpio_imvp91_vrrdy_od {
- no-auto-init;
-};
-&gpio_rsmrst_pwrgd_l {
- no-auto-init;
-};
-&gpio_slp_s0_l {
- no-auto-init;
-};
-&gpio_slp_s3_l {
- no-auto-init;
-};
-&gpio_slp_sus_l {
- no-auto-init;
-};
-&gpio_sys_rst_odl {
- no-auto-init;
-};
-&vcmp0 {
- status = "okay";
- scan-period = <IT8XXX2_VCMP_SCAN_PERIOD_600US>;
- comparison = <IT8XXX2_VCMP_GREATER>;
- /*
- * This is 90% of nominal voltage considering voltage
- * divider on ADC input.
- */
- threshold-mv = <2448>;
- io-channels = <&adc0 0>;
-};
-&vcmp1 {
- status = "okay";
- scan-period = <IT8XXX2_VCMP_SCAN_PERIOD_600US>;
- comparison = <IT8XXX2_VCMP_LESS_OR_EQUAL>;
- threshold-mv = <2448>;
- io-channels = <&adc0 0>;
-};
-&vcmp2 {
- status = "okay";
- scan-period = <IT8XXX2_VCMP_SCAN_PERIOD_600US>;
- comparison = <IT8XXX2_VCMP_GREATER>;
- /* Setting at 90% of nominal voltage */
- threshold-mv = <945>;
- io-channels = <&adc0 14>;
-};
-&vcmp3 {
- status = "okay";
- scan-period = <IT8XXX2_VCMP_SCAN_PERIOD_600US>;
- comparison = <IT8XXX2_VCMP_LESS_OR_EQUAL>;
- threshold-mv = <945>;
- io-channels = <&adc0 14>;
-};
diff --git a/zephyr/program/nissa/joxer/project.conf b/zephyr/program/nissa/joxer/project.conf
deleted file mode 100644
index a0de72294c..0000000000
--- a/zephyr/program/nissa/joxer/project.conf
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_BOARD_JOXER=y
-
-# Ensure recovery key combination (esc+refresh+power) is reliable: b/236580049
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI3=y
-CONFIG_PLATFORM_EC_KEYBOARD_REFRESH_ROW3=y
-
-# Sensor drivers
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI3XX=y
-CONFIG_PLATFORM_EC_ACCEL_BMA4XX=y
-CONFIG_PLATFORM_EC_MAX_SENSOR_FREQ_MILLIHZ=100000
-
-# LED
-CONFIG_PLATFORM_EC_LED_PWM=n
-CONFIG_PLATFORM_EC_LED_COMMON=y
diff --git a/zephyr/program/nissa/joxer/project.overlay b/zephyr/program/nissa/joxer/project.overlay
deleted file mode 100644
index 9ca681d979..0000000000
--- a/zephyr/program/nissa/joxer/project.overlay
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "../cbi.dtsi"
-
-#include "cbi.dtsi"
-#include "generated.dtsi"
-#include "keyboard.dtsi"
-#include "motionsense.dtsi"
-#include "overlay.dtsi"
-#include "power_signals.dtsi"
-#include "pwm_leds.dtsi"
diff --git a/zephyr/program/nissa/joxer/pwm_leds.dtsi b/zephyr/program/nissa/joxer/pwm_leds.dtsi
deleted file mode 100644
index aa4a76b271..0000000000
--- a/zephyr/program/nissa/joxer/pwm_leds.dtsi
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_led0: pwm_led_0 {
- pwms = <&pwm1 1 PWM_HZ(1296) PWM_POLARITY_INVERTED>,
- <&pwm2 2 PWM_HZ(1296) PWM_POLARITY_INVERTED>,
- <&pwm3 3 PWM_HZ(1296) PWM_POLARITY_INVERTED>;
- };
- };
-
- cros-pwmleds {
- compatible = "cros-ec,pwm-leds";
-
- leds = <&pwm_led0>;
-
- /*<red green blue>*/
- color-map-red = <100 0 0>;
- color-map-green = < 0 100 0>;
- color-map-blue = < 0 0 100>;
- color-map-yellow = < 0 50 50>;
- color-map-white = <100 100 100>;
- color-map-amber = <100 15 0>;
-
- brightness-range = <100 100 100 0 0 0>;
-
- #address-cells = <1>;
- #size-cells = <0>;
-
- pwm_led_0@0 {
- reg = <0>;
- ec-led-name = "EC_LED_ID_BATTERY_LED";
- };
- };
-};
-
-&pwm1 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm1_gpa1_default>;
- pinctrl-names = "default";
-};
-
-&pwm2 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm2_gpa2_default>;
- pinctrl-names = "default";
-};
-
-&pwm3 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm3_gpa3_default>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/joxer/src/charger.c b/zephyr/program/nissa/joxer/src/charger.c
deleted file mode 100644
index 4bb7de7ecb..0000000000
--- a/zephyr/program/nissa/joxer/src/charger.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "battery.h"
-#include "charger.h"
-#include "console.h"
-#include "driver/charger/sm5803.h"
-#include "extpower.h"
-#include "nissa_common.h"
-#include "usb_pd.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-int extpower_is_present(void)
-{
- int port;
- int rv;
- bool acok;
-
- for (port = 0; port < board_get_usb_pd_port_count(); port++) {
- rv = sm5803_is_acok(port, &acok);
- if ((rv == EC_SUCCESS) && acok)
- return 1;
- }
-
- return 0;
-}
-
-/*
- * Joxer not have a GPIO indicating whether extpower is present,
- * so detect using the charger(s).
- */
-__override void board_check_extpower(void)
-{
- static int last_extpower_present;
- int extpower_present = extpower_is_present();
-
- if (last_extpower_present ^ extpower_present)
- extpower_handle_update(extpower_present);
-
- last_extpower_present = extpower_present;
-}
-
-__override void board_hibernate(void)
-{
- /* Shut down the chargers */
- if (board_get_usb_pd_port_count() == 2)
- sm5803_hibernate(CHARGER_SECONDARY);
- sm5803_hibernate(CHARGER_PRIMARY);
- LOG_INF("Charger(s) hibernated");
- cflush();
-}
diff --git a/zephyr/program/nissa/joxer/src/fan.c b/zephyr/program/nissa/joxer/src/fan.c
deleted file mode 100644
index 82be341da5..0000000000
--- a/zephyr/program/nissa/joxer/src/fan.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "cros_cbi.h"
-#include "fan.h"
-#include "gpio/gpio.h"
-#include "hooks.h"
-#include "nissa_common.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-/*
- * Joxer fan support
- */
-static void fan_init(void)
-{
- int ret;
- uint32_t val;
- /*
- * Retrieve the fan config.
- */
- ret = cros_cbi_get_fw_config(FW_FAN, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_FAN);
- return;
- }
- if (val != FW_FAN_PRESENT) {
- /* Disable the fan */
- fan_set_count(0);
- } else {
- /* Configure the fan enable GPIO */
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_fan_enable),
- GPIO_OUTPUT);
- }
-}
-DECLARE_HOOK(HOOK_INIT, fan_init, HOOK_PRIO_POST_FIRST);
diff --git a/zephyr/program/nissa/joxer/src/keyboard.c b/zephyr/program/nissa/joxer/src/keyboard.c
deleted file mode 100644
index e9e20194f0..0000000000
--- a/zephyr/program/nissa/joxer/src/keyboard.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "cros_cbi.h"
-#include "ec_commands.h"
-#include "gpio/gpio.h"
-#include "hooks.h"
-#include "keyboard_8042_sharedlib.h"
-#include "nissa_common.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-static const struct ec_response_keybd_config joxer_kb_legacy = {
- .num_top_row_keys = 13,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_REFRESH, /* T2 */
- TK_FULLSCREEN, /* T3 */
- TK_OVERVIEW, /* T4 */
- TK_SNAPSHOT, /* T5 */
- TK_BRIGHTNESS_DOWN, /* T6 */
- TK_BRIGHTNESS_UP, /* T7 */
- TK_KBD_BKLIGHT_TOGGLE, /* T8 */
- TK_PLAY_PAUSE, /* T9 */
- TK_MICMUTE, /* T10 */
- TK_VOL_MUTE, /* T11 */
- TK_VOL_DOWN, /* T12 */
- TK_VOL_UP, /* T13 */
- },
- .capabilities = KEYBD_CAP_SCRNLOCK_KEY,
-};
-
-__override const struct ec_response_keybd_config *
-board_vivaldi_keybd_config(void)
-{
- return &joxer_kb_legacy;
-}
-
-/*
- * Keyboard layout decided by FW config.
- */
-static void kb_layout_init(void)
-{
- int ret;
- uint32_t val;
- /*
- * Retrieve the kb layout config.
- */
- ret = cros_cbi_get_fw_config(FW_KB_LAYOUT, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d",
- FW_KB_LAYOUT);
- return;
- }
- /*
- * If keyboard is US2(FW_KB_LAYOUT_US2), we need translate right ctrl
- * to backslash(\|) key.
- */
- if (val == FW_KB_LAYOUT_US2)
- set_scancode_set2(4, 0, get_scancode_set2(2, 7));
-}
-DECLARE_HOOK(HOOK_INIT, kb_layout_init, HOOK_PRIO_POST_FIRST);
diff --git a/zephyr/program/nissa/joxer/src/led.c b/zephyr/program/nissa/joxer/src/led.c
deleted file mode 100644
index c617ee9507..0000000000
--- a/zephyr/program/nissa/joxer/src/led.c
+++ /dev/null
@@ -1,181 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * Battery LED control for nissa
- */
-#include "charge_manager.h"
-#include "common.h"
-#include "compile_time_macros.h"
-#include "ec_commands.h"
-#include "gpio.h"
-#include "led_common.h"
-#include "led_onoff_states.h"
-#include "pwm.h"
-#include "util.h"
-
-#include <stdint.h>
-
-#define BAT_LED_ON_LVL 0
-#define BAT_LED_OFF_LVL 1
-
-#define PWR_LED_ON_LVL 1
-#define PWR_LED_OFF_LVL 0
-
-#define LED_SIDESEL_MB_PORT 0
-#define LED_SIDESEL_DB_PORT 1
-
-__override const int led_charge_lvl_1 = 5;
-__override const int led_charge_lvl_2 = 95;
-
-__override struct led_descriptor
- led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
- [STATE_CHARGING_LVL_1] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_CHARGING_LVL_2] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_CHARGING_FULL_CHARGE] = { { EC_LED_COLOR_WHITE,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S0] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S0_BAT_LOW] = { { EC_LED_COLOR_AMBER,
- 1 * LED_ONE_SEC },
- { LED_OFF, 1 * LED_ONE_SEC } },
- [STATE_DISCHARGE_S3] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S5] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_BATTERY_ERROR] = { { EC_LED_COLOR_AMBER,
- 0.5 * LED_ONE_SEC },
- { LED_OFF, 0.5 * LED_ONE_SEC } },
- [STATE_FACTORY_TEST] = { { EC_LED_COLOR_WHITE,
- 1 * LED_ONE_SEC },
- { LED_OFF, 1 * LED_ONE_SEC } },
- };
-
-__override const struct led_descriptor
- led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
- [PWR_LED_STATE_ON] = { { EC_LED_COLOR_WHITE, LED_INDEFINITE } },
- [PWR_LED_STATE_SUSPEND_AC] = { { EC_LED_COLOR_WHITE,
- 1 * LED_ONE_SEC },
- { LED_OFF, 1 * LED_ONE_SEC } },
- [PWR_LED_STATE_SUSPEND_NO_AC] = { { EC_LED_COLOR_WHITE,
- 1 * LED_ONE_SEC },
- { LED_OFF,
- 1 * LED_ONE_SEC } },
- [PWR_LED_STATE_OFF] = { { LED_OFF, LED_INDEFINITE } },
- };
-
-const enum ec_led_id supported_led_ids[] = {
- EC_LED_ID_BATTERY_LED,
- EC_LED_ID_POWER_LED,
-};
-
-const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-
-__override void led_set_color_battery(enum ec_led_colors color)
-{
- int port;
-
- /* There are four battery leds, LED1/LED2 are on MB side and
- * LED3/LED4 are on DB side. All leds are OFF by default.
- */
- int led1, led2, led3, led4;
-
- led1 = led2 = led3 = led4 = BAT_LED_OFF_LVL;
-
- /* Check which port is the charging port,
- * and turn on the corresponding led.
- */
- if (led_auto_control_is_enabled(EC_LED_ID_BATTERY_LED)) {
- port = charge_manager_get_active_charge_port();
- switch (port) {
- case LED_SIDESEL_MB_PORT:
- switch (color) {
- case EC_LED_COLOR_AMBER:
- led1 = BAT_LED_ON_LVL;
- break;
- case EC_LED_COLOR_WHITE:
- led2 = BAT_LED_ON_LVL;
- break;
- default: /* LED_OFF and other unsupported colors */
- break;
- }
- break;
- case LED_SIDESEL_DB_PORT:
- switch (color) {
- case EC_LED_COLOR_AMBER:
- led3 = BAT_LED_ON_LVL;
- break;
- case EC_LED_COLOR_WHITE:
- led4 = BAT_LED_ON_LVL;
- break;
- default: /* LED_OFF and other unsupported colors */
- break;
- }
- break;
- default: /* Unknown charging port */
- break;
- }
- } else {
- switch (color) {
- case EC_LED_COLOR_AMBER:
- led1 = BAT_LED_ON_LVL;
- led3 = BAT_LED_ON_LVL;
- break;
- case EC_LED_COLOR_WHITE:
- led2 = BAT_LED_ON_LVL;
- led4 = BAT_LED_ON_LVL;
- break;
- default: /* LED_OFF and other unsupported colors */
- break;
- }
- }
-
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_led_1_odl), led1);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_led_2_odl), led2);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_led_3_l), led3);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_led_4_l), led4);
-}
-
-__override void led_set_color_power(enum ec_led_colors color)
-{
- if (color == EC_LED_COLOR_WHITE)
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_power_led_gate),
- PWR_LED_ON_LVL);
- else
- /* LED_OFF and unsupported colors */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_power_led_gate),
- PWR_LED_OFF_LVL);
-}
-
-void led_get_brightness_range(enum ec_led_id led_id, uint8_t *brightness_range)
-{
- if (led_id == EC_LED_ID_BATTERY_LED) {
- brightness_range[EC_LED_COLOR_AMBER] = 1;
- brightness_range[EC_LED_COLOR_WHITE] = 1;
- } else if (led_id == EC_LED_ID_POWER_LED) {
- brightness_range[EC_LED_COLOR_WHITE] = 1;
- }
-}
-
-int led_set_brightness(enum ec_led_id led_id, const uint8_t *brightness)
-{
- if (led_id == EC_LED_ID_BATTERY_LED) {
- led_auto_control(led_id, 0);
- if (brightness[EC_LED_COLOR_AMBER] != 0)
- led_set_color_battery(EC_LED_COLOR_AMBER);
- else if (brightness[EC_LED_COLOR_WHITE] != 0)
- led_set_color_battery(EC_LED_COLOR_WHITE);
- else if (brightness[LED_OFF] != 0)
- led_set_color_battery(LED_OFF);
- else {
- led_auto_control(led_id, 1);
- led_set_color_battery(LED_OFF);
- }
- } else if (led_id == EC_LED_ID_POWER_LED) {
- if (brightness[EC_LED_COLOR_WHITE] != 0)
- led_set_color_power(EC_LED_COLOR_WHITE);
- else
- led_set_color_power(LED_OFF);
- }
-
- return EC_SUCCESS;
-}
diff --git a/zephyr/program/nissa/joxer/src/usbc.c b/zephyr/program/nissa/joxer/src/usbc.c
deleted file mode 100644
index 8e576c5673..0000000000
--- a/zephyr/program/nissa/joxer/src/usbc.c
+++ /dev/null
@@ -1,368 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charge_state_v2.h"
-#include "chipset.h"
-#include "driver/charger/sm5803.h"
-#include "driver/tcpm/it83xx_pd.h"
-#include "driver/tcpm/ps8xxx_public.h"
-#include "driver/tcpm/tcpci.h"
-#include "hooks.h"
-#include "nissa_common.h"
-#include "system.h"
-#include "usb_mux.h"
-
-#include <zephyr/logging/log.h>
-
-#include <ap_power/ap_power.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-/* Vconn control for integrated ITE TCPC */
-void board_pd_vconn_ctrl(int port, enum usbpd_cc_pin cc_pin, int enabled)
-{
- /* Vconn control is only for port 0 */
- if (port)
- return;
-
- if (cc_pin == USBPD_CC_PIN_1)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(gpio_en_usb_c0_cc1_vconn),
- !!enabled);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(gpio_en_usb_c0_cc2_vconn),
- !!enabled);
-}
-
-__override bool pd_check_vbus_level(int port, enum vbus_level level)
-{
- return sm5803_check_vbus_level(port, level);
-}
-
-/*
- * Putting chargers into LPM when in suspend reduces power draw by about 8mW
- * per charger, but also seems critical to correct operation in source mode:
- * if chargers are not in LPM when a sink is first connected, VBUS sourcing
- * works even if the partner is later removed (causing LPM entry) and
- * reconnected (causing LPM exit). If in LPM initially, sourcing VBUS
- * consistently causes the charger to report (apparently spurious) overcurrent
- * failures.
- *
- * In short, this is important to making things work correctly but we don't
- * understand why.
- */
-static void board_chargers_suspend(struct ap_power_ev_callback *const cb,
- const struct ap_power_ev_data data)
-{
- void (*fn)(int chgnum);
-
- switch (data.event) {
- case AP_POWER_SUSPEND:
- fn = sm5803_enable_low_power_mode;
- break;
- case AP_POWER_RESUME:
- fn = sm5803_disable_low_power_mode;
- break;
- default:
- LOG_WRN("%s: power event %d is not recognized", __func__,
- data.event);
- return;
- }
-
- fn(CHARGER_PRIMARY);
- if (board_get_charger_chip_count() > 1)
- fn(CHARGER_SECONDARY);
-}
-
-static int board_chargers_suspend_init(const struct device *unused)
-{
- static struct ap_power_ev_callback cb = {
- .handler = board_chargers_suspend,
- .events = AP_POWER_SUSPEND | AP_POWER_RESUME,
- };
- ap_power_ev_add_callback(&cb);
- return 0;
-}
-SYS_INIT(board_chargers_suspend_init, APPLICATION, 0);
-
-int board_set_active_charge_port(int port)
-{
- int is_real_port = (port >= 0 && port < board_get_usb_pd_port_count());
- int i;
- int old_port;
- int rv;
-
- if (!is_real_port && port != CHARGE_PORT_NONE)
- return EC_ERROR_INVAL;
-
- old_port = charge_manager_get_active_charge_port();
- LOG_INF("Charge update: p%d -> p%d", old_port, port);
-
- /* Check if port is sourcing VBUS. */
- if (port != CHARGE_PORT_NONE && charger_is_sourcing_otg_power(port)) {
- LOG_WRN("Skip enable p%d: already sourcing", port);
- return EC_ERROR_INVAL;
- }
-
- /* Disable sinking on all ports except the desired one */
- for (i = 0; i < board_get_usb_pd_port_count(); i++) {
- if (i == port)
- continue;
-
- if (sm5803_vbus_sink_enable(i, 0))
- /*
- * Do not early-return because this can fail during
- * power-on which would put us into a loop.
- */
- LOG_WRN("p%d: sink path disable failed.", i);
- }
-
- /* Don't enable anything (stop here) if no ports were requested */
- if ((port == CHARGE_PORT_NONE) || (old_port == port))
- return EC_SUCCESS;
-
- /*
- * Stop the charger IC from switching while changing ports. Otherwise,
- * we can overcurrent the adapter we're switching to. (crbug.com/926056)
- */
- if (old_port != CHARGE_PORT_NONE)
- charger_discharge_on_ac(1);
-
- /* Enable requested charge port. */
- rv = sm5803_vbus_sink_enable(port, 1);
- if (rv)
- LOG_WRN("p%d: sink path enable failed: code %d", port, rv);
-
- /* Allow the charger IC to begin/continue switching. */
- charger_discharge_on_ac(0);
-
- return rv;
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- /*
- * TCPC 0 is embedded in the EC and processes interrupts in the chip
- * code (it83xx/intc.c). This function only needs to poll port C1 if
- * present.
- */
- uint16_t status = 0;
- int regval;
-
- /* Is the C1 port present and its IRQ line asserted? */
- if (board_get_usb_pd_port_count() == 2 &&
- !gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- /*
- * C1 IRQ is shared between BC1.2 and TCPC; poll TCPC to see if
- * it asserted the IRQ.
- */
- if (!tcpc_read16(1, TCPC_REG_ALERT, &regval)) {
- if (regval)
- status = PD_STATUS_TCPC_ALERT_1;
- }
- }
-
- return status;
-}
-
-void pd_power_supply_reset(int port)
-{
- int prev_en;
-
- if (port < 0 || port >= board_get_usb_pd_port_count())
- return;
-
- prev_en = charger_is_sourcing_otg_power(port);
-
- /* Disable Vbus */
- charger_enable_otg_power(port, 0);
-
- /* Discharge Vbus if previously enabled */
- if (prev_en)
- sm5803_set_vbus_disch(port, 1);
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- enum ec_error_list rv;
-
- if (port < 0 || port > board_get_usb_pd_port_count()) {
- LOG_WRN("Port C%d does not exist, cannot enable VBUS", port);
- return EC_ERROR_INVAL;
- }
-
- /* Disable sinking */
- rv = sm5803_vbus_sink_enable(port, 0);
- if (rv) {
- LOG_WRN("C%d failed to disable sinking: %d", port, rv);
- return rv;
- }
-
- /* Disable Vbus discharge */
- rv = sm5803_set_vbus_disch(port, 0);
- if (rv) {
- LOG_WRN("C%d failed to clear VBUS discharge: %d", port, rv);
- return rv;
- }
-
- /* Provide Vbus */
- rv = charger_enable_otg_power(port, 1);
- if (rv) {
- LOG_WRN("C%d failed to enable VBUS sourcing: %d", port, rv);
- return rv;
- }
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-__override void typec_set_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- int rv;
- const int current = rp == TYPEC_RP_3A0 ? 3000 : 1500;
-
- rv = charger_set_otg_current_voltage(port, current, 5000);
- if (rv != EC_SUCCESS) {
- LOG_WRN("Failed to set source ilimit on port %d to %d: %d",
- port, current, rv);
- }
-}
-
-void board_reset_pd_mcu(void)
-{
- /*
- * Do nothing. The integrated TCPC for C0 lacks a dedicated reset
- * command, and C1 (if present) doesn't have a reset pin connected
- * to the EC.
- */
-}
-
-#define INT_RECHECK_US 5000
-
-/* C0 interrupt line shared by BC 1.2 and charger */
-
-static void check_c0_line(void);
-DECLARE_DEFERRED(check_c0_line);
-
-static void notify_c0_chips(void)
-{
- usb_charger_task_set_event(0, USB_CHG_EVENT_BC12);
- sm5803_interrupt(0);
-}
-
-static void check_c0_line(void)
-{
- /*
- * If line is still being held low, see if there's more to process from
- * one of the chips
- */
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl))) {
- notify_c0_chips();
- hook_call_deferred(&check_c0_line_data, INT_RECHECK_US);
- }
-}
-
-void usb_c0_interrupt(enum gpio_signal s)
-{
- /* Cancel any previous calls to check the interrupt line */
- hook_call_deferred(&check_c0_line_data, -1);
-
- /* Notify all chips using this line that an interrupt came in */
- notify_c0_chips();
-
- /* Check the line again in 5ms */
- hook_call_deferred(&check_c0_line_data, INT_RECHECK_US);
-}
-
-/* C1 interrupt line shared by BC 1.2, TCPC, and charger */
-static void check_c1_line(void);
-DECLARE_DEFERRED(check_c1_line);
-
-static void notify_c1_chips(void)
-{
- schedule_deferred_pd_interrupt(1);
- usb_charger_task_set_event(1, USB_CHG_EVENT_BC12);
- /* Charger is handled in board_process_pd_alert */
-}
-
-static void check_c1_line(void)
-{
- /*
- * If line is still being held low, see if there's more to process from
- * one of the chips.
- */
- if (!gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- notify_c1_chips();
- hook_call_deferred(&check_c1_line_data, INT_RECHECK_US);
- }
-}
-
-void usb_c1_interrupt(enum gpio_signal s)
-{
- /* Cancel any previous calls to check the interrupt line */
- hook_call_deferred(&check_c1_line_data, -1);
-
- /* Notify all chips using this line that an interrupt came in */
- notify_c1_chips();
-
- /* Check the line again in 5ms */
- hook_call_deferred(&check_c1_line_data, INT_RECHECK_US);
-}
-
-/*
- * Check state of IRQ lines at startup, ensuring an IRQ that happened before
- * the EC started up won't get lost (leaving the IRQ line asserted and blocking
- * any further interrupts on the port).
- *
- * Although the PD task will check for pending TCPC interrupts on startup,
- * the charger sharing the IRQ will not be polled automatically.
- */
-void board_handle_initial_typec_irq(void)
-{
- check_c0_line();
- check_c1_line();
-}
-/*
- * This must run after sub-board detection (which happens in EC main()),
- * but isn't depended on by anything else either.
- */
-DECLARE_HOOK(HOOK_INIT, board_handle_initial_typec_irq, HOOK_PRIO_LAST);
-
-/*
- * Handle charger interrupts in the PD task. Not doing so can lead to a priority
- * inversion where we fail to respond to TCPC alerts quickly enough because we
- * don't get another edge on a shared IRQ until the charger interrupt is cleared
- * (or the IRQ is polled again), which happens in the low-priority charger task:
- * the high-priority type-C handler is thus blocked on the lower-priority
- * charger.
- *
- * To avoid that, we run charger interrupts at the same priority.
- */
-void board_process_pd_alert(int port)
-{
- /*
- * Port 0 doesn't use an external TCPC, so its interrupts don't need
- * this special handling.
- */
- if (port == 1 &&
- !gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- sm5803_handle_interrupt(port);
- }
-}
-
-int pd_snk_is_vbus_provided(int port)
-{
- int chg_det = 0;
-
- sm5803_get_chg_det(port, &chg_det);
-
- return chg_det;
-}
diff --git a/zephyr/program/nissa/nereid/generated.dtsi b/zephyr/program/nissa/nereid/generated.dtsi
deleted file mode 100644
index bca58c478e..0000000000
--- a/zephyr/program/nissa/nereid/generated.dtsi
+++ /dev/null
@@ -1,260 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * This file is auto-generated - do not edit!
- */
-
-/ {
-
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_ec_vsense_pp1050_proc: ec_vsense_pp1050_proc {
- enum-name = "ADC_PP1050_PROC";
- io-channels = <&adc0 14>;
- };
- adc_ec_vsense_pp3300_s5: ec_vsense_pp3300_s5 {
- enum-name = "ADC_PP3300_S5";
- io-channels = <&adc0 0>;
- };
- adc_temp_sensor_1: temp_sensor_1 {
- enum-name = "ADC_TEMP_SENSOR_1";
- io-channels = <&adc0 2>;
- };
- adc_temp_sensor_2: temp_sensor_2 {
- enum-name = "ADC_TEMP_SENSOR_2";
- io-channels = <&adc0 3>;
- };
- adc_temp_sensor_3: temp_sensor_3 {
- enum-name = "ADC_TEMP_SENSOR_3";
- io-channels = <&adc0 13>;
- };
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_acc_int_l: acc_int_l {
- gpios = <&gpioc 0 GPIO_INPUT>;
- };
- gpio_all_sys_pwrgd: all_sys_pwrgd {
- gpios = <&gpiob 7 GPIO_INPUT>;
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioh 5 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- gpio_cpu_c10_gate_l: cpu_c10_gate_l {
- gpios = <&gpiog 1 GPIO_INPUT>;
- };
- gpio_ec_battery_pres_odl: ec_battery_pres_odl {
- gpios = <&gpioi 4 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpioj 5 GPIO_OUTPUT>;
- };
- gpio_ec_edp_bl_en_od: ec_edp_bl_en_od {
- gpios = <&gpiok 4 GPIO_ODR_HIGH>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- gpio_ec_entering_rw: ec_entering_rw {
- gpios = <&gpioc 7 GPIO_OUTPUT>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_ec_gsc_packet_mode: ec_gsc_packet_mode {
- gpios = <&gpioh 1 GPIO_OUTPUT>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ec_pch_wake_odl: ec_pch_wake_odl {
- gpios = <&gpiob 2 GPIO_ODR_LOW>;
- };
- gpio_ec_prochot_odl: ec_prochot_odl {
- gpios = <&gpioi 1 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_dsw_pwrok: ec_soc_dsw_pwrok {
- gpios = <&gpiol 7 GPIO_OUTPUT>;
- };
- gpio_ec_soc_hdmi_hpd: ec_soc_hdmi_hpd {
- gpios = <&gpiok 7 GPIO_OUTPUT>;
- };
- gpio_ec_soc_int_odl: ec_soc_int_odl {
- gpios = <&gpiod 5 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_ec_soc_pch_pwrok_od: ec_soc_pch_pwrok_od {
- gpios = <&gpiod 6 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_pwr_btn_odl: ec_soc_pwr_btn_odl {
- gpios = <&gpiob 6 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- gpio_ec_soc_rsmrst_l: ec_soc_rsmrst_l {
- gpios = <&gpioh 0 GPIO_OUTPUT>;
- };
- gpio_ec_soc_rtcrst: ec_soc_rtcrst {
- gpios = <&gpiok 2 GPIO_OUTPUT>;
- };
- gpio_ec_soc_sys_pwrok: ec_soc_sys_pwrok {
- gpios = <&gpiof 2 GPIO_OUTPUT>;
- };
- gpio_ec_soc_vccst_pwrgd_od: ec_soc_vccst_pwrgd_od {
- gpios = <&gpioe 5 GPIO_ODR_HIGH>;
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpioa 6 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_en_kb_bl: en_kb_bl {
- gpios = <&gpioj 3 GPIO_OUTPUT>;
- enum-name = "GPIO_EN_KEYBOARD_BACKLIGHT";
- };
- gpio_en_pp3300_s5: en_pp3300_s5 {
- gpios = <&gpioc 5 GPIO_OUTPUT>;
- enum-name = "GPIO_TEMP_SENSOR_POWER";
- };
- gpio_en_pp5000_pen_x: en_pp5000_pen_x {
- gpios = <&gpiob 5 GPIO_OUTPUT>;
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpiok 5 GPIO_OUTPUT>;
- };
- gpio_en_slp_z: en_slp_z {
- gpios = <&gpiok 3 GPIO_OUTPUT>;
- };
- gpio_en_usb_a0_vbus: en_usb_a0_vbus {
- gpios = <&gpiol 6 GPIO_OUTPUT>;
- };
- gpio_en_usb_c0_cc1_vconn: en_usb_c0_cc1_vconn {
- gpios = <&gpioh 4 GPIO_OUTPUT>;
- };
- gpio_en_usb_c0_cc2_vconn: en_usb_c0_cc2_vconn {
- gpios = <&gpioh 6 GPIO_OUTPUT>;
- };
- gpio_gsc_ec_pwr_btn_odl: gsc_ec_pwr_btn_odl {
- gpios = <&gpioe 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_hdmi_sel: hdmi_sel {
- gpios = <&gpioc 6 GPIO_OUTPUT>;
- };
- gpio_imu_int_l: imu_int_l {
- gpios = <&gpioj 0 GPIO_INPUT>;
- };
- gpio_imvp91_vrrdy_od: imvp91_vrrdy_od {
- gpios = <&gpioj 4 GPIO_INPUT>;
- };
- gpio_lid_open: lid_open {
- gpios = <&gpiof 3 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_pen_detect_odl: pen_detect_odl {
- gpios = <&gpioj 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_pg_pp1050_mem_s3_od: pg_pp1050_mem_s3_od {
- gpios = <&gpiod 3 GPIO_INPUT>;
- };
- gpio_pg_pp5000_s5_od: pg_pp5000_s5_od {
- gpios = <&gpioe 3 GPIO_INPUT>;
- };
- gpio_rsmrst_pwrgd_l: rsmrst_pwrgd_l {
- gpios = <&gpioe 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_slp_s0_l: slp_s0_l {
- gpios = <&gpioe 4 GPIO_INPUT>;
- };
- gpio_slp_s3_l: slp_s3_l {
- gpios = <&gpioh 3 GPIO_INPUT>;
- };
- gpio_slp_s4_l: slp_s4_l {
- gpios = <&gpioi 5 GPIO_INPUT>;
- };
- gpio_slp_sus_l: slp_sus_l {
- gpios = <&gpiog 2 GPIO_INPUT>;
- };
- gpio_sub_usb_a1_ilimit_sdp: sub_usb_a1_ilimit_sdp {
- gpios = <&gpiof 1 GPIO_OUTPUT>;
- enum-name = "GPIO_USB2_ILIM_SEL";
- };
- gpio_sys_rst_odl: sys_rst_odl {
- gpios = <&gpiod 1 GPIO_ODR_HIGH>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpioa 7 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_usb_a0_ilimit_sdp: usb_a0_ilimit_sdp {
- gpios = <&gpiol 5 GPIO_OUTPUT>;
- enum-name = "GPIO_USB1_ILIM_SEL";
- };
- gpio_usb_c0_frs: usb_c0_frs {
- gpios = <&gpioc 4 GPIO_OUTPUT>;
- };
- gpio_usb_c0_int_odl: usb_c0_int_odl {
- gpios = <&gpiok 0 GPIO_INPUT_PULL_UP>;
- };
- gpio_vccin_aux_vid0: vccin_aux_vid0 {
- gpios = <&gpiod 0 GPIO_INPUT>;
- };
- gpio_vccin_aux_vid1: vccin_aux_vid1 {
- gpios = <&gpiok 1 GPIO_INPUT>;
- };
- gpio_voldn_btn_odl: voldn_btn_odl {
- gpios = <&gpioi 6 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_volup_btn_odl: volup_btn_odl {
- gpios = <&gpioi 7 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_ec_i2c_eeprom: ec_i2c_eeprom {
- i2c-port = <&i2c0>;
- enum-names = "I2C_PORT_EEPROM";
- };
- i2c_ec_i2c_batt: ec_i2c_batt {
- i2c-port = <&i2c1>;
- enum-names = "I2C_PORT_BATTERY";
- };
- i2c_ec_i2c_sensor: ec_i2c_sensor {
- i2c-port = <&i2c2>;
- enum-names = "I2C_PORT_SENSOR";
- };
- i2c_ec_i2c_sub_usb_c1: ec_i2c_sub_usb_c1 {
- i2c-port = <&i2c4>;
- enum-names = "I2C_PORT_USB_C1_TCPC";
- };
- i2c_ec_i2c_usb_c0: ec_i2c_usb_c0 {
- i2c-port = <&i2c5>;
- enum-names = "I2C_PORT_USB_C0_TCPC";
- };
- };
-};
-
-&adc0 {
- status = "okay";
-};
-
-&i2c0 {
- status = "okay";
-};
-
-&i2c1 {
- status = "okay";
-};
-
-&i2c2 {
- status = "okay";
-};
-
-&i2c4 {
- status = "okay";
-};
-
-&i2c5 {
- status = "okay";
-};
diff --git a/zephyr/program/nissa/nereid/keyboard.dtsi b/zephyr/program/nissa/nereid/keyboard.dtsi
deleted file mode 100644
index 04a620767a..0000000000
--- a/zephyr/program/nissa/nereid/keyboard.dtsi
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- kblight {
- compatible = "cros-ec,kblight-pwm";
- /*
- * Use 324 Hz so that 32Khz clock source is used,
- * which is not gated in power saving mode.
- */
- pwms = <&pwm0 0 PWM_HZ(324) PWM_POLARITY_NORMAL>;
- };
-};
-
-&pwm0 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm0_gpa0_default>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/nereid/motionsense.dtsi b/zephyr/program/nissa/nereid/motionsense.dtsi
deleted file mode 100644
index a65bb48fbd..0000000000
--- a/zephyr/program/nissa/nereid/motionsense.dtsi
+++ /dev/null
@@ -1,147 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * Interrupt bindings for sensor devices.
- */
- bmi3xx-int = &base_accel;
- bma4xx-int = &lid_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- base_mutex: base-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 (-1) 0
- (-1) 0 0
- 0 0 (-1)>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bmi323_data: bmi323-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
-
- bma422_data: bma422-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- * TODO(b/238139272): The first entries of the array must be
- * accelerometers,then gyroscope. Fix this dependency in the DTS
- * processing which makes the devicetree entries independent.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&bma422_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi323_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_gyro: base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi323_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_imu &int_lid_imu>;
- };
-};
diff --git a/zephyr/program/nissa/nereid/nereid_vif.xml b/zephyr/program/nissa/nereid/nereid_vif.xml
deleted file mode 100644
index 91c8dbe68b..0000000000
--- a/zephyr/program/nissa/nereid/nereid_vif.xml
+++ /dev/null
@@ -1,350 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<vif:VIF xmlns:opt="http://usb.org/VendorInfoFileOptionalContent.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="http://usb.org/VendorInfoFile.xsd">
- <vif:VIF_Specification>3.19</vif:VIF_Specification>
- <vif:VIF_App>
- <vif:Vendor>USB-IF</vif:Vendor>
- <vif:Name>VIF Editor</vif:Name>
- <vif:Version>3.2.4.0</vif:Version>
- </vif:VIF_App>
- <vif:Vendor_Name>Google</vif:Vendor_Name>
- <vif:Model_Part_Number>Nereid</vif:Model_Part_Number>
- <vif:Product_Revision>1</vif:Product_Revision>
- <vif:TID>0</vif:TID>
- <vif:VIF_Product_Type value="0">Port Product</vif:VIF_Product_Type>
- <vif:Certification_Type value="1">Reference Platform</vif:Certification_Type>
- <vif:Product>
- <!--Product Level Content:-->
- </vif:Product>
- <vif:Component>
- <!--Component 0: Port 0-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Component-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Port_Label>0</vif:Port_Label>
- <vif:Connector_Type value="2">Type-C®</vif:Connector_Type>
- <vif:USB4_Supported value="false" />
- <vif:USB_PD_Support value="true" />
- <vif:PD_Port_Type value="4">DRP</vif:PD_Port_Type>
- <vif:Type_C_State_Machine value="2">DRP</vif:Type_C_State_Machine>
- <vif:Port_Battery_Powered value="true" />
- <vif:BC_1_2_Support value="2">Charging Port</vif:BC_1_2_Support>
- <vif:Captive_Cable value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;General PD-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Spec_Revision_Major value="3" />
- <vif:PD_Spec_Revision_Minor value="1" />
- <vif:PD_Spec_Version_Major value="1" />
- <vif:PD_Spec_Version_Minor value="3" />
- <vif:PD_Specification_Revision value="2">Revision 3</vif:PD_Specification_Revision>
- <vif:SOP_Capable value="true" />
- <vif:SOP_P_Capable value="true" />
- <vif:SOP_PP_Capable value="true" />
- <vif:SOP_P_Debug_Capable value="false" />
- <vif:SOP_PP_Debug_Capable value="false" />
- <vif:Manufacturer_Info_Supported_Port value="true" />
- <vif:Manufacturer_Info_VID_Port value="6353">18D1</vif:Manufacturer_Info_VID_Port>
- <vif:Manufacturer_Info_PID_Port value="20570">505A</vif:Manufacturer_Info_PID_Port>
- <vif:Chunking_Implemented_SOP value="true" />
- <vif:Unchunked_Extended_Messages_Supported value="false" />
- <vif:Security_Msgs_Supported_SOP value="false" />
- <vif:Unconstrained_Power value="false" />
- <vif:Num_Fixed_Batteries value="1" />
- <vif:Num_Swappable_Battery_Slots value="0" />
- <vif:ID_Header_Connector_Type_SOP value="2">USB Type-C® Receptacle</vif:ID_Header_Connector_Type_SOP>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Capabilities-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:USB_Comms_Capable value="true" />
- <vif:DR_Swap_To_DFP_Supported value="true" />
- <vif:DR_Swap_To_UFP_Supported value="false" />
- <vif:VCONN_Swap_To_On_Supported value="true" />
- <vif:VCONN_Swap_To_Off_Supported value="true" />
- <vif:Responds_To_Discov_SOP_UFP value="false" />
- <vif:Responds_To_Discov_SOP_DFP value="true" />
- <vif:Attempts_Discov_SOP value="true" />
- <vif:Power_Interruption_Available value="0">No Interruption Possible</vif:Power_Interruption_Available>
- <vif:Data_Reset_Supported value="false" />
- <vif:Enter_USB_Supported value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Type-C®-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Type_C_Can_Act_As_Host value="true" />
- <vif:Type_C_Can_Act_As_Device value="false" />
- <vif:Type_C_Implements_Try_SRC value="true" />
- <vif:Type_C_Implements_Try_SNK value="false" />
- <vif:Type_C_Supports_Audio_Accessory value="false" />
- <vif:Type_C_Is_VCONN_Powered_Accessory value="false" />
- <vif:Type_C_Is_Debug_Target_SRC value="true" />
- <vif:Type_C_Is_Debug_Target_SNK value="true" />
- <vif:RP_Value value="1">1.5A</vif:RP_Value>
- <vif:Type_C_Port_On_Hub value="false" />
- <vif:Type_C_Power_Source value="2">Both</vif:Type_C_Power_Source>
- <vif:Type_C_Sources_VCONN value="true" />
- <vif:Type_C_Is_Alt_Mode_Controller value="true" />
- <vif:Type_C_Is_Alt_Mode_Adapter value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Product Power-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Product_Total_Source_Power_mW value="15000">15000 mW</vif:Product_Total_Source_Power_mW>
- <vif:Port_Source_Power_Type value="0">Assured</vif:Port_Source_Power_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Host-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Host_Supports_USB_Data value="true" />
- <vif:Host_Speed value="1">USB 3.2 Gen 1x1</vif:Host_Speed>
- <vif:Host_Contains_Captive_Retimer value="false" />
- <vif:Host_Truncates_DP_For_tDHPResponse value="false" />
- <vif:Host_Is_Embedded value="false" />
- <vif:Host_Suspend_Supported value="true" />
- <vif:Is_DFP_On_Hub value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Battery Charging 1.2-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:BC_1_2_Charging_Port_Type value="1">CDP</vif:BC_1_2_Charging_Port_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Source-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Source value="15000">15000 mW</vif:PD_Power_As_Source>
- <vif:EPR_Supported_As_Src value="false" />
- <vif:USB_Suspend_May_Be_Cleared value="false" />
- <vif:Sends_Pings value="false" />
- <vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink value="0">FR_Swap not supported</vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink>
- <vif:Master_Port value="false" />
- <vif:Num_Src_PDOs value="1" />
- <vif:PD_OC_Protection value="true" />
- <vif:PD_OCP_Method value="0">Over-Current Response</vif:PD_OCP_Method>
- <!--Bundle: SrcPdoList-->
- <vif:SrcPdoList>
- <vif:SrcPDO>
- <!--Source PDO 1-->
- <vif:Src_PDO_Supply_Type value="0">Fixed</vif:Src_PDO_Supply_Type>
- <vif:Src_PDO_Peak_Current value="0">100% IOC</vif:Src_PDO_Peak_Current>
- <vif:Src_PDO_Voltage value="100">5000 mV</vif:Src_PDO_Voltage>
- <vif:Src_PDO_Max_Current value="300">3000 mA</vif:Src_PDO_Max_Current>
- <vif:Src_PD_OCP_OC_Debounce value="0">0 msec</vif:Src_PD_OCP_OC_Debounce>
- <vif:Src_PD_OCP_OC_Threshold value="300">3000 mA</vif:Src_PD_OCP_OC_Threshold>
- </vif:SrcPDO>
- </vif:SrcPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Sink-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Sink value="45000">45000 mW</vif:PD_Power_As_Sink>
- <vif:EPR_Supported_As_Snk value="false" />
- <vif:No_USB_Suspend_May_Be_Set value="true" />
- <vif:GiveBack_May_Be_Set value="false" />
- <vif:Higher_Capability_Set value="false" />
- <vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source value="0">FR_Swap not supported</vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source>
- <vif:Num_Snk_PDOs value="3" />
- <!--Bundle: SnkPdoList-->
- <vif:SnkPdoList>
- <vif:SnkPDO>
- <!--Sink PDO 1-->
- <vif:Snk_PDO_Supply_Type value="0">Fixed</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Voltage value="100">5000 mV</vif:Snk_PDO_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 2-->
- <vif:Snk_PDO_Supply_Type value="1">Battery</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Op_Power value="60">15000 mW</vif:Snk_PDO_Op_Power>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="300">15000 mV</vif:Snk_PDO_Max_Voltage>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 3-->
- <vif:Snk_PDO_Supply_Type value="2">Variable</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="300">15000 mV</vif:Snk_PDO_Max_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- </vif:SnkPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Dual Role-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Accepts_PR_Swap_As_Src value="true" />
- <vif:Accepts_PR_Swap_As_Snk value="true" />
- <vif:Requests_PR_Swap_As_Src value="true" />
- <vif:Requests_PR_Swap_As_Snk value="true" />
- <vif:FR_Swap_Supported_As_Initial_Sink value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;SOP Discover ID-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:XID_SOP value="0" />
- <vif:Data_Capable_As_USB_Host_SOP value="true" />
- <vif:Data_Capable_As_USB_Device_SOP value="false" />
- <vif:Product_Type_UFP_SOP value="0">Undefined</vif:Product_Type_UFP_SOP>
- <vif:Product_Type_DFP_SOP value="2">PDUSB Host</vif:Product_Type_DFP_SOP>
- <vif:DFP_VDO_Port_Number value="0" />
- <vif:Modal_Operation_Supported_SOP value="false" />
- <vif:USB_VID_SOP value="6353">18D1</vif:USB_VID_SOP>
- <vif:PID_SOP value="20570">505A</vif:PID_SOP>
- <vif:bcdDevice_SOP value="0">0000</vif:bcdDevice_SOP>
- </vif:Component>
- <vif:Component>
- <!--Component 1: Port 1-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Component-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Port_Label>1</vif:Port_Label>
- <vif:Connector_Type value="2">Type-C®</vif:Connector_Type>
- <vif:USB4_Supported value="false" />
- <vif:USB_PD_Support value="true" />
- <vif:PD_Port_Type value="4">DRP</vif:PD_Port_Type>
- <vif:Type_C_State_Machine value="2">DRP</vif:Type_C_State_Machine>
- <vif:Port_Battery_Powered value="true" />
- <vif:BC_1_2_Support value="2">Charging Port</vif:BC_1_2_Support>
- <vif:Captive_Cable value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;General PD-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Spec_Revision_Major value="3" />
- <vif:PD_Spec_Revision_Minor value="1" />
- <vif:PD_Spec_Version_Major value="1" />
- <vif:PD_Spec_Version_Minor value="3" />
- <vif:PD_Specification_Revision value="2">Revision 3</vif:PD_Specification_Revision>
- <vif:SOP_Capable value="true" />
- <vif:SOP_P_Capable value="true" />
- <vif:SOP_PP_Capable value="true" />
- <vif:SOP_P_Debug_Capable value="false" />
- <vif:SOP_PP_Debug_Capable value="false" />
- <vif:Manufacturer_Info_Supported_Port value="true" />
- <vif:Manufacturer_Info_VID_Port value="6353">18D1</vif:Manufacturer_Info_VID_Port>
- <vif:Manufacturer_Info_PID_Port value="20570">505A</vif:Manufacturer_Info_PID_Port>
- <vif:Chunking_Implemented_SOP value="true" />
- <vif:Unchunked_Extended_Messages_Supported value="false" />
- <vif:Security_Msgs_Supported_SOP value="false" />
- <vif:Unconstrained_Power value="false" />
- <vif:Num_Fixed_Batteries value="1" />
- <vif:Num_Swappable_Battery_Slots value="0" />
- <vif:ID_Header_Connector_Type_SOP value="2">USB Type-C® Receptacle</vif:ID_Header_Connector_Type_SOP>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Capabilities-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:USB_Comms_Capable value="true" />
- <vif:DR_Swap_To_DFP_Supported value="true" />
- <vif:DR_Swap_To_UFP_Supported value="false" />
- <vif:VCONN_Swap_To_On_Supported value="true" />
- <vif:VCONN_Swap_To_Off_Supported value="true" />
- <vif:Responds_To_Discov_SOP_UFP value="false" />
- <vif:Responds_To_Discov_SOP_DFP value="true" />
- <vif:Attempts_Discov_SOP value="true" />
- <vif:Power_Interruption_Available value="0">No Interruption Possible</vif:Power_Interruption_Available>
- <vif:Data_Reset_Supported value="false" />
- <vif:Enter_USB_Supported value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Type-C®-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Type_C_Can_Act_As_Host value="true" />
- <vif:Type_C_Can_Act_As_Device value="false" />
- <vif:Type_C_Implements_Try_SRC value="true" />
- <vif:Type_C_Implements_Try_SNK value="false" />
- <vif:Type_C_Supports_Audio_Accessory value="false" />
- <vif:Type_C_Is_VCONN_Powered_Accessory value="false" />
- <vif:Type_C_Is_Debug_Target_SRC value="true" />
- <vif:Type_C_Is_Debug_Target_SNK value="true" />
- <vif:RP_Value value="1">1.5A</vif:RP_Value>
- <vif:Type_C_Port_On_Hub value="false" />
- <vif:Type_C_Power_Source value="2">Both</vif:Type_C_Power_Source>
- <vif:Type_C_Sources_VCONN value="true" />
- <vif:Type_C_Is_Alt_Mode_Controller value="true" />
- <vif:Type_C_Is_Alt_Mode_Adapter value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Product Power-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Product_Total_Source_Power_mW value="15000">15000 mW</vif:Product_Total_Source_Power_mW>
- <vif:Port_Source_Power_Type value="0">Assured</vif:Port_Source_Power_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Host-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Host_Supports_USB_Data value="true" />
- <vif:Host_Speed value="1">USB 3.2 Gen 1x1</vif:Host_Speed>
- <vif:Host_Contains_Captive_Retimer value="true" />
- <vif:Host_Truncates_DP_For_tDHPResponse value="false" />
- <vif:Host_Is_Embedded value="false" />
- <vif:Host_Suspend_Supported value="true" />
- <vif:Is_DFP_On_Hub value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Battery Charging 1.2-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:BC_1_2_Charging_Port_Type value="1">CDP</vif:BC_1_2_Charging_Port_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Source-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Source value="15000">15000 mW</vif:PD_Power_As_Source>
- <vif:EPR_Supported_As_Src value="false" />
- <vif:USB_Suspend_May_Be_Cleared value="false" />
- <vif:Sends_Pings value="false" />
- <vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink value="0">FR_Swap not supported</vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink>
- <vif:Master_Port value="false" />
- <vif:Num_Src_PDOs value="1" />
- <vif:PD_OC_Protection value="true" />
- <vif:PD_OCP_Method value="0">Over-Current Response</vif:PD_OCP_Method>
- <!--Bundle: SrcPdoList-->
- <vif:SrcPdoList>
- <vif:SrcPDO>
- <!--Source PDO 1-->
- <vif:Src_PDO_Supply_Type value="0">Fixed</vif:Src_PDO_Supply_Type>
- <vif:Src_PDO_Peak_Current value="0">100% IOC</vif:Src_PDO_Peak_Current>
- <vif:Src_PDO_Voltage value="100">5000 mV</vif:Src_PDO_Voltage>
- <vif:Src_PDO_Max_Current value="300">3000 mA</vif:Src_PDO_Max_Current>
- <vif:Src_PD_OCP_OC_Debounce value="0">0 msec</vif:Src_PD_OCP_OC_Debounce>
- <vif:Src_PD_OCP_OC_Threshold value="300">3000 mA</vif:Src_PD_OCP_OC_Threshold>
- </vif:SrcPDO>
- </vif:SrcPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Sink-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Sink value="45000">45000 mW</vif:PD_Power_As_Sink>
- <vif:EPR_Supported_As_Snk value="false" />
- <vif:No_USB_Suspend_May_Be_Set value="true" />
- <vif:GiveBack_May_Be_Set value="false" />
- <vif:Higher_Capability_Set value="false" />
- <vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source value="0">FR_Swap not supported</vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source>
- <vif:Num_Snk_PDOs value="3" />
- <!--Bundle: SnkPdoList-->
- <vif:SnkPdoList>
- <vif:SnkPDO>
- <!--Sink PDO 1-->
- <vif:Snk_PDO_Supply_Type value="0">Fixed</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Voltage value="100">5000 mV</vif:Snk_PDO_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 2-->
- <vif:Snk_PDO_Supply_Type value="1">Battery</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Op_Power value="60">15000 mW</vif:Snk_PDO_Op_Power>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="300">15000 mV</vif:Snk_PDO_Max_Voltage>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 3-->
- <vif:Snk_PDO_Supply_Type value="2">Variable</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="300">15000 mV</vif:Snk_PDO_Max_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- </vif:SnkPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Dual Role-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Accepts_PR_Swap_As_Src value="true" />
- <vif:Accepts_PR_Swap_As_Snk value="true" />
- <vif:Requests_PR_Swap_As_Src value="true" />
- <vif:Requests_PR_Swap_As_Snk value="true" />
- <vif:FR_Swap_Supported_As_Initial_Sink value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;SOP Discover ID-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:XID_SOP value="0" />
- <vif:Data_Capable_As_USB_Host_SOP value="true" />
- <vif:Data_Capable_As_USB_Device_SOP value="false" />
- <vif:Product_Type_UFP_SOP value="0">Undefined</vif:Product_Type_UFP_SOP>
- <vif:Product_Type_DFP_SOP value="2">PDUSB Host</vif:Product_Type_DFP_SOP>
- <vif:DFP_VDO_Port_Number value="1" />
- <vif:Modal_Operation_Supported_SOP value="false" />
- <vif:USB_VID_SOP value="6353">18D1</vif:USB_VID_SOP>
- <vif:PID_SOP value="20570">505A</vif:PID_SOP>
- <vif:bcdDevice_SOP value="0">0000</vif:bcdDevice_SOP>
- </vif:Component>
-</vif:VIF> \ No newline at end of file
diff --git a/zephyr/program/nissa/nereid/overlay.dtsi b/zephyr/program/nissa/nereid/overlay.dtsi
deleted file mode 100644
index 36d30a0fce..0000000000
--- a/zephyr/program/nissa/nereid/overlay.dtsi
+++ /dev/null
@@ -1,409 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-#include <dt-bindings/usb_pd_tcpm.h>
-
-/ {
- aliases {
- gpio-cbi-wp = &gpio_ec_cbi_wp;
- gpio-wp = &gpio_ec_wp_odl;
- int-wp = &int_wp_l;
- /*
- * USB-C: interrupt input.
- * I2C pins are on i2c_ec_i2c_sub_usb_c1
- */
- gpio-usb-c1-int-odl = &gpio_sb_1;
- /*
- * USB-A: VBUS enable output
- * LTE: power enable output
- */
- gpio-en-usb-a1-vbus = &gpio_sb_2;
- /*
- * HDMI: power enable output, HDMI enable output,
- * and HPD input
- */
- gpio-en-rails-odl = &gpio_sb_1;
- gpio-hdmi-en-odl = &gpio_sb_4;
- gpio-hpd-odl = &gpio_sb_3;
- /*
- * Enable S5 rails for LTE sub-board
- */
- gpio-en-sub-s5-rails = &gpio_sb_2;
- };
-
-
- ec-console {
- compatible = "ec-console";
- disabled = "events", "lpc", "hostcmd";
- };
-
- batteries {
- default_battery: smp {
- compatible = "smp,l20m3pg0", "battery-smart";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_power_button
- &int_lid_open
- >;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&gpio_gsc_ec_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_vol_down: vol_down {
- irq-pin = <&gpio_voldn_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_vol_up: vol_up {
- irq-pin = <&gpio_volup_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_wp_l: wp_l {
- irq-pin = <&gpio_ec_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&gpio_tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_imu: ec_imu {
- irq-pin = <&gpio_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bmi3xx_interrupt";
- };
- int_lid_imu: lid_imu {
- irq-pin = <&gpio_acc_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bma4xx_interrupt";
- };
- int_usb_c0: usb_c0 {
- irq-pin = <&gpio_usb_c0_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_c0_interrupt";
- };
- int_usb_c1: usb_c1 {
- irq-pin = <&gpio_sb_1>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_c1_interrupt";
- };
- };
-
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios = <&gpioc 3 0>,
- <&gpiod 4 0>,
- <&gpiod 7 0>,
- <&gpioh 2 0>,
- <&gpioj 7 0>,
- <&gpiol 4 0>;
- };
-
- named-gpios {
- /*
- * EC doesn't take any specific action on CC/SBU disconnect due to
- * fault, but this definition is useful for hardware testing.
- */
- gpio_usb_c0_prot_fault_odl: usb_c0_prot_fault_odl {
- gpios = <&gpiok 6 GPIO_INPUT_PULL_UP>;
- };
-
- gpio_sb_1: sb_1 {
- gpios = <&gpioe 6 0>;
- no-auto-init;
- };
- gpio_sb_2: sb_2 {
- gpios = <&gpiof 0 0>;
- no-auto-init;
- };
-
- gpio_sb_3: sb_3 {
- gpios = <&gpioe 7 0>;
- no-auto-init;
- };
- gpio_sb_4: sb_4 {
- gpios = <&gpioe 0 0>;
- no-auto-init;
- };
- };
-
- temp_memory: memory {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_1>;
- };
- temp_charger: charger {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_2>;
- };
- temp_ambient: ambient {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_3>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- memory {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_memory>;
- };
- charger {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_charger>;
- };
- ambient {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_ambient>;
- };
- };
-
- usba {
- compatible = "cros-ec,usba-port-enable-pins";
- /*
- * sb_2 is only configured as GPIO when USB-A1 is present,
- * but it's still safe to control when disabled.
- *
- * ILIM_SEL pins are referred to by legacy enum name,
- * GPIO_USB*_ILIM_SEL. The one for port A1 is unused on
- * sub-boards that don't have USB-A so is safe to control
- * regardless of system configuration.
- */
- enable-pins = <&gpio_en_usb_a0_vbus &gpio_sb_2>;
- status = "okay";
- };
-
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- chg = <&chg_port0>;
- tcpc = <&usbpd0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_0>;
- };
- };
- port0-muxes {
- virtual_mux_0: virtual-mux-0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&bc12_port1>;
- chg = <&chg_port1>;
- tcpc = <&tcpc_port1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_1 &tcpci_mux_1>;
- };
- usb_mux_chain_1_no_mux: usb-mux-chain-1-no-mux {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&virtual_mux_1>;
- };
- };
- port1-muxes {
- virtual_mux_1: virtual-mux-1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- tcpci_mux_1: tcpci-mux-1 {
- compatible = "parade,usbc-mux-ps8xxx";
- };
- };
- };
-};
-
-&gpio_acc_int_l {
- gpios = <&gpioc 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
-};
-&gpio_imu_int_l {
- gpios = <&gpioj 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
-};
-&gpio_vccin_aux_vid0 {
- gpios = <&gpiod 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
-};
-&gpio_vccin_aux_vid1 {
- gpios = <&gpiok 1 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
-};
-
-&gpio_ec_prochot_odl {
- gpios = <&gpioi 1 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
-};
-
-&thermistor_3V3_51K1_47K_4050B {
- status = "okay";
-};
-
-&adc_ec_vsense_pp3300_s5 {
- /*
- * Voltage divider on input has 47k upper and 220k lower legs with 3 V
- * full-scale reading on the ADC. Apply the largest possible multiplier
- * (without overflowing int32) to get the best possible approximation
- * of the actual ratio, but derate by a factor of two to ensure
- * unexpectedly high values won't overflow.
- */
- mul = <(715828 / 2)>;
- div = <(589820 / 2)>;
-};
-
-&adc0 {
- pinctrl-0 = <&adc0_ch0_gpi0_default
- &adc0_ch2_gpi2_default
- &adc0_ch3_gpi3_default
- &adc0_ch13_gpl0_default
- &adc0_ch14_gpl1_default>;
- pinctrl-names = "default";
-};
-
-&pinctrl {
- i2c4_clk_gpe0_sleep: i2c4_clk_gpe0_sleep {
- pinmuxs = <&pinctrle 0 IT8XXX2_ALT_DEFAULT>;
- };
- i2c4_data_gpe7_sleep: i2c4_data_gpe7_sleep {
- pinmuxs = <&pinctrle 7 IT8XXX2_ALT_DEFAULT>;
- };
- i2c2_clk_gpf6_default: i2c2_clk_gpf6_default {
- gpio-voltage = "1v8";
- };
- i2c2_data_gpf7_default: i2c2_data_gpf7_default {
- gpio-voltage = "1v8";
- };
-};
-
-&i2c0 {
- label = "I2C_EEPROM";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
- pinctrl-0 = <&i2c0_clk_gpb3_default
- &i2c0_data_gpb4_default>;
- pinctrl-names = "default";
-};
-
-&i2c1 {
- label = "I2C_BATTERY";
- clock-frequency = <50000>;
- pinctrl-0 = <&i2c1_clk_gpc1_default
- &i2c1_data_gpc2_default>;
- pinctrl-names = "default";
-};
-
-&i2c2 {
- label = "I2C_SENSOR";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c2_clk_gpf6_default
- &i2c2_data_gpf7_default>;
- pinctrl-names = "default";
-};
-
-&i2c4 {
- label = "I2C_SUB_C1_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c4_clk_gpe0_default
- &i2c4_data_gpe7_default>;
- pinctrl-1 = <&i2c4_clk_gpe0_sleep
- &i2c4_data_gpe7_sleep>;
- pinctrl-names = "default", "sleep";
-
- bc12_port1: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- };
-
- chg_port1: sm5803@32 {
- compatible = "siliconmitus,sm5803";
- status = "okay";
- reg = <0x32>;
- };
-
- tcpc_port1: ps8745@b {
- compatible = "parade,ps8xxx";
- reg = <0xb>;
- tcpc-flags = <(TCPC_FLAGS_TCPCI_REV2_0)>;
- };
-};
-
-&i2c_ec_i2c_sub_usb_c1 {
- /*
- * Dynamic speed setting is used for AP-controlled firmware update
- * of PS8745 TCPC/redriver: the AP lowers speed to 400 kHz in order
- * to use more efficient window programming, then sets it back when
- * done.
- */
- dynamic-speed;
-};
-
-&i2c5 {
- label = "I2C_USB_C0_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c5_clk_gpa4_default
- &i2c5_data_gpa5_default>;
- pinctrl-names = "default";
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- };
-
- chg_port0: sm5803@32 {
- compatible = "siliconmitus,sm5803";
- status = "okay";
- reg = <0x32>;
- };
-};
-
-&usbpd0 {
- status = "okay";
-};
diff --git a/zephyr/program/nissa/nereid/power_signals.dtsi b/zephyr/program/nissa/nereid/power_signals.dtsi
deleted file mode 100644
index 8affae03b1..0000000000
--- a/zephyr/program/nissa/nereid/power_signals.dtsi
+++ /dev/null
@@ -1,223 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- chosen {
- intel-ap-pwrseq,espi = &espi0;
- };
-
- common-pwrseq {
- compatible = "intel,ap-pwrseq";
-
- sys-pwrok-delay = <10>;
- all-sys-pwrgd-timeout = <20>;
- };
-
- pwr-en-pp5000-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP5000_S5 enable output to regulator";
- enum-name = "PWR_EN_PP5000_A";
- gpios = <&gpiok 5 0>;
- output;
- };
- pwr-en-pp3300-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP3300_S5 enable output to LS";
- enum-name = "PWR_EN_PP3300_A";
- gpios = <&gpioc 5 0>;
- output;
- };
- pwr-pg-ec-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST power good from regulator";
- enum-name = "PWR_RSMRST";
- gpios = <&gpioe 1 0>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-pch-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST output to PCH";
- enum-name = "PWR_EC_PCH_RSMRST";
- gpios = <&gpioh 0 0>;
- output;
- };
- pwr-slp-s0-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S0_L input from PCH";
- enum-name = "PWR_SLP_S0";
- gpios = <&gpioe 4 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-s3-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S3_L input from PCH";
- enum-name = "PWR_SLP_S3";
- gpios = <&gpioh 3 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-sus-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_SUS_L input from PCH";
- enum-name = "PWR_SLP_SUS";
- gpios = <&gpiog 2 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-soc-dsw-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "DSW_PWROK output to PCH";
- enum-name = "PWR_EC_SOC_DSW_PWROK";
- gpios = <&gpiol 7 0>;
- output;
- };
- pwr-vccst-pwrgd-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VCCST_PWRGD output to PCH";
- enum-name = "PWR_VCCST_PWRGD";
- gpios = <&gpioe 5 (GPIO_OPEN_DRAIN | GPIO_VOLTAGE_1P8)>;
- output;
- };
- pwr-imvp9-vrrdy-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VRRDY input from IMVP9";
- enum-name = "PWR_IMVP9_VRRDY";
- gpios = <&gpioj 4 0>;
- };
- pwr-pch-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PCH_PWROK output to PCH";
- enum-name = "PWR_PCH_PWROK";
- gpios = <&gpiod 6 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-ec-pch-sys-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_PWROK output to PCH";
- enum-name = "PWR_EC_PCH_SYS_PWROK";
- gpios = <&gpiof 2 0>;
- output;
- };
- pwr-sys-rst-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_RESET# output to PCH";
- enum-name = "PWR_SYS_RST";
- gpios = <&gpiod 1 (GPIO_ACTIVE_LOW|GPIO_OPEN_DRAIN)>;
- output;
- };
- pwr-slp-s4 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S4 virtual wire input from PCH";
- enum-name = "PWR_SLP_S4";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S4";
- vw-invert;
- };
- pwr-slp-s5 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S5 virtual wire input from PCH";
- enum-name = "PWR_SLP_S5";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S5";
- vw-invert;
- };
- pwr-all-sys-pwrgd {
- /*
- * This is a board level signal, since this
- * signal needs some special processing.
- */
- compatible = "intel,ap-pwrseq-external";
- dbg-label = "Combined all power good";
- enum-name = "PWR_ALL_SYS_PWRGD";
- };
- pwr-adc-pp3300 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP3300_PROC";
- enum-name = "PWR_DSW_PWROK";
- trigger-high = <&vcmp0>;
- trigger-low = <&vcmp1>;
- };
- pwr-adc-pp1p05 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP1P05_PROC";
- enum-name = "PWR_PG_PP1P05";
- trigger-high = <&vcmp2>;
- trigger-low = <&vcmp3>;
- };
-
-};
-
-/*
- * Because the power signals directly reference the GPIOs,
- * the correspinding named-gpios need to have no-auto-init set.
- */
-&gpio_ec_soc_dsw_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_pch_pwrok_od {
- no-auto-init;
-};
-&gpio_ec_soc_rsmrst_l {
- no-auto-init;
-};
-&gpio_ec_soc_sys_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_vccst_pwrgd_od {
- no-auto-init;
-};
-&gpio_en_pp3300_s5 {
- no-auto-init;
-};
-&gpio_en_pp5000_s5 {
- no-auto-init;
-};
-&gpio_imvp91_vrrdy_od {
- no-auto-init;
-};
-&gpio_rsmrst_pwrgd_l {
- no-auto-init;
-};
-&gpio_slp_s0_l {
- no-auto-init;
-};
-&gpio_slp_s3_l {
- no-auto-init;
-};
-&gpio_slp_sus_l {
- no-auto-init;
-};
-&gpio_sys_rst_odl {
- no-auto-init;
-};
-&vcmp0 {
- status = "okay";
- scan-period = <IT8XXX2_VCMP_SCAN_PERIOD_600US>;
- comparison = <IT8XXX2_VCMP_GREATER>;
- /*
- * This is 90% of nominal voltage considering voltage
- * divider on ADC input.
- */
- threshold-mv = <2448>;
- io-channels = <&adc0 0>;
-};
-&vcmp1 {
- status = "okay";
- scan-period = <IT8XXX2_VCMP_SCAN_PERIOD_600US>;
- comparison = <IT8XXX2_VCMP_LESS_OR_EQUAL>;
- threshold-mv = <2448>;
- io-channels = <&adc0 0>;
-};
-&vcmp2 {
- status = "okay";
- scan-period = <IT8XXX2_VCMP_SCAN_PERIOD_600US>;
- comparison = <IT8XXX2_VCMP_GREATER>;
- /* Setting at 90% of nominal voltage */
- threshold-mv = <945>;
- io-channels = <&adc0 14>;
-};
-&vcmp3 {
- status = "okay";
- scan-period = <IT8XXX2_VCMP_SCAN_PERIOD_600US>;
- comparison = <IT8XXX2_VCMP_LESS_OR_EQUAL>;
- threshold-mv = <945>;
- io-channels = <&adc0 14>;
-};
diff --git a/zephyr/program/nissa/nereid/project.conf b/zephyr/program/nissa/nereid/project.conf
deleted file mode 100644
index 75a5faba5d..0000000000
--- a/zephyr/program/nissa/nereid/project.conf
+++ /dev/null
@@ -1,17 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_BOARD_NEREID=y
-
-# Ensure recovery key combination (esc+refresh+power) is reliable: b/236580049
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI2=y
-
-# Sensor drivers
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI3XX=y
-CONFIG_PLATFORM_EC_ACCEL_BMA4XX=y
-CONFIG_PLATFORM_EC_MAX_SENSOR_FREQ_MILLIHZ=100000
-
-# No fan supported, and tach is default-enabled
-CONFIG_TACH_IT8XXX2=n
diff --git a/zephyr/program/nissa/nereid/project.overlay b/zephyr/program/nissa/nereid/project.overlay
deleted file mode 100644
index 0aceac1c47..0000000000
--- a/zephyr/program/nissa/nereid/project.overlay
+++ /dev/null
@@ -1,13 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "../cbi.dtsi"
-
-#include "generated.dtsi"
-#include "keyboard.dtsi"
-#include "motionsense.dtsi"
-#include "overlay.dtsi"
-#include "power_signals.dtsi"
-#include "pwm_leds.dtsi"
diff --git a/zephyr/program/nissa/nereid/pwm_leds.dtsi b/zephyr/program/nissa/nereid/pwm_leds.dtsi
deleted file mode 100644
index aa4a76b271..0000000000
--- a/zephyr/program/nissa/nereid/pwm_leds.dtsi
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_led0: pwm_led_0 {
- pwms = <&pwm1 1 PWM_HZ(1296) PWM_POLARITY_INVERTED>,
- <&pwm2 2 PWM_HZ(1296) PWM_POLARITY_INVERTED>,
- <&pwm3 3 PWM_HZ(1296) PWM_POLARITY_INVERTED>;
- };
- };
-
- cros-pwmleds {
- compatible = "cros-ec,pwm-leds";
-
- leds = <&pwm_led0>;
-
- /*<red green blue>*/
- color-map-red = <100 0 0>;
- color-map-green = < 0 100 0>;
- color-map-blue = < 0 0 100>;
- color-map-yellow = < 0 50 50>;
- color-map-white = <100 100 100>;
- color-map-amber = <100 15 0>;
-
- brightness-range = <100 100 100 0 0 0>;
-
- #address-cells = <1>;
- #size-cells = <0>;
-
- pwm_led_0@0 {
- reg = <0>;
- ec-led-name = "EC_LED_ID_BATTERY_LED";
- };
- };
-};
-
-&pwm1 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm1_gpa1_default>;
- pinctrl-names = "default";
-};
-
-&pwm2 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm2_gpa2_default>;
- pinctrl-names = "default";
-};
-
-&pwm3 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm3_gpa3_default>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/nereid/src/charger.c b/zephyr/program/nissa/nereid/src/charger.c
deleted file mode 100644
index dc4eda9291..0000000000
--- a/zephyr/program/nissa/nereid/src/charger.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "battery.h"
-#include "charger.h"
-#include "console.h"
-#include "driver/charger/sm5803.h"
-#include "extpower.h"
-#include "nissa_common.h"
-#include "usb_pd.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-int extpower_is_present(void)
-{
- int port;
- int rv;
- bool acok;
-
- for (port = 0; port < board_get_usb_pd_port_count(); port++) {
- rv = sm5803_is_acok(port, &acok);
- if ((rv == EC_SUCCESS) && acok)
- return 1;
- }
-
- return 0;
-}
-
-/*
- * Nereid does not have a GPIO indicating whether extpower is present,
- * so detect using the charger(s).
- */
-__override void board_check_extpower(void)
-{
- static int last_extpower_present;
- int extpower_present = extpower_is_present();
-
- if (last_extpower_present ^ extpower_present)
- extpower_handle_update(extpower_present);
-
- last_extpower_present = extpower_present;
-}
-
-__override void board_hibernate(void)
-{
- /* Shut down the chargers */
- if (board_get_usb_pd_port_count() == 2)
- sm5803_hibernate(CHARGER_SECONDARY);
- sm5803_hibernate(CHARGER_PRIMARY);
- LOG_INF("Charger(s) hibernated");
- cflush();
-}
diff --git a/zephyr/program/nissa/nereid/src/hdmi.c b/zephyr/program/nissa/nereid/src/hdmi.c
deleted file mode 100644
index 5025472c6d..0000000000
--- a/zephyr/program/nissa/nereid/src/hdmi.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "nissa_hdmi.h"
-
-#include <cros_board_info.h>
-
-__override void nissa_configure_hdmi_power_gpios(void)
-{
- /*
- * Nereid versions before 2 need hdmi-en-odl to be
- * pulled down to enable VCC on the HDMI port, but later
- * versions (and other boards) disconnect this so
- * the port's VCC directly follows en-rails-odl. Only
- * configure the GPIO if needed, to save power.
- */
- uint32_t board_version = 0;
-
- /* CBI errors ignored, will configure the pin */
- cbi_get_board_version(&board_version);
- if (board_version < 2) {
- nissa_configure_hdmi_vcc();
- }
-
- /* Still always need core rails controlled */
- nissa_configure_hdmi_rails();
-}
diff --git a/zephyr/program/nissa/nereid/src/keyboard.c b/zephyr/program/nissa/nereid/src/keyboard.c
deleted file mode 100644
index b69bb4da33..0000000000
--- a/zephyr/program/nissa/nereid/src/keyboard.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ec_commands.h"
-
-static const struct ec_response_keybd_config nereid_kb_legacy = {
- .num_top_row_keys = 10,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_FORWARD, /* T2 */
- TK_REFRESH, /* T3 */
- TK_FULLSCREEN, /* T4 */
- TK_OVERVIEW, /* T5 */
- TK_BRIGHTNESS_DOWN, /* T6 */
- TK_BRIGHTNESS_UP, /* T7 */
- TK_VOL_MUTE, /* T8 */
- TK_VOL_DOWN, /* T9 */
- TK_VOL_UP, /* T10 */
- },
- .capabilities = KEYBD_CAP_SCRNLOCK_KEY,
-};
-
-__override const struct ec_response_keybd_config *
-board_vivaldi_keybd_config(void)
-{
- return &nereid_kb_legacy;
-}
diff --git a/zephyr/program/nissa/nereid/src/usbc.c b/zephyr/program/nissa/nereid/src/usbc.c
deleted file mode 100644
index 1e87abfa0d..0000000000
--- a/zephyr/program/nissa/nereid/src/usbc.c
+++ /dev/null
@@ -1,369 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charge_state_v2.h"
-#include "chipset.h"
-#include "driver/charger/sm5803.h"
-#include "driver/tcpm/it83xx_pd.h"
-#include "driver/tcpm/ps8xxx_public.h"
-#include "driver/tcpm/tcpci.h"
-#include "hooks.h"
-#include "nissa_common.h"
-#include "system.h"
-#include "usb_mux.h"
-
-#include <zephyr/logging/log.h>
-
-#include <ap_power/ap_power.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-/* Vconn control for integrated ITE TCPC */
-void board_pd_vconn_ctrl(int port, enum usbpd_cc_pin cc_pin, int enabled)
-{
- /* Vconn control is only for port 0 */
- if (port)
- return;
-
- if (cc_pin == USBPD_CC_PIN_1)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(gpio_en_usb_c0_cc1_vconn),
- !!enabled);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(gpio_en_usb_c0_cc2_vconn),
- !!enabled);
-}
-
-__override bool pd_check_vbus_level(int port, enum vbus_level level)
-{
- return sm5803_check_vbus_level(port, level);
-}
-
-/*
- * Putting chargers into LPM when in suspend reduces power draw by about 8mW
- * per charger, but also seems critical to correct operation in source mode:
- * if chargers are not in LPM when a sink is first connected, VBUS sourcing
- * works even if the partner is later removed (causing LPM entry) and
- * reconnected (causing LPM exit). If in LPM initially, sourcing VBUS
- * consistently causes the charger to report (apparently spurious) overcurrent
- * failures.
- *
- * In short, this is important to making things work correctly but we don't
- * understand why.
- */
-static void board_chargers_suspend(struct ap_power_ev_callback *const cb,
- const struct ap_power_ev_data data)
-{
- void (*fn)(int chgnum);
-
- switch (data.event) {
- case AP_POWER_SUSPEND:
- fn = sm5803_enable_low_power_mode;
- break;
- case AP_POWER_RESUME:
- fn = sm5803_disable_low_power_mode;
- break;
- default:
- LOG_WRN("%s: power event %d is not recognized", __func__,
- data.event);
- return;
- }
-
- fn(CHARGER_PRIMARY);
- if (board_get_charger_chip_count() > 1)
- fn(CHARGER_SECONDARY);
-}
-
-static int board_chargers_suspend_init(const struct device *unused)
-{
- static struct ap_power_ev_callback cb = {
- .handler = board_chargers_suspend,
- .events = AP_POWER_SUSPEND | AP_POWER_RESUME,
- };
- ap_power_ev_add_callback(&cb);
- return 0;
-}
-SYS_INIT(board_chargers_suspend_init, APPLICATION, 0);
-
-int board_set_active_charge_port(int port)
-{
- int is_real_port = (port >= 0 && port < board_get_usb_pd_port_count());
- int i;
- int old_port;
- int rv;
-
- if (!is_real_port && port != CHARGE_PORT_NONE)
- return EC_ERROR_INVAL;
-
- old_port = charge_manager_get_active_charge_port();
- LOG_INF("Charge update: p%d -> p%d", old_port, port);
-
- /* Check if port is sourcing VBUS. */
- if (port != CHARGE_PORT_NONE && charger_is_sourcing_otg_power(port)) {
- LOG_WRN("Skip enable p%d: already sourcing", port);
- return EC_ERROR_INVAL;
- }
-
- /* Disable sinking on all ports except the desired one */
- for (i = 0; i < board_get_usb_pd_port_count(); i++) {
- if (i == port)
- continue;
-
- if (sm5803_vbus_sink_enable(i, 0))
- /*
- * Do not early-return because this can fail during
- * power-on which would put us into a loop.
- */
- LOG_WRN("p%d: sink path disable failed.", i);
- }
-
- /* Don't enable anything (stop here) if no ports were requested */
- if ((port == CHARGE_PORT_NONE) || (old_port == port))
- return EC_SUCCESS;
-
- /*
- * Stop the charger IC from switching while changing ports. Otherwise,
- * we can overcurrent the adapter we're switching to. (crbug.com/926056)
- */
- if (old_port != CHARGE_PORT_NONE)
- charger_discharge_on_ac(1);
-
- /* Enable requested charge port. */
- rv = sm5803_vbus_sink_enable(port, 1);
- if (rv)
- LOG_WRN("p%d: sink path enable failed: code %d", port, rv);
-
- /* Allow the charger IC to begin/continue switching. */
- charger_discharge_on_ac(0);
-
- return rv;
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- /*
- * TCPC 0 is embedded in the EC and processes interrupts in the chip
- * code (it83xx/intc.c). This function only needs to poll port C1 if
- * present.
- */
- uint16_t status = 0;
- int regval;
-
- /* Is the C1 port present and its IRQ line asserted? */
- if (board_get_usb_pd_port_count() == 2 &&
- !gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- /*
- * C1 IRQ is shared between BC1.2 and TCPC; poll TCPC to see if
- * it asserted the IRQ.
- */
- if (!tcpc_read16(1, TCPC_REG_ALERT, &regval)) {
- if (regval)
- status = PD_STATUS_TCPC_ALERT_1;
- }
- }
-
- return status;
-}
-
-void pd_power_supply_reset(int port)
-{
- int prev_en;
-
- if (port < 0 || port >= board_get_usb_pd_port_count())
- return;
-
- prev_en = charger_is_sourcing_otg_power(port);
-
- /* Disable Vbus */
- charger_enable_otg_power(port, 0);
-
- /* Discharge Vbus if previously enabled */
- if (prev_en)
- sm5803_set_vbus_disch(port, 1);
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- enum ec_error_list rv;
-
- if (port < 0 || port > board_get_usb_pd_port_count()) {
- LOG_WRN("Port C%d does not exist, cannot enable VBUS", port);
- return EC_ERROR_INVAL;
- }
-
- /* Disable sinking */
- rv = sm5803_vbus_sink_enable(port, 0);
- if (rv) {
- LOG_WRN("C%d failed to disable sinking: %d", port, rv);
- return rv;
- }
-
- /* Disable Vbus discharge */
- rv = sm5803_set_vbus_disch(port, 0);
- if (rv) {
- LOG_WRN("C%d failed to clear VBUS discharge: %d", port, rv);
- return rv;
- }
-
- /* Provide Vbus */
- rv = charger_enable_otg_power(port, 1);
- if (rv) {
- LOG_WRN("C%d failed to enable VBUS sourcing: %d", port, rv);
- return rv;
- }
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-__override void typec_set_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- int rv;
- const int current = rp == TYPEC_RP_3A0 ? 3000 : 1500;
-
- rv = charger_set_otg_current_voltage(port, current, 5000);
- if (rv != EC_SUCCESS) {
- LOG_WRN("Failed to set source ilimit on port %d to %d: %d",
- port, current, rv);
- }
-}
-
-void board_reset_pd_mcu(void)
-{
- /*
- * Do nothing. The integrated TCPC for C0 lacks a dedicated reset
- * command, and C1 (if present) doesn't have a reset pin connected
- * to the EC.
- */
-}
-
-#define INT_RECHECK_US 5000
-
-/* C0 interrupt line shared by BC 1.2 and charger */
-
-static void check_c0_line(void);
-DECLARE_DEFERRED(check_c0_line);
-
-static void notify_c0_chips(void)
-{
- usb_charger_task_set_event(0, USB_CHG_EVENT_BC12);
- sm5803_interrupt(0);
-}
-
-static void check_c0_line(void)
-{
- /*
- * If line is still being held low, see if there's more to process from
- * one of the chips
- */
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl))) {
- notify_c0_chips();
- hook_call_deferred(&check_c0_line_data, INT_RECHECK_US);
- }
-}
-
-void usb_c0_interrupt(enum gpio_signal s)
-{
- /* Cancel any previous calls to check the interrupt line */
- hook_call_deferred(&check_c0_line_data, -1);
-
- /* Notify all chips using this line that an interrupt came in */
- notify_c0_chips();
-
- /* Check the line again in 5ms */
- hook_call_deferred(&check_c0_line_data, INT_RECHECK_US);
-}
-
-/* C1 interrupt line shared by BC 1.2, TCPC, and charger */
-static void check_c1_line(void);
-DECLARE_DEFERRED(check_c1_line);
-
-static void notify_c1_chips(void)
-{
- schedule_deferred_pd_interrupt(1);
- usb_charger_task_set_event(1, USB_CHG_EVENT_BC12);
- /* Charger is handled in board_process_pd_alert */
-}
-
-static void check_c1_line(void)
-{
- /*
- * If line is still being held low, see if there's more to process from
- * one of the chips.
- */
- if (!gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- notify_c1_chips();
- hook_call_deferred(&check_c1_line_data, INT_RECHECK_US);
- }
-}
-
-void usb_c1_interrupt(enum gpio_signal s)
-{
- /* Cancel any previous calls to check the interrupt line */
- hook_call_deferred(&check_c1_line_data, -1);
-
- /* Notify all chips using this line that an interrupt came in */
- notify_c1_chips();
-
- /* Check the line again in 5ms */
- hook_call_deferred(&check_c1_line_data, INT_RECHECK_US);
-}
-
-/*
- * Check state of IRQ lines at startup, ensuring an IRQ that happened before
- * the EC started up won't get lost (leaving the IRQ line asserted and blocking
- * any further interrupts on the port).
- *
- * Although the PD task will check for pending TCPC interrupts on startup,
- * the charger sharing the IRQ will not be polled automatically.
- */
-void board_handle_initial_typec_irq(void)
-{
- check_c0_line();
- if (board_get_usb_pd_port_count() == 2)
- check_c1_line();
-}
-/*
- * This must run after sub-board detection (which happens in EC main()),
- * but isn't depended on by anything else either.
- */
-DECLARE_HOOK(HOOK_INIT, board_handle_initial_typec_irq, HOOK_PRIO_LAST);
-
-/*
- * Handle charger interrupts in the PD task. Not doing so can lead to a priority
- * inversion where we fail to respond to TCPC alerts quickly enough because we
- * don't get another edge on a shared IRQ until the charger interrupt is cleared
- * (or the IRQ is polled again), which happens in the low-priority charger task:
- * the high-priority type-C handler is thus blocked on the lower-priority
- * charger.
- *
- * To avoid that, we run charger interrupts at the same priority.
- */
-void board_process_pd_alert(int port)
-{
- /*
- * Port 0 doesn't use an external TCPC, so its interrupts don't need
- * this special handling.
- */
- if (port == 1 &&
- !gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- sm5803_handle_interrupt(port);
- }
-}
-
-int pd_snk_is_vbus_provided(int port)
-{
- int chg_det = 0;
-
- sm5803_get_chg_det(port, &chg_det);
-
- return chg_det;
-}
diff --git a/zephyr/program/nissa/nissa.csv b/zephyr/program/nissa/nissa.csv
deleted file mode 100644
index 45b73ea229..0000000000
--- a/zephyr/program/nissa/nissa.csv
+++ /dev/null
@@ -1,122 +0,0 @@
-Signal Name,Subsystem,Description,DIR,Int,I/O Type,Internal PU,I/O Voltage,ICs attached,NPCX993 (Nivviks),NPCX993 (Nirwen),IT81302 (Nereid),Type,Enum,SW Notes,HW Notes
-ESPI_SOC_CLK,ESPI,ESPI clock,IN,no,--,N,1.80 V,,M1,M1,L1,OTHER,,,
-ESPI_SOC_CS_EC_L,ESPI,ESPI chip select,IN,F,--,N,1.80 V,,L2,L2,J2,OTHER,,,
-ESPI_SOC_D0_EC,ESPI,ESPI DATA0,I/O,,TTL,N,1.80 V,,H1,H1,L2,OTHER,,,
-ESPI_SOC_D1_EC,ESPI,ESPI DATA1,I/O,,TTL,N,1.80 V,,J1,J1,K1,OTHER,,,
-ESPI_SOC_D2_EC,ESPI,ESPI DATA2,I/O,,TTL,N,1.80 V,,K1,K1,K2,OTHER,,,
-ESPI_SOC_D3_EC,ESPI,ESPI DATA3,I/O,,TTL,N,1.80 V,,L1,L1,J1,OTHER,,,
-ESPI_SOC_RST_EC_L,ESPI,ESPI reset,IN,F,,N,1.80 V,,K3,K3,R5,OTHER,,,
-ESPI_EC_ALERT_SOC_L,ESPI,ESPI Alert,OUT,,TTL,N,1.80 V,,L3,L3,H1,OTHER,,,
-GSC_EC_PWR_BTN_ODL,GSC,Power Button input from GSC,IN,both,--,Y,3.30 V,,E7,E7,B13,INPUT_PU,GPIO_POWER_BUTTON_L,GPIO00,
-EC_RST_ODL,GSC,Reset signal for EC from GSC,IN,no,--,N,3.30 V,GSC,K6,K6,M2,OTHER,,,
-EC_GSC_PACKET_MODE,GSC,Wakes/interrupts GSC and (maybe) vice-versa,I/O,both,--,N,3.30 V,,J6,J6,F9,OUTPUT,GPIO_PACKET_MODE_EN,,
-EC_I2C_EEPROM_SCL,I2C,"I2C clock for CBI, reading INAs, programming EC (ITE only)",I/O,,OD,N,3.30 V,"EEPROMs, INAs",C12,C12,A5,I2C_CLOCK,I2C_PORT_EEPROM,,
-EC_I2C_EEPROM_SDA,I2C,"I2C data for CBI, reading INAs, programming EC (ITE only)",I/O,,OD,N,3.30 V,"EEPROMs, INAs",B12,B12,B3,I2C_DATA,,,
-EC_I2C_BATT_SDA,I2C,I2C data for battery pack,I/O,,OD,N,3.30 V,Battery Pack,K10,K10,A3,I2C_DATA,,,
-EC_I2C_BATT_SCL,I2C,I2C clock for battery pack,I/O,,OD,N,3.30 V,Battery Pack,J10,J10,A4,I2C_CLOCK,I2C_PORT_BATTERY,,
-EC_I2C_SENSOR_SCL,I2C,I2C clock for sensors,I/O,,OD,N,3.30 V,"IMU, accel, lid accel, kb bl",K8,K8,C2,I2C_CLOCK,I2C_PORT_SENSOR,,
-EC_I2C_SENSOR_SDA,I2C,I2C data for sensors,I/O,,OD,N,3.30 V,"IMU, accel, lid accel, kb bl",K7,K7,D2,I2C_DATA,,,
-EC_I2C_USB_C0_SDA,I2C,I2C clock for USB-C C0 and USB-A A0 port ICs,I/O,,OD,N,3.30 V,"TCPC, BC1.2, Charger",F9,F9,K7,I2C_DATA,,,
-EC_I2C_USB_C0_SCL,I2C,I2C data for USB-C C0 and USB-A A0 port ICs,I/O,,OD,N,3.30 V,"TCPC, BC1.2, Charger",F8,F8,L7,I2C_CLOCK,I2C_PORT_USB_C0_TCPC,,
-EC_I2C_SUB_USB_C1_SDA,I2C,I2C clock for USB-C C1 and USB-A A1 port ICs (HDMI: HDMI_EN_SUB_ODL - enable HDMI retimer/output/active low),I/O,,OD,N,3.30 V,"TCPC, BC1.2, Charger",E9,E9,R4,I2C_DATA,,,
-EC_I2C_SUB_USB_C1_SCL,I2C,"I2C data for USB-C C1 and USB-A A1 port ICs (HDMI_HPD_SUB_ODL, hot-plug detection/input (interrupt)/active low)",I/O,,OD,N,3.30 V,"TCPC, BC1.2, Charger",E8,E8,P3,I2C_CLOCK,I2C_PORT_USB_C1_TCPC,,
-EC_KSI_00,Keyboard,Keyboard Input,IN,no,--,Y,3.30 V,,A2,A2,K15,OTHER,,,
-KSI_01,Keyboard,Keyboard Input,IN,no,--,Y,3.30 V,,A3,A3,K14,OTHER,,,
-EC_KSI_02,Keyboard,Keyboard Input,IN,no,--,Y,3.30 V,,A4,A4,K10,OTHER,,,
-EC_KSI_03,Keyboard,Keyboard Input,IN,no,--,Y,3.30 V,,B3,B3,J15,OTHER,,,Vivaldi Support
-KSI_04,Keyboard,Keyboard Input,IN,no,--,Y,3.30 V,,B4,B4,J10,OTHER,,,
-KSI_05,Keyboard,Keyboard Input,IN,no,--,Y,3.30 V,,C3,C3,J11,OTHER,,,
-KSI_06,Keyboard,Keyboard Input,IN,no,--,Y,3.30 V,,C4,C4,J14,OTHER,,,
-KSI_07,Keyboard,Keyboard Input,IN,no,--,Y,3.30 V,,C5,C5,H10,OTHER,,,
-KSO_00,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,B5,B5,R9,OTHER,,,
-KSO_01,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,B6,B6,K8,OTHER,,,
-EC_KSO_02_INV,Keyboard,Keyboard Output,OUT,,TTL,N,3.30 V,,B7,B7,P10,OUTPUT_L,,KEYBOARD_COL2_INVERTED,
-KSO_03,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,B8,B8,R10,OTHER,,,
-KSO_04,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,C7,C7,L9,OTHER,,,
-KSO_05,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,C6,C6,K9,OTHER,,,
-KSO_06,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,C8,C8,P11,OTHER,,,
-KSO_07,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,B9,B9,R11,OTHER,,,
-KSO_08,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,C9,C9,P12,OTHER,,,
-KSO_09,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,C10,C10,L10,OTHER,,,
-KSO_10,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,B11,B11,P13,OTHER,,,
-KSO_11,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,B10,B10,P14,OTHER,,,
-KSO_12,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,C11,C11,N14,OTHER,,,
-KSO_13,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,D11,D11,M15,OTHER,,,Required only for NUM PAD
-KSO_14,Keyboard,Keyboard Output,OUT,,OD,N,3.30 V,,D6,D6,M14,OTHER,,,Required only for NUM PAD
-EN_KB_BL,MISC,Enable Keyboard backlight,OUT,,TTL,N,3.30 V,,G11,G11,D14,OUTPUT,GPIO_EN_KEYBOARD_BACKLIGHT,,
-VOLDN_BTN_ODL,MISC,Volume down signal,IN,both,--,Y,3.30 V,Button,F12,E11,G15,INPUT_PU,GPIO_VOLUME_DOWN_L,,
-VOLUP_BTN_ODL,MISC,Volume up signal,IN,both,--,Y,3.30 V,Button,E11,F12,F14,INPUT_PU,GPIO_VOLUME_UP_L,,
-LID_OPEN,MISC,Indicator from lid switch that lid is open,IN,both,--,N,3.30 V,,G7,G7,A11,INPUT,GPIO_LID_OPEN,,
-TABLET_MODE_L,MISC,Indicator from lid switch that lid is flipped all the way around,IN,both,--,N,3.30 V,,M12,M12,L8,INPUT,GPIO_TABLET_MODE_L,,Not required to connect to EC?
-IMU_INT_L,MISC,Interrupt from base intertial measurement unit,IN,falling,,N,1.80 V,IMU,M2,M2,F15,INPUT,,,
-ACC_INT_L,MISC,Interrupt from lid accel (only in convertibles),IN,falling,,N,1.80 V,ACC,G10,G10,E2,INPUT,,,Not required from Dedede?
-EC_WP_ODL,MISC,Write protection status from GSC,IN,no,--,N,3.30 V,GSC,L12,L12,R8,INPUT_L,,,
-EC_EDP_BL_EN_OD,MISC,EC override of backlight enable,OUT,,OD,N,3.30 V,,E10,E10,R15,OUTPUT_ODR,GPIO_ENABLE_BACKLIGHT,,
-TEMP_SENSOR_1,MISC,NTC 1 - near memory,IN,no,ADC,N,ANA,,F2,F2,H15,ADC,ADC_TEMP_SENSOR_1,,
-TEMP_SENSOR_2,MISC,NTC 2 - near chassis hot spot,IN,no,ADC,N,ANA,,E3,E3,G10,ADC,ADC_TEMP_SENSOR_2,,
-TEMP_SENSOR_3,MISC,NTC 3 - Ambient/skin temp,IN,no,ADC,N,ANA,,,F4,A13,ADC,ADC_TEMP_SENSOR_3,,
-USB_C0_INT_ODL,MISC,Interrupt for all ICs for Type-C port 0,IN,,--,Y,3.30 V,,E6,E6,P1,INPUT_PU,,,
-USB_C0_PROT_FAULT_ODL,MISC,Fault out of the USB C0 protection IC,IN,falling,OD,Y,3.30 V,,,#N/A,,,,,
-"SUB_USB_C1_INT_ODL
-(HDMI: EN_SUB_RAILS_ODL)",MISC,"Interrupt for all ICs for Type-C port 1 or the sub-board
-HDMI: Enable 5V power rail/output/active low",IN,,--,Y,3.30 V,,F7,F7,N2,OTHER,,,
-HDMI_SEL,MISC,Configures AUX to be HDMI DDC,OUT,,TTL,N,3.30 V,,D10,D10,F2,OUTPUT,,,
-CCD_MODE_ODL,MISC,Indicates whether H1 is using SBU lines for debug. Also can trigger CCD if the EC decides to.,I/O,falling,--/OD,N,3.30 V,GSC,A12,A12,B9,INPUT,GPIO_CCD_MODE_ODL,,
-EC_BATTERY_PRES_ODL,MISC,or BATT_TEMP - indication of battery presence,IN,,--,N,3.30 V,Battery pack,K12,K12,G14,INPUT,GPIO_BATT_PRES_ODL,,
-EC_ENTERING_RW,MISC,Indicate when EC is transitioning to RW code,OUT,,TTL,N,3.30 V,GSC,D9,D9,N1,OUTPUT,GPIO_ENTERING_RW,,
-EN_USB_A0_VBUS,MISC,,OUT,,TTL,N,3.30 V,,K9,K9,B1,OUTPUT,,,
-USB_A0_ILIMIT_SDP,MISC,,OUT,,TTL,N,3.30 V,,J8,J8,A1,OUTPUT,GPIO_USB1_ILIM_SEL,??,
-EN_SUB_USB_A1_VBUS,MISC,,OUT,,TTL,N,3.30 V,,A9,A9,B12,OTHER,,??,
-SUB_USB_A1_ILIMIT_SDP,MISC,,OUT,,TTL,N,3.30 V,,A10,A10,A12,OUTPUT,GPIO_USB2_ILIM_SEL,??,
-PWM_FAN,MISC,,OUT,,PWM,N,3.30 V,,,J7,,PWM,,,
-EC_FAN_TACH,MISC,,IN,,,,5.00 V,,,G5,,TACH,,,
-EN_PP5000_FAN_X,MISC,,OUT,,TTL,N,3.30 V,,,J2,,OUTPUT,,,
-EC_CBI_WP,MISC,Updated EC WP method,OUT,,TTL,N,3.30 V,,H5,H5,D15,OUTPUT,,cbi_latch_eeprom_wp,
-IMVP91_VRRDY_OD,POWER SEQUENCE,,IN,,,,,,E2,E2,C14,INPUT,,,
-EC_SOC_SYS_PWROK,POWER SEQUENCE,"Generic power good input to PCH (platform specific), system ready to exit reset.",OUT,,TTL,N,3.30 V,SOC,C1,C1,B11,OUTPUT,,PCH_PWROK,
-EN_SLP_Z,POWER SEQUENCE,Enable Sleep State (Active high). For ITE only.,OUT,,TTL,N,3.30 V,,F3,F3,R3,OUTPUT,,,
-EN_PP5000_S5,POWER SEQUENCE,"Enable PP5000_S5. Figure 523, states this has to come after 3.3V , why?",OUT,,TTL,N,3.30 V,,E5,E5,R14,OUTPUT,,,
-EN_PP3300_S5,POWER SEQUENCE,Enable PP3300_S5.,OUT,,TTL,N,3.30 V,,L9,L9,K11,OUTPUT,GPIO_TEMP_SENSOR_POWER,,
-EC_SOC_DSW_PWROK,POWER SEQUENCE,DSW Power is OK to AP (diode logic with PP3300_PG),OUT,,TTL,N,3.30 V,SOC,K4,K4,C1,OUTPUT,,,
-EC_SOC_RSMRST_L,POWER SEQUENCE,"Asserted after S5-rails are stable, buffered to SOC from EC",OUT,,TTL,N,3.30 V,SOC,F11,F11,E9,OUTPUT,,,
-RSMRST_PWRGD_L,POWER SEQUENCE,,IN,both,--,Y,3.30 V,,M11,M11,B14,INPUT_PU,,,
-SLP_SUS_L,POWER SEQUENCE,"If high, EC must keep S5 on, used in both DSx and non-DSx platforms.",IN,both,--,N,3.30 V,,H2,H2,F8,INPUT,,,No virtual wire over eSPI
-SLP_S4_L,POWER SEQUENCE,"PCH S4 Sleep control. When low, shut-off power to all non critical systems in S4 and lower.",IN,both,--,N,3.30 V,,J4,J4,G11,INPUT,,,This signal is also virtual wire on the eSPI interface.
-SLP_S3_L,POWER SEQUENCE,"PCH S3 Sleep control. When low, shut-off power to all non critical systems in S3 and lower.",IN,both,--,N,3.30 V,,K11,K11,B10,INPUT,,,This signal is also virtual wire on the eSPI interface.
-SLP_S0_L,POWER SEQUENCE,"PCH S0 Sleep control, asserted when PCH = idle & CPU = C10",IN,both,--,N,3.30 V,,L10,L10,F1,INPUT,,,No virtual wire over eSPI
-CPU_C10_GATE_L,POWER SEQUENCE,Asserted low when going into CPU_C10,IN,both,--,N,3.30 V,"SOC, VRs, LS",J3,J3,B6,INPUT,,??,
-EC_VSENSE_PP3300_S5,POWER SEQUENCE,Voltage sense (or PGOOD) for PP3300_S5,IN,no,ADC,N,ANA,,B2,B2,H11,ADC,ADC_PP3300_S5,??,"Nuvoton VREF=2.816V, ITE VREF = AVCC or AVCC/1.1 (3V)"
-PG_PP5000_S5_OD,POWER SEQUENCE,PP5000_S5 power good signal.,IN,,--,N,3.30 V,,D3,D3,C15,INPUT,,,
-EC_SOC_VCCST_PWRGD_OD,POWER SEQUENCE,,OUT,,OD,N,1.05 V,,H11,H11,P9,OUTPUT_ODR,,,
-EC_SOC_PCH_PWROK_OD,POWER SEQUENCE,,OUT,,OD,N,3.30 V,,M4,M4,R12,OUTPUT_ODR,,,
-ALL_SYS_PWRGD,POWER SEQUENCE,,IN,both,,N,3.30 V,,J11,J11,B2,INPUT,,,Figure 398 PDG 0.5
-PG_PP1050_MEM_S3_OD,POWER SEQUENCE,,IN,both,--,N,3.30 V,,D2,D2,P5,INPUT,,??,
-EC_VSENSE_PP1050_PROC,POWER SEQUENCE,,IN,no,ADC,N,ANA,SOC,C2,C2,A14,ADC,ADC_PP1050_PROC,PP1050_PROC monitoring from FIVR output,
-SYS_RST_ODL,POWER SEQUENCE,Reset for SOC,OUT,,OD,N,3.30 V,SOC,H7,H7,P4,OUTPUT_ODR,,,
-EC_PCH_WAKE_ODL,POWER SEQUENCE,"Allows EC to wake AP (e.g., keyboard out of S0ix)",OUT,,OD,N,3.30 V,SOC,L11,L11,E1,OUTPUT_ODL,,EC_SOC_WAKE_ODL on schematic; software uses PCH_WAKE name,
-EC_SOC_RTCRST,POWER SEQUENCE,Allows EC to reset logic on the AP's RTC well,OUT,,TTL,N,3.30 V,SOC,J5,J5,R2,OUTPUT,,,
-VCCIN_AUX_VID0,POWER SEQUENCE,Debug purposes,IN,both,,N,1.80 V,,L8,L8,P2,INPUT,,,
-VCCIN_AUX_VID1,POWER SEQUENCE,Debug purposes,IN,both,,N,1.80 V,,L7,L7,R1,INPUT,,,
-PWM_KB_BL,PWM,Keyboard backlight PWM control signal,OUT,,PWM,N,3.30 V,,H8,H8,R6,PWM,,,
-PWM_LED_1_ODL,PWM,LED 1,OUT,,PWM,N,3.30 V,,G8,G8,P6,PWM_INVERT,,,
-PWM_LED_2_ODL,PWM,LED 2,OUT,,PWM,N,3.30 V,,G9,G9,R7,PWM_INVERT,,,
-PWM_LED_3_ODL,PWM,LED 3,OUT,,PWM,N,3.30 V,,H10,H10,P7,PWM_INVERT,,,
-EC_PSYS,PWM,System power monitoring output,OUT,,PWM,N,ANA,"Charger, IMVP9.1",G6,G6,E15,OTHER,,,
-EC_SOC_PWR_BTN_ODL,SOC,Buffered power button signal from EC to SOC,OUT,,OD,N,3.30 V,SOC,H9,H9,J5,OUTPUT_ODR,GPIO_PCH_PWRBTN_L,,
-EC_SOC_HDMI_HPD,SOC,HPD buffer output for HDMI,OUT,,TTL,N,3.30 V,,L6,L6,P15,OUTPUT,,,
-EC_PROCHOT_ODL,SOC,Allows us to send/read PROCHOT,I/O,both,OD,N,1.05 V,SOC,G3,G3,H14,OUTPUT_ODR,,,
-EC_PCHHOT_ODL,SOC,Allows us to send/read PCHHOT,,,,,,,#N/A,#N/A,#N/A,OTHER,,,Intel confirmed that this feature is not used.
-EC_SOC_INT_ODL,SOC,EC interrupt to SOC,OUT,,OD,N,,,K5,K5,P8,OUTPUT_ODR,GPIO_EC_INT_L,,Is this needed?
-UART_GSC_DBG_RX_EC_TX,UART,UART signal from EC to debugger,OUT,,TTL,N,3.30 V,,H4,H4,B4,OTHER,,,
-UART_GSC_DBG_TX_EC_RX,UART,UART signal from debugger to EC,IN,,--,N,3.30 V,,G4,G4,B5,OTHER,,,
-EN_PP5000_PEN_X,MISC,Enable signal for 5V PEN charging rail,OUT,,TTL,N,3.30 V,,A11,A11,G2,OUTPUT,,,
-PEN_DETECT_ODL,MISC,"PEN detect signal. Internal debouncing, if required.",IN,both,--,Y,3.30 V,,G12,G12,E14,INPUT_PU,,,
-USB_C0_CC1,USB-PD,CC1 for IT81302 only,I/O,,CC,PD,ANA,,#N/A,#N/A,E10,OTHER,,,
-USB_C0_CC2,USB-PD,CC2 for IT81302 only,I/O,,CC,PD,ANA,,#N/A,#N/A,A10,OTHER,,,
-USB_C0_FRS,USB-PD,FRS for IT81302 only,OUT,,TTL,N,3.30 V,,#N/A,#N/A,D1,OUTPUT,,,
-EN_USB_C0_CC1_VCONN,USB-PD,CC1 vconn en for IT81302 only,OUT,,TTL,N,3.30 V,,#N/A,#N/A,A9,OUTPUT,,,
-EN_USB_C0_CC2_VCONN,USB-PD,CC2 vconn en for IT81302 only,OUT,,TTL,N,3.30 V,,#N/A,#N/A,A8,OUTPUT,,,
-EC_TRIS_L,DEBUG,Debug for NPCX993,,,,,,,E4,E4,#N/A,OTHER,,,
-EC_TEST_L,DEBUG,Debug for NPCX994,,,,,,,K2,K2,#N/A,OTHER,,,
-EC_32KXOUT,DEBUG,Debug for NPCX995,,,,,,,M5,M5,#N/A,OTHER,,,
-EC_SHDF_ESPI_L,DEBUG,Debug for NPCX996,,,,,,,H3,H3,#N/A,OTHER,,, \ No newline at end of file
diff --git a/zephyr/program/nissa/nivviks/cbi.dtsi b/zephyr/program/nissa/nivviks/cbi.dtsi
deleted file mode 100644
index 112a2a885c..0000000000
--- a/zephyr/program/nissa/nivviks/cbi.dtsi
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- /* Nivviks-specific fw_config fields. */
- nissa-fw-config {
- /*
- * FW_CONFIG field to describe mainboard orientation in chassis.
- */
- base-inversion {
- enum-name = "FW_BASE_INVERSION";
- start = <3>;
- size = <1>;
-
- inverted {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_BASE_INVERTED";
- value = <0>;
- };
- regular {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_BASE_REGULAR";
- value = <1>;
- default;
- };
- };
- };
-};
diff --git a/zephyr/program/nissa/nivviks/generated.dtsi b/zephyr/program/nissa/nivviks/generated.dtsi
deleted file mode 100644
index 91718302b4..0000000000
--- a/zephyr/program/nissa/nivviks/generated.dtsi
+++ /dev/null
@@ -1,291 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * This file is auto-generated - do not edit!
- */
-
-/ {
-
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_ec_vsense_pp1050_proc: ec_vsense_pp1050_proc {
- enum-name = "ADC_PP1050_PROC";
- io-channels = <&adc0 4>;
- };
- adc_ec_vsense_pp3300_s5: ec_vsense_pp3300_s5 {
- enum-name = "ADC_PP3300_S5";
- io-channels = <&adc0 6>;
- };
- adc_temp_sensor_1: temp_sensor_1 {
- enum-name = "ADC_TEMP_SENSOR_1";
- io-channels = <&adc0 0>;
- };
- adc_temp_sensor_2: temp_sensor_2 {
- enum-name = "ADC_TEMP_SENSOR_2";
- io-channels = <&adc0 1>;
- };
- adc_temp_sensor_3: temp_sensor_3 {
- enum-name = "ADC_TEMP_SENSOR_3";
- io-channels = <&adc0 10>;
- };
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_acc_int_l: acc_int_l {
- gpios = <&gpio5 0 GPIO_INPUT>;
- };
- gpio_all_sys_pwrgd: all_sys_pwrgd {
- gpios = <&gpioa 7 GPIO_INPUT>;
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- gpio_cpu_c10_gate_l: cpu_c10_gate_l {
- gpios = <&gpio6 7 GPIO_INPUT>;
- };
- gpio_ec_battery_pres_odl: ec_battery_pres_odl {
- gpios = <&gpioa 3 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpio7 4 GPIO_OUTPUT>;
- };
- gpio_ec_edp_bl_en_od: ec_edp_bl_en_od {
- gpios = <&gpiod 3 GPIO_ODR_HIGH>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- gpio_ec_entering_rw: ec_entering_rw {
- gpios = <&gpio0 3 GPIO_OUTPUT>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_ec_gsc_packet_mode: ec_gsc_packet_mode {
- gpios = <&gpio7 5 GPIO_OUTPUT>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
- gpio_ec_pch_wake_odl: ec_pch_wake_odl {
- gpios = <&gpiob 0 GPIO_ODR_LOW>;
- };
- gpio_ec_prochot_odl: ec_prochot_odl {
- gpios = <&gpiof 1 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_dsw_pwrok: ec_soc_dsw_pwrok {
- gpios = <&gpio6 1 GPIO_OUTPUT>;
- };
- gpio_ec_soc_hdmi_hpd: ec_soc_hdmi_hpd {
- gpios = <&gpioe 4 GPIO_OUTPUT>;
- };
- gpio_ec_soc_int_odl: ec_soc_int_odl {
- gpios = <&gpio8 0 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_ec_soc_pch_pwrok_od: ec_soc_pch_pwrok_od {
- gpios = <&gpio7 2 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_pwr_btn_odl: ec_soc_pwr_btn_odl {
- gpios = <&gpioc 1 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- gpio_ec_soc_rsmrst_l: ec_soc_rsmrst_l {
- gpios = <&gpioa 6 GPIO_OUTPUT>;
- };
- gpio_ec_soc_rtcrst: ec_soc_rtcrst {
- gpios = <&gpio7 6 GPIO_OUTPUT>;
- };
- gpio_ec_soc_sys_pwrok: ec_soc_sys_pwrok {
- gpios = <&gpio3 7 GPIO_OUTPUT>;
- };
- gpio_ec_soc_vccst_pwrgd_od: ec_soc_vccst_pwrgd_od {
- gpios = <&gpioa 4 GPIO_ODR_HIGH>;
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpioa 1 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_en_kb_bl: en_kb_bl {
- gpios = <&gpioa 0 GPIO_OUTPUT>;
- enum-name = "GPIO_EN_KEYBOARD_BACKLIGHT";
- };
- gpio_en_pp3300_s5: en_pp3300_s5 {
- gpios = <&gpiob 6 GPIO_OUTPUT>;
- enum-name = "GPIO_TEMP_SENSOR_POWER";
- };
- gpio_en_pp5000_pen_x: en_pp5000_pen_x {
- gpios = <&gpioe 2 GPIO_OUTPUT>;
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpio4 0 GPIO_OUTPUT>;
- };
- gpio_en_slp_z: en_slp_z {
- gpios = <&gpioe 1 GPIO_OUTPUT>;
- };
- gpio_en_usb_a0_vbus: en_usb_a0_vbus {
- gpios = <&gpio9 1 GPIO_OUTPUT>;
- };
- gpio_gsc_ec_pwr_btn_odl: gsc_ec_pwr_btn_odl {
- gpios = <&gpio0 0 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_hdmi_sel: hdmi_sel {
- gpios = <&gpioc 6 GPIO_OUTPUT>;
- };
- gpio_imu_int_l: imu_int_l {
- gpios = <&gpio5 6 GPIO_INPUT>;
- };
- gpio_imvp91_vrrdy_od: imvp91_vrrdy_od {
- gpios = <&gpio4 3 GPIO_INPUT>;
- };
- gpio_lid_open: lid_open {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_pen_detect_odl: pen_detect_odl {
- gpios = <&gpio9 6 GPIO_INPUT_PULL_UP>;
- };
- gpio_pg_pp1050_mem_s3_od: pg_pp1050_mem_s3_od {
- gpios = <&gpiof 0 GPIO_INPUT>;
- };
- gpio_pg_pp5000_s5_od: pg_pp5000_s5_od {
- gpios = <&gpio4 2 GPIO_INPUT>;
- };
- gpio_rsmrst_pwrgd_l: rsmrst_pwrgd_l {
- gpios = <&gpio9 4 GPIO_INPUT_PULL_UP>;
- };
- gpio_slp_s0_l: slp_s0_l {
- gpios = <&gpio9 7 GPIO_INPUT>;
- };
- gpio_slp_s3_l: slp_s3_l {
- gpios = <&gpioa 5 GPIO_INPUT>;
- };
- gpio_slp_s4_l: slp_s4_l {
- gpios = <&gpio7 0 GPIO_INPUT>;
- };
- gpio_slp_sus_l: slp_sus_l {
- gpios = <&gpio6 2 GPIO_INPUT>;
- };
- gpio_sub_usb_a1_ilimit_sdp: sub_usb_a1_ilimit_sdp {
- gpios = <&gpiod 5 GPIO_OUTPUT>;
- enum-name = "GPIO_USB2_ILIM_SEL";
- };
- gpio_sys_rst_odl: sys_rst_odl {
- gpios = <&gpioc 5 GPIO_ODR_HIGH>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpio9 5 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_usb_a0_ilimit_sdp: usb_a0_ilimit_sdp {
- gpios = <&gpio8 5 GPIO_OUTPUT>;
- enum-name = "GPIO_USB1_ILIM_SEL";
- };
- gpio_usb_c0_int_odl: usb_c0_int_odl {
- gpios = <&gpio0 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_vccin_aux_vid0: vccin_aux_vid0 {
- gpios = <&gpio9 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_vccin_aux_vid1: vccin_aux_vid1 {
- gpios = <&gpioe 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_voldn_btn_odl: voldn_btn_odl {
- gpios = <&gpioa 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_volup_btn_odl: volup_btn_odl {
- gpios = <&gpio9 3 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_ec_i2c_eeprom: ec_i2c_eeprom {
- i2c-port = <&i2c0_0>;
- enum-names = "I2C_PORT_EEPROM";
- };
- i2c_ec_i2c_sensor: ec_i2c_sensor {
- i2c-port = <&i2c1_0>;
- enum-names = "I2C_PORT_SENSOR";
- };
- i2c_ec_i2c_usb_c0: ec_i2c_usb_c0 {
- i2c-port = <&i2c3_0>;
- enum-names = "I2C_PORT_USB_C0_TCPC";
- };
- i2c_ec_i2c_sub_usb_c1: ec_i2c_sub_usb_c1 {
- i2c-port = <&i2c5_1>;
- enum-names = "I2C_PORT_USB_C1_TCPC";
- };
- i2c_ec_i2c_batt: ec_i2c_batt {
- i2c-port = <&i2c7_0>;
- enum-names = "I2C_PORT_BATTERY";
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_chan0_gp45
- &adc0_chan1_gp44
- &adc0_chan4_gp41
- &adc0_chan6_gp34
- &adc0_chan10_gpe0>;
- pinctrl-names = "default";
-};
-
-
-&i2c0_0 {
- status = "okay";
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-};
-
-&i2c1_0 {
- status = "okay";
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-};
-
-&i2c3_0 {
- status = "okay";
- pinctrl-0 = <&i2c3_0_sda_scl_gpd0_d1>;
- pinctrl-names = "default";
-};
-
-&i2c5_1 {
- status = "okay";
- pinctrl-0 = <&i2c5_1_sda_scl_gpf4_f5>;
- pinctrl-names = "default";
-};
-
-&i2c7_0 {
- status = "okay";
- pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-&i2c_ctrl3 {
- status = "okay";
-};
-
-&i2c_ctrl5 {
- status = "okay";
-};
-
-&i2c_ctrl7 {
- status = "okay";
-};
diff --git a/zephyr/program/nissa/nivviks/keyboard.dtsi b/zephyr/program/nissa/nivviks/keyboard.dtsi
deleted file mode 100644
index 00610e4e18..0000000000
--- a/zephyr/program/nissa/nivviks/keyboard.dtsi
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- kblight {
- compatible = "cros-ec,kblight-pwm";
- pwms = <&pwm6 6 PWM_HZ(2400) PWM_POLARITY_NORMAL>;
- };
-};
-
-&pwm6 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm6_gpc0>;
- pinctrl-names = "default";
-};
-
-&cros_kb_raw {
- status = "okay";
- /* No KSO2 (it's inverted and implemented by GPIO) */
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- &kso13_gp04
- &kso14_gp82
- >;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/nivviks/motionsense.dtsi b/zephyr/program/nissa/nivviks/motionsense.dtsi
deleted file mode 100644
index 6297a07bf5..0000000000
--- a/zephyr/program/nissa/nivviks/motionsense.dtsi
+++ /dev/null
@@ -1,166 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * Interrupt bindings for sensor devices.
- */
- lsm6dso-int = &base_accel;
- lis2dw12-int = &lid_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- base_mutex: base-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <(-1) 0 0
- 0 1 0
- 0 0 (-1)>;
- };
-
- base_rot_ref: base-rot-ref {
- mat33 = <(-1) 0 0
- 0 (-1) 0
- 0 0 1>;
- };
-
- base_rot_inverted: base-rotation-inverted {
- mat33 = <1 0 0
- 0 (-1) 0
- 0 0 (-1)>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- lsm6dso_accel_data: lsm6dso-accel-drv-data {
- compatible = "cros-ec,drvdata-lsm6dso";
- status = "okay";
- };
-
- lsm6dso_gyro_data: lsm6dso-gyro-drv-data {
- compatible = "cros-ec,drvdata-lsm6dso";
- status = "okay";
- };
-
- lis2dw12_data: lis2dw12-drv-data {
- compatible = "cros-ec,drvdata-lis2dw12";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- * TODO(b/238139272): The first entries of the array must be
- * accelerometers,then gyroscope. Fix this dependency in the DTS
- * processing which makes the devicetree entries independent.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,lis2dw12";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&lis2dw12_data>;
- i2c-spi-addr-flags = "LIS2DWL_ADDR0_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,lsm6dso-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- /*
- * May be replaced by alternate depending
- * on board config.
- */
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&lsm6dso_accel_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_gyro: base-gyro {
- compatible = "cros-ec,lsm6dso-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- default-range = <(1000 | ROUND_UP_FLAG)>; /* dps */
- drv-data = <&lsm6dso_gyro_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_imu>;
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/nissa/nivviks/overlay.dtsi b/zephyr/program/nissa/nivviks/overlay.dtsi
deleted file mode 100644
index c3a8d7a61d..0000000000
--- a/zephyr/program/nissa/nivviks/overlay.dtsi
+++ /dev/null
@@ -1,439 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-#include <dt-bindings/usbc_mux.h>
-#include <dt-bindings/usb_pd_tcpm.h>
-
-/ {
- aliases {
- gpio-cbi-wp = &gpio_ec_cbi_wp;
- gpio-wp = &gpio_ec_wp_odl;
- int-wp = &int_wp_l;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- ec-console {
- compatible = "ec-console";
- disabled = "events", "lpc", "hostcmd";
- };
-
- batteries {
- default_battery: lgc {
- compatible = "lgc,ap18c8k", "battery-smart";
- };
- lgc_ap19b8m {
- compatible = "lgc,ap19b8m", "battery-smart";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_power_button
- &int_lid_open
- >;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&gpio_gsc_ec_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_wp_l: wp_l {
- irq-pin = <&gpio_ec_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&gpio_tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_imu: ec_imu {
- irq-pin = <&gpio_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "lsm6dso_interrupt";
- };
- int_vol_down: vol_down {
- irq-pin = <&gpio_voldn_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_vol_up: vol_up {
- irq-pin = <&gpio_volup_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_usb_c0: usb_c0 {
- irq-pin = <&gpio_usb_c0_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_interrupt";
- };
- int_usb_c1: usb_c1 {
- irq-pin = <&gpio_sb_1>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_interrupt";
- };
- };
-
- named-gpios {
- gpio_sb_1: sb-1 {
- gpios = <&gpio0 2 GPIO_PULL_UP>;
- no-auto-init;
- };
-
- gpio_sb_2: sb-2 {
- gpios = <&gpiod 4 GPIO_OUTPUT>;
- no-auto-init;
- };
-
- /*
- * Set I2C pins for type C sub-board to be low voltage (I2C5_1).
- * We do this for all boards, since the pins are 3.3V tolerant,
- * and the only 2 types of sub-boards used on nivviks both have
- * type-C ports on them.
- */
- gpio_sb_3: sb-3 {
- gpios = <&gpiof 4 (GPIO_OPEN_DRAIN | GPIO_VOLTAGE_1P8)>;
- no-auto-init;
- };
- gpio_sb_4: sb-4 {
- gpios = <&gpiof 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- no-auto-init;
- };
- gpio_fan_enable: fan-enable {
- gpios = <&gpio6 3 GPIO_OUTPUT>;
- no-auto-init;
- };
- ec-i2c-sensor-scl {
- gpios = <&gpio9 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-sensor-sda {
- gpios = <&gpio8 7 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- };
-
- /*
- * Aliases used for sub-board GPIOs.
- */
- aliases {
- /*
- * Input GPIO when used with type-C port 1
- * Output when used with HDMI sub-board
- */
- gpio-usb-c1-int-odl = &gpio_sb_1;
- gpio-en-rails-odl = &gpio_sb_1;
- /*
- * Sub-board with type A USB, enable.
- */
- gpio-en-usb-a1-vbus = &gpio_sb_2;
- /*
- * HPD pins for HDMI sub-board.
- */
- gpio-hdmi-en-odl = &gpio_sb_3;
- gpio-hpd-odl = &gpio_sb_4;
- /*
- * Enable S5 rails for LTE sub-board
- */
- gpio-en-sub-s5-rails = &gpio_sb_2;
- };
-
- temp_memory: memory {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_1>;
- };
- temp_charger: charger {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_2>;
- };
- temp_ambient: ambient {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_3>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- memory {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_memory>;
- };
- charger {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_charger>;
- };
- ambient {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_ambient>;
- };
- };
-
- usba {
- compatible = "cros-ec,usba-port-enable-pins";
- /*
- * sb_2 is only configured as GPIO when USB-A1 is present,
- * but it's still safe to control when disabled.
- *
- * ILIM_SEL pins are referred to by legacy enum name,
- * GPIO_USB*_ILIM_SEL. The one for port A1 is unused on
- * sub-boards that don't have USB-A so is safe to control
- * regardless of system configuration.
- */
- enable-pins = <&gpio_en_usb_a0_vbus &gpio_sb_2>;
- status = "okay";
- };
-
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- chg = <&chg_port0>;
- tcpc = <&tcpc_port0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_0>;
- };
- };
- port0-muxes {
- virtual_mux_0: virtual-mux-0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- /*
- * TODO(b:211693800): port1 may not be present on some
- * sub-boards.
- */
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&bc12_port1>;
- chg = <&chg_port1>;
- tcpc = <&tcpc_port1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_1 &anx7483_mux_1>;
- };
- usb_mux_chain_1_no_mux: usb-mux-chain-1-no-mux {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&virtual_mux_1>;
- };
- };
- port1-muxes {
- virtual_mux_1: virtual-mux-1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-
- fans {
- compatible = "cros-ec,fans";
-
- fan_0 {
- pwms = <&pwm5 5 PWM_KHZ(1) PWM_POLARITY_NORMAL>;
- rpm_min = <2200>;
- rpm_start = <2200>;
- rpm_max = <4200>;
- tach = <&tach2>;
- enable_gpio = <&gpio_fan_enable>;
- };
- };
-
- /*
- * Declare unused GPIOs so that they are shut down
- * and use minimal power
- */
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios =
- <&gpio3 2 0>,
- <&gpio3 3 0>,
- <&gpio3 5 0>,
- <&gpio3 6 0>,
- <&gpio5 7 0>,
- <&gpio6 0 0>,
- <&gpio6 3 0>,
- <&gpio6 6 0>,
- <&gpio7 3 0>,
- <&gpio8 3 0>,
- <&gpio8 6 0>,
- <&gpiob 1 0>,
- <&gpiob 7 0>,
- <&gpioc 7 0>,
- <&gpiof 2 0>,
- <&gpiof 3 0>;
- };
-};
-
-&thermistor_3V3_51K1_47K_4050B {
- status = "okay";
-};
-
-&adc_ec_vsense_pp3300_s5 {
- /*
- * Voltage divider on input has 47k upper and 220k lower legs with
- * 2714 mV full-scale reading on the ADC. Apply the largest possible
- * multiplier (without overflowing int32) to get the best possible
- * approximation of the actual ratio, but derate by a factor of two to
- * ensure unexpectedly high values won't overflow.
- */
- mul = <(791261 / 2)>;
- div = <(651975 / 2)>;
-};
-
-/* Set bus speeds for I2C */
-&i2c0_0 {
- label = "I2C_EEPROM";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-};
-
-&i2c1_0 {
- label = "I2C_SENSOR";
- clock-frequency = <I2C_BITRATE_FAST>;
-};
-
-&i2c3_0 {
- label = "I2C_USB_C0_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- /*
- * BC1.2 interrupt is shared with TCPC, so
- * IRQ is not specified here and handled by
- * usb_c0_interrupt.
- */
- };
-
- chg_port0: isl923x@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-
- tcpc_port0: raa489000@22 {
- compatible = "renesas,raa489000";
- reg = <0x22>;
- tcpc-flags = <(
- TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_VBUS_MONITOR)>;
- };
-};
-
-&i2c5_1 {
- label = "I2C_SUB_C1_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
-
- bc12_port1: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- };
-
- chg_port1: isl923x@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-
- tcpc_port1: raa489000@22 {
- compatible = "renesas,raa489000";
- reg = <0x22>;
- tcpc-flags = <(
- TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_VBUS_MONITOR)>;
- };
-
- anx7483_mux_1: anx7483-mux-1@3e {
- compatible = "analogix,anx7483";
- reg = <0x3e>;
- board-set = "anx7483_set_default_tuning";
- flags = <USB_MUX_FLAG_RESETS_IN_G3>;
- };
-};
-
-&i2c7_0 {
- label = "I2C_BATTERY";
- clock-frequency = <I2C_BITRATE_STANDARD>;
-};
-
-&pwm5_gpb7 {
- drive-open-drain;
-};
-
-&pwm5 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm5_gpb7>;
- pinctrl-names = "default";
-};
-
-/* Tachometer for fan speed measurement */
-&tach2 {
- status = "okay";
- pinctrl-0 = <&ta2_1_in_gp73>;
- pinctrl-names = "default";
- port = <NPCX_TACH_PORT_A>; /* port-A is selected */
- sample-clk = <NPCX_TACH_FREQ_LFCLK>; /* Use LFCLK as sampling clock */
- pulses-per-round = <2>; /* number of pulses per round of encoder */
-};
-
-/* host interface */
-&espi0 {
- status = "okay";
- pinctrl-0 = <&espi_lpc_gp46_47_51_52_53_54_55_57>;
- pinctrl-names = "default";
-};
-
-/*
- * Declare GPIOs that have leakage current caused by board issues here. NPCX ec
- * will disable their input buffers before entering deep sleep and restore them
- * after waking up automatically for better power consumption.
- */
-&power_leakage_io {
- leak-gpios = <&gpioa 4 0
- &gpiof 1 0>;
-};
diff --git a/zephyr/program/nissa/nivviks/power_signals.dtsi b/zephyr/program/nissa/nivviks/power_signals.dtsi
deleted file mode 100644
index 1d2b23069d..0000000000
--- a/zephyr/program/nissa/nivviks/power_signals.dtsi
+++ /dev/null
@@ -1,220 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- chosen {
- intel-ap-pwrseq,espi = &espi0;
- };
-
- common-pwrseq {
- compatible = "intel,ap-pwrseq";
-
- sys-pwrok-delay = <10>;
- all-sys-pwrgd-timeout = <20>;
- };
-
- pwr-en-pp5000-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP5000_S5 enable output to regulator";
- enum-name = "PWR_EN_PP5000_A";
- gpios = <&gpio4 0 0>;
- output;
- };
- pwr-en-pp3300-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP3300_S5 enable output to LS";
- enum-name = "PWR_EN_PP3300_A";
- gpios = <&gpiob 6 0>;
- output;
- };
- pwr-pg-ec-rsmrst-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST power good from regulator";
- enum-name = "PWR_RSMRST";
- gpios = <&gpio9 4 0>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-pch-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST output to PCH";
- enum-name = "PWR_EC_PCH_RSMRST";
- gpios = <&gpioa 6 0>;
- output;
- };
- pwr-slp-s0-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S0_L input from PCH";
- enum-name = "PWR_SLP_S0";
- gpios = <&gpio9 7 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-s3-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S3_L input from PCH";
- enum-name = "PWR_SLP_S3";
- gpios = <&gpioa 5 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-sus-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_SUS_L input from PCH";
- enum-name = "PWR_SLP_SUS";
- gpios = <&gpio6 2 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-soc-dsw-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "DSW_PWROK output to PCH";
- enum-name = "PWR_EC_SOC_DSW_PWROK";
- gpios = <&gpio6 1 0>;
- output;
- };
- pwr-vccst-pwrgd-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VCCST_PWRGD output to PCH";
- enum-name = "PWR_VCCST_PWRGD";
- gpios = <&gpioa 4 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-imvp9-vrrdy-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VRRDY input from IMVP9";
- enum-name = "PWR_IMVP9_VRRDY";
- gpios = <&gpio4 3 0>;
- };
- pwr-pch-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PCH_PWROK output to PCH";
- enum-name = "PWR_PCH_PWROK";
- gpios = <&gpio7 2 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-ec-pch-sys-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_PWROK output to PCH";
- enum-name = "PWR_EC_PCH_SYS_PWROK";
- gpios = <&gpio3 7 0>;
- output;
- };
- pwr-sys-rst-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_RESET# output to PCH";
- enum-name = "PWR_SYS_RST";
- gpios = <&gpioc 5 (GPIO_ACTIVE_LOW|GPIO_OPEN_DRAIN)>;
- output;
- };
- pwr-slp-s4 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S4 virtual wire input from PCH";
- enum-name = "PWR_SLP_S4";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S4";
- vw-invert;
- };
- pwr-slp-s5 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S5 virtual wire input from PCH";
- enum-name = "PWR_SLP_S5";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S5";
- vw-invert;
- };
- pwr-all-sys-pwrgd {
- compatible = "intel,ap-pwrseq-external";
- dbg-label = "Combined all power good";
- enum-name = "PWR_ALL_SYS_PWRGD";
- };
- pwr-adc-pp3300 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP3300 PWROK (from ADC)";
- enum-name = "PWR_DSW_PWROK";
- trigger-high = <&cmp_pp3300_s5_high>;
- trigger-low = <&cmp_pp3300_s5_low>;
- };
- pwr-adc-pp1p05 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP1P05 PWROK (from ADC)";
- enum-name = "PWR_PG_PP1P05";
- trigger-high = <&cmp_pp1p05_high>;
- trigger-low = <&cmp_pp1p05_low>;
- };
-
- adc-cmp {
- cmp_pp3300_s5_high: pp3300_high {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 6>;
- comparison = "ADC_CMP_NPCX_GREATER";
- /*
- * This is 90% of nominal voltage considering voltage
- * divider on ADC input.
- */
- threshold-mv = <2448>;
- };
- cmp_pp3300_s5_low: pp3300_low {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 6>;
- comparison = "ADC_CMP_NPCX_LESS_OR_EQUAL";
- threshold-mv = <2448>;
- };
- cmp_pp1p05_high: pp1p05_high {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 4>;
- comparison = "ADC_CMP_NPCX_GREATER";
- /* Setting at 90% of nominal voltage */
- threshold-mv = <945>;
- };
- cmp_pp1p05_low: pp1p05_low {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 4>;
- comparison = "ADC_CMP_NPCX_LESS_OR_EQUAL";
- threshold-mv = <945>;
- };
- };
-};
-
-/*
- * Because the power signals directly reference the GPIOs,
- * the correspinding named-gpios need to have no-auto-init set.
- */
-&gpio_ec_soc_dsw_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_pch_pwrok_od {
- no-auto-init;
-};
-&gpio_ec_soc_rsmrst_l {
- no-auto-init;
-};
-&gpio_ec_soc_sys_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_vccst_pwrgd_od {
- no-auto-init;
-};
-&gpio_en_pp3300_s5 {
- no-auto-init;
-};
-&gpio_en_pp5000_s5 {
- no-auto-init;
-};
-&gpio_imvp91_vrrdy_od {
- no-auto-init;
-};
-&gpio_rsmrst_pwrgd_l {
- no-auto-init;
-};
-&gpio_slp_s0_l {
- no-auto-init;
-};
-&gpio_slp_s3_l {
- no-auto-init;
-};
-&gpio_slp_s4_l {
- no-auto-init;
-};
-&gpio_slp_sus_l {
- no-auto-init;
-};
-&gpio_sys_rst_odl {
- no-auto-init;
-};
diff --git a/zephyr/program/nissa/nivviks/project.conf b/zephyr/program/nissa/nivviks/project.conf
deleted file mode 100644
index af9e4e2586..0000000000
--- a/zephyr/program/nissa/nivviks/project.conf
+++ /dev/null
@@ -1,8 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_BOARD_NIVVIKS=y
-CONFIG_PLATFORM_EC_OCPC=y
-
-CONFIG_PLATFORM_EC_ACCELGYRO_LSM6DSO=y
diff --git a/zephyr/program/nissa/nivviks/project.overlay b/zephyr/program/nissa/nivviks/project.overlay
deleted file mode 100644
index 9ca681d979..0000000000
--- a/zephyr/program/nissa/nivviks/project.overlay
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "../cbi.dtsi"
-
-#include "cbi.dtsi"
-#include "generated.dtsi"
-#include "keyboard.dtsi"
-#include "motionsense.dtsi"
-#include "overlay.dtsi"
-#include "power_signals.dtsi"
-#include "pwm_leds.dtsi"
diff --git a/zephyr/program/nissa/nivviks/pwm_leds.dtsi b/zephyr/program/nissa/nivviks/pwm_leds.dtsi
deleted file mode 100644
index a265a5929e..0000000000
--- a/zephyr/program/nissa/nivviks/pwm_leds.dtsi
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_led0: pwm_led_0 {
- pwms = <&pwm2 2 PWM_HZ(324) PWM_POLARITY_INVERTED>,
- <&pwm0 0 PWM_HZ(324) PWM_POLARITY_INVERTED>,
- <&pwm1 1 PWM_HZ(324) PWM_POLARITY_INVERTED>;
- };
- };
-
- cros-pwmleds {
- compatible = "cros-ec,pwm-leds";
-
- leds = <&pwm_led0>;
-
- /*<red green blue>*/
- color-map-red = <100 0 0>;
- color-map-green = < 0 100 0>;
- color-map-blue = < 0 0 100>;
- color-map-yellow = < 0 50 50>;
- color-map-white = <100 100 100>;
- color-map-amber = <100 0 0>;
-
- brightness-range = <0 0 100 0 0 100>;
-
- #address-cells = <1>;
- #size-cells = <0>;
-
- pwm_led_0@0 {
- reg = <0>;
- ec-led-name = "EC_LED_ID_BATTERY_LED";
- };
- };
-};
-
-/* Enable LEDs to work while CPU suspended */
-
-&pwm0 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm0_gpc3>;
- pinctrl-names = "default";
-};
-
-&pwm1 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm1_gpc2>;
- pinctrl-names = "default";
-};
-
-&pwm2 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/nivviks/src/charger.c b/zephyr/program/nissa/nivviks/src/charger.c
deleted file mode 100644
index 234bcbbd55..0000000000
--- a/zephyr/program/nissa/nivviks/src/charger.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "battery.h"
-#include "charger.h"
-#include "charger/isl923x_public.h"
-#include "console.h"
-#include "extpower.h"
-#include "nissa_common.h"
-#include "usb_pd.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-int extpower_is_present(void)
-{
- int port;
- int rv;
- bool acok;
-
- for (port = 0; port < board_get_usb_pd_port_count(); port++) {
- rv = raa489000_is_acok(port, &acok);
- if ((rv == EC_SUCCESS) && acok)
- return 1;
- }
-
- return 0;
-}
-
-/*
- * Nivviks does not have a GPIO indicating whether extpower is present,
- * so detect using the charger(s).
- */
-__override void board_check_extpower(void)
-{
- static int last_extpower_present;
- int extpower_present = extpower_is_present();
-
- if (last_extpower_present ^ extpower_present)
- extpower_handle_update(extpower_present);
-
- last_extpower_present = extpower_present;
-}
-
-__override void board_hibernate(void)
-{
- /* Shut down the chargers */
- if (board_get_usb_pd_port_count() == 2)
- raa489000_hibernate(CHARGER_SECONDARY, true);
- raa489000_hibernate(CHARGER_PRIMARY, true);
- LOG_INF("Charger(s) hibernated");
- cflush();
-}
diff --git a/zephyr/program/nissa/nivviks/src/fan.c b/zephyr/program/nissa/nivviks/src/fan.c
deleted file mode 100644
index 3111a70e03..0000000000
--- a/zephyr/program/nissa/nivviks/src/fan.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "cros_cbi.h"
-#include "fan.h"
-#include "gpio/gpio.h"
-#include "hooks.h"
-#include "nissa_common.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-/*
- * Nirwen fan support
- */
-static void fan_init(void)
-{
- int ret;
- uint32_t val;
- /*
- * Retrieve the fan config.
- */
- ret = cros_cbi_get_fw_config(FW_FAN, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_FAN);
- return;
- }
- if (val != FW_FAN_PRESENT) {
- /* Disable the fan */
- fan_set_count(0);
- } else {
- /* Configure the fan enable GPIO */
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_fan_enable),
- GPIO_OUTPUT);
- }
-}
-DECLARE_HOOK(HOOK_INIT, fan_init, HOOK_PRIO_POST_FIRST);
diff --git a/zephyr/program/nissa/nivviks/src/form_factor.c b/zephyr/program/nissa/nivviks/src/form_factor.c
deleted file mode 100644
index 08dfa5c04b..0000000000
--- a/zephyr/program/nissa/nivviks/src/form_factor.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "accelgyro.h"
-#include "cros_cbi.h"
-#include "hooks.h"
-#include "motionsense_sensors.h"
-#include "nissa_common.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-/*
- * Mainboard orientation support.
- */
-
-#define ALT_MAT SENSOR_ROT_STD_REF_NAME(DT_NODELABEL(base_rot_inverted))
-#define BASE_SENSOR SENSOR_ID(DT_NODELABEL(base_accel))
-#define BASE_GYRO SENSOR_ID(DT_NODELABEL(base_gyro))
-
-static void form_factor_init(void)
-{
- int ret;
- uint32_t val;
- /*
- * If the firmware config indicates
- * an inverted form factor, use the alternative
- * rotation matrix.
- */
- ret = cros_cbi_get_fw_config(FW_BASE_INVERSION, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d",
- FW_BASE_INVERSION);
- return;
- }
- if (val == FW_BASE_INVERTED) {
- LOG_INF("Switching to inverted base");
- motion_sensors[BASE_SENSOR].rot_standard_ref = &ALT_MAT;
- motion_sensors[BASE_GYRO].rot_standard_ref = &ALT_MAT;
- }
-}
-DECLARE_HOOK(HOOK_INIT, form_factor_init, HOOK_PRIO_POST_I2C);
diff --git a/zephyr/program/nissa/nivviks/src/keyboard.c b/zephyr/program/nissa/nivviks/src/keyboard.c
deleted file mode 100644
index f13d5bf78c..0000000000
--- a/zephyr/program/nissa/nivviks/src/keyboard.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ec_commands.h"
-
-static const struct ec_response_keybd_config nivviks_kb = {
- .num_top_row_keys = 10,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_REFRESH, /* T2 */
- TK_FULLSCREEN, /* T3 */
- TK_OVERVIEW, /* T4 */
- TK_SNAPSHOT, /* T5 */
- TK_BRIGHTNESS_DOWN, /* T6 */
- TK_BRIGHTNESS_UP, /* T7 */
- TK_VOL_MUTE, /* T8 */
- TK_VOL_DOWN, /* T9 */
- TK_VOL_UP, /* T10 */
- },
- .capabilities = KEYBD_CAP_SCRNLOCK_KEY,
-};
-
-__override const struct ec_response_keybd_config *
-board_vivaldi_keybd_config(void)
-{
- return &nivviks_kb;
-}
diff --git a/zephyr/program/nissa/nivviks/src/led.c b/zephyr/program/nissa/nivviks/src/led.c
deleted file mode 100644
index 9087982604..0000000000
--- a/zephyr/program/nissa/nivviks/src/led.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * Battery LED control for nissa
- */
-#include "common.h"
-#include "ec_commands.h"
-#include "led_common.h"
-#include "led_onoff_states.h"
-#include "led_pwm.h"
-
-__override const int led_charge_lvl_1 = 5;
-__override const int led_charge_lvl_2 = 97;
-__override struct led_descriptor
- led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
- [STATE_CHARGING_LVL_1] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_CHARGING_LVL_2] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_CHARGING_FULL_CHARGE] = { { EC_LED_COLOR_BLUE,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S0] = { { EC_LED_COLOR_BLUE,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S0_BAT_LOW] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S3] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S5] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_BATTERY_ERROR] = { { EC_LED_COLOR_AMBER,
- 1 * LED_ONE_SEC },
- { LED_OFF, 1 * LED_ONE_SEC } },
- [STATE_FACTORY_TEST] = { { EC_LED_COLOR_AMBER,
- 2 * LED_ONE_SEC },
- { EC_LED_COLOR_BLUE,
- 2 * LED_ONE_SEC } },
- };
-
-__override void led_set_color_battery(enum ec_led_colors color)
-{
- switch (color) {
- case EC_LED_COLOR_BLUE:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_BLUE);
- break;
- case EC_LED_COLOR_AMBER:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_AMBER);
- break;
- default: /* LED_OFF and other unsupported colors */
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, -1);
- break;
- }
-}
diff --git a/zephyr/program/nissa/nivviks/src/usbc.c b/zephyr/program/nissa/nivviks/src/usbc.c
deleted file mode 100644
index 1e0c1627bb..0000000000
--- a/zephyr/program/nissa/nivviks/src/usbc.c
+++ /dev/null
@@ -1,251 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charge_state_v2.h"
-#include "chipset.h"
-#include "driver/charger/isl923x_public.h"
-#include "driver/retimer/anx7483_public.h"
-#include "driver/tcpm/raa489000.h"
-#include "driver/tcpm/tcpci.h"
-#include "hooks.h"
-#include "nissa_common.h"
-#include "system.h"
-#include "usb_mux.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-int board_is_sourcing_vbus(int port)
-{
- int regval;
-
- tcpc_read(port, TCPC_REG_POWER_STATUS, &regval);
- return !!(regval & TCPC_REG_POWER_STATUS_SOURCING_VBUS);
-}
-
-int board_set_active_charge_port(int port)
-{
- int is_real_port = (port >= 0 && port < CONFIG_USB_PD_PORT_MAX_COUNT);
- int i;
- int old_port;
-
- if (!is_real_port && port != CHARGE_PORT_NONE)
- return EC_ERROR_INVAL;
-
- old_port = charge_manager_get_active_charge_port();
-
- LOG_INF("New chg p%d", port);
-
- /* Disable all ports. */
- if (port == CHARGE_PORT_NONE) {
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- tcpc_write(i, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_LOW);
- raa489000_enable_asgate(i, false);
- }
-
- return EC_SUCCESS;
- }
-
- /* Check if port is sourcing VBUS. */
- if (board_is_sourcing_vbus(port)) {
- LOG_WRN("Skip enable p%d", port);
- return EC_ERROR_INVAL;
- }
-
- /*
- * Turn off the other ports' sink path FETs, before enabling the
- * requested charge port.
- */
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- if (i == port)
- continue;
-
- if (tcpc_write(i, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_LOW))
- LOG_WRN("p%d: sink path disable failed.", i);
- raa489000_enable_asgate(i, false);
- }
-
- /*
- * Stop the charger IC from switching while changing ports. Otherwise,
- * we can overcurrent the adapter we're switching to. (crbug.com/926056)
- */
- if (old_port != CHARGE_PORT_NONE)
- charger_discharge_on_ac(1);
-
- /* Enable requested charge port. */
- if (raa489000_enable_asgate(port, true) ||
- tcpc_write(port, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_HIGH)) {
- LOG_WRN("p%d: sink path enable failed.", port);
- charger_discharge_on_ac(0);
- return EC_ERROR_UNKNOWN;
- }
-
- /* Allow the charger IC to begin/continue switching. */
- charger_discharge_on_ac(0);
-
- return EC_SUCCESS;
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- uint16_t status = 0;
- int regval;
-
- /*
- * The interrupt line is shared between the TCPC and BC1.2 detector IC.
- * Therefore, go out and actually read the alert registers to report the
- * alert status.
- */
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl))) {
- if (!tcpc_read16(0, TCPC_REG_ALERT, &regval)) {
- /* The TCPCI Rev 1.0 spec says to ignore bits 14:12. */
- if (!(tcpc_config[0].flags & TCPC_FLAGS_TCPCI_REV2_0))
- regval &= ~((1 << 14) | (1 << 13) | (1 << 12));
-
- if (regval)
- status |= PD_STATUS_TCPC_ALERT_0;
- }
- }
-
- if (board_get_usb_pd_port_count() == 2 &&
- !gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- if (!tcpc_read16(1, TCPC_REG_ALERT, &regval)) {
- /* TCPCI spec Rev 1.0 says to ignore bits 14:12. */
- if (!(tcpc_config[1].flags & TCPC_FLAGS_TCPCI_REV2_0))
- regval &= ~((1 << 14) | (1 << 13) | (1 << 12));
-
- if (regval)
- status |= PD_STATUS_TCPC_ALERT_1;
- }
- }
-
- return status;
-}
-
-void pd_power_supply_reset(int port)
-{
- /* Disable VBUS */
- tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SRC_CTRL_LOW);
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-__override void typec_set_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- if (port < 0 || port >= CONFIG_USB_PD_PORT_MAX_COUNT)
- return;
-
- raa489000_set_output_current(port, rp);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- int rv;
-
- if (port >= CONFIG_USB_PD_PORT_MAX_COUNT)
- return EC_ERROR_INVAL;
-
- /* Disable charging. */
- rv = tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SNK_CTRL_LOW);
- if (rv)
- return rv;
-
- /* Our policy is not to source VBUS when the AP is off. */
- if (chipset_in_state(CHIPSET_STATE_ANY_OFF))
- return EC_ERROR_NOT_POWERED;
-
- /* Provide Vbus. */
- rv = tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SRC_CTRL_HIGH);
- if (rv)
- return rv;
-
- rv = raa489000_enable_asgate(port, true);
- if (rv)
- return rv;
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-void board_reset_pd_mcu(void)
-{
- /*
- * TODO(b:147316511): could send a reset command to the TCPC here
- * if needed.
- */
-}
-
-/*
- * Because the TCPCs and BC1.2 chips share interrupt lines, it's possible
- * for an interrupt to be lost if one asserts the IRQ, the other does the same
- * then the first releases it: there will only be one falling edge to trigger
- * the interrupt, and the line will be held low. We handle this by running a
- * deferred check after a falling edge to see whether the IRQ is still being
- * asserted. If it is, we assume an interrupt may have been lost and we need
- * to poll each chip for events again.
- */
-#define USBC_INT_POLL_DELAY_US 5000
-
-static void poll_c0_int(void);
-DECLARE_DEFERRED(poll_c0_int);
-static void poll_c1_int(void);
-DECLARE_DEFERRED(poll_c1_int);
-
-static void usbc_interrupt_trigger(int port)
-{
- schedule_deferred_pd_interrupt(port);
- usb_charger_task_set_event(port, USB_CHG_EVENT_BC12);
-}
-
-static inline void poll_usb_gpio(int port, const struct gpio_dt_spec *gpio,
- const struct deferred_data *ud)
-{
- if (!gpio_pin_get_dt(gpio)) {
- usbc_interrupt_trigger(port);
- hook_call_deferred(ud, USBC_INT_POLL_DELAY_US);
- }
-}
-
-static void poll_c0_int(void)
-{
- poll_usb_gpio(0, GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl),
- &poll_c0_int_data);
-}
-
-static void poll_c1_int(void)
-{
- poll_usb_gpio(1, GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl),
- &poll_c1_int_data);
-}
-
-void usb_interrupt(enum gpio_signal signal)
-{
- int port;
- const struct deferred_data *ud;
-
- if (signal == GPIO_SIGNAL(DT_NODELABEL(gpio_usb_c0_int_odl))) {
- port = 0;
- ud = &poll_c0_int_data;
- } else {
- port = 1;
- ud = &poll_c1_int_data;
- }
- /*
- * We've just been called from a falling edge, so there's definitely
- * no lost IRQ right now. Cancel any pending check.
- */
- hook_call_deferred(ud, -1);
- /* Trigger polling of TCPC and BC1.2 in respective tasks */
- usbc_interrupt_trigger(port);
- /* Check for lost interrupts in a bit */
- hook_call_deferred(ud, USBC_INT_POLL_DELAY_US);
-}
diff --git a/zephyr/program/nissa/npcx_program.conf b/zephyr/program/nissa/npcx_program.conf
deleted file mode 100644
index 83ee245a8d..0000000000
--- a/zephyr/program/nissa/npcx_program.conf
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# EC chip configuration: NPCX993
-CONFIG_CROS_SYSTEM_NPCX=y
-CONFIG_SOC_SERIES_NPCX9=y
-CONFIG_PLATFORM_EC_WORKAROUND_FLASH_DOWNLOAD_API=y
-CONFIG_SYSCON=y
-CONFIG_SHELL_BACKEND_SERIAL_RX_RING_BUFFER_SIZE=256
-
-# Common sensor drivers
-CONFIG_PLATFORM_EC_ACCEL_LIS2DW12=y
-
-# Keyboard
-CONFIG_PLATFORM_EC_KBLIGHT_ENABLE_PIN=y
-# Ensure recovery key combination (esc+refresh+power) is reliable
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI3=y
-CONFIG_PLATFORM_EC_KEYBOARD_REFRESH_ROW3=y
-
-# TCPC+PPC: both C0 and C1 (if present) are RAA489000
-CONFIG_PLATFORM_EC_USB_PD_TCPM_RAA489000=y
-CONFIG_PLATFORM_EC_USB_PD_DISCHARGE_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_TCPC_LPM_EXIT_DEBOUNCE_US=100000
-# RAA489000 uses TCPCI but not a separate PPC, so custom function is required
-CONFIG_PLATFORM_EC_USB_PD_5V_EN_CUSTOM=y
-# type C port 1 redriver
-CONFIG_PLATFORM_EC_USBC_RETIMER_ANX7483=y
-
-# Save some flash space by turning off features we don't care much about
-# (EC Kconfig.console turns the ones we do care about on by default)
-CONFIG_SHELL_MINIMAL=y
-
-# FRS enable
-CONFIG_PLATFORM_EC_USB_PD_FRS=y
-CONFIG_PLATFORM_EC_USB_PD_FRS_TCPC=y
-
-# Charger driver and configuration
-CONFIG_PLATFORM_EC_CHARGER_RAA489000=y
-CONFIG_PLATFORM_EC_OCPC_DEF_RBATT_MOHMS=22
-
-# VSENSE: PP3300_S5 & PP1050_PROC
-CONFIG_ADC_CMP_NPCX=y
-CONFIG_ADC_CMP_NPCX_WORKQUEUE=y
-CONFIG_ADC_CMP_NPCX_WORKQUEUE_PRIORITY=12
-CONFIG_SENSOR=y
-CONFIG_SENSOR_SHELL=n
diff --git a/zephyr/program/nissa/program.conf b/zephyr/program/nissa/program.conf
deleted file mode 100644
index ade406671a..0000000000
--- a/zephyr/program/nissa/program.conf
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Core EC configuration: build the EC application, using ECOS shims
-# (which are currently required for a number of features).
-CONFIG_CROS_EC=y
-CONFIG_PLATFORM_EC=y
-CONFIG_SHIMMED_TASKS=y
-CONFIG_LTO=y
-
-# RAM-saving options
-# flash shell command is unused, allocated a 4kB buffer for flash test
-CONFIG_FLASH_SHELL=n
-# EC default 1kB buffer seems unnecessarily large, Zephyr default is 8 bytes
-CONFIG_SHELL_BACKEND_SERIAL_TX_RING_BUFFER_SIZE=128
-
-# Standard shimmed features
-CONFIG_PLATFORM_EC_BACKLIGHT_LID=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_SYSINFO=y
-CONFIG_PLATFORM_EC_EEPROM_CBI_WP=y
-CONFIG_PLATFORM_EC_LID_SWITCH=y
-CONFIG_PLATFORM_EC_POWER_BUTTON=y
-CONFIG_PLATFORM_EC_SWITCH=y
-CONFIG_PLATFORM_EC_GMR_TABLET_MODE=y
-CONFIG_PLATFORM_EC_TABLET_MODE=y
-CONFIG_PLATFORM_EC_TABLET_MODE_SWITCH=y
-CONFIG_PLATFORM_EC_VBOOT_EFS2=y
-CONFIG_PLATFORM_EC_VBOOT_HASH=y
-
-# Application processor; communicates with EC via eSPI
-CONFIG_AP=y
-CONFIG_AP_X86_INTEL_ADL=y
-CONFIG_ESPI=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S4=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S5=y
-CONFIG_PLATFORM_EC_HOSTCMD=y
-CONFIG_HCDEBUG_OFF=y
-CONFIG_PLATFORM_EC_THROTTLE_AP=y
-CONFIG_PLATFORM_EC_PORT80=y
-CONFIG_PLATFORM_EC_PORT80_QUIET=y
-
-# AP Power Sequencing
-CONFIG_AP_PWRSEQ=y
-CONFIG_X86_NON_DSX_PWRSEQ_ADL=y
-CONFIG_X86_NON_DSX_PWRSEQ_CONSOLE=y
-CONFIG_X86_NON_DSX_PWRSEQ_HOST_CMD=y
-CONFIG_AP_PWRSEQ_S0IX=y
-CONFIG_AP_PWRSEQ_S0IX_ERROR_RECOVERY=y
-
-# Keyboard support
-CONFIG_PLATFORM_EC_KBLIGHT_ENABLE_PIN=y
-CONFIG_PLATFORM_EC_KEYBOARD_PROTOCOL_8042=y
-CONFIG_PLATFORM_EC_VOLUME_BUTTONS=y
-CONFIG_PLATFORM_EC_CMD_BUTTON=n
-# Column 2 is driven through the GSC, which inverts the signal going through it
-CONFIG_PLATFORM_EC_KEYBOARD_COL2_INVERTED=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_COMMON=y
-CONFIG_PLATFORM_EC_LED_ONOFF_STATES=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_LEDTEST=n
-
-# MKBP event
-CONFIG_PLATFORM_EC_MKBP_EVENT=y
-CONFIG_PLATFORM_EC_MKBP_INPUT_DEVICES=y
-CONFIG_PLATFORM_EC_MKBP_USE_GPIO_AND_HOST_EVENT=y
-
-# Temperature sensor support
-CONFIG_PLATFORM_EC_TEMP_SENSOR_FIRST_READ_DELAY=y
-
-# CBI EEPROM support
-CONFIG_EEPROM=y
-CONFIG_PLATFORM_EC_BOARD_VERSION_CBI=y
-
-# PWM support
-CONFIG_PWM_SHELL=y
-
-# Sensors support
-CONFIG_PLATFORM_EC_LID_ANGLE=y
-CONFIG_PLATFORM_EC_LID_ANGLE_UPDATE=y
-CONFIG_PLATFORM_EC_MOTIONSENSE=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCELS=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCEL_INFO=y
-CONFIG_PLATFORM_EC_ACCEL_FIFO=y
-CONFIG_PLATFORM_EC_SENSOR_TIGHT_TIMESTAMPS=y
-
-# USB-C: enable PD on up to two ports
-CONFIG_PLATFORM_EC_USBC=y
-CONFIG_PLATFORM_EC_USBC_PPC=n
-CONFIG_PLATFORM_EC_USB_VID=0x18d1
-CONFIG_PLATFORM_EC_USB_PID=0x505a
-# USB4 and TBT are unsupported
-CONFIG_PLATFORM_EC_USB_PD_USB4=n
-CONFIG_PLATFORM_EC_USB_PD_TBT_COMPAT_MODE=n
-
-CONFIG_PLATFORM_EC_USB_MUX_RUNTIME_CONFIG=y
-CONFIG_PLATFORM_EC_USB_MUX_VIRTUAL=y
-CONFIG_PLATFORM_EC_USB_PD_REQUIRE_AP_MODE_ENTRY=y
-# ADL integrated muxes are slow: unblock PD
-CONFIG_PLATFORM_EC_USB_MUX_TASK=y
-
-# USB-C TCPC and PPC standard options
-CONFIG_PLATFORM_EC_USB_PD_TCPC_LOW_POWER=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_MEASURE_CHARGER=y
-
-# USB-A host ports
-CONFIG_PLATFORM_EC_USB_PORT_ENABLE_DYNAMIC=y
-# Both ports use a smart switch with CTL1..3 fixed high, for SDP2 or CDP only:
-# either SLGC55545 or PI5USB2546.
-CONFIG_PLATFORM_EC_USB_PORT_POWER_SMART=y
-CONFIG_PLATFORM_EC_USB_PORT_POWER_SMART_CDP_SDP_ONLY=y
-CONFIG_PLATFORM_EC_USB_PORT_POWER_SMART_DEFAULT_CDP=y
-CONFIG_PLATFORM_EC_USB_PORT_POWER_SMART_INVERTED=y
-
-# Battery support
-CONFIG_PLATFORM_EC_BATTERY_CUT_OFF=y
-CONFIG_PLATFORM_EC_BATTERY_PRESENT_GPIO=y
-CONFIG_PLATFORM_EC_BATTERY_FUEL_GAUGE=y
-CONFIG_PLATFORM_EC_BATTERY_SMART=y
-CONFIG_PLATFORM_EC_BATTERY_REVIVE_DISCONNECT=y
-
-# Charger support
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR=10
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR_AC=10
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC=y
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC_CHARGER=y
-CONFIG_PLATFORM_EC_OCPC_DEF_DRIVELIMIT_MILLIVOLTS=200
-# Assume 4% overdraw, which could be changed with actual characterization
-CONFIG_PLATFORM_EC_CHARGER_INPUT_CURRENT_DERATE_PCT=4
-CONFIG_PLATFORM_EC_CHARGER_MIN_INPUT_CURRENT_LIMIT=512
-
-# Reduce logging so that state transitions do not cause protocol issues
-# pd dump [1-3] can be used to increase the debugging level
-CONFIG_PLATFORM_EC_USB_PD_INITIAL_DEBUG_LEVEL=0
-
-# System-side power distribution is designed to be robust up to about 45W, and
-# higher input power may have negative reliability implications (especially for
-# systems with 2S batteries). Most devices can't exceed 45W sinking anyway, so
-# limit charger power to keep system input current within the design range.
-CONFIG_PLATFORM_EC_PD_MAX_POWER_MW=45000
-# 15V input is slightly more efficient than 20V for all supported chargers, and
-# because power is limited to 45W for other reasons (see above) limiting input
-# voltage like this does not compromise the total power capacity of the system.
-CONFIG_PLATFORM_EC_PD_MAX_VOLTAGE_MV=15000 \ No newline at end of file
diff --git a/zephyr/program/nissa/pujjo/cbi.dtsi b/zephyr/program/nissa/pujjo/cbi.dtsi
deleted file mode 100644
index 02057140a5..0000000000
--- a/zephyr/program/nissa/pujjo/cbi.dtsi
+++ /dev/null
@@ -1,190 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- /* Pujjo-specific fw_config fields. */
- nissa-fw-config {
- /*
- * FW_CONFIG field to enable KB back light or not.
- */
- kb-bl {
- enum-name = "FW_KB_BL";
- start = <3>;
- size = <1>;
-
- no-kb-bl {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_BL_NOT_PRESENT";
- value = <0>;
- };
- kb-bl-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_BL_PRESENT";
- value = <1>;
- };
- };
-
- /*
- * FW_CONFIG field for KB PWB present or not.
- */
- kb-pwb {
- enum-name = "FW_KB_PWB";
- start = <4>;
- size = <1>;
-
- no-kb-pwb {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_PWB_NOT_PRESENT";
- value = <0>;
- };
- kb-pwb-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_PWB_PRESENT";
- value = <1>;
- };
- };
-
- /*
- * FW_CONFIG field for tablet present or not.
- */
- tablet {
- enum-name = "FW_TABLET";
- start = <5>;
- size = <1>;
-
- no-tablet {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_TABLET_NOT_PRESENT";
- value = <0>;
- };
- tablet-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_TABLET_PRESENT";
- value = <1>;
- };
- };
-
- /*
- * FW_CONFIG field for LTE board present or not.
- *
- * start = <6>;
- * size = <1>;
- */
-
- /*
- * FW_CONFIG field for SD card present or not.
- *
- * start = <7>;
- * size = <1>;
- */
-
- /*
- * FW_CONFIG field for pen present or not.
- */
- pen {
- enum-name = "FW_PEN";
- start = <8>;
- size = <1>;
-
- no-pen {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_PEN_NOT_PRESENT";
- value = <0>;
- };
- pen-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_PEN_PRESENT";
- value = <1>;
- };
- };
-
- /*
- * FW_CONFIG field for WF camera present or not.
- *
- * start = <9>;
- * size = <1>;
- */
-
- /*
- * FW_CONFIG field for multiple thermal table.
- */
- therm-table {
- enum-name = "THERM_TABLE";
- start = <10>;
- size = <2>;
-
- therm-table-1 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "THERM_TABLE_1";
- value = <1>;
- };
- };
-
- /*
- * FW_CONFIG field for multiple audio module.
- *
- * start = <12>;
- * size = <3>;
- */
-
- /*
- * FW_CONFIG field for EXT_VR.
- *
- * start = <15>;
- * size = <1>;
- */
-
- /*
- * FW_CONFIG field for multiple wi-fi SAR.
- *
- * start = <16>;
- * size = <2>;
- */
- };
-
- /* Pujjo-specific ssfc fields. */
- cbi-ssfc {
- compatible = "cros-ec,cbi-ssfc";
- /*
- * SSFC field to identify BASE motion sensor.
- */
- base-sensor {
- enum-name = "BASE_SENSOR";
- size = <2>;
-
- base_sensor_0: bmi323 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <0>;
- default;
- };
- base_sensor_1: lsm6dsm {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <1>;
- };
- };
-
- /*
- * SSFC field to identify LID motion sensor.
- */
- lid-sensor {
- enum-name = "LID_SENSOR";
- size = <2>;
-
- lid_sensor_0: bma422 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <0>;
- default;
- };
- lid_sensor_1: lis2dw12 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <1>;
- };
- };
- };
-};
diff --git a/zephyr/program/nissa/pujjo/generated.dtsi b/zephyr/program/nissa/pujjo/generated.dtsi
deleted file mode 100644
index 46da0e4a02..0000000000
--- a/zephyr/program/nissa/pujjo/generated.dtsi
+++ /dev/null
@@ -1,277 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * This file is auto-generated - do not edit!
- */
-
-/ {
-
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_ec_vsense_pp1050_proc: ec_vsense_pp1050_proc {
- enum-name = "ADC_PP1050_PROC";
- io-channels = <&adc0 4>;
- };
- adc_ec_vsense_pp3300_s5: ec_vsense_pp3300_s5 {
- enum-name = "ADC_PP3300_S5";
- io-channels = <&adc0 6>;
- };
- adc_temp_sensor_1: temp_sensor_1 {
- enum-name = "ADC_TEMP_SENSOR_1";
- io-channels = <&adc0 0>;
- };
- adc_temp_sensor_2: temp_sensor_2 {
- enum-name = "ADC_TEMP_SENSOR_2";
- io-channels = <&adc0 1>;
- };
- adc_temp_sensor_3: temp_sensor_3 {
- enum-name = "ADC_TEMP_SENSOR_3";
- io-channels = <&adc0 10>;
- };
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_acc_int_l: acc_int_l {
- gpios = <&gpio5 0 GPIO_INPUT>;
- };
- gpio_all_sys_pwrgd: all_sys_pwrgd {
- gpios = <&gpioa 7 GPIO_INPUT>;
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- gpio_cpu_c10_gate_l: cpu_c10_gate_l {
- gpios = <&gpio6 7 GPIO_INPUT>;
- };
- gpio_ec_battery_pres_odl: ec_battery_pres_odl {
- gpios = <&gpioa 3 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpio7 4 GPIO_OUTPUT>;
- };
- gpio_ec_edp_bl_en_od: ec_edp_bl_en_od {
- gpios = <&gpiod 3 GPIO_ODR_HIGH>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- gpio_ec_entering_rw: ec_entering_rw {
- gpios = <&gpio0 3 GPIO_OUTPUT>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_ec_gsc_packet_mode: ec_gsc_packet_mode {
- gpios = <&gpio7 5 GPIO_OUTPUT>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
- gpio_ec_pch_wake_odl: ec_pch_wake_odl {
- gpios = <&gpiob 0 GPIO_ODR_LOW>;
- };
- gpio_ec_prochot_odl: ec_prochot_odl {
- gpios = <&gpiof 1 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_dsw_pwrok: ec_soc_dsw_pwrok {
- gpios = <&gpio6 1 GPIO_OUTPUT>;
- };
- gpio_ec_soc_hdmi_hpd: ec_soc_hdmi_hpd {
- gpios = <&gpioe 4 GPIO_OUTPUT>;
- };
- gpio_ec_soc_int_odl: ec_soc_int_odl {
- gpios = <&gpio8 0 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_ec_soc_pch_pwrok_od: ec_soc_pch_pwrok_od {
- gpios = <&gpio7 2 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_pwr_btn_odl: ec_soc_pwr_btn_odl {
- gpios = <&gpioc 1 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- gpio_ec_soc_rsmrst_l: ec_soc_rsmrst_l {
- gpios = <&gpioa 6 GPIO_OUTPUT>;
- };
- gpio_ec_soc_rtcrst: ec_soc_rtcrst {
- gpios = <&gpio7 6 GPIO_OUTPUT>;
- };
- gpio_ec_soc_sys_pwrok: ec_soc_sys_pwrok {
- gpios = <&gpio3 7 GPIO_OUTPUT>;
- };
- gpio_ec_soc_vccst_pwrgd_od: ec_soc_vccst_pwrgd_od {
- gpios = <&gpioa 4 GPIO_ODR_HIGH>;
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpioa 1 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_en_kb_bl: en_kb_bl {
- gpios = <&gpioa 0 GPIO_OUTPUT>;
- enum-name = "GPIO_EN_KEYBOARD_BACKLIGHT";
- };
- gpio_en_pp3300_s5: en_pp3300_s5 {
- gpios = <&gpiob 6 GPIO_OUTPUT>;
- enum-name = "GPIO_TEMP_SENSOR_POWER";
- };
- gpio_en_pp5000_pen_x: en_pp5000_pen_x {
- gpios = <&gpioe 2 GPIO_OUTPUT>;
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpio4 0 GPIO_OUTPUT>;
- };
- gpio_en_slp_z: en_slp_z {
- gpios = <&gpioe 1 GPIO_OUTPUT>;
- };
- gpio_en_usb_a0_vbus: en_usb_a0_vbus {
- gpios = <&gpio9 1 GPIO_OUTPUT>;
- };
- gpio_gsc_ec_pwr_btn_odl: gsc_ec_pwr_btn_odl {
- gpios = <&gpio0 0 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_hdmi_sel: hdmi_sel {
- gpios = <&gpioc 6 GPIO_OUTPUT>;
- };
- gpio_imu_int_l: imu_int_l {
- gpios = <&gpio5 6 GPIO_INPUT>;
- };
- gpio_imvp91_vrrdy_od: imvp91_vrrdy_od {
- gpios = <&gpio4 3 GPIO_INPUT>;
- };
- gpio_lid_open: lid_open {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_pen_detect_odl: pen_detect_odl {
- gpios = <&gpio9 6 GPIO_INPUT_PULL_UP>;
- };
- gpio_pg_pp1050_mem_s3_od: pg_pp1050_mem_s3_od {
- gpios = <&gpiof 0 GPIO_INPUT>;
- };
- gpio_pg_pp5000_s5_od: pg_pp5000_s5_od {
- gpios = <&gpio4 2 GPIO_INPUT>;
- };
- gpio_rsmrst_pwrgd_l: rsmrst_pwrgd_l {
- gpios = <&gpio9 4 GPIO_INPUT_PULL_UP>;
- };
- gpio_slp_s0_l: slp_s0_l {
- gpios = <&gpio9 7 GPIO_INPUT>;
- };
- gpio_slp_s3_l: slp_s3_l {
- gpios = <&gpioa 5 GPIO_INPUT>;
- };
- gpio_slp_s4_l: slp_s4_l {
- gpios = <&gpio7 0 GPIO_INPUT>;
- };
- gpio_slp_sus_l: slp_sus_l {
- gpios = <&gpio6 2 GPIO_INPUT>;
- };
- gpio_sub_usb_a1_ilimit_sdp: sub_usb_a1_ilimit_sdp {
- gpios = <&gpiod 5 GPIO_OUTPUT>;
- enum-name = "GPIO_USB2_ILIM_SEL";
- };
- gpio_sys_rst_odl: sys_rst_odl {
- gpios = <&gpioc 5 GPIO_ODR_HIGH>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpio9 5 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_usb_a0_ilimit_sdp: usb_a0_ilimit_sdp {
- gpios = <&gpio8 5 GPIO_OUTPUT>;
- enum-name = "GPIO_USB1_ILIM_SEL";
- };
- gpio_usb_c0_int_odl: usb_c0_int_odl {
- gpios = <&gpio0 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_vccin_aux_vid0: vccin_aux_vid0 {
- gpios = <&gpio9 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_vccin_aux_vid1: vccin_aux_vid1 {
- gpios = <&gpioe 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_voldn_btn_odl: voldn_btn_odl {
- gpios = <&gpio9 3 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_volup_btn_odl: volup_btn_odl {
- gpios = <&gpioa 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_ec_i2c_eeprom: ec_i2c_eeprom {
- i2c-port = <&i2c0_0>;
- enum-names = "I2C_PORT_EEPROM";
- };
- i2c_ec_i2c_sensor: ec_i2c_sensor {
- i2c-port = <&i2c1_0>;
- enum-names = "I2C_PORT_SENSOR";
- };
- i2c_ec_i2c_usb_c0: ec_i2c_usb_c0 {
- i2c-port = <&i2c3_0>;
- enum-names = "I2C_PORT_USB_C0_TCPC";
- };
- i2c_ec_i2c_batt: ec_i2c_batt {
- i2c-port = <&i2c7_0>;
- enum-names = "I2C_PORT_BATTERY";
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_chan0_gp45
- &adc0_chan1_gp44
- &adc0_chan4_gp41
- &adc0_chan6_gp34
- &adc0_chan10_gpe0>;
- pinctrl-names = "default";
-};
-
-
-&i2c0_0 {
- status = "okay";
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-};
-
-&i2c1_0 {
- status = "okay";
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-};
-
-&i2c3_0 {
- status = "okay";
- pinctrl-0 = <&i2c3_0_sda_scl_gpd0_d1>;
- pinctrl-names = "default";
-};
-
-&i2c7_0 {
- status = "okay";
- pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-&i2c_ctrl3 {
- status = "okay";
-};
-
-&i2c_ctrl7 {
- status = "okay";
-};
diff --git a/zephyr/program/nissa/pujjo/keyboard.dtsi b/zephyr/program/nissa/pujjo/keyboard.dtsi
deleted file mode 100644
index 00610e4e18..0000000000
--- a/zephyr/program/nissa/pujjo/keyboard.dtsi
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- kblight {
- compatible = "cros-ec,kblight-pwm";
- pwms = <&pwm6 6 PWM_HZ(2400) PWM_POLARITY_NORMAL>;
- };
-};
-
-&pwm6 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm6_gpc0>;
- pinctrl-names = "default";
-};
-
-&cros_kb_raw {
- status = "okay";
- /* No KSO2 (it's inverted and implemented by GPIO) */
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- &kso13_gp04
- &kso14_gp82
- >;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/pujjo/motionsense.dtsi b/zephyr/program/nissa/pujjo/motionsense.dtsi
deleted file mode 100644
index af21e0509e..0000000000
--- a/zephyr/program/nissa/pujjo/motionsense.dtsi
+++ /dev/null
@@ -1,245 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * Interrupt bindings for sensor devices.
- */
- bmi3xx-int = &base_accel;
- lsm6dsm-int = &base_accel;
- lis2dw12-int = &lid_accel;
- bma4xx-int = &lid_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- base_mutex: base-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 (-1) 0
- (-1) 0 0
- 0 0 (-1)>;
- };
-
- lid_rot_lis2dw12: lid-rotation-lis2dw12 {
- mat33 = <0 (-1) 0
- (-1) 0 0
- 0 0 (-1)>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
-
- base_rot_lsm6dsm: base-rotation-lsm6dsm {
- mat33 = <1 0 0
- 0 1 0
- 0 0 1>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bmi323_data: bmi323-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
-
- lsm6dsm_data_accel: lsm6dsm-accel-drv-data {
- compatible = "cros-ec,drvdata-lsm6dsm";
- status = "okay";
- };
-
- lsm6dsm_data_gyro: lsm6dsm-gyro-drv-data {
- compatible = "cros-ec,drvdata-lsm6dsm";
- status = "okay";
- };
-
- bma422_data: bma422-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
-
- lis2dw12_data: lis2dw12-drv-data {
- compatible = "cros-ec,drvdata-lis2dw12";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- * TODO(b/238139272): The first entries of the array must be
- * accelerometers,then gyroscope. Fix this dependency in the DTS
- * processing which makes the devicetree entries independent.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&bma422_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi323_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_gyro: base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi323_data>;
- };
- };
-
- motionsense-sensor-alt {
- alt_lid_accel: alt-lid-accel {
- compatible = "cros-ec,lis2dw12";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&lid_rot_lis2dw12>;
- default-range = <2>;
- drv-data = <&lis2dw12_data>;
- i2c-spi-addr-flags = "LIS2DWL_ADDR1_FLAGS";
- alternate-for = <&lid_accel>;
- alternate-ssfc-indicator = <&lid_sensor_1>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- alt_base_accel: alt-base-accel {
- compatible = "cros-ec,lsm6dsm-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_lsm6dsm>;
- drv-data = <&lsm6dsm_data_accel>;
- alternate-for = <&base_accel>;
- alternate-ssfc-indicator = <&base_sensor_1>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- ec-rate = <(100 * USEC_PER_MSEC)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- ec-rate = <0>;
- };
- };
- };
-
- alt_base_gyro: alt-base-gyro {
- compatible = "cros-ec,lsm6dsm-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_lsm6dsm>;
- drv-data = <&lsm6dsm_data_gyro>;
- default-range = <(1000 | ROUND_UP_FLAG)>; /* dps */
- alternate-for = <&base_gyro>;
- alternate-ssfc-indicator = <&base_sensor_1>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_imu &int_lid_accel>;
- };
-};
diff --git a/zephyr/program/nissa/pujjo/overlay.dtsi b/zephyr/program/nissa/pujjo/overlay.dtsi
deleted file mode 100644
index cb20ec6554..0000000000
--- a/zephyr/program/nissa/pujjo/overlay.dtsi
+++ /dev/null
@@ -1,371 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-#include <dt-bindings/usb_pd_tcpm.h>
-
-/ {
- aliases {
- gpio-cbi-wp = &gpio_ec_cbi_wp;
- gpio-wp = &gpio_ec_wp_odl;
- int-wp = &int_wp_l;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- ec-console {
- compatible = "ec-console";
- disabled = "events", "lpc", "hostcmd";
- };
-
- batteries {
- default_battery: smp {
- compatible = "smp,l22m3pg0", "battery-smart";
- };
- smp_l22m3pg1 {
- compatible = "smp,l22m3pg1", "battery-smart";
- };
- sunwoda_l22d3pg0 {
- compatible = "sunwoda,l22d3pg0", "battery-smart";
- };
- sunwoda_l22d3pg1 {
- compatible = "sunwoda,l22d3pg1", "battery-smart";
- };
- celxpert_l22c3pg0 {
- compatible = "celxpert,l22c3pg0", "battery-smart";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_power_button
- &int_lid_open
- >;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&gpio_gsc_ec_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_wp_l: wp_l {
- irq-pin = <&gpio_ec_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&gpio_tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_imu: ec_imu {
- irq-pin = <&gpio_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "motion_interrupt";
- };
- int_lid_accel: lid_accel {
- irq-pin = <&gpio_acc_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "lid_accel_interrupt";
- };
- int_vol_down: vol_down {
- irq-pin = <&gpio_voldn_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_vol_up: vol_up {
- irq-pin = <&gpio_volup_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_usb_c0: usb_c0 {
- irq-pin = <&gpio_usb_c0_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_interrupt";
- };
- };
-
- named-gpios {
- gpio_sb_2: sb_2 {
- gpios = <&gpiod 4 GPIO_OUTPUT>;
- no-auto-init;
- };
-
- gpio_sb_3: sb_3 {
- gpios = <&gpiof 5 (GPIO_OPEN_DRAIN | GPIO_VOLTAGE_1P8)>;
- no-auto-init;
- };
- gpio_sb_4: sb_4 {
- gpios = <&gpiof 4 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- no-auto-init;
- };
- gpio_fan_enable: fan-enable {
- gpios = <&gpio6 3 GPIO_OUTPUT>;
- no-auto-init;
- };
- ec-i2c-sensor-scl {
- gpios = <&gpio9 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-sensor-sda {
- gpios = <&gpio8 7 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_power_led: power_led {
- gpios = <&gpioc 2 GPIO_OUTPUT_LOW>;
- };
- gpio_led_1_odl: led_1_odl {
- gpios = <&gpioc 4 GPIO_OUTPUT_LOW>;
- };
- gpio_led_2_odl: led_2_odl {
- gpios = <&gpioc 3 GPIO_OUTPUT_LOW>;
- };
- };
-
- /*
- * Aliases used for sub-board GPIOs.
- */
- aliases {
- /*
- * Sub-board with type A USB, enable.
- */
- gpio-en-usb-a1-vbus = &gpio_sb_2;
- /*
- * HPD pins for HDMI sub-board.
- */
- gpio-hdmi-en-odl = &gpio_sb_3;
- gpio-hpd-odl = &gpio_sb_4;
- /*
- * Enable S5 rails for LTE sub-board
- */
- gpio-en-sub-s5-rails = &gpio_sb_2;
- };
-
- temp_cpu: cpu {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_1>;
- };
- temp_ddr: ddr {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_2>;
- };
- temp_ambient: ambient {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_3>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- cpu {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <90>;
- temp_host_halt = <100>;
- temp_host_release_high = <85>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_cpu>;
- };
- ddr {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <90>;
- temp_host_halt = <100>;
- temp_host_release_high = <85>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_ddr>;
- };
- ambient {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <90>;
- temp_host_halt = <100>;
- temp_host_release_high = <85>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_ambient>;
- };
- };
-
- usba {
- compatible = "cros-ec,usba-port-enable-pins";
- /*
- * sb_2 is only configured as GPIO when USB-A1 is present,
- * but it's still safe to control when disabled.
- *
- * ILIM_SEL pins are referred to by legacy enum name,
- * GPIO_USB*_ILIM_SEL. The one for port A1 is unused on
- * sub-boards that don't have USB-A so is safe to control
- * regardless of system configuration.
- */
- enable-pins = <&gpio_en_usb_a0_vbus &gpio_sb_2>;
- status = "okay";
- };
-
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- chg = <&chg_port0>;
- tcpc = <&tcpc_port0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_0>;
- };
- };
- port0-muxes {
- virtual_mux_0: virtual-mux-0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-
- fans {
- compatible = "cros-ec,fans";
-
- fan_0 {
- pwms = <&pwm5 5 PWM_KHZ(1) PWM_POLARITY_NORMAL>;
- rpm_min = <2200>;
- rpm_start = <2200>;
- rpm_max = <4200>;
- tach = <&tach2>;
- enable_gpio = <&gpio_fan_enable>;
- };
- };
-
- /*
- * Declare unused GPIOs so that they are shut down
- * and use minimal power
- */
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios =
- <&gpio3 3 0>,
- <&gpio3 6 0>,
- <&gpiod 7 0>,
- <&gpiof 2 0>,
- <&gpiof 3 0>;
- };
-};
-
-&thermistor_3V3_51K1_47K_4050B {
- status = "okay";
-};
-
-&adc_ec_vsense_pp3300_s5 {
- /*
- * Voltage divider on input has 47k upper and 220k lower legs with
- * 2714 mV full-scale reading on the ADC. Apply the largest possible
- * multiplier (without overflowing int32) to get the best possible
- * approximation of the actual ratio, but derate by a factor of two to
- * ensure unexpectedly high values won't overflow.
- */
- mul = <(791261 / 2)>;
- div = <(651975 / 2)>;
-};
-
-/* Set bus speeds for I2C */
-&i2c0_0 {
- label = "I2C_EEPROM";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-};
-
-&i2c1_0 {
- label = "I2C_SENSOR";
- clock-frequency = <I2C_BITRATE_FAST>;
-};
-
-&i2c3_0 {
- label = "I2C_USB_C0_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- /*
- * BC1.2 interrupt is shared with TCPC, so
- * IRQ is not specified here and handled by
- * usb_c0_interrupt.
- */
- };
-
- chg_port0: isl923x@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-
- tcpc_port0: raa489000@22 {
- compatible = "renesas,raa489000";
- reg = <0x22>;
- tcpc-flags = <(
- TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_VBUS_MONITOR)>;
- };
-};
-
-&i2c7_0 {
- label = "I2C_BATTERY";
- clock-frequency = <I2C_BITRATE_STANDARD>;
-};
-
-&pwm5_gpb7 {
- drive-open-drain;
-};
-
-&pwm5 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm5_gpb7>;
- pinctrl-names = "default";
-};
-
-/* Tachometer for fan speed measurement */
-&tach2 {
- status = "okay";
- pinctrl-0 = <&ta2_1_in_gp73>;
- pinctrl-names = "default";
- port = <NPCX_TACH_PORT_A>; /* port-A is selected */
- sample-clk = <NPCX_TACH_FREQ_LFCLK>; /* Use LFCLK as sampling clock */
- pulses-per-round = <2>; /* number of pulses per round of encoder */
-};
-
-/* host interface */
-&espi0 {
- status = "okay";
- pinctrl-0 = <&espi_lpc_gp46_47_51_52_53_54_55_57>;
- pinctrl-names = "default";
-};
-
-/*
- * Declare GPIOs that have leakage current caused by board issues here. NPCX ec
- * will disable their input buffers before entering deep sleep and restore them
- * after waking up automatically for better power consumption.
- */
-&power_leakage_io {
- leak-gpios = <&gpioa 4 0
- &gpiof 1 0>;
-};
diff --git a/zephyr/program/nissa/pujjo/power_signals.dtsi b/zephyr/program/nissa/pujjo/power_signals.dtsi
deleted file mode 100644
index 1d2b23069d..0000000000
--- a/zephyr/program/nissa/pujjo/power_signals.dtsi
+++ /dev/null
@@ -1,220 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- chosen {
- intel-ap-pwrseq,espi = &espi0;
- };
-
- common-pwrseq {
- compatible = "intel,ap-pwrseq";
-
- sys-pwrok-delay = <10>;
- all-sys-pwrgd-timeout = <20>;
- };
-
- pwr-en-pp5000-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP5000_S5 enable output to regulator";
- enum-name = "PWR_EN_PP5000_A";
- gpios = <&gpio4 0 0>;
- output;
- };
- pwr-en-pp3300-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP3300_S5 enable output to LS";
- enum-name = "PWR_EN_PP3300_A";
- gpios = <&gpiob 6 0>;
- output;
- };
- pwr-pg-ec-rsmrst-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST power good from regulator";
- enum-name = "PWR_RSMRST";
- gpios = <&gpio9 4 0>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-pch-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST output to PCH";
- enum-name = "PWR_EC_PCH_RSMRST";
- gpios = <&gpioa 6 0>;
- output;
- };
- pwr-slp-s0-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S0_L input from PCH";
- enum-name = "PWR_SLP_S0";
- gpios = <&gpio9 7 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-s3-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S3_L input from PCH";
- enum-name = "PWR_SLP_S3";
- gpios = <&gpioa 5 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-sus-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_SUS_L input from PCH";
- enum-name = "PWR_SLP_SUS";
- gpios = <&gpio6 2 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-soc-dsw-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "DSW_PWROK output to PCH";
- enum-name = "PWR_EC_SOC_DSW_PWROK";
- gpios = <&gpio6 1 0>;
- output;
- };
- pwr-vccst-pwrgd-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VCCST_PWRGD output to PCH";
- enum-name = "PWR_VCCST_PWRGD";
- gpios = <&gpioa 4 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-imvp9-vrrdy-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VRRDY input from IMVP9";
- enum-name = "PWR_IMVP9_VRRDY";
- gpios = <&gpio4 3 0>;
- };
- pwr-pch-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PCH_PWROK output to PCH";
- enum-name = "PWR_PCH_PWROK";
- gpios = <&gpio7 2 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-ec-pch-sys-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_PWROK output to PCH";
- enum-name = "PWR_EC_PCH_SYS_PWROK";
- gpios = <&gpio3 7 0>;
- output;
- };
- pwr-sys-rst-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_RESET# output to PCH";
- enum-name = "PWR_SYS_RST";
- gpios = <&gpioc 5 (GPIO_ACTIVE_LOW|GPIO_OPEN_DRAIN)>;
- output;
- };
- pwr-slp-s4 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S4 virtual wire input from PCH";
- enum-name = "PWR_SLP_S4";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S4";
- vw-invert;
- };
- pwr-slp-s5 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S5 virtual wire input from PCH";
- enum-name = "PWR_SLP_S5";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S5";
- vw-invert;
- };
- pwr-all-sys-pwrgd {
- compatible = "intel,ap-pwrseq-external";
- dbg-label = "Combined all power good";
- enum-name = "PWR_ALL_SYS_PWRGD";
- };
- pwr-adc-pp3300 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP3300 PWROK (from ADC)";
- enum-name = "PWR_DSW_PWROK";
- trigger-high = <&cmp_pp3300_s5_high>;
- trigger-low = <&cmp_pp3300_s5_low>;
- };
- pwr-adc-pp1p05 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP1P05 PWROK (from ADC)";
- enum-name = "PWR_PG_PP1P05";
- trigger-high = <&cmp_pp1p05_high>;
- trigger-low = <&cmp_pp1p05_low>;
- };
-
- adc-cmp {
- cmp_pp3300_s5_high: pp3300_high {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 6>;
- comparison = "ADC_CMP_NPCX_GREATER";
- /*
- * This is 90% of nominal voltage considering voltage
- * divider on ADC input.
- */
- threshold-mv = <2448>;
- };
- cmp_pp3300_s5_low: pp3300_low {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 6>;
- comparison = "ADC_CMP_NPCX_LESS_OR_EQUAL";
- threshold-mv = <2448>;
- };
- cmp_pp1p05_high: pp1p05_high {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 4>;
- comparison = "ADC_CMP_NPCX_GREATER";
- /* Setting at 90% of nominal voltage */
- threshold-mv = <945>;
- };
- cmp_pp1p05_low: pp1p05_low {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 4>;
- comparison = "ADC_CMP_NPCX_LESS_OR_EQUAL";
- threshold-mv = <945>;
- };
- };
-};
-
-/*
- * Because the power signals directly reference the GPIOs,
- * the correspinding named-gpios need to have no-auto-init set.
- */
-&gpio_ec_soc_dsw_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_pch_pwrok_od {
- no-auto-init;
-};
-&gpio_ec_soc_rsmrst_l {
- no-auto-init;
-};
-&gpio_ec_soc_sys_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_vccst_pwrgd_od {
- no-auto-init;
-};
-&gpio_en_pp3300_s5 {
- no-auto-init;
-};
-&gpio_en_pp5000_s5 {
- no-auto-init;
-};
-&gpio_imvp91_vrrdy_od {
- no-auto-init;
-};
-&gpio_rsmrst_pwrgd_l {
- no-auto-init;
-};
-&gpio_slp_s0_l {
- no-auto-init;
-};
-&gpio_slp_s3_l {
- no-auto-init;
-};
-&gpio_slp_s4_l {
- no-auto-init;
-};
-&gpio_slp_sus_l {
- no-auto-init;
-};
-&gpio_sys_rst_odl {
- no-auto-init;
-};
diff --git a/zephyr/program/nissa/pujjo/project.conf b/zephyr/program/nissa/pujjo/project.conf
deleted file mode 100644
index b9dc28b9cd..0000000000
--- a/zephyr/program/nissa/pujjo/project.conf
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_BOARD_PUJJO=y
-
-# Sensor drivers
-CONFIG_PLATFORM_EC_ACCELGYRO_LSM6DSM=y
-CONFIG_PLATFORM_EC_ACCEL_BMA4XX=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI3XX=y
-CONFIG_PLATFORM_EC_DYNAMIC_MOTION_SENSOR_COUNT=y
-
-# Increase PD max power from default
-CONFIG_PLATFORM_EC_PD_MAX_POWER_MW=65000
-CONFIG_PLATFORM_EC_PD_MAX_CURRENT_MA=3250
-
-# LED
-CONFIG_PLATFORM_EC_LED_PWM=n
-CONFIG_PLATFORM_EC_LED_COMMON=y
-
-# CBI
-CONFIG_PLATFORM_EC_BYPASS_CBI_EEPROM_WP_CHECK=y
-CONFIG_PLATFORM_EC_SYSTEM_UNLOCKED=y
-
-# DPS
-CONFIG_PLATFORM_EC_USB_PD_DPS=n
-
-# BTN
-CONFIG_PLATFORM_EC_BUTTONS_RUNTIME_CONFIG=y
-
-# Charger
-CONFIG_PLATFORM_EC_RAA489000_TRICKLE_CHARGE_CURRENT_256MA=y \ No newline at end of file
diff --git a/zephyr/program/nissa/pujjo/project.overlay b/zephyr/program/nissa/pujjo/project.overlay
deleted file mode 100644
index e498775714..0000000000
--- a/zephyr/program/nissa/pujjo/project.overlay
+++ /dev/null
@@ -1,13 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "../cbi.dtsi"
-
-#include "cbi.dtsi"
-#include "generated.dtsi"
-#include "keyboard.dtsi"
-#include "motionsense.dtsi"
-#include "overlay.dtsi"
-#include "power_signals.dtsi"
diff --git a/zephyr/program/nissa/pujjo/pujjo_vif.xml b/zephyr/program/nissa/pujjo/pujjo_vif.xml
deleted file mode 100644
index b7d462584a..0000000000
--- a/zephyr/program/nissa/pujjo/pujjo_vif.xml
+++ /dev/null
@@ -1,350 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<vif:VIF xmlns:opt="http://usb.org/VendorInfoFileOptionalContent.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="http://usb.org/VendorInfoFile.xsd">
- <vif:VIF_Specification>3.19</vif:VIF_Specification>
- <vif:VIF_App>
- <vif:Vendor>USB-IF</vif:Vendor>
- <vif:Name>VIF Editor</vif:Name>
- <vif:Version>3.2.4.0</vif:Version>
- </vif:VIF_App>
- <vif:Vendor_Name>Google</vif:Vendor_Name>
- <vif:Model_Part_Number>Pujjo</vif:Model_Part_Number>
- <vif:Product_Revision>1</vif:Product_Revision>
- <vif:TID>0</vif:TID>
- <vif:VIF_Product_Type value="0">Port Product</vif:VIF_Product_Type>
- <vif:Certification_Type value="0">End Product</vif:Certification_Type>
- <vif:Product>
- <!--Product Level Content:-->
- </vif:Product>
- <vif:Component>
- <!--Component 0: Port 0-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Component-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Port_Label>0</vif:Port_Label>
- <vif:Connector_Type value="2">Type-C®</vif:Connector_Type>
- <vif:USB4_Supported value="false" />
- <vif:USB_PD_Support value="true" />
- <vif:PD_Port_Type value="4">DRP</vif:PD_Port_Type>
- <vif:Type_C_State_Machine value="2">DRP</vif:Type_C_State_Machine>
- <vif:Port_Battery_Powered value="true" />
- <vif:BC_1_2_Support value="2">Charging Port</vif:BC_1_2_Support>
- <vif:Captive_Cable value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;General PD-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Spec_Revision_Major value="3" />
- <vif:PD_Spec_Revision_Minor value="1" />
- <vif:PD_Spec_Version_Major value="1" />
- <vif:PD_Spec_Version_Minor value="3" />
- <vif:PD_Specification_Revision value="2">Revision 3</vif:PD_Specification_Revision>
- <vif:SOP_Capable value="true" />
- <vif:SOP_P_Capable value="true" />
- <vif:SOP_PP_Capable value="true" />
- <vif:SOP_P_Debug_Capable value="false" />
- <vif:SOP_PP_Debug_Capable value="false" />
- <vif:Manufacturer_Info_Supported_Port value="true" />
- <vif:Manufacturer_Info_VID_Port value="6353">18D1</vif:Manufacturer_Info_VID_Port>
- <vif:Manufacturer_Info_PID_Port value="20570">505A</vif:Manufacturer_Info_PID_Port>
- <vif:Chunking_Implemented_SOP value="true" />
- <vif:Unchunked_Extended_Messages_Supported value="false" />
- <vif:Security_Msgs_Supported_SOP value="false" />
- <vif:Unconstrained_Power value="false" />
- <vif:Num_Fixed_Batteries value="1" />
- <vif:Num_Swappable_Battery_Slots value="0" />
- <vif:ID_Header_Connector_Type_SOP value="2">USB Type-C® Receptacle</vif:ID_Header_Connector_Type_SOP>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Capabilities-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:USB_Comms_Capable value="true" />
- <vif:DR_Swap_To_DFP_Supported value="true" />
- <vif:DR_Swap_To_UFP_Supported value="false" />
- <vif:VCONN_Swap_To_On_Supported value="true" />
- <vif:VCONN_Swap_To_Off_Supported value="true" />
- <vif:Responds_To_Discov_SOP_UFP value="false" />
- <vif:Responds_To_Discov_SOP_DFP value="true" />
- <vif:Attempts_Discov_SOP value="true" />
- <vif:Power_Interruption_Available value="0">No Interruption Possible</vif:Power_Interruption_Available>
- <vif:Data_Reset_Supported value="false" />
- <vif:Enter_USB_Supported value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Type-C®-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Type_C_Can_Act_As_Host value="true" />
- <vif:Type_C_Can_Act_As_Device value="false" />
- <vif:Type_C_Implements_Try_SRC value="true" />
- <vif:Type_C_Implements_Try_SNK value="false" />
- <vif:Type_C_Supports_Audio_Accessory value="false" />
- <vif:Type_C_Is_VCONN_Powered_Accessory value="false" />
- <vif:Type_C_Is_Debug_Target_SRC value="true" />
- <vif:Type_C_Is_Debug_Target_SNK value="true" />
- <vif:RP_Value value="1">1.5A</vif:RP_Value>
- <vif:Type_C_Port_On_Hub value="false" />
- <vif:Type_C_Power_Source value="2">Both</vif:Type_C_Power_Source>
- <vif:Type_C_Sources_VCONN value="true" />
- <vif:Type_C_Is_Alt_Mode_Controller value="true" />
- <vif:Type_C_Is_Alt_Mode_Adapter value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Product Power-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Product_Total_Source_Power_mW value="15000">15000 mW</vif:Product_Total_Source_Power_mW>
- <vif:Port_Source_Power_Type value="0">Assured</vif:Port_Source_Power_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Host-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Host_Supports_USB_Data value="true" />
- <vif:Host_Speed value="1">USB 3.2 Gen 1x1</vif:Host_Speed>
- <vif:Host_Contains_Captive_Retimer value="false" />
- <vif:Host_Truncates_DP_For_tDHPResponse value="false" />
- <vif:Host_Is_Embedded value="false" />
- <vif:Host_Suspend_Supported value="true" />
- <vif:Is_DFP_On_Hub value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Battery Charging 1.2-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:BC_1_2_Charging_Port_Type value="1">CDP</vif:BC_1_2_Charging_Port_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Source-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Source value="15000">15000 mW</vif:PD_Power_As_Source>
- <vif:EPR_Supported_As_Src value="false" />
- <vif:USB_Suspend_May_Be_Cleared value="false" />
- <vif:Sends_Pings value="false" />
- <vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink value="0">FR_Swap not supported</vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink>
- <vif:Master_Port value="false" />
- <vif:Num_Src_PDOs value="1" />
- <vif:PD_OC_Protection value="true" />
- <vif:PD_OCP_Method value="0">Over-Current Response</vif:PD_OCP_Method>
- <!--Bundle: SrcPdoList-->
- <vif:SrcPdoList>
- <vif:SrcPDO>
- <!--Source PDO 1-->
- <vif:Src_PDO_Supply_Type value="0">Fixed</vif:Src_PDO_Supply_Type>
- <vif:Src_PDO_Peak_Current value="0">100% IOC</vif:Src_PDO_Peak_Current>
- <vif:Src_PDO_Voltage value="100">5000 mV</vif:Src_PDO_Voltage>
- <vif:Src_PDO_Max_Current value="300">3000 mA</vif:Src_PDO_Max_Current>
- <vif:Src_PD_OCP_OC_Debounce value="0">0 msec</vif:Src_PD_OCP_OC_Debounce>
- <vif:Src_PD_OCP_OC_Threshold value="300">3000 mA</vif:Src_PD_OCP_OC_Threshold>
- </vif:SrcPDO>
- </vif:SrcPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Sink-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Sink value="60000">60000 mW</vif:PD_Power_As_Sink>
- <vif:EPR_Supported_As_Snk value="false" />
- <vif:No_USB_Suspend_May_Be_Set value="true" />
- <vif:GiveBack_May_Be_Set value="false" />
- <vif:Higher_Capability_Set value="false" />
- <vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source value="0">FR_Swap not supported</vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source>
- <vif:Num_Snk_PDOs value="3" />
- <!--Bundle: SnkPdoList-->
- <vif:SnkPdoList>
- <vif:SnkPDO>
- <!--Sink PDO 1-->
- <vif:Snk_PDO_Supply_Type value="0">Fixed</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Voltage value="100">5000 mV</vif:Snk_PDO_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 2-->
- <vif:Snk_PDO_Supply_Type value="1">Battery</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Op_Power value="60">15000 mW</vif:Snk_PDO_Op_Power>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="400">20000 mV</vif:Snk_PDO_Max_Voltage>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 3-->
- <vif:Snk_PDO_Supply_Type value="2">Variable</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="400">20000 mV</vif:Snk_PDO_Max_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- </vif:SnkPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Dual Role-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Accepts_PR_Swap_As_Src value="true" />
- <vif:Accepts_PR_Swap_As_Snk value="true" />
- <vif:Requests_PR_Swap_As_Src value="true" />
- <vif:Requests_PR_Swap_As_Snk value="true" />
- <vif:FR_Swap_Supported_As_Initial_Sink value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;SOP Discover ID-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:XID_SOP value="0" />
- <vif:Data_Capable_As_USB_Host_SOP value="true" />
- <vif:Data_Capable_As_USB_Device_SOP value="false" />
- <vif:Product_Type_UFP_SOP value="0">Undefined</vif:Product_Type_UFP_SOP>
- <vif:Product_Type_DFP_SOP value="2">PDUSB Host</vif:Product_Type_DFP_SOP>
- <vif:DFP_VDO_Port_Number value="0" />
- <vif:Modal_Operation_Supported_SOP value="false" />
- <vif:USB_VID_SOP value="6353">18D1</vif:USB_VID_SOP>
- <vif:PID_SOP value="20570">505A</vif:PID_SOP>
- <vif:bcdDevice_SOP value="0">0000</vif:bcdDevice_SOP>
- </vif:Component>
- <vif:Component>
- <!--Component 1: Port 1-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Component-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Port_Label>1</vif:Port_Label>
- <vif:Connector_Type value="2">Type-C®</vif:Connector_Type>
- <vif:USB4_Supported value="false" />
- <vif:USB_PD_Support value="true" />
- <vif:PD_Port_Type value="4">DRP</vif:PD_Port_Type>
- <vif:Type_C_State_Machine value="2">DRP</vif:Type_C_State_Machine>
- <vif:Port_Battery_Powered value="true" />
- <vif:BC_1_2_Support value="2">Charging Port</vif:BC_1_2_Support>
- <vif:Captive_Cable value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;General PD-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Spec_Revision_Major value="3" />
- <vif:PD_Spec_Revision_Minor value="1" />
- <vif:PD_Spec_Version_Major value="1" />
- <vif:PD_Spec_Version_Minor value="3" />
- <vif:PD_Specification_Revision value="2">Revision 3</vif:PD_Specification_Revision>
- <vif:SOP_Capable value="true" />
- <vif:SOP_P_Capable value="true" />
- <vif:SOP_PP_Capable value="true" />
- <vif:SOP_P_Debug_Capable value="false" />
- <vif:SOP_PP_Debug_Capable value="false" />
- <vif:Manufacturer_Info_Supported_Port value="true" />
- <vif:Manufacturer_Info_VID_Port value="6353">18D1</vif:Manufacturer_Info_VID_Port>
- <vif:Manufacturer_Info_PID_Port value="20570">505A</vif:Manufacturer_Info_PID_Port>
- <vif:Chunking_Implemented_SOP value="true" />
- <vif:Unchunked_Extended_Messages_Supported value="false" />
- <vif:Security_Msgs_Supported_SOP value="false" />
- <vif:Unconstrained_Power value="false" />
- <vif:Num_Fixed_Batteries value="1" />
- <vif:Num_Swappable_Battery_Slots value="0" />
- <vif:ID_Header_Connector_Type_SOP value="2">USB Type-C® Receptacle</vif:ID_Header_Connector_Type_SOP>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Capabilities-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:USB_Comms_Capable value="true" />
- <vif:DR_Swap_To_DFP_Supported value="true" />
- <vif:DR_Swap_To_UFP_Supported value="false" />
- <vif:VCONN_Swap_To_On_Supported value="true" />
- <vif:VCONN_Swap_To_Off_Supported value="true" />
- <vif:Responds_To_Discov_SOP_UFP value="false" />
- <vif:Responds_To_Discov_SOP_DFP value="true" />
- <vif:Attempts_Discov_SOP value="true" />
- <vif:Power_Interruption_Available value="0">No Interruption Possible</vif:Power_Interruption_Available>
- <vif:Data_Reset_Supported value="false" />
- <vif:Enter_USB_Supported value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Type-C®-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Type_C_Can_Act_As_Host value="true" />
- <vif:Type_C_Can_Act_As_Device value="false" />
- <vif:Type_C_Implements_Try_SRC value="true" />
- <vif:Type_C_Implements_Try_SNK value="false" />
- <vif:Type_C_Supports_Audio_Accessory value="false" />
- <vif:Type_C_Is_VCONN_Powered_Accessory value="false" />
- <vif:Type_C_Is_Debug_Target_SRC value="true" />
- <vif:Type_C_Is_Debug_Target_SNK value="true" />
- <vif:RP_Value value="1">1.5A</vif:RP_Value>
- <vif:Type_C_Port_On_Hub value="false" />
- <vif:Type_C_Power_Source value="2">Both</vif:Type_C_Power_Source>
- <vif:Type_C_Sources_VCONN value="true" />
- <vif:Type_C_Is_Alt_Mode_Controller value="true" />
- <vif:Type_C_Is_Alt_Mode_Adapter value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Product Power-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Product_Total_Source_Power_mW value="15000">15000 mW</vif:Product_Total_Source_Power_mW>
- <vif:Port_Source_Power_Type value="0">Assured</vif:Port_Source_Power_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Host-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Host_Supports_USB_Data value="true" />
- <vif:Host_Speed value="1">USB 3.2 Gen 1x1</vif:Host_Speed>
- <vif:Host_Contains_Captive_Retimer value="true" />
- <vif:Host_Truncates_DP_For_tDHPResponse value="false" />
- <vif:Host_Is_Embedded value="false" />
- <vif:Host_Suspend_Supported value="true" />
- <vif:Is_DFP_On_Hub value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Battery Charging 1.2-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:BC_1_2_Charging_Port_Type value="1">CDP</vif:BC_1_2_Charging_Port_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Source-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Source value="15000">15000 mW</vif:PD_Power_As_Source>
- <vif:EPR_Supported_As_Src value="false" />
- <vif:USB_Suspend_May_Be_Cleared value="false" />
- <vif:Sends_Pings value="false" />
- <vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink value="0">FR_Swap not supported</vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink>
- <vif:Master_Port value="false" />
- <vif:Num_Src_PDOs value="1" />
- <vif:PD_OC_Protection value="true" />
- <vif:PD_OCP_Method value="0">Over-Current Response</vif:PD_OCP_Method>
- <!--Bundle: SrcPdoList-->
- <vif:SrcPdoList>
- <vif:SrcPDO>
- <!--Source PDO 1-->
- <vif:Src_PDO_Supply_Type value="0">Fixed</vif:Src_PDO_Supply_Type>
- <vif:Src_PDO_Peak_Current value="0">100% IOC</vif:Src_PDO_Peak_Current>
- <vif:Src_PDO_Voltage value="100">5000 mV</vif:Src_PDO_Voltage>
- <vif:Src_PDO_Max_Current value="300">3000 mA</vif:Src_PDO_Max_Current>
- <vif:Src_PD_OCP_OC_Debounce value="0">0 msec</vif:Src_PD_OCP_OC_Debounce>
- <vif:Src_PD_OCP_OC_Threshold value="300">3000 mA</vif:Src_PD_OCP_OC_Threshold>
- </vif:SrcPDO>
- </vif:SrcPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Sink-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Sink value="60000">60000 mW</vif:PD_Power_As_Sink>
- <vif:EPR_Supported_As_Snk value="false" />
- <vif:No_USB_Suspend_May_Be_Set value="true" />
- <vif:GiveBack_May_Be_Set value="false" />
- <vif:Higher_Capability_Set value="false" />
- <vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source value="0">FR_Swap not supported</vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source>
- <vif:Num_Snk_PDOs value="3" />
- <!--Bundle: SnkPdoList-->
- <vif:SnkPdoList>
- <vif:SnkPDO>
- <!--Sink PDO 1-->
- <vif:Snk_PDO_Supply_Type value="0">Fixed</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Voltage value="100">5000 mV</vif:Snk_PDO_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 2-->
- <vif:Snk_PDO_Supply_Type value="1">Battery</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Op_Power value="60">15000 mW</vif:Snk_PDO_Op_Power>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="400">20000 mV</vif:Snk_PDO_Max_Voltage>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 3-->
- <vif:Snk_PDO_Supply_Type value="2">Variable</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="400">20000 mV</vif:Snk_PDO_Max_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- </vif:SnkPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Dual Role-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Accepts_PR_Swap_As_Src value="true" />
- <vif:Accepts_PR_Swap_As_Snk value="true" />
- <vif:Requests_PR_Swap_As_Src value="true" />
- <vif:Requests_PR_Swap_As_Snk value="true" />
- <vif:FR_Swap_Supported_As_Initial_Sink value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;SOP Discover ID-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:XID_SOP value="0" />
- <vif:Data_Capable_As_USB_Host_SOP value="true" />
- <vif:Data_Capable_As_USB_Device_SOP value="false" />
- <vif:Product_Type_UFP_SOP value="0">Undefined</vif:Product_Type_UFP_SOP>
- <vif:Product_Type_DFP_SOP value="2">PDUSB Host</vif:Product_Type_DFP_SOP>
- <vif:DFP_VDO_Port_Number value="1" />
- <vif:Modal_Operation_Supported_SOP value="false" />
- <vif:USB_VID_SOP value="6353">18D1</vif:USB_VID_SOP>
- <vif:PID_SOP value="20570">505A</vif:PID_SOP>
- <vif:bcdDevice_SOP value="0">0000</vif:bcdDevice_SOP>
- </vif:Component>
-</vif:VIF> \ No newline at end of file
diff --git a/zephyr/program/nissa/pujjo/src/charger.c b/zephyr/program/nissa/pujjo/src/charger.c
deleted file mode 100644
index 8763f24793..0000000000
--- a/zephyr/program/nissa/pujjo/src/charger.c
+++ /dev/null
@@ -1,64 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "battery.h"
-#include "charger.h"
-#include "charger/isl923x_public.h"
-#include "console.h"
-#include "driver/charger/isl923x.h"
-#include "driver/tcpm/raa489000.h"
-#include "extpower.h"
-#include "hooks.h"
-#include "nissa_common.h"
-#include "usb_pd.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-int extpower_is_present(void)
-{
- int port;
- int rv;
- bool acok;
-
- for (port = 0; port < board_get_usb_pd_port_count(); port++) {
- rv = raa489000_is_acok(port, &acok);
- if ((rv == EC_SUCCESS) && acok)
- return 1;
- }
-
- return 0;
-}
-
-/*
- * Pujjo does not have a GPIO indicating whether extpower is present,
- * so detect using the charger(s).
- */
-__override void board_check_extpower(void)
-{
- static int last_extpower_present;
- int extpower_present = extpower_is_present();
-
- if (last_extpower_present ^ extpower_present)
- extpower_handle_update(extpower_present);
-
- last_extpower_present = extpower_present;
-}
-
-__override void board_hibernate(void)
-{
- /* Shut down the chargers */
- raa489000_hibernate(0, true);
- LOG_INF("Charger(s) hibernated");
- cflush();
-}
-
-static void charger_prochot_init(void)
-{
- isl923x_set_ac_prochot(CHARGER_SOLO, 3500);
- isl923x_set_dc_prochot(CHARGER_SOLO, 6528);
-}
-DECLARE_HOOK(HOOK_INIT, charger_prochot_init, HOOK_PRIO_POST_FIRST);
diff --git a/zephyr/program/nissa/pujjo/src/fan.c b/zephyr/program/nissa/pujjo/src/fan.c
deleted file mode 100644
index 8b8634a653..0000000000
--- a/zephyr/program/nissa/pujjo/src/fan.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "cros_cbi.h"
-#include "fan.h"
-#include "gpio/gpio.h"
-#include "hooks.h"
-#include "nissa_common.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-/*
- * Pujjo fan support
- */
-static void fan_init(void)
-{
- int ret;
- uint32_t val;
- /*
- * Retrieve the fan config.
- */
- ret = cros_cbi_get_fw_config(FW_FAN, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_FAN);
- return;
- }
- if (val != FW_FAN_PRESENT) {
- /* Disable the fan */
- fan_set_count(0);
- } else {
- /* Configure the fan enable GPIO */
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_fan_enable),
- GPIO_OUTPUT);
- }
-}
-DECLARE_HOOK(HOOK_INIT, fan_init, HOOK_PRIO_POST_FIRST);
diff --git a/zephyr/program/nissa/pujjo/src/form_factor.c b/zephyr/program/nissa/pujjo/src/form_factor.c
deleted file mode 100644
index f160c88d78..0000000000
--- a/zephyr/program/nissa/pujjo/src/form_factor.c
+++ /dev/null
@@ -1,78 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "accelgyro.h"
-#include "button.h"
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-#include "driver/accel_bma4xx.h"
-#include "driver/accel_lis2dw12_public.h"
-#include "driver/accelgyro_bmi323.h"
-#include "driver/accelgyro_lsm6dsm.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "motion_sense.h"
-#include "motionsense_sensors.h"
-#include "nissa_common.h"
-#include "tablet_mode.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-static bool use_alt_sensor;
-static bool use_alt_lid_accel;
-
-void motion_interrupt(enum gpio_signal signal)
-{
- if (use_alt_sensor)
- lsm6dsm_interrupt(signal);
- else
- bmi3xx_interrupt(signal);
-}
-
-void lid_accel_interrupt(enum gpio_signal signal)
-{
- if (use_alt_lid_accel)
- lis2dw12_interrupt(signal);
- else
- bma4xx_interrupt(signal);
-}
-
-static void sensor_init(void)
-{
- int ret;
- uint32_t val;
- /* check which sensors are installed */
- use_alt_sensor = cros_cbi_ssfc_check_match(
- CBI_SSFC_VALUE_ID(DT_NODELABEL(base_sensor_1)));
- use_alt_lid_accel = cros_cbi_ssfc_check_match(
- CBI_SSFC_VALUE_ID(DT_NODELABEL(lid_sensor_1)));
-
- motion_sensors_check_ssfc();
-
- /* Check if it's tablet or not */
- ret = cros_cbi_get_fw_config(FW_TABLET, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_TABLET);
- return;
- }
- if (val == FW_TABLET_NOT_PRESENT) {
- LOG_INF("Clamshell: disable motionsense function.");
- motion_sensor_count = 0;
- gmr_tablet_switch_disable();
- gpio_disable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_imu));
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_imu_int_l),
- GPIO_DISCONNECTED);
-
- LOG_INF("Clamshell: disable volume button function.");
- button_disable_gpio(BUTTON_VOLUME_UP);
- button_disable_gpio(BUTTON_VOLUME_DOWN);
- } else {
- LOG_INF("Tablet: Enable motionsense function.");
- }
-}
-DECLARE_HOOK(HOOK_INIT, sensor_init, HOOK_PRIO_POST_I2C);
diff --git a/zephyr/program/nissa/pujjo/src/hdmi.c b/zephyr/program/nissa/pujjo/src/hdmi.c
deleted file mode 100644
index 9461e7c53e..0000000000
--- a/zephyr/program/nissa/pujjo/src/hdmi.c
+++ /dev/null
@@ -1,12 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "nissa_hdmi.h"
-
-__override void nissa_configure_hdmi_power_gpios(void)
-{
- /* Pujjo needs to drive VCC enable but not core rails */
- nissa_configure_hdmi_vcc();
-}
diff --git a/zephyr/program/nissa/pujjo/src/keyboard.c b/zephyr/program/nissa/pujjo/src/keyboard.c
deleted file mode 100644
index 1587030080..0000000000
--- a/zephyr/program/nissa/pujjo/src/keyboard.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ec_commands.h"
-
-static const struct ec_response_keybd_config pujjo_kb = {
- .num_top_row_keys = 10,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_REFRESH, /* T2 */
- TK_FULLSCREEN, /* T3 */
- TK_OVERVIEW, /* T4 */
- TK_BRIGHTNESS_DOWN, /* T5 */
- TK_BRIGHTNESS_UP, /* T6 */
- TK_MICMUTE, /* T7 */
- TK_VOL_MUTE, /* T8 */
- TK_VOL_DOWN, /* T9 */
- TK_VOL_UP, /* T10 */
- },
- .capabilities = KEYBD_CAP_SCRNLOCK_KEY,
-};
-
-__override const struct ec_response_keybd_config *
-board_vivaldi_keybd_config(void)
-{
- return &pujjo_kb;
-}
diff --git a/zephyr/program/nissa/pujjo/src/led.c b/zephyr/program/nissa/pujjo/src/led.c
deleted file mode 100644
index 4d859f2764..0000000000
--- a/zephyr/program/nissa/pujjo/src/led.c
+++ /dev/null
@@ -1,134 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Pujjo specific PWM LED settings: there are 2 LEDs on each side of the board,
- * each one can be controlled separately. The LED colors are white or amber,
- * and the default behavior is tied to the charging process: both sides are
- * amber while charging the battery and white when the battery is charged.
- */
-
-#include "common.h"
-#include "gpio.h"
-#include "led_common.h"
-#include "led_onoff_states.h"
-
-#define CPRINTS(format, args...) cprints(CC_CHARGER, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_CHARGER, format, ##args)
-
-#define LED_OFF_LVL 1
-#define LED_ON_LVL 0
-
-__override const int led_charge_lvl_1 = 5;
-
-__override const int led_charge_lvl_2 = 97;
-
-__override struct led_descriptor
- led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
- [STATE_CHARGING_LVL_1] = { { EC_LED_COLOR_RED,
- LED_INDEFINITE } },
- [STATE_CHARGING_LVL_2] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_CHARGING_FULL_CHARGE] = { { EC_LED_COLOR_GREEN,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S0] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S3] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S5] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_BATTERY_ERROR] = { { EC_LED_COLOR_RED, 1 * LED_ONE_SEC },
- { LED_OFF, 1 * LED_ONE_SEC } },
- [STATE_FACTORY_TEST] = { { EC_LED_COLOR_RED, 2 * LED_ONE_SEC },
- { EC_LED_COLOR_GREEN,
- 2 * LED_ONE_SEC } },
- };
-
-__override const struct led_descriptor
- led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
- [PWR_LED_STATE_ON] = { { EC_LED_COLOR_WHITE, LED_INDEFINITE } },
- [PWR_LED_STATE_SUSPEND_AC] = { { EC_LED_COLOR_WHITE,
- 3 * LED_ONE_SEC },
- { LED_OFF, 0.5 * LED_ONE_SEC } },
- [PWR_LED_STATE_SUSPEND_NO_AC] = { { EC_LED_COLOR_WHITE,
- 3 * LED_ONE_SEC },
- { LED_OFF,
- 0.5 * LED_ONE_SEC } },
- [PWR_LED_STATE_OFF] = { { LED_OFF, LED_INDEFINITE } },
- };
-
-const enum ec_led_id supported_led_ids[] = { EC_LED_ID_BATTERY_LED,
- EC_LED_ID_POWER_LED };
-
-const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-
-__override void led_set_color_power(enum ec_led_colors color)
-{
- if (color == EC_LED_COLOR_WHITE)
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_power_led),
- LED_ON_LVL);
- else
- /* LED_OFF and unsupported colors */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_power_led),
- LED_OFF_LVL);
-}
-
-__override void led_set_color_battery(enum ec_led_colors color)
-{
- switch (color) {
- case EC_LED_COLOR_AMBER:
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_led_1_odl),
- LED_ON_LVL);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_led_2_odl),
- LED_ON_LVL);
- break;
- case EC_LED_COLOR_RED:
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_led_1_odl),
- LED_ON_LVL);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_led_2_odl),
- LED_OFF_LVL);
- break;
- case EC_LED_COLOR_GREEN:
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_led_1_odl),
- LED_OFF_LVL);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_led_2_odl),
- LED_ON_LVL);
- break;
- default: /* LED_OFF and other unsupported colors */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_led_1_odl),
- LED_OFF_LVL);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_led_2_odl),
- LED_OFF_LVL);
- break;
- }
-}
-
-void led_get_brightness_range(enum ec_led_id led_id, uint8_t *brightness_range)
-{
- if (led_id == EC_LED_ID_BATTERY_LED) {
- brightness_range[EC_LED_COLOR_RED] = 1;
- brightness_range[EC_LED_COLOR_AMBER] = 1;
- brightness_range[EC_LED_COLOR_GREEN] = 1;
- } else if (led_id == EC_LED_ID_POWER_LED) {
- brightness_range[EC_LED_COLOR_WHITE] = 1;
- }
-}
-
-int led_set_brightness(enum ec_led_id led_id, const uint8_t *brightness)
-{
- if (led_id == EC_LED_ID_BATTERY_LED) {
- if (brightness[EC_LED_COLOR_RED] != 0)
- led_set_color_battery(EC_LED_COLOR_RED);
- else if (brightness[EC_LED_COLOR_AMBER] != 0)
- led_set_color_battery(EC_LED_COLOR_AMBER);
- else if (brightness[EC_LED_COLOR_GREEN] != 0)
- led_set_color_battery(EC_LED_COLOR_GREEN);
- else
- led_set_color_battery(LED_OFF);
- } else if (led_id == EC_LED_ID_POWER_LED) {
- if (brightness[EC_LED_COLOR_WHITE] != 0)
- led_set_color_power(EC_LED_COLOR_WHITE);
- else
- led_set_color_power(LED_OFF);
- }
-
- return EC_SUCCESS;
-}
diff --git a/zephyr/program/nissa/pujjo/src/usbc.c b/zephyr/program/nissa/pujjo/src/usbc.c
deleted file mode 100644
index ac93edfd7a..0000000000
--- a/zephyr/program/nissa/pujjo/src/usbc.c
+++ /dev/null
@@ -1,227 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charge_state_v2.h"
-#include "chipset.h"
-#include "driver/charger/isl923x_public.h"
-#include "driver/retimer/anx7483_public.h"
-#include "driver/tcpm/raa489000.h"
-#include "driver/tcpm/tcpci.h"
-#include "hooks.h"
-#include "nissa_common.h"
-#include "system.h"
-#include "usb_mux.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-int board_is_sourcing_vbus(int port)
-{
- int regval;
-
- tcpc_read(port, TCPC_REG_POWER_STATUS, &regval);
- return !!(regval & TCPC_REG_POWER_STATUS_SOURCING_VBUS);
-}
-
-int board_set_active_charge_port(int port)
-{
- int is_real_port = (port >= 0 && port < CONFIG_USB_PD_PORT_MAX_COUNT);
- int i;
- int old_port;
-
- if (!is_real_port && port != CHARGE_PORT_NONE)
- return EC_ERROR_INVAL;
-
- old_port = charge_manager_get_active_charge_port();
-
- LOG_INF("New chg p%d", port);
-
- /* Disable all ports. */
- if (port == CHARGE_PORT_NONE) {
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- tcpc_write(i, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_LOW);
- raa489000_enable_asgate(i, false);
- }
-
- return EC_SUCCESS;
- }
-
- /* Check if port is sourcing VBUS. */
- if (board_is_sourcing_vbus(port)) {
- LOG_WRN("Skip enable p%d", port);
- return EC_ERROR_INVAL;
- }
-
- /*
- * Turn off the other ports' sink path FETs, before enabling the
- * requested charge port.
- */
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- if (i == port)
- continue;
-
- if (tcpc_write(i, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_LOW))
- LOG_WRN("p%d: sink path disable failed.", i);
- raa489000_enable_asgate(i, false);
- }
-
- /*
- * Stop the charger IC from switching while changing ports. Otherwise,
- * we can overcurrent the adapter we're switching to. (crbug.com/926056)
- */
- if (old_port != CHARGE_PORT_NONE)
- charger_discharge_on_ac(1);
-
- /* Enable requested charge port. */
- if (raa489000_enable_asgate(port, true) ||
- tcpc_write(port, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_HIGH)) {
- LOG_WRN("p%d: sink path enable failed.", port);
- charger_discharge_on_ac(0);
- return EC_ERROR_UNKNOWN;
- }
-
- /* Allow the charger IC to begin/continue switching. */
- charger_discharge_on_ac(0);
-
- return EC_SUCCESS;
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- uint16_t status = 0;
- int regval;
-
- /*
- * The interrupt line is shared between the TCPC and BC1.2 detector IC.
- * Therefore, go out and actually read the alert registers to report the
- * alert status.
- */
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl))) {
- if (!tcpc_read16(0, TCPC_REG_ALERT, &regval)) {
- /* The TCPCI Rev 1.0 spec says to ignore bits 14:12. */
- if (!(tcpc_config[0].flags & TCPC_FLAGS_TCPCI_REV2_0))
- regval &= ~((1 << 14) | (1 << 13) | (1 << 12));
-
- if (regval)
- status |= PD_STATUS_TCPC_ALERT_0;
- }
- }
- return status;
-}
-
-void pd_power_supply_reset(int port)
-{
- /* Disable VBUS */
- tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SRC_CTRL_LOW);
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-__override void typec_set_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- if (port < 0 || port >= CONFIG_USB_PD_PORT_MAX_COUNT)
- return;
-
- raa489000_set_output_current(port, rp);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- int rv;
-
- if (port >= CONFIG_USB_PD_PORT_MAX_COUNT)
- return EC_ERROR_INVAL;
-
- /* Disable charging. */
- rv = tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SNK_CTRL_LOW);
- if (rv)
- return rv;
-
- /* Our policy is not to source VBUS when the AP is off. */
- if (chipset_in_state(CHIPSET_STATE_ANY_OFF))
- return EC_ERROR_NOT_POWERED;
-
- /* Provide Vbus. */
- rv = tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SRC_CTRL_HIGH);
- if (rv)
- return rv;
-
- rv = raa489000_enable_asgate(port, true);
- if (rv)
- return rv;
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-void board_reset_pd_mcu(void)
-{
- /*
- * TODO(b:147316511): could send a reset command to the TCPC here
- * if needed.
- */
-}
-
-/*
- * Because the TCPCs and BC1.2 chips share interrupt lines, it's possible
- * for an interrupt to be lost if one asserts the IRQ, the other does the same
- * then the first releases it: there will only be one falling edge to trigger
- * the interrupt, and the line will be held low. We handle this by running a
- * deferred check after a falling edge to see whether the IRQ is still being
- * asserted. If it is, we assume an interrupt may have been lost and we need
- * to poll each chip for events again.
- */
-#define USBC_INT_POLL_DELAY_US 5000
-
-static void poll_c0_int(void);
-DECLARE_DEFERRED(poll_c0_int);
-
-static void usbc_interrupt_trigger(int port)
-{
- schedule_deferred_pd_interrupt(port);
- usb_charger_task_set_event(port, USB_CHG_EVENT_BC12);
-}
-
-static inline void poll_usb_gpio(int port, const struct gpio_dt_spec *gpio,
- const struct deferred_data *ud)
-{
- if (!gpio_pin_get_dt(gpio)) {
- usbc_interrupt_trigger(port);
- hook_call_deferred(ud, USBC_INT_POLL_DELAY_US);
- }
-}
-
-static void poll_c0_int(void)
-{
- poll_usb_gpio(0, GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl),
- &poll_c0_int_data);
-}
-
-void usb_interrupt(enum gpio_signal signal)
-{
- int port;
- const struct deferred_data *ud;
-
- if (signal == GPIO_SIGNAL(DT_NODELABEL(gpio_usb_c0_int_odl))) {
- port = 0;
- ud = &poll_c0_int_data;
- }
- /*
- * We've just been called from a falling edge, so there's definitely
- * no lost IRQ right now. Cancel any pending check.
- */
- hook_call_deferred(ud, -1);
- /* Trigger polling of TCPC and BC1.2 in respective tasks */
- usbc_interrupt_trigger(port);
- /* Check for lost interrupts in a bit */
- hook_call_deferred(ud, USBC_INT_POLL_DELAY_US);
-}
diff --git a/zephyr/program/nissa/src/board_power.c b/zephyr/program/nissa/src/board_power.c
deleted file mode 100644
index 858076686b..0000000000
--- a/zephyr/program/nissa/src/board_power.c
+++ /dev/null
@@ -1,169 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "gpio/gpio.h"
-#include "gpio_signal.h"
-
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-#include <zephyr/sys/atomic.h>
-
-#include <ap_power/ap_power.h>
-#include <ap_power/ap_power_events.h>
-#include <ap_power/ap_power_interface.h>
-#include <ap_power_override_functions.h>
-#include <power_signals.h>
-#include <x86_power_signals.h>
-
-LOG_MODULE_DECLARE(ap_pwrseq, LOG_LEVEL_INF);
-
-#define X86_NON_DSX_ADLP_NONPWRSEQ_FORCE_SHUTDOWN_TO_MS 5
-
-static bool s0_stable;
-
-static void generate_ec_soc_dsw_pwrok_handler(int delay)
-{
- int in_sig_val = power_signal_get(PWR_DSW_PWROK);
-
- if (in_sig_val != power_signal_get(PWR_EC_SOC_DSW_PWROK)) {
- if (in_sig_val)
- k_msleep(delay);
- power_signal_set(PWR_EC_SOC_DSW_PWROK, 1);
- }
-}
-
-void board_ap_power_force_shutdown(void)
-{
- int timeout_ms = X86_NON_DSX_ADLP_NONPWRSEQ_FORCE_SHUTDOWN_TO_MS;
-
- if (s0_stable) {
- /* Enable these power signals in case of sudden shutdown */
- power_signal_enable(PWR_DSW_PWROK);
- power_signal_enable(PWR_PG_PP1P05);
- }
-
- power_signal_set(PWR_EC_SOC_DSW_PWROK, 0);
- power_signal_set(PWR_EC_PCH_RSMRST, 0);
-
- while (power_signal_get(PWR_RSMRST) == 0 &&
- power_signal_get(PWR_SLP_SUS) == 0 && timeout_ms > 0) {
- k_msleep(1);
- timeout_ms--;
- }
- if (power_signal_get(PWR_SLP_SUS) == 0) {
- LOG_WRN("SLP_SUS is not deasserted! Assuming G3");
- }
-
- if (power_signal_get(PWR_RSMRST) == 1) {
- LOG_WRN("RSMRST is not deasserted! Assuming G3");
- }
-
- power_signal_set(PWR_EN_PP3300_A, 0);
-
- power_signal_set(PWR_EN_PP5000_A, 0);
-
- timeout_ms = X86_NON_DSX_ADLP_NONPWRSEQ_FORCE_SHUTDOWN_TO_MS;
- while (power_signal_get(PWR_DSW_PWROK) && timeout_ms > 0) {
- k_msleep(1);
- timeout_ms--;
- };
-
- if (power_signal_get(PWR_DSW_PWROK))
- LOG_WRN("DSW_PWROK didn't go low! Assuming G3.");
-
- power_signal_disable(PWR_DSW_PWROK);
- power_signal_disable(PWR_PG_PP1P05);
- s0_stable = false;
-}
-
-void board_ap_power_action_g3_s5(void)
-{
- power_signal_enable(PWR_DSW_PWROK);
- power_signal_enable(PWR_PG_PP1P05);
-
- LOG_DBG("Turning on PWR_EN_PP5000_A and PWR_EN_PP3300_A");
- power_signal_set(PWR_EN_PP5000_A, 1);
- power_signal_set(PWR_EN_PP3300_A, 1);
-
- power_wait_signals_timeout(IN_PGOOD_ALL_CORE,
- AP_PWRSEQ_DT_VALUE(wait_signal_timeout));
-
- generate_ec_soc_dsw_pwrok_handler(AP_PWRSEQ_DT_VALUE(dsw_pwrok_delay));
- s0_stable = false;
-}
-
-void board_ap_power_action_s3_s0(void)
-{
- s0_stable = false;
-}
-
-void board_ap_power_action_s0_s3(void)
-{
- power_signal_enable(PWR_DSW_PWROK);
- power_signal_enable(PWR_PG_PP1P05);
- s0_stable = false;
-}
-
-void board_ap_power_action_s0(void)
-{
- if (s0_stable) {
- return;
- }
- LOG_INF("Reaching S0");
- power_signal_disable(PWR_DSW_PWROK);
- power_signal_disable(PWR_PG_PP1P05);
- s0_stable = true;
-}
-
-int board_ap_power_assert_pch_power_ok(void)
-{
- /* Pass though PCH_PWROK */
- if (power_signal_get(PWR_PCH_PWROK) == 0) {
- k_msleep(AP_PWRSEQ_DT_VALUE(pch_pwrok_delay));
- power_signal_set(PWR_PCH_PWROK, 1);
- }
-
- return 0;
-}
-
-bool board_ap_power_check_power_rails_enabled(void)
-{
- return power_signal_get(PWR_EN_PP3300_A) &&
- power_signal_get(PWR_EN_PP5000_A) &&
- power_signal_get(PWR_EC_SOC_DSW_PWROK);
-}
-
-int board_power_signal_get(enum power_signal signal)
-{
- switch (signal) {
- default:
- LOG_ERR("Unknown signal for board get: %d", signal);
- return -EINVAL;
-
- case PWR_ALL_SYS_PWRGD:
- /*
- * All system power is good.
- * Checks that PWR_SLP_S3 is off, and
- * the GPIO signal for all power good is set,
- * and that the 1.05 volt line is ready.
- */
- if (power_signal_get(PWR_SLP_S3)) {
- return 0;
- }
- if (!gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_all_sys_pwrgd))) {
- return 0;
- }
- if (!power_signal_get(PWR_PG_PP1P05)) {
- return 0;
- }
- return 1;
- }
-}
-
-int board_power_signal_set(enum power_signal signal, int value)
-{
- return -EINVAL;
-}
diff --git a/zephyr/program/nissa/src/common.c b/zephyr/program/nissa/src/common.c
deleted file mode 100644
index d437bfca47..0000000000
--- a/zephyr/program/nissa/src/common.c
+++ /dev/null
@@ -1,199 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "battery.h"
-#include "charge_state_v2.h"
-#include "charger.h"
-#include "chipset.h"
-#include "cros_cbi.h"
-#include "hooks.h"
-#include "nissa_common.h"
-#include "system.h"
-#include "usb_mux.h"
-
-#include <zephyr/device.h>
-#include <zephyr/logging/log.h>
-
-#include <ap_power/ap_power.h>
-LOG_MODULE_REGISTER(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-static uint8_t cached_usb_pd_port_count;
-
-__override uint8_t board_get_usb_pd_port_count(void)
-{
- __ASSERT(cached_usb_pd_port_count != 0,
- "sub-board detection did not run before a port count request");
- if (cached_usb_pd_port_count == 0)
- LOG_WRN("USB PD Port count not initialized!");
- return cached_usb_pd_port_count;
-}
-
-static void board_power_change(struct ap_power_ev_callback *cb,
- struct ap_power_ev_data data)
-{
- /*
- * Enable power to pen garage when system is active (safe even if no
- * pen is present).
- */
- const struct gpio_dt_spec *const pen_power_gpio =
- GPIO_DT_FROM_NODELABEL(gpio_en_pp5000_pen_x);
-
- switch (data.event) {
- case AP_POWER_STARTUP:
- gpio_pin_set_dt(pen_power_gpio, 1);
- break;
- case AP_POWER_SHUTDOWN:
- gpio_pin_set_dt(pen_power_gpio, 0);
- break;
- default:
- break;
- }
-}
-
-/*
- * Initialise the USB PD port count, which
- * depends on which sub-board is attached.
- */
-static void board_setup_init(void)
-{
- static struct ap_power_ev_callback cb;
-
- ap_power_ev_init_callback(&cb, board_power_change,
- AP_POWER_STARTUP | AP_POWER_SHUTDOWN);
- ap_power_ev_add_callback(&cb);
-
- switch (nissa_get_sb_type()) {
- default:
- cached_usb_pd_port_count = 1;
- break;
-
- case NISSA_SB_C_A:
- case NISSA_SB_C_LTE:
- cached_usb_pd_port_count = 2;
- break;
- }
-}
-/*
- * Make sure setup is done after EEPROM is readable.
- */
-DECLARE_HOOK(HOOK_INIT, board_setup_init, HOOK_PRIO_INIT_I2C);
-
-int pd_check_vconn_swap(int port)
-{
- /* Allow VCONN swaps if the AP is on. */
- return chipset_in_state(CHIPSET_STATE_ANY_SUSPEND | CHIPSET_STATE_ON);
-}
-
-/*
- * Count of chargers depends on sub board presence.
- */
-__override uint8_t board_get_charger_chip_count(void)
-{
- return board_get_usb_pd_port_count();
-}
-
-/*
- * Retrieve sub-board type from FW_CONFIG.
- */
-enum nissa_sub_board_type nissa_get_sb_type(void)
-{
- static enum nissa_sub_board_type sb = NISSA_SB_UNKNOWN;
- int ret;
- uint32_t val;
-
- /*
- * Return cached value.
- */
- if (sb != NISSA_SB_UNKNOWN)
- return sb;
-
- sb = NISSA_SB_NONE; /* Defaults to none */
- ret = cros_cbi_get_fw_config(FW_SUB_BOARD, &val);
- if (ret != 0) {
- LOG_WRN("Error retrieving CBI FW_CONFIG field %d",
- FW_SUB_BOARD);
- return sb;
- }
- switch (val) {
- default:
- LOG_WRN("No sub-board defined");
- break;
- case FW_SUB_BOARD_1:
- sb = NISSA_SB_C_A;
- LOG_INF("SB: USB type C, USB type A");
- break;
-
- case FW_SUB_BOARD_2:
- sb = NISSA_SB_C_LTE;
- LOG_INF("SB: USB type C, WWAN LTE");
- break;
-
- case FW_SUB_BOARD_3:
- sb = NISSA_SB_HDMI_A;
- LOG_INF("SB: HDMI, USB type A");
- break;
- }
- return sb;
-}
-
-__override void ocpc_get_pid_constants(int *kp, int *kp_div, int *ki,
- int *ki_div, int *kd, int *kd_div)
-{
- *kp = 1;
- *kp_div = 32;
- *ki = 0;
- *ki_div = 1;
- *kd = 0;
- *kd_div = 1;
-}
-
-#ifdef CONFIG_PLATFORM_EC_CHARGER_SM5803
-/*
- * Called by USB-PD code to determine whether a given input voltage is
- * acceptable.
- */
-__override int pd_is_valid_input_voltage(int mv)
-{
- int battery_voltage, rv;
-
- rv = battery_design_voltage(&battery_voltage);
- if (rv) {
- LOG_ERR("Unable to get battery design voltage: %d", rv);
- return true;
- }
-
- /*
- * SM5803 is extremely inefficient in buck-boost mode, when
- * VBUS ~= VSYS: very high temperatures on the chip and associated
- * inductor have been observed when sinking normal charge current in
- * buck-boost mode (but not in buck or boost mode) so we choose to
- * completely exclude some voltages that are likely to be problematic.
- *
- * Nissa devices use either 2S or 3S batteries, for which VBUS will
- * usually only be near VSYS with a 3S battery and 12V input (picked
- * from among common supported PD voltages)- 2S can get close to
- * 9V, but we expect charge current to be low when a 2S battery is
- * charged to that voltage (because it will be nearly full).
- *
- * We assume that any battery with a design voltage above 9V is 3S, and
- * that other problematic PD voltages (near to, but not exactly 12V)
- * will rarely occur.
- */
- if (battery_voltage > 9000 && mv == 12000) {
- return false;
- }
- return true;
-}
-#endif
-
-/* Trigger shutdown by enabling the Z-sleep circuit */
-__override void board_hibernate_late(void)
-{
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_en_slp_z), 1);
- /*
- * The system should hibernate, but there may be
- * a small delay, so return.
- */
-}
diff --git a/zephyr/program/nissa/src/led.c b/zephyr/program/nissa/src/led.c
deleted file mode 100644
index 2617d0092d..0000000000
--- a/zephyr/program/nissa/src/led.c
+++ /dev/null
@@ -1,52 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * Battery LED control for nissa
- */
-#include "common.h"
-#include "ec_commands.h"
-#include "led_common.h"
-#include "led_onoff_states.h"
-#include "led_pwm.h"
-
-__override const int led_charge_lvl_1 = 5;
-__override const int led_charge_lvl_2 = 97;
-__override struct led_descriptor
- led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
- [STATE_CHARGING_LVL_1] = { { EC_LED_COLOR_RED,
- LED_INDEFINITE } },
- [STATE_CHARGING_LVL_2] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_CHARGING_FULL_CHARGE] = { { EC_LED_COLOR_GREEN,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S0] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S0_BAT_LOW] = { { EC_LED_COLOR_AMBER,
- 1 * LED_ONE_SEC },
- { LED_OFF, 3 * LED_ONE_SEC } },
- [STATE_DISCHARGE_S3] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S5] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_BATTERY_ERROR] = { { EC_LED_COLOR_RED, 1 * LED_ONE_SEC },
- { LED_OFF, 1 * LED_ONE_SEC } },
- [STATE_FACTORY_TEST] = { { EC_LED_COLOR_RED, 2 * LED_ONE_SEC },
- { EC_LED_COLOR_GREEN,
- 2 * LED_ONE_SEC } },
- };
-
-__override void led_set_color_battery(enum ec_led_colors color)
-{
- switch (color) {
- case EC_LED_COLOR_RED:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_RED);
- break;
- case EC_LED_COLOR_GREEN:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_GREEN);
- break;
- case EC_LED_COLOR_AMBER:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_AMBER);
- break;
- default: /* LED_OFF and other unsupported colors */
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, -1);
- break;
- }
-}
diff --git a/zephyr/program/nissa/src/sub_board.c b/zephyr/program/nissa/src/sub_board.c
deleted file mode 100644
index e8e9648ba6..0000000000
--- a/zephyr/program/nissa/src/sub_board.c
+++ /dev/null
@@ -1,288 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Nissa sub-board hardware configuration */
-
-#include "cros_board_info.h"
-#include "driver/tcpm/tcpci.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "nissa_common.h"
-#include "nissa_hdmi.h"
-#include "task.h"
-#include "usb_charge.h"
-#include "usb_pd.h"
-#include "usbc/usb_muxes.h"
-
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/drivers/pinctrl.h>
-#include <zephyr/init.h>
-#include <zephyr/kernel.h>
-#include <zephyr/sys/printk.h>
-
-#include <ap_power/ap_power.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-#if NISSA_BOARD_HAS_HDMI_SUPPORT
-static void hdmi_power_handler(struct ap_power_ev_callback *cb,
- struct ap_power_ev_data data)
-{
- /* Enable VCC on the HDMI port. */
- const struct gpio_dt_spec *s3_rail =
- GPIO_DT_FROM_ALIAS(gpio_hdmi_en_odl);
- /* Connect AP's DDC to sub-board (default is USB-C aux) */
- const struct gpio_dt_spec *ddc_select =
- GPIO_DT_FROM_NODELABEL(gpio_hdmi_sel);
-
- switch (data.event) {
- case AP_POWER_PRE_INIT:
- LOG_DBG("Connecting HDMI DDC to sub-board");
- gpio_pin_set_dt(ddc_select, 1);
- break;
- case AP_POWER_STARTUP:
- LOG_DBG("Enabling HDMI VCC");
- gpio_pin_set_dt(s3_rail, 1);
- break;
- case AP_POWER_SHUTDOWN:
- LOG_DBG("Disabling HDMI VCC");
- gpio_pin_set_dt(s3_rail, 0);
- break;
- case AP_POWER_HARD_OFF:
- LOG_DBG("Disconnecting HDMI sub-board DDC");
- gpio_pin_set_dt(ddc_select, 0);
- break;
- default:
- LOG_ERR("Unhandled HDMI power event %d", data.event);
- break;
- }
-}
-
-static void hdmi_hpd_interrupt(const struct device *device,
- struct gpio_callback *callback,
- gpio_port_pins_t pins)
-{
- int state = gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_hpd_odl));
-
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_ec_soc_hdmi_hpd), state);
- LOG_DBG("HDMI HPD changed state to %d", state);
-}
-
-void nissa_configure_hdmi_rails(void)
-{
-#if DT_NODE_EXISTS(GPIO_DT_FROM_ALIAS(gpio_en_rails_odl))
- gpio_pin_configure_dt(GPIO_DT_FROM_ALIAS(gpio_en_rails_odl),
- GPIO_OUTPUT_INACTIVE | GPIO_OPEN_DRAIN |
- GPIO_PULL_UP | GPIO_ACTIVE_LOW);
-#endif
-}
-
-void nissa_configure_hdmi_vcc(void)
-{
- gpio_pin_configure_dt(GPIO_DT_FROM_ALIAS(gpio_hdmi_en_odl),
- GPIO_OUTPUT_INACTIVE | GPIO_OPEN_DRAIN |
- GPIO_ACTIVE_LOW);
-}
-
-__overridable void nissa_configure_hdmi_power_gpios(void)
-{
- nissa_configure_hdmi_rails();
-}
-
-#ifdef CONFIG_SOC_IT8XXX2
-/*
- * On it8xxx2, the below condition will break the EC to enter deep doze mode
- * (b:237717730):
- * Enhance i2c (GPE0/E7, GPH1/GPH2 or GPA4/GPA5) is enabled and its clock and
- * data pins aren't both at high level.
- *
- * Since HDMI+type A SKU doesn't use i2c4, disable it for better power number.
- */
-#define I2C4_NODE DT_NODELABEL(i2c4)
-#if DT_NODE_EXISTS(I2C4_NODE)
-PINCTRL_DT_DEFINE(I2C4_NODE);
-
-/* disable i2c4 alternate function */
-static void soc_it8xxx2_disable_i2c4_alt(void)
-{
- const struct pinctrl_dev_config *pcfg =
- PINCTRL_DT_DEV_CONFIG_GET(I2C4_NODE);
-
- pinctrl_apply_state(pcfg, PINCTRL_STATE_SLEEP);
-}
-#endif /* DT_NODE_EXISTS(I2C4_NODE) */
-#endif /* CONFIG_SOC_IT8XXX2 */
-#endif /* NISSA_BOARD_HAS_HDMI_SUPPORT */
-
-static void lte_power_handler(struct ap_power_ev_callback *cb,
- struct ap_power_ev_data data)
-{
- /* Enable rails for S5 */
- const struct gpio_dt_spec *s5_rail =
- GPIO_DT_FROM_ALIAS(gpio_en_sub_s5_rails);
- switch (data.event) {
- case AP_POWER_PRE_INIT:
- LOG_DBG("Enabling LTE sub-board power rails");
- gpio_pin_set_dt(s5_rail, 1);
- break;
- case AP_POWER_HARD_OFF:
- LOG_DBG("Disabling LTE sub-board power rails");
- gpio_pin_set_dt(s5_rail, 0);
- break;
- default:
- LOG_ERR("Unhandled LTE power event %d", data.event);
- break;
- }
-}
-
-/**
- * Configure GPIOs (and other pin functions) that vary with present sub-board.
- *
- * The functions of some pins vary according to which sub-board is present
- * (indicated by CBI fw_config); this function configures them according to the
- * needs of the present sub-board.
- */
-static void nereid_subboard_config(void)
-{
- enum nissa_sub_board_type sb = nissa_get_sb_type();
- static struct ap_power_ev_callback power_cb;
-
- /*
- * USB-A port: current limit output is configured by default and unused
- * if this port is not present. VBUS enable must be configured if
- * needed and is controlled by the usba-port-enable-pins driver.
- */
- if (sb == NISSA_SB_C_A || sb == NISSA_SB_HDMI_A ||
- sb == NISSA_SB_NONE) {
- /*
- * Configure VBUS enable, retaining current value.
- * SB_NONE indicates missing fw_config; it's safe to enable VBUS
- * control in this case since all that will happen is we turn
- * off power to LTE, and it's useful to allow USB-A to work in
- * such a configuration.
- */
- gpio_pin_configure_dt(GPIO_DT_FROM_ALIAS(gpio_en_usb_a1_vbus),
- GPIO_OUTPUT);
- } else {
- /* Turn off unused pins */
- gpio_pin_configure_dt(
- GPIO_DT_FROM_NODELABEL(gpio_sub_usb_a1_ilimit_sdp),
- GPIO_DISCONNECTED);
- gpio_pin_configure_dt(GPIO_DT_FROM_ALIAS(gpio_en_usb_a1_vbus),
- GPIO_DISCONNECTED);
- /* Disable second USB-A port enable GPIO */
- __ASSERT(USB_PORT_ENABLE_COUNT == 2,
- "USB A port count != 2 (%d)", USB_PORT_ENABLE_COUNT);
- usb_port_enable[1] = -1;
- }
- /*
- * USB-C port: the default configuration has I2C on the I2C pins,
- * but the interrupt line needs to be configured.
- */
-#if CONFIG_USB_PD_PORT_MAX_COUNT > 1
- if (sb == NISSA_SB_C_A || sb == NISSA_SB_C_LTE) {
- /* Configure interrupt input */
- gpio_pin_configure_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl),
- GPIO_INPUT | GPIO_PULL_UP);
- } else {
- /* Port doesn't exist, doesn't need muxing */
- USB_MUX_ENABLE_ALTERNATIVE(usb_mux_chain_1_no_mux);
- }
-#endif
-
- switch (sb) {
-#if NISSA_BOARD_HAS_HDMI_SUPPORT
- case NISSA_SB_HDMI_A: {
- /*
- * HDMI: two outputs control power which must be configured to
- * non-default settings, and HPD must be forwarded to the AP
- * on another output pin.
- */
- const struct gpio_dt_spec *hpd_gpio =
- GPIO_DT_FROM_ALIAS(gpio_hpd_odl);
- static struct gpio_callback hdmi_hpd_cb;
- int rv, irq_key;
-
- nissa_configure_hdmi_power_gpios();
-
-#if CONFIG_SOC_IT8XXX2 && DT_NODE_EXISTS(I2C4_NODE)
- /* disable i2c4 alternate function for better power number */
- soc_it8xxx2_disable_i2c4_alt();
-#endif
-
- /*
- * Control HDMI power according to AP power state. Some events
- * won't do anything if the corresponding pin isn't configured,
- * but that's okay.
- */
- ap_power_ev_init_callback(
- &power_cb, hdmi_power_handler,
- AP_POWER_PRE_INIT | AP_POWER_HARD_OFF |
- AP_POWER_STARTUP | AP_POWER_SHUTDOWN);
- ap_power_ev_add_callback(&power_cb);
-
- /*
- * Configure HPD input from sub-board; it's inverted by a buffer
- * on the sub-board.
- */
- gpio_pin_configure_dt(hpd_gpio, GPIO_INPUT | GPIO_ACTIVE_LOW);
- /* Register interrupt handler for HPD changes */
- gpio_init_callback(&hdmi_hpd_cb, hdmi_hpd_interrupt,
- BIT(hpd_gpio->pin));
- gpio_add_callback(hpd_gpio->port, &hdmi_hpd_cb);
- rv = gpio_pin_interrupt_configure_dt(hpd_gpio,
- GPIO_INT_EDGE_BOTH);
- __ASSERT(rv == 0,
- "HPD interrupt configuration returned error %d", rv);
- /*
- * Run the HPD handler once to ensure output is in sync.
- * Lock interrupts to ensure that we don't cause desync if an
- * HPD interrupt comes in between the internal read of the input
- * and write to the output.
- */
- irq_key = irq_lock();
- hdmi_hpd_interrupt(hpd_gpio->port, &hdmi_hpd_cb,
- BIT(hpd_gpio->pin));
- irq_unlock(irq_key);
- break;
- }
-#endif
- case NISSA_SB_C_LTE:
- /*
- * LTE: Set up callbacks for enabling/disabling
- * sub-board power on S5 state.
- */
- gpio_pin_configure_dt(GPIO_DT_FROM_ALIAS(gpio_en_sub_s5_rails),
- GPIO_OUTPUT_INACTIVE);
- /* Control LTE power when CPU entering or
- * exiting S5 state.
- */
- ap_power_ev_init_callback(&power_cb, lte_power_handler,
- AP_POWER_HARD_OFF |
- AP_POWER_PRE_INIT);
- ap_power_ev_add_callback(&power_cb);
- break;
-
- default:
- break;
- }
-}
-DECLARE_HOOK(HOOK_INIT, nereid_subboard_config, HOOK_PRIO_POST_FIRST);
-
-/*
- * Enable interrupts
- */
-static void board_init(void)
-{
- /*
- * Enable USB-C interrupts.
- */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0));
-#if CONFIG_USB_PD_PORT_MAX_COUNT > 1
- if (board_get_usb_pd_port_count() == 2)
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c1));
-#endif
-}
-DECLARE_HOOK(HOOK_INIT, board_init, HOOK_PRIO_DEFAULT);
diff --git a/zephyr/program/nissa/xivu/cbi.dtsi b/zephyr/program/nissa/xivu/cbi.dtsi
deleted file mode 100644
index 72f83c28a4..0000000000
--- a/zephyr/program/nissa/xivu/cbi.dtsi
+++ /dev/null
@@ -1,133 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- /* Xivu-specific fw_config fields. */
- nissa-fw-config {
- /*
- * FW_CONFIG field to enable WFC or not.
- */
- wfc {
- enum-name = "FW_WFC";
- start = <0>;
- size = <1>;
-
- wfc-mipi {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_WFC_MIPI";
- value = <0>;
- };
- wfc-absent {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_WFC_ABSENT";
- value = <1>;
- };
- };
-
- /*
- * FW_CONFIG field to enable stylus or not.
- */
- stylus {
- enum-name = "FW_STYLUS";
- start = <1>;
- size = <1>;
-
- stylus-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_STYLUS_PRESENT";
- value = <0>;
- };
- stylus-absent {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_STYLUS_ABSENT";
- value = <1>;
- };
- };
- /*
- * FW_CONFIG field to indicate which sub-board
- * is attached.
- */
- sub-board {
- enum-name = "FW_SUB_BOARD";
- start = <2>;
- size = <2>;
-
- sub-board-1 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_SUB_BOARD_1";
- value = <0>;
- };
- sub-board-2 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_SUB_BOARD_2";
- value = <1>;
- };
- sub-board-3 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_SUB_BOARD_3";
- value = <2>;
- };
- };
-
-/delete-node/ fan;
- };
-
- /* Xivu-specific ssfc fields. */
- cbi-ssfc {
- compatible = "cros-ec,cbi-ssfc";
- /*
- * SSFC field to identify LID motion sensor.
- */
- lid-sensor {
- enum-name = "LID_SENSOR";
- size = <2>;
-
- lid_sensor_none: none {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <0>;
- default;
- };
-
- lid_sensor_lis2dw12: lis2dw12 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <1>;
- default;
- };
- lid_sensor_bma422: bma422 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <2>;
- };
- };
- /*
- * SSFC field to identify BASE motion sensor.
- */
- base-sensor {
- enum-name = "BASE_SENSOR";
- size = <2>;
-
- base_sensor_none: none {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <0>;
- default;
- };
- base_sensor_lsm6dso: lsm6dso {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <1>;
- default;
- };
- base_sensor_bmi323: bmi323 {
- compatible = "cros-ec,cbi-ssfc-value";
- status = "okay";
- value = <2>;
- };
- };
- };
-
-};
diff --git a/zephyr/program/nissa/xivu/generated.dtsi b/zephyr/program/nissa/xivu/generated.dtsi
deleted file mode 100644
index 383054adf8..0000000000
--- a/zephyr/program/nissa/xivu/generated.dtsi
+++ /dev/null
@@ -1,291 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * This file is auto-generated - do not edit!
- */
-
-/ {
-
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_ec_vsense_pp1050_proc: ec_vsense_pp1050_proc {
- enum-name = "ADC_PP1050_PROC";
- io-channels = <&adc0 4>;
- };
- adc_ec_vsense_pp3300_s5: ec_vsense_pp3300_s5 {
- enum-name = "ADC_PP3300_S5";
- io-channels = <&adc0 6>;
- };
- adc_temp_sensor_1: temp_sensor_1 {
- enum-name = "ADC_TEMP_SENSOR_1";
- io-channels = <&adc0 0>;
- };
- adc_temp_sensor_2: temp_sensor_2 {
- enum-name = "ADC_TEMP_SENSOR_2";
- io-channels = <&adc0 1>;
- };
- adc_temp_sensor_3: temp_sensor_3 {
- enum-name = "ADC_TEMP_SENSOR_3";
- io-channels = <&adc0 10>;
- };
- adc_temp_sensor_4: temp_sensor_4 {
- enum-name = "ADC_TEMP_SENSOR_4";
- io-channels = <&adc0 11>;
- };
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_acc_int_l: acc_int_l {
- gpios = <&gpio5 0 GPIO_INPUT>;
- };
- gpio_all_sys_pwrgd: all_sys_pwrgd {
- gpios = <&gpioa 7 GPIO_INPUT>;
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- gpio_cpu_c10_gate_l: cpu_c10_gate_l {
- gpios = <&gpio6 7 GPIO_INPUT>;
- };
- gpio_ec_battery_pres_odl: ec_battery_pres_odl {
- gpios = <&gpioa 3 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpio7 4 GPIO_OUTPUT>;
- };
- gpio_ec_edp_bl_en_od: ec_edp_bl_en_od {
- gpios = <&gpiod 3 GPIO_ODR_HIGH>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- gpio_ec_entering_rw: ec_entering_rw {
- gpios = <&gpio0 3 GPIO_OUTPUT>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_ec_gsc_packet_mode: ec_gsc_packet_mode {
- gpios = <&gpio7 5 GPIO_OUTPUT>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_ec_pch_wake_odl: ec_pch_wake_odl {
- gpios = <&gpiob 0 GPIO_ODR_LOW>;
- };
- gpio_ec_prochot_odl: ec_prochot_odl {
- gpios = <&gpiof 1 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_dsw_pwrok: ec_soc_dsw_pwrok {
- gpios = <&gpio6 1 GPIO_OUTPUT>;
- };
- gpio_ec_acok_otg_c1: ec_acok_otg_c1 {
- gpios = <&gpioe 4 GPIO_OUTPUT>;
- };
- gpio_ec_soc_int_odl: ec_soc_int_odl {
- gpios = <&gpio8 0 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_ec_soc_pch_pwrok_od: ec_soc_pch_pwrok_od {
- gpios = <&gpio7 2 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_pwr_btn_odl: ec_soc_pwr_btn_odl {
- gpios = <&gpioc 1 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- gpio_ec_soc_rsmrst_l: ec_soc_rsmrst_l {
- gpios = <&gpioa 6 GPIO_OUTPUT>;
- };
- gpio_ec_soc_rtcrst: ec_soc_rtcrst {
- gpios = <&gpio7 6 GPIO_OUTPUT>;
- };
- gpio_ec_soc_sys_pwrok: ec_soc_sys_pwrok {
- gpios = <&gpio3 7 GPIO_OUTPUT>;
- };
- gpio_ec_soc_vccst_pwrgd_od: ec_soc_vccst_pwrgd_od {
- gpios = <&gpioa 4 GPIO_ODR_HIGH>;
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpioa 1 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_en_pp3300_s5: en_pp3300_s5 {
- gpios = <&gpiob 6 GPIO_OUTPUT>;
- enum-name = "GPIO_TEMP_SENSOR_POWER";
- };
- gpio_en_pp5000_pen_x: en_pp5000_pen_x {
- gpios = <&gpioe 2 GPIO_OUTPUT>;
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpio4 0 GPIO_OUTPUT>;
- };
- gpio_en_slp_z: en_slp_z {
- gpios = <&gpioe 1 GPIO_OUTPUT>;
- };
- gpio_en_usb_a0_vbus: en_usb_a0_vbus {
- gpios = <&gpio9 1 GPIO_OUTPUT>;
- };
- gpio_gsc_ec_pwr_btn_odl: gsc_ec_pwr_btn_odl {
- gpios = <&gpio0 0 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_ec_acok_otg_c0: ec_acok_otg_c0 {
- gpios = <&gpioc 6 GPIO_OUTPUT>;
- };
- gpio_imu_int_l: imu_int_l {
- gpios = <&gpio5 6 GPIO_INPUT>;
- };
- gpio_imvp91_vrrdy_od: imvp91_vrrdy_od {
- gpios = <&gpio4 3 GPIO_INPUT>;
- };
- gpio_lid_open: lid_open {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_pen_detect_odl: pen_detect_odl {
- gpios = <&gpio9 6 GPIO_INPUT_PULL_UP>;
- };
- gpio_pg_pp1050_mem_s3_od: pg_pp1050_mem_s3_od {
- gpios = <&gpiof 0 GPIO_INPUT>;
- };
- gpio_pg_pp5000_s5_od: pg_pp5000_s5_od {
- gpios = <&gpio4 2 GPIO_INPUT>;
- };
- gpio_rsmrst_pwrgd_l: rsmrst_pwrgd_l {
- gpios = <&gpio9 4 GPIO_INPUT_PULL_UP>;
- };
- gpio_slp_s0_l: slp_s0_l {
- gpios = <&gpio9 7 GPIO_INPUT>;
- };
- gpio_slp_s3_l: slp_s3_l {
- gpios = <&gpioa 5 GPIO_INPUT>;
- };
- gpio_slp_s4_l: slp_s4_l {
- gpios = <&gpio7 0 GPIO_INPUT>;
- };
- gpio_slp_sus_l: slp_sus_l {
- gpios = <&gpio6 2 GPIO_INPUT>;
- };
- gpio_sub_usb_a1_ilimit_sdp: sub_usb_a1_ilimit_sdp {
- gpios = <&gpiod 5 GPIO_OUTPUT>;
- enum-name = "GPIO_USB2_ILIM_SEL";
- };
- gpio_sys_rst_odl: sys_rst_odl {
- gpios = <&gpioc 5 GPIO_ODR_HIGH>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpio9 5 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_usb_a0_ilimit_sdp: usb_a0_ilimit_sdp {
- gpios = <&gpio3 3 GPIO_OUTPUT>;
- enum-name = "GPIO_USB1_ILIM_SEL";
- };
- gpio_usb_c0_int_odl: usb_c0_int_odl {
- gpios = <&gpio0 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_vccin_aux_vid0: vccin_aux_vid0 {
- gpios = <&gpio9 2 GPIO_INPUT>;
- };
- gpio_vccin_aux_vid1: vccin_aux_vid1 {
- gpios = <&gpioe 3 GPIO_INPUT>;
- };
- gpio_voldn_btn_odl: voldn_btn_odl {
- gpios = <&gpioa 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_volup_btn_odl: volup_btn_odl {
- gpios = <&gpio9 3 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_ec_i2c_eeprom: ec_i2c_eeprom {
- i2c-port = <&i2c0_0>;
- enum-names = "I2C_PORT_EEPROM";
- };
- i2c_ec_i2c_sensor: ec_i2c_sensor {
- i2c-port = <&i2c1_0>;
- enum-names = "I2C_PORT_SENSOR";
- };
- i2c_ec_i2c_usb_c0: ec_i2c_usb_c0 {
- i2c-port = <&i2c3_0>;
- enum-names = "I2C_PORT_USB_C0_TCPC";
- };
- i2c_ec_i2c_sub_usb_c1: ec_i2c_sub_usb_c1 {
- i2c-port = <&i2c5_1>;
- enum-names = "I2C_PORT_USB_C1_TCPC";
- };
- i2c_ec_i2c_batt: ec_i2c_batt {
- i2c-port = <&i2c7_0>;
- enum-names = "I2C_PORT_BATTERY";
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_chan0_gp45
- &adc0_chan1_gp44
- &adc0_chan4_gp41
- &adc0_chan6_gp34
- &adc0_chan10_gpe0
- &adc0_chan11_gpc7>;
- pinctrl-names = "default";
-};
-
-&i2c0_0 {
- status = "okay";
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-};
-
-&i2c1_0 {
- status = "okay";
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-};
-
-&i2c3_0 {
- status = "okay";
- pinctrl-0 = <&i2c3_0_sda_scl_gpd0_d1>;
- pinctrl-names = "default";
-};
-
-&i2c5_1 {
- status = "okay";
- pinctrl-0 = <&i2c5_1_sda_scl_gpf4_f5>;
- pinctrl-names = "default";
-};
-
-&i2c7_0 {
- status = "okay";
- pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-&i2c_ctrl3 {
- status = "okay";
-};
-
-&i2c_ctrl5 {
- status = "okay";
-};
-
-&i2c_ctrl7 {
- status = "okay";
-};
diff --git a/zephyr/program/nissa/xivu/keyboard.dtsi b/zephyr/program/nissa/xivu/keyboard.dtsi
deleted file mode 100644
index 5248c4aaff..0000000000
--- a/zephyr/program/nissa/xivu/keyboard.dtsi
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-&cros_kb_raw {
- status = "okay";
- /* No KSO2 (it's inverted and implemented by GPIO) */
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- &kso13_gp04
- &kso14_gp82
- >;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/xivu/led_pins.dtsi b/zephyr/program/nissa/xivu/led_pins.dtsi
deleted file mode 100644
index e7efa3e96c..0000000000
--- a/zephyr/program/nissa/xivu/led_pins.dtsi
+++ /dev/null
@@ -1,84 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_led_y_c0: pwm_led_y_c0 {
- pwms = <&pwm2 0 PWM_HZ(324) PWM_POLARITY_INVERTED>;
- };
- pwm_led_w_c0: pwm_led_w_c0 {
- pwms = <&pwm0 0 PWM_HZ(324) PWM_POLARITY_INVERTED>;
- };
- pwm_led_y_c1: pwm_led_y_c1 {
- pwms = <&pwm6 0 PWM_HZ(324) PWM_POLARITY_INVERTED>;
- };
- pwm_led_w_c1: pwm_led_w_c1 {
- pwms = <&pwm1 0 PWM_HZ(324) PWM_POLARITY_INVERTED>;
- };
- };
-
- pwm-led-pins {
- compatible = "cros-ec,pwm-led-pins";
-
- color_off: color-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pwms = <&pwm_led_y_c0 &pwm_led_y_c1
- &pwm_led_w_c0 &pwm_led_w_c1>;
- led-values = <0 0 0 0>;
- };
-
- color_amber: color-amber {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pwms = <&pwm_led_y_c0 &pwm_led_y_c1
- &pwm_led_w_c0 &pwm_led_w_c1>;
- led-values = <50 50 0 0>;
- };
-
- color_white: color-white {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_WHITE";
- led-pwms = <&pwm_led_y_c0 &pwm_led_y_c1
- &pwm_led_w_c0 &pwm_led_w_c1>;
- led-values = <0 0 50 50>;
- };
- };
-};
-
-/* LED2 */
-&pwm0 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm0_gpc3>;
- pinctrl-names = "default";
-};
-
-/* LED3 */
-&pwm1 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm1_gpc2>;
- pinctrl-names = "default";
-};
-
-/* LED1 */
-&pwm2 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
-
-/* LED0 */
-&pwm6 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm6_gpc0>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/xivu/led_policy.dtsi b/zephyr/program/nissa/xivu/led_policy.dtsi
deleted file mode 100644
index 562e361ec5..0000000000
--- a/zephyr/program/nissa/xivu/led_policy.dtsi
+++ /dev/null
@@ -1,122 +0,0 @@
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
- /* Battery percent range (>= Empty, <= 94%) */
- batt-lvl = <0 94>;
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
-
- power-state-charge-lvl-2 {
- charge-state = "PWR_STATE_CHARGE";
- /* Battery percent range (>= 95%, <= Near Full) */
- batt-lvl = <95 97>;
-
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= 11%, <= Full) */
- batt-lvl = <11 100>;
-
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- /* White 1 sec, off 3 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
-
- power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-discharge-s0-batt-low {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= Empty, <= 10%) */
- batt-lvl = <0 10>;
-
- /* Amber 1 sec, off 3 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
-
- power-state-error-s0 {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S0";
- /* Amber 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-error-s3 {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S3";
- /* White 1 sec, off 3 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
-
- power-state-error-s5 {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
- };
-};
diff --git a/zephyr/program/nissa/xivu/motionsense.dtsi b/zephyr/program/nissa/xivu/motionsense.dtsi
deleted file mode 100644
index fd82aa6ae2..0000000000
--- a/zephyr/program/nissa/xivu/motionsense.dtsi
+++ /dev/null
@@ -1,252 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * Interrupt bindings for sensor devices.
- */
- lsm6dso-int = &base_accel;
- lis2dw12-int = &lid_accel;
- bmi3xx-int = &base_accel;
- bma4xx-int = &lid_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- lid_mutex_bma422: bma422-mutex {
- };
-
- base_mutex: base-mutex {
- };
-
- base_mutex_bmi323: bmi323-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 1 0
- 1 0 0
- 0 0 (-1)>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
-
- lid_rot_bma422: lid-rotation-bma {
- mat33 = <(-1) 0 0
- 0 1 0
- 0 0 (-1)>;
- };
-
- base_rot_ref_bmi: base-rotation-ref-bmi {
- mat33 = <(-1) 0 0
- 0 (-1) 0
- 0 0 1>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- lsm6dso_accel_data: lsm6dso-accel-drv-data {
- compatible = "cros-ec,drvdata-lsm6dso";
- status = "okay";
- };
-
- lsm6dso_gyro_data: lsm6dso-gyro-drv-data {
- compatible = "cros-ec,drvdata-lsm6dso";
- status = "okay";
- };
-
- lis2dw12_data: lis2dw12-drv-data {
- compatible = "cros-ec,drvdata-lis2dw12";
- status = "okay";
- };
-
- bma422_data: bma4xx-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
-
- bmi323_data: bmi323-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- * TODO(b/238139272): The first entries of the array must be
- * accelerometers,then gyroscope. Fix this dependency in the DTS
- * processing which makes the devicetree entries independent.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,lis2dw12";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&lis2dw12_data>;
- i2c-spi-addr-flags = "LIS2DWL_ADDR0_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,lsm6dso-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&lsm6dso_accel_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_gyro: base-gyro {
- compatible = "cros-ec,lsm6dso-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- default-range = <(1000 | ROUND_UP_FLAG)>; /* dps */
- drv-data = <&lsm6dso_gyro_data>;
- };
- };
-
- motionsense-sensor-alt {
- alt_lid_accel: alt-lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex_bma422>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&lid_rot_bma422>;
- default-range = <2>;
- drv-data = <&bma422_data>;
- i2c-spi-addr-flags = "BMA4_I2C_ADDR_PRIMARY";
- alternate-for = <&lid_accel>;
- alternate-ssfc-indicator = <&lid_sensor_bma422>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- alt_base_accel: alt-base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex_bmi323>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref_bmi>;
- drv-data = <&bmi323_data>;
- alternate-for = <&base_accel>;
- alternate-ssfc-indicator = <&base_sensor_bmi323>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- alt_base_gyro: alt-base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex_bmi323>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref_bmi>;
- drv-data = <&bmi323_data>;
- alternate-for = <&base_gyro>;
- alternate-ssfc-indicator = <&base_sensor_bmi323>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_imu>;
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/nissa/xivu/overlay.dtsi b/zephyr/program/nissa/xivu/overlay.dtsi
deleted file mode 100644
index 402f0e2f2f..0000000000
--- a/zephyr/program/nissa/xivu/overlay.dtsi
+++ /dev/null
@@ -1,383 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-#include <dt-bindings/usbc_mux.h>
-#include <dt-bindings/usb_pd_tcpm.h>
-
-/ {
- aliases {
- gpio-cbi-wp = &gpio_ec_cbi_wp;
- gpio-wp = &gpio_ec_wp_odl;
- int-wp = &int_wp_l;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- ec-console {
- compatible = "ec-console";
- disabled = "events", "lpc", "hostcmd";
- };
-
- batteries {
- default_battery: smp_c31n2005 {
- compatible = "smp,c31n2005", "battery-smart";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_power_button
- &int_lid_open
- >;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&gpio_gsc_ec_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_wp_l: wp_l {
- irq-pin = <&gpio_ec_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&gpio_tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_imu: ec_imu {
- irq-pin = <&gpio_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "motion_interrupt";
- };
- int_lid_accel: ec_lid_accel {
- irq-pin = <&gpio_acc_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "lid_accel_interrupt";
- };
- int_vol_down: vol_down {
- irq-pin = <&gpio_voldn_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_vol_up: vol_up {
- irq-pin = <&gpio_volup_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_usb_c0: usb_c0 {
- irq-pin = <&gpio_usb_c0_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_interrupt";
- };
- int_usb_c1: usb_c1 {
- irq-pin = <&gpio_sb_1>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_interrupt";
- };
- };
-
- named-gpios {
- gpio_sb_1: sb-1 {
- gpios = <&gpio0 2 GPIO_PULL_UP>;
- no-auto-init;
- };
-
- gpio_sb_2: sb-2 {
- gpios = <&gpiod 4 GPIO_OUTPUT>;
- no-auto-init;
- };
-
- /*
- * Set I2C pins for type C sub-board to be low voltage (I2C5_1).
- * We do this for all boards, since the pins are 3.3V tolerant,
- * and the only 2 types of sub-boards used on nivviks both have
- * type-C ports on them.
- */
- gpio_sb_3: sb-3 {
- gpios = <&gpiof 4 (GPIO_OPEN_DRAIN | GPIO_VOLTAGE_1P8)>;
- no-auto-init;
- };
- gpio_sb_4: sb-4 {
- gpios = <&gpiof 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- no-auto-init;
- };
- };
-
- /*
- * Aliases used for sub-board GPIOs.
- */
- aliases {
- /*
- * Input GPIO when used with type-C port 1
- */
- gpio-usb-c1-int-odl = &gpio_sb_1;
- gpio-en-rails-odl = &gpio_sb_1;
- /*
- * Sub-board with type A USB, enable.
- */
- gpio-en-usb-a1-vbus = &gpio_sb_2;
- /*
- * Enable S5 rails for LTE sub-board
- */
- gpio-en-sub-s5-rails = &gpio_sb_2;
- };
-
- temp_memory: memory {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_1>;
- };
- temp_ambient: ambient {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_2>;
- };
- temp_charger1: charger1 {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_3>;
- };
- temp_charger2: charger2 {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_4>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- memory {
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- temp_host_release_halt = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_memory>;
- };
- ambient {
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- temp_host_release_halt = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_ambient>;
- };
- charger1 {
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- temp_host_release_halt = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_charger1>;
- };
- charger2 {
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- temp_host_release_halt = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_charger2>;
- };
- };
-
- usba {
- compatible = "cros-ec,usba-port-enable-pins";
- /*
- * sb_2 is only configured as GPIO when USB-A1 is present,
- * but it's still safe to control when disabled.
- *
- * ILIM_SEL pins are referred to by legacy enum name,
- * GPIO_USB*_ILIM_SEL. The one for port A1 is unused on
- * sub-boards that don't have USB-A so is safe to control
- * regardless of system configuration.
- */
- enable-pins = <&gpio_en_usb_a0_vbus &gpio_sb_2>;
- status = "okay";
- };
-
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- chg = <&chg_port0>;
- tcpc = <&tcpc_port0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_0>;
- };
- };
- port0-muxes {
- virtual_mux_0: virtual-mux-0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- /*
- * TODO(b:211693800): port1 may not be present on some
- * sub-boards.
- */
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&bc12_port1>;
- chg = <&chg_port1>;
- tcpc = <&tcpc_port1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_1 &anx7483_mux_1>;
- };
- usb_mux_chain_1_no_mux: usb-mux-chain-1-no-mux {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&virtual_mux_1>;
- };
- };
- port1-muxes {
- virtual_mux_1: virtual-mux-1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios =
- <&gpio8 5 0>,
- <&gpio3 6 0>,
- <&gpiod 7 0>,
- <&gpio6 0 0>,
- <&gpiof 2 0>,
- <&gpiof 3 0>;
- };
-};
-
-&thermistor_3V3_51K1_47K_4050B {
- status = "okay";
-};
-
-&adc_ec_vsense_pp3300_s5 {
- /*
- * Voltage divider on input has 47k upper and 220k lower legs with
- * 2714 mV full-scale reading on the ADC. Apply the largest possible
- * multiplier (without overflowing int32) to get the best possible
- * approximation of the actual ratio, but derate by a factor of two to
- * ensure unexpectedly high values won't overflow.
- */
- mul = <(791261 / 2)>;
- div = <(651975 / 2)>;
-};
-
-/* Set bus speeds for I2C */
-&i2c0_0 {
- label = "I2C_EEPROM";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-};
-
-&i2c1_0 {
- label = "I2C_SENSOR";
- clock-frequency = <I2C_BITRATE_FAST>;
-};
-
-&i2c3_0 {
- label = "I2C_USB_C0_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- /*
- * BC1.2 interrupt is shared with TCPC, so
- * IRQ is not specified here and handled by
- * usb_c0_interrupt.
- */
- };
-
- chg_port0: isl923x@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-
- tcpc_port0: raa489000@22 {
- compatible = "renesas,raa489000";
- reg = <0x22>;
- tcpc-flags = <(
- TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_VBUS_MONITOR)>;
- };
-};
-
-&i2c5_1 {
- label = "I2C_SUB_C1_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
-
- bc12_port1: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- };
-
- chg_port1: isl923x@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-
- tcpc_port1: raa489000@22 {
- compatible = "renesas,raa489000";
- reg = <0x22>;
- tcpc-flags = <(
- TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_VBUS_MONITOR)>;
- };
-
- anx7483_mux_1: anx7483-mux-1@3e {
- compatible = "analogix,anx7483";
- reg = <0x3e>;
- board-set = "anx7483_set_default_tuning";
- flags = <USB_MUX_FLAG_RESETS_IN_G3>;
- };
-};
-
-&i2c7_0 {
- label = "I2C_BATTERY";
- clock-frequency = <I2C_BITRATE_STANDARD>;
-};
-
-&pwm6 {
- status = "okay";
- pinctrl-0 = <&pwm6_gpc0>;
- pinctrl-names = "default";
-};
-
-/* host interface */
-&espi0 {
- status = "okay";
- pinctrl-0 = <&espi_lpc_gp46_47_51_52_53_54_55_57>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/xivu/power_signals.dtsi b/zephyr/program/nissa/xivu/power_signals.dtsi
deleted file mode 100644
index 1d2b23069d..0000000000
--- a/zephyr/program/nissa/xivu/power_signals.dtsi
+++ /dev/null
@@ -1,220 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- chosen {
- intel-ap-pwrseq,espi = &espi0;
- };
-
- common-pwrseq {
- compatible = "intel,ap-pwrseq";
-
- sys-pwrok-delay = <10>;
- all-sys-pwrgd-timeout = <20>;
- };
-
- pwr-en-pp5000-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP5000_S5 enable output to regulator";
- enum-name = "PWR_EN_PP5000_A";
- gpios = <&gpio4 0 0>;
- output;
- };
- pwr-en-pp3300-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP3300_S5 enable output to LS";
- enum-name = "PWR_EN_PP3300_A";
- gpios = <&gpiob 6 0>;
- output;
- };
- pwr-pg-ec-rsmrst-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST power good from regulator";
- enum-name = "PWR_RSMRST";
- gpios = <&gpio9 4 0>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-pch-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST output to PCH";
- enum-name = "PWR_EC_PCH_RSMRST";
- gpios = <&gpioa 6 0>;
- output;
- };
- pwr-slp-s0-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S0_L input from PCH";
- enum-name = "PWR_SLP_S0";
- gpios = <&gpio9 7 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-s3-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S3_L input from PCH";
- enum-name = "PWR_SLP_S3";
- gpios = <&gpioa 5 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-sus-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_SUS_L input from PCH";
- enum-name = "PWR_SLP_SUS";
- gpios = <&gpio6 2 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-soc-dsw-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "DSW_PWROK output to PCH";
- enum-name = "PWR_EC_SOC_DSW_PWROK";
- gpios = <&gpio6 1 0>;
- output;
- };
- pwr-vccst-pwrgd-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VCCST_PWRGD output to PCH";
- enum-name = "PWR_VCCST_PWRGD";
- gpios = <&gpioa 4 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-imvp9-vrrdy-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VRRDY input from IMVP9";
- enum-name = "PWR_IMVP9_VRRDY";
- gpios = <&gpio4 3 0>;
- };
- pwr-pch-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PCH_PWROK output to PCH";
- enum-name = "PWR_PCH_PWROK";
- gpios = <&gpio7 2 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-ec-pch-sys-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_PWROK output to PCH";
- enum-name = "PWR_EC_PCH_SYS_PWROK";
- gpios = <&gpio3 7 0>;
- output;
- };
- pwr-sys-rst-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_RESET# output to PCH";
- enum-name = "PWR_SYS_RST";
- gpios = <&gpioc 5 (GPIO_ACTIVE_LOW|GPIO_OPEN_DRAIN)>;
- output;
- };
- pwr-slp-s4 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S4 virtual wire input from PCH";
- enum-name = "PWR_SLP_S4";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S4";
- vw-invert;
- };
- pwr-slp-s5 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S5 virtual wire input from PCH";
- enum-name = "PWR_SLP_S5";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S5";
- vw-invert;
- };
- pwr-all-sys-pwrgd {
- compatible = "intel,ap-pwrseq-external";
- dbg-label = "Combined all power good";
- enum-name = "PWR_ALL_SYS_PWRGD";
- };
- pwr-adc-pp3300 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP3300 PWROK (from ADC)";
- enum-name = "PWR_DSW_PWROK";
- trigger-high = <&cmp_pp3300_s5_high>;
- trigger-low = <&cmp_pp3300_s5_low>;
- };
- pwr-adc-pp1p05 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP1P05 PWROK (from ADC)";
- enum-name = "PWR_PG_PP1P05";
- trigger-high = <&cmp_pp1p05_high>;
- trigger-low = <&cmp_pp1p05_low>;
- };
-
- adc-cmp {
- cmp_pp3300_s5_high: pp3300_high {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 6>;
- comparison = "ADC_CMP_NPCX_GREATER";
- /*
- * This is 90% of nominal voltage considering voltage
- * divider on ADC input.
- */
- threshold-mv = <2448>;
- };
- cmp_pp3300_s5_low: pp3300_low {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 6>;
- comparison = "ADC_CMP_NPCX_LESS_OR_EQUAL";
- threshold-mv = <2448>;
- };
- cmp_pp1p05_high: pp1p05_high {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 4>;
- comparison = "ADC_CMP_NPCX_GREATER";
- /* Setting at 90% of nominal voltage */
- threshold-mv = <945>;
- };
- cmp_pp1p05_low: pp1p05_low {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 4>;
- comparison = "ADC_CMP_NPCX_LESS_OR_EQUAL";
- threshold-mv = <945>;
- };
- };
-};
-
-/*
- * Because the power signals directly reference the GPIOs,
- * the correspinding named-gpios need to have no-auto-init set.
- */
-&gpio_ec_soc_dsw_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_pch_pwrok_od {
- no-auto-init;
-};
-&gpio_ec_soc_rsmrst_l {
- no-auto-init;
-};
-&gpio_ec_soc_sys_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_vccst_pwrgd_od {
- no-auto-init;
-};
-&gpio_en_pp3300_s5 {
- no-auto-init;
-};
-&gpio_en_pp5000_s5 {
- no-auto-init;
-};
-&gpio_imvp91_vrrdy_od {
- no-auto-init;
-};
-&gpio_rsmrst_pwrgd_l {
- no-auto-init;
-};
-&gpio_slp_s0_l {
- no-auto-init;
-};
-&gpio_slp_s3_l {
- no-auto-init;
-};
-&gpio_slp_s4_l {
- no-auto-init;
-};
-&gpio_slp_sus_l {
- no-auto-init;
-};
-&gpio_sys_rst_odl {
- no-auto-init;
-};
diff --git a/zephyr/program/nissa/xivu/project.conf b/zephyr/program/nissa/xivu/project.conf
deleted file mode 100644
index d20c490c20..0000000000
--- a/zephyr/program/nissa/xivu/project.conf
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_BOARD_XIVU=y
-CONFIG_PLATFORM_EC_OCPC=y
-
-CONFIG_PLATFORM_EC_CHARGER_INPUT_CURRENT_DERATE_PCT=10
-
-# LED
-CONFIG_PLATFORM_EC_LED_COMMON=n
-CONFIG_PLATFORM_EC_LED_DT=y
-
-# USBC
-CONFIG_PLATFORM_EC_PD_MAX_POWER_MW=45000
-
-# Battery
-CONFIG_PLATFORM_EC_CHARGER_PROFILE_OVERRIDE=y
-
-# Montionsense
-CONFIG_PLATFORM_EC_ACCEL_BMA4XX=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI3XX=y
-CONFIG_PLATFORM_EC_ACCELGYRO_LSM6DSO=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=y
-CONFIG_PLATFORM_EC_DYNAMIC_MOTION_SENSOR_COUNT=y
diff --git a/zephyr/program/nissa/xivu/project.overlay b/zephyr/program/nissa/xivu/project.overlay
deleted file mode 100644
index a7c5b7e9e7..0000000000
--- a/zephyr/program/nissa/xivu/project.overlay
+++ /dev/null
@@ -1,15 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "../cbi.dtsi"
-
-#include "cbi.dtsi"
-#include "generated.dtsi"
-#include "keyboard.dtsi"
-#include "led_pins.dtsi"
-#include "led_policy.dtsi"
-#include "motionsense.dtsi"
-#include "overlay.dtsi"
-#include "power_signals.dtsi"
diff --git a/zephyr/program/nissa/xivu/src/charger.c b/zephyr/program/nissa/xivu/src/charger.c
deleted file mode 100644
index a3d9d16443..0000000000
--- a/zephyr/program/nissa/xivu/src/charger.c
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "battery.h"
-#include "charger.h"
-#include "charger/isl923x_public.h"
-#include "console.h"
-#include "extpower.h"
-#include "nissa_common.h"
-#include "usb_pd.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-int extpower_is_present(void)
-{
- int port;
- int rv;
- bool acok;
-
- for (port = 0; port < board_get_usb_pd_port_count(); port++) {
- rv = raa489000_is_acok(port, &acok);
- if ((rv == EC_SUCCESS) && acok)
- return 1;
- }
-
- return 0;
-}
-
-/*
- * Xivu does not have a GPIO indicating whether extpower is present,
- * so detect using the charger(s).
- */
-__override void board_check_extpower(void)
-{
- static int last_extpower_present;
- int extpower_present_p0 = 0;
- int extpower_present_p1 = 0;
-
- int extpower_present = extpower_is_present();
-
- if (last_extpower_present ^ extpower_present)
- extpower_handle_update(extpower_present);
-
- last_extpower_present = extpower_present;
-
- if (pd_is_connected(0))
- extpower_present_p0 = extpower_is_present();
- else if (pd_is_connected(1))
- extpower_present_p1 = extpower_is_present();
-
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_ec_acok_otg_c0),
- extpower_present_p0);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_ec_acok_otg_c1),
- extpower_present_p1);
-}
-
-__override void board_hibernate(void)
-{
- /* Shut down the chargers */
- if (board_get_usb_pd_port_count() == 2)
- raa489000_hibernate(CHARGER_SECONDARY, true);
- raa489000_hibernate(CHARGER_PRIMARY, true);
- LOG_INF("Charger(s) hibernated");
- cflush();
-}
diff --git a/zephyr/program/nissa/xivu/src/form_factor.c b/zephyr/program/nissa/xivu/src/form_factor.c
deleted file mode 100644
index 2ce6f5418d..0000000000
--- a/zephyr/program/nissa/xivu/src/form_factor.c
+++ /dev/null
@@ -1,78 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "accelgyro.h"
-#include "button.h"
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-#include "driver/accel_bma4xx.h"
-#include "driver/accel_lis2dw12_public.h"
-#include "driver/accelgyro_bmi323.h"
-#include "driver/accelgyro_lsm6dso.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "motion_sense.h"
-#include "motionsense_sensors.h"
-#include "nissa_common.h"
-#include "tablet_mode.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-static bool use_alt_sensor;
-static bool use_alt_lid_accel;
-
-void motion_interrupt(enum gpio_signal signal)
-{
- if (use_alt_sensor)
- bmi3xx_interrupt(signal);
- else
- lsm6dso_interrupt(signal);
-}
-
-void lid_accel_interrupt(enum gpio_signal signal)
-{
- if (use_alt_lid_accel)
- bma4xx_interrupt(signal);
- else
- lis2dw12_interrupt(signal);
-}
-
-static void form_factor_init(void)
-{
- if (cros_cbi_ssfc_check_match(
- CBI_SSFC_VALUE_ID(DT_NODELABEL(base_sensor_bmi323)))) {
- use_alt_sensor = true;
- MOTIONSENSE_ENABLE_ALTERNATE(alt_base_accel);
- MOTIONSENSE_ENABLE_ALTERNATE(alt_base_gyro);
- ccprints("BASE ACCEL IS BMI323");
- } else if (cros_cbi_ssfc_check_match(CBI_SSFC_VALUE_ID(
- DT_NODELABEL(base_sensor_lsm6dso)))) {
- use_alt_sensor = false;
- ccprints("BASE ACCEL IS LSM6DSO");
- } else {
- use_alt_sensor = false;
- ccprints("no motionsense");
- }
-
- if (cros_cbi_ssfc_check_match(
- CBI_SSFC_VALUE_ID(DT_NODELABEL(lid_sensor_bma422)))) {
- use_alt_lid_accel = true;
- MOTIONSENSE_ENABLE_ALTERNATE(alt_lid_accel);
- ccprints("LID SENSOR IS BMA422");
- } else if (cros_cbi_ssfc_check_match(CBI_SSFC_VALUE_ID(
- DT_NODELABEL(lid_sensor_lis2dw12)))) {
- use_alt_lid_accel = false;
- ccprints("LID SENSOR IS LIS2DW12");
- } else {
- use_alt_lid_accel = false;
- ccprints("no lid sensor");
- }
-
- motion_sensors_check_ssfc();
-}
-DECLARE_HOOK(HOOK_INIT, form_factor_init, HOOK_PRIO_POST_I2C);
diff --git a/zephyr/program/nissa/xivu/src/keyboard.c b/zephyr/program/nissa/xivu/src/keyboard.c
deleted file mode 100644
index ef799fb1d2..0000000000
--- a/zephyr/program/nissa/xivu/src/keyboard.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ec_commands.h"
-
-static const struct ec_response_keybd_config xivu_kb_legacy = {
- .num_top_row_keys = 10,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_REFRESH, /* T2 */
- TK_FULLSCREEN, /* T3 */
- TK_OVERVIEW, /* T4 */
- TK_SNAPSHOT, /* T5 */
- TK_BRIGHTNESS_DOWN, /* T6 */
- TK_BRIGHTNESS_UP, /* T7 */
- TK_VOL_MUTE, /* 8 */
- TK_VOL_DOWN, /* T9 */
- TK_VOL_UP, /* T10 */
- },
- .capabilities = KEYBD_CAP_SCRNLOCK_KEY,
-};
-
-__override const struct ec_response_keybd_config *
-board_vivaldi_keybd_config(void)
-{
- return &xivu_kb_legacy;
-}
diff --git a/zephyr/program/nissa/xivu/src/usbc.c b/zephyr/program/nissa/xivu/src/usbc.c
deleted file mode 100644
index 174eb07c60..0000000000
--- a/zephyr/program/nissa/xivu/src/usbc.c
+++ /dev/null
@@ -1,343 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charge_state_v2.h"
-#include "chipset.h"
-#include "driver/charger/isl923x_public.h"
-#include "driver/retimer/anx7483_public.h"
-#include "driver/tcpm/raa489000.h"
-#include "driver/tcpm/tcpci.h"
-#include "hooks.h"
-#include "nissa_common.h"
-#include "system.h"
-#include "temp_sensor/temp_sensor.h"
-#include "usb_mux.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-int board_is_sourcing_vbus(int port)
-{
- int regval;
-
- tcpc_read(port, TCPC_REG_POWER_STATUS, &regval);
- return !!(regval & TCPC_REG_POWER_STATUS_SOURCING_VBUS);
-}
-
-int board_set_active_charge_port(int port)
-{
- int is_real_port = (port >= 0 && port < CONFIG_USB_PD_PORT_MAX_COUNT);
- int i;
- int old_port;
-
- if (!is_real_port && port != CHARGE_PORT_NONE)
- return EC_ERROR_INVAL;
-
- old_port = charge_manager_get_active_charge_port();
-
- LOG_INF("New chg p%d", port);
-
- /* Disable all ports. */
- if (port == CHARGE_PORT_NONE) {
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- tcpc_write(i, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_LOW);
- raa489000_enable_asgate(i, false);
- }
-
- return EC_SUCCESS;
- }
-
- /* Check if port is sourcing VBUS. */
- if (board_is_sourcing_vbus(port)) {
- LOG_WRN("Skip enable p%d", port);
- return EC_ERROR_INVAL;
- }
-
- /*
- * Turn off the other ports' sink path FETs, before enabling the
- * requested charge port.
- */
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- if (i == port)
- continue;
-
- if (tcpc_write(i, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_LOW))
- LOG_WRN("p%d: sink path disable failed.", i);
- raa489000_enable_asgate(i, false);
- }
-
- /*
- * Stop the charger IC from switching while changing ports. Otherwise,
- * we can overcurrent the adapter we're switching to. (crbug.com/926056)
- */
- if (old_port != CHARGE_PORT_NONE)
- charger_discharge_on_ac(1);
-
- /* Enable requested charge port. */
- if (raa489000_enable_asgate(port, true) ||
- tcpc_write(port, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_HIGH)) {
- LOG_WRN("p%d: sink path enable failed.", port);
- charger_discharge_on_ac(0);
- return EC_ERROR_UNKNOWN;
- }
-
- /* Allow the charger IC to begin/continue switching. */
- charger_discharge_on_ac(0);
-
- return EC_SUCCESS;
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- uint16_t status = 0;
- int regval;
-
- /*
- * The interrupt line is shared between the TCPC and BC1.2 detector IC.
- * Therefore, go out and actually read the alert registers to report the
- * alert status.
- */
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl))) {
- if (!tcpc_read16(0, TCPC_REG_ALERT, &regval)) {
- /* The TCPCI Rev 1.0 spec says to ignore bits 14:12. */
- if (!(tcpc_config[0].flags & TCPC_FLAGS_TCPCI_REV2_0))
- regval &= ~((1 << 14) | (1 << 13) | (1 << 12));
-
- if (regval)
- status |= PD_STATUS_TCPC_ALERT_0;
- }
- }
-
- if (board_get_usb_pd_port_count() == 2 &&
- !gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- if (!tcpc_read16(1, TCPC_REG_ALERT, &regval)) {
- /* TCPCI spec Rev 1.0 says to ignore bits 14:12. */
- if (!(tcpc_config[1].flags & TCPC_FLAGS_TCPCI_REV2_0))
- regval &= ~((1 << 14) | (1 << 13) | (1 << 12));
-
- if (regval)
- status |= PD_STATUS_TCPC_ALERT_1;
- }
- }
-
- return status;
-}
-
-void pd_power_supply_reset(int port)
-{
- /* Disable VBUS */
- tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SRC_CTRL_LOW);
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-/* VBUS_CURRENT_TARGET */
-#define RAA489000_VBUS_CURRENT_TARGET_3_3A 0x68 /* 3.3A */
-
-__override void typec_set_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- int rv;
-
- if (port < 0 || port >= CONFIG_USB_PD_PORT_MAX_COUNT)
- return;
-
- int selected_cur = rp == TYPEC_RP_3A0 ?
- RAA489000_VBUS_CURRENT_TARGET_3_3A :
- RAA489000_VBUS_CURRENT_TARGET_1_5A;
-
- rv = tcpc_write16(port, RAA489000_VBUS_CURRENT_TARGET, selected_cur);
-
- if (rv != EC_SUCCESS) {
- LOG_WRN("Failed to set source ilimit on port %d to %d: %d",
- port, selected_cur, rv);
- }
-}
-
-int pd_set_power_supply_ready(int port)
-{
- int rv;
-
- if (port >= CONFIG_USB_PD_PORT_MAX_COUNT)
- return EC_ERROR_INVAL;
-
- /* Disable charging. */
- rv = tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SNK_CTRL_LOW);
- if (rv)
- return rv;
-
- /* Our policy is not to source VBUS when the AP is off. */
- if (chipset_in_state(CHIPSET_STATE_ANY_OFF))
- return EC_ERROR_NOT_POWERED;
-
- /* Provide Vbus. */
- rv = tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SRC_CTRL_HIGH);
- if (rv)
- return rv;
-
- rv = raa489000_enable_asgate(port, true);
- if (rv)
- return rv;
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-void board_reset_pd_mcu(void)
-{
- /*
- * TODO(b:147316511): could send a reset command to the TCPC here
- * if needed.
- */
-}
-
-/*
- * Because the TCPCs and BC1.2 chips share interrupt lines, it's possible
- * for an interrupt to be lost if one asserts the IRQ, the other does the same
- * then the first releases it: there will only be one falling edge to trigger
- * the interrupt, and the line will be held low. We handle this by running a
- * deferred check after a falling edge to see whether the IRQ is still being
- * asserted. If it is, we assume an interrupt may have been lost and we need
- * to poll each chip for events again.
- */
-#define USBC_INT_POLL_DELAY_US 5000
-
-static void poll_c0_int(void);
-DECLARE_DEFERRED(poll_c0_int);
-static void poll_c1_int(void);
-DECLARE_DEFERRED(poll_c1_int);
-
-static void usbc_interrupt_trigger(int port)
-{
- schedule_deferred_pd_interrupt(port);
- usb_charger_task_set_event(port, USB_CHG_EVENT_BC12);
-}
-
-static inline void poll_usb_gpio(int port, const struct gpio_dt_spec *gpio,
- const struct deferred_data *ud)
-{
- if (!gpio_pin_get_dt(gpio)) {
- usbc_interrupt_trigger(port);
- hook_call_deferred(ud, USBC_INT_POLL_DELAY_US);
- }
-}
-
-static void poll_c0_int(void)
-{
- poll_usb_gpio(0, GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl),
- &poll_c0_int_data);
-}
-
-static void poll_c1_int(void)
-{
- poll_usb_gpio(1, GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl),
- &poll_c1_int_data);
-}
-
-void usb_interrupt(enum gpio_signal signal)
-{
- int port;
- const struct deferred_data *ud;
-
- if (signal == GPIO_SIGNAL(DT_NODELABEL(gpio_usb_c0_int_odl))) {
- port = 0;
- ud = &poll_c0_int_data;
- } else {
- port = 1;
- ud = &poll_c1_int_data;
- }
- /*
- * We've just been called from a falling edge, so there's definitely
- * no lost IRQ right now. Cancel any pending check.
- */
- hook_call_deferred(ud, -1);
- /* Trigger polling of TCPC and BC1.2 in respective tasks */
- usbc_interrupt_trigger(port);
- /* Check for lost interrupts in a bit */
- hook_call_deferred(ud, USBC_INT_POLL_DELAY_US);
-}
-
-struct chg_curr_step {
- int on;
- int off;
- int curr_ma;
-};
-
-static const struct chg_curr_step chg_curr_table[] = {
- { .on = 0, .off = 36, .curr_ma = 2800 },
- { .on = 46, .off = 36, .curr_ma = 1500 },
- { .on = 48, .off = 38, .curr_ma = 1000 },
-};
-
-/* All charge current tables must have the same number of levels */
-#define NUM_CHG_CURRENT_LEVELS ARRAY_SIZE(chg_curr_table)
-
-int charger_profile_override(struct charge_state_data *curr)
-{
- int rv;
- int chg_temp_c;
- int current;
- int thermal_sensor0;
- static int current_level;
- static int prev_tmp;
-
- /*
- * Precharge must be executed when communication is failed on
- * dead battery.
- */
- if (!(curr->batt.flags & BATT_FLAG_RESPONSIVE))
- return 0;
-
- current = curr->requested_current;
-
- rv = temp_sensor_read(
- TEMP_SENSOR_ID_BY_DEV(DT_NODELABEL(temp_charger1)),
- &thermal_sensor0);
- chg_temp_c = K_TO_C(thermal_sensor0);
-
- if (rv != EC_SUCCESS)
- return 0;
-
- if (chipset_in_state(CHIPSET_STATE_ON)) {
- if (chg_temp_c < prev_tmp) {
- if (chg_temp_c <= chg_curr_table[current_level].off)
- current_level = current_level - 1;
- } else if (chg_temp_c > prev_tmp) {
- if (chg_temp_c >= chg_curr_table[current_level + 1].on)
- current_level = current_level + 1;
- }
- /*
- * Prevent level always minus 0 or over table steps.
- */
- if (current_level < 0)
- current_level = 0;
- else if (current_level >= NUM_CHG_CURRENT_LEVELS)
- current_level = NUM_CHG_CURRENT_LEVELS - 1;
-
- prev_tmp = chg_temp_c;
- current = chg_curr_table[current_level].curr_ma;
-
- curr->requested_current = MIN(curr->requested_current, current);
- }
- return 0;
-}
-
-enum ec_status charger_profile_override_get_param(uint32_t param,
- uint32_t *value)
-{
- return EC_RES_INVALID_PARAM;
-}
-
-enum ec_status charger_profile_override_set_param(uint32_t param,
- uint32_t value)
-{
- return EC_RES_INVALID_PARAM;
-}
diff --git a/zephyr/program/nissa/xivur/cbi.dtsi b/zephyr/program/nissa/xivur/cbi.dtsi
deleted file mode 100644
index 112a2a885c..0000000000
--- a/zephyr/program/nissa/xivur/cbi.dtsi
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- /* Nivviks-specific fw_config fields. */
- nissa-fw-config {
- /*
- * FW_CONFIG field to describe mainboard orientation in chassis.
- */
- base-inversion {
- enum-name = "FW_BASE_INVERSION";
- start = <3>;
- size = <1>;
-
- inverted {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_BASE_INVERTED";
- value = <0>;
- };
- regular {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_BASE_REGULAR";
- value = <1>;
- default;
- };
- };
- };
-};
diff --git a/zephyr/program/nissa/xivur/generated.dtsi b/zephyr/program/nissa/xivur/generated.dtsi
deleted file mode 100644
index 91718302b4..0000000000
--- a/zephyr/program/nissa/xivur/generated.dtsi
+++ /dev/null
@@ -1,291 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * This file is auto-generated - do not edit!
- */
-
-/ {
-
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_ec_vsense_pp1050_proc: ec_vsense_pp1050_proc {
- enum-name = "ADC_PP1050_PROC";
- io-channels = <&adc0 4>;
- };
- adc_ec_vsense_pp3300_s5: ec_vsense_pp3300_s5 {
- enum-name = "ADC_PP3300_S5";
- io-channels = <&adc0 6>;
- };
- adc_temp_sensor_1: temp_sensor_1 {
- enum-name = "ADC_TEMP_SENSOR_1";
- io-channels = <&adc0 0>;
- };
- adc_temp_sensor_2: temp_sensor_2 {
- enum-name = "ADC_TEMP_SENSOR_2";
- io-channels = <&adc0 1>;
- };
- adc_temp_sensor_3: temp_sensor_3 {
- enum-name = "ADC_TEMP_SENSOR_3";
- io-channels = <&adc0 10>;
- };
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_acc_int_l: acc_int_l {
- gpios = <&gpio5 0 GPIO_INPUT>;
- };
- gpio_all_sys_pwrgd: all_sys_pwrgd {
- gpios = <&gpioa 7 GPIO_INPUT>;
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- gpio_cpu_c10_gate_l: cpu_c10_gate_l {
- gpios = <&gpio6 7 GPIO_INPUT>;
- };
- gpio_ec_battery_pres_odl: ec_battery_pres_odl {
- gpios = <&gpioa 3 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpio7 4 GPIO_OUTPUT>;
- };
- gpio_ec_edp_bl_en_od: ec_edp_bl_en_od {
- gpios = <&gpiod 3 GPIO_ODR_HIGH>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- gpio_ec_entering_rw: ec_entering_rw {
- gpios = <&gpio0 3 GPIO_OUTPUT>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_ec_gsc_packet_mode: ec_gsc_packet_mode {
- gpios = <&gpio7 5 GPIO_OUTPUT>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
- gpio_ec_pch_wake_odl: ec_pch_wake_odl {
- gpios = <&gpiob 0 GPIO_ODR_LOW>;
- };
- gpio_ec_prochot_odl: ec_prochot_odl {
- gpios = <&gpiof 1 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_dsw_pwrok: ec_soc_dsw_pwrok {
- gpios = <&gpio6 1 GPIO_OUTPUT>;
- };
- gpio_ec_soc_hdmi_hpd: ec_soc_hdmi_hpd {
- gpios = <&gpioe 4 GPIO_OUTPUT>;
- };
- gpio_ec_soc_int_odl: ec_soc_int_odl {
- gpios = <&gpio8 0 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_ec_soc_pch_pwrok_od: ec_soc_pch_pwrok_od {
- gpios = <&gpio7 2 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_pwr_btn_odl: ec_soc_pwr_btn_odl {
- gpios = <&gpioc 1 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- gpio_ec_soc_rsmrst_l: ec_soc_rsmrst_l {
- gpios = <&gpioa 6 GPIO_OUTPUT>;
- };
- gpio_ec_soc_rtcrst: ec_soc_rtcrst {
- gpios = <&gpio7 6 GPIO_OUTPUT>;
- };
- gpio_ec_soc_sys_pwrok: ec_soc_sys_pwrok {
- gpios = <&gpio3 7 GPIO_OUTPUT>;
- };
- gpio_ec_soc_vccst_pwrgd_od: ec_soc_vccst_pwrgd_od {
- gpios = <&gpioa 4 GPIO_ODR_HIGH>;
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpioa 1 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_en_kb_bl: en_kb_bl {
- gpios = <&gpioa 0 GPIO_OUTPUT>;
- enum-name = "GPIO_EN_KEYBOARD_BACKLIGHT";
- };
- gpio_en_pp3300_s5: en_pp3300_s5 {
- gpios = <&gpiob 6 GPIO_OUTPUT>;
- enum-name = "GPIO_TEMP_SENSOR_POWER";
- };
- gpio_en_pp5000_pen_x: en_pp5000_pen_x {
- gpios = <&gpioe 2 GPIO_OUTPUT>;
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpio4 0 GPIO_OUTPUT>;
- };
- gpio_en_slp_z: en_slp_z {
- gpios = <&gpioe 1 GPIO_OUTPUT>;
- };
- gpio_en_usb_a0_vbus: en_usb_a0_vbus {
- gpios = <&gpio9 1 GPIO_OUTPUT>;
- };
- gpio_gsc_ec_pwr_btn_odl: gsc_ec_pwr_btn_odl {
- gpios = <&gpio0 0 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_hdmi_sel: hdmi_sel {
- gpios = <&gpioc 6 GPIO_OUTPUT>;
- };
- gpio_imu_int_l: imu_int_l {
- gpios = <&gpio5 6 GPIO_INPUT>;
- };
- gpio_imvp91_vrrdy_od: imvp91_vrrdy_od {
- gpios = <&gpio4 3 GPIO_INPUT>;
- };
- gpio_lid_open: lid_open {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_pen_detect_odl: pen_detect_odl {
- gpios = <&gpio9 6 GPIO_INPUT_PULL_UP>;
- };
- gpio_pg_pp1050_mem_s3_od: pg_pp1050_mem_s3_od {
- gpios = <&gpiof 0 GPIO_INPUT>;
- };
- gpio_pg_pp5000_s5_od: pg_pp5000_s5_od {
- gpios = <&gpio4 2 GPIO_INPUT>;
- };
- gpio_rsmrst_pwrgd_l: rsmrst_pwrgd_l {
- gpios = <&gpio9 4 GPIO_INPUT_PULL_UP>;
- };
- gpio_slp_s0_l: slp_s0_l {
- gpios = <&gpio9 7 GPIO_INPUT>;
- };
- gpio_slp_s3_l: slp_s3_l {
- gpios = <&gpioa 5 GPIO_INPUT>;
- };
- gpio_slp_s4_l: slp_s4_l {
- gpios = <&gpio7 0 GPIO_INPUT>;
- };
- gpio_slp_sus_l: slp_sus_l {
- gpios = <&gpio6 2 GPIO_INPUT>;
- };
- gpio_sub_usb_a1_ilimit_sdp: sub_usb_a1_ilimit_sdp {
- gpios = <&gpiod 5 GPIO_OUTPUT>;
- enum-name = "GPIO_USB2_ILIM_SEL";
- };
- gpio_sys_rst_odl: sys_rst_odl {
- gpios = <&gpioc 5 GPIO_ODR_HIGH>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpio9 5 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_usb_a0_ilimit_sdp: usb_a0_ilimit_sdp {
- gpios = <&gpio8 5 GPIO_OUTPUT>;
- enum-name = "GPIO_USB1_ILIM_SEL";
- };
- gpio_usb_c0_int_odl: usb_c0_int_odl {
- gpios = <&gpio0 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_vccin_aux_vid0: vccin_aux_vid0 {
- gpios = <&gpio9 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_vccin_aux_vid1: vccin_aux_vid1 {
- gpios = <&gpioe 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_voldn_btn_odl: voldn_btn_odl {
- gpios = <&gpioa 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_volup_btn_odl: volup_btn_odl {
- gpios = <&gpio9 3 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_ec_i2c_eeprom: ec_i2c_eeprom {
- i2c-port = <&i2c0_0>;
- enum-names = "I2C_PORT_EEPROM";
- };
- i2c_ec_i2c_sensor: ec_i2c_sensor {
- i2c-port = <&i2c1_0>;
- enum-names = "I2C_PORT_SENSOR";
- };
- i2c_ec_i2c_usb_c0: ec_i2c_usb_c0 {
- i2c-port = <&i2c3_0>;
- enum-names = "I2C_PORT_USB_C0_TCPC";
- };
- i2c_ec_i2c_sub_usb_c1: ec_i2c_sub_usb_c1 {
- i2c-port = <&i2c5_1>;
- enum-names = "I2C_PORT_USB_C1_TCPC";
- };
- i2c_ec_i2c_batt: ec_i2c_batt {
- i2c-port = <&i2c7_0>;
- enum-names = "I2C_PORT_BATTERY";
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_chan0_gp45
- &adc0_chan1_gp44
- &adc0_chan4_gp41
- &adc0_chan6_gp34
- &adc0_chan10_gpe0>;
- pinctrl-names = "default";
-};
-
-
-&i2c0_0 {
- status = "okay";
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-};
-
-&i2c1_0 {
- status = "okay";
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-};
-
-&i2c3_0 {
- status = "okay";
- pinctrl-0 = <&i2c3_0_sda_scl_gpd0_d1>;
- pinctrl-names = "default";
-};
-
-&i2c5_1 {
- status = "okay";
- pinctrl-0 = <&i2c5_1_sda_scl_gpf4_f5>;
- pinctrl-names = "default";
-};
-
-&i2c7_0 {
- status = "okay";
- pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-&i2c_ctrl3 {
- status = "okay";
-};
-
-&i2c_ctrl5 {
- status = "okay";
-};
-
-&i2c_ctrl7 {
- status = "okay";
-};
diff --git a/zephyr/program/nissa/xivur/keyboard.dtsi b/zephyr/program/nissa/xivur/keyboard.dtsi
deleted file mode 100644
index 00610e4e18..0000000000
--- a/zephyr/program/nissa/xivur/keyboard.dtsi
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- kblight {
- compatible = "cros-ec,kblight-pwm";
- pwms = <&pwm6 6 PWM_HZ(2400) PWM_POLARITY_NORMAL>;
- };
-};
-
-&pwm6 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm6_gpc0>;
- pinctrl-names = "default";
-};
-
-&cros_kb_raw {
- status = "okay";
- /* No KSO2 (it's inverted and implemented by GPIO) */
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- &kso13_gp04
- &kso14_gp82
- >;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/xivur/motionsense.dtsi b/zephyr/program/nissa/xivur/motionsense.dtsi
deleted file mode 100644
index 6297a07bf5..0000000000
--- a/zephyr/program/nissa/xivur/motionsense.dtsi
+++ /dev/null
@@ -1,166 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * Interrupt bindings for sensor devices.
- */
- lsm6dso-int = &base_accel;
- lis2dw12-int = &lid_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- base_mutex: base-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <(-1) 0 0
- 0 1 0
- 0 0 (-1)>;
- };
-
- base_rot_ref: base-rot-ref {
- mat33 = <(-1) 0 0
- 0 (-1) 0
- 0 0 1>;
- };
-
- base_rot_inverted: base-rotation-inverted {
- mat33 = <1 0 0
- 0 (-1) 0
- 0 0 (-1)>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- lsm6dso_accel_data: lsm6dso-accel-drv-data {
- compatible = "cros-ec,drvdata-lsm6dso";
- status = "okay";
- };
-
- lsm6dso_gyro_data: lsm6dso-gyro-drv-data {
- compatible = "cros-ec,drvdata-lsm6dso";
- status = "okay";
- };
-
- lis2dw12_data: lis2dw12-drv-data {
- compatible = "cros-ec,drvdata-lis2dw12";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- * TODO(b/238139272): The first entries of the array must be
- * accelerometers,then gyroscope. Fix this dependency in the DTS
- * processing which makes the devicetree entries independent.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,lis2dw12";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&lis2dw12_data>;
- i2c-spi-addr-flags = "LIS2DWL_ADDR0_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,lsm6dso-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- /*
- * May be replaced by alternate depending
- * on board config.
- */
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&lsm6dso_accel_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_gyro: base-gyro {
- compatible = "cros-ec,lsm6dso-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&base_mutex>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- default-range = <(1000 | ROUND_UP_FLAG)>; /* dps */
- drv-data = <&lsm6dso_gyro_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_imu>;
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/nissa/xivur/overlay.dtsi b/zephyr/program/nissa/xivur/overlay.dtsi
deleted file mode 100644
index c2d5e3f24b..0000000000
--- a/zephyr/program/nissa/xivur/overlay.dtsi
+++ /dev/null
@@ -1,418 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-
-/ {
- aliases {
- gpio-cbi-wp = &gpio_ec_cbi_wp;
- gpio-wp = &gpio_ec_wp_odl;
- int-wp = &int_wp_l;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- ec-console {
- compatible = "ec-console";
- disabled = "events", "lpc", "hostcmd";
- };
-
- batteries {
- default_battery: lgc {
- compatible = "lgc,ap18c8k", "battery-smart";
- };
- lgc_ap19b8m {
- compatible = "lgc,ap19b8m", "battery-smart";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_power_button
- &int_lid_open
- >;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&gpio_gsc_ec_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_wp_l: wp_l {
- irq-pin = <&gpio_ec_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&gpio_tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_imu: ec_imu {
- irq-pin = <&gpio_imu_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "lsm6dso_interrupt";
- };
- int_vol_down: vol_down {
- irq-pin = <&gpio_voldn_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_vol_up: vol_up {
- irq-pin = <&gpio_volup_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_usb_c0: usb_c0 {
- irq-pin = <&gpio_usb_c0_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_interrupt";
- };
- int_usb_c1: usb_c1 {
- irq-pin = <&gpio_sb_1>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_interrupt";
- };
- };
-
- named-gpios {
- gpio_sb_1: sb-1 {
- gpios = <&gpio0 2 GPIO_PULL_UP>;
- no-auto-init;
- };
-
- gpio_sb_2: sb-2 {
- gpios = <&gpiod 4 GPIO_OUTPUT>;
- no-auto-init;
- };
-
- /*
- * Set I2C pins for type C sub-board to be low voltage (I2C5_1).
- * We do this for all boards, since the pins are 3.3V tolerant,
- * and the only 2 types of sub-boards used on nivviks both have
- * type-C ports on them.
- */
- gpio_sb_3: sb-3 {
- gpios = <&gpiof 4 (GPIO_OPEN_DRAIN | GPIO_VOLTAGE_1P8)>;
- no-auto-init;
- };
- gpio_sb_4: sb-4 {
- gpios = <&gpiof 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- no-auto-init;
- };
- gpio_fan_enable: fan-enable {
- gpios = <&gpio6 3 GPIO_OUTPUT>;
- no-auto-init;
- };
- ec-i2c-sensor-scl {
- gpios = <&gpio9 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-sensor-sda {
- gpios = <&gpio8 7 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- };
-
- /*
- * Aliases used for sub-board GPIOs.
- */
- aliases {
- /*
- * Input GPIO when used with type-C port 1
- * Output when used with HDMI sub-board
- */
- gpio-usb-c1-int-odl = &gpio_sb_1;
- gpio-en-rails-odl = &gpio_sb_1;
- /*
- * Sub-board with type A USB, enable.
- */
- gpio-en-usb-a1-vbus = &gpio_sb_2;
- /*
- * HPD pins for HDMI sub-board.
- */
- gpio-hdmi-en-odl = &gpio_sb_3;
- gpio-hpd-odl = &gpio_sb_4;
- /*
- * Enable S5 rails for LTE sub-board
- */
- gpio-en-sub-s5-rails = &gpio_sb_2;
- };
-
- temp_memory: memory {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_1>;
- };
- temp_charger: charger {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_2>;
- };
- temp_ambient: ambient {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_3>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- memory {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_memory>;
- };
- charger {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_charger>;
- };
- ambient {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_ambient>;
- };
- };
-
- usba {
- compatible = "cros-ec,usba-port-enable-pins";
- /*
- * sb_2 is only configured as GPIO when USB-A1 is present,
- * but it's still safe to control when disabled.
- *
- * ILIM_SEL pins are referred to by legacy enum name,
- * GPIO_USB*_ILIM_SEL. The one for port A1 is unused on
- * sub-boards that don't have USB-A so is safe to control
- * regardless of system configuration.
- */
- enable-pins = <&gpio_en_usb_a0_vbus &gpio_sb_2>;
- status = "okay";
- };
-
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- chg = <&chg_port0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_0>;
- };
- };
- port0-muxes {
- virtual_mux_0: virtual-mux-0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- /*
- * TODO(b:211693800): port1 may not be present on some
- * sub-boards.
- */
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&bc12_port1>;
- chg = <&chg_port1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_1 &anx7483_mux_1>;
- };
- usb_mux_chain_1_no_mux: usb-mux-chain-1-no-mux {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&virtual_mux_1>;
- };
- };
- port1-muxes {
- virtual_mux_1: virtual-mux-1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-
- fans {
- compatible = "cros-ec,fans";
-
- fan_0 {
- pwms = <&pwm5 5 PWM_KHZ(1) PWM_POLARITY_NORMAL>;
- rpm_min = <2200>;
- rpm_start = <2200>;
- rpm_max = <4200>;
- tach = <&tach2>;
- enable_gpio = <&gpio_fan_enable>;
- };
- };
-
- /*
- * Declare unused GPIOs so that they are shut down
- * and use minimal power
- */
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios =
- <&gpio3 2 0>,
- <&gpio3 3 0>,
- <&gpio3 5 0>,
- <&gpio3 6 0>,
- <&gpio5 7 0>,
- <&gpio6 0 0>,
- <&gpio6 3 0>,
- <&gpio6 6 0>,
- <&gpio7 3 0>,
- <&gpio8 3 0>,
- <&gpio8 6 0>,
- <&gpiob 1 0>,
- <&gpiob 7 0>,
- <&gpioc 7 0>,
- <&gpiof 2 0>,
- <&gpiof 3 0>;
- };
-};
-
-&thermistor_3V3_51K1_47K_4050B {
- status = "okay";
-};
-
-&adc_ec_vsense_pp3300_s5 {
- /*
- * Voltage divider on input has 47k upper and 220k lower legs with
- * 2714 mV full-scale reading on the ADC. Apply the largest possible
- * multiplier (without overflowing int32) to get the best possible
- * approximation of the actual ratio, but derate by a factor of two to
- * ensure unexpectedly high values won't overflow.
- */
- mul = <(791261 / 2)>;
- div = <(651975 / 2)>;
-};
-
-/* Set bus speeds for I2C */
-&i2c0_0 {
- label = "I2C_EEPROM";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-};
-
-&i2c1_0 {
- label = "I2C_SENSOR";
- clock-frequency = <I2C_BITRATE_FAST>;
-};
-
-&i2c3_0 {
- label = "I2C_USB_C0_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- /*
- * BC1.2 interrupt is shared with TCPC, so
- * IRQ is not specified here and handled by
- * usb_c0_interrupt.
- */
- };
-
- chg_port0: isl923x@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-};
-
-&i2c5_1 {
- label = "I2C_SUB_C1_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
-
- bc12_port1: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- };
-
- chg_port1: isl923x@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-
- anx7483_mux_1: anx7483-mux-1@3e {
- compatible = "analogix,anx7483";
- reg = <0x3e>;
- board-set = "anx7483_set_default_tuning";
- };
-};
-
-&i2c7_0 {
- label = "I2C_BATTERY";
- clock-frequency = <I2C_BITRATE_STANDARD>;
-};
-
-&pwm5_gpb7 {
- drive-open-drain;
-};
-
-&pwm5 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm5_gpb7>;
- pinctrl-names = "default";
-};
-
-/* Tachometer for fan speed measurement */
-&tach2 {
- status = "okay";
- pinctrl-0 = <&ta2_1_in_gp73>;
- pinctrl-names = "default";
- port = <NPCX_TACH_PORT_A>; /* port-A is selected */
- sample-clk = <NPCX_TACH_FREQ_LFCLK>; /* Use LFCLK as sampling clock */
- pulses-per-round = <2>; /* number of pulses per round of encoder */
-};
-
-/* host interface */
-&espi0 {
- status = "okay";
- pinctrl-0 = <&espi_lpc_gp46_47_51_52_53_54_55_57>;
- pinctrl-names = "default";
-};
-
-/*
- * Declare GPIOs that have leakage current caused by board issues here. NPCX ec
- * will disable their input buffers before entering deep sleep and restore them
- * after waking up automatically for better power consumption.
- */
-&power_leakage_io {
- leak-gpios = <&gpioa 4 0
- &gpiof 1 0>;
-};
diff --git a/zephyr/program/nissa/xivur/power_signals.dtsi b/zephyr/program/nissa/xivur/power_signals.dtsi
deleted file mode 100644
index 1d2b23069d..0000000000
--- a/zephyr/program/nissa/xivur/power_signals.dtsi
+++ /dev/null
@@ -1,220 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- chosen {
- intel-ap-pwrseq,espi = &espi0;
- };
-
- common-pwrseq {
- compatible = "intel,ap-pwrseq";
-
- sys-pwrok-delay = <10>;
- all-sys-pwrgd-timeout = <20>;
- };
-
- pwr-en-pp5000-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP5000_S5 enable output to regulator";
- enum-name = "PWR_EN_PP5000_A";
- gpios = <&gpio4 0 0>;
- output;
- };
- pwr-en-pp3300-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP3300_S5 enable output to LS";
- enum-name = "PWR_EN_PP3300_A";
- gpios = <&gpiob 6 0>;
- output;
- };
- pwr-pg-ec-rsmrst-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST power good from regulator";
- enum-name = "PWR_RSMRST";
- gpios = <&gpio9 4 0>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-pch-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST output to PCH";
- enum-name = "PWR_EC_PCH_RSMRST";
- gpios = <&gpioa 6 0>;
- output;
- };
- pwr-slp-s0-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S0_L input from PCH";
- enum-name = "PWR_SLP_S0";
- gpios = <&gpio9 7 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-s3-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S3_L input from PCH";
- enum-name = "PWR_SLP_S3";
- gpios = <&gpioa 5 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-sus-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_SUS_L input from PCH";
- enum-name = "PWR_SLP_SUS";
- gpios = <&gpio6 2 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-soc-dsw-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "DSW_PWROK output to PCH";
- enum-name = "PWR_EC_SOC_DSW_PWROK";
- gpios = <&gpio6 1 0>;
- output;
- };
- pwr-vccst-pwrgd-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VCCST_PWRGD output to PCH";
- enum-name = "PWR_VCCST_PWRGD";
- gpios = <&gpioa 4 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-imvp9-vrrdy-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VRRDY input from IMVP9";
- enum-name = "PWR_IMVP9_VRRDY";
- gpios = <&gpio4 3 0>;
- };
- pwr-pch-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PCH_PWROK output to PCH";
- enum-name = "PWR_PCH_PWROK";
- gpios = <&gpio7 2 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-ec-pch-sys-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_PWROK output to PCH";
- enum-name = "PWR_EC_PCH_SYS_PWROK";
- gpios = <&gpio3 7 0>;
- output;
- };
- pwr-sys-rst-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_RESET# output to PCH";
- enum-name = "PWR_SYS_RST";
- gpios = <&gpioc 5 (GPIO_ACTIVE_LOW|GPIO_OPEN_DRAIN)>;
- output;
- };
- pwr-slp-s4 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S4 virtual wire input from PCH";
- enum-name = "PWR_SLP_S4";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S4";
- vw-invert;
- };
- pwr-slp-s5 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S5 virtual wire input from PCH";
- enum-name = "PWR_SLP_S5";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S5";
- vw-invert;
- };
- pwr-all-sys-pwrgd {
- compatible = "intel,ap-pwrseq-external";
- dbg-label = "Combined all power good";
- enum-name = "PWR_ALL_SYS_PWRGD";
- };
- pwr-adc-pp3300 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP3300 PWROK (from ADC)";
- enum-name = "PWR_DSW_PWROK";
- trigger-high = <&cmp_pp3300_s5_high>;
- trigger-low = <&cmp_pp3300_s5_low>;
- };
- pwr-adc-pp1p05 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP1P05 PWROK (from ADC)";
- enum-name = "PWR_PG_PP1P05";
- trigger-high = <&cmp_pp1p05_high>;
- trigger-low = <&cmp_pp1p05_low>;
- };
-
- adc-cmp {
- cmp_pp3300_s5_high: pp3300_high {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 6>;
- comparison = "ADC_CMP_NPCX_GREATER";
- /*
- * This is 90% of nominal voltage considering voltage
- * divider on ADC input.
- */
- threshold-mv = <2448>;
- };
- cmp_pp3300_s5_low: pp3300_low {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 6>;
- comparison = "ADC_CMP_NPCX_LESS_OR_EQUAL";
- threshold-mv = <2448>;
- };
- cmp_pp1p05_high: pp1p05_high {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 4>;
- comparison = "ADC_CMP_NPCX_GREATER";
- /* Setting at 90% of nominal voltage */
- threshold-mv = <945>;
- };
- cmp_pp1p05_low: pp1p05_low {
- compatible = "nuvoton,adc-cmp";
- io-channels = <&adc0 4>;
- comparison = "ADC_CMP_NPCX_LESS_OR_EQUAL";
- threshold-mv = <945>;
- };
- };
-};
-
-/*
- * Because the power signals directly reference the GPIOs,
- * the correspinding named-gpios need to have no-auto-init set.
- */
-&gpio_ec_soc_dsw_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_pch_pwrok_od {
- no-auto-init;
-};
-&gpio_ec_soc_rsmrst_l {
- no-auto-init;
-};
-&gpio_ec_soc_sys_pwrok {
- no-auto-init;
-};
-&gpio_ec_soc_vccst_pwrgd_od {
- no-auto-init;
-};
-&gpio_en_pp3300_s5 {
- no-auto-init;
-};
-&gpio_en_pp5000_s5 {
- no-auto-init;
-};
-&gpio_imvp91_vrrdy_od {
- no-auto-init;
-};
-&gpio_rsmrst_pwrgd_l {
- no-auto-init;
-};
-&gpio_slp_s0_l {
- no-auto-init;
-};
-&gpio_slp_s3_l {
- no-auto-init;
-};
-&gpio_slp_s4_l {
- no-auto-init;
-};
-&gpio_slp_sus_l {
- no-auto-init;
-};
-&gpio_sys_rst_odl {
- no-auto-init;
-};
diff --git a/zephyr/program/nissa/xivur/project.conf b/zephyr/program/nissa/xivur/project.conf
deleted file mode 100644
index c63cf8b41f..0000000000
--- a/zephyr/program/nissa/xivur/project.conf
+++ /dev/null
@@ -1,8 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_BOARD_XIVUR=y
-CONFIG_PLATFORM_EC_OCPC=y
-
-CONFIG_PLATFORM_EC_ACCELGYRO_LSM6DSO=y
diff --git a/zephyr/program/nissa/xivur/project.overlay b/zephyr/program/nissa/xivur/project.overlay
deleted file mode 100644
index 9ca681d979..0000000000
--- a/zephyr/program/nissa/xivur/project.overlay
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "../cbi.dtsi"
-
-#include "cbi.dtsi"
-#include "generated.dtsi"
-#include "keyboard.dtsi"
-#include "motionsense.dtsi"
-#include "overlay.dtsi"
-#include "power_signals.dtsi"
-#include "pwm_leds.dtsi"
diff --git a/zephyr/program/nissa/xivur/pwm_leds.dtsi b/zephyr/program/nissa/xivur/pwm_leds.dtsi
deleted file mode 100644
index a265a5929e..0000000000
--- a/zephyr/program/nissa/xivur/pwm_leds.dtsi
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_led0: pwm_led_0 {
- pwms = <&pwm2 2 PWM_HZ(324) PWM_POLARITY_INVERTED>,
- <&pwm0 0 PWM_HZ(324) PWM_POLARITY_INVERTED>,
- <&pwm1 1 PWM_HZ(324) PWM_POLARITY_INVERTED>;
- };
- };
-
- cros-pwmleds {
- compatible = "cros-ec,pwm-leds";
-
- leds = <&pwm_led0>;
-
- /*<red green blue>*/
- color-map-red = <100 0 0>;
- color-map-green = < 0 100 0>;
- color-map-blue = < 0 0 100>;
- color-map-yellow = < 0 50 50>;
- color-map-white = <100 100 100>;
- color-map-amber = <100 0 0>;
-
- brightness-range = <0 0 100 0 0 100>;
-
- #address-cells = <1>;
- #size-cells = <0>;
-
- pwm_led_0@0 {
- reg = <0>;
- ec-led-name = "EC_LED_ID_BATTERY_LED";
- };
- };
-};
-
-/* Enable LEDs to work while CPU suspended */
-
-&pwm0 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm0_gpc3>;
- pinctrl-names = "default";
-};
-
-&pwm1 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm1_gpc2>;
- pinctrl-names = "default";
-};
-
-&pwm2 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/xivur/src/charger.c b/zephyr/program/nissa/xivur/src/charger.c
deleted file mode 100644
index 9dadb0f42f..0000000000
--- a/zephyr/program/nissa/xivur/src/charger.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <zephyr/logging/log.h>
-
-#include "battery.h"
-#include "charger.h"
-#include "charger/isl923x_public.h"
-#include "console.h"
-#include "extpower.h"
-#include "usb_pd.h"
-#include "nissa_common.h"
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-int extpower_is_present(void)
-{
- int port;
- int rv;
- bool acok;
-
- for (port = 0; port < board_get_usb_pd_port_count(); port++) {
- rv = raa489000_is_acok(port, &acok);
- if ((rv == EC_SUCCESS) && acok)
- return 1;
- }
-
- return 0;
-}
-
-/*
- * Nivviks does not have a GPIO indicating whether extpower is present,
- * so detect using the charger(s).
- */
-__override void board_check_extpower(void)
-{
- static int last_extpower_present;
- int extpower_present = extpower_is_present();
-
- if (last_extpower_present ^ extpower_present)
- extpower_handle_update(extpower_present);
-
- last_extpower_present = extpower_present;
-}
-
-__override void board_hibernate(void)
-{
- /* Shut down the chargers */
- if (board_get_usb_pd_port_count() == 2)
- raa489000_hibernate(CHARGER_SECONDARY, true);
- raa489000_hibernate(CHARGER_PRIMARY, true);
- LOG_INF("Charger(s) hibernated");
- cflush();
-}
diff --git a/zephyr/program/nissa/xivur/src/fan.c b/zephyr/program/nissa/xivur/src/fan.c
deleted file mode 100644
index 840049722c..0000000000
--- a/zephyr/program/nissa/xivur/src/fan.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <zephyr/devicetree.h>
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-
-#include "cros_cbi.h"
-#include "fan.h"
-#include "gpio/gpio.h"
-#include "hooks.h"
-
-#include "nissa_common.h"
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-/*
- * Nirwen fan support
- */
-static void fan_init(void)
-{
- int ret;
- uint32_t val;
- /*
- * Retrieve the fan config.
- */
- ret = cros_cbi_get_fw_config(FW_FAN, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_FAN);
- return;
- }
- if (val != FW_FAN_PRESENT) {
- /* Disable the fan */
- fan_set_count(0);
- } else {
- /* Configure the fan enable GPIO */
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_fan_enable),
- GPIO_OUTPUT);
- }
-}
-DECLARE_HOOK(HOOK_INIT, fan_init, HOOK_PRIO_POST_FIRST);
diff --git a/zephyr/program/nissa/xivur/src/form_factor.c b/zephyr/program/nissa/xivur/src/form_factor.c
deleted file mode 100644
index 602b22baff..0000000000
--- a/zephyr/program/nissa/xivur/src/form_factor.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <zephyr/devicetree.h>
-#include <zephyr/logging/log.h>
-
-#include "accelgyro.h"
-#include "cros_cbi.h"
-#include "hooks.h"
-#include "motionsense_sensors.h"
-
-#include "nissa_common.h"
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-/*
- * Mainboard orientation support.
- */
-
-#define ALT_MAT SENSOR_ROT_STD_REF_NAME(DT_NODELABEL(base_rot_inverted))
-#define BASE_SENSOR SENSOR_ID(DT_NODELABEL(base_accel))
-#define BASE_GYRO SENSOR_ID(DT_NODELABEL(base_gyro))
-
-static void form_factor_init(void)
-{
- int ret;
- uint32_t val;
- /*
- * If the firmware config indicates
- * an inverted form factor, use the alternative
- * rotation matrix.
- */
- ret = cros_cbi_get_fw_config(FW_BASE_INVERSION, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d",
- FW_BASE_INVERSION);
- return;
- }
- if (val == FW_BASE_INVERTED) {
- LOG_INF("Switching to inverted base");
- motion_sensors[BASE_SENSOR].rot_standard_ref = &ALT_MAT;
- motion_sensors[BASE_GYRO].rot_standard_ref = &ALT_MAT;
- }
-}
-DECLARE_HOOK(HOOK_INIT, form_factor_init, HOOK_PRIO_POST_I2C);
diff --git a/zephyr/program/nissa/xivur/src/keyboard.c b/zephyr/program/nissa/xivur/src/keyboard.c
deleted file mode 100644
index 2bc1d203a7..0000000000
--- a/zephyr/program/nissa/xivur/src/keyboard.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ec_commands.h"
-
-static const struct ec_response_keybd_config xivur_kb = {
- .num_top_row_keys = 10,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_REFRESH, /* T2 */
- TK_FULLSCREEN, /* T3 */
- TK_OVERVIEW, /* T4 */
- TK_SNAPSHOT, /* T5 */
- TK_BRIGHTNESS_DOWN, /* T6 */
- TK_BRIGHTNESS_UP, /* T7 */
- TK_VOL_MUTE, /* T8 */
- TK_VOL_DOWN, /* T9 */
- TK_VOL_UP, /* T10 */
- },
- .capabilities = KEYBD_CAP_SCRNLOCK_KEY,
-};
-
-__override const struct ec_response_keybd_config *
-board_vivaldi_keybd_config(void)
-{
- return &xivur_kb;
-}
diff --git a/zephyr/program/nissa/xivur/src/led.c b/zephyr/program/nissa/xivur/src/led.c
deleted file mode 100644
index 9087982604..0000000000
--- a/zephyr/program/nissa/xivur/src/led.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * Battery LED control for nissa
- */
-#include "common.h"
-#include "ec_commands.h"
-#include "led_common.h"
-#include "led_onoff_states.h"
-#include "led_pwm.h"
-
-__override const int led_charge_lvl_1 = 5;
-__override const int led_charge_lvl_2 = 97;
-__override struct led_descriptor
- led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
- [STATE_CHARGING_LVL_1] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_CHARGING_LVL_2] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_CHARGING_FULL_CHARGE] = { { EC_LED_COLOR_BLUE,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S0] = { { EC_LED_COLOR_BLUE,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S0_BAT_LOW] = { { EC_LED_COLOR_AMBER,
- LED_INDEFINITE } },
- [STATE_DISCHARGE_S3] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_DISCHARGE_S5] = { { LED_OFF, LED_INDEFINITE } },
- [STATE_BATTERY_ERROR] = { { EC_LED_COLOR_AMBER,
- 1 * LED_ONE_SEC },
- { LED_OFF, 1 * LED_ONE_SEC } },
- [STATE_FACTORY_TEST] = { { EC_LED_COLOR_AMBER,
- 2 * LED_ONE_SEC },
- { EC_LED_COLOR_BLUE,
- 2 * LED_ONE_SEC } },
- };
-
-__override void led_set_color_battery(enum ec_led_colors color)
-{
- switch (color) {
- case EC_LED_COLOR_BLUE:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_BLUE);
- break;
- case EC_LED_COLOR_AMBER:
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, EC_LED_COLOR_AMBER);
- break;
- default: /* LED_OFF and other unsupported colors */
- set_pwm_led_color(EC_LED_ID_BATTERY_LED, -1);
- break;
- }
-}
diff --git a/zephyr/program/nissa/xivur/src/usbc.c b/zephyr/program/nissa/xivur/src/usbc.c
deleted file mode 100644
index a15460a212..0000000000
--- a/zephyr/program/nissa/xivur/src/usbc.c
+++ /dev/null
@@ -1,277 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <zephyr/logging/log.h>
-
-#include "charge_state_v2.h"
-#include "chipset.h"
-#include "hooks.h"
-#include "usb_mux.h"
-#include "system.h"
-#include "driver/charger/isl923x_public.h"
-#include "driver/retimer/anx7483_public.h"
-#include "driver/tcpm/tcpci.h"
-#include "driver/tcpm/raa489000.h"
-
-#include "nissa_common.h"
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-struct tcpc_config_t tcpc_config[CONFIG_USB_PD_PORT_MAX_COUNT] = {
- {
- .bus_type = EC_BUS_TYPE_I2C,
- .i2c_info = {
- .port = I2C_PORT_USB_C0_TCPC,
- .addr_flags = RAA489000_TCPC0_I2C_FLAGS,
- },
- .drv = &raa489000_tcpm_drv,
- /* RAA489000 implements TCPCI 2.0 */
- .flags = TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_VBUS_MONITOR,
- },
- { /* sub-board */
- .bus_type = EC_BUS_TYPE_I2C,
- .i2c_info = {
- .port = I2C_PORT_USB_C1_TCPC,
- .addr_flags = RAA489000_TCPC0_I2C_FLAGS,
- },
- .drv = &raa489000_tcpm_drv,
- /* RAA489000 implements TCPCI 2.0 */
- .flags = TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_VBUS_MONITOR,
- },
-};
-
-int board_is_sourcing_vbus(int port)
-{
- int regval;
-
- tcpc_read(port, TCPC_REG_POWER_STATUS, &regval);
- return !!(regval & TCPC_REG_POWER_STATUS_SOURCING_VBUS);
-}
-
-int board_set_active_charge_port(int port)
-{
- int is_real_port = (port >= 0 && port < CONFIG_USB_PD_PORT_MAX_COUNT);
- int i;
- int old_port;
-
- if (!is_real_port && port != CHARGE_PORT_NONE)
- return EC_ERROR_INVAL;
-
- old_port = charge_manager_get_active_charge_port();
-
- LOG_INF("New chg p%d", port);
-
- /* Disable all ports. */
- if (port == CHARGE_PORT_NONE) {
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- tcpc_write(i, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_LOW);
- raa489000_enable_asgate(i, false);
- }
-
- return EC_SUCCESS;
- }
-
- /* Check if port is sourcing VBUS. */
- if (board_is_sourcing_vbus(port)) {
- LOG_WRN("Skip enable p%d", port);
- return EC_ERROR_INVAL;
- }
-
- /*
- * Turn off the other ports' sink path FETs, before enabling the
- * requested charge port.
- */
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- if (i == port)
- continue;
-
- if (tcpc_write(i, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_LOW))
- LOG_WRN("p%d: sink path disable failed.", i);
- raa489000_enable_asgate(i, false);
- }
-
- /*
- * Stop the charger IC from switching while changing ports. Otherwise,
- * we can overcurrent the adapter we're switching to. (crbug.com/926056)
- */
- if (old_port != CHARGE_PORT_NONE)
- charger_discharge_on_ac(1);
-
- /* Enable requested charge port. */
- if (raa489000_enable_asgate(port, true) ||
- tcpc_write(port, TCPC_REG_COMMAND,
- TCPC_REG_COMMAND_SNK_CTRL_HIGH)) {
- LOG_WRN("p%d: sink path enable failed.", port);
- charger_discharge_on_ac(0);
- return EC_ERROR_UNKNOWN;
- }
-
- /* Allow the charger IC to begin/continue switching. */
- charger_discharge_on_ac(0);
-
- return EC_SUCCESS;
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- uint16_t status = 0;
- int regval;
-
- /*
- * The interrupt line is shared between the TCPC and BC1.2 detector IC.
- * Therefore, go out and actually read the alert registers to report the
- * alert status.
- */
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl))) {
- if (!tcpc_read16(0, TCPC_REG_ALERT, &regval)) {
- /* The TCPCI Rev 1.0 spec says to ignore bits 14:12. */
- if (!(tcpc_config[0].flags & TCPC_FLAGS_TCPCI_REV2_0))
- regval &= ~((1 << 14) | (1 << 13) | (1 << 12));
-
- if (regval)
- status |= PD_STATUS_TCPC_ALERT_0;
- }
- }
-
- if (board_get_usb_pd_port_count() == 2 &&
- !gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- if (!tcpc_read16(1, TCPC_REG_ALERT, &regval)) {
- /* TCPCI spec Rev 1.0 says to ignore bits 14:12. */
- if (!(tcpc_config[1].flags & TCPC_FLAGS_TCPCI_REV2_0))
- regval &= ~((1 << 14) | (1 << 13) | (1 << 12));
-
- if (regval)
- status |= PD_STATUS_TCPC_ALERT_1;
- }
- }
-
- return status;
-}
-
-void pd_power_supply_reset(int port)
-{
- /* Disable VBUS */
- tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SRC_CTRL_LOW);
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-__override void typec_set_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- if (port < 0 || port >= CONFIG_USB_PD_PORT_MAX_COUNT)
- return;
-
- raa489000_set_output_current(port, rp);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- int rv;
-
- if (port >= CONFIG_USB_PD_PORT_MAX_COUNT)
- return EC_ERROR_INVAL;
-
- /* Disable charging. */
- rv = tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SNK_CTRL_LOW);
- if (rv)
- return rv;
-
- /* Our policy is not to source VBUS when the AP is off. */
- if (chipset_in_state(CHIPSET_STATE_ANY_OFF))
- return EC_ERROR_NOT_POWERED;
-
- /* Provide Vbus. */
- rv = tcpc_write(port, TCPC_REG_COMMAND, TCPC_REG_COMMAND_SRC_CTRL_HIGH);
- if (rv)
- return rv;
-
- rv = raa489000_enable_asgate(port, true);
- if (rv)
- return rv;
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-void board_reset_pd_mcu(void)
-{
- /*
- * TODO(b:147316511): could send a reset command to the TCPC here
- * if needed.
- */
-}
-
-/*
- * Because the TCPCs and BC1.2 chips share interrupt lines, it's possible
- * for an interrupt to be lost if one asserts the IRQ, the other does the same
- * then the first releases it: there will only be one falling edge to trigger
- * the interrupt, and the line will be held low. We handle this by running a
- * deferred check after a falling edge to see whether the IRQ is still being
- * asserted. If it is, we assume an interrupt may have been lost and we need
- * to poll each chip for events again.
- */
-#define USBC_INT_POLL_DELAY_US 5000
-
-static void poll_c0_int(void);
-DECLARE_DEFERRED(poll_c0_int);
-static void poll_c1_int(void);
-DECLARE_DEFERRED(poll_c1_int);
-
-static void usbc_interrupt_trigger(int port)
-{
- schedule_deferred_pd_interrupt(port);
- usb_charger_task_set_event(port, USB_CHG_EVENT_BC12);
-}
-
-static inline void poll_usb_gpio(int port, const struct gpio_dt_spec *gpio,
- const struct deferred_data *ud)
-{
- if (!gpio_pin_get_dt(gpio)) {
- usbc_interrupt_trigger(port);
- hook_call_deferred(ud, USBC_INT_POLL_DELAY_US);
- }
-}
-
-static void poll_c0_int(void)
-{
- poll_usb_gpio(0, GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl),
- &poll_c0_int_data);
-}
-
-static void poll_c1_int(void)
-{
- poll_usb_gpio(1, GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl),
- &poll_c1_int_data);
-}
-
-void usb_interrupt(enum gpio_signal signal)
-{
- int port;
- const struct deferred_data *ud;
-
- if (signal == GPIO_SIGNAL(DT_NODELABEL(gpio_usb_c0_int_odl))) {
- port = 0;
- ud = &poll_c0_int_data;
- } else {
- port = 1;
- ud = &poll_c1_int_data;
- }
- /*
- * We've just been called from a falling edge, so there's definitely
- * no lost IRQ right now. Cancel any pending check.
- */
- hook_call_deferred(ud, -1);
- /* Trigger polling of TCPC and BC1.2 in respective tasks */
- usbc_interrupt_trigger(port);
- /* Check for lost interrupts in a bit */
- hook_call_deferred(ud, USBC_INT_POLL_DELAY_US);
-}
diff --git a/zephyr/program/nissa/yaviks/cbi.dtsi b/zephyr/program/nissa/yaviks/cbi.dtsi
deleted file mode 100644
index c5716cbd37..0000000000
--- a/zephyr/program/nissa/yaviks/cbi.dtsi
+++ /dev/null
@@ -1,99 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- /* Yaviks-specific fw_config fields. */
- nissa-fw-config {
- /*
- * FW_CONFIG field for multiple wi-fi SAR.
- *
- * start = <2>;
- * size = <2>;
- */
-
- /*
- * FW_CONFIG field to enable fan or not.
- */
- fan {
- enum-name = "FW_FAN";
- start = <4>;
- size = <1>;
-
- no-fan {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FAN_NOT_PRESENT";
- value = <0>;
- };
- fan-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FAN_PRESENT";
- value = <1>;
- /*
- * Set as default so that unprovisioned
- * configs will run the fan regardless.
- */
- default;
- };
- };
-
- /*
- * FW_CONFIG field to indicate which keyboard layout
- * should be used.
- */
- keyboard {
- enum-name = "FW_KB_LAYOUT";
- start = <5>;
- size = <1>;
-
- layout-1 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_LAYOUT_DEFAULT";
- value = <0>;
- default;
- };
- layout-2 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_LAYOUT_US2";
- value = <1>;
- };
- };
-
- /*
- * FW_CONFIG field to indicate which keyboard layout
- * should be used.
- */
- keyboard-backlight {
- enum-name = "FW_KB_BACKLIGHT";
- start = <6>;
- size = <1>;
-
- without-keyboard-backlight {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_BACKLIGHT_OFF";
- value = <1>;
- };
- with-keyboard-backlight {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_BACKLIGHT_ON";
- value = <0>;
- default;
- };
- };
-
- /*
- * FW_CONFIG field for multiple touch panel.
- *
- * start = <7>;
- * size = <2>;
- */
-
- /*
- * FW_CONFIG field for multiple storage.
- *
- * start = <31>;
- * size = <1>;
- */
- };
-};
diff --git a/zephyr/program/nissa/yaviks/fan.dtsi b/zephyr/program/nissa/yaviks/fan.dtsi
deleted file mode 100644
index 229530b57a..0000000000
--- a/zephyr/program/nissa/yaviks/fan.dtsi
+++ /dev/null
@@ -1,71 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-/ {
- fans {
- compatible = "cros-ec,fans";
- fan_0 {
- pwms = <&pwm2 PWM_CHANNEL_2 PWM_KHZ(25) PWM_POLARITY_NORMAL>;
- tach = <&tach1>;
- rpm_min = <2500>;
- rpm_start = <2500>;
- rpm_max = <4100>;
- rpm_deviation = <1>;
- enable_gpio = <&gpio_fan_enable>;
- };
- };
- fan_steps {
- compatible = "cros-ec,fan-steps";
- level_0 {
- temp_on = <44 47 0>;
- temp_off = <99 99 99>;
- rpm_target = <0>;
- };
- level_1 {
- temp_on = <48 48 0>;
- temp_off = <43 45 99>;
- rpm_target = <2600>;
- };
- level_2 {
- temp_on = <50 49 0>;
- temp_off = <47 46 99>;
- rpm_target = <2800>;
- };
- level_3 {
- temp_on = <52 50 54>;
- temp_off = <49 47 51>;
- rpm_target = <3000>;
- };
- level_4 {
- temp_on = <54 56 60>;
- temp_off = <51 48 52>;
- rpm_target = <3300>;
- };
- level_5 {
- temp_on = <60 60 64>;
- temp_off = <53 52 56>;
- rpm_target = <3600>;
- };
- level_6 {
- temp_on = <100 100 100>;
- temp_off = <59 54 58>;
- rpm_target = <4100>;
- };
- };
-};
-/* pwm for fan */
-&pwm2 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C6>;
- pinctrl-0 = <&pwm2_gpa2_default>;
- pinctrl-names = "default";
-};
-/* fan tachometer sensor */
-&tach1 {
- status = "okay";
- channel = <IT8XXX2_TACH_CHANNEL_A>;
- pulses-per-round = <2>;
- pinctrl-0 = <&tach1a_gpd7_default>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/yaviks/gpio.dtsi b/zephyr/program/nissa/yaviks/gpio.dtsi
deleted file mode 100644
index dae1d641cd..0000000000
--- a/zephyr/program/nissa/yaviks/gpio.dtsi
+++ /dev/null
@@ -1,232 +0,0 @@
-/*
- * Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
-
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_ec_vsense_pp1050_proc: ec_vsense_pp1050_proc {
- enum-name = "ADC_PP1050_PROC";
- io-channels = <&adc0 14>;
- };
- adc_ec_vsense_pp3300_s5: ec_vsense_pp3300_s5 {
- enum-name = "ADC_PP3300_S5";
- io-channels = <&adc0 0>;
- };
- adc_temp_sensor_1: temp_sensor_1 {
- enum-name = "ADC_TEMP_SENSOR_1";
- io-channels = <&adc0 2>;
- };
- adc_temp_sensor_2: temp_sensor_2 {
- enum-name = "ADC_TEMP_SENSOR_2";
- io-channels = <&adc0 3>;
- };
- adc_temp_sensor_3: temp_sensor_3 {
- enum-name = "ADC_TEMP_SENSOR_3";
- io-channels = <&adc0 13>;
- };
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_all_sys_pwrgd: all_sys_pwrgd {
- gpios = <&gpiob 7 GPIO_INPUT>;
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioh 5 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- gpio_cpu_c10_gate_l: cpu_c10_gate_l {
- gpios = <&gpiog 1 GPIO_INPUT>;
- };
- gpio_ec_battery_pres_odl: ec_battery_pres_odl {
- gpios = <&gpioi 4 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpioj 5 GPIO_OUTPUT>;
- };
- gpio_ec_edp_bl_en_od: ec_edp_bl_en_od {
- gpios = <&gpiok 4 GPIO_ODR_HIGH>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- gpio_ec_entering_rw: ec_entering_rw {
- gpios = <&gpioc 7 GPIO_OUTPUT>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_ec_gsc_packet_mode: ec_gsc_packet_mode {
- gpios = <&gpioh 1 GPIO_OUTPUT>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ec_pch_wake_odl: ec_pch_wake_odl {
- gpios = <&gpiob 2 GPIO_ODR_LOW>;
- };
- gpio_ec_prochot_odl: ec_prochot_odl {
- gpios = <&gpioi 1 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- };
- gpio_ec_soc_dsw_pwrok: ec_soc_dsw_pwrok {
- gpios = <&gpiol 7 GPIO_OUTPUT>;
- no-auto-init;
- };
- gpio_ec_soc_int_odl: ec_soc_int_odl {
- gpios = <&gpiod 5 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_ec_soc_pch_pwrok_od: ec_soc_pch_pwrok_od {
- gpios = <&gpiod 6 GPIO_ODR_HIGH>;
- no-auto-init;
- };
- gpio_ec_soc_pwr_btn_odl: ec_soc_pwr_btn_odl {
- gpios = <&gpiob 6 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- gpio_ec_soc_rsmrst_l: ec_soc_rsmrst_l {
- gpios = <&gpioh 0 GPIO_OUTPUT>;
- no-auto-init;
- };
- gpio_ec_soc_rtcrst: ec_soc_rtcrst {
- gpios = <&gpiok 2 GPIO_OUTPUT>;
- };
- gpio_ec_soc_sys_pwrok: ec_soc_sys_pwrok {
- gpios = <&gpiof 2 GPIO_OUTPUT>;
- no-auto-init;
- };
- gpio_ec_soc_vccst_pwrgd_od: ec_soc_vccst_pwrgd_od {
- gpios = <&gpioe 5 GPIO_ODR_HIGH>;
- no-auto-init;
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpioa 6 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_en_pp3300_s5: en_pp3300_s5 {
- gpios = <&gpioc 5 GPIO_OUTPUT>;
- enum-name = "GPIO_TEMP_SENSOR_POWER";
- no-auto-init;
- };
- gpio_en_pp5000_pen_x: en_pp5000_pen_x {
- gpios = <&gpiob 5 GPIO_OUTPUT>;
- };
- gpio_en_pp5000_s5: en_pp5000_s5 {
- gpios = <&gpiok 5 GPIO_OUTPUT>;
- no-auto-init;
- };
- gpio_en_slp_z: en_slp_z {
- gpios = <&gpiok 3 GPIO_OUTPUT>;
- };
- gpio_en_usb_a0_vbus: en_usb_a0_vbus {
- gpios = <&gpiol 6 GPIO_OUTPUT>;
- };
- gpio_en_usb_c0_cc1_vconn: en_usb_c0_cc1_vconn {
- gpios = <&gpioh 4 GPIO_OUTPUT>;
- };
- gpio_en_usb_c0_cc2_vconn: en_usb_c0_cc2_vconn {
- gpios = <&gpioh 6 GPIO_OUTPUT>;
- };
- gpio_gsc_ec_pwr_btn_odl: gsc_ec_pwr_btn_odl {
- gpios = <&gpioe 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_imvp91_vrrdy_od: imvp91_vrrdy_od {
- gpios = <&gpioj 4 GPIO_INPUT>;
- no-auto-init;
- };
- gpio_lid_open: lid_open {
- gpios = <&gpiof 3 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_pen_detect_odl: pen_detect_odl {
- gpios = <&gpioj 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_pg_pp1050_mem_s3_od: pg_pp1050_mem_s3_od {
- gpios = <&gpiod 3 GPIO_INPUT>;
- };
- gpio_pg_pp5000_s5_od: pg_pp5000_s5_od {
- gpios = <&gpioe 3 GPIO_INPUT>;
- };
- gpio_rsmrst_pwrgd_l: rsmrst_pwrgd_l {
- gpios = <&gpioe 1 GPIO_INPUT_PULL_UP>;
- no-auto-init;
- };
- gpio_slp_s0_l: slp_s0_l {
- gpios = <&gpioe 4 GPIO_INPUT>;
- no-auto-init;
- };
- gpio_slp_s3_l: slp_s3_l {
- gpios = <&gpioh 3 GPIO_INPUT>;
- no-auto-init;
- };
- gpio_slp_s4_l: slp_s4_l {
- gpios = <&gpioi 5 GPIO_INPUT>;
- };
- gpio_slp_sus_l: slp_sus_l {
- gpios = <&gpiog 2 GPIO_INPUT>;
- no-auto-init;
- };
- gpio_sub_usb_a1_ilimit_sdp: sub_usb_a1_ilimit_sdp {
- gpios = <&gpiof 1 GPIO_OUTPUT>;
- enum-name = "GPIO_USB2_ILIM_SEL";
- };
- gpio_sys_rst_odl: sys_rst_odl {
- gpios = <&gpiod 1 GPIO_ODR_HIGH>;
- no-auto-init;
- };
- gpio_usb_a0_ilimit_sdp: usb_a0_ilimit_sdp {
- gpios = <&gpiol 5 GPIO_OUTPUT>;
- enum-name = "GPIO_USB1_ILIM_SEL";
- };
- gpio_usb_c0_frs: usb_c0_frs {
- gpios = <&gpioc 4 GPIO_OUTPUT>;
- };
- gpio_usb_c0_int_odl: usb_c0_int_odl {
- gpios = <&gpiok 0 GPIO_INPUT_PULL_UP>;
- };
- gpio_vccin_aux_vid0: vccin_aux_vid0 {
- gpios = <&gpiod 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_vccin_aux_vid1: vccin_aux_vid1 {
- gpios = <&gpiok 1 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_c1_charger_led_white_l: c1_charger_led_white_l {
- gpios = <&gpiol 4 GPIO_OUTPUT_HIGH>;
- };
- gpio_c1_charger_led_amber_l: c1_charger_led_amber_l {
- gpios = <&gpiod 4 GPIO_OUTPUT_HIGH>;
- };
- gpio_c0_charger_led_white_l: c0_charger_led_white_l {
- gpios = <&gpioc 3 GPIO_OUTPUT_HIGH>;
- };
- gpio_c0_charger_led_amber_l: c0_charger_led_amber_l {
- gpios = <&gpioj 7 GPIO_OUTPUT_HIGH>;
- };
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_ec_i2c_eeprom: ec_i2c_eeprom {
- i2c-port = <&i2c0>;
- enum-names = "I2C_PORT_EEPROM";
- };
- i2c_ec_i2c_batt: ec_i2c_batt {
- i2c-port = <&i2c1>;
- enum-names = "I2C_PORT_BATTERY";
- };
- i2c_ec_i2c_sensor: ec_i2c_sensor {
- i2c-port = <&i2c2>;
- enum-names = "I2C_PORT_SENSOR";
- };
- i2c_ec_i2c_sub_usb_c1: ec_i2c_sub_usb_c1 {
- i2c-port = <&i2c4>;
- enum-names = "I2C_PORT_USB_C1_TCPC";
- };
- i2c_ec_i2c_usb_c0: ec_i2c_usb_c0 {
- i2c-port = <&i2c5>;
- enum-names = "I2C_PORT_USB_C0_TCPC";
- };
- };
-};
diff --git a/zephyr/program/nissa/yaviks/keyboard.dtsi b/zephyr/program/nissa/yaviks/keyboard.dtsi
deleted file mode 100644
index 04a620767a..0000000000
--- a/zephyr/program/nissa/yaviks/keyboard.dtsi
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- kblight {
- compatible = "cros-ec,kblight-pwm";
- /*
- * Use 324 Hz so that 32Khz clock source is used,
- * which is not gated in power saving mode.
- */
- pwms = <&pwm0 0 PWM_HZ(324) PWM_POLARITY_NORMAL>;
- };
-};
-
-&pwm0 {
- status = "okay";
- prescaler-cx = <PWM_PRESCALER_C4>;
- pinctrl-0 = <&pwm0_gpa0_default>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/nissa/yaviks/overlay.dtsi b/zephyr/program/nissa/yaviks/overlay.dtsi
deleted file mode 100644
index 2b5f1e453d..0000000000
--- a/zephyr/program/nissa/yaviks/overlay.dtsi
+++ /dev/null
@@ -1,383 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-#include <dt-bindings/usb_pd_tcpm.h>
-
-/ {
- aliases {
- gpio-cbi-wp = &gpio_ec_cbi_wp;
- gpio-wp = &gpio_ec_wp_odl;
- int-wp = &int_wp_l;
- /*
- * USB-C: interrupt input.
- * I2C pins are on i2c_ec_i2c_sub_usb_c1
- */
- gpio-usb-c1-int-odl = &gpio_sb_1;
- /*
- * USB-A: VBUS enable output
- * LTE: power enable output
- */
- gpio-en-usb-a1-vbus = &gpio_sb_2;
- /*
- * Enable S5 rails for LTE sub-board
- */
- gpio-en-sub-s5-rails = &gpio_sb_2;
- };
-
- ec-console {
- compatible = "ec-console";
- disabled = "events", "lpc", "hostcmd";
- };
-
- batteries {
- default_battery: cosmx {
- compatible = "cosmx,gh02047xl", "battery-smart";
- };
- dynapack_atl_gh02047xl {
- compatible = "dynapack,atl_gh02047xl", "battery-smart";
- };
- dynapack_cosmx_gh02047xl {
- compatible = "dynapack,cosmx_gh02047xl", "battery-smart";
- };
- smp_coslight_gh02047xl {
- compatible = "smp,coslight_gh02047xl", "battery-smart";
- };
- smp_highpower_gh02047xl {
- compatible = "smp,highpower_gh02047xl", "battery-smart";
- };
- default_battery_3s:cosmx_si03058xl {
- compatible = "cosmx,si03058xl", "battery-smart";
- };
- smp_highpower_si03058xl {
- compatible = "smp,highpower_si03058xl", "battery-smart";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_power_button
- &int_lid_open
- >;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_power_button: power_button {
- irq-pin = <&gpio_gsc_ec_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_wp_l: wp_l {
- irq-pin = <&gpio_ec_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_usb_c0: usb_c0 {
- irq-pin = <&gpio_usb_c0_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_c0_interrupt";
- };
- int_usb_c1: usb_c1 {
- irq-pin = <&gpio_sb_1>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_c1_interrupt";
- };
- };
-
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios = <&gpioa 7 0>,
- <&gpioc 0 0>,
- <&gpioc 6 0>,
- <&gpiod 7 0>,
- <&gpioh 2 0>,
- <&gpioi 6 0>,
- <&gpioi 7 0>,
- <&gpioj 0 0>,
- <&gpioj 3 0>,
- <&gpiok 7 GPIO_OUTPUT>;
- };
-
- named-gpios {
- /*
- * EC doesn't take any specific action on CC/SBU disconnect due to
- * fault, but this definition is useful for hardware testing.
- */
- gpio_usb_c0_prot_fault_odl: usb_c0_prot_fault_odl {
- gpios = <&gpiok 6 GPIO_INPUT_PULL_UP>;
- };
-
- gpio_sb_1: sb_1 {
- gpios = <&gpioe 6 0>;
- no-auto-init;
- };
- gpio_sb_2: sb_2 {
- gpios = <&gpiof 0 0>;
- no-auto-init;
- };
- gpio_fan_enable: fan-enable {
- gpios = <&gpioa 1 GPIO_OUTPUT>;
- no-auto-init;
- };
- };
-
- temp_cpu_thermistor: cpu {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_1>;
- };
- temp_5v_regulator_thermistor: 5v-regulator {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_2>;
- };
- temp_charger_thermistor: charger {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_51K1_47K_4050B>;
- adc = <&adc_temp_sensor_3>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- temp_cpu: cpu {
- temp_fan_off = <45>;
- temp_fan_max = <60>;
- temp_host_high = <75>;
- temp_host_halt = <85>;
- temp_host_release_high = <65>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_cpu_thermistor>;
- };
- temp_5v_regulator: 5v-regulator {
- temp_fan_off = <50>;
- temp_fan_max = <65>;
- temp_host_high = <75>;
- temp_host_halt = <85>;
- temp_host_release_high = <65>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_5v_regulator_thermistor>;
- };
- temp_charger: charger {
- temp_fan_off = <50>;
- temp_fan_max = <65>;
- temp_host_high = <80>;
- temp_host_halt = <85>;
- temp_host_release_high = <75>;
- power-good-pin = <&gpio_ec_soc_dsw_pwrok>;
- sensor = <&temp_charger_thermistor>;
- };
- };
-
- usba {
- compatible = "cros-ec,usba-port-enable-pins";
- /*
- * sb_2 is only configured as GPIO when USB-A1 is present,
- * but it's still safe to control when disabled.
- *
- * ILIM_SEL pins are referred to by legacy enum name,
- * GPIO_USB*_ILIM_SEL. The one for port A1 is unused on
- * sub-boards that don't have USB-A so is safe to control
- * regardless of system configuration.
- */
- enable-pins = <&gpio_en_usb_a0_vbus &gpio_sb_2>;
- status = "okay";
- };
-
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- chg = <&chg_port0>;
- tcpc = <&usbpd0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_0>;
- };
- };
- port0-muxes {
- virtual_mux_0: virtual-mux-0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&bc12_port1>;
- chg = <&chg_port1>;
- tcpc = <&tcpc_port1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_1 &tcpci_mux_1>;
- };
- usb_mux_chain_1_no_mux: usb-mux-chain-1-no-mux {
- compatible = "cros-ec,usb-mux-chain";
- alternative-chain;
- usb-muxes = <&virtual_mux_1>;
- };
- };
- port1-muxes {
- virtual_mux_1: virtual-mux-1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- tcpci_mux_1: tcpci-mux-1 {
- compatible = "parade,usbc-mux-ps8xxx";
- };
- };
- };
-};
-
-&thermistor_3V3_51K1_47K_4050B {
- status = "okay";
-};
-
-&adc_ec_vsense_pp3300_s5 {
- /*
- * Voltage divider on input has 47k upper and 220k lower legs with 3 V
- * full-scale reading on the ADC. Apply the largest possible multiplier
- * (without overflowing int32) to get the best possible approximation
- * of the actual ratio, but derate by a factor of two to ensure
- * unexpectedly high values won't overflow.
- */
- mul = <(715828 / 2)>;
- div = <(589820 / 2)>;
-};
-
-&adc0 {
- pinctrl-0 = <&adc0_ch0_gpi0_default
- &adc0_ch2_gpi2_default
- &adc0_ch3_gpi3_default
- &adc0_ch13_gpl0_default
- &adc0_ch14_gpl1_default>;
- pinctrl-names = "default";
- status = "okay";
-};
-
-&pinctrl {
- i2c4_clk_gpe0_sleep: i2c4_clk_gpe0_sleep {
- pinmuxs = <&pinctrle 0 IT8XXX2_ALT_DEFAULT>;
- };
- i2c4_data_gpe7_sleep: i2c4_data_gpe7_sleep {
- pinmuxs = <&pinctrle 7 IT8XXX2_ALT_DEFAULT>;
- };
- i2c2_clk_gpf6_default: i2c2_clk_gpf6_default {
- gpio-voltage = "1v8";
- };
- i2c2_data_gpf7_default: i2c2_data_gpf7_default {
- gpio-voltage = "1v8";
- };
-};
-
-&i2c0 {
- label = "I2C_EEPROM";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- label = "EEPROM_CBI";
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
- pinctrl-0 = <&i2c0_clk_gpb3_default
- &i2c0_data_gpb4_default>;
- pinctrl-names = "default";
- status = "okay";
-};
-
-&i2c1 {
- label = "I2C_BATTERY";
- clock-frequency = <50000>;
- pinctrl-0 = <&i2c1_clk_gpc1_default
- &i2c1_data_gpc2_default>;
- pinctrl-names = "default";
- status = "okay";
-};
-
-&i2c2 {
- label = "I2C_SENSOR";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c2_clk_gpf6_default
- &i2c2_data_gpf7_default>;
- pinctrl-names = "default";
- status = "okay";
-};
-
-&i2c4 {
- label = "I2C_SUB_C1_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c4_clk_gpe0_default
- &i2c4_data_gpe7_default>;
- pinctrl-1 = <&i2c4_clk_gpe0_sleep
- &i2c4_data_gpe7_sleep>;
- pinctrl-names = "default", "sleep";
- status = "okay";
-
- bc12_port1: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- };
-
- chg_port1: sm5803@32 {
- compatible = "siliconmitus,sm5803";
- status = "okay";
- reg = <0x32>;
- };
-
- tcpc_port1: ps8745@b {
- compatible = "parade,ps8xxx";
- reg = <0xb>;
- tcpc-flags = <(TCPC_FLAGS_TCPCI_REV2_0)>;
- };
-};
-
-&i2c_ec_i2c_sub_usb_c1 {
- /*
- * Dynamic speed setting is used for AP-controlled firmware update
- * of PS8745 TCPC/redriver: the AP lowers speed to 400 kHz in order
- * to use more efficient window programming, then sets it back when
- * done.
- */
- dynamic-speed;
-};
-
-&i2c5 {
- label = "I2C_USB_C0_TCPC";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c5_clk_gpa4_default
- &i2c5_data_gpa5_default>;
- pinctrl-names = "default";
- status = "okay";
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- };
-
- chg_port0: sm5803@32 {
- compatible = "siliconmitus,sm5803";
- status = "okay";
- reg = <0x32>;
- };
-};
-
-&usbpd0 {
- status = "okay";
-};
diff --git a/zephyr/program/nissa/yaviks/power_signals.dtsi b/zephyr/program/nissa/yaviks/power_signals.dtsi
deleted file mode 100644
index d64ac83150..0000000000
--- a/zephyr/program/nissa/yaviks/power_signals.dtsi
+++ /dev/null
@@ -1,180 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- chosen {
- intel-ap-pwrseq,espi = &espi0;
- };
-
- common-pwrseq {
- compatible = "intel,ap-pwrseq";
-
- sys-pwrok-delay = <10>;
- all-sys-pwrgd-timeout = <20>;
- };
-
- pwr-en-pp5000-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP5000_S5 enable output to regulator";
- enum-name = "PWR_EN_PP5000_A";
- gpios = <&gpiok 5 0>;
- output;
- };
- pwr-en-pp3300-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP3300_S5 enable output to LS";
- enum-name = "PWR_EN_PP3300_A";
- gpios = <&gpioc 5 0>;
- output;
- };
- pwr-pg-ec-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST power good from regulator";
- enum-name = "PWR_RSMRST";
- gpios = <&gpioe 1 0>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-pch-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST output to PCH";
- enum-name = "PWR_EC_PCH_RSMRST";
- gpios = <&gpioh 0 0>;
- output;
- };
- pwr-slp-s0-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S0_L input from PCH";
- enum-name = "PWR_SLP_S0";
- gpios = <&gpioe 4 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-s3-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S3_L input from PCH";
- enum-name = "PWR_SLP_S3";
- gpios = <&gpioh 3 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-sus-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_SUS_L input from PCH";
- enum-name = "PWR_SLP_SUS";
- gpios = <&gpiog 2 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-soc-dsw-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "DSW_PWROK output to PCH";
- enum-name = "PWR_EC_SOC_DSW_PWROK";
- gpios = <&gpiol 7 0>;
- output;
- };
- pwr-vccst-pwrgd-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VCCST_PWRGD output to PCH";
- enum-name = "PWR_VCCST_PWRGD";
- gpios = <&gpioe 5 (GPIO_OPEN_DRAIN | GPIO_VOLTAGE_1P8)>;
- output;
- };
- pwr-imvp9-vrrdy-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "VRRDY input from IMVP9";
- enum-name = "PWR_IMVP9_VRRDY";
- gpios = <&gpioj 4 0>;
- };
- pwr-pch-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PCH_PWROK output to PCH";
- enum-name = "PWR_PCH_PWROK";
- gpios = <&gpiod 6 GPIO_OPEN_DRAIN>;
- output;
- };
- pwr-ec-pch-sys-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_PWROK output to PCH";
- enum-name = "PWR_EC_PCH_SYS_PWROK";
- gpios = <&gpiof 2 0>;
- output;
- };
- pwr-sys-rst-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_RESET# output to PCH";
- enum-name = "PWR_SYS_RST";
- gpios = <&gpiod 1 (GPIO_ACTIVE_LOW|GPIO_OPEN_DRAIN)>;
- output;
- };
- pwr-slp-s4 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S4 virtual wire input from PCH";
- enum-name = "PWR_SLP_S4";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S4";
- vw-invert;
- };
- pwr-slp-s5 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S5 virtual wire input from PCH";
- enum-name = "PWR_SLP_S5";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S5";
- vw-invert;
- };
- pwr-all-sys-pwrgd {
- /*
- * This is a board level signal, since this
- * signal needs some special processing.
- */
- compatible = "intel,ap-pwrseq-external";
- dbg-label = "Combined all power good";
- enum-name = "PWR_ALL_SYS_PWRGD";
- };
- pwr-adc-pp3300 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP3300_PROC";
- enum-name = "PWR_DSW_PWROK";
- trigger-high = <&vcmp0>;
- trigger-low = <&vcmp1>;
- };
- pwr-adc-pp1p05 {
- compatible = "intel,ap-pwrseq-adc";
- dbg-label = "PP1P05_PROC";
- enum-name = "PWR_PG_PP1P05";
- trigger-high = <&vcmp2>;
- trigger-low = <&vcmp3>;
- };
-
-};
-
-&vcmp0 {
- status = "okay";
- scan-period = <IT8XXX2_VCMP_SCAN_PERIOD_600US>;
- comparison = <IT8XXX2_VCMP_GREATER>;
- /*
- * This is 90% of nominal voltage considering voltage
- * divider on ADC input.
- */
- threshold-mv = <2448>;
- io-channels = <&adc0 0>;
-};
-&vcmp1 {
- status = "okay";
- scan-period = <IT8XXX2_VCMP_SCAN_PERIOD_600US>;
- comparison = <IT8XXX2_VCMP_LESS_OR_EQUAL>;
- threshold-mv = <2448>;
- io-channels = <&adc0 0>;
-};
-&vcmp2 {
- status = "okay";
- scan-period = <IT8XXX2_VCMP_SCAN_PERIOD_600US>;
- comparison = <IT8XXX2_VCMP_GREATER>;
- /* Setting at 90% of nominal voltage */
- threshold-mv = <945>;
- io-channels = <&adc0 14>;
-};
-&vcmp3 {
- status = "okay";
- scan-period = <IT8XXX2_VCMP_SCAN_PERIOD_600US>;
- comparison = <IT8XXX2_VCMP_LESS_OR_EQUAL>;
- threshold-mv = <945>;
- io-channels = <&adc0 14>;
-};
diff --git a/zephyr/program/nissa/yaviks/project.conf b/zephyr/program/nissa/yaviks/project.conf
deleted file mode 100644
index 80a9e9ea97..0000000000
--- a/zephyr/program/nissa/yaviks/project.conf
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_BOARD_YAVIKS=y
-
-# Ensure recovery key combination (esc+refresh+power) is reliable: b/236580049
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI3=y
-CONFIG_PLATFORM_EC_KEYBOARD_REFRESH_ROW3=y
-
-# Sensors: disabled; yaviks is clamshell-only
-CONFIG_PLATFORM_EC_LID_ANGLE=n
-CONFIG_PLATFORM_EC_LID_ANGLE_UPDATE=n
-CONFIG_PLATFORM_EC_MOTIONSENSE=n
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCELS=n
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCEL_INFO=n
-CONFIG_PLATFORM_EC_ACCEL_FIFO=n
-CONFIG_PLATFORM_EC_SENSOR_TIGHT_TIMESTAMPS=n
-CONFIG_PLATFORM_EC_GMR_TABLET_MODE=n
-CONFIG_PLATFORM_EC_TABLET_MODE=n
-CONFIG_PLATFORM_EC_TABLET_MODE_SWITCH=n
-CONFIG_PLATFORM_EC_VOLUME_BUTTONS=n
-CONFIG_PLATFORM_EC_MAX_SENSOR_FREQ_MILLIHZ=100000
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_KEYPAD=y
-CONFIG_PLATFORM_EC_KBLIGHT_ENABLE_PIN=n
-
-# Fan
-CONFIG_PLATFORM_EC_FAN=y
-CONFIG_PLATFORM_EC_CUSTOM_FAN_CONTROL=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_PWM=n
diff --git a/zephyr/program/nissa/yaviks/project.overlay b/zephyr/program/nissa/yaviks/project.overlay
deleted file mode 100644
index fecd1c98c8..0000000000
--- a/zephyr/program/nissa/yaviks/project.overlay
+++ /dev/null
@@ -1,13 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "../cbi.dtsi"
-
-#include "cbi.dtsi"
-#include "fan.dtsi"
-#include "gpio.dtsi"
-#include "keyboard.dtsi"
-#include "overlay.dtsi"
-#include "power_signals.dtsi"
diff --git a/zephyr/program/nissa/yaviks/src/charger.c b/zephyr/program/nissa/yaviks/src/charger.c
deleted file mode 100644
index ec2247f4b4..0000000000
--- a/zephyr/program/nissa/yaviks/src/charger.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "battery.h"
-#include "battery_fuel_gauge.h"
-#include "charger.h"
-#include "console.h"
-#include "driver/charger/sm5803.h"
-#include "extpower.h"
-#include "nissa_common.h"
-#include "usb_pd.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-int extpower_is_present(void)
-{
- int port;
- int rv;
- bool acok;
-
- for (port = 0; port < board_get_usb_pd_port_count(); port++) {
- rv = sm5803_is_acok(port, &acok);
- if ((rv == EC_SUCCESS) && acok)
- return 1;
- }
-
- return 0;
-}
-
-/*
- * Yaviks does not have a GPIO indicating whether extpower is present,
- * so detect using the charger(s).
- */
-__override void board_check_extpower(void)
-{
- static int last_extpower_present;
- int extpower_present = extpower_is_present();
-
- if (last_extpower_present ^ extpower_present)
- extpower_handle_update(extpower_present);
-
- last_extpower_present = extpower_present;
-}
-
-__override void board_hibernate(void)
-{
- /* Shut down the chargers */
- if (board_get_usb_pd_port_count() == 2)
- sm5803_hibernate(CHARGER_SECONDARY);
- sm5803_hibernate(CHARGER_PRIMARY);
- LOG_INF("Charger(s) hibernated");
- cflush();
-}
-
-__override int board_get_default_battery_type(void)
-{
- int type = DEFAULT_BATTERY_TYPE;
- int cells;
-
- if (charger_get_battery_cells(CHARGER_PRIMARY, &cells) == EC_SUCCESS) {
- if (cells == 3)
- type = DEFAULT_BATTERY_TYPE_3S;
- if (cells != 2 && cells != 3)
- LOG_ERR("Unexpected number of cells");
- } else {
- LOG_ERR("Failed to get default battery type");
- }
-
- return type;
-}
diff --git a/zephyr/program/nissa/yaviks/src/fan.c b/zephyr/program/nissa/yaviks/src/fan.c
deleted file mode 100644
index c01ee3d752..0000000000
--- a/zephyr/program/nissa/yaviks/src/fan.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "cros_cbi.h"
-#include "fan.h"
-#include "gpio/gpio.h"
-#include "hooks.h"
-#include "nissa_common.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-static void fan_init(void)
-{
- int ret;
- uint32_t val;
- /*
- * Retrieve the fan config.
- */
- ret = cros_cbi_get_fw_config(FW_FAN, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_FAN);
- return;
- }
- if (val != FW_FAN_PRESENT) {
- /* Disable the fan */
- fan_set_count(0);
- } else {
- /* Configure the fan enable GPIO */
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_fan_enable),
- GPIO_OUTPUT);
- }
-}
-DECLARE_HOOK(HOOK_INIT, fan_init, HOOK_PRIO_POST_FIRST);
diff --git a/zephyr/program/nissa/yaviks/src/keyboard.c b/zephyr/program/nissa/yaviks/src/keyboard.c
deleted file mode 100644
index 54f8750e98..0000000000
--- a/zephyr/program/nissa/yaviks/src/keyboard.c
+++ /dev/null
@@ -1,106 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "cros_cbi.h"
-#include "ec_commands.h"
-#include "hooks.h"
-#include "keyboard_8042_sharedlib.h"
-#include "keyboard_scan.h"
-#include "timer.h"
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-/* Keyboard scan setting */
-__override struct keyboard_scan_config keyscan_config = {
- /* Increase from 50 us, because KSO_02 passes through the H1. */
- .output_settle_us = 80,
- /* Other values should be the same as the default configuration. */
- .debounce_down_us = 9 * MSEC,
- .debounce_up_us = 30 * MSEC,
- .scan_period_us = 3 * MSEC,
- .min_post_scan_delay_us = 1000,
- .poll_timeout_us = 100 * MSEC,
- .actual_key_mask = {
- 0x1c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- 0xa4, 0xff, 0xf6, 0x55, 0xfe, 0xff, 0xff, 0xff, /* full set */
- },
-};
-
-static const struct ec_response_keybd_config yaviks_kb_w_kb_light = {
- .num_top_row_keys = 13,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_REFRESH, /* T2 */
- TK_FULLSCREEN, /* T3 */
- TK_OVERVIEW, /* T4 */
- TK_SNAPSHOT, /* T5 */
- TK_BRIGHTNESS_DOWN, /* T6 */
- TK_BRIGHTNESS_UP, /* T7 */
- TK_KBD_BKLIGHT_TOGGLE, /* T8 */
- TK_PLAY_PAUSE, /* T9 */
- TK_MICMUTE, /* T10 */
- TK_VOL_MUTE, /* T11 */
- TK_VOL_DOWN, /* T12 */
- TK_VOL_UP, /* T13 */
- },
- .capabilities = KEYBD_CAP_NUMERIC_KEYPAD,
-};
-
-static const struct ec_response_keybd_config yaviks_kb_wo_kb_light = {
- .num_top_row_keys = 13,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_REFRESH, /* T2 */
- TK_FULLSCREEN, /* T3 */
- TK_OVERVIEW, /* T4 */
- TK_SNAPSHOT, /* T5 */
- TK_BRIGHTNESS_DOWN, /* T6 */
- TK_BRIGHTNESS_UP, /* T7 */
- TK_PLAY_PAUSE, /* T8 */
- TK_MICMUTE, /* T9 */
- TK_VOL_MUTE, /* T10 */
- TK_VOL_DOWN, /* T11 */
- TK_VOL_UP, /* T12 */
- TK_MENU, /* T13 */
- },
- .capabilities = KEYBD_CAP_NUMERIC_KEYPAD,
-};
-
-__override const struct ec_response_keybd_config *
-board_vivaldi_keybd_config(void)
-{
- uint32_t val;
-
- cros_cbi_get_fw_config(FW_KB_BACKLIGHT, &val);
-
- if (val == FW_KB_BACKLIGHT_OFF)
- return &yaviks_kb_wo_kb_light;
- else
- return &yaviks_kb_w_kb_light;
-}
-
-/*
- * Keyboard layout decided by FW config.
- */
-static void kb_layout_init(void)
-{
- int ret;
- uint32_t val;
-
- ret = cros_cbi_get_fw_config(FW_KB_LAYOUT, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d",
- FW_KB_LAYOUT);
- return;
- }
- /*
- * If keyboard is US2(FW_KB_LAYOUT_US2), we need translate right ctrl
- * to backslash(\|) key.
- */
- if (val == FW_KB_LAYOUT_US2)
- set_scancode_set2(4, 0, get_scancode_set2(2, 7));
-}
-DECLARE_HOOK(HOOK_INIT, kb_layout_init, HOOK_PRIO_POST_FIRST);
diff --git a/zephyr/program/nissa/yaviks/src/led.c b/zephyr/program/nissa/yaviks/src/led.c
deleted file mode 100644
index 7671bd3a92..0000000000
--- a/zephyr/program/nissa/yaviks/src/led.c
+++ /dev/null
@@ -1,231 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "battery.h"
-#include "charge_manager.h"
-#include "charge_state.h"
-#include "chipset.h"
-#include "ec_commands.h"
-#include "gpio.h"
-#include "hooks.h"
-#include "host_command.h"
-#include "led_common.h"
-
-#include <stdint.h>
-
-#define BAT_LED_ON 0
-#define BAT_LED_OFF 1
-
-#define BATT_LOW_BCT 10
-
-#define LED_TICKS_PER_CYCLE 4
-#define LED_TICKS_PER_CYCLE_S3 4
-#define LED_ON_TICKS 2
-#define POWER_LED_ON_S3_TICKS 2
-
-const enum ec_led_id supported_led_ids[] = { EC_LED_ID_LEFT_LED,
- EC_LED_ID_RIGHT_LED };
-
-const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-
-enum led_color {
- LED_OFF = 0,
- LED_AMBER,
- LED_WHITE,
- LED_COLOR_COUNT /* Number of colors, not a color itself */
-};
-
-enum led_port { LEFT_PORT = 0, RIGHT_PORT };
-
-static void led_set_color_battery(int port, enum led_color color)
-{
- const struct gpio_dt_spec *amber_led, *white_led;
-
- if (port == LEFT_PORT) {
- amber_led = GPIO_DT_FROM_NODELABEL(gpio_c0_charger_led_amber_l);
- white_led = GPIO_DT_FROM_NODELABEL(gpio_c0_charger_led_white_l);
- } else if (port == RIGHT_PORT) {
- amber_led = GPIO_DT_FROM_NODELABEL(gpio_c1_charger_led_amber_l);
- white_led = GPIO_DT_FROM_NODELABEL(gpio_c1_charger_led_white_l);
- }
-
- switch (color) {
- case LED_WHITE:
- gpio_pin_set_dt(white_led, BAT_LED_ON);
- gpio_pin_set_dt(amber_led, BAT_LED_OFF);
- break;
- case LED_AMBER:
- gpio_pin_set_dt(white_led, BAT_LED_OFF);
- gpio_pin_set_dt(amber_led, BAT_LED_ON);
- break;
- case LED_OFF:
- gpio_pin_set_dt(white_led, BAT_LED_OFF);
- gpio_pin_set_dt(amber_led, BAT_LED_OFF);
- break;
- default:
- break;
- }
-}
-
-void led_get_brightness_range(enum ec_led_id led_id, uint8_t *brightness_range)
-{
- switch (led_id) {
- case EC_LED_ID_LEFT_LED:
- brightness_range[EC_LED_COLOR_WHITE] = 1;
- brightness_range[EC_LED_COLOR_AMBER] = 1;
- break;
- case EC_LED_ID_RIGHT_LED:
- brightness_range[EC_LED_COLOR_WHITE] = 1;
- brightness_range[EC_LED_COLOR_AMBER] = 1;
- break;
- default:
- break;
- }
-}
-
-int led_set_brightness(enum ec_led_id led_id, const uint8_t *brightness)
-{
- switch (led_id) {
- case EC_LED_ID_LEFT_LED:
- if (brightness[EC_LED_COLOR_WHITE] != 0)
- led_set_color_battery(LEFT_PORT, LED_WHITE);
- else if (brightness[EC_LED_COLOR_AMBER] != 0)
- led_set_color_battery(LEFT_PORT, LED_AMBER);
- else
- led_set_color_battery(LEFT_PORT, LED_OFF);
- break;
- case EC_LED_ID_RIGHT_LED:
- if (brightness[EC_LED_COLOR_WHITE] != 0)
- led_set_color_battery(RIGHT_PORT, LED_WHITE);
- else if (brightness[EC_LED_COLOR_AMBER] != 0)
- led_set_color_battery(RIGHT_PORT, LED_AMBER);
- else
- led_set_color_battery(RIGHT_PORT, LED_OFF);
- break;
- default:
- return EC_ERROR_PARAM1;
- }
-
- return EC_SUCCESS;
-}
-
-/*
- * Set active charge port color to the parameter, turn off all others.
- * If no port is active (-1), turn off all LEDs.
- */
-static void set_active_port_color(enum led_color color)
-{
- int port = charge_manager_get_active_charge_port();
-
- if (led_auto_control_is_enabled(EC_LED_ID_RIGHT_LED))
- led_set_color_battery(RIGHT_PORT,
- (port == RIGHT_PORT) ? color : LED_OFF);
- if (led_auto_control_is_enabled(EC_LED_ID_LEFT_LED))
- led_set_color_battery(LEFT_PORT,
- (port == LEFT_PORT) ? color : LED_OFF);
-}
-
-static void led_set_battery(void)
-{
- static unsigned int battery_ticks;
- static int suspend_ticks;
-
- battery_ticks++;
-
- /*
- * Override battery LEDs for Yaviks, Yaviks is non-power LED
- * design, blinking both two side battery white LEDs to indicate
- * system suspend with non-charging state.
- */
- if (chipset_in_state(CHIPSET_STATE_ANY_SUSPEND) &&
- charge_get_state() != PWR_STATE_CHARGE) {
- suspend_ticks++;
-
- led_set_color_battery(RIGHT_PORT,
- suspend_ticks % LED_TICKS_PER_CYCLE_S3 <
- POWER_LED_ON_S3_TICKS ?
- LED_WHITE :
- LED_OFF);
- led_set_color_battery(LEFT_PORT,
- suspend_ticks % LED_TICKS_PER_CYCLE_S3 <
- POWER_LED_ON_S3_TICKS ?
- LED_WHITE :
- LED_OFF);
- return;
- }
-
- suspend_ticks = 0;
-
- switch (charge_get_state()) {
- case PWR_STATE_CHARGE:
- /* Always indicate when charging, even in suspend. */
- set_active_port_color(LED_AMBER);
- break;
- case PWR_STATE_DISCHARGE:
- /*
- * Blinking amber LEDs slowly if battery is lower 10
- * percentage.
- */
- if (led_auto_control_is_enabled(EC_LED_ID_RIGHT_LED)) {
- if (charge_get_percent() < BATT_LOW_BCT)
- led_set_color_battery(
- RIGHT_PORT,
- (battery_ticks % LED_TICKS_PER_CYCLE <
- LED_ON_TICKS) ?
- LED_AMBER :
- LED_OFF);
- else
- led_set_color_battery(RIGHT_PORT, LED_OFF);
- }
-
- if (led_auto_control_is_enabled(EC_LED_ID_LEFT_LED)) {
- if (charge_get_percent() < BATT_LOW_BCT)
- led_set_color_battery(
- LEFT_PORT,
- (battery_ticks % LED_TICKS_PER_CYCLE <
- LED_ON_TICKS) ?
- LED_AMBER :
- LED_OFF);
- else
- led_set_color_battery(LEFT_PORT, LED_OFF);
- }
- break;
- case PWR_STATE_ERROR:
- if (led_auto_control_is_enabled(EC_LED_ID_RIGHT_LED)) {
- led_set_color_battery(
- RIGHT_PORT,
- (battery_ticks & 0x1) ? LED_AMBER : LED_OFF);
- }
-
- if (led_auto_control_is_enabled(EC_LED_ID_LEFT_LED)) {
- led_set_color_battery(LEFT_PORT, (battery_ticks & 0x1) ?
- LED_AMBER :
- LED_OFF);
- }
- break;
- case PWR_STATE_CHARGE_NEAR_FULL:
- set_active_port_color(LED_WHITE);
- break;
- case PWR_STATE_IDLE: /* External power connected in IDLE */
- set_active_port_color(LED_WHITE);
- break;
- case PWR_STATE_FORCED_IDLE:
- set_active_port_color(
- (battery_ticks % LED_TICKS_PER_CYCLE < LED_ON_TICKS) ?
- LED_AMBER :
- LED_OFF);
- break;
- default:
- /* Other states don't alter LED behavior */
- break;
- }
-}
-
-/* Called by hook task every TICK(IT83xx 500ms) */
-static void led_tick(void)
-{
- led_set_battery();
-}
-DECLARE_HOOK(HOOK_TICK, led_tick, HOOK_PRIO_DEFAULT);
diff --git a/zephyr/program/nissa/yaviks/src/thermal.c b/zephyr/program/nissa/yaviks/src/thermal.c
deleted file mode 100644
index a22a9a74c0..0000000000
--- a/zephyr/program/nissa/yaviks/src/thermal.c
+++ /dev/null
@@ -1,108 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "common.h"
-#include "fan.h"
-#include "temp_sensor/temp_sensor.h"
-#include "thermal.h"
-#include "util.h"
-
-#include <ap_power/ap_power_interface.h>
-
-#define TEMP_CPU TEMP_SENSOR_ID(DT_NODELABEL(temp_cpu))
-#define TEMP_5V TEMP_SENSOR_ID(DT_NODELABEL(temp_5v_regulator))
-#define TEMP_CHARGER TEMP_SENSOR_ID(DT_NODELABEL(temp_charger))
-
-struct fan_step {
- /*
- * Sensor 1~3 trigger point, set -1 if we're not using this
- * sensor to determine fan speed.
- */
- int8_t on[TEMP_SENSOR_COUNT];
- /*
- * Sensor 1~3 trigger point, set -1 if we're not using this
- * sensor to determine fan speed.
- */
- int8_t off[TEMP_SENSOR_COUNT];
- /* Fan rpm */
- uint16_t rpm[FAN_CH_COUNT];
-};
-
-#define FAN_TABLE_ENTRY(nd) \
- { \
- .on = DT_PROP(nd, temp_on), \
- .off = DT_PROP(nd, temp_off), \
- .rpm = DT_PROP(nd, rpm_target), \
- },
-
-static const struct fan_step fan_step_table[] = { DT_FOREACH_CHILD(
- DT_INST(0, cros_ec_fan_steps), FAN_TABLE_ENTRY) };
-
-int fan_table_to_rpm(int fan, int *temp)
-{
- /* current fan level */
- static int current_level;
- /* previous sensor temperature */
- static int prev_tmp[TEMP_SENSOR_COUNT];
- int i;
- /*
- * Compare the current and previous temperature, we have
- * the three paths :
- * 1. decreasing path. (check the release point)
- * 2. increasing path. (check the trigger point)
- * 3. invariant path. (return the current RPM)
- *
- * Yaviks thermal table V1-1
- * Increase path judgment: CPU || (5V && Charger)
- * Decrease path judgment: CPU && 5V && Charger
- */
- if (temp[TEMP_CPU] < prev_tmp[TEMP_CPU] ||
- temp[TEMP_5V] < prev_tmp[TEMP_5V] ||
- temp[TEMP_CHARGER] < prev_tmp[TEMP_CHARGER]) {
- for (i = current_level; i > 0; i--) {
- if (temp[TEMP_CPU] < fan_step_table[i].off[TEMP_CPU] &&
- temp[TEMP_5V] < fan_step_table[i].off[TEMP_5V] &&
- temp[TEMP_CHARGER] <
- fan_step_table[i].off[TEMP_CHARGER]) {
- current_level = i - 1;
- } else
- break;
- }
- } else if (temp[TEMP_CPU] > prev_tmp[TEMP_CPU] ||
- temp[TEMP_5V] > prev_tmp[TEMP_5V] ||
- temp[TEMP_CHARGER] > prev_tmp[TEMP_CHARGER]) {
- for (i = current_level; i < ARRAY_SIZE(fan_step_table); i++) {
- if (temp[TEMP_CPU] > fan_step_table[i].on[TEMP_CPU] ||
- (temp[TEMP_5V] > fan_step_table[i].on[TEMP_5V] &&
- temp[TEMP_CHARGER] >
- fan_step_table[i].on[TEMP_CHARGER])) {
- current_level = i + 1;
- } else
- break;
- }
- }
- if (current_level < 0)
- current_level = 0;
-
- if (current_level >= ARRAY_SIZE(fan_step_table))
- current_level = ARRAY_SIZE(fan_step_table) - 1;
-
- for (i = 0; i < TEMP_SENSOR_COUNT; ++i)
- prev_tmp[i] = temp[i];
-
- return fan_step_table[current_level].rpm[fan];
-}
-
-void board_override_fan_control(int fan, int *temp)
-{
- /*
- * In common/fan.c pwm_fan_stop() will turn off fan
- * when chipset suspend or shutdown.
- */
- if (ap_power_in_state(AP_POWER_STATE_ON)) {
- fan_set_rpm_mode(fan, 1);
- fan_set_rpm_target(fan, fan_table_to_rpm(fan, temp));
- }
-}
diff --git a/zephyr/program/nissa/yaviks/src/usbc.c b/zephyr/program/nissa/yaviks/src/usbc.c
deleted file mode 100644
index 1e87abfa0d..0000000000
--- a/zephyr/program/nissa/yaviks/src/usbc.c
+++ /dev/null
@@ -1,369 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charge_state_v2.h"
-#include "chipset.h"
-#include "driver/charger/sm5803.h"
-#include "driver/tcpm/it83xx_pd.h"
-#include "driver/tcpm/ps8xxx_public.h"
-#include "driver/tcpm/tcpci.h"
-#include "hooks.h"
-#include "nissa_common.h"
-#include "system.h"
-#include "usb_mux.h"
-
-#include <zephyr/logging/log.h>
-
-#include <ap_power/ap_power.h>
-
-LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
-
-/* Vconn control for integrated ITE TCPC */
-void board_pd_vconn_ctrl(int port, enum usbpd_cc_pin cc_pin, int enabled)
-{
- /* Vconn control is only for port 0 */
- if (port)
- return;
-
- if (cc_pin == USBPD_CC_PIN_1)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(gpio_en_usb_c0_cc1_vconn),
- !!enabled);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(gpio_en_usb_c0_cc2_vconn),
- !!enabled);
-}
-
-__override bool pd_check_vbus_level(int port, enum vbus_level level)
-{
- return sm5803_check_vbus_level(port, level);
-}
-
-/*
- * Putting chargers into LPM when in suspend reduces power draw by about 8mW
- * per charger, but also seems critical to correct operation in source mode:
- * if chargers are not in LPM when a sink is first connected, VBUS sourcing
- * works even if the partner is later removed (causing LPM entry) and
- * reconnected (causing LPM exit). If in LPM initially, sourcing VBUS
- * consistently causes the charger to report (apparently spurious) overcurrent
- * failures.
- *
- * In short, this is important to making things work correctly but we don't
- * understand why.
- */
-static void board_chargers_suspend(struct ap_power_ev_callback *const cb,
- const struct ap_power_ev_data data)
-{
- void (*fn)(int chgnum);
-
- switch (data.event) {
- case AP_POWER_SUSPEND:
- fn = sm5803_enable_low_power_mode;
- break;
- case AP_POWER_RESUME:
- fn = sm5803_disable_low_power_mode;
- break;
- default:
- LOG_WRN("%s: power event %d is not recognized", __func__,
- data.event);
- return;
- }
-
- fn(CHARGER_PRIMARY);
- if (board_get_charger_chip_count() > 1)
- fn(CHARGER_SECONDARY);
-}
-
-static int board_chargers_suspend_init(const struct device *unused)
-{
- static struct ap_power_ev_callback cb = {
- .handler = board_chargers_suspend,
- .events = AP_POWER_SUSPEND | AP_POWER_RESUME,
- };
- ap_power_ev_add_callback(&cb);
- return 0;
-}
-SYS_INIT(board_chargers_suspend_init, APPLICATION, 0);
-
-int board_set_active_charge_port(int port)
-{
- int is_real_port = (port >= 0 && port < board_get_usb_pd_port_count());
- int i;
- int old_port;
- int rv;
-
- if (!is_real_port && port != CHARGE_PORT_NONE)
- return EC_ERROR_INVAL;
-
- old_port = charge_manager_get_active_charge_port();
- LOG_INF("Charge update: p%d -> p%d", old_port, port);
-
- /* Check if port is sourcing VBUS. */
- if (port != CHARGE_PORT_NONE && charger_is_sourcing_otg_power(port)) {
- LOG_WRN("Skip enable p%d: already sourcing", port);
- return EC_ERROR_INVAL;
- }
-
- /* Disable sinking on all ports except the desired one */
- for (i = 0; i < board_get_usb_pd_port_count(); i++) {
- if (i == port)
- continue;
-
- if (sm5803_vbus_sink_enable(i, 0))
- /*
- * Do not early-return because this can fail during
- * power-on which would put us into a loop.
- */
- LOG_WRN("p%d: sink path disable failed.", i);
- }
-
- /* Don't enable anything (stop here) if no ports were requested */
- if ((port == CHARGE_PORT_NONE) || (old_port == port))
- return EC_SUCCESS;
-
- /*
- * Stop the charger IC from switching while changing ports. Otherwise,
- * we can overcurrent the adapter we're switching to. (crbug.com/926056)
- */
- if (old_port != CHARGE_PORT_NONE)
- charger_discharge_on_ac(1);
-
- /* Enable requested charge port. */
- rv = sm5803_vbus_sink_enable(port, 1);
- if (rv)
- LOG_WRN("p%d: sink path enable failed: code %d", port, rv);
-
- /* Allow the charger IC to begin/continue switching. */
- charger_discharge_on_ac(0);
-
- return rv;
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- /*
- * TCPC 0 is embedded in the EC and processes interrupts in the chip
- * code (it83xx/intc.c). This function only needs to poll port C1 if
- * present.
- */
- uint16_t status = 0;
- int regval;
-
- /* Is the C1 port present and its IRQ line asserted? */
- if (board_get_usb_pd_port_count() == 2 &&
- !gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- /*
- * C1 IRQ is shared between BC1.2 and TCPC; poll TCPC to see if
- * it asserted the IRQ.
- */
- if (!tcpc_read16(1, TCPC_REG_ALERT, &regval)) {
- if (regval)
- status = PD_STATUS_TCPC_ALERT_1;
- }
- }
-
- return status;
-}
-
-void pd_power_supply_reset(int port)
-{
- int prev_en;
-
- if (port < 0 || port >= board_get_usb_pd_port_count())
- return;
-
- prev_en = charger_is_sourcing_otg_power(port);
-
- /* Disable Vbus */
- charger_enable_otg_power(port, 0);
-
- /* Discharge Vbus if previously enabled */
- if (prev_en)
- sm5803_set_vbus_disch(port, 1);
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- enum ec_error_list rv;
-
- if (port < 0 || port > board_get_usb_pd_port_count()) {
- LOG_WRN("Port C%d does not exist, cannot enable VBUS", port);
- return EC_ERROR_INVAL;
- }
-
- /* Disable sinking */
- rv = sm5803_vbus_sink_enable(port, 0);
- if (rv) {
- LOG_WRN("C%d failed to disable sinking: %d", port, rv);
- return rv;
- }
-
- /* Disable Vbus discharge */
- rv = sm5803_set_vbus_disch(port, 0);
- if (rv) {
- LOG_WRN("C%d failed to clear VBUS discharge: %d", port, rv);
- return rv;
- }
-
- /* Provide Vbus */
- rv = charger_enable_otg_power(port, 1);
- if (rv) {
- LOG_WRN("C%d failed to enable VBUS sourcing: %d", port, rv);
- return rv;
- }
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-__override void typec_set_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- int rv;
- const int current = rp == TYPEC_RP_3A0 ? 3000 : 1500;
-
- rv = charger_set_otg_current_voltage(port, current, 5000);
- if (rv != EC_SUCCESS) {
- LOG_WRN("Failed to set source ilimit on port %d to %d: %d",
- port, current, rv);
- }
-}
-
-void board_reset_pd_mcu(void)
-{
- /*
- * Do nothing. The integrated TCPC for C0 lacks a dedicated reset
- * command, and C1 (if present) doesn't have a reset pin connected
- * to the EC.
- */
-}
-
-#define INT_RECHECK_US 5000
-
-/* C0 interrupt line shared by BC 1.2 and charger */
-
-static void check_c0_line(void);
-DECLARE_DEFERRED(check_c0_line);
-
-static void notify_c0_chips(void)
-{
- usb_charger_task_set_event(0, USB_CHG_EVENT_BC12);
- sm5803_interrupt(0);
-}
-
-static void check_c0_line(void)
-{
- /*
- * If line is still being held low, see if there's more to process from
- * one of the chips
- */
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_int_odl))) {
- notify_c0_chips();
- hook_call_deferred(&check_c0_line_data, INT_RECHECK_US);
- }
-}
-
-void usb_c0_interrupt(enum gpio_signal s)
-{
- /* Cancel any previous calls to check the interrupt line */
- hook_call_deferred(&check_c0_line_data, -1);
-
- /* Notify all chips using this line that an interrupt came in */
- notify_c0_chips();
-
- /* Check the line again in 5ms */
- hook_call_deferred(&check_c0_line_data, INT_RECHECK_US);
-}
-
-/* C1 interrupt line shared by BC 1.2, TCPC, and charger */
-static void check_c1_line(void);
-DECLARE_DEFERRED(check_c1_line);
-
-static void notify_c1_chips(void)
-{
- schedule_deferred_pd_interrupt(1);
- usb_charger_task_set_event(1, USB_CHG_EVENT_BC12);
- /* Charger is handled in board_process_pd_alert */
-}
-
-static void check_c1_line(void)
-{
- /*
- * If line is still being held low, see if there's more to process from
- * one of the chips.
- */
- if (!gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- notify_c1_chips();
- hook_call_deferred(&check_c1_line_data, INT_RECHECK_US);
- }
-}
-
-void usb_c1_interrupt(enum gpio_signal s)
-{
- /* Cancel any previous calls to check the interrupt line */
- hook_call_deferred(&check_c1_line_data, -1);
-
- /* Notify all chips using this line that an interrupt came in */
- notify_c1_chips();
-
- /* Check the line again in 5ms */
- hook_call_deferred(&check_c1_line_data, INT_RECHECK_US);
-}
-
-/*
- * Check state of IRQ lines at startup, ensuring an IRQ that happened before
- * the EC started up won't get lost (leaving the IRQ line asserted and blocking
- * any further interrupts on the port).
- *
- * Although the PD task will check for pending TCPC interrupts on startup,
- * the charger sharing the IRQ will not be polled automatically.
- */
-void board_handle_initial_typec_irq(void)
-{
- check_c0_line();
- if (board_get_usb_pd_port_count() == 2)
- check_c1_line();
-}
-/*
- * This must run after sub-board detection (which happens in EC main()),
- * but isn't depended on by anything else either.
- */
-DECLARE_HOOK(HOOK_INIT, board_handle_initial_typec_irq, HOOK_PRIO_LAST);
-
-/*
- * Handle charger interrupts in the PD task. Not doing so can lead to a priority
- * inversion where we fail to respond to TCPC alerts quickly enough because we
- * don't get another edge on a shared IRQ until the charger interrupt is cleared
- * (or the IRQ is polled again), which happens in the low-priority charger task:
- * the high-priority type-C handler is thus blocked on the lower-priority
- * charger.
- *
- * To avoid that, we run charger interrupts at the same priority.
- */
-void board_process_pd_alert(int port)
-{
- /*
- * Port 0 doesn't use an external TCPC, so its interrupts don't need
- * this special handling.
- */
- if (port == 1 &&
- !gpio_pin_get_dt(GPIO_DT_FROM_ALIAS(gpio_usb_c1_int_odl))) {
- sm5803_handle_interrupt(port);
- }
-}
-
-int pd_snk_is_vbus_provided(int port)
-{
- int chg_det = 0;
-
- sm5803_get_chg_det(port, &chg_det);
-
- return chg_det;
-}
diff --git a/zephyr/program/nissa/yaviks/yaviks_vif.xml b/zephyr/program/nissa/yaviks/yaviks_vif.xml
deleted file mode 100644
index edc6299c58..0000000000
--- a/zephyr/program/nissa/yaviks/yaviks_vif.xml
+++ /dev/null
@@ -1,350 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<vif:VIF xmlns:opt="http://usb.org/VendorInfoFileOptionalContent.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="http://usb.org/VendorInfoFile.xsd">
- <vif:VIF_Specification>3.19</vif:VIF_Specification>
- <vif:VIF_App>
- <vif:Vendor>USB-IF</vif:Vendor>
- <vif:Name>VIF Editor</vif:Name>
- <vif:Version>3.2.4.0</vif:Version>
- </vif:VIF_App>
- <vif:Vendor_Name>Google</vif:Vendor_Name>
- <vif:Model_Part_Number>Yaviks</vif:Model_Part_Number>
- <vif:Product_Revision>1</vif:Product_Revision>
- <vif:TID>0</vif:TID>
- <vif:VIF_Product_Type value="0">Port Product</vif:VIF_Product_Type>
- <vif:Certification_Type value="1">Reference Platform</vif:Certification_Type>
- <vif:Product>
- <!--Product Level Content:-->
- </vif:Product>
- <vif:Component>
- <!--Component 0: Port 0-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Component-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Port_Label>0</vif:Port_Label>
- <vif:Connector_Type value="2">Type-C®</vif:Connector_Type>
- <vif:USB4_Supported value="false" />
- <vif:USB_PD_Support value="true" />
- <vif:PD_Port_Type value="4">DRP</vif:PD_Port_Type>
- <vif:Type_C_State_Machine value="2">DRP</vif:Type_C_State_Machine>
- <vif:Port_Battery_Powered value="true" />
- <vif:BC_1_2_Support value="2">Charging Port</vif:BC_1_2_Support>
- <vif:Captive_Cable value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;General PD-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Spec_Revision_Major value="3" />
- <vif:PD_Spec_Revision_Minor value="1" />
- <vif:PD_Spec_Version_Major value="1" />
- <vif:PD_Spec_Version_Minor value="3" />
- <vif:PD_Specification_Revision value="2">Revision 3</vif:PD_Specification_Revision>
- <vif:SOP_Capable value="true" />
- <vif:SOP_P_Capable value="true" />
- <vif:SOP_PP_Capable value="true" />
- <vif:SOP_P_Debug_Capable value="false" />
- <vif:SOP_PP_Debug_Capable value="false" />
- <vif:Manufacturer_Info_Supported_Port value="true" />
- <vif:Manufacturer_Info_VID_Port value="6353">18D1</vif:Manufacturer_Info_VID_Port>
- <vif:Manufacturer_Info_PID_Port value="20570">505A</vif:Manufacturer_Info_PID_Port>
- <vif:Chunking_Implemented_SOP value="true" />
- <vif:Unchunked_Extended_Messages_Supported value="false" />
- <vif:Security_Msgs_Supported_SOP value="false" />
- <vif:Unconstrained_Power value="false" />
- <vif:Num_Fixed_Batteries value="1" />
- <vif:Num_Swappable_Battery_Slots value="0" />
- <vif:ID_Header_Connector_Type_SOP value="2">USB Type-C® Receptacle</vif:ID_Header_Connector_Type_SOP>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Capabilities-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:USB_Comms_Capable value="true" />
- <vif:DR_Swap_To_DFP_Supported value="true" />
- <vif:DR_Swap_To_UFP_Supported value="false" />
- <vif:VCONN_Swap_To_On_Supported value="true" />
- <vif:VCONN_Swap_To_Off_Supported value="true" />
- <vif:Responds_To_Discov_SOP_UFP value="false" />
- <vif:Responds_To_Discov_SOP_DFP value="true" />
- <vif:Attempts_Discov_SOP value="true" />
- <vif:Power_Interruption_Available value="0">No Interruption Possible</vif:Power_Interruption_Available>
- <vif:Data_Reset_Supported value="false" />
- <vif:Enter_USB_Supported value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Type-C®-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Type_C_Can_Act_As_Host value="true" />
- <vif:Type_C_Can_Act_As_Device value="false" />
- <vif:Type_C_Implements_Try_SRC value="true" />
- <vif:Type_C_Implements_Try_SNK value="false" />
- <vif:Type_C_Supports_Audio_Accessory value="false" />
- <vif:Type_C_Is_VCONN_Powered_Accessory value="false" />
- <vif:Type_C_Is_Debug_Target_SRC value="true" />
- <vif:Type_C_Is_Debug_Target_SNK value="true" />
- <vif:RP_Value value="1">1.5A</vif:RP_Value>
- <vif:Type_C_Port_On_Hub value="false" />
- <vif:Type_C_Power_Source value="2">Both</vif:Type_C_Power_Source>
- <vif:Type_C_Sources_VCONN value="true" />
- <vif:Type_C_Is_Alt_Mode_Controller value="true" />
- <vif:Type_C_Is_Alt_Mode_Adapter value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Product Power-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Product_Total_Source_Power_mW value="15000">15000 mW</vif:Product_Total_Source_Power_mW>
- <vif:Port_Source_Power_Type value="0">Assured</vif:Port_Source_Power_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Host-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Host_Supports_USB_Data value="true" />
- <vif:Host_Speed value="1">USB 3.2 Gen 1x1</vif:Host_Speed>
- <vif:Host_Contains_Captive_Retimer value="false" />
- <vif:Host_Truncates_DP_For_tDHPResponse value="false" />
- <vif:Host_Is_Embedded value="false" />
- <vif:Host_Suspend_Supported value="true" />
- <vif:Is_DFP_On_Hub value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Battery Charging 1.2-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:BC_1_2_Charging_Port_Type value="1">CDP</vif:BC_1_2_Charging_Port_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Source-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Source value="15000">15000 mW</vif:PD_Power_As_Source>
- <vif:EPR_Supported_As_Src value="false" />
- <vif:USB_Suspend_May_Be_Cleared value="false" />
- <vif:Sends_Pings value="false" />
- <vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink value="0">FR_Swap not supported</vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink>
- <vif:Master_Port value="false" />
- <vif:Num_Src_PDOs value="1" />
- <vif:PD_OC_Protection value="true" />
- <vif:PD_OCP_Method value="0">Over-Current Response</vif:PD_OCP_Method>
- <!--Bundle: SrcPdoList-->
- <vif:SrcPdoList>
- <vif:SrcPDO>
- <!--Source PDO 1-->
- <vif:Src_PDO_Supply_Type value="0">Fixed</vif:Src_PDO_Supply_Type>
- <vif:Src_PDO_Peak_Current value="0">100% IOC</vif:Src_PDO_Peak_Current>
- <vif:Src_PDO_Voltage value="100">5000 mV</vif:Src_PDO_Voltage>
- <vif:Src_PDO_Max_Current value="300">3000 mA</vif:Src_PDO_Max_Current>
- <vif:Src_PD_OCP_OC_Debounce value="0">0 msec</vif:Src_PD_OCP_OC_Debounce>
- <vif:Src_PD_OCP_OC_Threshold value="300">3000 mA</vif:Src_PD_OCP_OC_Threshold>
- </vif:SrcPDO>
- </vif:SrcPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Sink-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Sink value="45000">45000 mW</vif:PD_Power_As_Sink>
- <vif:EPR_Supported_As_Snk value="false" />
- <vif:No_USB_Suspend_May_Be_Set value="true" />
- <vif:GiveBack_May_Be_Set value="false" />
- <vif:Higher_Capability_Set value="false" />
- <vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source value="0">FR_Swap not supported</vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source>
- <vif:Num_Snk_PDOs value="3" />
- <!--Bundle: SnkPdoList-->
- <vif:SnkPdoList>
- <vif:SnkPDO>
- <!--Sink PDO 1-->
- <vif:Snk_PDO_Supply_Type value="0">Fixed</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Voltage value="100">5000 mV</vif:Snk_PDO_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 2-->
- <vif:Snk_PDO_Supply_Type value="1">Battery</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Op_Power value="60">15000 mW</vif:Snk_PDO_Op_Power>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="300">15000 mV</vif:Snk_PDO_Max_Voltage>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 3-->
- <vif:Snk_PDO_Supply_Type value="2">Variable</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="300">15000 mV</vif:Snk_PDO_Max_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- </vif:SnkPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Dual Role-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Accepts_PR_Swap_As_Src value="true" />
- <vif:Accepts_PR_Swap_As_Snk value="true" />
- <vif:Requests_PR_Swap_As_Src value="true" />
- <vif:Requests_PR_Swap_As_Snk value="true" />
- <vif:FR_Swap_Supported_As_Initial_Sink value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;SOP Discover ID-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:XID_SOP value="0" />
- <vif:Data_Capable_As_USB_Host_SOP value="true" />
- <vif:Data_Capable_As_USB_Device_SOP value="false" />
- <vif:Product_Type_UFP_SOP value="0">Undefined</vif:Product_Type_UFP_SOP>
- <vif:Product_Type_DFP_SOP value="2">PDUSB Host</vif:Product_Type_DFP_SOP>
- <vif:DFP_VDO_Port_Number value="0" />
- <vif:Modal_Operation_Supported_SOP value="false" />
- <vif:USB_VID_SOP value="6353">18D1</vif:USB_VID_SOP>
- <vif:PID_SOP value="20570">505A</vif:PID_SOP>
- <vif:bcdDevice_SOP value="0">0000</vif:bcdDevice_SOP>
- </vif:Component>
- <vif:Component>
- <!--Component 1: Port 1-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Component-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Port_Label>1</vif:Port_Label>
- <vif:Connector_Type value="2">Type-C®</vif:Connector_Type>
- <vif:USB4_Supported value="false" />
- <vif:USB_PD_Support value="true" />
- <vif:PD_Port_Type value="4">DRP</vif:PD_Port_Type>
- <vif:Type_C_State_Machine value="2">DRP</vif:Type_C_State_Machine>
- <vif:Port_Battery_Powered value="true" />
- <vif:BC_1_2_Support value="2">Charging Port</vif:BC_1_2_Support>
- <vif:Captive_Cable value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;General PD-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Spec_Revision_Major value="3" />
- <vif:PD_Spec_Revision_Minor value="1" />
- <vif:PD_Spec_Version_Major value="1" />
- <vif:PD_Spec_Version_Minor value="3" />
- <vif:PD_Specification_Revision value="2">Revision 3</vif:PD_Specification_Revision>
- <vif:SOP_Capable value="true" />
- <vif:SOP_P_Capable value="true" />
- <vif:SOP_PP_Capable value="true" />
- <vif:SOP_P_Debug_Capable value="false" />
- <vif:SOP_PP_Debug_Capable value="false" />
- <vif:Manufacturer_Info_Supported_Port value="true" />
- <vif:Manufacturer_Info_VID_Port value="6353">18D1</vif:Manufacturer_Info_VID_Port>
- <vif:Manufacturer_Info_PID_Port value="20570">505A</vif:Manufacturer_Info_PID_Port>
- <vif:Chunking_Implemented_SOP value="true" />
- <vif:Unchunked_Extended_Messages_Supported value="false" />
- <vif:Security_Msgs_Supported_SOP value="false" />
- <vif:Unconstrained_Power value="false" />
- <vif:Num_Fixed_Batteries value="1" />
- <vif:Num_Swappable_Battery_Slots value="0" />
- <vif:ID_Header_Connector_Type_SOP value="2">USB Type-C® Receptacle</vif:ID_Header_Connector_Type_SOP>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Capabilities-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:USB_Comms_Capable value="true" />
- <vif:DR_Swap_To_DFP_Supported value="true" />
- <vif:DR_Swap_To_UFP_Supported value="false" />
- <vif:VCONN_Swap_To_On_Supported value="true" />
- <vif:VCONN_Swap_To_Off_Supported value="true" />
- <vif:Responds_To_Discov_SOP_UFP value="false" />
- <vif:Responds_To_Discov_SOP_DFP value="true" />
- <vif:Attempts_Discov_SOP value="true" />
- <vif:Power_Interruption_Available value="0">No Interruption Possible</vif:Power_Interruption_Available>
- <vif:Data_Reset_Supported value="false" />
- <vif:Enter_USB_Supported value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Type-C®-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Type_C_Can_Act_As_Host value="true" />
- <vif:Type_C_Can_Act_As_Device value="false" />
- <vif:Type_C_Implements_Try_SRC value="true" />
- <vif:Type_C_Implements_Try_SNK value="false" />
- <vif:Type_C_Supports_Audio_Accessory value="false" />
- <vif:Type_C_Is_VCONN_Powered_Accessory value="false" />
- <vif:Type_C_Is_Debug_Target_SRC value="true" />
- <vif:Type_C_Is_Debug_Target_SNK value="true" />
- <vif:RP_Value value="1">1.5A</vif:RP_Value>
- <vif:Type_C_Port_On_Hub value="false" />
- <vif:Type_C_Power_Source value="2">Both</vif:Type_C_Power_Source>
- <vif:Type_C_Sources_VCONN value="true" />
- <vif:Type_C_Is_Alt_Mode_Controller value="true" />
- <vif:Type_C_Is_Alt_Mode_Adapter value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Product Power-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Product_Total_Source_Power_mW value="15000">15000 mW</vif:Product_Total_Source_Power_mW>
- <vif:Port_Source_Power_Type value="0">Assured</vif:Port_Source_Power_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Host-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Host_Supports_USB_Data value="true" />
- <vif:Host_Speed value="1">USB 3.2 Gen 1x1</vif:Host_Speed>
- <vif:Host_Contains_Captive_Retimer value="true" />
- <vif:Host_Truncates_DP_For_tDHPResponse value="false" />
- <vif:Host_Is_Embedded value="false" />
- <vif:Host_Suspend_Supported value="true" />
- <vif:Is_DFP_On_Hub value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Battery Charging 1.2-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:BC_1_2_Charging_Port_Type value="1">CDP</vif:BC_1_2_Charging_Port_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Source-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Source value="15000">15000 mW</vif:PD_Power_As_Source>
- <vif:EPR_Supported_As_Src value="false" />
- <vif:USB_Suspend_May_Be_Cleared value="false" />
- <vif:Sends_Pings value="false" />
- <vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink value="0">FR_Swap not supported</vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink>
- <vif:Master_Port value="false" />
- <vif:Num_Src_PDOs value="1" />
- <vif:PD_OC_Protection value="true" />
- <vif:PD_OCP_Method value="0">Over-Current Response</vif:PD_OCP_Method>
- <!--Bundle: SrcPdoList-->
- <vif:SrcPdoList>
- <vif:SrcPDO>
- <!--Source PDO 1-->
- <vif:Src_PDO_Supply_Type value="0">Fixed</vif:Src_PDO_Supply_Type>
- <vif:Src_PDO_Peak_Current value="0">100% IOC</vif:Src_PDO_Peak_Current>
- <vif:Src_PDO_Voltage value="100">5000 mV</vif:Src_PDO_Voltage>
- <vif:Src_PDO_Max_Current value="300">3000 mA</vif:Src_PDO_Max_Current>
- <vif:Src_PD_OCP_OC_Debounce value="0">0 msec</vif:Src_PD_OCP_OC_Debounce>
- <vif:Src_PD_OCP_OC_Threshold value="300">3000 mA</vif:Src_PD_OCP_OC_Threshold>
- </vif:SrcPDO>
- </vif:SrcPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Sink-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Sink value="45000">45000 mW</vif:PD_Power_As_Sink>
- <vif:EPR_Supported_As_Snk value="false" />
- <vif:No_USB_Suspend_May_Be_Set value="true" />
- <vif:GiveBack_May_Be_Set value="false" />
- <vif:Higher_Capability_Set value="false" />
- <vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source value="0">FR_Swap not supported</vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source>
- <vif:Num_Snk_PDOs value="3" />
- <!--Bundle: SnkPdoList-->
- <vif:SnkPdoList>
- <vif:SnkPDO>
- <!--Sink PDO 1-->
- <vif:Snk_PDO_Supply_Type value="0">Fixed</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Voltage value="100">5000 mV</vif:Snk_PDO_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 2-->
- <vif:Snk_PDO_Supply_Type value="1">Battery</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Op_Power value="60">15000 mW</vif:Snk_PDO_Op_Power>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="300">15000 mV</vif:Snk_PDO_Max_Voltage>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 3-->
- <vif:Snk_PDO_Supply_Type value="2">Variable</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="300">15000 mV</vif:Snk_PDO_Max_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- </vif:SnkPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Dual Role-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Accepts_PR_Swap_As_Src value="true" />
- <vif:Accepts_PR_Swap_As_Snk value="true" />
- <vif:Requests_PR_Swap_As_Src value="true" />
- <vif:Requests_PR_Swap_As_Snk value="true" />
- <vif:FR_Swap_Supported_As_Initial_Sink value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;SOP Discover ID-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:XID_SOP value="0" />
- <vif:Data_Capable_As_USB_Host_SOP value="true" />
- <vif:Data_Capable_As_USB_Device_SOP value="false" />
- <vif:Product_Type_UFP_SOP value="0">Undefined</vif:Product_Type_UFP_SOP>
- <vif:Product_Type_DFP_SOP value="2">PDUSB Host</vif:Product_Type_DFP_SOP>
- <vif:DFP_VDO_Port_Number value="1" />
- <vif:Modal_Operation_Supported_SOP value="false" />
- <vif:USB_VID_SOP value="6353">18D1</vif:USB_VID_SOP>
- <vif:PID_SOP value="20570">505A</vif:PID_SOP>
- <vif:bcdDevice_SOP value="0">0000</vif:bcdDevice_SOP>
- </vif:Component>
-</vif:VIF> \ No newline at end of file
diff --git a/zephyr/program/npcx_evb/npcx7/BUILD.py b/zephyr/program/npcx_evb/npcx7/BUILD.py
deleted file mode 100644
index baa6774595..0000000000
--- a/zephyr/program/npcx_evb/npcx7/BUILD.py
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Define zmake projects for npcx7_evb."""
-
-register_npcx_project(
- project_name="npcx7",
- zephyr_board="npcx7_evb",
- dts_overlays=["gpio.dts", "interrupts.dts", "fan.dts", "keyboard.dts"],
-)
diff --git a/zephyr/program/npcx_evb/npcx7/CMakeLists.txt b/zephyr/program/npcx_evb/npcx7/CMakeLists.txt
deleted file mode 100644
index 64429d586e..0000000000
--- a/zephyr/program/npcx_evb/npcx7/CMakeLists.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cmake_minimum_required(VERSION 3.13.1)
-
-find_package(Zephyr REQUIRED HINTS "${ZEPHYR_BASE}")
-project(npcx7)
-
-zephyr_include_directories(include)
diff --git a/zephyr/program/npcx_evb/npcx7/fan.dts b/zephyr/program/npcx_evb/npcx7/fan.dts
deleted file mode 100644
index dc4debdcb9..0000000000
--- a/zephyr/program/npcx_evb/npcx7/fan.dts
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- fans {
- compatible = "cros-ec,fans";
-
- fan_0 {
- pwms = <&pwm0 0 PWM_KHZ(25) PWM_POLARITY_NORMAL>;
- rpm_min = <1000>;
- rpm_start = <1000>;
- rpm_max = <5200>;
- tach = <&tach1>;
- pgood_gpio = <&gpio_pgood_fan>;
- };
- };
-};
-
-/* Tachometer for fan speed measurement */
-&tach1 {
- status = "okay";
- pinctrl-0 = <&ta1_1_in_gp40>;
- pinctrl-names = "default";
- port = <NPCX_TACH_PORT_A>; /* port-A is selected */
- sample-clk = <NPCX_TACH_FREQ_LFCLK>; /* Use LFCLK as sampling clock */
- pulses-per-round = <2>; /* number of pulses per round of encoder */
-};
-
-&pwm0_gpc3 {
- drive-open-drain;
-};
-
-&pwm0 {
- status = "okay";
- pinctrl-0 = <&pwm0_gpc3>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/npcx_evb/npcx7/gpio.dts b/zephyr/program/npcx_evb/npcx7/gpio.dts
deleted file mode 100644
index d44927609d..0000000000
--- a/zephyr/program/npcx_evb/npcx7/gpio.dts
+++ /dev/null
@@ -1,68 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &gpio_wp;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- recovery_l {
- gpios = <&gpio0 3 GPIO_INPUT_PULL_UP>;
- };
- gpio_wp: wp_l {
- gpios = <&gpio9 3 (GPIO_INPUT_PULL_UP |
- GPIO_ACTIVE_LOW)>;
- };
- gpio_ac_present: ac_present {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_power_button_l: power_button_l {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_lid_open: lid_open {
- gpios = <&gpio0 1 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- entering_rw {
- gpios = <&gpio3 6 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_ec_pch_wake_odl: pch_wake_l {
- gpios = <&gpio5 0 GPIO_OUTPUT_HIGH>;
- };
- gpio_pgood_fan: pgood_fan {
- gpios = <&gpioc 7 GPIO_INPUT_PULL_UP>;
- };
- spi_cs_l {
- gpios = <&gpioa 5 GPIO_OUTPUT_HIGH>;
- };
- board_version1 {
- gpios = <&gpio6 4 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION1";
- };
- board_version2 {
- gpios = <&gpio6 5 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION2";
- };
- board_version3 {
- gpios = <&gpio6 6 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION3";
- };
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_ac_present
- &int_power_button
- &int_lid_open
- >;
- };
-};
diff --git a/zephyr/program/npcx_evb/npcx7/interrupts.dts b/zephyr/program/npcx_evb/npcx7/interrupts.dts
deleted file mode 100644
index 3e92428ef4..0000000000
--- a/zephyr/program/npcx_evb/npcx7/interrupts.dts
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_ac_present: ac_present {
- irq-pin = <&gpio_ac_present>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_power_button: power_button {
- irq-pin = <&gpio_power_button_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- };
-};
diff --git a/zephyr/program/npcx_evb/npcx7/keyboard.dts b/zephyr/program/npcx_evb/npcx7/keyboard.dts
deleted file mode 100644
index e7e35d1493..0000000000
--- a/zephyr/program/npcx_evb/npcx7/keyboard.dts
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- cros-keyscan {
- compatible = "cros-ec,keyscan";
-
- output-settle = <40>;
- debounce-down = <6000>;
- scan-period = <1500>;
- poll-timeout = <1000000>;
-
- actual-key-mask = <
- 0x14 /* C0 */
- 0xff /* C1 */
- 0xff /* C2 */
- 0xff /* C3 */
- 0xff /* C4 */
- 0xf5 /* C5 */
- 0xff /* C6 */
- 0xa4 /* C7 */
- 0xff /* C8 */
- 0xf6 /* C9 */
- 0x55 /* C10 */
- 0xfa /* C11 */
- 0xc8 /* C12 */
- >;
- };
-
- kblight {
- compatible = "cros-ec,kblight-pwm";
- pwms = <&pwm2 0 PWM_KHZ(10) PWM_POLARITY_NORMAL>;
- };
-};
-
-&pwm2 {
- status = "okay";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/npcx_evb/npcx7/prj.conf b/zephyr/program/npcx_evb/npcx7/prj.conf
deleted file mode 100644
index f94c5ac2fa..0000000000
--- a/zephyr/program/npcx_evb/npcx7/prj.conf
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_CROS_EC=y
-CONFIG_PLATFORM_EC=y
-CONFIG_PLATFORM_EC_BRINGUP=y
-CONFIG_PLATFORM_EC_EXTPOWER_GPIO=y
-CONFIG_PLATFORM_EC_LID_SWITCH=y
-CONFIG_PLATFORM_EC_POWER_BUTTON=y
-CONFIG_SHIMMED_TASKS=y
-
-CONFIG_PLATFORM_EC_BACKLIGHT_LID=n
-CONFIG_PLATFORM_EC_SWITCH=n
-CONFIG_PLATFORM_EC_VBOOT_EFS2=n
-CONFIG_PLATFORM_EC_VSTORE=n
-
-# Board version is selected over GPIO board ID pins.
-CONFIG_PLATFORM_EC_BOARD_VERSION_GPIO=y
-
-# Sensors
-CONFIG_SENSOR=y
-CONFIG_SENSOR_SHELL=n
-
-# Console command
-CONFIG_PLATFORM_EC_CONSOLE_CMD_SCRATCHPAD=y
-
-CONFIG_TRACING=y
-CONFIG_TRACING_ISR=y
-CONFIG_TRACING_USER=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_IRQ=y
-
-# eSPI
-CONFIG_ESPI=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S3=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S4=y
-
-# Keyboard
-CONFIG_CROS_KB_RAW_NPCX_KSO_HIGH_DRIVE=y
-
-# RTC
-CONFIG_PLATFORM_EC_RTC=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_RTC=y
-
-# USB-C
-CONFIG_PLATFORM_EC_USB_PD_TBT_COMPAT_MODE=n
-CONFIG_PLATFORM_EC_USB_PD_USB4=n
-
-# Zephyr feature
-CONFIG_ASSERT=y
-CONFIG_SHELL_MINIMAL=n
-
-# Avoid underflow info from tachometer
-CONFIG_SENSOR_LOG_LEVEL_ERR=y
-
-CONFIG_SYSCON=y
diff --git a/zephyr/program/npcx_evb/npcx9/BUILD.py b/zephyr/program/npcx_evb/npcx9/BUILD.py
deleted file mode 100644
index 335f410d9b..0000000000
--- a/zephyr/program/npcx_evb/npcx9/BUILD.py
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Define zmake projects for npcx9_evb."""
-
-register_npcx_project(
- project_name="npcx9",
- zephyr_board="npcx9_evb",
- dts_overlays=[
- "gpio.dts",
- "interrupts.dts",
- "fan.dts",
- "keyboard.dts",
- ],
-)
diff --git a/zephyr/program/npcx_evb/npcx9/CMakeLists.txt b/zephyr/program/npcx_evb/npcx9/CMakeLists.txt
deleted file mode 100644
index ef734c06f6..0000000000
--- a/zephyr/program/npcx_evb/npcx9/CMakeLists.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cmake_minimum_required(VERSION 3.13.1)
-
-find_package(Zephyr REQUIRED HINTS "${ZEPHYR_BASE}")
-project(npcx9)
-
-zephyr_include_directories(include)
diff --git a/zephyr/program/npcx_evb/npcx9/fan.dts b/zephyr/program/npcx_evb/npcx9/fan.dts
deleted file mode 100644
index dc4debdcb9..0000000000
--- a/zephyr/program/npcx_evb/npcx9/fan.dts
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- fans {
- compatible = "cros-ec,fans";
-
- fan_0 {
- pwms = <&pwm0 0 PWM_KHZ(25) PWM_POLARITY_NORMAL>;
- rpm_min = <1000>;
- rpm_start = <1000>;
- rpm_max = <5200>;
- tach = <&tach1>;
- pgood_gpio = <&gpio_pgood_fan>;
- };
- };
-};
-
-/* Tachometer for fan speed measurement */
-&tach1 {
- status = "okay";
- pinctrl-0 = <&ta1_1_in_gp40>;
- pinctrl-names = "default";
- port = <NPCX_TACH_PORT_A>; /* port-A is selected */
- sample-clk = <NPCX_TACH_FREQ_LFCLK>; /* Use LFCLK as sampling clock */
- pulses-per-round = <2>; /* number of pulses per round of encoder */
-};
-
-&pwm0_gpc3 {
- drive-open-drain;
-};
-
-&pwm0 {
- status = "okay";
- pinctrl-0 = <&pwm0_gpc3>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/npcx_evb/npcx9/gpio.dts b/zephyr/program/npcx_evb/npcx9/gpio.dts
deleted file mode 100644
index 9a32112471..0000000000
--- a/zephyr/program/npcx_evb/npcx9/gpio.dts
+++ /dev/null
@@ -1,72 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &gpio_wp;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- recovery_l {
- gpios = <&gpio0 3 GPIO_INPUT_PULL_UP>;
- };
- gpio_wp: wp_l {
- gpios = <&gpio9 3 (GPIO_INPUT_PULL_UP |
- GPIO_ACTIVE_LOW)>;
- };
- gpio_ac_present: ac_present {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_power_button_l: power_button_l {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_lid_open: lid_open {
- gpios = <&gpio0 1 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- entering_rw {
- gpios = <&gpio3 6 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- gpio_ec_pch_wake_odl: pch_wake_l {
- gpios = <&gpio5 0 GPIO_OUTPUT_HIGH>;
- };
- gpio_pgood_fan: pgood_fan {
- gpios = <&gpioc 7 GPIO_INPUT_PULL_UP>;
- };
- spi_cs_l {
- gpios = <&gpioa 5 GPIO_OUTPUT_HIGH>;
- };
- board_version1 {
- gpios = <&gpio6 4 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION1";
- };
- board_version2 {
- gpios = <&gpio6 5 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION2";
- };
- board_version3 {
- gpios = <&gpio6 6 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION3";
- };
- };
-};
-
-/* A falling edge detection type for PSL_IN2 */
-&psl_in2_gp00 {
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-/* Power domain device controlled by PSL (Power Switch Logic) IO pads */
-&power_ctrl_psl {
- status = "okay";
- pinctrl-names = "sleep";
- pinctrl-0 = <&psl_in2_gp00>;
-};
diff --git a/zephyr/program/npcx_evb/npcx9/interrupts.dts b/zephyr/program/npcx_evb/npcx9/interrupts.dts
deleted file mode 100644
index 3e92428ef4..0000000000
--- a/zephyr/program/npcx_evb/npcx9/interrupts.dts
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_ac_present: ac_present {
- irq-pin = <&gpio_ac_present>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_power_button: power_button {
- irq-pin = <&gpio_power_button_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- };
-};
diff --git a/zephyr/program/npcx_evb/npcx9/keyboard.dts b/zephyr/program/npcx_evb/npcx9/keyboard.dts
deleted file mode 100644
index e7e35d1493..0000000000
--- a/zephyr/program/npcx_evb/npcx9/keyboard.dts
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- cros-keyscan {
- compatible = "cros-ec,keyscan";
-
- output-settle = <40>;
- debounce-down = <6000>;
- scan-period = <1500>;
- poll-timeout = <1000000>;
-
- actual-key-mask = <
- 0x14 /* C0 */
- 0xff /* C1 */
- 0xff /* C2 */
- 0xff /* C3 */
- 0xff /* C4 */
- 0xf5 /* C5 */
- 0xff /* C6 */
- 0xa4 /* C7 */
- 0xff /* C8 */
- 0xf6 /* C9 */
- 0x55 /* C10 */
- 0xfa /* C11 */
- 0xc8 /* C12 */
- >;
- };
-
- kblight {
- compatible = "cros-ec,kblight-pwm";
- pwms = <&pwm2 0 PWM_KHZ(10) PWM_POLARITY_NORMAL>;
- };
-};
-
-&pwm2 {
- status = "okay";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/npcx_evb/npcx9/prj.conf b/zephyr/program/npcx_evb/npcx9/prj.conf
deleted file mode 100644
index 73b263c830..0000000000
--- a/zephyr/program/npcx_evb/npcx9/prj.conf
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_CROS_EC=y
-CONFIG_PLATFORM_EC=y
-CONFIG_PLATFORM_EC_BRINGUP=y
-CONFIG_PLATFORM_EC_EXTPOWER_GPIO=y
-CONFIG_PLATFORM_EC_LID_SWITCH=y
-CONFIG_PLATFORM_EC_POWER_BUTTON=y
-CONFIG_SHIMMED_TASKS=y
-
-CONFIG_PLATFORM_EC_BACKLIGHT_LID=n
-CONFIG_PLATFORM_EC_SWITCH=n
-CONFIG_PLATFORM_EC_VBOOT_EFS2=n
-CONFIG_PLATFORM_EC_VSTORE=n
-
-# Workaround npcx9 A1 chip's bug for download_from_flash API in th booter.
-# This can be removed when A2 chip is available.
-CONFIG_PLATFORM_EC_WORKAROUND_FLASH_DOWNLOAD_API=y
-
-# Board version is selected over GPIO board ID pins.
-CONFIG_PLATFORM_EC_BOARD_VERSION_GPIO=y
-
-# Sensors
-CONFIG_SENSOR=y
-CONFIG_SENSOR_SHELL=n
-
-# Console command
-CONFIG_PLATFORM_EC_CONSOLE_CMD_SCRATCHPAD=y
-
-CONFIG_TRACING=y
-CONFIG_TRACING_ISR=y
-CONFIG_TRACING_USER=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_IRQ=y
-
-# eSPI
-CONFIG_ESPI=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S3=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S4=y
-
-# Keyboard
-CONFIG_CROS_KB_RAW_NPCX_KSO_HIGH_DRIVE=y
-
-# RTC
-CONFIG_PLATFORM_EC_RTC=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_RTC=y
-
-# USB-C
-CONFIG_PLATFORM_EC_USB_PD_TBT_COMPAT_MODE=n
-CONFIG_PLATFORM_EC_USB_PD_USB4=n
-
-# Zephyr feature
-CONFIG_ASSERT=y
-CONFIG_SHELL_MINIMAL=n
-
-# Avoid underflow info from tachometer
-CONFIG_SENSOR_LOG_LEVEL_ERR=y
-
-CONFIG_SYSCON=y
diff --git a/zephyr/program/rex/BUILD.py b/zephyr/program/rex/BUILD.py
deleted file mode 100644
index 2537f61226..0000000000
--- a/zephyr/program/rex/BUILD.py
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Rex Projects."""
-
-
-def register_variant(
- project_name, extra_dts_overlays=(), extra_kconfig_files=()
-):
- """Register a variant of rex."""
- register_npcx_project(
- project_name=project_name,
- zephyr_board="npcx9m7f",
- dts_overlays=[
- # Common to all projects.
- here / "rex.dts",
- # Project-specific DTS customization.
- *extra_dts_overlays,
- ],
- kconfig_files=[
- # Common to all projects.
- here / "prj.conf",
- # Project-specific KConfig customization.
- *extra_kconfig_files,
- ],
- )
-
-
-register_variant(
- project_name="rex",
- extra_dts_overlays=[
- here / "generated.dts",
- here / "interrupts.dts",
- here / "power_signals.dts",
- here / "battery.dts",
- here / "usbc.dts",
- here / "keyboard.dts",
- here / "led.dts",
- here / "fan.dts",
- here / "temp_sensors.dts",
- here / "motionsense.dts",
- ],
- extra_kconfig_files=[here / "prj_rex.conf"],
-)
diff --git a/zephyr/program/rex/CMakeLists.txt b/zephyr/program/rex/CMakeLists.txt
deleted file mode 100644
index 27d7dff068..0000000000
--- a/zephyr/program/rex/CMakeLists.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cmake_minimum_required(VERSION 3.20.5)
-find_package(Zephyr REQUIRED HINTS "${ZEPHYR_BASE}")
-project(rex)
-
-zephyr_include_directories("${CMAKE_CURRENT_SOURCE_DIR}/include")
-zephyr_library_sources_ifdef(CONFIG_AP_PWRSEQ "src/board_power.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "src/usbc_config.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC "src/usb_pd_policy.c")
diff --git a/zephyr/program/rex/Kconfig b/zephyr/program/rex/Kconfig
deleted file mode 100644
index 7d17c27815..0000000000
--- a/zephyr/program/rex/Kconfig
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-config BOARD_REX
- bool "Google Rex Baseboard"
- help
- Build Google Rex reference board. The board uses Nuvoton
- NPCX9 chip as the EC.
-
-source "Kconfig.zephyr"
diff --git a/zephyr/program/rex/battery.dts b/zephyr/program/rex/battery.dts
deleted file mode 100644
index e11346f48d..0000000000
--- a/zephyr/program/rex/battery.dts
+++ /dev/null
@@ -1,12 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- batteries {
- default_battery: batgqa05l22 {
- compatible = "powertech,batgqa05l22", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/rex/fan.dts b/zephyr/program/rex/fan.dts
deleted file mode 100644
index aa6dcfde7d..0000000000
--- a/zephyr/program/rex/fan.dts
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- fans {
- compatible = "cros-ec,fans";
-
- fan_0 {
- pwms = <&pwm5 0 PWM_KHZ(1) PWM_POLARITY_NORMAL>;
- rpm_min = <2200>;
- rpm_start = <2200>;
- rpm_max = <4200>;
- tach = <&tach1>;
- enable_gpio = <&gpio_en_pp5000_fan>;
- };
- };
-};
-
-/* Tachemeter for fan speed measurement */
-&tach1 {
- status = "okay";
- pinctrl-0 = <&ta1_1_in_gp40>;
- pinctrl-names = "default";
- port = <NPCX_TACH_PORT_A>; /* port-A is selected */
- sample-clk = <NPCX_TACH_FREQ_LFCLK>; /* Use LFCLK as sampling clock */
- pulses-per-round = <2>; /* number of pulses per round of encoder */
-};
-
-&pwm5_gpb7 {
- drive-open-drain;
-};
-
-&pwm5 {
- status = "okay";
- pinctrl-0 = <&pwm5_gpb7>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/rex/generated.dts b/zephyr/program/rex/generated.dts
deleted file mode 100644
index 5b6f9cd708..0000000000
--- a/zephyr/program/rex/generated.dts
+++ /dev/null
@@ -1,363 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * This file is auto-generated - do not edit!
- *
- * TODO(b:/244441996): There are some errors in the main Rex EC GPIO spreadsheet
- * which is used as input to create this device tree file. Until that issue is
- * resolved, there are some edits required to this file to support EC
- * functionality.
- */
-
-/ {
-
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_ddr_soc: ddr_soc {
- enum-name = "ADC_TEMP_SENSOR_1_DDR_SOC";
- io-channels = <&adc0 0>;
- };
- adc_ambient: ambient {
- enum-name = "ADC_TEMP_SENSOR_2";
- io-channels = <&adc0 1>;
- };
- adc_charger: charger {
- enum-name = "ADC_TEMP_SENSOR_3";
- io-channels = <&adc0 8>;
- };
- adc_wwan: wwan {
- enum-name = "ADC_TEMP_SENSOR_4";
- io-channels = <&adc0 7>;
- };
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_acok_od: acok_od {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioe 5 GPIO_ODR_HIGH>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- gpio_cpu_c10_gate_l: cpu_c10_gate_l {
- gpios = <&gpioa 7 GPIO_INPUT>;
- };
- gpio_ec_accel_int_r_l: ec_accel_int_r_l {
- gpios = <&gpio8 1 GPIO_INPUT>;
- };
- gpio_ec_als_rgb_int_r_l: ec_als_rgb_int_r_l {
- gpios = <&gpiod 4 GPIO_INPUT_PULL_UP>;
- };
- gpio_ec_batt_pres_odl: ec_batt_pres_odl {
- gpios = <&gpioa 3 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- gpio_ec_cbi_wp: ec_cbi_wp {
- gpios = <&gpio7 3 GPIO_OUTPUT>;
- };
- gpio_ec_edp_bl_en: ec_edp_bl_en {
- gpios = <&gpiod 3 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- gpio_ec_gsc_packet_mode: ec_gsc_packet_mode {
- gpios = <&gpio7 5 GPIO_OUTPUT>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_ec_imu_int_r_l: ec_imu_int_r_l {
- gpios = <&gpio5 6 GPIO_INPUT_PULL_UP>;
- };
- gpio_ec_imvp92_en_smb: ec_imvp92_en_smb {
- gpios = <&gpiob 1 GPIO_OUTPUT>;
- };
- gpio_ec_kb_bl_en_l: ec_kb_bl_en_l {
- gpios = <&gpio8 6 GPIO_OUTPUT>;
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_ec_prochot_in_l: ec_prochot_in_l {
- gpios = <&gpiof 0 GPIO_INPUT>;
- };
- gpio_ec_prochot_odl: ec_prochot_odl {
- gpios = <&gpio6 3 GPIO_ODR_HIGH>;
- };
- gpio_ec_rst_r_odl: ec_rst_r_odl {
- gpios = <&gpio7 7 GPIO_INPUT>;
- };
- gpio_ec_soc_int_odl: ec_soc_int_odl {
- gpios = <&gpio7 0 GPIO_ODR_LOW>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_ec_soc_pwr_btn_odl: ec_soc_pwr_btn_odl {
- gpios = <&gpioc 1 GPIO_ODR_LOW>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- gpio_ec_soc_rsmrst_l: ec_soc_rsmrst_l {
- gpios = <&gpioa 6 GPIO_OUTPUT>;
- };
- gpio_ec_soc_rtcrst: ec_soc_rtcrst {
- gpios = <&gpio7 6 GPIO_ODR_HIGH>;
- };
- gpio_ec_soc_wake_r_odl: ec_soc_wake_r_odl {
- gpios = <&gpioc 0 GPIO_ODR_LOW>;
- };
- gpio_ec_spare_gpio42: ec_spare_gpio42 {
- gpios = <&gpio4 2 GPIO_OUTPUT>;
- };
- gpio_ec_spare_gpio66: ec_spare_gpio66 {
- gpios = <&gpio6 6 GPIO_OUTPUT>;
- };
- gpio_ec_spare_gpio94: ec_spare_gpio94 {
- gpios = <&gpio9 4 GPIO_OUTPUT>;
- };
- gpio_ec_spare_gpioa2: ec_spare_gpioa2 {
- gpios = <&gpioa 2 GPIO_OUTPUT>;
- };
- gpio_ec_spare_gpioa4: ec_spare_gpioa4 {
- gpios = <&gpioa 4 GPIO_OUTPUT>;
- };
- gpio_ec_spare_gpioc7: ec_spare_gpioc7 {
- gpios = <&gpioc 7 GPIO_OUTPUT>;
- };
- gpio_ec_spare_gpo32: ec_spare_gpo32 {
- gpios = <&gpio3 2 GPIO_OUTPUT>;
- };
- gpio_ec_spare_gpo35: ec_spare_gpo35 {
- gpios = <&gpio3 5 GPIO_OUTPUT>;
- };
- gpio_ec_voldn_btn_odl: ec_voldn_btn_odl {
- gpios = <&gpio9 3 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_ec_volup_btn_odl: ec_volup_btn_odl {
- gpios = <&gpio9 7 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_ec_wp_l: ec_wp_l {
- gpios = <&gpioa 1 GPIO_INPUT>;
- };
- gpio_en_pp5000_fan: en_pp5000_fan {
- gpios = <&gpio6 1 GPIO_OUTPUT_LOW>;
- };
- gpio_en_pp5000_usba_r: en_pp5000_usba_r {
- gpios = <&gpiod 7 GPIO_OUTPUT>;
- };
- gpio_en_s5_rails: en_s5_rails {
- gpios = <&gpiob 6 GPIO_ODR_HIGH>;
- enum-name = "GPIO_TEMP_SENSOR_POWER";
- };
- gpio_en_z1_rails: en_z1_rails {
- gpios = <&gpio8 5 GPIO_OUTPUT>;
- };
- gpio_gsc_ec_pwr_btn_odl: gsc_ec_pwr_btn_odl {
- gpios = <&gpio0 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_imvp92_vrrdy_od: imvp92_vrrdy_od {
- gpios = <&gpio4 3 GPIO_INPUT>;
- };
- gpio_led_1_l: led_1_l {
- gpios = <&gpioc 4 GPIO_OUTPUT>;
- };
- gpio_led_2_l: led_2_l {
- gpios = <&gpioc 3 GPIO_OUTPUT>;
- };
- gpio_led_3_l: led_3_l {
- gpios = <&gpioc 2 GPIO_OUTPUT>;
- };
- gpio_led_4_l: led_4_l {
- gpios = <&gpio6 0 GPIO_OUTPUT>;
- };
- gpio_lid_open: lid_open {
- gpios = <&gpiod 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_mech_pwr_btn_odl: mech_pwr_btn_odl {
- gpios = <&gpio0 2 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_seq_ec_all_sys_pg: seq_ec_all_sys_pg {
- gpios = <&gpiof 4 GPIO_INPUT>;
- };
- gpio_seq_ec_rsmrst_odl: seq_ec_rsmrst_odl {
- gpios = <&gpioe 2 GPIO_INPUT>;
- };
- gpio_slp_s3_ls_l: slp_s3_ls_l {
- gpios = <&gpio4 1 GPIO_INPUT>;
- };
- gpio_sochot_odl: sochot_odl {
- gpios = <&gpio9 6 GPIO_INPUT>;
- };
- gpio_soc_pwrok: soc_pwrok {
- gpios = <&gpioa 5 GPIO_OUTPUT>;
- };
- gpio_sys_pwrok: sys_pwrok {
- gpios = <&gpiob 0 GPIO_OUTPUT>;
- };
- gpio_sys_rst_odl: sys_rst_odl {
- gpios = <&gpioc 5 GPIO_INPUT>;
- };
- gpio_sys_slp_s0ix_3v3_l: sys_slp_s0ix_3v3_l {
- gpios = <&gpiod 5 GPIO_INPUT>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpio9 5 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_usb_c0_bc12_int_odl: usb_c0_bc12_int_odl {
- gpios = <&gpioc 6 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_BC12_INT_ODL";
- };
- gpio_usb_c0_ppc_int_odl: usb_c0_ppc_int_odl {
- gpios = <&gpio6 2 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_PPC_INT_ODL";
- };
- gpio_usb_c0_rt_3p3_sx_en: usb_c0_rt_3p3_sx_en {
- gpios = <&gpio0 3 GPIO_OUTPUT_LOW>;
- };
- gpio_usb_c0_rt_int_odl: usb_c0_rt_int_odl {
- gpios = <&gpioa 0 GPIO_INPUT>;
- };
- gpio_usb_c0_tcpc_int_odl: usb_c0_tcpc_int_odl {
- gpios = <&gpioe 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_TCPC_INT_ODL";
- };
- gpio_usb_c0_tcpc_rst_odl: usb_c0_tcpc_rst_odl {
- gpios = <&gpio6 7 GPIO_ODR_HIGH>;
- };
- gpio_usb_c1_bc12_int_odl: usb_c1_bc12_int_odl {
- gpios = <&gpio5 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_BC12_INT_ODL";
- };
- gpio_usb_c1_frs_en: usb_c1_frs_en {
- gpios = <&gpio8 3 GPIO_ODR_HIGH>;
- };
- gpio_usb_c1_ppc_int_odl: usb_c1_ppc_int_odl {
- gpios = <&gpiof 5 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_PPC_INT_ODL";
- };
- gpio_usb_c1_rst_odl: usb_c1_rst_odl {
- gpios = <&gpio3 7 GPIO_ODR_LOW>;
- };
- gpio_usb_c1_rt_int_odl: usb_c1_rt_int_odl {
- gpios = <&gpio7 2 GPIO_INPUT_PULL_UP>;
- };
- gpio_usb_c1_rt_rst_r_odl: usb_c1_rt_rst_r_odl {
- gpios = <&gpio7 4 GPIO_ODR_HIGH>;
- };
- gpio_usb_c1_tcpc_int_odl: usb_c1_tcpc_int_odl {
- gpios = <&gpio3 4 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_TCPC_INT_ODL";
- };
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_ec_i2c_sensor: ec_i2c_sensor {
- i2c-port = <&i2c0_0>;
- enum-names = "I2C_PORT_SENSOR";
- };
- i2c_ec_i2c_usb_c0_tcp: ec_i2c_usb_c0_tcp {
- i2c-port = <&i2c1_0>;
- enum-names = "I2C_PORT_USB_C0_TCPC";
- };
- i2c_ec_i2c_usb_c0_ppc_b: ec_i2c_usb_c0_ppc_b {
- i2c-port = <&i2c2_0>;
- enum-names = "I2C_PORT_PPC0";
- };
- i2c_ec_i2c_usb_c0_rt: ec_i2c_usb_c0_rt {
- i2c-port = <&i2c3_0>;
- enum-names = "I2C_PORT_USB_C0_RT";
- };
- i2c_ec_i2c_usb_c1_tcp: ec_i2c_usb_c1_tcp {
- i2c-port = <&i2c4_1>;
- enum-names = "I2C_PORT_USB_C1_TCPC";
- dynamic-speed;
- };
- i2c_ec_i2c_bat: ec_i2c_bat {
- i2c-port = <&i2c5_0>;
- enum-names = "I2C_PORT_BATTERY";
- };
- i2c_ec_i2c_usb_c1_mix: ec_i2c_usb_c1_mix {
- i2c-port = <&i2c6_1>;
- enum-names = "I2C_PORT_USB_1_MIX";
- };
- i2c_ec_i2c_mi: ec_i2c_mi {
- i2c-port = <&i2c7_0>;
- enum-names = "I2C_PORT_EEPROM";
- };
- };
-};
-
-&adc0 {
- status = "okay";
-};
-
-&i2c0_0 {
- status = "okay";
-};
-
-&i2c1_0 {
- status = "okay";
-};
-
-&i2c2_0 {
- status = "okay";
-};
-
-&i2c3_0 {
- status = "okay";
-};
-
-&i2c4_1 {
- status = "okay";
-};
-
-&i2c5_0 {
- status = "okay";
-};
-
-&i2c6_1 {
- status = "okay";
-};
-
-&i2c7_0 {
- status = "okay";
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-&i2c_ctrl2 {
- status = "okay";
-};
-
-&i2c_ctrl3 {
- status = "okay";
-};
-
-&i2c_ctrl4 {
- status = "okay";
-};
-
-&i2c_ctrl5 {
- status = "okay";
-};
-
-&i2c_ctrl6 {
- status = "okay";
-};
-
-&i2c_ctrl7 {
- status = "okay";
-};
diff --git a/zephyr/program/rex/include/gpio_map.h b/zephyr/program/rex/include/gpio_map.h
deleted file mode 100644
index 01cbc44396..0000000000
--- a/zephyr/program/rex/include/gpio_map.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#ifndef __ZEPHYR_GPIO_MAP_H
-#define __ZEPHYR_GPIO_MAP_H
-
-#endif /* __ZEPHYR_GPIO_MAP_H */
diff --git a/zephyr/program/rex/interrupts.dts b/zephyr/program/rex/interrupts.dts
deleted file mode 100644
index 7de9141caf..0000000000
--- a/zephyr/program/rex/interrupts.dts
+++ /dev/null
@@ -1,80 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_ac_present: ac_present {
- irq-pin = <&gpio_acok_od>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_power_button: power_button {
- irq-pin = <&gpio_mech_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_usb_c0_sbu_fault: c0_sbu_fault {
- irq-pin = <&ioex_usb_c0_sbu_fault_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "sbu_fault_interrupt";
- };
- int_usb_c0_tcpc: usb_c0_tcpc {
- irq-pin = <&gpio_usb_c0_tcpc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c0_ppc: usb_c0_ppc {
- irq-pin = <&gpio_usb_c0_ppc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c0_bc12: usb_c0_bc12 {
- irq-pin = <&gpio_usb_c0_bc12_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bc12_interrupt";
- };
- int_usb_c1_tcpc: usb_c1_tcpc {
- irq-pin = <&gpio_usb_c1_tcpc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c1_ppc: usb_c1_ppc {
- irq-pin = <&gpio_usb_c1_ppc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c1_bc12: usb_c1_bc12 {
- irq-pin = <&gpio_usb_c1_bc12_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bc12_interrupt";
- };
- int_imu: ec_imu {
- irq-pin = <&gpio_ec_imu_int_r_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "lsm6dso_interrupt";
- };
- int_als_rgb: ec_als_rgb {
- irq-pin = <&gpio_ec_als_rgb_int_r_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcs3400_interrupt";
- };
- int_accel: ec_accel {
- irq-pin = <&gpio_ec_accel_int_r_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "lis2dw12_interrupt";
- };
- };
-};
-
-/* Required node label that doesn't is named differently on Rex */
-gpio_ec_pch_wake_odl: &gpio_ec_soc_wake_r_odl {};
-
diff --git a/zephyr/program/rex/keyboard.dts b/zephyr/program/rex/keyboard.dts
deleted file mode 100644
index 91fad2db92..0000000000
--- a/zephyr/program/rex/keyboard.dts
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- kblight {
- compatible = "cros-ec,kblight-pwm";
- pwms = <&pwm3 0 PWM_HZ(2400) PWM_POLARITY_NORMAL>;
- };
-};
-
-&pwm3 {
- status = "okay";
- pinctrl-0 = <&pwm3_gp80>;
- pinctrl-names = "default";
-};
-
-&cros_kb_raw {
- status = "okay";
- /* No KSO2 (it's inverted and implemented by GPIO) */
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- &kso13_gp04
- &kso14_gp82
- >;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/rex/led.dts b/zephyr/program/rex/led.dts
deleted file mode 100644
index fb31eaac43..0000000000
--- a/zephyr/program/rex/led.dts
+++ /dev/null
@@ -1,122 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- gpio-led-pins {
- compatible = "cros-ec,gpio-led-pins";
-
- color_off: color-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pins = <&gpio_led_1_l &gpio_led_2_l>;
- led-values = <1 1>;
- };
-
- color_white: color-white {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_WHITE";
- led-pins = <&gpio_led_1_l &gpio_led_2_l>;
- led-values = <1 0>;
- };
-
- color_amber: color-amber {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pins = <&gpio_led_1_l &gpio_led_2_l>;
- led-values = <0 1>;
- };
- };
-
- led-colors {
- compatible = "cros-ec,led-policy";
-
- power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
-
- power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- /* Blue 1 sec, off 3 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
-
- power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-error {
- charge-state = "PWR_STATE_ERROR";
-
- /* Red 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
-
- power-state-forced-idle {
- charge-state = "PWR_STATE_FORCED_IDLE";
-
- /* White 2 sec, Amber 2 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_amber>;
- period-ms = <2000>;
- };
- };
-
- power-state-idle-default {
- charge-state = "PWR_STATE_IDLE";
-
- color-0 {
- led-color = <&color_white>;
- };
- };
- };
-};
diff --git a/zephyr/program/rex/motionsense.dts b/zephyr/program/rex/motionsense.dts
deleted file mode 100644
index 6af7cd2b12..0000000000
--- a/zephyr/program/rex/motionsense.dts
+++ /dev/null
@@ -1,257 +0,0 @@
-/*
- * Copyright 2022 The ChromiumOS Authors
- *
- * SPDX-License-Identifier: Apache-2.0
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- lsm6dso-int = &base_accel;
- lis2dw12-int = &lid_accel;
- tcs3400-int = &als_clear;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- mutex_lis2dw12: lis2dw12-mutex {
- };
-
- mutex_lsm6dso: lsm6dso-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 1 0
- 1 0 0
- 0 0 (-1)>;
- };
- base_rot_ref: base-rotation-ref {
- mat33 = <1 0 0
- 0 (-1) 0
- 0 0 (-1)>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- lis2dw12_data: lis2dw12-drv-data {
- compatible = "cros-ec,drvdata-lis2dw12";
- status = "okay";
- };
-
- lsm6dso_accel_data: lsm6dso-accel-drv-data {
- compatible = "cros-ec,drvdata-lsm6dso";
- status = "okay";
- };
-
- lsm6dso_gyro_data: lsm6dso-gyro-drv-data {
- compatible = "cros-ec,drvdata-lsm6dso";
- status = "okay";
- };
-
- tcs_clear_data: tcs3400-clear-drv-data {
- compatible = "cros-ec,drvdata-tcs3400-clear";
- status = "okay";
-
- als-drv-data {
- compatible = "cros-ec,accelgyro-als-drv-data";
- als-cal {
- scale = <1>;
- uscale = <0>;
- offset = <0>;
- als-channel-scale {
- compatible =
- "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- };
- };
-
- tcs_rgb_data: tcs3400-rgb-drv-data {
- compatible = "cros-ec,drvdata-tcs3400-rgb";
- status = "okay";
-
- /* node for rgb_calibration_t defined in accelgyro.h */
- rgb_calibration {
- compatible =
- "cros-ec,accelgyro-rgb-calibration";
-
- irt = <1>;
-
- rgb-cal-x {
- offset = <0>;
- coeff = <0 0 0 1>;
- als-channel-scale {
- compatible =
- "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- rgb-cal-y {
- offset = <0>;
- coeff = <0 0 0 1>;
- als-channel-scale {
- compatible =
- "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- rgb-cal-z {
- offset = <0>;
- coeff = <0 0 0 1>;
- als-channel-scale {
- compatible =
- "cros-ec,accelgyro-als-channel-scale";
- k-channel-scale = <1>;
- cover-scale = <1>;
- };
- };
- };
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,lis2dw12";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&mutex_lis2dw12>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&lis2dw12_data>;
- i2c-spi-addr-flags = "LIS2DWL_ADDR0_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,lsm6dso-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_lsm6dso>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- default-range = <4>;
- drv-data = <&lsm6dso_accel_data>;
- i2c-spi-addr-flags = "LSM6DSO_ADDR0_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- ec-rate = <(100 * USEC_PER_MSEC)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- ec-rate = <(100 * USEC_PER_MSEC)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,lsm6dso-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_lsm6dso>;
- port = <&i2c_ec_i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- default-range = <(1000 | ROUND_UP_FLAG)>; /* dps */
- drv-data = <&lsm6dso_gyro_data>;
- i2c-spi-addr-flags = "LSM6DSO_ADDR0_FLAGS";
- };
-
- als_clear: base-als-clear {
- compatible = "cros-ec,tcs3400-clear";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_CAMERA";
- port = <&i2c_ec_i2c_sensor>;
- default-range = <0x10000>;
- drv-data = <&tcs_clear_data>;
- i2c-spi-addr-flags = "TCS3400_I2C_ADDR_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- /* Run ALS sensor in S0 */
- odr = <1000>;
- };
- };
- };
-
- base-als-rgb {
- compatible = "cros-ec,tcs3400-rgb";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_CAMERA";
- default-range = <0x10000>; /* scale = 1x, uscale = 0 */
- drv-data = <&tcs_rgb_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /* list of entries for motion_als_sensors */
- als-sensors = <&als_clear>;
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_imu &int_als_rgb &int_accel>;
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel &als_clear>;
- };
-};
diff --git a/zephyr/program/rex/power_signals.dts b/zephyr/program/rex/power_signals.dts
deleted file mode 100644
index 09c84b8558..0000000000
--- a/zephyr/program/rex/power_signals.dts
+++ /dev/null
@@ -1,152 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- chosen {
- intel-ap-pwrseq,espi = &espi0;
- };
-
- common-pwrseq {
- compatible = "intel,ap-pwrseq";
-
- sys-pwrok-delay = <3>;
- all-sys-pwrgd-timeout = <20>;
- };
-
- pwr-en-pp3300-s5 {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PP1800_S5/PP3300_S5 enable output to LS";
- enum-name = "PWR_EN_PP3300_A";
- gpios = <&gpiob 6 GPIO_ACTIVE_HIGH>;
- output;
- };
- pwr-pg-ec-rsmrst-od {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST power good from regulator";
- enum-name = "PWR_RSMRST";
- gpios = <&gpioe 2 GPIO_ACTIVE_HIGH>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-ec-pch-rsmrst-odl {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "RSMRST output to PCH";
- enum-name = "PWR_EC_PCH_RSMRST";
- gpios = <&gpioa 6 GPIO_ACTIVE_HIGH>;
- output;
- };
- pwr-pch-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "PCH_PWROK output to PCH";
- enum-name = "PWR_PCH_PWROK";
- gpios = <&gpioa 5 GPIO_ACTIVE_HIGH>;
- output;
- };
- pwr-ec-pch-sys-pwrok {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_PWROK output to PCH";
- enum-name = "PWR_EC_PCH_SYS_PWROK";
- gpios = <&gpiob 0 GPIO_ACTIVE_HIGH>;
- output;
- };
- pwr-sys-rst-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SYS_RESET# output to PCH";
- enum-name = "PWR_SYS_RST";
- gpios = <&gpioc 5 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>;
- output;
- };
- pwr-slp-s0-l {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "SLP_S0_L input from PCH";
- enum-name = "PWR_SLP_S0";
- gpios = <&gpiod 5 GPIO_ACTIVE_LOW>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
- pwr-slp-s3-l {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S3_L input from PCH";
- enum-name = "PWR_SLP_S3";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S4";
- vw-invert;
-/*
- * TODO: Initially, use virtual wire for sleep S3 signal instead of
- * of the GPIO signal which also exists.
- * compatible = "intel,ap-pwrseq-gpio";
- * gpios = <&gpio4 1 GPIO_ACTIVE_LOW>;
- * interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- */
- };
- pwr-slp-s4 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S4 virtual wire input from PCH";
- enum-name = "PWR_SLP_S4";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S4";
- vw-invert;
- };
- pwr-slp-s5 {
- compatible = "intel,ap-pwrseq-vw";
- dbg-label = "SLP_S5 virtual wire input from PCH";
- enum-name = "PWR_SLP_S5";
- virtual-wire = "ESPI_VWIRE_SIGNAL_SLP_S5";
- vw-invert;
- };
- pwr-all-sys-pwrgd {
- compatible = "intel,ap-pwrseq-gpio";
- dbg-label = "all power good";
- enum-name = "PWR_ALL_SYS_PWRGD";
- gpios = <&gpiof 4 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
- interrupt-flags = <GPIO_INT_EDGE_BOTH>;
- };
-};
-
-/*
- * Because the power signals directly reference the GPIOs,
- * the corresponding named-gpios need to have no-auto-init set.
- */
- /* pwr-en-pp3300-s5 */
-&gpio_en_s5_rails {
- no-auto-init;
-};
-
-/* pwr-pg-ec-rsmrst-od */
-&gpio_seq_ec_rsmrst_odl {
- no-auto-init;
-};
-
-/* pwr-ec-pch-rsmrst-odl */
-&gpio_ec_soc_rsmrst_l {
- no-auto-init;
-};
-
-/* pwr-pch-pwrok */
-&gpio_soc_pwrok {
- no-auto-init;
-};
-
-/* pwr-ec-pch-sys-pwrok */
-&gpio_sys_pwrok {
- no-auto-init;
-};
-
-/* pwr-sys-rst-l */
-&gpio_sys_rst_odl {
- no-auto-init;
-};
-
-/* pwr-slp-s0-l */
-&gpio_sys_slp_s0ix_3v3_l {
- no-auto-init;
-};
-
-/* pwr-slp-s3-l */
-&gpio_slp_s3_ls_l {
- no-auto-init;
-};
-
-/* pwr-all-sys-pwrgd */
-&gpio_seq_ec_all_sys_pg {
- no-auto-init;
-};
-
diff --git a/zephyr/program/rex/prj.conf b/zephyr/program/rex/prj.conf
deleted file mode 100644
index 221f1e712b..0000000000
--- a/zephyr/program/rex/prj.conf
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_PLATFORM_EC=y
-CONFIG_CROS_EC=y
-CONFIG_SHIMMED_TASKS=y
-CONFIG_SYSCON=y
-# Enable during development
-CONFIG_LTO=n
-CONFIG_PLATFORM_EC_SYSTEM_UNLOCKED=y
-CONFIG_PLATFORM_EC_BOARD_RESET_AFTER_POWER_ON=y
-
-# Shell Commands
-CONFIG_SHELL_HELP=y
-CONFIG_SHELL_HISTORY=y
-CONFIG_SHELL_TAB=y
-CONFIG_SHELL_TAB_AUTOCOMPLETION=y
-CONFIG_KERNEL_SHELL=y
-
-# Disable default features we don't want in a minimal example.
-CONFIG_PLATFORM_EC_BACKLIGHT_LID=y
-CONFIG_PLATFORM_EC_SWITCH=y
-CONFIG_PLATFORM_EC_VBOOT_EFS2=y
-
-# Application processor; communicates with EC via eSPI
-CONFIG_AP=y
-CONFIG_ESPI=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S3=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S4=y
-CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI_VW_SLP_S5=y
-CONFIG_PLATFORM_EC_HOSTCMD=y
-# Disabling this until temp sensor support is in
-CONFIG_PLATFORM_EC_THROTTLE_AP=n
-CONFIG_PLATFORM_EC_PORT80=y
-
-# Power Sequecing
-CONFIG_AP_X86_INTEL_MTL=y
-CONFIG_X86_NON_DSX_PWRSEQ_MTL=y
-CONFIG_X86_NON_DSX_PWRSEQ_HOST_CMD=y
-# TODO (b/240434243): This may be needed, but using eSPI VW for now
-CONFIG_PLATFORM_EC_POWERSEQ_SLP_S3_L_OVERRIDE=n
-CONFIG_PLATFORM_EC_POWERSEQ_PP5000_CONTROL=n
-
-# Zephyr Inbuilt AP Power Sequencing Config
-CONFIG_AP_PWRSEQ=y
-CONFIG_X86_NON_DSX_PWRSEQ_CONSOLE=y
-CONFIG_AP_PWRSEQ_S0IX=y
-
-# I2C
-CONFIG_PLATFORM_EC_HOSTCMD_I2C_CONTROL=y
-
-# Temperature sensors
-CONFIG_SENSOR=y
-CONFIG_PLATFORM_EC_TEMP_SENSOR_POWER=y
-
-# CBI EEPROM support
-CONFIG_EEPROM=y
-CONFIG_PLATFORM_EC_BOARD_VERSION_CBI=y
-CONFIG_PLATFORM_EC_BYPASS_CBI_EEPROM_WP_CHECK=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_DT=y
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_SMART=y
-CONFIG_PLATFORM_EC_BATTERY_FUEL_GAUGE=y
-CONFIG_PLATFORM_EC_BATTERY_CUT_OFF=y
-CONFIG_PLATFORM_EC_BATTERY_PRESENT_GPIO=y
-CONFIG_PLATFORM_EC_BATTERY_REVIVE_DISCONNECT=y
-
-# Charger
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC=y
-CONFIG_PLATFORM_EC_CHARGER_DEFAULT_CURRENT_LIMIT=512
-CONFIG_PLATFORM_EC_CHARGER_ISL9241=y
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR=5
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR_AC=10
-CONFIG_PLATFORM_EC_CHARGER_MIN_POWER_MW_FOR_POWER_ON=30000
-CONFIG_PLATFORM_EC_CHARGER_MIN_POWER_MW_FOR_POWER_ON_WITH_BATT=15000
-CONFIG_PLATFORM_EC_CHARGER_MIN_INPUT_CURRENT_LIMIT=512
-
-# USBC
-CONFIG_PLATFORM_EC_USBC_PPC=y
-CONFIG_PLATFORM_EC_USBC_PPC_NX20P3483=y
-CONFIG_PLATFORM_EC_USBC_PPC_SYV682X=y
-CONFIG_PLATFORM_EC_USBC_PPC_SYV682C=y
-CONFIG_PLATFORM_EC_USBC_PPC_SYV682X_SMART_DISCHARGE=y
-CONFIG_PLATFORM_EC_USBC_RETIMER_INTEL_HB=y
-CONFIG_PLATFORM_EC_USBC_VCONN=y
-
-CONFIG_PLATFORM_EC_USB_DRP_ACC_TRYSRC=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_DISCHARGE_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_FRS=y
-CONFIG_PLATFORM_EC_USB_PD_FRS_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_REV30=y
-CONFIG_PLATFORM_EC_USB_PD_TCPC_LOW_POWER=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_TCPCI=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_NCT38XX=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_PS8815=y
-CONFIG_PLATFORM_EC_USB_PD_TRY_SRC=y
-CONFIG_PLATFORM_EC_USB_PD_DUAL_ROLE_AUTO_TOGGLE=y
-CONFIG_PLATFORM_EC_USB_PD_TBT_COMPAT_MODE=y
-CONFIG_PLATFORM_EC_USB_PD_USB32_DRD=y
-CONFIG_PLATFORM_EC_USB_PD_USB4=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_MEASURE_CHARGER=y
-CONFIG_PLATFORM_EC_USB_PID=0x504D
-
-#USB Mux
-CONFIG_PLATFORM_EC_USB_MUX_VIRTUAL=y
-CONFIG_PLATFORM_EC_USB_MUX_TASK=y
-
-# External power
-CONFIG_PLATFORM_EC_EXTPOWER_GPIO=y
-
-# Standard shimmed features
-CONFIG_PLATFORM_EC_POWER_BUTTON=y
-CONFIG_PLATFORM_EC_LID_SWITCH=y
-
-# Keyboard support
-CONFIG_PLATFORM_EC_KEYBOARD_PROTOCOL_8042=y
-# Column 2 is driven through the GSC, which inverts the signal going through it
-CONFIG_PLATFORM_EC_KEYBOARD_COL2_INVERTED=y
-
-# MKBP event
-CONFIG_PLATFORM_EC_MKBP_EVENT=y
-CONFIG_PLATFORM_EC_MKBP_INPUT_DEVICES=y
-CONFIG_PLATFORM_EC_MKBP_USE_GPIO_AND_HOST_EVENT=y
-
-# Sensors console command
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCELS=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCEL_INFO=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_I2C_SPEED=y
-
-# Sensors
-CONFIG_SENSOR=y
-CONFIG_SENSOR_SHELL=n
-CONFIG_PLATFORM_EC_MOTIONSENSE=y
-CONFIG_PLATFORM_EC_ACCEL_FIFO=y
-CONFIG_PLATFORM_EC_DYNAMIC_MOTION_SENSOR_COUNT=y
-CONFIG_PLATFORM_EC_GMR_TABLET_MODE=y
-CONFIG_PLATFORM_EC_LID_ANGLE=y
-CONFIG_PLATFORM_EC_LID_ANGLE_UPDATE=y
-CONFIG_PLATFORM_EC_SENSOR_TIGHT_TIMESTAMPS=y
-CONFIG_PLATFORM_EC_TABLET_MODE=y
-CONFIG_PLATFORM_EC_TABLET_MODE_SWITCH=y
-
-# Sensor Drivers
-CONFIG_PLATFORM_EC_ACCELGYRO_LSM6DSO=y
-CONFIG_PLATFORM_EC_ACCEL_LIS2DW12=y
-CONFIG_PLATFORM_EC_ALS_TCS3400=y
diff --git a/zephyr/program/rex/prj_rex.conf b/zephyr/program/rex/prj_rex.conf
deleted file mode 100644
index b724a881b9..0000000000
--- a/zephyr/program/rex/prj_rex.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Rex reference-board-specific Kconfig settings.
-CONFIG_BOARD_REX=y
diff --git a/zephyr/program/rex/rex.dts b/zephyr/program/rex/rex.dts
deleted file mode 100644
index a20bfccdfe..0000000000
--- a/zephyr/program/rex/rex.dts
+++ /dev/null
@@ -1,262 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
- #include <dt-bindings/usb_pd_tcpm.h>
-
-/ {
- aliases {
- gpio-wp = &ec_wp_l;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- ec_wp_l: write-protect {
- gpios = <&gpioa 0 GPIO_INPUT>;
- };
- gpio_ec_entering_rw: ec_entering_rw {
- enum-name = "GPIO_ENTERING_RW";
- };
-
- ioex_usb_c0_sbu_fault_odl: usb_c0_sbu_fault_odl {
- gpios = <&ioex_c0_port1 2 GPIO_INPUT>;
- };
- ioex_usb_c0_rt_rst_ls_l: usb_c0_rt_rst_ls_l {
- gpios = <&ioex_c0_port0 7 GPIO_OUTPUT>;
- };
-
- ioex_usb_c0_frs_en: usb_c0_frs_en {
- gpios = <&ioex_c0_port0 6 GPIO_OUTPUT_LOW>;
- };
-
- /* Need to designate 1.8V for I2C buses on the 1800mV rail */
- ec-i2c-sensor-scl {
- gpios = <&gpiob 5 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-sensor-sda {
- gpios = <&gpiob 4 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-c0-rt-scl {
- gpios = <&gpiod 1 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-c0-rt-sda {
- gpios = <&gpiod 0 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- };
-
- usba-port-enable-list {
- compatible = "cros-ec,usba-port-enable-pins";
- enable-pins = <&gpio_en_pp5000_usba_r>;
- };
-};
-
-/* host interface */
-&espi0 {
- status = "okay";
- pinctrl-0 = <&espi_lpc_gp46_47_51_52_53_54_55_57>;
- pinctrl-names = "default";
-};
-
-/* Power switch logic input pads */
-&psl_in1_gpd2 {
- /* LID_OPEN */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in2_gp00 {
- /* ACOK_OD */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in4_gp02 {
- /* MECH_PWR_BTN_ODL */
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-/* Power domain device controlled by PSL (Power Switch Logic) IO pads */
-&power_ctrl_psl {
- status = "okay";
- pinctrl-names = "sleep";
- pinctrl-0 = <&psl_in1_gpd2 &psl_in2_gp00 &psl_in4_gp02>;
-};
-
-/* ADC and GPIO alt-function specifications */
-&adc0 {
- pinctrl-0 = <&adc0_chan0_gp45
- &adc0_chan1_gp44
- &adc0_chan8_gpf1
- &adc0_chan7_gpe1>;
- pinctrl-names = "default";
-};
-
-&i2c0_0 {
- label = "I2C_SENSOR";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-};
-
-&i2c1_0 {
- label = "I2C_USB_C0_TCPC";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-
- tcpc_port0: nct38xx@70 {
- compatible = "nuvoton,nct38xx";
- gpio-dev = <&nct3807_C0>;
- reg = <0x70>;
- tcpc-flags = <(TCPC_FLAGS_TCPCI_REV2_0)>;
- };
-
- nct3807_C0: nct3807_C0@70 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "nuvoton,nct38xx-gpio";
- reg = <0x70>;
- label = "NCT3807_C0";
-
- ioex_c0_port0: gpio@0 {
- compatible = "nuvoton,nct38xx-gpio-port";
- reg = <0x0>;
- label = "NCT3807_C0_GPIO0";
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- pin_mask = <0xff>;
- pinmux_mask = <0xf7>;
- };
- ioex_c0_port1: gpio@1 {
- compatible = "nuvoton,nct38xx-gpio-port";
- reg = <0x1>;
- label = "NCT3807_C0_GPIO1";
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- pin_mask = <0xff>;
- };
- };
-
- nct3808_alert_0 {
- compatible = "nuvoton,nct38xx-gpio-alert";
- irq-gpios = <&gpioe 0 GPIO_ACTIVE_LOW>;
- nct38xx-dev = <&nct3807_C0>;
- label = "NCT3807_ALERT_0";
- };
-};
-
-&i2c2_0 {
- label = "I2C_PPC0";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- pinctrl-0 = <&i2c2_0_sda_scl_gp91_92>;
- pinctrl-names = "default";
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c0_bc12>;
- };
-
- ppc_port0_syv: ppc_syv@40 {
- compatible = "silergy,syv682x";
- status = "okay";
- reg = <0x40>;
- frs_en_gpio = <&ioex_usb_c0_frs_en>;
- };
-};
-
-&i2c3_0 {
- label = "I2C_USB_C0_RT";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- pinctrl-0 = <&i2c3_0_sda_scl_gpd0_d1>;
- pinctrl-names = "default";
-
- usb_c0_hb_retimer: jhl8040r-c0@56 {
- compatible = "intel,jhl8040r";
- reg = <0x56>;
- ls-en-pin = <&gpio_usb_c0_rt_3p3_sx_en>;
- int-pin = <&gpio_usb_c0_rt_int_odl>;
- reset-pin = <&ioex_usb_c0_rt_rst_ls_l>;
- };
-};
-
-&i2c4_1 {
- label = "I2C_USB_C1_TCPC";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- pinctrl-0 = <&i2c4_1_sda_scl_gpf2_f3>;
- pinctrl-names = "default";
-
- tcpc_port1: ps8xxx@b {
- compatible = "parade,ps8xxx";
- reg = <0xb>;
- tcpc-flags = <(
- TCPC_FLAGS_TCPCI_REV2_0 |
- TCPC_FLAGS_TCPCI_REV2_0_NO_VSAFE0V |
- TCPC_FLAGS_CONTROL_VCONN |
- TCPC_FLAGS_CONTROL_FRS)>;
- };
-};
-
-&i2c5_0 {
- label = "I2C_BATTERY";
- clock-frequency = <I2C_BITRATE_STANDARD>;
-
- pinctrl-0 = <&i2c5_0_sda_scl_gp33_36>;
- pinctrl-names = "default";
-};
-
-&i2c6_1 {
- label = "I2C_USB_1_MIX";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- pinctrl-0 = <&i2c6_1_sda_scl_gpe3_e4>;
- pinctrl-names = "default";
-
- bc12_port1: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c1_bc12>;
- };
-
- ppc_port1_nxp: nx20p348x@72 {
- compatible = "nxp,nx20p348x";
- status = "okay";
- reg = <0x72>;
- };
-};
-
-&i2c7_0 {
- label = "I2C_CHARGER";
- clock-frequency = <I2C_BITRATE_FAST>;
-
- pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>;
- pinctrl-names = "default";
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-
- charger: isl9241@9 {
- compatible = "intersil,isl9241";
- status = "okay";
- reg = <0x09>;
- };
-};
diff --git a/zephyr/program/rex/rex0_gpio.csv b/zephyr/program/rex/rex0_gpio.csv
deleted file mode 100644
index 5c20f6fb00..0000000000
--- a/zephyr/program/rex/rex0_gpio.csv
+++ /dev/null
@@ -1,122 +0,0 @@
-Signal Name,Pin Number,Type,Enum
-USB_C1_BC12_INT_ODL,G10,INPUT,GPIO_USB_C1_BC12_INT_ODL
-ESPI_SOC_CS0_L,L2,OTHER,
-ESPI_SOC_RESET_L,K3,OTHER,
-ESPI_SOC_CLK,M1,OTHER,
-EC_IMU_INT_R_L,M2,INPUT_PU,
-ESPI_SOC_IO0,H1,OTHER,
-ESPI_SOC_IO1,J1,OTHER,
-ESPI_SOC_IO2,K1,OTHER,
-ESPI_SOC_IO3,L1,OTHER,
-ESPI_SOC_ALERT_L_R,L3,OTHER,
-EC_VOLDN_BTN_ODL,E11,INPUT_PU,GPIO_VOLUME_DOWN_L
-TABLET_MODE_L,M12,INPUT_PU,GPIO_TABLET_MODE_L
-SOCHOT_ODL,G12,INPUT,
-EC_VOLUP_BTN_ODL,L10,INPUT_PU,GPIO_VOLUME_UP_L
-USB_C0_RT_INT_ODL,G11,INPUT,
-EC_WP_L,L12,INPUT,
-EC_BATT_PRES_ODL,K12,INPUT,GPIO_BATT_PRES_ODL
-CPU_C10_GATE_L,J11,INPUT,
-SOC_PWROK,K11,OUTPUT,
-EC_SOC_RSMRST_L,F11,OUTPUT,
-SYS_PWROK,L11,OUTPUT,
-EC_SPARE_GPIO94,M11,OUTPUT,
-EC_SPARE_GPIOA2,F12,OUTPUT,
-EC_SPARE_GPIOA4,H11,OUTPUT,
-EC_ACCEL_INT_R_L,M7,INPUT,
-SLP_S3_LS_L,C2,INPUT,
-IMVP92_VRRDY_OD,E2,INPUT,
-EC_PROCHOT_IN_L,D2,INPUT,
-EC_SPARE_GPIO42,D3,OUTPUT,
-TEMP_SENSOR_2,E3,ADC,ADC_TEMP_SENSOR_2
-TEMP_SENSOR_1,F2,ADC,ADC_TEMP_SENSOR_1
-TEMP_SENSOR_4,F3,ADC,ADC_TEMP_SENSOR_4
-TEMP_SENSOR_3,G3,ADC,ADC_TEMP_SENSOR_3
-SYS_RST_ODL,H7,INPUT,
-EC_SOC_WAKE_R_ODL,H8,OUTPUT_ODL,
-EC_PROCHOT_ODL,J2,OUTPUT_ODR,
-EC_SOC_INT_ODL,J4,OUTPUT_ODL,GPIO_EC_INT_L
-EC_SOC_RTCRST,J5,OUTPUT_ODR,
-EC_SOC_PWR_BTN_ODL,H9,OUTPUT_ODL,GPIO_PCH_PWRBTN_L
-USB_C0_RT_3P3_SX_EN,D9,OUTPUT_ODR,
-KSO_13,D11,OTHER,
-KSO_12,C11,OTHER,
-KSO_11,B10,OTHER,
-KSO_10,B11,OTHER,
-KSO_09,C10,OTHER,
-KSO_08,C9,OTHER,
-KSO_05,C6,OTHER,
-KSO_04,C7,OTHER,
-KSO_03,B8,OTHER,
-EC_KSO_02_INV,B7,OUTPUT_L,
-KSO_01,B6,OTHER,
-KSO_00,B5,OTHER,
-KSI_07,C5,OTHER,
-KSI_06,C4,OTHER,
-KSI_05,C3,OTHER,
-KSI_04,B4,OTHER,
-EC_KSI_03,B3,OTHER,
-EC_KSI_02,A4,OTHER,
-KSI_01,A3,OTHER,
-EC_KSI_00,A2,OTHER,
-EC_I2C_BAT_SCL,D5,I2C_CLOCK,I2C_PORT_BATTERY
-USB_C1_TCPC_INT_ODL,B2,INPUT,GPIO_USB_C1_TCPC_INT_ODL
-EC_I2C_BAT_SDA,D4,I2C_DATA,
-USB_C1_RST_ODL,C1,OUTPUT_ODL,
-EC_FAN_TACH,E5,TACH,
-LED_4_L,G6,OUTPUT,
-EN_PP5000_FAN,K4,OUTPUT_ODR,
-USB_C0_PPC_INT_ODL,H2,INPUT,GPIO_USB_C0_PPC_INT_ODL
-UART_GSC_DBG_TX_EC_RX_R,G4,OTHER,
-EC_SPARE_GPIO66,G2,OUTPUT,
-USB_C0_TCPC_RST_ODL,J3,OUTPUT_ODL,
-USB_C1_RT_INT_ODL,M4,INPUT_PU,
-EC_CBI_WP,G5,OUTPUT,
-USB_C1_RT_RST_R_ODL,H5,OUTPUT_ODL,
-EC_GSC_PACKET_MODE,J6,OUTPUT_ODR,GPIO_PACKET_MODE_EN
-EC_KB_BL_PWM,K5,PWM,GPIO_EN_KEYBOARD_BACKLIGHT
-KSO_14,D6,OTHER,
-USB_C1_FRS_EN,D7,OUTPUT_ODR,
-EC_I2C_USB_C0_TCPC_SDA,K7,I2C_DATA,
-EC_I2C_USB_C0_TCPC_SCL,K8,I2C_CLOCK,I2C_PORT_USB_C0_TCPC
-EC_I2C_USB_C0_PPC_BC_SDA,K9,I2C_DATA,
-EC_I2C_USB_C0_PPC_BC_SCL,L8,I2C_CLOCK,I2C_PORT_PPC0
-EC_IMVP92_EN_SMB,D8,OUTPUT,
-EC_I2C_MISC_SDA,K10,I2C_DATA,
-EC_I2C_MISC_SCL,J10,I2C_CLOCK,I2C_PORT_EEPROM
-EC_I2C_SENSOR_SDA,B12,I2C_DATA,
-EC_I2C_SENSOR_SCL,C12,I2C_CLOCK,I2C_PORT_SENSOR
-EN_S5_RAILS,L9,OUTPUT_ODR,
-FAN_PWM,J7,PWM,
-LED_3_L,H10,OUTPUT,
-LED_2_L,G9,OUTPUT,
-LED_1_L,G8,OUTPUT,
-USB_C0_BC12_INT_ODL,D10,INPUT,GPIO_USB_C0_BC12_INT_ODL
-EC_SPARE_GPIOC7,F10,OUTPUT,
-EC_I2C_USB_C0_RT_SDA,F9,I2C_DATA,
-EC_I2C_USB_C0_RT_SCL,F8,I2C_CLOCK,I2C_PORT_USB_C0_RT
-EC_EDP_BL_EN,E10,OUTPUT_ODR,GPIO_ENABLE_BACKLIGHT
-EC_ALS_RGB_INT_R_L,A9,INPUT_PU,
-SYS_SLP_S0IX_3V3_L,A10,INPUT,
-USB_C0_TCPC_INT_ODL,F4,INPUT,GPIO_USB_C0_TCPC_INT_ODL
-SEQ_EC_RSMRST_ODL,A11,INPUT,
-EC_I2C_USB_C1_MIX_SDA,L7,I2C_DATA,
-EC_I2C_USB_C1_MIX_SCL,L6,I2C_CLOCK,I2C_PORT_USB_1_MIX
-CCD_MODE_ODL,A12,OUTPUT_ODL,GPIO_CCD_MODE_ODL
-EC_I2C_USB_C1_TCPC_SDA,F6,I2C_DATA,
-EC_I2C_USB_C1_TCPC_SCL,F5,I2C_CLOCK,I2C_PORT_USB_C1_TCPC
-SEQ_EC_ALL_SYS_PG,E9,INPUT,
-USB_C1_PPC_INT_ODL,E8,INPUT,GPIO_USB_C1_PPC_INT_ODL
-EC_KSO_07_JEN_L,B9,OTHER,
-EC_KSO_06_GP_SEL_L,C8,OTHER,
-EC_SPARE_GPO32,E4,OUTPUT,
-EC_SPARE_GPO35,K2,OUTPUT,
-UART_GSC_DBG_RX_EC_TX_R,H4,OTHER,
-EC_RST_R_ODL,K6,INPUT,
-EC_KB_BL_EN_L,J9,OUTPUT,
-ACOK_OD,E7,INPUT,GPIO_AC_PRESENT
-GSC_EC_PWR_BTN_ODL,E6,INPUT_PU,GPIO_POWER_BUTTON_L
-MECH_PWR_BTN_ODL,F7,INPUT,
-LID_OPEN,G7,INPUT_PU,GPIO_LID_OPEN
-EN_Z1_RAILS,J8,OUTPUT,
-EN_PP5000_USBA_R,H6,OUTPUT,
diff --git a/zephyr/program/rex/src/board_power.c b/zephyr/program/rex/src/board_power.c
deleted file mode 100644
index 655edaa452..0000000000
--- a/zephyr/program/rex/src/board_power.c
+++ /dev/null
@@ -1,61 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "gpio/gpio.h"
-#include "gpio_signal.h"
-
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-
-#include <ap_power/ap_power.h>
-#include <ap_power/ap_power_events.h>
-#include <ap_power/ap_power_interface.h>
-#include <ap_power_override_functions.h>
-#include <power_signals.h>
-#include <x86_power_signals.h>
-
-LOG_MODULE_DECLARE(ap_pwrseq, LOG_LEVEL_INF);
-
-#if CONFIG_X86_NON_DSX_PWRSEQ_MTL
-#define X86_NON_DSX_MTL_FORCE_SHUTDOWN_TO_MS 50
-
-void board_ap_power_force_shutdown(void)
-{
- int timeout_ms = X86_NON_DSX_MTL_FORCE_SHUTDOWN_TO_MS;
-
- /* Turn off PCH_RMSRST to meet tPCH12 */
- power_signal_set(PWR_EC_PCH_RSMRST, 0);
-
- /* Turn off PRIM load switch. */
- power_signal_set(PWR_EN_PP3300_A, 0);
-
- /* Wait RSMRST to be off. */
- while (power_signal_get(PWR_RSMRST) && (timeout_ms > 0)) {
- k_msleep(1);
- timeout_ms--;
- };
-
- if (power_signal_get(PWR_RSMRST)) {
- LOG_WRN("RSMRST_ODL didn't go low! Assuming G3.");
- }
-}
-
-void board_ap_power_action_g3_s5(void)
-{
- /* Turn on the PP3300_PRIM rail. */
- power_signal_set(PWR_EN_PP3300_A, 1);
-
- if (!power_wait_signals_timeout(
- IN_PGOOD_ALL_CORE,
- AP_PWRSEQ_DT_VALUE(wait_signal_timeout))) {
- ap_power_ev_send_callbacks(AP_POWER_PRE_INIT);
- }
-}
-
-bool board_ap_power_check_power_rails_enabled(void)
-{
- return power_signal_get(PWR_EN_PP3300_A);
-}
-#endif /* CONFIG_X86_NON_DSX_PWRSEQ_MTL */
diff --git a/zephyr/program/rex/src/usb_pd_policy.c b/zephyr/program/rex/src/usb_pd_policy.c
deleted file mode 100644
index 7c78c4ebae..0000000000
--- a/zephyr/program/rex/src/usb_pd_policy.c
+++ /dev/null
@@ -1,77 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Shared USB-C policy for Rex boards */
-
-#include "charge_manager.h"
-#include "chipset.h"
-#include "common.h"
-#include "compile_time_macros.h"
-#include "console.h"
-#include "ec_commands.h"
-#include "ioexpander.h"
-#include "system.h"
-#include "usb_mux.h"
-#include "usb_pd.h"
-#include "usbc_ppc.h"
-#include "util.h"
-
-#include <zephyr/drivers/gpio.h>
-
-int pd_check_vconn_swap(int port)
-{
- /* Allow VCONN swaps if the AP is on. */
- return chipset_in_state(CHIPSET_STATE_ANY_SUSPEND | CHIPSET_STATE_ON);
-}
-
-void pd_power_supply_reset(int port)
-{
- /* Disable VBUS. */
- ppc_vbus_source_enable(port, 0);
-
- /* Enable discharge if we were previously sourcing 5V */
- if (IS_ENABLED(CONFIG_USB_PD_DISCHARGE))
- pd_set_vbus_discharge(port, 1);
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- int rv;
-
- /* Disable charging. */
- rv = ppc_vbus_sink_enable(port, 0);
- if (rv)
- return rv;
-
- if (IS_ENABLED(CONFIG_USB_PD_DISCHARGE)) {
- pd_set_vbus_discharge(port, 0);
- }
-
- /* Provide Vbus. */
- rv = ppc_vbus_source_enable(port, 1);
- if (rv) {
- return rv;
- }
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-/* Used by Vbus discharge common code with CONFIG_USB_PD_DISCHARGE */
-int board_vbus_source_enabled(int port)
-{
- return tcpm_get_src_ctrl(port);
-}
-
-/* Used by USB charger task with CONFIG_USB_PD_5V_EN_CUSTOM */
-int board_is_sourcing_vbus(int port)
-{
- return board_vbus_source_enabled(port);
-}
diff --git a/zephyr/program/rex/src/usbc_config.c b/zephyr/program/rex/src/usbc_config.c
deleted file mode 100644
index df260f6730..0000000000
--- a/zephyr/program/rex/src/usbc_config.c
+++ /dev/null
@@ -1,292 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "battery_fuel_gauge.h"
-#include "charge_manager.h"
-#include "charge_ramp.h"
-#include "charge_state.h"
-#include "charge_state_v2.h"
-#include "charger.h"
-#include "driver/charger/isl9241.h"
-#include "driver/ppc/nx20p348x.h"
-#include "driver/retimer/bb_retimer_public.h"
-#include "driver/tcpm/nct38xx.h"
-#include "driver/tcpm/ps8xxx_public.h"
-#include "driver/tcpm/tcpci.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "i2c.h"
-#include "ioexpander.h"
-#include "ppc/syv682x_public.h"
-#include "system.h"
-#include "task.h"
-#include "usb_mux.h"
-#include "usbc_ppc.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTFUSB(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-/*******************************************************************/
-/* USB-C Configuration Start */
-
-/* USB-C ports */
-enum usbc_port { USBC_PORT_C0 = 0, USBC_PORT_C1, USBC_PORT_COUNT };
-BUILD_ASSERT(USBC_PORT_COUNT == CONFIG_USB_PD_PORT_MAX_COUNT);
-
-static void usbc_interrupt_init(void)
-{
- /* Only reset TCPC if not sysjump */
- if (!system_jumped_late()) {
- board_reset_pd_mcu();
- }
-
- /* Enable PPC interrupts. */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_ppc));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c1_ppc));
-
- /* Enable TCPC interrupts. */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_tcpc));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c1_tcpc));
-
- /* Enable BC 1.2 interrupts */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_bc12));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c1_bc12));
-
- /* Enable SBU fault interrupts */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_sbu_fault));
-}
-DECLARE_HOOK(HOOK_INIT, usbc_interrupt_init, HOOK_PRIO_POST_I2C);
-
-void board_overcurrent_event(int port, int is_overcurrented)
-{
- /*
- * TODO: Meteorlake PCH does not use Physical GPIO for over current
- * error, hence Send 'Over Current Virtual Wire' eSPI signal.
- */
-}
-
-void sbu_fault_interrupt(enum gpio_signal signal)
-{
- int port = USBC_PORT_C0;
-
- CPRINTSUSB("C%d: SBU fault", port);
- pd_handle_overcurrent(port);
-}
-
-void tcpc_alert_event(enum gpio_signal signal)
-{
- int port;
-
- switch (signal) {
- case GPIO_USB_C0_TCPC_INT_ODL:
- port = 0;
- break;
- case GPIO_USB_C1_TCPC_INT_ODL:
- port = 1;
- break;
- default:
- return;
- }
-
- schedule_deferred_pd_interrupt(port);
-}
-
-static void reset_nct38xx_port(int port)
-{
- const struct gpio_dt_spec *reset_gpio_l;
- const struct device *ioex_port0, *ioex_port1;
-
- /* TODO(b/225189538): Save and restore ioex signals */
- if (port == USBC_PORT_C0) {
- reset_gpio_l = GPIO_DT_FROM_NODELABEL(gpio_usb_c0_tcpc_rst_odl);
- ioex_port0 = DEVICE_DT_GET(DT_NODELABEL(ioex_c0_port0));
- ioex_port1 = DEVICE_DT_GET(DT_NODELABEL(ioex_c0_port1));
- } else {
- /* Invalid port: do nothing */
- return;
- }
-
- gpio_pin_set_dt(reset_gpio_l, 0);
- msleep(NCT38XX_RESET_HOLD_DELAY_MS);
- gpio_pin_set_dt(reset_gpio_l, 1);
- nct38xx_reset_notify(port);
- if (NCT3807_RESET_POST_DELAY_MS != 0) {
- msleep(NCT3807_RESET_POST_DELAY_MS);
- }
-
- /* Re-enable the IO expander pins */
- gpio_reset_port(ioex_port0);
- gpio_reset_port(ioex_port1);
-}
-
-void board_reset_pd_mcu(void)
-{
- /* Reset TCPC0 */
- reset_nct38xx_port(USBC_PORT_C0);
-
- /* Reset TCPC1 */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c1_rt_rst_r_odl), 0);
- msleep(PS8XXX_RESET_DELAY_MS);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c1_rt_rst_r_odl), 1);
- msleep(PS8815_FW_INIT_DELAY_MS);
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- uint16_t status = 0;
- const struct gpio_dt_spec *tcpc_c0_rst_l;
- const struct gpio_dt_spec *tcpc_c0_int_l;
- const struct gpio_dt_spec *tcpc_c1_rst_l;
- const struct gpio_dt_spec *tcpc_c1_int_l;
-
- tcpc_c0_rst_l = GPIO_DT_FROM_NODELABEL(gpio_usb_c0_tcpc_rst_odl);
- tcpc_c0_int_l = GPIO_DT_FROM_NODELABEL(gpio_usb_c0_tcpc_int_odl);
-
- tcpc_c1_rst_l = GPIO_DT_FROM_NODELABEL(gpio_usb_c1_rt_rst_r_odl);
- tcpc_c1_int_l = GPIO_DT_FROM_NODELABEL(gpio_usb_c1_tcpc_int_odl);
-
- /*
- * Check which port has the ALERT line set and ignore if that TCPC has
- * its reset line active.
- */
- if (!gpio_pin_get_dt(tcpc_c0_int_l) && gpio_pin_get_dt(tcpc_c0_rst_l)) {
- status |= PD_STATUS_TCPC_ALERT_0;
- }
-
- if (!gpio_pin_get_dt(tcpc_c1_int_l) && gpio_pin_get_dt(tcpc_c1_rst_l)) {
- status |= PD_STATUS_TCPC_ALERT_1;
- }
-
- return status;
-}
-
-void ppc_interrupt(enum gpio_signal signal)
-{
- switch (signal) {
- case GPIO_USB_C0_PPC_INT_ODL:
- syv682x_interrupt(USBC_PORT_C0);
- break;
- case GPIO_USB_C1_PPC_INT_ODL:
- nx20p348x_interrupt(USBC_PORT_C1);
- break;
- default:
- break;
- }
-}
-
-void bc12_interrupt(enum gpio_signal signal)
-{
- switch (signal) {
- case GPIO_USB_C0_BC12_INT_ODL:
- usb_charger_task_set_event(0, USB_CHG_EVENT_BC12);
- break;
- case GPIO_USB_C1_BC12_INT_ODL:
- usb_charger_task_set_event(1, USB_CHG_EVENT_BC12);
- break;
- default:
- break;
- }
-}
-
-static void board_disable_charger_ports(void)
-{
- int i;
-
- CPRINTSUSB("Disabling all charger ports");
-
- /* Disable all ports. */
- for (i = 0; i < ppc_cnt; i++) {
- /*
- * If this port had booted in dead battery mode, go
- * ahead and reset it so EN_SNK responds properly.
- */
- if (nct38xx_get_boot_type(i) == NCT38XX_BOOT_DEAD_BATTERY) {
- reset_nct38xx_port(i);
- pd_set_error_recovery(i);
- }
-
- /*
- * Do not return early if one fails otherwise we can
- * get into a boot loop assertion failure.
- */
- if (ppc_vbus_sink_enable(i, 0)) {
- CPRINTSUSB("Disabling C%d as sink failed.", i);
- }
- }
-}
-
-int board_set_active_charge_port(int port)
-{
- int is_valid_port = (port >= 0 && port < CONFIG_USB_PD_PORT_MAX_COUNT);
- int i;
- int rv;
-
- if (port == CHARGE_PORT_NONE) {
- board_disable_charger_ports();
- return EC_SUCCESS;
- } else if (!is_valid_port) {
- return EC_ERROR_INVAL;
- }
-
- /*
- * Check if we can reset any ports in dead battery mode
- *
- * The NCT3807 may continue to keep EN_SNK low on the dead battery port
- * and allow a dangerous level of voltage to pass through to the initial
- * charge port (see b/183660105). We must reset the ports if we have
- * sufficient battery to do so, which will bring EN_SNK back under
- * normal control.
- */
- rv = EC_SUCCESS;
- if (port == USBC_PORT_C0 &&
- nct38xx_get_boot_type(port) == NCT38XX_BOOT_DEAD_BATTERY) {
- /* Handle dead battery boot case */
- CPRINTSUSB("Found dead battery on C0");
- /*
- * If we have battery, get this port reset ASAP.
- * This means temporarily rejecting charge manager
- * sets to it.
- */
- if (pd_is_battery_capable()) {
- reset_nct38xx_port(port);
- pd_set_error_recovery(port);
- }
- }
-
- if (rv != EC_SUCCESS) {
- return rv;
- }
-
- /* Check if the port is sourcing VBUS. */
- if (tcpm_get_src_ctrl(port)) {
- CPRINTSUSB("Skip enable C%d", port);
- return EC_ERROR_INVAL;
- }
-
- CPRINTSUSB("New charge port: C%d", port);
-
- /*
- * Turn off the other ports' sink path FETs, before enabling the
- * requested charge port.
- */
- for (i = 0; i < ppc_cnt; i++) {
- if (i == port) {
- continue;
- }
- if (ppc_vbus_sink_enable(i, 0)) {
- CPRINTSUSB("C%d: sink path disable failed.", i);
- }
- }
-
- /* Enable requested charge port. */
- if (ppc_vbus_sink_enable(port, 1)) {
- CPRINTSUSB("C%d: sink path enable failed.", port);
- return EC_ERROR_UNKNOWN;
- }
-
- return EC_SUCCESS;
-}
diff --git a/zephyr/program/rex/temp_sensors.dts b/zephyr/program/rex/temp_sensors.dts
deleted file mode 100644
index 680ebc8954..0000000000
--- a/zephyr/program/rex/temp_sensors.dts
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-
-/ {
- temp_ddr_soc: ddr_soc {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_30K9_47K_4050B>;
- adc = <&adc_ddr_soc>;
- };
- temp_ambient: ambient {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_30K9_47K_4050B>;
- adc = <&adc_ambient>;
- };
- temp_charger: charger {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_30K9_47K_4050B>;
- adc = <&adc_charger>;
- };
- temp_wwan: wwan {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_30K9_47K_4050B>;
- adc = <&adc_wwan>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- ddr_soc {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- sensor = <&temp_ddr_soc>;
- };
- ambient {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <85>;
- temp_host_halt = <90>;
- temp_host_release_high = <80>;
- sensor = <&temp_ambient>;
- };
- charger {
- temp_fan_off = <35>;
- temp_fan_max = <65>;
- temp_host_high = <105>;
- temp_host_halt = <120>;
- temp_host_release_high = <90>;
- sensor = <&temp_charger>;
- };
- wwan {
- temp_fan_off = <35>;
- temp_fan_max = <60>;
- temp_host_high = <130>;
- temp_host_halt = <130>;
- temp_host_release_high = <100>;
- sensor = <&temp_wwan>;
- };
- };
-};
-
-&thermistor_3V3_30K9_47K_4050B {
- status = "okay";
-};
diff --git a/zephyr/program/rex/usbc.dts b/zephyr/program/rex/usbc.dts
deleted file mode 100644
index 84ae79fae6..0000000000
--- a/zephyr/program/rex/usbc.dts
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- usbc_port0: port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- ppc = <&ppc_port0_syv>;
- tcpc = <&tcpc_port0>;
- chg = <&charger>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&usb_c0_hb_retimer
- &virtual_mux_c0>;
- };
- };
- port0-muxes {
- virtual_mux_c0: virtual-mux-c0 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
-
- usbc_port1: port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&bc12_port1>;
- ppc = <&ppc_port1_nxp>;
- tcpc = <&tcpc_port1>;
- usb-mux-chain-1 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&virtual_mux_c1 &tcpci_mux_c1>;
- };
- };
- port1-muxes {
- tcpci_mux_c1: tcpci-mux-c1 {
- compatible = "cros-ec,usbc-mux-tcpci";
- hpd-update = "ps8xxx_tcpc_update_hpd_status";
- };
- virtual_mux_c1: virtual-mux-c1 {
- compatible = "cros-ec,usbc-mux-virtual";
- };
- };
- };
-};
diff --git a/zephyr/program/skyrim/BUILD.py b/zephyr/program/skyrim/BUILD.py
deleted file mode 100644
index 08c76c1f13..0000000000
--- a/zephyr/program/skyrim/BUILD.py
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Define zmake projects for skyrim."""
-
-
-def register_skyrim_project(
- project_name,
-):
- """Register a variant of skyrim."""
- register_npcx_project(
- project_name=project_name,
- zephyr_board="npcx9m3f",
- dts_overlays=[
- here / project_name / "project.overlay",
- ],
- kconfig_files=[
- # Common to all projects.
- here / "program.conf",
- # Project-specific KConfig customization.
- here / project_name / "project.conf",
- ],
- )
-
-
-register_skyrim_project(
- project_name="morthal",
-)
-
-
-register_skyrim_project(
- project_name="skyrim",
-)
-
-
-register_skyrim_project(
- project_name="winterhold",
-)
-
-
-register_skyrim_project(
- project_name="frostflow",
-)
-
-register_skyrim_project(
- project_name="crystaldrift",
-)
diff --git a/zephyr/program/skyrim/CMakeLists.txt b/zephyr/program/skyrim/CMakeLists.txt
deleted file mode 100644
index bb1bde51a8..0000000000
--- a/zephyr/program/skyrim/CMakeLists.txt
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cmake_minimum_required(VERSION 3.13.1)
-
-find_package(Zephyr REQUIRED HINTS "${ZEPHYR_BASE}")
-
-zephyr_library_sources("src/common.c")
-zephyr_library_sources("src/power_signals.c")
-
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/usb_pd_policy.c"
- "src/usbc_config.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_LED_COMMON
- "src/led.c")
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_AMD_STT
- "src/stt.c")
-
-if(DEFINED CONFIG_BOARD_MORTHAL)
- project(morthal)
- add_subdirectory(morthal)
-endif()
-
-if(DEFINED CONFIG_BOARD_SKYRIM)
- project(skyrim)
- add_subdirectory(skyrim)
-endif()
-
-if(DEFINED CONFIG_BOARD_WINTERHOLD)
- project(winterhold)
- add_subdirectory(winterhold)
-endif()
-
-if(DEFINED CONFIG_BOARD_FROSTFLOW)
- project(frostflow)
- add_subdirectory(frostflow)
-endif()
-
-if(DEFINED CONFIG_BOARD_CRYSTALDRIFT)
- project(crystaldrift)
- add_subdirectory(crystaldrift)
-endif()
diff --git a/zephyr/program/skyrim/Kconfig b/zephyr/program/skyrim/Kconfig
deleted file mode 100644
index a80ba2bd24..0000000000
--- a/zephyr/program/skyrim/Kconfig
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-config BOARD_MORTHAL
- bool "Google Morthal Board"
- help
- Build Google Morthal reference board. This board uses an AMD SoC
- and NPCX9 EC
-
-config BOARD_SKYRIM
- bool "Google Skyrim Board"
- help
- Build Google Skyrim reference board. This board uses an AMD SoC
- and NPCX9 EC
-
-config BOARD_WINTERHOLD
- bool "Google Winterhold Board"
- help
- Build Google Winterhold reference board. This board uses an AMD SoC
- and NPCX9 EC
-
-config BOARD_FROSTFLOW
- bool "Google Frostflow Board"
- help
- Build Google Frostflow reference board. This board uses an AMD SoC
- and NPCX9 EC
-
-config BOARD_CRYSTALDRIFT
- bool "Google Crystaldrift Board"
- help
- Build Google Crystaldrift reference board. This board uses an AMD SoC
- and NPCX9 EC
-
-config BOARD_USB_HUB_RESET
- bool "Support USB hub reset or not"
- default y
- help
- Enable this if your board has a USB hub reset GPIO connect to EC to
- reset the USB hub.
-
-module = SKYRIM
-module-str = Skyrim board-specific code
-source "subsys/logging/Kconfig.template.log_config"
-
-source "Kconfig.zephyr"
diff --git a/zephyr/program/skyrim/adc.dtsi b/zephyr/program/skyrim/adc.dtsi
deleted file mode 100644
index 952e5db1d0..0000000000
--- a/zephyr/program/skyrim/adc.dtsi
+++ /dev/null
@@ -1,82 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <cros/thermistor/thermistor.dtsi>
-
-/ {
- named-adc-channels {
- compatible = "named-adc-channels";
-
- adc_temp_charger: temp-charger {
- enum-name = "ADC_TEMP_SENSOR_CHARGER";
- io-channels = <&adc0 1>;
- };
- adc_temp_memory: temp-memory {
- enum-name = "ADC_TEMP_SENSOR_MEMORY";
- io-channels = <&adc0 2>;
- };
- adc_core_imon1: core-imon1 {
- enum-name = "ADC_CORE_IMON1";
- io-channels = <&adc0 3>;
- };
- adc_core_imon2: core-imon2 {
- enum-name = "ADC_SOC_IMON2";
- io-channels = <&adc0 4>;
- };
- };
-
- temp_charger_thermistor: charger-thermistor {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_30K9_47K_4050B>;
- adc = <&adc_temp_charger>;
- };
-
- temp_memory_thermistor: memory-thermistor {
- compatible = "cros-ec,temp-sensor-thermistor";
- thermistor = <&thermistor_3V3_30K9_47K_4050B>;
- adc = <&adc_temp_memory>;
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- temp_sensor_charger: charger-thermistor {
- temp_host_high = <100>;
- temp_host_halt = <105>;
- temp_host_release_high = <80>;
- sensor = <&temp_charger_thermistor>;
- };
-
- temp_sensor_memory: memory-thermistor {
- temp_host_high = <100>;
- temp_host_halt = <105>;
- temp_host_release_high = <80>;
- power-good-pin = <&gpio_pg_pwr_s5>;
- sensor = <&temp_memory_thermistor>;
- };
-
- temp_sensor_cpu: cpu {
- temp_host_high = <100>;
- temp_host_halt = <105>;
- temp_host_release_high = <80>;
- temp_fan_off = <60>;
- temp_fan_max = <90>;
- power-good-pin = <&gpio_s0_pgood>;
- sensor = <&temp_cpu>;
- };
- };
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_chan1_gp44
- &adc0_chan2_gp43
- &adc0_chan3_gp42
- &adc0_chan4_gp41>;
- pinctrl-names = "default";
-};
-
-&thermistor_3V3_30K9_47K_4050B {
- status = "okay";
-};
diff --git a/zephyr/program/skyrim/crystaldrift/CMakeLists.txt b/zephyr/program/skyrim/crystaldrift/CMakeLists.txt
deleted file mode 100644
index 6e50c3d40e..0000000000
--- a/zephyr/program/skyrim/crystaldrift/CMakeLists.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cros_ec_library_include_directories_ifdef(CONFIG_BOARD_CRYSTALDRIFT include)
-zephyr_library_sources(
- "src/usb_mux_config.c"
- "src/ppc_config.c"
- "src/form_factor.c"
- "src/alt_charger.c"
-)
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_FAN "src/fan.c")
diff --git a/zephyr/program/skyrim/crystaldrift/battery.dtsi b/zephyr/program/skyrim/crystaldrift/battery.dtsi
deleted file mode 100644
index 6b1799c233..0000000000
--- a/zephyr/program/skyrim/crystaldrift/battery.dtsi
+++ /dev/null
@@ -1,15 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- batteries {
- default_battery: aec_5477109 {
- compatible = "aec,5477109", "battery-smart";
- };
- smp_l20m3pg1 {
- compatible = "smp,l20m3pg1", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/skyrim/crystaldrift/crystaldrift.dtsi b/zephyr/program/skyrim/crystaldrift/crystaldrift.dtsi
deleted file mode 100644
index 812f97a7c7..0000000000
--- a/zephyr/program/skyrim/crystaldrift/crystaldrift.dtsi
+++ /dev/null
@@ -1,209 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/usbc_mux.h>
-
-#include "../i2c.dtsi"
-
-/ {
- named-gpios {
- /* Crystaldrift-specific GPIO customizations */
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- soc-pct2075 {
- temp_host_high = <100>;
- temp_host_halt = <105>;
- temp_host_release_high = <80>;
- temp_host_release_halt = <80>;
- temp_fan_off = <35>;
- temp_fan_max = <70>;
- power-good-pin = <&gpio_pg_pwr_s5>;
- sensor = <&soc_pct2075>;
- };
- amb-pct2075 {
- power-good-pin = <&gpio_pg_pwr_s5>;
- sensor = <&amb_pct2075>;
- };
- };
-
- /*
- * Note this is expected to vary per-board, so we keep it in the board
- * dts files.
- */
- crystaldrift-fw-config {
- compatible = "cros-ec,cbi-fw-config";
-
- form-factor {
- enum-name = "FW_FORM_FACTOR";
- start = <0>;
- size = <1>;
-
- ff-clamshell {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FF_CLAMSHELL";
- value = <0>;
- };
- ff-convertible {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FF_CONVERTIBLE";
- value = <1>;
- default;
- };
- };
- io-db {
- enum-name = "FW_IO_DB";
- start = <6>;
- size = <2>;
-
- io-db-ps8811-ps8818 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_IO_DB_PS8811_PS8818";
- value = <0>;
- };
- io-db-none-anx7483 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_IO_DB_NONE_ANX7483";
- value = <1>;
- default;
- };
- };
-
- /*
- * FW_CONFIG field to enable fan or not.
- */
- fan {
- enum-name = "FW_FAN";
- start = <10>;
- size = <1>;
-
- no-fan {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FAN_NOT_PRESENT";
- value = <0>;
- };
- fan-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FAN_PRESENT";
- value = <1>;
- /*
- * Set as default so that unprovisioned
- * configs will run the fan regardless.
- */
- default;
- };
- };
-
- charger-option {
- enum-name = "FW_CHARGER";
- start = <11>;
- size = <2>;
-
- charger-option-isl9241 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_CHARGER_ISL9241";
- value = <0>;
- default;
- };
- charger-option-isl9538 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_CHARGER_ISL9538";
- value = <1>;
- };
- };
- };
-
- /* Rotation matrices for motion sensors. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 (-1) 0
- 1 0 0
- 0 0 1>;
- };
-
- lid_rot_ref1: lid-rotation-ref1 {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
- };
-
- ppc_port0: aoz1380 {
- compatible = "aoz,aoz1380";
- status = "okay";
- };
-};
-
-&i2c0_0 {
- anx7483_port0: anx7483@3e {
- compatible = "analogix,anx7483";
- reg = <0x3e>;
- board-set = "board_anx7483_c0_mux_set";
- flags = <USB_MUX_FLAG_RESETS_IN_G3>;
- };
-};
-
-&i2c1_0 {
- anx7483_port1: anx7483@3e {
- compatible = "analogix,anx7483";
- reg = <0x3e>;
- board-set = "board_anx7483_c1_mux_set";
- flags = <USB_MUX_FLAG_RESETS_IN_G3>;
- };
- ppc_port1: nx20p348x@71 {
- compatible = "nxp,nx20p348x";
- status = "okay";
- reg = <0x71>;
- };
- ps8818_port1: ps8818@28 {
- compatible = "parade,ps8818";
- reg = <0x28>;
- flags = <(USB_MUX_FLAG_RESETS_IN_G3)>;
- board-set = "board_c1_ps8818_mux_set";
- };
-};
-
-&i2c4_1 {
- charger: isl9241@9 {
- compatible = "intersil,isl9241";
- status = "okay";
- reg = <0x9>;
- };
- alt_charger: isl9538@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-};
-
-&usbc_port0 {
- chg_alt = <&alt_charger>;
- ppc = <&ppc_port0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port0 &anx7483_port0>;
- };
-};
-
-&usbc_port1 {
- ppc = <&ppc_port1>;
- usb-mux-chain-1-anx {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port1 &anx7483_port1>;
- };
- usb_mux_chain_ps8818_port1: usb-mux-chain-1-ps {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port1 &ps8818_port1>;
- alternative-chain;
- };
-};
diff --git a/zephyr/program/skyrim/crystaldrift/led_pins.dtsi b/zephyr/program/skyrim/crystaldrift/led_pins.dtsi
deleted file mode 100644
index f778a24a51..0000000000
--- a/zephyr/program/skyrim/crystaldrift/led_pins.dtsi
+++ /dev/null
@@ -1,61 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
-
- pwm_y: pwm_y {
- pwms = <&pwm2 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
-
- pwm_w: pwm_w {
- pwms = <&pwm3 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- };
-
- pwm-led-pins {
- compatible = "cros-ec,pwm-led-pins";
-
- color_off: color-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <0 0>;
- };
-
- color_amber: color-amber {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <100 0>;
- };
-
- color_white: color-white {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_WHITE";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <0 100>;
- };
- };
-};
-
-/* Amber "battery charging" LED */
-&pwm2 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
-
-/* White "battery full" LED */
-&pwm3 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm3_gp80>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/skyrim/crystaldrift/led_policy.dtsi b/zephyr/program/skyrim/crystaldrift/led_policy.dtsi
deleted file mode 100644
index a075c6b0d2..0000000000
--- a/zephyr/program/skyrim/crystaldrift/led_policy.dtsi
+++ /dev/null
@@ -1,103 +0,0 @@
-#include <dt-bindings/battery.h>
-
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
-
- power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (> Low, <= Full) */
- batt-lvl = <(BATTERY_LEVEL_LOW + 1) BATTERY_LEVEL_FULL>;
-
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-discharge-s0-batt-low {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= Empty, <= Low) */
- batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
-
- /* White 2 sec, off 1 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- /* White 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-error {
- charge-state = "PWR_STATE_ERROR";
-
- /* Amber 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-forced-idle {
- charge-state = "PWR_STATE_FORCED_IDLE";
-
- /* Amber 2 sec, White 2 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_white>;
- period-ms = <2000>;
- };
- };
- };
-};
diff --git a/zephyr/program/skyrim/crystaldrift/motionsense.dtsi b/zephyr/program/skyrim/crystaldrift/motionsense.dtsi
deleted file mode 100644
index f943bea4c8..0000000000
--- a/zephyr/program/skyrim/crystaldrift/motionsense.dtsi
+++ /dev/null
@@ -1,135 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi3xx-int = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- mutex_bmi3xx: bmi3xx-mutex {
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bma4xx_data: bma4xx-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
-
- bmi3xx_data: bmi3xx-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- drv-data = <&bma4xx_data>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <100>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi3xx>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
-
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <100>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi3xx>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_accel_gyro>;
-
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/skyrim/crystaldrift/project.conf b/zephyr/program/skyrim/crystaldrift/project.conf
deleted file mode 100644
index e9339c1c3c..0000000000
--- a/zephyr/program/skyrim/crystaldrift/project.conf
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Crystaldrift reference-board-specific Kconfig settings.
-CONFIG_BOARD_CRYSTALDRIFT=y
-
-# CBI WP pin present
-CONFIG_PLATFORM_EC_EEPROM_CBI_WP=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_DT=y
-
-# Crystaldrfit is capable of sinking 100W
-CONFIG_PLATFORM_EC_PD_MAX_POWER_MW=100000
-CONFIG_PLATFORM_EC_PD_MAX_CURRENT_MA=5000
-CONFIG_PLATFORM_EC_PD_MAX_VOLTAGE_MV=20000
-
-CONFIG_PLATFORM_EC_USBC_RETIMER_ANX7483=y
-
-# Enable alternative charger chip
-CONFIG_PLATFORM_EC_CHARGER_RUNTIME_CONFIG=y
-CONFIG_PLATFORM_EC_CHARGER_ISL9238C=y
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_PRESENT_GPIO=y
diff --git a/zephyr/program/skyrim/crystaldrift/project.overlay b/zephyr/program/skyrim/crystaldrift/project.overlay
deleted file mode 100644
index 1192bb0d16..0000000000
--- a/zephyr/program/skyrim/crystaldrift/project.overlay
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Skyrim program common DTS includes */
-#include "../adc.dtsi"
-#include "../fan.dtsi"
-#include "../gpio.dtsi"
-#include "../interrupts.dtsi"
-#include "../keyboard.dtsi"
-#include "../usbc.dtsi"
-
-/* Crystaldrift project DTS includes*/
-#include "crystaldrift.dtsi"
-#include "battery.dtsi"
-#include "led_pins.dtsi"
-#include "led_policy.dtsi"
-#include "motionsense.dtsi"
diff --git a/zephyr/program/skyrim/crystaldrift/src/alt_charger.c b/zephyr/program/skyrim/crystaldrift/src/alt_charger.c
deleted file mode 100644
index a429457136..0000000000
--- a/zephyr/program/skyrim/crystaldrift/src/alt_charger.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charger_chips.h"
-#include "common.h"
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-#include "hooks.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(crystaldrift, CONFIG_SKYRIM_LOG_LEVEL);
-
-static void alt_charger_init(void)
-{
- int ret;
- uint32_t val;
-
- ret = cros_cbi_get_fw_config(FW_CHARGER, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_CHARGER);
- return;
- }
-
- if (val == FW_CHARGER_ISL9538)
- CHG_ENABLE_ALTERNATE(0);
-}
-DECLARE_HOOK(HOOK_INIT, alt_charger_init, HOOK_PRIO_POST_FIRST);
diff --git a/zephyr/program/skyrim/crystaldrift/src/fan.c b/zephyr/program/skyrim/crystaldrift/src/fan.c
deleted file mode 100644
index 6645e2a495..0000000000
--- a/zephyr/program/skyrim/crystaldrift/src/fan.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-#include "fan.h"
-#include "gpio/gpio.h"
-#include "hooks.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(crystaldrift, CONFIG_SKYRIM_LOG_LEVEL);
-
-/*
- * Skyrim fan support
- */
-static void fan_init(void)
-{
- int ret;
- uint32_t val;
- uint32_t board_version;
- /*
- * Retrieve the fan config.
- */
- ret = cros_cbi_get_fw_config(FW_FAN, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_FAN);
- return;
- }
-
- ret = cbi_get_board_version(&board_version);
- if (ret != EC_SUCCESS) {
- LOG_ERR("Error retrieving CBI board version");
- return;
- }
-
- if ((board_version >= 3) && (val != FW_FAN_PRESENT)) {
- /* Disable the fan */
- fan_set_count(0);
- }
-}
-DECLARE_HOOK(HOOK_INIT, fan_init, HOOK_PRIO_POST_FIRST);
-
-/*
- * Pcore OCP support
- * Note: early boards should note enable this interrupt as they are not
- * correctly configured for it.
- */
-__override bool board_supports_pcore_ocp(void)
-{
- uint32_t board_version;
-
- if (cbi_get_board_version(&board_version) == EC_SUCCESS &&
- board_version > 3)
- return true;
-
- return false;
-}
diff --git a/zephyr/program/skyrim/crystaldrift/src/form_factor.c b/zephyr/program/skyrim/crystaldrift/src/form_factor.c
deleted file mode 100644
index 688765617b..0000000000
--- a/zephyr/program/skyrim/crystaldrift/src/form_factor.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "accelgyro.h"
-#include "common.h"
-#include "cros_board_info.h"
-#include "hooks.h"
-#include "motionsense_sensors.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(crystaldrift, CONFIG_SKYRIM_LOG_LEVEL);
-
-/*
- * Mainboard orientation support.
- */
-
-#define ALT_MAT SENSOR_ROT_STD_REF_NAME(DT_NODELABEL(lid_rot_ref1))
-#define LID_ACCEL SENSOR_ID(DT_NODELABEL(lid_accel))
-
-static void form_factor_init(void)
-{
- int ret;
- uint32_t val;
- /*
- * If the board version >=4
- * use ver1 rotation matrix.
- */
- ret = cbi_get_board_version(&val);
- if (ret == EC_SUCCESS && val >= 4) {
- LOG_INF("Switching to ver1 lid");
- motion_sensors[LID_ACCEL].rot_standard_ref = &ALT_MAT;
- }
-}
-DECLARE_HOOK(HOOK_INIT, form_factor_init, HOOK_PRIO_POST_I2C);
diff --git a/zephyr/program/skyrim/crystaldrift/src/ppc_config.c b/zephyr/program/skyrim/crystaldrift/src/ppc_config.c
deleted file mode 100644
index 3913fda4dc..0000000000
--- a/zephyr/program/skyrim/crystaldrift/src/ppc_config.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Crystaldrift board-specific PPC code */
-
-#include "driver/ppc/aoz1380_public.h"
-#include "driver/ppc/nx20p348x.h"
-#include "usbc_ppc.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTFUSB(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-/*
- * In the AOZ1380 PPC, there are no programmable features. We use
- * the attached NCT3807 to control a GPIO to indicate 1A5 or 3A0
- * current limits.
- */
-int board_aoz1380_set_vbus_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- int rv = EC_SUCCESS;
-
- rv = gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(ioex_usb_c0_ilim_3a_en),
- (rp == TYPEC_RP_3A0) ? 1 : 0);
-
- return rv;
-}
-
-void ppc_interrupt(enum gpio_signal signal)
-{
- switch (signal) {
- case GPIO_USB_C0_PPC_INT_ODL:
- aoz1380_interrupt(0);
- break;
-
- case GPIO_USB_C1_PPC_INT_ODL:
- nx20p348x_interrupt(1);
- break;
-
- default:
- break;
- }
-}
diff --git a/zephyr/program/skyrim/crystaldrift/src/usb_mux_config.c b/zephyr/program/skyrim/crystaldrift/src/usb_mux_config.c
deleted file mode 100644
index 0e08431360..0000000000
--- a/zephyr/program/skyrim/crystaldrift/src/usb_mux_config.c
+++ /dev/null
@@ -1,142 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Crystaldrift board-specific USB-C mux configuration */
-
-#include "console.h"
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-#include "driver/retimer/anx7483_public.h"
-#include "hooks.h"
-#include "ioexpander.h"
-#include "usb_mux.h"
-#include "usbc/usb_muxes.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTFUSB(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-/*
- * USB C0 (general) and C1 (just ANX DB) use IOEX pins to
- * indicate flipped polarity to a protection switch.
- */
-static int ioex_set_flip(int port, mux_state_t mux_state)
-{
- if (port == 0) {
- if (mux_state & USB_PD_MUX_POLARITY_INVERTED)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c0_sbu_flip),
- 1);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c0_sbu_flip),
- 0);
- } else {
- if (mux_state & USB_PD_MUX_POLARITY_INVERTED)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c1_sbu_flip),
- 1);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c1_sbu_flip),
- 0);
- }
-
- return EC_SUCCESS;
-}
-
-int board_anx7483_c0_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- /* Set the SBU polarity mux */
- RETURN_ERROR(ioex_set_flip(me->usb_port, mux_state));
-
- return anx7483_set_default_tuning(me, mux_state);
-}
-
-int board_anx7483_c1_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- bool flipped = mux_state & USB_PD_MUX_POLARITY_INVERTED;
-
- /* Set the SBU polarity mux */
- RETURN_ERROR(ioex_set_flip(me->usb_port, mux_state));
-
- /* Remove flipped from the state for easier compraisons */
- mux_state = mux_state & ~USB_PD_MUX_POLARITY_INVERTED;
-
- RETURN_ERROR(anx7483_set_default_tuning(me, mux_state));
-
- if (mux_state == USB_PD_MUX_USB_ENABLED) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX2,
- ANX7483_EQ_SETTING_12_5DB));
- } else if (mux_state == USB_PD_MUX_DP_ENABLED) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX2,
- ANX7483_EQ_SETTING_12_5DB));
- } else if (mux_state == USB_PD_MUX_DOCK && !flipped) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX2,
- ANX7483_EQ_SETTING_12_5DB));
- } else if (mux_state == USB_PD_MUX_DOCK && flipped) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX2,
- ANX7483_EQ_SETTING_12_5DB));
- }
-
- return EC_SUCCESS;
-}
-
-int board_c1_ps8818_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- CPRINTSUSB("C1: PS8818 mux using default tuning");
-
- /* Once a DP connection is established, we need to set IN_HPD */
- if (mux_state & USB_PD_MUX_DP_ENABLED)
- ioex_set_level(IOEX_USB_C1_HPD_IN_DB, 1);
- else
- ioex_set_level(IOEX_USB_C1_HPD_IN_DB, 0);
-
- return 0;
-}
-
-static void setup_mux(void)
-{
- uint32_t val;
-
- if (cros_cbi_get_fw_config(FW_IO_DB, &val) != 0)
- CPRINTSUSB("Error finding FW_DB_IO in CBI FW_CONFIG");
- /* Val will have our dts default on error, so continue setup */
-
- if (val == FW_IO_DB_PS8811_PS8818) {
- CPRINTSUSB("C1: Setting PS8818 mux");
- USB_MUX_ENABLE_ALTERNATIVE(usb_mux_chain_ps8818_port1);
- } else if (val == FW_IO_DB_NONE_ANX7483) {
- CPRINTSUSB("C1: Setting ANX7483 mux");
- } else {
- CPRINTSUSB("Unexpected DB_IO board: %d", val);
- }
-}
-DECLARE_HOOK(HOOK_INIT, setup_mux, HOOK_PRIO_INIT_I2C);
diff --git a/zephyr/program/skyrim/fan.dtsi b/zephyr/program/skyrim/fan.dtsi
deleted file mode 100644
index dff26bcb29..0000000000
--- a/zephyr/program/skyrim/fan.dtsi
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- fans {
- compatible = "cros-ec,fans";
-
- fan0: fan_0 {
- pwms = <&pwm0 0 PWM_KHZ(25) PWM_POLARITY_NORMAL>;
- rpm_min = <3100>;
- rpm_start = <3100>;
- rpm_max = <8000>;
- tach = <&tach1>;
- pgood_gpio = <&gpio_s0_pgood>;
- };
- };
-};
-
-/* Tachemeter for fan speed measurement */
-&tach1 {
- status = "okay";
- pinctrl-0 = <&ta1_1_in_gp40>;
- pinctrl-names = "default";
- port = <NPCX_TACH_PORT_A>; /* port-A is selected */
- sample-clk = <NPCX_TACH_FREQ_LFCLK>; /* Use LFCLK as sampling clock */
- pulses-per-round = <2>; /* number of pulses per round of encoder */
-};
-
-&pwm0_gpc3 {
- drive-open-drain;
-};
-
-&pwm0 {
- status = "okay";
- pinctrl-0 = <&pwm0_gpc3>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/skyrim/frostflow/CMakeLists.txt b/zephyr/program/skyrim/frostflow/CMakeLists.txt
deleted file mode 100644
index dd7eae2384..0000000000
--- a/zephyr/program/skyrim/frostflow/CMakeLists.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cros_ec_library_include_directories_ifdef(CONFIG_BOARD_FROSTFLOW include)
-zephyr_include_directories("include")
-zephyr_library_sources(
- "src/usb_mux_config.c"
- "src/ppc_config.c"
- "src/thermal.c"
-)
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_KEYBOARD_CUSTOMIZATION
- "src/keyboard.c"
- "src/keyboard_customization.c"
-)
diff --git a/zephyr/program/skyrim/frostflow/battery.dtsi b/zephyr/program/skyrim/frostflow/battery.dtsi
deleted file mode 100644
index 2d6b28de70..0000000000
--- a/zephyr/program/skyrim/frostflow/battery.dtsi
+++ /dev/null
@@ -1,12 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- batteries {
- default_battery: cdt_c340152 {
- compatible = "cdt,c340152", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/skyrim/frostflow/frostflow.dtsi b/zephyr/program/skyrim/frostflow/frostflow.dtsi
deleted file mode 100644
index 1cadf7ee2d..0000000000
--- a/zephyr/program/skyrim/frostflow/frostflow.dtsi
+++ /dev/null
@@ -1,223 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/usbc_mux.h>
-
-#include "../i2c.dtsi"
-
-/ {
- named-gpios {
- /* Frostflow-specific GPIO customizations */
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- temp_soc: soc-pct2075 {
- temp_host_high = <75>;
- temp_host_halt = <80>;
- temp_host_release_high = <65>;
- temp_host_release_halt = <70>;
- power-good-pin = <&gpio_pg_pwr_s5>;
- sensor = <&soc_pct2075>;
- };
- temp_amb: amb-pct2075 {
- temp_host_high = <65>;
- temp_host_halt = <70>;
- temp_host_release_high = <55>;
- temp_host_release_halt = <60>;
- temp_fan_off = <32>;
- temp_fan_max = <45>;
- power-good-pin = <&gpio_pg_pwr_s5>;
- sensor = <&amb_pct2075>;
- };
- };
-
- /* Rotation matrices for motion sensors. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <1 0 0
- 0 1 0
- 0 0 1>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <0 1 0
- 1 0 0
- 0 0 (-1)>;
- };
- };
-
- ppc_port0: aoz1380 {
- compatible = "aoz,aoz1380";
- status = "okay";
- };
-
- fan_steps_clamshell: fan-steps-clamshell {
- compatible = "cros-ec,fan-steps";
- level_0 {
- temp_on = <(-1) (-1) (-1) (-1) 31>;
- temp_off = <(-1) (-1) (-1) (-1) 99>;
- rpm_target = <0>;
- };
- level_1 {
- temp_on = <(-1) (-1) (-1) (-1) 32>;
- temp_off = <(-1) (-1) (-1) (-1) 30>;
- rpm_target = <2600>;
- };
- level_2 {
- temp_on = <(-1) (-1) (-1) (-1) 34>;
- temp_off = <(-1) (-1) (-1) (-1) 31>;
- rpm_target = <2900>;
- };
- level_3 {
- temp_on = <(-1) (-1) (-1) (-1) 36>;
- temp_off = <(-1) (-1) (-1) (-1) 33>;
- rpm_target = <3600>;
- };
- level_4 {
- temp_on = <(-1) (-1) (-1) (-1) 38>;
- temp_off = <(-1) (-1) (-1) (-1) 35>;
- rpm_target = <4200>;
- };
- level_5 {
- temp_on = <(-1) (-1) (-1) (-1) 45>;
- temp_off = <(-1) (-1) (-1) (-1) 37>;
- rpm_target = <4600>;
- };
- };
-
- fan_steps_tablet: fan-steps-tablet {
- compatible = "cros-ec,fan-steps";
- level_0 {
- temp_on = <(-1) (-1) (-1) (-1) 31>;
- temp_off = <(-1) (-1) (-1) (-1) 99>;
- rpm_target = <0>;
- };
- level_1 {
- temp_on = <(-1) (-1) (-1) (-1) 32>;
- temp_off = <(-1) (-1) (-1) (-1) 30>;
- rpm_target = <2600>;
- };
- level_2 {
- temp_on = <(-1) (-1) (-1) (-1) 34>;
- temp_off = <(-1) (-1) (-1) (-1) 31>;
- rpm_target = <2900>;
- };
- level_3 {
- temp_on = <(-1) (-1) (-1) (-1) 36>;
- temp_off = <(-1) (-1) (-1) (-1) 33>;
- rpm_target = <3600>;
- };
- level_4 {
- temp_on = <(-1) (-1) (-1) (-1) 38>;
- temp_off = <(-1) (-1) (-1) (-1) 35>;
- rpm_target = <4200>;
- };
- level_5 {
- temp_on = <(-1) (-1) (-1) (-1) 45>;
- temp_off = <(-1) (-1) (-1) (-1) 37>;
- rpm_target = <4600>;
- };
- };
-};
-
-&i2c1_0 {
- ppc_port1: nx20p348x@71 {
- compatible = "nxp,nx20p348x";
- status = "okay";
- reg = <0x71>;
- };
- ps8818_port1: ps8818@28 {
- compatible = "parade,ps8818";
- reg = <0x28>;
- flags = <(USB_MUX_FLAG_RESETS_IN_G3)>;
- board-set = "board_c1_ps8818_mux_set";
- };
-};
-
-&i2c4_1 {
- charger: isl9241@9 {
- compatible = "intersil,isl9241";
- status = "okay";
- reg = <0x9>;
- };
-};
-
-&amd_fp6_port0 {
- board-set = "board_c0_amd_fp6_mux_set";
-};
-
-&usbc_port0 {
- ppc = <&ppc_port0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port0>;
- };
-};
-
-&usbc_port1 {
- ppc = <&ppc_port1>;
- usb-mux-chain-1-ps8818 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port1 &ps8818_port1>;
- };
-};
-
-&cros_kb_raw {
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- &kso13_gp04
- &kso14_gp82
- >;
-};
-
-&temp_sensor_charger {
- temp_host_high = <75>;
- temp_host_halt = <80>;
- temp_host_release_high = <65>;
- temp_host_release_halt = <70>;
-};
-
-&temp_sensor_memory {
- temp_host_high = <75>;
- temp_host_halt = <80>;
- temp_host_release_high = <65>;
- temp_host_release_halt = <70>;
-};
-
-&temp_sensor_cpu {
- /delete-property/ temp_host_high;
- /delete-property/ temp_host_halt;
- /delete-property/ temp_host_release_high;
- /delete-property/ temp_fan_off;
- /delete-property/ temp_fan_max;
-};
-
-&fan0 {
- pwms = <&pwm0 0 PWM_KHZ(25) PWM_POLARITY_NORMAL>;
- rpm_min = <2400>;
- rpm_start = <2600>;
- rpm_max = <4600>;
-};
diff --git a/zephyr/program/skyrim/frostflow/include/keyboard_customization.h b/zephyr/program/skyrim/frostflow/include/keyboard_customization.h
deleted file mode 100644
index 2d2a997f91..0000000000
--- a/zephyr/program/skyrim/frostflow/include/keyboard_customization.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Keyboard configuration */
-
-#ifndef __KEYBOARD_CUSTOMIZATION_H
-#define __KEYBOARD_CUSTOMIZATION_H
-
-/*
- * KEYBOARD_COLS_MAX has the build time column size. It's used to allocate
- * exact spaces for arrays. Actual keyboard scanning is done using
- * keyboard_cols, which holds a runtime column size.
- */
-#ifdef CONFIG_KEYBOARD_CUSTOMIZATION
-#undef KEYBOARD_COLS_MAX
-#undef KEYBOARD_ROWS
-
-#define KEYBOARD_COLS_MAX 15
-#define KEYBOARD_ROWS 8
-#endif
-
-/*
- * WARNING: Do not directly modify it. You should call keyboard_raw_set_cols,
- * instead. It checks whether you're eligible or not.
- */
-extern uint8_t keyboard_cols;
-
-#define KEYBOARD_ROW_TO_MASK(r) (1 << (r))
-
-/* Columns and masks for keys we particularly care about */
-#define KEYBOARD_COL_DOWN 11
-#define KEYBOARD_ROW_DOWN 5
-#define KEYBOARD_MASK_DOWN KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_DOWN)
-#define KEYBOARD_COL_ESC 1
-#define KEYBOARD_ROW_ESC 1
-#define KEYBOARD_MASK_ESC KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_ESC)
-#define KEYBOARD_COL_KEY_H 6
-#define KEYBOARD_ROW_KEY_H 1
-#define KEYBOARD_MASK_KEY_H KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_KEY_H)
-#define KEYBOARD_COL_KEY_R 3
-#define KEYBOARD_ROW_KEY_R 7
-#define KEYBOARD_MASK_KEY_R KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_KEY_R)
-#define KEYBOARD_COL_LEFT_ALT 10
-#define KEYBOARD_ROW_LEFT_ALT 6
-#define KEYBOARD_MASK_LEFT_ALT KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_LEFT_ALT)
-#define KEYBOARD_COL_REFRESH 2
-#define KEYBOARD_ROW_REFRESH 3
-#define KEYBOARD_MASK_REFRESH KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_REFRESH)
-#define KEYBOARD_COL_RIGHT_ALT 10
-#define KEYBOARD_ROW_RIGHT_ALT 0
-#define KEYBOARD_MASK_RIGHT_ALT KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_RIGHT_ALT)
-#define KEYBOARD_DEFAULT_COL_VOL_UP 4
-#define KEYBOARD_DEFAULT_ROW_VOL_UP 1
-#define KEYBOARD_COL_LEFT_CTRL 0
-#define KEYBOARD_ROW_LEFT_CTRL 2
-#define KEYBOARD_MASK_LEFT_CTRL KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_LEFT_CTRL)
-#define KEYBOARD_COL_RIGHT_CTRL 0
-#define KEYBOARD_ROW_RIGHT_CTRL 4
-#define KEYBOARD_MASK_RIGHT_CTRL KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_RIGHT_CTRL)
-#define KEYBOARD_COL_SEARCH 0
-#define KEYBOARD_ROW_SEARCH 3
-#define KEYBOARD_MASK_SEARCH KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_SEARCH)
-#define KEYBOARD_COL_KEY_0 9
-#define KEYBOARD_ROW_KEY_0 0
-#define KEYBOARD_MASK_KEY_0 KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_KEY_0)
-#define KEYBOARD_COL_KEY_1 1
-#define KEYBOARD_ROW_KEY_1 7
-#define KEYBOARD_MASK_KEY_1 KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_KEY_1)
-#define KEYBOARD_COL_KEY_2 4
-#define KEYBOARD_ROW_KEY_2 6
-#define KEYBOARD_MASK_KEY_2 KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_KEY_2)
-#define KEYBOARD_COL_LEFT_SHIFT 7
-#define KEYBOARD_ROW_LEFT_SHIFT 1
-#define KEYBOARD_MASK_LEFT_SHIFT KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_LEFT_SHIFT)
-
-#endif /* __KEYBOARD_CUSTOMIZATION_H */
diff --git a/zephyr/program/skyrim/frostflow/led_pins.dtsi b/zephyr/program/skyrim/frostflow/led_pins.dtsi
deleted file mode 100644
index 78b9a59c40..0000000000
--- a/zephyr/program/skyrim/frostflow/led_pins.dtsi
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_y: pwm_y {
- pwms = <&pwm2 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- pwm_w: pwm_w {
- pwms = <&pwm3 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- };
-
- pwm-led-pins {
- compatible = "cros-ec,pwm-led-pins";
-
- color_off: color-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <0 0>;
- };
-
- color_amber: color-amber {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <100 0>;
- };
-
- color_white: color-white {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_WHITE";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <0 100>;
- };
- };
-};
-
-/* Amber "battery charging" LED */
-&pwm2 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
-
-/* White "battery full" LED */
-&pwm3 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm3_gp80>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/skyrim/frostflow/led_policy.dtsi b/zephyr/program/skyrim/frostflow/led_policy.dtsi
deleted file mode 100644
index e5875640fb..0000000000
--- a/zephyr/program/skyrim/frostflow/led_policy.dtsi
+++ /dev/null
@@ -1,122 +0,0 @@
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
- /* Battery percent range (>= Empty, <= 94%) */
- batt-lvl = <0 94>;
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
-
- power-state-charge-lvl-2 {
- charge-state = "PWR_STATE_CHARGE";
- /* Battery percent range (>= 95%, <= Near Full) */
- batt-lvl = <95 97>;
-
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= 11%, <= Full) */
- batt-lvl = <11 100>;
-
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-discharge-s0-batt-low {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= Empty, <= 10%) */
- batt-lvl = <0 10>;
-
- /* Amber 1 sec, off 3 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
-
- power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- /* White 1 sec, off 3 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
-
- power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-error-s0 {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S0";
- /* Amber 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-error-s3 {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S3";
- /* White 1 sec, off 3 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
-
- power-state-error-s5 {
- charge-state = "PWR_STATE_ERROR";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
- };
-};
diff --git a/zephyr/program/skyrim/frostflow/motionsense.dtsi b/zephyr/program/skyrim/frostflow/motionsense.dtsi
deleted file mode 100644
index f943bea4c8..0000000000
--- a/zephyr/program/skyrim/frostflow/motionsense.dtsi
+++ /dev/null
@@ -1,135 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi3xx-int = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- mutex_bmi3xx: bmi3xx-mutex {
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bma4xx_data: bma4xx-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
-
- bmi3xx_data: bmi3xx-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- drv-data = <&bma4xx_data>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <100>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi3xx>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
-
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <100>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi3xx>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_accel_gyro>;
-
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/skyrim/frostflow/project.conf b/zephyr/program/skyrim/frostflow/project.conf
deleted file mode 100644
index 02da02d35d..0000000000
--- a/zephyr/program/skyrim/frostflow/project.conf
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Frostflow reference-board-specific Kconfig settings.
-CONFIG_BOARD_FROSTFLOW=y
-CONFIG_PLATFORM_EC_CHARGER_INPUT_CURRENT_DERATE_PCT=10
-
-# TODO(b/215404321): Remove later in board development
-CONFIG_PLATFORM_EC_EEPROM_CBI_WP=y
-CONFIG_PLATFORM_EC_SYSTEM_UNLOCKED=n
-
-# LED
-CONFIG_PLATFORM_EC_LED_DT=y
-
-# Frostflow is capable of sinking 45W
-CONFIG_PLATFORM_EC_PD_MAX_POWER_MW=45000
-CONFIG_PLATFORM_EC_PD_MAX_CURRENT_MA=3000
-CONFIG_PLATFORM_EC_PD_MAX_VOLTAGE_MV=20000
-CONFIG_PLATFORM_EC_CHARGER_MIN_POWER_MW_FOR_POWER_ON=15000
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_CUSTOMIZATION=y
-
-# Frostflow not have the USB HUB
-CONFIG_BOARD_USB_HUB_RESET=n
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_PRESENT_GPIO=y
-
-# Fan
-CONFIG_PLATFORM_EC_FAN=y
-CONFIG_PLATFORM_EC_CUSTOM_FAN_CONTROL=y
diff --git a/zephyr/program/skyrim/frostflow/project.overlay b/zephyr/program/skyrim/frostflow/project.overlay
deleted file mode 100644
index a1bc7dbb5e..0000000000
--- a/zephyr/program/skyrim/frostflow/project.overlay
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Skyrim program common DTS includes */
-#include "../adc.dtsi"
-#include "../fan.dtsi"
-#include "../gpio.dtsi"
-#include "../interrupts.dtsi"
-#include "../keyboard.dtsi"
-#include "../usbc.dtsi"
-
-/* Frostflow project DTS includes*/
-#include "frostflow.dtsi"
-#include "battery.dtsi"
-#include "led_pins.dtsi"
-#include "led_policy.dtsi"
-#include "motionsense.dtsi"
diff --git a/zephyr/program/skyrim/frostflow/src/keyboard.c b/zephyr/program/skyrim/frostflow/src/keyboard.c
deleted file mode 100644
index 2905f17941..0000000000
--- a/zephyr/program/skyrim/frostflow/src/keyboard.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ec_commands.h"
-#include "keyboard_scan.h"
-#include "timer.h"
-
-/* Keyboard scan setting */
-__override struct keyboard_scan_config keyscan_config = {
- /* Increase from 50 us, because KSO_02 passes through the H1. */
- .output_settle_us = 80,
- /* Other values should be the same as the default configuration. */
- .debounce_down_us = 9 * MSEC,
- .debounce_up_us = 30 * MSEC,
- .scan_period_us = 3 * MSEC,
- .min_post_scan_delay_us = 1000,
- .poll_timeout_us = 100 * MSEC,
- .actual_key_mask = {
- 0x1c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- 0x86, 0xff, 0xff, 0x55, 0xff, 0xff, 0xff, 0xff, /* full set */
- },
-};
-
-static const struct ec_response_keybd_config frostflow_kb = {
- .num_top_row_keys = 10,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_REFRESH, /* T2 */
- TK_FULLSCREEN, /* T3 */
- TK_OVERVIEW, /* T4 */
- TK_SNAPSHOT, /* T5 */
- TK_BRIGHTNESS_DOWN, /* T6 */
- TK_BRIGHTNESS_UP, /* T7 */
- TK_VOL_MUTE, /* T8 */
- TK_VOL_DOWN, /* T9 */
- TK_VOL_UP, /* T10 */
- },
- .capabilities = KEYBD_CAP_SCRNLOCK_KEY,
-};
-
-__override const struct ec_response_keybd_config *
-board_vivaldi_keybd_config(void)
-{
- return &frostflow_kb;
-}
-
-/*
- * Row Column info for Top row keys T1 - T15.
- * on frostflow_kb keyboard Row Column is customization
- * need define row col to mapping matrix layout.
- */
-__override const struct key {
- uint8_t row;
- uint8_t col;
-} vivaldi_keys[] = {
- { .row = 4, .col = 2 }, /* T1 */
- { .row = 3, .col = 2 }, /* T2 */
- { .row = 2, .col = 2 }, /* T3 */
- { .row = 1, .col = 2 }, /* T4 */
- { .row = 4, .col = 4 }, /* T5 */
- { .row = 3, .col = 4 }, /* T6 */
- { .row = 2, .col = 4 }, /* T7 */
- { .row = 2, .col = 9 }, /* T8 */
- { .row = 1, .col = 9 }, /* T9 */
- { .row = 1, .col = 4 }, /* T10 */
- { .row = 0, .col = 4 }, /* T11 */
- { .row = 1, .col = 5 }, /* T12 */
- { .row = 3, .col = 5 }, /* T13 */
- { .row = 2, .col = 1 }, /* T14 */
- { .row = 0, .col = 1 }, /* T15 */
-};
-BUILD_ASSERT(ARRAY_SIZE(vivaldi_keys) == MAX_TOP_ROW_KEYS);
diff --git a/zephyr/program/skyrim/frostflow/src/keyboard_customization.c b/zephyr/program/skyrim/frostflow/src/keyboard_customization.c
deleted file mode 100644
index bd02940e03..0000000000
--- a/zephyr/program/skyrim/frostflow/src/keyboard_customization.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "common.h"
-#include "gpio.h"
-#include "keyboard_customization.h"
-#include "keyboard_protocol.h"
-#include "keyboard_raw.h"
-
-#include <zephyr/drivers/gpio.h>
-
-static uint16_t scancode_set2[KEYBOARD_COLS_MAX][KEYBOARD_ROWS] = {
- { 0x0000, 0x0000, 0x0014, 0xe01f, 0xe014, 0x0000, 0x0000, 0x0000 },
- { 0x001f, 0x0076, 0x0017, 0x000e, 0x001c, 0x003a, 0x000d, 0x0016 },
- { 0x006c, 0xe024, 0xe01d, 0xe020, 0xe038, 0xe071, 0x0026, 0x002a },
- { 0x0032, 0x0034, 0x002c, 0x002e, 0x002b, 0x0029, 0x0025, 0x002d },
- { 0x0078, 0xe032, 0xe035, 0xe02c, 0xe02d, 0x0041, 0x001e, 0x001d },
- { 0x0051, 0x0007, 0x005b, 0x000f, 0x0042, 0x0022, 0x003e, 0x0043 },
- { 0x0031, 0x0033, 0x0035, 0x0036, 0x003b, 0x001b, 0x003d, 0x003c },
- { 0x0000, 0x0012, 0x0061, 0x0000, 0x0000, 0x0000, 0x0000, 0x0059 },
- { 0x0055, 0x0052, 0x0054, 0x004e, 0x004c, 0x0024, 0x0044, 0x004d },
- { 0x0045, 0xe021, 0xe023, 0x002f, 0x004b, 0x0049, 0x0046, 0x001a },
- { 0xe011, 0x0000, 0x006a, 0x0000, 0x005d, 0x0000, 0x0011, 0x0000 },
- { 0xe07a, 0x005d, 0xe075, 0x006b, 0x005a, 0xe072, 0x004a, 0x0066 },
- { 0xe06b, 0xe074, 0xe069, 0x0067, 0xe06c, 0x0064, 0x0015, 0xe07d },
- { 0x0073, 0x007c, 0x007b, 0x0074, 0x0071, 0xe04a, 0x0070, 0x0021 },
- { 0x0023, 0xe05a, 0x0075, 0x0079, 0x007a, 0x0072, 0x007d, 0x0069 },
-};
-
-uint16_t get_scancode_set2(uint8_t row, uint8_t col)
-{
- if (col < KEYBOARD_COLS_MAX && row < KEYBOARD_ROWS)
- return scancode_set2[col][row];
- return 0;
-}
-
-void set_scancode_set2(uint8_t row, uint8_t col, uint16_t val)
-{
- if (col < KEYBOARD_COLS_MAX && row < KEYBOARD_ROWS)
- scancode_set2[col][row] = val;
-}
-
-#ifdef CONFIG_KEYBOARD_DEBUG
-static char keycap_label[KEYBOARD_COLS_MAX][KEYBOARD_ROWS] = {
- { 'c', KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO,
- KLLI_UNKNO, KLLI_UNKNO },
- { KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO,
- KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO },
- { 'q', KLLI_UNKNO, KLLI_UNKNO, KLLI_TAB, '`', '1', KLLI_UNKNO, 'a' },
- { KLLI_R_ALT, KLLI_L_ALT, KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO,
- KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO },
- { KLLI_UNKNO, KLLI_SPACE, 'e', KLLI_F4, KLLI_SEARC, '3', KLLI_F3,
- KLLI_UNKNO },
- { 'x', 'z', KLLI_F2, KLLI_F1, 's', '2', 'w', KLLI_ESC },
- { 'v', 'b', 'g', 't', '5', '4', 'r', 'f' },
- { 'm', 'n', 'h', 'y', '6', '7', 'u', 'j' },
- { '.', KLLI_DOWN, '\\', 'o', KLLI_F10, '9', KLLI_UNKNO, 'l' },
- { KLLI_R_SHT, KLLI_L_SHT, KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO,
- KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO },
- { ',', KLLI_UNKNO, KLLI_F7, KLLI_F6, KLLI_F5, '8', 'i', 'k' },
- { KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO, KLLI_F9, KLLI_UNKNO, KLLI_UNKNO,
- KLLI_LEFT, KLLI_UNKNO },
- { KLLI_R_CTR, KLLI_L_CTR, KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO,
- KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO },
- { '/', KLLI_UP, '-', KLLI_UNKNO, '0', 'p', '[', ';' },
- { '\'', KLLI_ENTER, KLLI_UNKNO, KLLI_UNKNO, '=', KLLI_B_SPC, ']', 'd' },
- { KLLI_UNKNO, KLLI_F8, KLLI_RIGHT, KLLI_UNKNO, KLLI_UNKNO, KLLI_UNKNO,
- KLLI_UNKNO, KLLI_UNKNO },
-};
-
-char get_keycap_label(uint8_t row, uint8_t col)
-{
- if (col < KEYBOARD_COLS_MAX && row < KEYBOARD_ROWS)
- return keycap_label[col][row];
- return KLLI_UNKNO;
-}
-
-void set_keycap_label(uint8_t row, uint8_t col, char val)
-{
- if (col < KEYBOARD_COLS_MAX && row < KEYBOARD_ROWS)
- keycap_label[col][row] = val;
-}
-#endif
diff --git a/zephyr/program/skyrim/frostflow/src/ppc_config.c b/zephyr/program/skyrim/frostflow/src/ppc_config.c
deleted file mode 100644
index 513c025dec..0000000000
--- a/zephyr/program/skyrim/frostflow/src/ppc_config.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Frostflow board-specific PPC code */
-
-#include "driver/ppc/aoz1380_public.h"
-#include "driver/ppc/nx20p348x.h"
-#include "usbc_ppc.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTFUSB(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-/*
- * In the AOZ1380 PPC, there are no programmable features. We use
- * the attached NCT3807 to control a GPIO to indicate 1A5 or 3A0
- * current limits.
- */
-int board_aoz1380_set_vbus_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- int rv = EC_SUCCESS;
-
- rv = gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(ioex_usb_c0_ilim_3a_en),
- (rp == TYPEC_RP_3A0) ? 1 : 0);
-
- return rv;
-}
-
-void ppc_interrupt(enum gpio_signal signal)
-{
- switch (signal) {
- case GPIO_USB_C0_PPC_INT_ODL:
- aoz1380_interrupt(0);
- break;
-
- case GPIO_USB_C1_PPC_INT_ODL:
- nx20p348x_interrupt(1);
- break;
-
- default:
- break;
- }
-}
diff --git a/zephyr/program/skyrim/frostflow/src/thermal.c b/zephyr/program/skyrim/frostflow/src/thermal.c
deleted file mode 100644
index eae8aac25d..0000000000
--- a/zephyr/program/skyrim/frostflow/src/thermal.c
+++ /dev/null
@@ -1,109 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "common.h"
-#include "chipset.h"
-#include "fan.h"
-#include "tablet_mode.h"
-#include "temp_sensor/temp_sensor.h"
-#include "thermal.h"
-#include "util.h"
-#include "console.h"
-
-#define TEMP_AMB TEMP_SENSOR_ID(DT_NODELABEL(temp_amb))
-
-struct fan_step {
- /*
- * Sensor 0~4 trigger point, set -1 if we're not using this
- * sensor to determine fan speed.
- */
- int on[TEMP_SENSOR_COUNT];
- /*
- * Sensor 0~4 release point, set -1 if we're not using this
- * sensor to determine fan speed.
- */
- int off[TEMP_SENSOR_COUNT];
- /* Fan rpm */
- uint16_t rpm[FAN_CH_COUNT];
-};
-
-#define FAN_TABLE_ENTRY(nd) \
- { \
- .on = DT_PROP(nd, temp_on), \
- .off = DT_PROP(nd, temp_off), \
- .rpm = DT_PROP(nd, rpm_target), \
- },
-
-static const struct fan_step fan_table_clamshell[] = { DT_FOREACH_CHILD(
- DT_NODELABEL(fan_steps_clamshell), FAN_TABLE_ENTRY) };
-
-static const struct fan_step fan_table_tablet[] = { DT_FOREACH_CHILD(
- DT_NODELABEL(fan_steps_tablet), FAN_TABLE_ENTRY) };
-
-static const struct fan_step *fan_step_table;
-#define NUM_FAN_LEVELS ARRAY_SIZE(fan_table_clamshell)
-
-BUILD_ASSERT(ARRAY_SIZE(fan_table_clamshell) == ARRAY_SIZE(fan_table_tablet));
-
-int fan_table_to_rpm(int fan, int *temp)
-{
- /* current fan level */
- static int current_level;
- /* previous sensor temperature */
- static int prev_tmp[TEMP_SENSOR_COUNT];
- int i;
-
- if (tablet_get_mode())
- fan_step_table = fan_table_tablet;
- else
- fan_step_table = fan_table_clamshell;
-
- /*
- * Compare the current and previous temperature, we have
- * the three paths :
- * 1. decreasing path. (check the release point)
- * 2. increasing path. (check the trigger point)
- * 3. invariant path. (return the current RPM)
- */
-
- if (temp[TEMP_AMB] < prev_tmp[TEMP_AMB]) {
- for (i = current_level; i > 0; i--) {
- if (temp[TEMP_AMB] < fan_step_table[i].off[TEMP_AMB])
- current_level = i - 1;
- else
- break;
- }
- } else if (temp[TEMP_AMB] > prev_tmp[TEMP_AMB]) {
- for (i = current_level; i < NUM_FAN_LEVELS; i++) {
- if (temp[TEMP_AMB] > fan_step_table[i].on[TEMP_AMB])
- current_level = i + 1;
- else
- break;
- }
- }
-
- if (current_level < 0)
- current_level = 0;
-
- if (current_level >= NUM_FAN_LEVELS)
- current_level = NUM_FAN_LEVELS - 1;
-
- for (i = 0; i < TEMP_SENSOR_COUNT; ++i)
- prev_tmp[i] = temp[i];
-
- return fan_step_table[current_level].rpm[fan];
-}
-
-void board_override_fan_control(int fan, int *temp)
-{
- /*
- * In common/fan.c pwm_fan_stop() will turn off fan
- * when chipset suspend or shutdown.
- */
- if (chipset_in_state(CHIPSET_STATE_ON)) {
- fan_set_rpm_mode(fan, 1);
- fan_set_rpm_target(fan, fan_table_to_rpm(fan, temp));
- }
-}
diff --git a/zephyr/program/skyrim/frostflow/src/usb_mux_config.c b/zephyr/program/skyrim/frostflow/src/usb_mux_config.c
deleted file mode 100644
index 2ec1dda0be..0000000000
--- a/zephyr/program/skyrim/frostflow/src/usb_mux_config.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Frostflow board-specific USB-C mux configuration */
-
-#include "ioexpander.h"
-#include "usbc/usb_muxes.h"
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTFUSB(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-/*
- * USB C0 (general) and C1 (just ps8815 DB) use IOEX pins to
- * indicate flipped polarity to a protection switch.
- */
-static int ioex_set_flip(int port, mux_state_t mux_state)
-{
- if (port == 0) {
- if (mux_state & USB_PD_MUX_POLARITY_INVERTED)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c0_sbu_flip),
- 1);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c0_sbu_flip),
- 0);
- } else {
- if (mux_state & USB_PD_MUX_POLARITY_INVERTED)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c1_sbu_flip),
- 1);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c1_sbu_flip),
- 0);
- }
-
- return EC_SUCCESS;
-}
-
-int board_c0_amd_fp6_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- /* Set the SBU polarity mux */
- RETURN_ERROR(ioex_set_flip(me->usb_port, mux_state));
-
- return EC_SUCCESS;
-}
-
-int board_c1_ps8818_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- CPRINTSUSB("C1: PS8818 mux using default tuning");
-
- /* Once a DP connection is established, we need to set IN_HPD */
- if (mux_state & USB_PD_MUX_DP_ENABLED)
- ioex_set_level(IOEX_USB_C1_HPD_IN_DB, 1);
- else
- ioex_set_level(IOEX_USB_C1_HPD_IN_DB, 0);
-
- return 0;
-}
diff --git a/zephyr/program/skyrim/gpio.dtsi b/zephyr/program/skyrim/gpio.dtsi
deleted file mode 100644
index 2b79bad222..0000000000
--- a/zephyr/program/skyrim/gpio.dtsi
+++ /dev/null
@@ -1,370 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- gpio-wp = &gpio_wp;
- gpio-cbi-wp = &gpio_cbi_wp;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- /* GPIOs shared by all boards */
- named-gpios {
- compatible = "named-gpios";
-
- ccd_mode_odl {
- gpios = <&gpioc 6 GPIO_ODR_HIGH>;
- };
- ec_gsc_packet_mode {
- gpios = <&gpiob 1 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PACKET_MODE_EN";
- };
- gpio_mech_pwr_btn_odl: mech_pwr_btn_odl {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_slp_s3_l: slp_s3_l {
- gpios = <&gpio6 1 GPIO_INPUT>;
- enum-name = "GPIO_PCH_SLP_S3_L";
- alias = "GPIO_PCH_SLP_S0_L";
- };
- gpio_slp_s5_l: slp_s5_l {
- gpios = <&gpio7 2 GPIO_INPUT>;
- enum-name = "GPIO_PCH_SLP_S5_L";
- };
- gpio_pg_pwr_s5: pg_pwr_s5 {
- gpios = <&gpioc 0 GPIO_INPUT>;
- enum-name = "GPIO_S5_PGOOD";
- };
- gpio_s0_pgood: pg_pcore_s0_r_od {
- gpios = <&gpiob 6 GPIO_INPUT>;
- enum-name = "GPIO_S0_PGOOD";
- };
- gpio_acok_od: acok_od {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_en_pwr_s5: en_pwr_s5 {
- gpios = <&gpiob 7 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_PWR_A";
- };
- gpio_en_pwr_s0_r: en_pwr_s0_r {
- gpios = <&gpiof 1 GPIO_OUTPUT_LOW>;
- };
- gpio_en_pwr_pcore_s0_r: en_pwr_pcore_s0_r {
- gpios = <&gpioe 1 GPIO_OUTPUT_LOW>;
- };
- ec_sys_rst_l {
- gpios = <&gpio7 6 GPIO_ODR_HIGH>;
- enum-name = "GPIO_SYS_RESET_L";
- };
- gpio_ec_soc_rsmrst_l: ec_soc_rsmrst_l {
- gpios = <&gpioc 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_PCH_RSMRST_L";
- };
- gpio_ec_pch_wake_odl: ec_soc_wake_l {
- gpios = <&gpio0 3 GPIO_OUTPUT_HIGH>;
- };
- prochot_odl {
- gpios = <&gpiod 5 GPIO_ODR_HIGH>;
- enum-name = "GPIO_CPU_PROCHOT";
- };
- soc_alert_ec_l {
- gpios = <&gpioe 2 GPIO_INPUT>;
- };
- gpio_usb_c0_tcpc_int_odl: usb_c0_tcpc_int_odl {
- gpios = <&gpioe 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_TCPC_INT_ODL";
- };
- gpio_usb_c1_tcpc_int_odl: usb_c1_tcpc_int_odl {
- gpios = <&gpioc 7 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_TCPC_INT_ODL";
- };
- gpio_usb_c0_ppc_int_odl: usb_c0_ppc_int_odl {
- gpios = <&gpio7 5 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_PPC_INT_ODL";
- };
- gpio_usb_c1_ppc_int_odl: usb_c1_ppc_int_odl {
- gpios = <&gpiod 4 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_PPC_INT_ODL";
- };
- gpio_usb_c0_bc12_int_odl: usb_c0_bc12_int_odl {
- gpios = <&gpioa 4 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_USB_C0_BC12_INT_ODL";
- };
- gpio_usb_c1_bc12_int_odl: usb_c1_bc12_int_odl {
- gpios = <&gpio9 6 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_USB_C1_BC12_INT_ODL";
- };
- gpio_usb_c0_tcpc_rst_l: usb_c0_tcpc_rst_l {
- gpios = <&gpio3 4 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_USB_C0_TCPC_RST_L";
- };
- gpio_usb_c1_tcpc_rst_l: usb_c1_tcpc_rst_l {
- gpios = <&gpio3 7 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_USB_C1_TCPC_RST_L";
- };
- usb_c0_hpd {
- gpios = <&gpiof 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C0_DP_HPD";
- };
- usb_c1_hpd {
- gpios = <&gpiof 4 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_USB_C1_DP_HPD";
- };
- gpio_lid_open: lid_open {
- gpios = <&gpio0 2 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_ec_batt_pres_odl: ec_batt_pres_odl {
- gpios = <&gpio9 4 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- gpio_ec_disable_disp_bl: ec_disable_disp_bl {
- gpios = <&gpioa 6 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_ENABLE_BACKLIGHT_L";
- };
- gpio_usb_fault_odl: usb_fault_odl {
- gpios = <&gpio5 0 (GPIO_ODR_HIGH | GPIO_VOLTAGE_1P8)>;
- };
- gpio_en_pwr_s3: en_pwr_s3 {
- gpios = <&gpio7 4 GPIO_OUTPUT_LOW>;
- };
- gpio_pg_groupc_s0_od: pg_groupc_s0_od {
- gpios = <&gpiof 0 GPIO_INPUT>;
- };
- gpio_ec_i2c_usbc_pd_int: ec_i2c_usbc_pd_int {
- gpios = <&gpioa 3 GPIO_INPUT>;
- };
- gpio_soc_thermtrip_odl: soc_thermtrip_odl {
- gpios = <&gpio9 5 GPIO_INPUT>;
- };
- gpio_hub_rst: hub_rst {
- gpios = <&gpio6 6 GPIO_OUTPUT_HIGH>;
- };
- ec_soc_int_l {
- gpios = <&gpioa 1 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- gpio_ec_soc_pwr_good: ec_soc_pwr_good {
- gpios = <&gpiod 3 GPIO_OUTPUT_LOW>;
- };
- gpio_pcore_ocp_r_l: pcore_ocp_r_l {
- gpios = <&gpioa 5 GPIO_INPUT>;
- };
- gpio_usb_hub_fault_q_odl: usb_hub_fault_q_odl {
- gpios = <&gpioe 5 GPIO_INPUT_PULL_UP>;
- };
- gpio_pg_lpddr5_s3_od: pg_lpddr5_s3_od {
- gpios = <&gpio7 3 GPIO_INPUT>;
- };
- 3axis_int_l {
- gpios = <&gpioa 2 GPIO_INPUT_PULL_UP>;
- };
- gpio_ec_soc_pwr_btn_l: ec_soc_pwr_btn_l {
- gpios = <&gpioa 7 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_PCH_PWRBTN_L";
- };
- gpio_volup_btn_odl: volup_btn_odl {
- gpios = <&gpio6 7 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_voldn_btn_odl: voldn_btn_odl {
- gpios = <&gpio7 0 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- ec_sc_rst {
- gpios = <&gpiob 0 GPIO_OUTPUT_LOW>;
- };
- gpio_cbi_wp: ec_cbi_wp {
- gpios = <&gpio8 1 GPIO_OUTPUT_LOW>;
- };
- gpio_wp: ec_wp_l {
- gpios = <&gpiod 7 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_pg_lpddr5_s0_od: pg_lpddr5_s0_od {
- gpios = <&gpio6 0 GPIO_INPUT>;
- };
- ec_espi_rst_l {
- gpios = <&gpio5 4 GPIO_PULL_DOWN>;
- };
- gpio_accel_gyro_int_l: accel_gyro_int_l {
- gpios = <&gpioa 0 GPIO_INPUT>;
- };
- /* unimplemented GPIOs */
- entering-rw {
- enum-name = "GPIO_ENTERING_RW";
- };
- pch-sys-prwok {
- enum-name = "GPIO_PCH_SYS_PWROK";
- };
- ec_i2c_usb_a0_c0_scl {
- gpios = <&gpiob 5 GPIO_INPUT>;
- };
- ec_i2c_usb_a0_c0_sda {
- gpios = <&gpiob 4 GPIO_INPUT>;
- };
- ec_i2c_usb_a1_c1_scl {
- gpios = <&gpio9 0 GPIO_INPUT>;
- };
- ec_i2c_usb_a1_c1_sda {
- gpios = <&gpio8 7 GPIO_INPUT>;
- };
- ec_i2c_batt_scl {
- gpios = <&gpio9 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec_i2c_batt_sda {
- gpios = <&gpio9 1 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec_i2c_usbc_mux_scl {
- gpios = <&gpiod 1 GPIO_INPUT>;
- };
- ec_i2c_usbc_mux_sda {
- gpios = <&gpiod 0 GPIO_INPUT>;
- };
- ec_i2c_power_scl {
- gpios = <&gpiof 3 GPIO_INPUT>;
- };
- ec_i2c_power_sda {
- gpios = <&gpiof 2 GPIO_INPUT>;
- };
- ec_i2c_cbi_scl {
- gpios = <&gpio3 3 GPIO_INPUT>;
- };
- ec_i2c_cbi_sda {
- gpios = <&gpio3 6 GPIO_INPUT>;
- };
- ec_i2c_sensor_scl {
- gpios = <&gpioe 4 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec_i2c_sensor_sda {
- gpios = <&gpioe 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec_i2c_soc_sic {
- gpios = <&gpiob 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec_i2c_soc_sid {
- gpios = <&gpiob 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- en_kb_bl {
- gpios = <&gpio9 7 GPIO_OUTPUT_HIGH>;
- enum-name = "GPIO_EN_KEYBOARD_BACKLIGHT";
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
- tablet_mode_l {
- gpios = <&gpioc 1 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- ec_gpio56 {
- gpios = <&gpio5 6 GPIO_INPUT_PULL_UP>;
- };
- ec_flprg2 {
- gpios = <&gpio8 6 GPIO_INPUT_PULL_UP>;
- };
-
- usb_c0_tcpc_fastsw_ctl_en {
- gpios = <&ioex_c0_port0 4 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_TCPC_FASTSW_CTL_EN";
- };
- usb_c0_ppc_en_l {
- gpios = <&ioex_c0_port1 0 GPIO_OUTPUT_LOW>;
- };
- ioex_usb_c0_ilim_3a_en: usb_c0_ppc_ilim_3a_en {
- gpios = <&ioex_c0_port1 1 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_PPC_ILIM_3A_EN";
- };
- ioex_usb_c0_sbu_fault_odl: usb_c0_sbu_fault_odl {
- gpios = <&ioex_c0_port1 2 GPIO_INPUT>;
- };
- ioex_en_pp5000_usb_a0_vbus: en_pp5000_usb_a0_vbus {
- gpios = <&ioex_c0_port1 5 GPIO_OUTPUT_LOW>;
- };
- ioex_usb_a0_fault_odl: usb_a0_fault_odl {
- gpios = <&ioex_c0_port1 6 GPIO_INPUT>;
- };
- ioex_usb_c0_sbu_flip: usb_c0_sbu_flip {
- gpios = <&ioex_c0_port1 7 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C0_SBU_FLIP";
- };
-
- usb_a1_retimer_en {
- gpios = <&ioex_c1_port0 0 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_A1_RETIMER_EN";
- };
- usb_a1_retimer_rst {
- gpios = <&ioex_c1_port0 1 GPIO_OUTPUT_LOW>;
- };
- usb_c1_in_hpd {
- gpios = <&ioex_c1_port0 3 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C1_HPD_IN_DB";
- };
- usb_c1_tcpc_fastsw_ctl_en {
- gpios = <&ioex_c1_port0 4 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C1_TCPC_FASTSW_CTL_EN";
- };
- usb_c1_ppc_en_l {
- gpios = <&ioex_c1_port1 0 GPIO_OUTPUT_LOW>;
- };
- usb_c1_ppc_ilim_3a_en {
- gpios = <&ioex_c1_port1 1 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C1_PPC_ILIM_3A_EN";
- };
- ioex_usb_c1_sbu_fault_odl: usb_c1_sbu_fault_odl {
- gpios = <&ioex_c1_port1 2 GPIO_INPUT>;
- enum-name = "IOEX_USB_C1_FAULT_ODL";
- };
- ioex_en_pp5000_usb_a1_vbus: en_pp5000_usb_a1_vbus {
- gpios = <&ioex_c1_port1 5 GPIO_OUTPUT_LOW>;
- };
- ioex_usb_a1_fault_db_odl: usb_a1_fault_db_odl {
- gpios = <&ioex_c1_port1 6 GPIO_INPUT>;
- };
- ioex_usb_c1_sbu_flip: usb_c1_sbu_flip {
- gpios = <&ioex_c1_port1 7 GPIO_OUTPUT_LOW>;
- enum-name = "IOEX_USB_C1_SBU_FLIP";
- };
- };
-
- usba-port-enable-list {
- compatible = "cros-ec,usba-port-enable-pins";
- enable-pins = <&ioex_en_pp5000_usb_a0_vbus
- &ioex_en_pp5000_usb_a1_vbus>;
- };
-};
-
-/* PSL input pads*/
-&psl_in1_gpd2 {
- /* MECH_PWR_BTN_ODL */
- psl-in-mode = "edge";
- psl-in-pol = "low-falling";
-};
-
-&psl_in2_gp00 {
- /* ACOK_OD */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-&psl_in4_gp02 {
- /* LID_OPEN */
- psl-in-mode = "edge";
- psl-in-pol = "high-rising";
-};
-
-/* Power domain device controlled by PSL (Power Switch Logic) IO pads */
-&power_ctrl_psl {
- status = "okay";
- pinctrl-names = "sleep";
- pinctrl-0 = <&psl_in1_gpd2 &psl_in2_gp00 &psl_in4_gp02>;
-};
-
-/* host interface */
-&espi0 {
- status = "okay";
- pinctrl-0 = <&espi_lpc_gp46_47_51_52_53_54_55_57>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/skyrim/i2c.dtsi b/zephyr/program/skyrim/i2c.dtsi
deleted file mode 100644
index 460a6bcfd2..0000000000
--- a/zephyr/program/skyrim/i2c.dtsi
+++ /dev/null
@@ -1,294 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
- #include <dt-bindings/usb_pd_tcpm.h>
-
-/ {
- aliases {
- i2c-0 = &i2c0_0;
- i2c-1 = &i2c1_0;
- i2c-2 = &i2c2_0;
- i2c-3 = &i2c3_0;
- i2c-4 = &i2c4_1;
- i2c-5 = &i2c5_0;
- i2c-7 = &i2c7_0;
- };
-
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_tcpc0: tcpc0 {
- i2c-port = <&i2c0_0>;
- enum-names = "I2C_PORT_TCPC0";
- };
-
- i2c_tcpc1: tcpc1 {
- i2c-port = <&i2c1_0>;
- enum-names = "I2C_PORT_TCPC1";
- };
-
- battery {
- i2c-port = <&i2c2_0>;
- remote-port = <0>;
- enum-names = "I2C_PORT_BATTERY";
- };
-
- usb-mux {
- i2c-port = <&i2c3_0>;
- enum-names = "I2C_PORT_USB_MUX";
- };
-
- i2c_charger: charger {
- i2c-port = <&i2c4_1>;
- enum-names = "I2C_PORT_CHARGER";
- };
-
- eeprom {
- i2c-port = <&i2c5_0>;
- enum-names = "I2C_PORT_EEPROM";
- };
-
- i2c_sensor: sensor {
- i2c-port = <&i2c6_1>;
- enum-names = "I2C_PORT_SENSOR";
- };
-
- i2c_soc_thermal: soc-thermal {
- i2c-port = <&i2c7_0>;
- enum-names = "I2C_PORT_THERMAL_AP";
- };
- };
-
-
-};
-
-&i2c0_0 {
- status = "okay";
- label = "I2C_TCPC0";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c0_bc12>;
- };
-
- tcpc_port0: nct38xx@70 {
- compatible = "nuvoton,nct38xx";
- reg = <0x70>;
- gpio-dev = <&nct3807_C0>;
- tcpc-flags = <(TCPC_FLAGS_TCPCI_REV2_0)>;
- };
-
- nct3807_C0: nct3807_C0@70 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "nuvoton,nct38xx-gpio";
- reg = <0x70>;
- label = "NCT3807_C0";
-
- ioex_c0_port0: gpio@0 {
- compatible = "nuvoton,nct38xx-gpio-port";
- reg = <0x0>;
- label = "NCT3807_C0_GPIO0";
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- pin_mask = <0xff>;
- pinmux_mask = <0xf7>;
- };
- ioex_c0_port1: gpio@1 {
- compatible = "nuvoton,nct38xx-gpio-port";
- reg = <0x1>;
- label = "NCT3807_C0_GPIO1";
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- pin_mask = <0xff>;
- };
- };
-
- nct3808_alert_0 {
- compatible = "nuvoton,nct38xx-gpio-alert";
- irq-gpios = <&gpioe 0 GPIO_ACTIVE_LOW>;
- nct38xx-dev = <&nct3807_C0>;
- label = "NCT3807_ALERT_0";
- };
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-&i2c1_0 {
- status = "okay";
- label = "I2C_TCPC1";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-
- bc12_port1: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c1_bc12>;
- };
-
- tcpc_port1: nct38xx@70 {
- compatible = "nuvoton,nct38xx";
- reg = <0x70>;
- gpio-dev = <&nct3807_C1>;
- tcpc-flags = <(TCPC_FLAGS_TCPCI_REV2_0)>;
- };
-
- nct3807_C1: nct3807_C1@70 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "nuvoton,nct38xx-gpio";
- reg = <0x70>;
- label = "NCT3807_C1";
-
- ioex_c1_port0: gpio@0 {
- compatible = "nuvoton,nct38xx-gpio-port";
- reg = <0x0>;
- label = "NCT3807_C1_GPIO0";
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- pin_mask = <0xff>;
- pinmux_mask = <0xf7>;
- };
- ioex_c1_port1: gpio@1 {
- compatible = "nuvoton,nct38xx-gpio-port";
- reg = <0x1>;
- label = "NCT3807_C1_GPIO1";
- gpio-controller;
- #gpio-cells = <2>;
- ngpios = <8>;
- pin_mask = <0xff>;
- };
- };
-
- nct3808_alert_1 {
- compatible = "nuvoton,nct38xx-gpio-alert";
- irq-gpios = <&gpioc 7 GPIO_ACTIVE_LOW>;
- nct38xx-dev = <&nct3807_C1>;
- label = "NCT3807_ALERT_1";
- };
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-&i2c2_0 {
- status = "okay";
- label = "I2C_BATTERY";
- clock-frequency = <I2C_BITRATE_STANDARD>;
- pinctrl-0 = <&i2c2_0_sda_scl_gp91_92>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl2 {
- status = "okay";
-};
-
-&i2c3_0 {
- status = "okay";
- label = "I2C_USB_MUX";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c3_0_sda_scl_gpd0_d1>;
- pinctrl-names = "default";
-
- amd_fp6_port0: amd_fp6@5c {
- compatible = "amd,usbc-mux-amd-fp6";
- status = "okay";
- reg = <0x5c>;
- };
- amd_fp6_port1: amd_fp6@52 {
- compatible = "amd,usbc-mux-amd-fp6";
- status = "okay";
- reg = <0x52>;
- };
-};
-
-&i2c_ctrl3 {
- status = "okay";
-};
-
-&i2c4_1 {
- status = "okay";
- label = "I2C_CHARGER";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c4_1_sda_scl_gpf2_f3>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl4 {
- status = "okay";
-};
-
-&i2c5_0 {
- status = "okay";
- label = "I2C_EEPROM";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c5_0_sda_scl_gp33_36>;
- pinctrl-names = "default";
-
- cbi_eeprom: eeprom@50 {
- compatible = "atmel,at24";
- reg = <0x50>;
- size = <2048>;
- pagesize = <16>;
- address-width = <8>;
- timeout = <5>;
- };
-};
-
-&i2c_ctrl5 {
- status = "okay";
-};
-
-&i2c6_1 {
- status = "okay";
- label = "I2C_SENSOR";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c6_1_sda_scl_gpe3_e4>;
- pinctrl-names = "default";
-
- soc_pct2075: soc-pct2075@48 {
- compatible = "nxp,pct2075";
- reg = <0x48>;
- };
-
- amb_pct2075: amb-pct2075@4f {
- compatible = "nxp,pct2075";
- reg = <0x4f>;
- };
-};
-
-&i2c_ctrl6 {
- status = "okay";
-};
-
-&i2c7_0 {
- status = "okay";
- label = "I2C_THERMAL_AP";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>;
- pinctrl-names = "default";
-
- temp_cpu: cpu@4c {
- compatible = "amd,sb-tsi";
- reg = <0x4c>;
- };
-};
-
-&i2c_ctrl7 {
- status = "okay";
-};
diff --git a/zephyr/program/skyrim/include/keyboard_customization.h b/zephyr/program/skyrim/include/keyboard_customization.h
deleted file mode 100644
index 2d2a997f91..0000000000
--- a/zephyr/program/skyrim/include/keyboard_customization.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Keyboard configuration */
-
-#ifndef __KEYBOARD_CUSTOMIZATION_H
-#define __KEYBOARD_CUSTOMIZATION_H
-
-/*
- * KEYBOARD_COLS_MAX has the build time column size. It's used to allocate
- * exact spaces for arrays. Actual keyboard scanning is done using
- * keyboard_cols, which holds a runtime column size.
- */
-#ifdef CONFIG_KEYBOARD_CUSTOMIZATION
-#undef KEYBOARD_COLS_MAX
-#undef KEYBOARD_ROWS
-
-#define KEYBOARD_COLS_MAX 15
-#define KEYBOARD_ROWS 8
-#endif
-
-/*
- * WARNING: Do not directly modify it. You should call keyboard_raw_set_cols,
- * instead. It checks whether you're eligible or not.
- */
-extern uint8_t keyboard_cols;
-
-#define KEYBOARD_ROW_TO_MASK(r) (1 << (r))
-
-/* Columns and masks for keys we particularly care about */
-#define KEYBOARD_COL_DOWN 11
-#define KEYBOARD_ROW_DOWN 5
-#define KEYBOARD_MASK_DOWN KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_DOWN)
-#define KEYBOARD_COL_ESC 1
-#define KEYBOARD_ROW_ESC 1
-#define KEYBOARD_MASK_ESC KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_ESC)
-#define KEYBOARD_COL_KEY_H 6
-#define KEYBOARD_ROW_KEY_H 1
-#define KEYBOARD_MASK_KEY_H KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_KEY_H)
-#define KEYBOARD_COL_KEY_R 3
-#define KEYBOARD_ROW_KEY_R 7
-#define KEYBOARD_MASK_KEY_R KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_KEY_R)
-#define KEYBOARD_COL_LEFT_ALT 10
-#define KEYBOARD_ROW_LEFT_ALT 6
-#define KEYBOARD_MASK_LEFT_ALT KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_LEFT_ALT)
-#define KEYBOARD_COL_REFRESH 2
-#define KEYBOARD_ROW_REFRESH 3
-#define KEYBOARD_MASK_REFRESH KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_REFRESH)
-#define KEYBOARD_COL_RIGHT_ALT 10
-#define KEYBOARD_ROW_RIGHT_ALT 0
-#define KEYBOARD_MASK_RIGHT_ALT KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_RIGHT_ALT)
-#define KEYBOARD_DEFAULT_COL_VOL_UP 4
-#define KEYBOARD_DEFAULT_ROW_VOL_UP 1
-#define KEYBOARD_COL_LEFT_CTRL 0
-#define KEYBOARD_ROW_LEFT_CTRL 2
-#define KEYBOARD_MASK_LEFT_CTRL KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_LEFT_CTRL)
-#define KEYBOARD_COL_RIGHT_CTRL 0
-#define KEYBOARD_ROW_RIGHT_CTRL 4
-#define KEYBOARD_MASK_RIGHT_CTRL KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_RIGHT_CTRL)
-#define KEYBOARD_COL_SEARCH 0
-#define KEYBOARD_ROW_SEARCH 3
-#define KEYBOARD_MASK_SEARCH KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_SEARCH)
-#define KEYBOARD_COL_KEY_0 9
-#define KEYBOARD_ROW_KEY_0 0
-#define KEYBOARD_MASK_KEY_0 KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_KEY_0)
-#define KEYBOARD_COL_KEY_1 1
-#define KEYBOARD_ROW_KEY_1 7
-#define KEYBOARD_MASK_KEY_1 KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_KEY_1)
-#define KEYBOARD_COL_KEY_2 4
-#define KEYBOARD_ROW_KEY_2 6
-#define KEYBOARD_MASK_KEY_2 KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_KEY_2)
-#define KEYBOARD_COL_LEFT_SHIFT 7
-#define KEYBOARD_ROW_LEFT_SHIFT 1
-#define KEYBOARD_MASK_LEFT_SHIFT KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_LEFT_SHIFT)
-
-#endif /* __KEYBOARD_CUSTOMIZATION_H */
diff --git a/zephyr/program/skyrim/interrupts.dtsi b/zephyr/program/skyrim/interrupts.dtsi
deleted file mode 100644
index de4e87986a..0000000000
--- a/zephyr/program/skyrim/interrupts.dtsi
+++ /dev/null
@@ -1,146 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_ac_present: ac_present {
- irq-pin = <&gpio_acok_od>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_power_button: power_button {
- irq-pin = <&gpio_mech_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_slp_s3: slp_s3 {
- irq-pin = <&gpio_slp_s3_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "baseboard_en_pwr_s0";
- };
- int_slp_s5: slp_s5 {
- irq-pin = <&gpio_slp_s5_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "baseboard_set_en_pwr_s3";
- };
- int_s5_pgood: s5_pgood {
- irq-pin = <&gpio_pg_pwr_s5>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "baseboard_s5_pgood";
- };
- int_pg_groupc_s0: pg_groupc_s0 {
- irq-pin = <&gpio_pg_groupc_s0_od>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "baseboard_set_en_pwr_pcore";
- };
- int_pg_lpddr_s3: pg_lpddr_s3 {
- irq-pin = <&gpio_pg_lpddr5_s3_od>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "baseboard_set_en_pwr_pcore";
- };
- int_pg_lpddr_s0: pg_lpddr_s0 {
- irq-pin = <&gpio_pg_lpddr5_s0_od>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "baseboard_set_soc_pwr_pgood";
- };
- int_s0_pgood: s0_pgood {
- irq-pin = <&gpio_s0_pgood>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "baseboard_s0_pgood";
- };
- int_soc_thermtrip: soc_thermtrip {
- irq-pin = <&gpio_soc_thermtrip_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "baseboard_soc_thermtrip";
- };
- int_soc_pcore_ocp: soc_pcore_ocp {
- irq-pin = <&gpio_pcore_ocp_r_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "baseboard_soc_pcore_ocp";
- };
- int_volume_up: volume_up {
- irq-pin = <&gpio_volup_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_volume_down: volume_down {
- irq-pin = <&gpio_voldn_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_usb_a0_fault: a0_fault {
- irq-pin = <&ioex_usb_a0_fault_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "usb_fault_interrupt";
- };
- int_usb_a1_fault: a1_fault {
- irq-pin = <&ioex_usb_a1_fault_db_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "usb_fault_interrupt";
- };
- int_usb_c0_sbu_fault: c0_sbu_fault {
- irq-pin = <&ioex_usb_c0_sbu_fault_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "sbu_fault_interrupt";
- };
- int_usb_c1_sbu_fault: c1_sbu_fault {
- irq-pin = <&ioex_usb_c1_sbu_fault_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "sbu_fault_interrupt";
- };
- int_usb_c0_tcpc: usb_c0_tcpc {
- irq-pin = <&gpio_usb_c0_tcpc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c1_tcpc: usb_c1_tcpc {
- irq-pin = <&gpio_usb_c1_tcpc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c0_ppc: usb_c0_ppc {
- irq-pin = <&gpio_usb_c0_ppc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c1_ppc: usb_c1_ppc {
- irq-pin = <&gpio_usb_c1_ppc_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c0_bc12: usb_c0_bc12 {
- irq-pin = <&gpio_usb_c0_bc12_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bc12_interrupt";
- };
- int_usb_c1_bc12: usb_c1_bc12 {
- irq-pin = <&gpio_usb_c1_bc12_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bc12_interrupt";
- };
- int_usb_hub_fault: hub_fault {
- irq-pin = <&gpio_usb_hub_fault_q_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "usb_fault_interrupt";
- };
- int_usb_pd_soc: usb_pd_soc {
- irq-pin = <&gpio_ec_i2c_usbc_pd_int>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb_pd_soc_interrupt";
- };
- int_accel_gyro: accel_gyro {
- irq-pin = <&gpio_accel_gyro_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bmi3xx_interrupt";
- };
- };
-};
diff --git a/zephyr/program/skyrim/keyboard.dtsi b/zephyr/program/skyrim/keyboard.dtsi
deleted file mode 100644
index aaf305c725..0000000000
--- a/zephyr/program/skyrim/keyboard.dtsi
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- kblight {
- compatible = "cros-ec,kblight-pwm";
- pwms = <&pwm1 0 PWM_HZ(100) PWM_POLARITY_NORMAL>;
- };
-};
-
-&pwm1 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm1_gpc2>;
- pinctrl-names = "default";
-};
-
-&cros_kb_raw {
- status = "okay";
- /* No KSO2 (it's inverted and implemented by GPIO) */
- pinctrl-0 = <
- &ksi0_gp31
- &ksi1_gp30
- &ksi2_gp27
- &ksi3_gp26
- &ksi4_gp25
- &ksi5_gp24
- &ksi6_gp23
- &ksi7_gp22
- &kso00_gp21
- &kso01_gp20
- &kso03_gp16
- &kso04_gp15
- &kso05_gp14
- &kso06_gp13
- &kso07_gp12
- &kso08_gp11
- &kso09_gp10
- &kso10_gp07
- &kso11_gp06
- &kso12_gp05
- &kso13_gp04
- &kso14_gp82
- >;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/skyrim/morthal/CMakeLists.txt b/zephyr/program/skyrim/morthal/CMakeLists.txt
deleted file mode 100644
index b4819f1e73..0000000000
--- a/zephyr/program/skyrim/morthal/CMakeLists.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-zephyr_library_sources(
- "src/ppc_config.c"
- "src/usb_mux_config.c"
-)
diff --git a/zephyr/program/skyrim/morthal/battery.dtsi b/zephyr/program/skyrim/morthal/battery.dtsi
deleted file mode 100644
index 8c87cef7f9..0000000000
--- a/zephyr/program/skyrim/morthal/battery.dtsi
+++ /dev/null
@@ -1,15 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- batteries {
- default_battery: aec_5477109 {
- compatible = "aec,5477109", "battery-smart";
- };
- smp_l20m3pg1 {
- compatible = "smp,l20m3pg1", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/skyrim/morthal/led_pins.dtsi b/zephyr/program/skyrim/morthal/led_pins.dtsi
deleted file mode 100644
index 78b9a59c40..0000000000
--- a/zephyr/program/skyrim/morthal/led_pins.dtsi
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_y: pwm_y {
- pwms = <&pwm2 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- pwm_w: pwm_w {
- pwms = <&pwm3 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- };
-
- pwm-led-pins {
- compatible = "cros-ec,pwm-led-pins";
-
- color_off: color-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <0 0>;
- };
-
- color_amber: color-amber {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <100 0>;
- };
-
- color_white: color-white {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_WHITE";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <0 100>;
- };
- };
-};
-
-/* Amber "battery charging" LED */
-&pwm2 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
-
-/* White "battery full" LED */
-&pwm3 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm3_gp80>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/skyrim/morthal/led_policy.dtsi b/zephyr/program/skyrim/morthal/led_policy.dtsi
deleted file mode 100644
index a075c6b0d2..0000000000
--- a/zephyr/program/skyrim/morthal/led_policy.dtsi
+++ /dev/null
@@ -1,103 +0,0 @@
-#include <dt-bindings/battery.h>
-
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
-
- power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (> Low, <= Full) */
- batt-lvl = <(BATTERY_LEVEL_LOW + 1) BATTERY_LEVEL_FULL>;
-
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-discharge-s0-batt-low {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= Empty, <= Low) */
- batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
-
- /* White 2 sec, off 1 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- /* White 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-error {
- charge-state = "PWR_STATE_ERROR";
-
- /* Amber 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-forced-idle {
- charge-state = "PWR_STATE_FORCED_IDLE";
-
- /* Amber 2 sec, White 2 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_white>;
- period-ms = <2000>;
- };
- };
- };
-};
diff --git a/zephyr/program/skyrim/morthal/morthal.dtsi b/zephyr/program/skyrim/morthal/morthal.dtsi
deleted file mode 100644
index 99a062220d..0000000000
--- a/zephyr/program/skyrim/morthal/morthal.dtsi
+++ /dev/null
@@ -1,185 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/usbc_mux.h>
-
-#include "../i2c.dtsi"
-
-/ {
- named-gpios {
- /* Morthal-specific GPIO customizations */
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- soc-pct2075 {
- temp_host_high = <100>;
- temp_host_halt = <105>;
- temp_host_release_high = <80>;
- temp_host_release_halt = <80>;
- temp_fan_off = <0>;
- temp_fan_max = <70>;
- power-good-pin = <&gpio_pg_pwr_s5>;
- sensor = <&soc_pct2075>;
- };
- amb-pct2075 {
- power-good-pin = <&gpio_pg_pwr_s5>;
- sensor = <&amb_pct2075>;
- };
- };
-
- /*
- * Note this is expected to vary per-board, so we keep it in the board
- * dts files.
- */
- morthal-fw-config {
- compatible = "cros-ec,cbi-fw-config";
-
- form-factor {
- enum-name = "FW_FORM_FACTOR";
- start = <0>;
- size = <1>;
-
- ff-clamshell {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FF_CLAMSHELL";
- value = <0>;
- };
- ff-convertible {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FF_CONVERTIBLE";
- value = <1>;
- default;
- };
- };
- io-db {
- enum-name = "FW_IO_DB";
- start = <6>;
- size = <2>;
-
- io-db-ps8811-ps8818 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_IO_DB_PS8811_PS8818";
- value = <0>;
- };
- io-db-none-anx7483 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_IO_DB_NONE_ANX7483";
- value = <1>;
- default;
- };
- };
-
- /*
- * FW_CONFIG field to enable fan or not.
- */
- fan {
- enum-name = "FW_FAN";
- start = <10>;
- size = <1>;
-
- no-fan {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FAN_NOT_PRESENT";
- value = <0>;
- };
- fan-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FAN_PRESENT";
- value = <1>;
- /*
- * Set as default so that unprovisioned
- * configs will run the fan regardless.
- */
- default;
- };
- };
- };
-
- /* Rotation matrices for motion sensors. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 (-1) 0
- 1 0 0
- 0 0 1>;
- };
-
- lid_rot_ref1: lid-rotation-ref1 {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
- };
-
- ppc_port0: aoz1380 {
- compatible = "aoz,aoz1380";
- status = "okay";
- };
-};
-
-&i2c0_0 {
- anx7483_port0: anx7483@3e {
- compatible = "analogix,anx7483";
- reg = <0x3e>;
- board-set = "board_anx7483_c0_mux_set";
- flags = <USB_MUX_FLAG_RESETS_IN_G3>;
- };
-};
-
-&i2c1_0 {
- anx7483_port1: anx7483@3e {
- compatible = "analogix,anx7483";
- reg = <0x3e>;
- board-set = "board_anx7483_c1_mux_set";
- flags = <USB_MUX_FLAG_RESETS_IN_G3>;
- };
- ppc_port1: nx20p348x@71 {
- compatible = "nxp,nx20p348x";
- status = "okay";
- reg = <0x71>;
- };
- ps8818_port1: ps8818@28 {
- compatible = "parade,ps8818";
- reg = <0x28>;
- flags = <(USB_MUX_FLAG_RESETS_IN_G3)>;
- board-set = "board_c1_ps8818_mux_set";
- };
-};
-
-&i2c4_1 {
- charger: isl9241@9 {
- compatible = "intersil,isl9241";
- status = "okay";
- reg = <0x9>;
- };
-};
-
-&usbc_port0 {
- ppc = <&ppc_port0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port0 &anx7483_port0>;
- };
-};
-
-&usbc_port1 {
- ppc = <&ppc_port1>;
- usb-mux-chain-1-anx {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port1 &anx7483_port1>;
- };
- usb_mux_chain_ps8818_port1: usb-mux-chain-1-ps {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port1 &ps8818_port1>;
- alternative-chain;
- };
-};
diff --git a/zephyr/program/skyrim/morthal/motionsense.dtsi b/zephyr/program/skyrim/morthal/motionsense.dtsi
deleted file mode 100644
index f943bea4c8..0000000000
--- a/zephyr/program/skyrim/morthal/motionsense.dtsi
+++ /dev/null
@@ -1,135 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi3xx-int = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- mutex_bmi3xx: bmi3xx-mutex {
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bma4xx_data: bma4xx-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
-
- bmi3xx_data: bmi3xx-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- drv-data = <&bma4xx_data>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <100>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi3xx>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
-
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <100>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi3xx>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_accel_gyro>;
-
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/skyrim/morthal/project.conf b/zephyr/program/skyrim/morthal/project.conf
deleted file mode 100644
index 8a22f58ab8..0000000000
--- a/zephyr/program/skyrim/morthal/project.conf
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Morthal reference-board-specific Kconfig settings.
-CONFIG_BOARD_MORTHAL=y
-
-# TODO(b/215404321): Remove later in board development
-CONFIG_PLATFORM_EC_EEPROM_CBI_WP=y
-CONFIG_PLATFORM_EC_SYSTEM_UNLOCKED=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_DT=y
-
-# Morthal is capable of sinking 100W
-CONFIG_PLATFORM_EC_PD_MAX_POWER_MW=100000
-CONFIG_PLATFORM_EC_PD_MAX_CURRENT_MA=5000
-CONFIG_PLATFORM_EC_PD_MAX_VOLTAGE_MV=20000
-
-CONFIG_PLATFORM_EC_USBC_RETIMER_ANX7483=y
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_PRESENT_GPIO=y
diff --git a/zephyr/program/skyrim/morthal/project.overlay b/zephyr/program/skyrim/morthal/project.overlay
deleted file mode 100644
index a41d358cce..0000000000
--- a/zephyr/program/skyrim/morthal/project.overlay
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Skyrim program common DTS includes */
-#include "../adc.dtsi"
-#include "../fan.dtsi"
-#include "../gpio.dtsi"
-#include "../interrupts.dtsi"
-#include "../keyboard.dtsi"
-#include "../usbc.dtsi"
-
-/* Morthal project DTS includes*/
-#include "morthal.dtsi"
-#include "battery.dtsi"
-#include "led_pins.dtsi"
-#include "led_policy.dtsi"
-#include "motionsense.dtsi"
diff --git a/zephyr/program/skyrim/morthal/src/ppc_config.c b/zephyr/program/skyrim/morthal/src/ppc_config.c
deleted file mode 100644
index 8108742fdc..0000000000
--- a/zephyr/program/skyrim/morthal/src/ppc_config.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Morthal board-specific PPC code */
-
-#include "driver/ppc/aoz1380_public.h"
-#include "driver/ppc/nx20p348x.h"
-#include "usbc_ppc.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTFUSB(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-/*
- * In the AOZ1380 PPC, there are no programmable features. We use
- * the attached NCT3807 to control a GPIO to indicate 1A5 or 3A0
- * current limits.
- */
-int board_aoz1380_set_vbus_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- int rv = EC_SUCCESS;
-
- rv = gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(ioex_usb_c0_ilim_3a_en),
- (rp == TYPEC_RP_3A0) ? 1 : 0);
-
- return rv;
-}
-
-void ppc_interrupt(enum gpio_signal signal)
-{
- switch (signal) {
- case GPIO_USB_C0_PPC_INT_ODL:
- aoz1380_interrupt(0);
- break;
-
- case GPIO_USB_C1_PPC_INT_ODL:
- nx20p348x_interrupt(1);
- break;
-
- default:
- break;
- }
-}
diff --git a/zephyr/program/skyrim/morthal/src/usb_mux_config.c b/zephyr/program/skyrim/morthal/src/usb_mux_config.c
deleted file mode 100644
index f4b6502b35..0000000000
--- a/zephyr/program/skyrim/morthal/src/usb_mux_config.c
+++ /dev/null
@@ -1,142 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Morthal board-specific USB-C mux configuration */
-
-#include "console.h"
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-#include "driver/retimer/anx7483_public.h"
-#include "hooks.h"
-#include "ioexpander.h"
-#include "usb_mux.h"
-#include "usbc/usb_muxes.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTFUSB(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-/*
- * USB C0 (general) and C1 (just ANX DB) use IOEX pins to
- * indicate flipped polarity to a protection switch.
- */
-static int ioex_set_flip(int port, mux_state_t mux_state)
-{
- if (port == 0) {
- if (mux_state & USB_PD_MUX_POLARITY_INVERTED)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c0_sbu_flip),
- 1);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c0_sbu_flip),
- 0);
- } else {
- if (mux_state & USB_PD_MUX_POLARITY_INVERTED)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c1_sbu_flip),
- 1);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c1_sbu_flip),
- 0);
- }
-
- return EC_SUCCESS;
-}
-
-int board_anx7483_c0_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- /* Set the SBU polarity mux */
- RETURN_ERROR(ioex_set_flip(me->usb_port, mux_state));
-
- return anx7483_set_default_tuning(me, mux_state);
-}
-
-int board_anx7483_c1_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- bool flipped = mux_state & USB_PD_MUX_POLARITY_INVERTED;
-
- /* Set the SBU polarity mux */
- RETURN_ERROR(ioex_set_flip(me->usb_port, mux_state));
-
- /* Remove flipped from the state for easier compraisons */
- mux_state = mux_state & ~USB_PD_MUX_POLARITY_INVERTED;
-
- RETURN_ERROR(anx7483_set_default_tuning(me, mux_state));
-
- if (mux_state == USB_PD_MUX_USB_ENABLED) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX2,
- ANX7483_EQ_SETTING_12_5DB));
- } else if (mux_state == USB_PD_MUX_DP_ENABLED) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX2,
- ANX7483_EQ_SETTING_12_5DB));
- } else if (mux_state == USB_PD_MUX_DOCK && !flipped) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX2,
- ANX7483_EQ_SETTING_12_5DB));
- } else if (mux_state == USB_PD_MUX_DOCK && flipped) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX2,
- ANX7483_EQ_SETTING_12_5DB));
- }
-
- return EC_SUCCESS;
-}
-
-int board_c1_ps8818_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- CPRINTSUSB("C1: PS8818 mux using default tuning");
-
- /* Once a DP connection is established, we need to set IN_HPD */
- if (mux_state & USB_PD_MUX_DP_ENABLED)
- ioex_set_level(IOEX_USB_C1_HPD_IN_DB, 1);
- else
- ioex_set_level(IOEX_USB_C1_HPD_IN_DB, 0);
-
- return 0;
-}
-
-static void setup_mux(void)
-{
- uint32_t val;
-
- if (cros_cbi_get_fw_config(FW_IO_DB, &val) != 0)
- CPRINTSUSB("Error finding FW_DB_IO in CBI FW_CONFIG");
- /* Val will have our dts default on error, so continue setup */
-
- if (val == FW_IO_DB_PS8811_PS8818) {
- CPRINTSUSB("C1: Setting PS8818 mux");
- USB_MUX_ENABLE_ALTERNATIVE(usb_mux_chain_ps8818_port1);
- } else if (val == FW_IO_DB_NONE_ANX7483) {
- CPRINTSUSB("C1: Setting ANX7483 mux");
- } else {
- CPRINTSUSB("Unexpected DB_IO board: %d", val);
- }
-}
-DECLARE_HOOK(HOOK_INIT, setup_mux, HOOK_PRIO_INIT_I2C);
diff --git a/zephyr/program/skyrim/motionsense.dtsi b/zephyr/program/skyrim/motionsense.dtsi
deleted file mode 100644
index f943bea4c8..0000000000
--- a/zephyr/program/skyrim/motionsense.dtsi
+++ /dev/null
@@ -1,135 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi3xx-int = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- mutex_bmi3xx: bmi3xx-mutex {
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bma4xx_data: bma4xx-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
-
- bmi3xx_data: bmi3xx-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- drv-data = <&bma4xx_data>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <100>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi3xx>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
-
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <100>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi3xx>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_accel_gyro>;
-
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/skyrim/program.conf b/zephyr/program/skyrim/program.conf
deleted file mode 100644
index e879e1153b..0000000000
--- a/zephyr/program/skyrim/program.conf
+++ /dev/null
@@ -1,140 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_CROS_EC=y
-CONFIG_PLATFORM_EC=y
-CONFIG_SHIMMED_TASKS=y
-CONFIG_ESPI=y
-
-# Shell features
-CONFIG_SHELL_HELP=y
-CONFIG_SHELL_HISTORY=y
-CONFIG_SHELL_TAB=y
-CONFIG_SHELL_TAB_AUTOCOMPLETION=y
-CONFIG_KERNEL_SHELL=y
-
-# Power sequencing
-CONFIG_AP=y
-CONFIG_AP_X86_AMD=y
-CONFIG_PLATFORM_EC_POWERSEQ=y
-CONFIG_PLATFORM_EC_POWER_BUTTON_TO_PCH_CUSTOM=y
-CONFIG_PLATFORM_EC_POWER_SLEEP_FAILURE_DETECTION=y
-CONFIG_PLATFORM_EC_POWERSEQ_RSMRST_DELAY=y
-CONFIG_PLATFORM_EC_POWERSEQ_S0IX=y
-CONFIG_PLATFORM_EC_PORT80=y
-
-# Power button
-CONFIG_PLATFORM_EC_POWER_BUTTON=y
-
-# CBI
-CONFIG_EEPROM=y
-CONFIG_PLATFORM_EC_BOARD_VERSION_CBI=y
-
-# Temperature Sensors
-CONFIG_PLATFORM_EC_AMD_SB_RMI=y
-CONFIG_PLATFORM_EC_AMD_STT=y
-CONFIG_PLATFORM_EC_THROTTLE_AP=y
-
-# External power
-CONFIG_PLATFORM_EC_HOSTCMD=y
-CONFIG_PLATFORM_EC_EXTPOWER_GPIO=y
-CONFIG_PLATFORM_EC_BACKLIGHT_LID=y
-CONFIG_PLATFORM_EC_BACKLIGHT_LID_ACTIVE_LOW=y
-
-# Sensors
-CONFIG_SENSOR=y
-CONFIG_SENSOR_SHELL=n
-
-# Lid switch
-CONFIG_PLATFORM_EC_LID_ANGLE=y
-CONFIG_PLATFORM_EC_LID_ANGLE_UPDATE=y
-CONFIG_PLATFORM_EC_LID_SWITCH=y
-
-# Keyboard
-CONFIG_PLATFORM_EC_KBLIGHT_ENABLE_PIN=y
-CONFIG_PLATFORM_EC_KEYBOARD_COL2_INVERTED=y
-CONFIG_PLATFORM_EC_VOLUME_BUTTONS=y
-CONFIG_PLATFORM_EC_KEYBOARD_PWRBTN_ASSERTS_KSI3=y
-CONFIG_PLATFORM_EC_KEYBOARD_REFRESH_ROW3=y
-
-# Syscon
-CONFIG_SYSCON=y
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_SMART=y
-CONFIG_PLATFORM_EC_BATTERY_FUEL_GAUGE=y
-CONFIG_PLATFORM_EC_BATTERY_CUT_OFF=y
-CONFIG_PLATFORM_EC_BATTERY_REVIVE_DISCONNECT=y
-
-# Charger
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC=y
-CONFIG_PLATFORM_EC_CHARGER_DEFAULT_CURRENT_LIMIT=512
-CONFIG_PLATFORM_EC_CHARGER_MIN_INPUT_CURRENT_LIMIT=512
-CONFIG_PLATFORM_EC_CHARGER_ISL9241=y
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR=10
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR_AC=20
-CONFIG_PLATFORM_EC_CHARGER_MIN_POWER_MW_FOR_POWER_ON=50000
-
-# USB-C
-CONFIG_PLATFORM_EC_USBC_PPC_NX20P3483=y
-CONFIG_PLATFORM_EC_USBC_PPC_AOZ1380=y
-CONFIG_PLATFORM_EC_USBC_RETIMER_ANX7451=y
-CONFIG_PLATFORM_EC_USBC_RETIMER_PS8811=y
-CONFIG_PLATFORM_EC_USBC_RETIMER_PS8818=y
-CONFIG_PLATFORM_EC_USBC_SS_MUX_DFP_ONLY=y
-CONFIG_PLATFORM_EC_USB_MUX_AMD_FP6=y
-CONFIG_PLATFORM_EC_USB_MUX_RUNTIME_CONFIG=y
-CONFIG_PLATFORM_EC_USB_DRP_ACC_TRYSRC=y
-CONFIG_PLATFORM_EC_USB_PID=0x505F
-CONFIG_PLATFORM_EC_USB_PD_5V_EN_CUSTOM=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_DISCHARGE_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_DP_HPD_GPIO=y
-CONFIG_PLATFORM_EC_USB_PD_FRS=y
-CONFIG_PLATFORM_EC_USB_PD_FRS_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_LOGGING=y
-CONFIG_PLATFORM_EC_USB_PD_REV30=y
-CONFIG_PLATFORM_EC_USB_PD_TBT_COMPAT_MODE=n
-CONFIG_PLATFORM_EC_USB_PD_TCPC_LOW_POWER=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_NCT38XX=y
-CONFIG_PLATFORM_EC_USB_PD_TCPC_RUNTIME_CONFIG=n
-CONFIG_PLATFORM_EC_USB_PD_USB4=n
-CONFIG_PLATFORM_EC_USB_PD_VBUS_MEASURE_CHARGER=y
-# Give ourselves enough task space to use i2ctrace
-CONFIG_TASK_PD_STACK_SIZE=1280
-
-# Motion sense
-CONFIG_PLATFORM_EC_MOTIONSENSE=y
-CONFIG_PLATFORM_EC_ACCEL_FIFO=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCELS=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCEL_INFO=y
-CONFIG_PLATFORM_EC_LID_ANGLE=y
-CONFIG_PLATFORM_EC_LID_ANGLE_UPDATE=y
-CONFIG_PLATFORM_EC_SENSOR_TIGHT_TIMESTAMPS=y
-
-CONFIG_PLATFORM_EC_MKBP_EVENT=y
-CONFIG_PLATFORM_EC_MKBP_INPUT_DEVICES=y
-CONFIG_PLATFORM_EC_MKBP_USE_GPIO=y
-
-CONFIG_PLATFORM_EC_TABLET_MODE=y
-CONFIG_PLATFORM_EC_TABLET_MODE_SWITCH=y
-CONFIG_PLATFORM_EC_GMR_TABLET_MODE=y
-
-CONFIG_PLATFORM_EC_ACCEL_BMA4XX=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI3XX=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=y
-
-# Misc.
-CONFIG_PLATFORM_EC_I2C_DEBUG=y
-CONFIG_PLATFORM_EC_PORT80_4_BYTE=y
-
-# These are debug options that happen to be expensive in terms of flash space.
-# Turn on as needed based on demand.
-CONFIG_FLASH_PAGE_LAYOUT=n # 1876 bytes
-CONFIG_FLASH_SHELL=n # 1852 bytes
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCEL_INFO=n # 656 bytes
-CONFIG_PLATFORM_EC_CONSOLE_CMD_MEM=n # 896 bytes
-# CONFIG_PLATFORM_EC_CONSOLE_CMD_TCPC_DUMP=n # 1180 bytes
-CONFIG_PLATFORM_EC_CONSOLE_CMD_USB_PD_CABLE=n # 1104 bytes
-CONFIG_THREAD_MONITOR=n # 1548 bytes
diff --git a/zephyr/program/skyrim/skyrim/CMakeLists.txt b/zephyr/program/skyrim/skyrim/CMakeLists.txt
deleted file mode 100644
index fef1c72a31..0000000000
--- a/zephyr/program/skyrim/skyrim/CMakeLists.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cros_ec_library_include_directories_ifdef(CONFIG_BOARD_SKYRIM include)
-zephyr_library_sources(
- "src/usb_mux_config.c"
- "src/ppc_config.c"
- "src/form_factor.c"
- "src/alt_charger.c"
- "src/keyboard.c"
-)
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_FAN "src/fan.c")
diff --git a/zephyr/program/skyrim/skyrim/battery.dtsi b/zephyr/program/skyrim/skyrim/battery.dtsi
deleted file mode 100644
index 8c87cef7f9..0000000000
--- a/zephyr/program/skyrim/skyrim/battery.dtsi
+++ /dev/null
@@ -1,15 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- batteries {
- default_battery: aec_5477109 {
- compatible = "aec,5477109", "battery-smart";
- };
- smp_l20m3pg1 {
- compatible = "smp,l20m3pg1", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/skyrim/skyrim/led_pins.dtsi b/zephyr/program/skyrim/skyrim/led_pins.dtsi
deleted file mode 100644
index 78b9a59c40..0000000000
--- a/zephyr/program/skyrim/skyrim/led_pins.dtsi
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_y: pwm_y {
- pwms = <&pwm2 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- pwm_w: pwm_w {
- pwms = <&pwm3 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- };
-
- pwm-led-pins {
- compatible = "cros-ec,pwm-led-pins";
-
- color_off: color-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <0 0>;
- };
-
- color_amber: color-amber {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <100 0>;
- };
-
- color_white: color-white {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_WHITE";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <0 100>;
- };
- };
-};
-
-/* Amber "battery charging" LED */
-&pwm2 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
-
-/* White "battery full" LED */
-&pwm3 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm3_gp80>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/skyrim/skyrim/led_policy.dtsi b/zephyr/program/skyrim/skyrim/led_policy.dtsi
deleted file mode 100644
index a075c6b0d2..0000000000
--- a/zephyr/program/skyrim/skyrim/led_policy.dtsi
+++ /dev/null
@@ -1,103 +0,0 @@
-#include <dt-bindings/battery.h>
-
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
-
- power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (> Low, <= Full) */
- batt-lvl = <(BATTERY_LEVEL_LOW + 1) BATTERY_LEVEL_FULL>;
-
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-discharge-s0-batt-low {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= Empty, <= Low) */
- batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
-
- /* White 2 sec, off 1 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- /* White 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_white>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-error {
- charge-state = "PWR_STATE_ERROR";
-
- /* Amber 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-forced-idle {
- charge-state = "PWR_STATE_FORCED_IDLE";
-
- /* Amber 2 sec, White 2 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_white>;
- period-ms = <2000>;
- };
- };
- };
-};
diff --git a/zephyr/program/skyrim/skyrim/motionsense.dtsi b/zephyr/program/skyrim/skyrim/motionsense.dtsi
deleted file mode 100644
index f943bea4c8..0000000000
--- a/zephyr/program/skyrim/skyrim/motionsense.dtsi
+++ /dev/null
@@ -1,135 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi3xx-int = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- mutex_bmi3xx: bmi3xx-mutex {
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bma4xx_data: bma4xx-drv-data {
- compatible = "cros-ec,drvdata-bma4xx";
- status = "okay";
- };
-
- bmi3xx_data: bmi3xx-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma4xx";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- drv-data = <&bma4xx_data>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <100>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi3xx>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
-
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <100>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,bmi3xx-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi3xx>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_accel_gyro>;
-
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/skyrim/skyrim/project.conf b/zephyr/program/skyrim/skyrim/project.conf
deleted file mode 100644
index 67b3f0f142..0000000000
--- a/zephyr/program/skyrim/skyrim/project.conf
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Skyrim reference-board-specific Kconfig settings.
-CONFIG_BOARD_SKYRIM=y
-
-# CBI WP pin present
-CONFIG_PLATFORM_EC_EEPROM_CBI_WP=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_DT=y
-
-# Skyrim is capable of sinking 100W
-CONFIG_PLATFORM_EC_PD_MAX_POWER_MW=100000
-CONFIG_PLATFORM_EC_PD_MAX_CURRENT_MA=5000
-CONFIG_PLATFORM_EC_PD_MAX_VOLTAGE_MV=20000
-
-CONFIG_PLATFORM_EC_USBC_RETIMER_ANX7483=y
-
-# Enable alternative charger chip
-CONFIG_PLATFORM_EC_CHARGER_RUNTIME_CONFIG=y
-CONFIG_PLATFORM_EC_CHARGER_ISL9238C=y
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_PRESENT_GPIO=y
diff --git a/zephyr/program/skyrim/skyrim/project.overlay b/zephyr/program/skyrim/skyrim/project.overlay
deleted file mode 100644
index 9b61b2ac9b..0000000000
--- a/zephyr/program/skyrim/skyrim/project.overlay
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Skyrim program common DTS includes */
-#include "../adc.dtsi"
-#include "../fan.dtsi"
-#include "../gpio.dtsi"
-#include "../interrupts.dtsi"
-#include "../keyboard.dtsi"
-#include "../usbc.dtsi"
-
-/* Skyrim project DTS includes*/
-#include "skyrim.dtsi"
-#include "battery.dtsi"
-#include "led_pins.dtsi"
-#include "led_policy.dtsi"
-#include "motionsense.dtsi"
diff --git a/zephyr/program/skyrim/skyrim/skyrim.dtsi b/zephyr/program/skyrim/skyrim/skyrim.dtsi
deleted file mode 100644
index 1037df1c8c..0000000000
--- a/zephyr/program/skyrim/skyrim/skyrim.dtsi
+++ /dev/null
@@ -1,209 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/usbc_mux.h>
-
-#include "../i2c.dtsi"
-
-/ {
- named-gpios {
- /* Skyrim-specific GPIO customizations */
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- soc-pct2075 {
- temp_host_high = <100>;
- temp_host_halt = <105>;
- temp_host_release_high = <80>;
- temp_host_release_halt = <80>;
- temp_fan_off = <35>;
- temp_fan_max = <70>;
- power-good-pin = <&gpio_pg_pwr_s5>;
- sensor = <&soc_pct2075>;
- };
- amb-pct2075 {
- power-good-pin = <&gpio_pg_pwr_s5>;
- sensor = <&amb_pct2075>;
- };
- };
-
- /*
- * Note this is expected to vary per-board, so we keep it in the board
- * dts files.
- */
- skyrim-fw-config {
- compatible = "cros-ec,cbi-fw-config";
-
- form-factor {
- enum-name = "FW_FORM_FACTOR";
- start = <0>;
- size = <1>;
-
- ff-clamshell {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FF_CLAMSHELL";
- value = <0>;
- };
- ff-convertible {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FF_CONVERTIBLE";
- value = <1>;
- default;
- };
- };
- io-db {
- enum-name = "FW_IO_DB";
- start = <6>;
- size = <2>;
-
- io-db-ps8811-ps8818 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_IO_DB_PS8811_PS8818";
- value = <0>;
- };
- io-db-none-anx7483 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_IO_DB_NONE_ANX7483";
- value = <1>;
- default;
- };
- };
-
- /*
- * FW_CONFIG field to enable fan or not.
- */
- fan {
- enum-name = "FW_FAN";
- start = <10>;
- size = <1>;
-
- no-fan {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FAN_NOT_PRESENT";
- value = <0>;
- };
- fan-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_FAN_PRESENT";
- value = <1>;
- /*
- * Set as default so that unprovisioned
- * configs will run the fan regardless.
- */
- default;
- };
- };
-
- charger-option {
- enum-name = "FW_CHARGER";
- start = <11>;
- size = <2>;
-
- charger-option-isl9241 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_CHARGER_ISL9241";
- value = <0>;
- default;
- };
- charger-option-isl9538 {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_CHARGER_ISL9538";
- value = <1>;
- };
- };
- };
-
- /* Rotation matrices for motion sensors. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 (-1) 0
- 1 0 0
- 0 0 1>;
- };
-
- lid_rot_ref1: lid-rotation-ref1 {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
- };
-
- ppc_port0: aoz1380 {
- compatible = "aoz,aoz1380";
- status = "okay";
- };
-};
-
-&i2c0_0 {
- anx7483_port0: anx7483@3e {
- compatible = "analogix,anx7483";
- reg = <0x3e>;
- board-set = "board_anx7483_c0_mux_set";
- flags = <USB_MUX_FLAG_RESETS_IN_G3>;
- };
-};
-
-&i2c1_0 {
- anx7483_port1: anx7483@3e {
- compatible = "analogix,anx7483";
- reg = <0x3e>;
- board-set = "board_anx7483_c1_mux_set";
- flags = <USB_MUX_FLAG_RESETS_IN_G3>;
- };
- ppc_port1: nx20p348x@71 {
- compatible = "nxp,nx20p348x";
- status = "okay";
- reg = <0x71>;
- };
- ps8818_port1: ps8818@28 {
- compatible = "parade,ps8818";
- reg = <0x28>;
- flags = <(USB_MUX_FLAG_RESETS_IN_G3)>;
- board-set = "board_c1_ps8818_mux_set";
- };
-};
-
-&i2c4_1 {
- charger: isl9241@9 {
- compatible = "intersil,isl9241";
- status = "okay";
- reg = <0x9>;
- };
- alt_charger: isl9538@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-};
-
-&usbc_port0 {
- chg_alt = <&alt_charger>;
- ppc = <&ppc_port0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port0 &anx7483_port0>;
- };
-};
-
-&usbc_port1 {
- ppc = <&ppc_port1>;
- usb-mux-chain-1-anx {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port1 &anx7483_port1>;
- };
- usb_mux_chain_ps8818_port1: usb-mux-chain-1-ps {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port1 &ps8818_port1>;
- alternative-chain;
- };
-};
diff --git a/zephyr/program/skyrim/skyrim/skyrim_vif.xml b/zephyr/program/skyrim/skyrim/skyrim_vif.xml
deleted file mode 100644
index 28d6f19049..0000000000
--- a/zephyr/program/skyrim/skyrim/skyrim_vif.xml
+++ /dev/null
@@ -1,346 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<vif:VIF xmlns:opt="http://usb.org/VendorInfoFileOptionalContent.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:vif="http://usb.org/VendorInfoFile.xsd">
- <vif:VIF_Specification>3.22</vif:VIF_Specification>
- <vif:VIF_App>
- <vif:Vendor>USB-IF</vif:Vendor>
- <vif:Name>VIF Editor</vif:Name>
- <vif:Version>3.4.2.0</vif:Version>
- </vif:VIF_App>
- <vif:Vendor_Name>Google</vif:Vendor_Name>
- <vif:Model_Part_Number>skyrim</vif:Model_Part_Number>
- <vif:Product_Revision>FIX-ME</vif:Product_Revision>
- <vif:TID>65535</vif:TID>
- <vif:VIF_Product_Type value="0">Port Product</vif:VIF_Product_Type>
- <vif:Certification_Type value="0">End Product</vif:Certification_Type>
- <vif:Product>
- <!--Product Level Content:-->
- </vif:Product>
- <vif:Component>
- <!--Component 0: Port 0-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Component-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Port_Label>0</vif:Port_Label>
- <vif:Connector_Type value="2">Type-C®</vif:Connector_Type>
- <vif:USB4_Supported value="false" />
- <vif:USB_PD_Support value="true" />
- <vif:PD_Port_Type value="4">DRP</vif:PD_Port_Type>
- <vif:Type_C_State_Machine value="2">DRP</vif:Type_C_State_Machine>
- <vif:Port_Battery_Powered value="true" />
- <vif:BC_1_2_Support value="3">Both</vif:BC_1_2_Support>
- <vif:Captive_Cable value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;General PD-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Spec_Revision_Major value="3" />
- <vif:PD_Spec_Revision_Minor value="0" />
- <vif:PD_Spec_Version_Major value="2" />
- <vif:PD_Spec_Version_Minor value="0" />
- <vif:PD_Specification_Revision value="2">Revision 3</vif:PD_Specification_Revision>
- <vif:SOP_Capable value="true" />
- <vif:SOP_P_Capable value="true" />
- <vif:SOP_PP_Capable value="true" />
- <vif:SOP_P_Debug_Capable value="false" />
- <vif:SOP_PP_Debug_Capable value="false" />
- <vif:Manufacturer_Info_Supported_Port value="false" />
- <vif:Chunking_Implemented_SOP value="true" />
- <vif:Unchunked_Extended_Messages_Supported value="false" />
- <vif:Security_Msgs_Supported_SOP value="false" />
- <vif:Unconstrained_Power value="false" />
- <vif:Num_Fixed_Batteries value="1" />
- <vif:Num_Swappable_Battery_Slots value="0" />
- <vif:ID_Header_Connector_Type_SOP value="2">USB Type-C® Receptacle</vif:ID_Header_Connector_Type_SOP>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Capabilities-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:USB_Comms_Capable value="true" />
- <vif:DR_Swap_To_DFP_Supported value="true" />
- <vif:DR_Swap_To_UFP_Supported value="false" />
- <vif:VCONN_Swap_To_On_Supported value="true" />
- <vif:VCONN_Swap_To_Off_Supported value="true" />
- <vif:Responds_To_Discov_SOP_UFP value="true" />
- <vif:Responds_To_Discov_SOP_DFP value="true" />
- <vif:Attempts_Discov_SOP value="true" />
- <vif:Power_Interruption_Available value="0">No Interruption Possible</vif:Power_Interruption_Available>
- <vif:Data_Reset_Supported value="false" />
- <vif:Enter_USB_Supported value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Type-C®-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Type_C_Can_Act_As_Host value="true" />
- <vif:Type_C_Can_Act_As_Device value="false" />
- <vif:Type_C_Implements_Try_SRC value="true" />
- <vif:Type_C_Implements_Try_SNK value="false" />
- <vif:Type_C_Supports_Audio_Accessory value="false" />
- <vif:Type_C_Is_VCONN_Powered_Accessory value="false" />
- <vif:Type_C_Is_Debug_Target_SRC value="true" />
- <vif:Type_C_Is_Debug_Target_SNK value="true" />
- <vif:RP_Value value="1">1.5A</vif:RP_Value>
- <vif:Type_C_Port_On_Hub value="false" />
- <vif:Type_C_Power_Source value="2">Both</vif:Type_C_Power_Source>
- <vif:Type_C_Sources_VCONN value="true" />
- <vif:Type_C_Is_Alt_Mode_Controller value="true" />
- <vif:Type_C_Is_Alt_Mode_Adapter value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Product Power-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Product_Total_Source_Power_mW value="22500">22500 mW</vif:Product_Total_Source_Power_mW>
- <vif:Port_Source_Power_Type value="1">Shared</vif:Port_Source_Power_Type>
- <vif:Port_Source_Power_Gang>CPower</vif:Port_Source_Power_Gang>
- <vif:Port_Source_Power_Gang_Max_Power value="22500">22500 mW</vif:Port_Source_Power_Gang_Max_Power>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Host-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Host_Supports_USB_Data value="true" />
- <vif:Host_Speed value="1">USB 3.2 Gen 1x1</vif:Host_Speed>
- <vif:Host_Contains_Captive_Retimer value="true" />
- <vif:Host_Truncates_DP_For_tDHPResponse value="false" />
- <vif:Host_Is_Embedded value="false" />
- <vif:Host_Suspend_Supported value="true" />
- <vif:Is_DFP_On_Hub value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Battery Charging 1.2-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:BC_1_2_Charging_Port_Type value="1">CDP</vif:BC_1_2_Charging_Port_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Source-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Source value="1500">1500 mW</vif:PD_Power_As_Source>
- <vif:EPR_Supported_As_Src value="false" />
- <vif:USB_Suspend_May_Be_Cleared value="true" />
- <vif:Sends_Pings value="false" />
- <vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink value="3">3A @ 5V</vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink>
- <vif:Master_Port value="true" />
- <vif:Has_Invariant_PDOs value="false" />
- <vif:Num_Src_PDOs value="1" />
- <vif:PD_OC_Protection value="false" />
- <!--Bundle: SrcPdoList-->
- <vif:SrcPdoList>
- <vif:SrcPDO>
- <!--Source PDO 1-->
- <vif:Src_PDO_Supply_Type value="0">Fixed</vif:Src_PDO_Supply_Type>
- <vif:Src_PDO_Peak_Current value="0">100% IOC</vif:Src_PDO_Peak_Current>
- <vif:Src_PDO_Voltage value="100">5000 mV</vif:Src_PDO_Voltage>
- <vif:Src_PDO_Max_Current value="300">3000 mA</vif:Src_PDO_Max_Current>
- </vif:SrcPDO>
- </vif:SrcPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Sink-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Sink value="100000">100000 mW</vif:PD_Power_As_Sink>
- <vif:EPR_Supported_As_Snk value="false" />
- <vif:No_USB_Suspend_May_Be_Set value="true" />
- <vif:GiveBack_May_Be_Set value="false" />
- <vif:Higher_Capability_Set value="false" />
- <vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source value="0">FR_Swap not supported</vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source>
- <vif:Num_Snk_PDOs value="3" />
- <!--Bundle: SnkPdoList-->
- <vif:SnkPdoList>
- <vif:SnkPDO>
- <!--Sink PDO 1-->
- <vif:Snk_PDO_Supply_Type value="0">Fixed</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Voltage value="100">5000 mV</vif:Snk_PDO_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 2-->
- <vif:Snk_PDO_Supply_Type value="1">Battery</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Op_Power value="60">15000 mW</vif:Snk_PDO_Op_Power>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="400">20000 mV</vif:Snk_PDO_Max_Voltage>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 3-->
- <vif:Snk_PDO_Supply_Type value="2">Variable</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="400">20000 mV</vif:Snk_PDO_Max_Voltage>
- <vif:Snk_PDO_Op_Current value="500">5000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- </vif:SnkPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Dual Role-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Accepts_PR_Swap_As_Src value="true" />
- <vif:Accepts_PR_Swap_As_Snk value="true" />
- <vif:Requests_PR_Swap_As_Src value="true" />
- <vif:Requests_PR_Swap_As_Snk value="true" />
- <vif:FR_Swap_Supported_As_Initial_Sink value="true" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;SOP Discover ID-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:XID_SOP value="0" />
- <vif:Data_Capable_As_USB_Host_SOP value="true" />
- <vif:Data_Capable_As_USB_Device_SOP value="false" />
- <vif:Product_Type_UFP_SOP value="0">Undefined</vif:Product_Type_UFP_SOP>
- <vif:Product_Type_DFP_SOP value="2">PDUSB Host</vif:Product_Type_DFP_SOP>
- <vif:DFP_VDO_Port_Number value="0" />
- <vif:Modal_Operation_Supported_SOP value="false" />
- <vif:USB_VID_SOP value="6353">18D1</vif:USB_VID_SOP>
- <vif:PID_SOP value="20575">505F</vif:PID_SOP>
- <vif:bcdDevice_SOP value="0">0000</vif:bcdDevice_SOP>
- </vif:Component>
- <vif:Component>
- <!--Component 1: Port 1-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Component-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Port_Label>1</vif:Port_Label>
- <vif:Connector_Type value="2">Type-C®</vif:Connector_Type>
- <vif:USB4_Supported value="false" />
- <vif:USB_PD_Support value="true" />
- <vif:PD_Port_Type value="4">DRP</vif:PD_Port_Type>
- <vif:Type_C_State_Machine value="2">DRP</vif:Type_C_State_Machine>
- <vif:Port_Battery_Powered value="true" />
- <vif:BC_1_2_Support value="3">Both</vif:BC_1_2_Support>
- <vif:Captive_Cable value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;General PD-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Spec_Revision_Major value="3" />
- <vif:PD_Spec_Revision_Minor value="0" />
- <vif:PD_Spec_Version_Major value="2" />
- <vif:PD_Spec_Version_Minor value="0" />
- <vif:PD_Specification_Revision value="2">Revision 3</vif:PD_Specification_Revision>
- <vif:SOP_Capable value="true" />
- <vif:SOP_P_Capable value="true" />
- <vif:SOP_PP_Capable value="true" />
- <vif:SOP_P_Debug_Capable value="false" />
- <vif:SOP_PP_Debug_Capable value="false" />
- <vif:Manufacturer_Info_Supported_Port value="false" />
- <vif:Chunking_Implemented_SOP value="true" />
- <vif:Unchunked_Extended_Messages_Supported value="false" />
- <vif:Security_Msgs_Supported_SOP value="false" />
- <vif:Unconstrained_Power value="false" />
- <vif:Num_Fixed_Batteries value="1" />
- <vif:Num_Swappable_Battery_Slots value="0" />
- <vif:ID_Header_Connector_Type_SOP value="2">USB Type-C® Receptacle</vif:ID_Header_Connector_Type_SOP>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Capabilities-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:USB_Comms_Capable value="true" />
- <vif:DR_Swap_To_DFP_Supported value="true" />
- <vif:DR_Swap_To_UFP_Supported value="false" />
- <vif:VCONN_Swap_To_On_Supported value="true" />
- <vif:VCONN_Swap_To_Off_Supported value="true" />
- <vif:Responds_To_Discov_SOP_UFP value="true" />
- <vif:Responds_To_Discov_SOP_DFP value="true" />
- <vif:Attempts_Discov_SOP value="true" />
- <vif:Power_Interruption_Available value="0">No Interruption Possible</vif:Power_Interruption_Available>
- <vif:Data_Reset_Supported value="false" />
- <vif:Enter_USB_Supported value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Type-C®-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Type_C_Can_Act_As_Host value="true" />
- <vif:Type_C_Can_Act_As_Device value="false" />
- <vif:Type_C_Implements_Try_SRC value="true" />
- <vif:Type_C_Implements_Try_SNK value="false" />
- <vif:Type_C_Supports_Audio_Accessory value="false" />
- <vif:Type_C_Is_VCONN_Powered_Accessory value="false" />
- <vif:Type_C_Is_Debug_Target_SRC value="true" />
- <vif:Type_C_Is_Debug_Target_SNK value="true" />
- <vif:RP_Value value="1">1.5A</vif:RP_Value>
- <vif:Type_C_Port_On_Hub value="false" />
- <vif:Type_C_Power_Source value="2">Both</vif:Type_C_Power_Source>
- <vif:Type_C_Sources_VCONN value="true" />
- <vif:Type_C_Is_Alt_Mode_Controller value="true" />
- <vif:Type_C_Is_Alt_Mode_Adapter value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Product Power-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Product_Total_Source_Power_mW value="22500">22500 mW</vif:Product_Total_Source_Power_mW>
- <vif:Port_Source_Power_Type value="1">Shared</vif:Port_Source_Power_Type>
- <vif:Port_Source_Power_Gang>CPower</vif:Port_Source_Power_Gang>
- <vif:Port_Source_Power_Gang_Max_Power value="22500">22500 mW</vif:Port_Source_Power_Gang_Max_Power>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;USB Host-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Host_Supports_USB_Data value="true" />
- <vif:Host_Speed value="1">USB 3.2 Gen 1x1</vif:Host_Speed>
- <vif:Host_Contains_Captive_Retimer value="true" />
- <vif:Host_Truncates_DP_For_tDHPResponse value="false" />
- <vif:Host_Is_Embedded value="false" />
- <vif:Host_Suspend_Supported value="true" />
- <vif:Is_DFP_On_Hub value="false" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Battery Charging 1.2-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:BC_1_2_Charging_Port_Type value="1">CDP</vif:BC_1_2_Charging_Port_Type>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Source-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Source value="15000">15000 mW</vif:PD_Power_As_Source>
- <vif:EPR_Supported_As_Src value="false" />
- <vif:USB_Suspend_May_Be_Cleared value="true" />
- <vif:Sends_Pings value="false" />
- <vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink value="3">3A @ 5V</vif:FR_Swap_Type_C_Current_Capability_As_Initial_Sink>
- <vif:Master_Port value="true" />
- <vif:Has_Invariant_PDOs value="false" />
- <vif:Num_Src_PDOs value="1" />
- <vif:PD_OC_Protection value="false" />
- <!--Bundle: SrcPdoList-->
- <vif:SrcPdoList>
- <vif:SrcPDO>
- <!--Source PDO 1-->
- <vif:Src_PDO_Supply_Type value="0">Fixed</vif:Src_PDO_Supply_Type>
- <vif:Src_PDO_Peak_Current value="0">100% IOC</vif:Src_PDO_Peak_Current>
- <vif:Src_PDO_Voltage value="100">5000 mV</vif:Src_PDO_Voltage>
- <vif:Src_PDO_Max_Current value="300">3000 mA</vif:Src_PDO_Max_Current>
- </vif:SrcPDO>
- </vif:SrcPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;PD Sink-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:PD_Power_As_Sink value="100000">100000 mW</vif:PD_Power_As_Sink>
- <vif:EPR_Supported_As_Snk value="false" />
- <vif:No_USB_Suspend_May_Be_Set value="true" />
- <vif:GiveBack_May_Be_Set value="false" />
- <vif:Higher_Capability_Set value="false" />
- <vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source value="0">FR_Swap not supported</vif:FR_Swap_Reqd_Type_C_Current_As_Initial_Source>
- <vif:Num_Snk_PDOs value="3" />
- <!--Bundle: SnkPdoList-->
- <vif:SnkPdoList>
- <vif:SnkPDO>
- <!--Sink PDO 1-->
- <vif:Snk_PDO_Supply_Type value="0">Fixed</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Voltage value="100">5000 mV</vif:Snk_PDO_Voltage>
- <vif:Snk_PDO_Op_Current value="300">3000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 2-->
- <vif:Snk_PDO_Supply_Type value="1">Battery</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Op_Power value="60">15000 mW</vif:Snk_PDO_Op_Power>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="400">20000 mV</vif:Snk_PDO_Max_Voltage>
- </vif:SnkPDO>
- <vif:SnkPDO>
- <!--Sink PDO 3-->
- <vif:Snk_PDO_Supply_Type value="2">Variable</vif:Snk_PDO_Supply_Type>
- <vif:Snk_PDO_Min_Voltage value="95">4750 mV</vif:Snk_PDO_Min_Voltage>
- <vif:Snk_PDO_Max_Voltage value="400">20000 mV</vif:Snk_PDO_Max_Voltage>
- <vif:Snk_PDO_Op_Current value="500">5000 mA</vif:Snk_PDO_Op_Current>
- </vif:SnkPDO>
- </vif:SnkPdoList>
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;Dual Role-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:Accepts_PR_Swap_As_Src value="true" />
- <vif:Accepts_PR_Swap_As_Snk value="true" />
- <vif:Requests_PR_Swap_As_Src value="true" />
- <vif:Requests_PR_Swap_As_Snk value="true" />
- <vif:FR_Swap_Supported_As_Initial_Sink value="true" />
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <!--;SOP Discover ID-->
- <!--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-->
- <vif:XID_SOP value="0" />
- <vif:Data_Capable_As_USB_Host_SOP value="true" />
- <vif:Data_Capable_As_USB_Device_SOP value="false" />
- <vif:Product_Type_UFP_SOP value="0">Undefined</vif:Product_Type_UFP_SOP>
- <vif:Product_Type_DFP_SOP value="2">PDUSB Host</vif:Product_Type_DFP_SOP>
- <vif:DFP_VDO_Port_Number value="1" />
- <vif:Modal_Operation_Supported_SOP value="false" />
- <vif:USB_VID_SOP value="6353">18D1</vif:USB_VID_SOP>
- <vif:PID_SOP value="20575">505F</vif:PID_SOP>
- <vif:bcdDevice_SOP value="0">0000</vif:bcdDevice_SOP>
- </vif:Component>
-</vif:VIF>
diff --git a/zephyr/program/skyrim/skyrim/src/alt_charger.c b/zephyr/program/skyrim/skyrim/src/alt_charger.c
deleted file mode 100644
index 91e5af8426..0000000000
--- a/zephyr/program/skyrim/skyrim/src/alt_charger.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charger_chips.h"
-#include "common.h"
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-#include "hooks.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(skyrim, CONFIG_SKYRIM_LOG_LEVEL);
-
-static void alt_charger_init(void)
-{
- int ret;
- uint32_t val;
-
- ret = cros_cbi_get_fw_config(FW_CHARGER, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_CHARGER);
- return;
- }
-
- if (val == FW_CHARGER_ISL9538)
- CHG_ENABLE_ALTERNATE(0);
-}
-DECLARE_HOOK(HOOK_INIT, alt_charger_init, HOOK_PRIO_POST_FIRST);
diff --git a/zephyr/program/skyrim/skyrim/src/fan.c b/zephyr/program/skyrim/skyrim/src/fan.c
deleted file mode 100644
index c584022a92..0000000000
--- a/zephyr/program/skyrim/skyrim/src/fan.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-#include "fan.h"
-#include "gpio/gpio.h"
-#include "hooks.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(skyrim, CONFIG_SKYRIM_LOG_LEVEL);
-
-/*
- * Skyrim fan support
- */
-static void fan_init(void)
-{
- int ret;
- uint32_t val;
- uint32_t board_version;
- /*
- * Retrieve the fan config.
- */
- ret = cros_cbi_get_fw_config(FW_FAN, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_FAN);
- return;
- }
-
- ret = cbi_get_board_version(&board_version);
- if (ret != EC_SUCCESS) {
- LOG_ERR("Error retrieving CBI board version");
- return;
- }
-
- if ((board_version >= 3) && (val != FW_FAN_PRESENT)) {
- /* Disable the fan */
- fan_set_count(0);
- }
-}
-DECLARE_HOOK(HOOK_INIT, fan_init, HOOK_PRIO_POST_FIRST);
-
-/*
- * Pcore OCP support
- * Note: early boards should note enable this interrupt as they are not
- * correctly configured for it.
- */
-__override bool board_supports_pcore_ocp(void)
-{
- uint32_t board_version;
-
- if (cbi_get_board_version(&board_version) == EC_SUCCESS &&
- board_version > 3)
- return true;
-
- return false;
-}
diff --git a/zephyr/program/skyrim/skyrim/src/form_factor.c b/zephyr/program/skyrim/skyrim/src/form_factor.c
deleted file mode 100644
index b13d905364..0000000000
--- a/zephyr/program/skyrim/skyrim/src/form_factor.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "accelgyro.h"
-#include "common.h"
-#include "cros_board_info.h"
-#include "hooks.h"
-#include "motionsense_sensors.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(skyrim, CONFIG_SKYRIM_LOG_LEVEL);
-
-/*
- * Mainboard orientation support.
- */
-
-#define ALT_MAT SENSOR_ROT_STD_REF_NAME(DT_NODELABEL(lid_rot_ref1))
-#define LID_ACCEL SENSOR_ID(DT_NODELABEL(lid_accel))
-
-static void form_factor_init(void)
-{
- int ret;
- uint32_t val;
- /*
- * If the board version >=4
- * use ver1 rotation matrix.
- */
- ret = cbi_get_board_version(&val);
- if (ret == EC_SUCCESS && val >= 4) {
- LOG_INF("Switching to ver1 lid");
- motion_sensors[LID_ACCEL].rot_standard_ref = &ALT_MAT;
- }
-}
-DECLARE_HOOK(HOOK_INIT, form_factor_init, HOOK_PRIO_POST_I2C);
diff --git a/zephyr/program/skyrim/skyrim/src/keyboard.c b/zephyr/program/skyrim/skyrim/src/keyboard.c
deleted file mode 100644
index e261321e86..0000000000
--- a/zephyr/program/skyrim/skyrim/src/keyboard.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ec_commands.h"
-
-static const struct ec_response_keybd_config skyrim_kb = {
- .num_top_row_keys = 10,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_REFRESH, /* T2 */
- TK_FULLSCREEN, /* T3 */
- TK_OVERVIEW, /* T4 */
- TK_SNAPSHOT, /* T5 */
- TK_BRIGHTNESS_DOWN, /* T6 */
- TK_BRIGHTNESS_UP, /* T7 */
- TK_VOL_MUTE, /* T8 */
- TK_VOL_DOWN, /* T9 */
- TK_VOL_UP, /* T10 */
- },
- .capabilities = KEYBD_CAP_SCRNLOCK_KEY,
-};
-
-__override const struct ec_response_keybd_config *
-board_vivaldi_keybd_config(void)
-{
- return &skyrim_kb;
-}
diff --git a/zephyr/program/skyrim/skyrim/src/ppc_config.c b/zephyr/program/skyrim/skyrim/src/ppc_config.c
deleted file mode 100644
index 047103baee..0000000000
--- a/zephyr/program/skyrim/skyrim/src/ppc_config.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Skyrim board-specific PPC code */
-
-#include "driver/ppc/aoz1380_public.h"
-#include "driver/ppc/nx20p348x.h"
-#include "usbc_ppc.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTFUSB(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-/*
- * In the AOZ1380 PPC, there are no programmable features. We use
- * the attached NCT3807 to control a GPIO to indicate 1A5 or 3A0
- * current limits.
- */
-int board_aoz1380_set_vbus_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- int rv = EC_SUCCESS;
-
- rv = gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(ioex_usb_c0_ilim_3a_en),
- (rp == TYPEC_RP_3A0) ? 1 : 0);
-
- return rv;
-}
-
-void ppc_interrupt(enum gpio_signal signal)
-{
- switch (signal) {
- case GPIO_USB_C0_PPC_INT_ODL:
- aoz1380_interrupt(0);
- break;
-
- case GPIO_USB_C1_PPC_INT_ODL:
- nx20p348x_interrupt(1);
- break;
-
- default:
- break;
- }
-}
diff --git a/zephyr/program/skyrim/skyrim/src/usb_mux_config.c b/zephyr/program/skyrim/skyrim/src/usb_mux_config.c
deleted file mode 100644
index 8d409dffdd..0000000000
--- a/zephyr/program/skyrim/skyrim/src/usb_mux_config.c
+++ /dev/null
@@ -1,142 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Skyrim board-specific USB-C mux configuration */
-
-#include "console.h"
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-#include "driver/retimer/anx7483_public.h"
-#include "hooks.h"
-#include "ioexpander.h"
-#include "usb_mux.h"
-#include "usbc/usb_muxes.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTFUSB(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-/*
- * USB C0 (general) and C1 (just ANX DB) use IOEX pins to
- * indicate flipped polarity to a protection switch.
- */
-static int ioex_set_flip(int port, mux_state_t mux_state)
-{
- if (port == 0) {
- if (mux_state & USB_PD_MUX_POLARITY_INVERTED)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c0_sbu_flip),
- 1);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c0_sbu_flip),
- 0);
- } else {
- if (mux_state & USB_PD_MUX_POLARITY_INVERTED)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c1_sbu_flip),
- 1);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c1_sbu_flip),
- 0);
- }
-
- return EC_SUCCESS;
-}
-
-int board_anx7483_c0_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- /* Set the SBU polarity mux */
- RETURN_ERROR(ioex_set_flip(me->usb_port, mux_state));
-
- return anx7483_set_default_tuning(me, mux_state);
-}
-
-int board_anx7483_c1_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- bool flipped = mux_state & USB_PD_MUX_POLARITY_INVERTED;
-
- /* Set the SBU polarity mux */
- RETURN_ERROR(ioex_set_flip(me->usb_port, mux_state));
-
- /* Remove flipped from the state for easier compraisons */
- mux_state = mux_state & ~USB_PD_MUX_POLARITY_INVERTED;
-
- RETURN_ERROR(anx7483_set_default_tuning(me, mux_state));
-
- if (mux_state == USB_PD_MUX_USB_ENABLED) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX2,
- ANX7483_EQ_SETTING_12_5DB));
- } else if (mux_state == USB_PD_MUX_DP_ENABLED) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX2,
- ANX7483_EQ_SETTING_12_5DB));
- } else if (mux_state == USB_PD_MUX_DOCK && !flipped) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX2,
- ANX7483_EQ_SETTING_12_5DB));
- } else if (mux_state == USB_PD_MUX_DOCK && flipped) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX2,
- ANX7483_EQ_SETTING_12_5DB));
- }
-
- return EC_SUCCESS;
-}
-
-int board_c1_ps8818_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- CPRINTSUSB("C1: PS8818 mux using default tuning");
-
- /* Once a DP connection is established, we need to set IN_HPD */
- if (mux_state & USB_PD_MUX_DP_ENABLED)
- ioex_set_level(IOEX_USB_C1_HPD_IN_DB, 1);
- else
- ioex_set_level(IOEX_USB_C1_HPD_IN_DB, 0);
-
- return 0;
-}
-
-static void setup_mux(void)
-{
- uint32_t val;
-
- if (cros_cbi_get_fw_config(FW_IO_DB, &val) != 0)
- CPRINTSUSB("Error finding FW_DB_IO in CBI FW_CONFIG");
- /* Val will have our dts default on error, so continue setup */
-
- if (val == FW_IO_DB_PS8811_PS8818) {
- CPRINTSUSB("C1: Setting PS8818 mux");
- USB_MUX_ENABLE_ALTERNATIVE(usb_mux_chain_ps8818_port1);
- } else if (val == FW_IO_DB_NONE_ANX7483) {
- CPRINTSUSB("C1: Setting ANX7483 mux");
- } else {
- CPRINTSUSB("Unexpected DB_IO board: %d", val);
- }
-}
-DECLARE_HOOK(HOOK_INIT, setup_mux, HOOK_PRIO_INIT_I2C);
diff --git a/zephyr/program/skyrim/src/common.c b/zephyr/program/skyrim/src/common.c
deleted file mode 100644
index af82139c1b..0000000000
--- a/zephyr/program/skyrim/src/common.c
+++ /dev/null
@@ -1,8 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_REGISTER(skyrim, CONFIG_SKYRIM_LOG_LEVEL);
diff --git a/zephyr/program/skyrim/src/power_signals.c b/zephyr/program/skyrim/src/power_signals.c
deleted file mode 100644
index 04ed3d441d..0000000000
--- a/zephyr/program/skyrim/src/power_signals.c
+++ /dev/null
@@ -1,245 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ap_power/ap_power.h"
-#include "charger.h"
-#include "chipset.h"
-#include "config.h"
-#include "gpio/gpio_int.h"
-#include "gpio_signal.h"
-#include "hooks.h"
-#include "i2c.h"
-#include "ioexpander.h"
-#include "power.h"
-#include "power/amd_x86.h"
-#include "timer.h"
-
-/* Power Signal Input List */
-/* TODO: b/218904113: Convert to using Zephyr GPIOs */
-const struct power_signal_info power_signal_list[] = {
- [X86_SLP_S3_N] = {
- .gpio = GPIO_PCH_SLP_S3_L,
- .flags = POWER_SIGNAL_ACTIVE_HIGH,
- .name = "SLP_S3_DEASSERTED",
- },
- [X86_SLP_S5_N] = {
- .gpio = GPIO_PCH_SLP_S5_L,
- .flags = POWER_SIGNAL_ACTIVE_HIGH,
- .name = "SLP_S5_DEASSERTED",
- },
- [X86_S0_PGOOD] = {
- .gpio = GPIO_S0_PGOOD,
- .flags = POWER_SIGNAL_ACTIVE_HIGH,
- .name = "S0_PGOOD",
- },
- [X86_S5_PGOOD] = {
- .gpio = GPIO_S5_PGOOD,
- .flags = POWER_SIGNAL_ACTIVE_HIGH,
- .name = "S5_PGOOD",
- },
-};
-BUILD_ASSERT(ARRAY_SIZE(power_signal_list) == POWER_SIGNAL_COUNT);
-
-/* Chipset hooks */
-static void baseboard_suspend_change(struct ap_power_ev_callback *cb,
- struct ap_power_ev_data data)
-{
- switch (data.event) {
- default:
- return;
-
- case AP_POWER_SUSPEND:
- /* Disable display backlight and retimer */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_ec_disable_disp_bl),
- 1);
- ioex_set_level(IOEX_USB_A1_RETIMER_EN, 0);
- break;
-
- case AP_POWER_RESUME:
- /* Enable retimer and display backlight */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_ec_disable_disp_bl),
- 0);
- ioex_set_level(IOEX_USB_A1_RETIMER_EN, 1);
- /* Any retimer tuning can be done after the retimer turns on */
- break;
- }
-}
-
-static void baseboard_init(void)
-{
- static struct ap_power_ev_callback cb;
-
- /* Setup a suspend/resume callback */
- ap_power_ev_init_callback(&cb, baseboard_suspend_change,
- AP_POWER_RESUME | AP_POWER_SUSPEND);
- ap_power_ev_add_callback(&cb);
- /* Enable Power Group interrupts. */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_pg_groupc_s0));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_pg_lpddr_s0));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_pg_lpddr_s3));
-
- /* Enable thermtrip interrupt */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_soc_thermtrip));
-}
-DECLARE_HOOK(HOOK_INIT, baseboard_init, HOOK_PRIO_POST_I2C);
-
-/**
- * b/227296844: On G3->S5, wait for RSMRST_L to be deasserted before asserting
- * PCH_PWRBTN_L. This can be as long as ~65ms after cold boot. Then wait an
- * additional delay of T1a defined in the EDS before changing the power button.
- */
-#define RSMRST_WAIT_DELAY 70
-#define EDS_PWR_BTN_RSMRST_T1A_DELAY 16
-void board_pwrbtn_to_pch(int level)
-{
- timestamp_t start;
-
- /* Add delay for G3 exit if asserting PWRBTN_L and RSMRST_L is low. */
- if (!level &&
- !gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_ec_soc_rsmrst_l))) {
- start = get_time();
- do {
- usleep(500);
- if (gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(
- gpio_ec_soc_rsmrst_l)))
- break;
- } while (time_since32(start) < (RSMRST_WAIT_DELAY * MSEC));
-
- if (!gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_ec_soc_rsmrst_l)))
- ccprints("Error pwrbtn: RSMRST_L still low");
-
- msleep(EDS_PWR_BTN_RSMRST_T1A_DELAY);
- }
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_ec_soc_pwr_btn_l), level);
-}
-
-/* Note: signal parameter unused */
-void baseboard_set_soc_pwr_pgood(enum gpio_signal unused)
-{
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(gpio_ec_soc_pwr_good),
- gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_en_pwr_pcore_s0_r)) &&
- gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_pg_lpddr5_s0_od)) &&
- gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_s0_pgood)));
-}
-
-/* TODO(b/248284045): Remove when boards switch to new chip */
-#define MP2845A_I2C_ADDR_FLAGS 0x20
-#define MP2854A_MFR_VOUT_CMPS_MAX_REG 0x69
-#define MP2854A_MFR_LOW_PWR_SEL BIT(12)
-
-__overridable bool board_supports_pcore_ocp(void)
-{
- return true;
-}
-
-static void setup_mp2845(void)
-{
- if (i2c_update16(chg_chips[CHARGER_SOLO].i2c_port,
- MP2845A_I2C_ADDR_FLAGS, MP2854A_MFR_VOUT_CMPS_MAX_REG,
- MP2854A_MFR_LOW_PWR_SEL, MASK_CLR))
- ccprints("Failed to send mp2845 workaround");
-
- if (board_supports_pcore_ocp())
- gpio_enable_dt_interrupt(
- GPIO_INT_FROM_NODELABEL(int_soc_pcore_ocp));
-}
-DECLARE_DEFERRED(setup_mp2845);
-
-void baseboard_s0_pgood(enum gpio_signal signal)
-{
- baseboard_set_soc_pwr_pgood(signal);
-
- /* Chain off power signal interrupt handler for PG_PCORE_S0_R_OD */
- power_signal_interrupt(signal);
-
- /* Set up the MP2845, which is powered in S0 */
- if (gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_s0_pgood)))
- hook_call_deferred(&setup_mp2845_data, 50 * MSEC);
- else
- gpio_disable_dt_interrupt(
- GPIO_INT_FROM_NODELABEL(int_soc_pcore_ocp));
-}
-
-/* Note: signal parameter unused */
-void baseboard_set_en_pwr_pcore(enum gpio_signal unused)
-{
- /*
- * EC must AND signals PG_LPDDR5_S3_OD, PG_GROUPC_S0_OD, and
- * EN_PWR_S0_R
- */
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(gpio_en_pwr_pcore_s0_r),
- gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_pg_lpddr5_s3_od)) &&
- gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_pg_groupc_s0_od)) &&
- gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_en_pwr_s0_r)));
-
- /* Update EC_SOC_PWR_GOOD based on our results */
- baseboard_set_soc_pwr_pgood(unused);
-}
-
-void baseboard_en_pwr_s0(enum gpio_signal signal)
-{
- /* EC must AND signals SLP_S3_L and PG_PWR_S5 */
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(gpio_en_pwr_s0_r),
- gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_slp_s3_l)) &&
- gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_pg_pwr_s5)));
-
- /* Change EN_PWR_PCORE_S0_R if needed*/
- baseboard_set_en_pwr_pcore(signal);
-
- /* Now chain off to the normal power signal interrupt handler. */
- power_signal_interrupt(signal);
-}
-#ifdef CONFIG_BOARD_USB_HUB_RESET
-void baseboard_enable_hub(void)
-{
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_hub_rst), 0);
-}
-DECLARE_DEFERRED(baseboard_enable_hub);
-#endif /* CONFIG_BOARD_USB_HUB_RESET */
-
-void baseboard_s5_pgood(enum gpio_signal signal)
-{
-#ifdef CONFIG_BOARD_USB_HUB_RESET
- /* We must enable the USB hub at least 30ms after S5 PGOOD */
- if (gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_pg_pwr_s5)))
- hook_call_deferred(&baseboard_enable_hub_data, 30 * MSEC);
- else
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_hub_rst), 1);
-#endif /* CONFIG_BOARD_USB_HUB_RESET */
-
- /* Continue to our signal AND-ing and power interrupt */
- baseboard_en_pwr_s0(signal);
-}
-
-void baseboard_set_en_pwr_s3(enum gpio_signal signal)
-{
- /* EC must enable PWR_S3 when SLP_S5_L goes high, disable on low */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_en_pwr_s3),
- gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_slp_s5_l)));
-
- /* Chain off the normal power signal interrupt handler */
- power_signal_interrupt(signal);
-}
-
-void baseboard_soc_thermtrip(enum gpio_signal signal)
-{
- ccprints("SoC thermtrip reported, shutting down");
- chipset_force_shutdown(CHIPSET_SHUTDOWN_THERMAL);
-}
-
-void baseboard_soc_pcore_ocp(enum gpio_signal signal)
-{
- ccprints("SoC Pcore OCP reported, shutting down");
- chipset_force_shutdown(CHIPSET_SHUTDOWN_BOARD_CUSTOM);
-}
diff --git a/zephyr/program/skyrim/src/stt.c b/zephyr/program/skyrim/src/stt.c
deleted file mode 100644
index 40743fbc68..0000000000
--- a/zephyr/program/skyrim/src/stt.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Support code for STT temperature reporting */
-
-#include "chipset.h"
-#include "temp_sensor/pct2075.h"
-#include "temp_sensor/temp_sensor.h"
-
-int board_get_soc_temp_mk(int *temp_mk)
-{
- if (chipset_in_state(CHIPSET_STATE_HARD_OFF))
- return EC_ERROR_NOT_POWERED;
-
- return pct2075_get_val_mk(PCT2075_SENSOR_ID(DT_NODELABEL(soc_pct2075)),
- temp_mk);
-}
-
-int board_get_ambient_temp_mk(int *temp_mk)
-{
- if (chipset_in_state(CHIPSET_STATE_HARD_OFF))
- return EC_ERROR_NOT_POWERED;
-
- return pct2075_get_val_mk(PCT2075_SENSOR_ID(DT_NODELABEL(amb_pct2075)),
- temp_mk);
-}
diff --git a/zephyr/program/skyrim/src/usb_pd_policy.c b/zephyr/program/skyrim/src/usb_pd_policy.c
deleted file mode 100644
index 745d95bc00..0000000000
--- a/zephyr/program/skyrim/src/usb_pd_policy.c
+++ /dev/null
@@ -1,93 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Shared USB-C policy for Zork boards */
-
-#include "charge_manager.h"
-#include "chipset.h"
-#include "common.h"
-#include "compile_time_macros.h"
-#include "console.h"
-#include "ec_commands.h"
-#include "ioexpander.h"
-#include "system.h"
-#include "usb_mux.h"
-#include "usb_pd.h"
-#include "usbc_ppc.h"
-#include "util.h"
-
-#include <zephyr/drivers/gpio.h>
-
-int pd_check_vconn_swap(int port)
-{
- /*
- * Do not allow vconn swap 5V rail is off
- * S5_PGOOD depends on PG_PP5000_S5 being asserted,
- * so GPIO_S5_PGOOD is a reasonable proxy for PP5000_S5
- */
- return gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_pg_pwr_s5));
-}
-
-void pd_power_supply_reset(int port)
-{
- /* Disable VBUS. */
- ppc_vbus_source_enable(port, 0);
-
- /* Enable discharge if we were previously sourcing 5V */
- if (IS_ENABLED(CONFIG_USB_PD_DISCHARGE))
- pd_set_vbus_discharge(port, 1);
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- int rv;
-
- /* Disable charging. */
- rv = ppc_vbus_sink_enable(port, 0);
- if (rv)
- return rv;
-
- if (IS_ENABLED(CONFIG_USB_PD_DISCHARGE))
- pd_set_vbus_discharge(port, 0);
-
- /* Provide Vbus. */
- rv = ppc_vbus_source_enable(port, 1);
- if (rv)
- return rv;
-
- /* Notify host of power info change. */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS;
-}
-
-__override int board_pd_set_frs_enable(int port, int enable)
-{
- /*
- * Both PPCs require the FRS GPIO to be set as soon as FRS capability
- * is established.
- */
- if (port == 0)
- ioex_set_level(IOEX_USB_C0_TCPC_FASTSW_CTL_EN, enable);
- else
- ioex_set_level(IOEX_USB_C1_TCPC_FASTSW_CTL_EN, enable);
-
- return EC_SUCCESS;
-}
-
-/* Used by Vbus discharge common code with CONFIG_USB_PD_DISCHARGE */
-int board_vbus_source_enabled(int port)
-{
- return tcpm_get_src_ctrl(port);
-}
-
-/* Used by USB charger task with CONFIG_USB_PD_5V_EN_CUSTOM */
-int board_is_sourcing_vbus(int port)
-{
- return board_vbus_source_enabled(port);
-}
diff --git a/zephyr/program/skyrim/src/usbc_config.c b/zephyr/program/skyrim/src/usbc_config.c
deleted file mode 100644
index 47d0ac6a29..0000000000
--- a/zephyr/program/skyrim/src/usbc_config.c
+++ /dev/null
@@ -1,394 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Skyrim family-specific USB-C configuration */
-
-#include "battery_fuel_gauge.h"
-#include "charge_manager.h"
-#include "charge_ramp.h"
-#include "charge_state.h"
-#include "charge_state_v2.h"
-#include "charger.h"
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-#include "driver/bc12/pi3usb9201.h"
-#include "driver/charger/isl9241.h"
-#include "driver/ppc/nx20p348x.h"
-#include "driver/retimer/anx7483_public.h"
-#include "driver/retimer/ps8811.h"
-#include "driver/retimer/ps8818_public.h"
-#include "driver/tcpm/nct38xx.h"
-#include "driver/usb_mux/amd_fp6.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "ioexpander.h"
-#include "power.h"
-#include "usb_mux.h"
-#include "usb_pd_tcpm.h"
-#include "usbc/usb_muxes.h"
-#include "usbc_ppc.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTFUSB(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-/* USB-A ports */
-enum usba_port { USBA_PORT_A0 = 0, USBA_PORT_A1, USBA_PORT_COUNT };
-
-/* USB-C ports */
-enum usbc_port { USBC_PORT_C0 = 0, USBC_PORT_C1, USBC_PORT_COUNT };
-BUILD_ASSERT(USBC_PORT_COUNT == CONFIG_USB_PD_PORT_MAX_COUNT);
-
-static void reset_nct38xx_port(int port);
-
-static void usbc_interrupt_init(void)
-{
- /* Enable PPC interrupts. */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_ppc));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c1_ppc));
-
- /* Enable TCPC interrupts. */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_tcpc));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c1_tcpc));
-
- /* Enable BC 1.2 interrupts */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_bc12));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c1_bc12));
-
- /* Enable SBU fault interrupts */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_sbu_fault));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c1_sbu_fault));
-}
-DECLARE_HOOK(HOOK_INIT, usbc_interrupt_init, HOOK_PRIO_POST_I2C);
-
-static void usb_fault_interrupt_init(void)
-{
- /* Enable USB fault interrupts when we hit S5 */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_hub_fault));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_a0_fault));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_a1_fault));
-}
-DECLARE_HOOK(HOOK_CHIPSET_STARTUP, usb_fault_interrupt_init, HOOK_PRIO_DEFAULT);
-
-static void usb_fault_interrupt_disable(void)
-{
- /* Disable USB fault interrupts leaving S5 */
- gpio_disable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_hub_fault));
- gpio_disable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_a0_fault));
- gpio_disable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_a1_fault));
-}
-DECLARE_HOOK(HOOK_CHIPSET_SHUTDOWN, usb_fault_interrupt_disable,
- HOOK_PRIO_DEFAULT);
-
-int board_set_active_charge_port(int port)
-{
- int is_valid_port = (port >= 0 && port < CONFIG_USB_PD_PORT_MAX_COUNT);
- int i;
- int rv;
-
- if (port == CHARGE_PORT_NONE) {
- CPRINTSUSB("Disabling all charger ports");
-
- /* Disable all ports. */
- for (i = 0; i < ppc_cnt; i++) {
- /*
- * If this port had booted in dead battery mode, go
- * ahead and reset it so EN_SNK responds properly.
- */
- if (nct38xx_get_boot_type(i) ==
- NCT38XX_BOOT_DEAD_BATTERY) {
- reset_nct38xx_port(i);
- pd_set_error_recovery(i);
- }
-
- /*
- * Do not return early if one fails otherwise we can
- * get into a boot loop assertion failure.
- */
- if (ppc_vbus_sink_enable(i, 0))
- CPRINTSUSB("Disabling C%d as sink failed.", i);
- }
-
- return EC_SUCCESS;
- } else if (!is_valid_port) {
- return EC_ERROR_INVAL;
- }
-
- /*
- * Check if we can reset any ports in dead battery mode
- *
- * The NCT3807 may continue to keep EN_SNK low on the dead battery port
- * and allow a dangerous level of voltage to pass through to the initial
- * charge port (see b/183660105). We must reset the ports if we have
- * sufficient battery to do so, which will bring EN_SNK back under
- * normal control.
- */
- rv = EC_SUCCESS;
- for (i = 0; i < board_get_usb_pd_port_count(); i++) {
- if (nct38xx_get_boot_type(i) == NCT38XX_BOOT_DEAD_BATTERY) {
- CPRINTSUSB("Found dead battery on %d", i);
- /*
- * If we have battery, get this port reset ASAP.
- * This means temporarily rejecting charge manager
- * sets to it.
- */
- if (pd_is_battery_capable()) {
- reset_nct38xx_port(i);
- pd_set_error_recovery(i);
-
- if (port == i)
- rv = EC_ERROR_INVAL;
- } else if (port != i) {
- /*
- * If other port is selected and in dead battery
- * mode, reset this port. Otherwise, reject
- * change because we'll brown out.
- */
- if (nct38xx_get_boot_type(port) ==
- NCT38XX_BOOT_DEAD_BATTERY) {
- reset_nct38xx_port(i);
- pd_set_error_recovery(i);
- } else {
- rv = EC_ERROR_INVAL;
- }
- }
- }
- }
-
- if (rv != EC_SUCCESS)
- return rv;
-
- /* Check if the port is sourcing VBUS. */
- if (tcpm_get_src_ctrl(port)) {
- CPRINTSUSB("Skip enable C%d", port);
- return EC_ERROR_INVAL;
- }
-
- CPRINTSUSB("New charge port: C%d", port);
-
- /*
- * Turn off the other ports' sink path FETs, before enabling the
- * requested charge port.
- */
- for (i = 0; i < ppc_cnt; i++) {
- if (i == port)
- continue;
-
- if (ppc_vbus_sink_enable(i, 0))
- CPRINTSUSB("C%d: sink path disable failed.", i);
- }
-
- /* Enable requested charge port. */
- if (ppc_vbus_sink_enable(port, 1)) {
- CPRINTSUSB("C%d: sink path enable failed.", port);
- return EC_ERROR_UNKNOWN;
- }
-
- return EC_SUCCESS;
-}
-
-void sbu_fault_interrupt(enum gpio_signal signal)
-{
- int port = signal == IOEX_USB_C1_FAULT_ODL ? 1 : 0;
-
- CPRINTSUSB("C%d: SBU fault", port);
- pd_handle_overcurrent(port);
-}
-
-void usb_fault_interrupt(enum gpio_signal signal)
-{
- int out;
-
- CPRINTSUSB("USB fault(%d), alerting the SoC", signal);
- out = gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_usb_hub_fault_q_odl)) &&
- gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(ioex_usb_a0_fault_odl)) &&
- gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(ioex_usb_a1_fault_db_odl));
-
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_fault_odl), out);
-}
-
-void usb_pd_soc_interrupt(enum gpio_signal signal)
-{
- /*
- * This interrupt is unexpected with our use of the SoC mux, so just log
- * it as a point of interest.
- */
- CPRINTSUSB("SOC PD Interrupt");
-}
-
-#ifdef CONFIG_CHARGER_ISL9241
-/* Round up 3250 max current to multiple of 128mA for ISL9241 AC prochot. */
-#define SKYRIM_AC_PROCHOT_CURRENT_MA 3328
-static void set_ac_prochot(void)
-{
- isl9241_set_ac_prochot(CHARGER_SOLO, SKYRIM_AC_PROCHOT_CURRENT_MA);
-}
-DECLARE_HOOK(HOOK_INIT, set_ac_prochot, HOOK_PRIO_DEFAULT);
-#endif /* CONFIG_CHARGER_ISL9241 */
-
-void tcpc_alert_event(enum gpio_signal signal)
-{
- int port;
-
- switch (signal) {
- case GPIO_USB_C0_TCPC_INT_ODL:
- port = 0;
- break;
- case GPIO_USB_C1_TCPC_INT_ODL:
- port = 1;
- break;
- default:
- return;
- }
-
- schedule_deferred_pd_interrupt(port);
-}
-
-static void reset_nct38xx_port(int port)
-{
- const struct gpio_dt_spec *reset_gpio_l;
- const struct device *ioex_port0, *ioex_port1;
-
- /* TODO(b/225189538): Save and restore ioex signals */
- if (port == USBC_PORT_C0) {
- reset_gpio_l = GPIO_DT_FROM_NODELABEL(gpio_usb_c0_tcpc_rst_l);
- ioex_port0 = DEVICE_DT_GET(DT_NODELABEL(ioex_c0_port0));
- ioex_port1 = DEVICE_DT_GET(DT_NODELABEL(ioex_c0_port1));
- } else if (port == USBC_PORT_C1) {
- reset_gpio_l = GPIO_DT_FROM_NODELABEL(gpio_usb_c1_tcpc_rst_l);
- ioex_port0 = DEVICE_DT_GET(DT_NODELABEL(ioex_c1_port0));
- ioex_port1 = DEVICE_DT_GET(DT_NODELABEL(ioex_c1_port1));
- } else {
- /* Invalid port: do nothing */
- return;
- }
-
- gpio_pin_set_dt(reset_gpio_l, 0);
- msleep(NCT38XX_RESET_HOLD_DELAY_MS);
- gpio_pin_set_dt(reset_gpio_l, 1);
- nct38xx_reset_notify(port);
- if (NCT3807_RESET_POST_DELAY_MS != 0)
- msleep(NCT3807_RESET_POST_DELAY_MS);
-
- /* Re-enable the IO expander pins */
- gpio_reset_port(ioex_port0);
- gpio_reset_port(ioex_port1);
-}
-
-void board_reset_pd_mcu(void)
-{
- /* Reset TCPC0 */
- reset_nct38xx_port(USBC_PORT_C0);
-
- /* Reset TCPC1 */
- reset_nct38xx_port(USBC_PORT_C1);
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- uint16_t status = 0;
-
- /*
- * Check which port has the ALERT line set and ignore if that TCPC has
- * its reset line active.
- */
- if (!gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_usb_c0_tcpc_int_odl))) {
- if (gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(
- gpio_usb_c0_tcpc_rst_l)) != 0)
- status |= PD_STATUS_TCPC_ALERT_0;
- }
-
- if (!gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_usb_c1_tcpc_int_odl))) {
- if (gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(
- gpio_usb_c1_tcpc_rst_l)) != 0)
- status |= PD_STATUS_TCPC_ALERT_1;
- }
-
- return status;
-}
-
-void bc12_interrupt(enum gpio_signal signal)
-{
- switch (signal) {
- case GPIO_USB_C0_BC12_INT_ODL:
- usb_charger_task_set_event(0, USB_CHG_EVENT_BC12);
- break;
-
- case GPIO_USB_C1_BC12_INT_ODL:
- usb_charger_task_set_event(1, USB_CHG_EVENT_BC12);
- break;
-
- default:
- break;
- }
-}
-
-/**
- * Return if VBUS is sagging too low
- *
- * For legacy BC1.2 charging with CONFIG_CHARGE_RAMP_SW, ramp up input current
- * until voltage drops to 4.5V. Don't go lower than this to be kind to the
- * charger (see b/67964166).
- */
-#define BC12_MIN_VOLTAGE 4500
-int board_is_vbus_too_low(int port, enum chg_ramp_vbus_state ramp_state)
-{
- int voltage = 0;
- int rv;
-
- rv = charger_get_vbus_voltage(port, &voltage);
-
- if (rv) {
- CPRINTSUSB("%s rv=%d", __func__, rv);
- return 0;
- }
-
- /*
- * b/168569046: The ISL9241 sometimes incorrectly reports 0 for unknown
- * reason, causing ramp to stop at 0.5A. Workaround this by ignoring 0.
- * This partly defeats the point of ramping, but will still catch
- * VBUS below 4.5V and above 0V.
- */
- if (voltage == 0) {
- CPRINTSUSB("%s vbus=0", __func__);
- return 0;
- }
-
- if (voltage < BC12_MIN_VOLTAGE)
- CPRINTSUSB("%s vbus=%d", __func__, voltage);
-
- return voltage < BC12_MIN_VOLTAGE;
-}
-
-#define SAFE_RESET_VBUS_DELAY_MS 900
-#define SAFE_RESET_VBUS_MV 5000
-void board_hibernate(void)
-{
- int port;
- enum ec_error_list ret;
-
- /*
- * If we are charging, then drop the Vbus level down to 5V to ensure
- * that we don't get locked out of the 6.8V OVLO for our PPCs in
- * dead-battery mode. This is needed when the TCPC/PPC rails go away.
- * (b/79218851, b/143778351, b/147007265)
- */
- port = charge_manager_get_active_charge_port();
- if (port != CHARGE_PORT_NONE) {
- pd_request_source_voltage(port, SAFE_RESET_VBUS_MV);
-
- /* Give PD task and PPC chip time to get to 5V */
- msleep(SAFE_RESET_VBUS_DELAY_MS);
- }
-
- /* Try to put our battery fuel gauge into sleep mode */
- ret = battery_sleep_fuel_gauge();
- if ((ret != EC_SUCCESS) && (ret != EC_ERROR_UNIMPLEMENTED))
- cprints(CC_SYSTEM, "Failed to send battery sleep command");
-}
diff --git a/zephyr/program/skyrim/usbc.dtsi b/zephyr/program/skyrim/usbc.dtsi
deleted file mode 100644
index 8486927e8d..0000000000
--- a/zephyr/program/skyrim/usbc.dtsi
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- usbc_port0: port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
- bc12 = <&bc12_port0>;
- tcpc = <&tcpc_port0>;
- chg = <&charger>;
- };
-
- usbc_port1: port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
- bc12 = <&bc12_port1>;
- tcpc = <&tcpc_port1>;
- };
- };
-};
diff --git a/zephyr/program/skyrim/winterhold/CMakeLists.txt b/zephyr/program/skyrim/winterhold/CMakeLists.txt
deleted file mode 100644
index ebd01a87e6..0000000000
--- a/zephyr/program/skyrim/winterhold/CMakeLists.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-zephyr_library_sources(
- "src/usb_mux_config.c"
- "src/ppc_config.c"
- "src/kb_backlight.c"
- "src/keyboard.c"
- "src/sensor.c"
- "src/battery_present.c"
-)
diff --git a/zephyr/program/skyrim/winterhold/battery.dtsi b/zephyr/program/skyrim/winterhold/battery.dtsi
deleted file mode 100644
index 8e82e0d1f2..0000000000
--- a/zephyr/program/skyrim/winterhold/battery.dtsi
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- batteries {
- default_battery: lgc_xphx8 {
- compatible = "lgc,xphx8", "battery-smart";
- };
- smp_atlxdy9k {
- compatible = "smp,atlxdy9k", "battery-smart";
- };
- smp_cosxdy9k {
- compatible = "smp,cosxdy9k", "battery-smart";
- };
- byd_wv3k8 {
- compatible = "byd,wv3k8", "battery-smart";
- };
- cosmx_mvk11 {
- compatible = "cosmx,mvk11", "battery-smart";
- };
- sunwoda_atlvkyjx {
- compatible = "sunwoda,atlvkyjx", "battery-smart";
- };
- sunwoda_cosvkyjx {
- compatible = "sunwoda,cosvkyjx", "battery-smart";
- };
- atl_cfd72 {
- compatible = "atl,cfd72", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/skyrim/winterhold/led_pins.dtsi b/zephyr/program/skyrim/winterhold/led_pins.dtsi
deleted file mode 100644
index 78b9a59c40..0000000000
--- a/zephyr/program/skyrim/winterhold/led_pins.dtsi
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_y: pwm_y {
- pwms = <&pwm2 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- pwm_w: pwm_w {
- pwms = <&pwm3 0 PWM_HZ(100) PWM_POLARITY_INVERTED>;
- };
- };
-
- pwm-led-pins {
- compatible = "cros-ec,pwm-led-pins";
-
- color_off: color-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <0 0>;
- };
-
- color_amber: color-amber {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <100 0>;
- };
-
- color_white: color-white {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_WHITE";
- led-pwms = <&pwm_y &pwm_w>;
- led-values = <0 100>;
- };
- };
-};
-
-/* Amber "battery charging" LED */
-&pwm2 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
-
-/* White "battery full" LED */
-&pwm3 {
- status = "okay";
- clock-bus = "NPCX_CLOCK_BUS_LFCLK";
- pinctrl-0 = <&pwm3_gp80>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/skyrim/winterhold/led_policy.dtsi b/zephyr/program/skyrim/winterhold/led_policy.dtsi
deleted file mode 100644
index f1f8aa31ed..0000000000
--- a/zephyr/program/skyrim/winterhold/led_policy.dtsi
+++ /dev/null
@@ -1,103 +0,0 @@
-#include <dt-bindings/battery.h>
-
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
- color-0 {
- led-color = <&color_white>;
- };
- };
-
- power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (> Low, <= Full) */
- batt-lvl = <(BATTERY_LEVEL_LOW + 1) BATTERY_LEVEL_FULL>;
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-discharge-s0-batt-low {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
- /* Battery percent range (>= Empty, <= Low) */
- batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
-
- power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
- /* Battery percent range (> Low, <= Full) */
- batt-lvl = <(BATTERY_LEVEL_LOW + 1) BATTERY_LEVEL_FULL>;
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-discharge-s3-batt-low {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
- /* Battery percent range (>= Empty, <= Low) */
- batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
-
- power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-error {
- charge-state = "PWR_STATE_ERROR";
-
- /* Amber 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-forced-idle {
- charge-state = "PWR_STATE_FORCED_IDLE";
-
- /* Amber 2 sec, White 2 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_white>;
- period-ms = <2000>;
- };
- };
- };
-};
diff --git a/zephyr/program/skyrim/winterhold/motionsense.dtsi b/zephyr/program/skyrim/winterhold/motionsense.dtsi
deleted file mode 100644
index 60d345c0a2..0000000000
--- a/zephyr/program/skyrim/winterhold/motionsense.dtsi
+++ /dev/null
@@ -1,124 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi3xx-int = &base_accel;
- lis2dw12-int = &base_accel;
-
- /* Use base accelerometer for on-body sensor */
- on-body-sensor = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- mutex_bmi3xx: bmi3xx-mutex {
- };
- mutex_lis2dw12: lis2dw12-mutex {
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bmi3xx_data: bmi3xx-drv-data {
- compatible = "cros-ec,drvdata-bmi3xx";
- status = "okay";
- };
- lis2dw12_data: lis2dw12-drv-data {
- compatible = "cros-ec,drvdata-lis2dw12";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- base_accel: base-accel {
- compatible = "cros-ec,lis2dw12";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_lis2dw12>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- default-range = <2>;
- drv-data = <&lis2dw12_data>;
- i2c-spi-addr-flags = "LIS2DWL_ADDR1_FLAGS";
-
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
- };
-
- motionsense-sensor-alt {
- alt_base_accel: alt-base-accel {
- compatible = "cros-ec,bmi3xx-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi3xx>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi3xx_data>;
- alternate-for = <&base_accel>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- ec-rate = <100>;
- };
- ec-s3 {
- odr = <(12500 | ROUND_UP_FLAG)>;
- };
- };
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_accel_gyro>;
- };
-};
diff --git a/zephyr/program/skyrim/winterhold/project.conf b/zephyr/program/skyrim/winterhold/project.conf
deleted file mode 100644
index 84be72ec0e..0000000000
--- a/zephyr/program/skyrim/winterhold/project.conf
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2022 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Winterhold reference-board-specific Kconfig settings.
-CONFIG_BOARD_WINTERHOLD=y
-
-# TODO(b/215404321): Remove later in board development
-CONFIG_PLATFORM_EC_EEPROM_CBI_WP=y
-CONFIG_PLATFORM_EC_SYSTEM_UNLOCKED=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_DT=y
-
-CONFIG_PLATFORM_EC_USBC_RETIMER_ANX7483=y
-
-# Enable charger chip
-CONFIG_PLATFORM_EC_CHARGER_ISL9238=y
-CONFIG_PLATFORM_EC_CHARGER_ISL9241=n
-
-# Get the vbus voltage from TCPC
-CONFIG_PLATFORM_EC_USB_PD_VBUS_MEASURE_CHARGER=n
-CONFIG_PLATFORM_EC_USB_PD_VBUS_MEASURE_TCPC=y
-
-# Remove unused sensor
-CONFIG_PLATFORM_EC_ACCEL_BMA4XX=n
-
-# Support LIS2DW12 sensor
-CONFIG_PLATFORM_EC_ACCEL_LIS2DW12=y
-
-# Disable lid configuration
-CONFIG_PLATFORM_EC_LID_ANGLE=n
-CONFIG_PLATFORM_EC_LID_ANGLE_UPDATE=n
-
-# Disable tablet mode configuration
-CONFIG_PLATFORM_EC_TABLET_MODE=n
-CONFIG_PLATFORM_EC_TABLET_MODE_SWITCH=n
-CONFIG_PLATFORM_EC_GMR_TABLET_MODE=n
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_HW_PRESENT_CUSTOM=y
-
-# Body detection configuration
-CONFIG_PLATFORM_EC_BODY_DETECTION=y
-CONFIG_PLATFORM_EC_BODY_DETECTION_ALWAYS_ENABLE_IN_S0=y
-CONFIG_PLATFORM_EC_BODY_DETECTION_NOTIFY_MODE_CHANGE=y
-CONFIG_PLATFORM_EC_GESTURE_HOST_DETECTION=y
diff --git a/zephyr/program/skyrim/winterhold/project.overlay b/zephyr/program/skyrim/winterhold/project.overlay
deleted file mode 100644
index 9a13a1a3cd..0000000000
--- a/zephyr/program/skyrim/winterhold/project.overlay
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Skyrim program common DTS includes */
-#include "../adc.dtsi"
-#include "../fan.dtsi"
-#include "../gpio.dtsi"
-#include "../interrupts.dtsi"
-#include "../keyboard.dtsi"
-#include "../usbc.dtsi"
-
-/* winterhold project DTS includes*/
-#include "winterhold.dtsi"
-#include "battery.dtsi"
-#include "led_pins.dtsi"
-#include "led_policy.dtsi"
-#include "motionsense.dtsi"
diff --git a/zephyr/program/skyrim/winterhold/src/battery_present.c b/zephyr/program/skyrim/winterhold/src/battery_present.c
deleted file mode 100644
index 290955a242..0000000000
--- a/zephyr/program/skyrim/winterhold/src/battery_present.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "battery.h"
-#include "battery_smart.h"
-#include "common.h"
-
-#include <zephyr/drivers/gpio.h>
-
-static enum battery_present batt_pres_prev = BP_NOT_SURE;
-
-__overridable bool board_battery_is_initialized(void)
-{
- int batt_status;
-
- return battery_status(&batt_status) != EC_SUCCESS ?
- false :
- !!(batt_status & STATUS_INITIALIZED);
-}
-
-/*
- * Physical detection of battery.
- */
-static enum battery_present battery_check_present_status(void)
-{
- enum battery_present batt_pres;
-
- if (battery_is_cut_off())
- return BP_NO;
-
- /* Get the physical hardware status */
- batt_pres = battery_hw_present();
-
- /*
- * If the battery is not physically connected, then no need to perform
- * any more checks.
- */
- if (batt_pres == BP_NO)
- return BP_NO;
-
- /*
- * If the battery is present now and was present last time we checked,
- * return early.
- */
- if ((batt_pres == BP_YES) && (batt_pres == batt_pres_prev))
- return BP_YES;
-
- /*
- * Check battery initialization. If the battery is not initialized,
- * then return BP_NOT_SURE. Battery could be in ship
- * mode and might require pre-charge current to wake it up. BP_NO is not
- * returned here because charger state machine will not provide
- * pre-charge current assuming that battery is not present.
- */
- if (!board_battery_is_initialized())
- return BP_NOT_SURE;
-
- return BP_YES;
-}
-
-enum battery_present battery_is_present(void)
-{
- batt_pres_prev = battery_check_present_status();
- return batt_pres_prev;
-}
-
-enum battery_present battery_hw_present(void)
-{
- const struct gpio_dt_spec *batt_pres;
-
- batt_pres = GPIO_DT_FROM_NODELABEL(gpio_ec_batt_pres_odl);
-
- /*
- * The GPIO is low when the battery is physically present.
- * But if battery cell voltage < 2.5V, it will not able to
- * pull down EC_BATT_PRES_ODL. So we need to set pre-charge
- * current even EC_BATT_PRES_ODL is high.
- */
- return gpio_pin_get_dt(batt_pres) ? BP_NOT_SURE : BP_YES;
-}
diff --git a/zephyr/program/skyrim/winterhold/src/kb_backlight.c b/zephyr/program/skyrim/winterhold/src/kb_backlight.c
deleted file mode 100644
index cbbfc0a4e9..0000000000
--- a/zephyr/program/skyrim/winterhold/src/kb_backlight.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "board_config.h"
-#include "common.h"
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-
-#include <zephyr/devicetree.h>
-#include <zephyr/logging/log.h>
-
-LOG_MODULE_DECLARE(skyrim, CONFIG_SKYRIM_LOG_LEVEL);
-
-__override uint32_t board_override_feature_flags0(uint32_t flags0)
-{
- int ret;
- uint32_t val;
-
- /*
- * Remove keyboard backlight feature for devices that don't support it.
- */
- ret = cros_cbi_get_fw_config(FW_KB_BL, &val);
- if (ret != 0) {
- LOG_ERR("Error retrieving CBI FW_CONFIG field %d", FW_KB_BL);
- return flags0;
- }
-
- if (val == FW_KB_BL_NOT_PRESENT)
- return (flags0 & ~EC_FEATURE_MASK_0(EC_FEATURE_PWM_KEYB));
- else
- return flags0;
-}
diff --git a/zephyr/program/skyrim/winterhold/src/keyboard.c b/zephyr/program/skyrim/winterhold/src/keyboard.c
deleted file mode 100644
index d3aebe0f2e..0000000000
--- a/zephyr/program/skyrim/winterhold/src/keyboard.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "ec_commands.h"
-
-static const struct ec_response_keybd_config winterhold_kb = {
- .num_top_row_keys = 10,
- .action_keys = {
- TK_BACK, /* T1 */
- TK_REFRESH, /* T2 */
- TK_FULLSCREEN, /* T3 */
- TK_OVERVIEW, /* T4 */
- TK_SNAPSHOT, /* T5 */
- TK_BRIGHTNESS_DOWN, /* T6 */
- TK_BRIGHTNESS_UP, /* T7 */
- TK_VOL_MUTE, /* T8 */
- TK_VOL_DOWN, /* T9 */
- TK_VOL_UP, /* T10 */
- },
- .capabilities = KEYBD_CAP_SCRNLOCK_KEY,
-};
-
-__override const struct ec_response_keybd_config *
-board_vivaldi_keybd_config(void)
-{
- return &winterhold_kb;
-}
diff --git a/zephyr/program/skyrim/winterhold/src/ppc_config.c b/zephyr/program/skyrim/winterhold/src/ppc_config.c
deleted file mode 100644
index d6adb145ff..0000000000
--- a/zephyr/program/skyrim/winterhold/src/ppc_config.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Winterhold board-specific PPC code */
-
-#include "driver/ppc/nx20p348x.h"
-#include "usbc_ppc.h"
-
-#include <zephyr/drivers/gpio.h>
-
-void ppc_interrupt(enum gpio_signal signal)
-{
- switch (signal) {
- case GPIO_USB_C0_PPC_INT_ODL:
- nx20p348x_interrupt(0);
- break;
-
- case GPIO_USB_C1_PPC_INT_ODL:
- nx20p348x_interrupt(1);
- break;
-
- default:
- break;
- }
-}
diff --git a/zephyr/program/skyrim/winterhold/src/sensor.c b/zephyr/program/skyrim/winterhold/src/sensor.c
deleted file mode 100644
index 52cd201705..0000000000
--- a/zephyr/program/skyrim/winterhold/src/sensor.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "common.h"
-#include "cros_board_info.h"
-#include "driver/accel_lis2dw12.h"
-#include "driver/accelgyro_bmi3xx.h"
-#include "hooks.h"
-#include "motionsense_sensors.h"
-
-void base_accel_interrupt(enum gpio_signal signal)
-{
- int ret;
- uint32_t val;
-
- ret = cbi_get_board_version(&val);
-
- if (ret == EC_SUCCESS && val < 1)
- bmi3xx_interrupt(signal);
- else
- lis2dw12_interrupt(signal);
-}
-
-static void motionsense_init(void)
-{
- int ret;
- uint32_t val;
-
- ret = cbi_get_board_version(&val);
-
- if (ret == EC_SUCCESS && val < 1) {
- MOTIONSENSE_ENABLE_ALTERNATE(alt_base_accel);
- }
-}
-DECLARE_HOOK(HOOK_INIT, motionsense_init, HOOK_PRIO_DEFAULT);
diff --git a/zephyr/program/skyrim/winterhold/src/usb_mux_config.c b/zephyr/program/skyrim/winterhold/src/usb_mux_config.c
deleted file mode 100644
index 19153eb676..0000000000
--- a/zephyr/program/skyrim/winterhold/src/usb_mux_config.c
+++ /dev/null
@@ -1,146 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Winterhold board-specific USB-C mux configuration */
-
-#include "console.h"
-#include "cros_board_info.h"
-#include "cros_cbi.h"
-#include "driver/retimer/anx7483_public.h"
-#include "hooks.h"
-#include "ioexpander.h"
-#include "usb_mux.h"
-#include "usbc/usb_muxes.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTFUSB(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-/*
- * USB C0 (general) and C1 (just ANX DB) use IOEX pins to
- * indicate flipped polarity to a protection switch.
- */
-static int ioex_set_flip(int port, mux_state_t mux_state)
-{
- if (port == 0) {
- if (mux_state & USB_PD_MUX_POLARITY_INVERTED)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c0_sbu_flip),
- 1);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c0_sbu_flip),
- 0);
- } else {
- if (mux_state & USB_PD_MUX_POLARITY_INVERTED)
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c1_sbu_flip),
- 1);
- else
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(ioex_usb_c1_sbu_flip),
- 0);
- }
-
- return EC_SUCCESS;
-}
-
-int board_anx7483_c0_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- /* Set the SBU polarity mux */
- RETURN_ERROR(ioex_set_flip(me->usb_port, mux_state));
-
- return anx7483_set_default_tuning(me, mux_state);
-}
-
-int board_anx7483_c1_fg_defalut_tuning(const struct usb_mux *me)
-{
- RETURN_ERROR(
- anx7483_set_fg(me, ANX7483_PIN_URX1, ANX7483_FG_SETTING_1_2DB));
- RETURN_ERROR(
- anx7483_set_fg(me, ANX7483_PIN_URX2, ANX7483_FG_SETTING_1_2DB));
- RETURN_ERROR(
- anx7483_set_fg(me, ANX7483_PIN_UTX1, ANX7483_FG_SETTING_1_2DB));
- RETURN_ERROR(
- anx7483_set_fg(me, ANX7483_PIN_UTX2, ANX7483_FG_SETTING_1_2DB));
-
- return EC_SUCCESS;
-}
-
-int board_anx7483_c1_mux_set(const struct usb_mux *me, mux_state_t mux_state)
-{
- bool flipped = mux_state & USB_PD_MUX_POLARITY_INVERTED;
-
- /* Set the SBU polarity mux */
- RETURN_ERROR(ioex_set_flip(me->usb_port, mux_state));
-
- /* Remove flipped from the state for easier compraisons */
- mux_state = mux_state & ~USB_PD_MUX_POLARITY_INVERTED;
-
- RETURN_ERROR(anx7483_set_default_tuning(me, mux_state));
-
- /*
- * Set the Flat Gain to default every time, to prevent DP only mode's
- * Flat Gain change in the last plug.
- */
- RETURN_ERROR(board_anx7483_c1_fg_defalut_tuning(me));
-
- if (mux_state == USB_PD_MUX_USB_ENABLED) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX2,
- ANX7483_EQ_SETTING_12_5DB));
- } else if (mux_state == USB_PD_MUX_DP_ENABLED) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_8_4DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_8_4DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX1,
- ANX7483_EQ_SETTING_8_4DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX2,
- ANX7483_EQ_SETTING_8_4DB));
- RETURN_ERROR(anx7483_set_fg(me, ANX7483_PIN_URX1,
- ANX7483_FG_SETTING_0_5DB));
- RETURN_ERROR(anx7483_set_fg(me, ANX7483_PIN_URX2,
- ANX7483_FG_SETTING_0_5DB));
- RETURN_ERROR(anx7483_set_fg(me, ANX7483_PIN_UTX1,
- ANX7483_FG_SETTING_0_5DB));
- RETURN_ERROR(anx7483_set_fg(me, ANX7483_PIN_UTX2,
- ANX7483_FG_SETTING_0_5DB));
- } else if (mux_state == USB_PD_MUX_DOCK && !flipped) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_8_4DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX1,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX2,
- ANX7483_EQ_SETTING_8_4DB));
- RETURN_ERROR(anx7483_set_fg(me, ANX7483_PIN_URX2,
- ANX7483_FG_SETTING_0_5DB));
- RETURN_ERROR(anx7483_set_fg(me, ANX7483_PIN_UTX2,
- ANX7483_FG_SETTING_0_5DB));
- } else if (mux_state == USB_PD_MUX_DOCK && flipped) {
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX1,
- ANX7483_EQ_SETTING_8_4DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_URX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_UTX1,
- ANX7483_EQ_SETTING_8_4DB));
- RETURN_ERROR(anx7483_set_eq(me, ANX7483_PIN_DRX2,
- ANX7483_EQ_SETTING_12_5DB));
- RETURN_ERROR(anx7483_set_fg(me, ANX7483_PIN_URX1,
- ANX7483_FG_SETTING_0_5DB));
- RETURN_ERROR(anx7483_set_fg(me, ANX7483_PIN_UTX1,
- ANX7483_FG_SETTING_0_5DB));
- }
-
- return EC_SUCCESS;
-}
diff --git a/zephyr/program/skyrim/winterhold/winterhold.dtsi b/zephyr/program/skyrim/winterhold/winterhold.dtsi
deleted file mode 100644
index a831cd9500..0000000000
--- a/zephyr/program/skyrim/winterhold/winterhold.dtsi
+++ /dev/null
@@ -1,168 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/usbc_mux.h>
-
-#include "../i2c.dtsi"
-
-/ {
- named-gpios {
- /* Winterhold-specific GPIO customizations */
- };
-
- named-temp-sensors {
- compatible = "cros-ec,temp-sensors";
- soc-pct2075 {
- temp_host_high = <105>;
- temp_host_halt = <110>;
- temp_host_release_high = <95>;
- temp_host_release_halt = <100>;
- power-good-pin = <&gpio_pg_pwr_s5>;
- sensor = <&soc_pct2075>;
- };
- amb-pct2075 {
- temp_host_warn = <50>;
- temp_host_high = <105>;
- temp_host_halt = <110>;
- temp_host_release_warn = <45>;
- temp_host_release_high = <95>;
- temp_host_release_halt = <100>;
- temp_fan_off = <35>;
- temp_fan_max = <40>;
- power-good-pin = <&gpio_pg_pwr_s5>;
- sensor = <&amb_pct2075>;
- };
- };
-
- /*
- * Note this is expected to vary per-board, so we keep it in the board
- * dts files.
- */
- Winterhold-fw-config {
- compatible = "cros-ec,cbi-fw-config";
-
- /*
- * FW_CONFIG field to enable KB back light or not.
- */
- kb-bl {
- enum-name = "FW_KB_BL";
- start = <1>;
- size = <1>;
-
- no-kb-bl {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_BL_NOT_PRESENT";
- value = <0>;
- };
- kb-bl-present {
- compatible = "cros-ec,cbi-fw-config-value";
- enum-name = "FW_KB_BL_PRESENT";
- value = <1>;
- };
- };
- };
-
- /* Rotation matrices for motion sensors. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <0 (-1) 0
- 1 0 0
- 0 0 1>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <0 1 0
- (-1) 0 0
- 0 0 1>;
- };
- };
-};
-
-&i2c0_0 {
- anx7483_port0: anx7483@3e {
- compatible = "analogix,anx7483";
- reg = <0x3e>;
- board-set = "board_anx7483_c0_mux_set";
- flags = <USB_MUX_FLAG_RESETS_IN_G3>;
- };
- ppc_port0: nx20p348x@71 {
- compatible = "nxp,nx20p348x";
- status = "okay";
- reg = <0x71>;
- };
-};
-
-&i2c1_0 {
- anx7483_port1: anx7483@3e {
- compatible = "analogix,anx7483";
- reg = <0x3e>;
- board-set = "board_anx7483_c1_mux_set";
- flags = <USB_MUX_FLAG_RESETS_IN_G3>;
- };
- ppc_port1: nx20p348x@71 {
- compatible = "nxp,nx20p348x";
- status = "okay";
- reg = <0x71>;
- };
-};
-
-&i2c4_1 {
- charger: isl9238@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-};
-
-&usbc_port0 {
- ppc = <&ppc_port0>;
- usb-mux-chain-0 {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port0 &anx7483_port0>;
- };
-};
-
-&usbc_port1 {
- ppc = <&ppc_port1>;
- usb-mux-chain-1-anx {
- compatible = "cros-ec,usb-mux-chain";
- usb-muxes = <&amd_fp6_port1 &anx7483_port1>;
- };
-};
-
-&fan0 {
- pwms = <&pwm0 0 PWM_KHZ(2) PWM_POLARITY_NORMAL>;
- rpm_min = <2100>;
- rpm_start = <2600>;
- rpm_max = <4800>;
-};
-
-&temp_sensor_charger {
- temp_host_high = <100>;
- temp_host_halt = <110>;
- temp_host_release_high = <90>;
- temp_host_release_halt = <100>;
-};
-
-&temp_sensor_memory {
- temp_host_high = <91>;
- temp_host_halt = <96>;
- temp_host_release_high = <81>;
- temp_host_release_halt = <86>;
-};
-
-&temp_sensor_cpu {
- /delete-property/ temp_host_high;
- /delete-property/ temp_host_halt;
- /delete-property/ temp_host_release_high;
- /delete-property/ temp_fan_off;
- /delete-property/ temp_fan_max;
-};
-
-/* Override handler */
-&int_accel_gyro {
- handler = "base_accel_interrupt";
-};
diff --git a/zephyr/program/trogdor/lazor/BUILD.py b/zephyr/program/trogdor/lazor/BUILD.py
deleted file mode 100644
index ca1a26bdcf..0000000000
--- a/zephyr/program/trogdor/lazor/BUILD.py
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Define zmake projects for lazor."""
-
-register_npcx_project(
- project_name="lazor",
- zephyr_board="npcx7",
- dts_overlays=[
- "adc.dts",
- "battery.dts",
- "display.dts",
- "gpio.dts",
- "i2c.dts",
- "host_interface_npcx.dts",
- "interrupts.dts",
- "keyboard.dts",
- "led.dts",
- "motionsense.dts",
- "pwm_led.dts",
- "usbc.dts",
- "default_gpio_pinctrl.dts",
- ],
-)
diff --git a/zephyr/program/trogdor/lazor/CMakeLists.txt b/zephyr/program/trogdor/lazor/CMakeLists.txt
deleted file mode 100644
index b6d5024707..0000000000
--- a/zephyr/program/trogdor/lazor/CMakeLists.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-cmake_minimum_required(VERSION 3.13.1)
-
-find_package(Zephyr REQUIRED HINTS "${ZEPHYR_BASE}")
-project(lazor)
-
-cros_ec_library_include_directories(include)
-
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_USBC
- "src/power.c"
- "src/usb_pd_policy.c"
- "src/usbc_config.c")
-
-zephyr_library_sources(
- "src/sku.c"
- "src/switchcap.c")
-
-# Board specific implementation
-zephyr_library_sources_ifdef(CONFIG_PLATFORM_EC_I2C
- "src/i2c.c")
diff --git a/zephyr/program/trogdor/lazor/adc.dts b/zephyr/program/trogdor/lazor/adc.dts
deleted file mode 100644
index b834001587..0000000000
--- a/zephyr/program/trogdor/lazor/adc.dts
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <zephyr/dt-bindings/adc/adc.h>
-
-/ {
- named-adc-channels {
- compatible = "named-adc-channels";
-
- vbus {
- enum-name = "ADC_VBUS";
- io-channels = <&adc0 1>;
- /* Measure VBUS through a 1/10 voltage divider */
- mul = <10>;
- };
- amon_bmon {
- enum-name = "ADC_AMON_BMON";
- io-channels = <&adc0 2>;
- /*
- * Adapter current output or battery charging/
- * discharging current (uV) 18x amplification on
- * charger side.
- */
- mul = <1000>;
- div = <18>;
- };
- psys {
- enum-name = "ADC_PSYS";
- io-channels = <&adc0 3>;
- /*
- * ISL9238 PSYS output is 1.44 uA/W over 5.6K resistor,
- * to read 0.8V @ 99 W, i.e. 124000 uW/mV.
- */
- mul = <124000>;
- };
- };
-
-};
-
-&adc0 {
- status = "okay";
- pinctrl-0 = <&adc0_chan1_gp44
- &adc0_chan2_gp43
- &adc0_chan3_gp42>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/trogdor/lazor/battery.dts b/zephyr/program/trogdor/lazor/battery.dts
deleted file mode 100644
index 2b17dd4761..0000000000
--- a/zephyr/program/trogdor/lazor/battery.dts
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- batteries {
- default_battery: ap16l5j {
- compatible = "panasonic,ap16l5j", "battery-smart";
- };
- ap16l5j_009 {
- compatible = "panasonic,ap16l5j-009", "battery-smart";
- };
- ap16l8j {
- compatible = "lgc,ap16l8j", "battery-smart";
- };
- lgc_ap18c8k {
- compatible = "lgc,ap18c8k", "battery-smart";
- };
- murata_ap18c4k {
- compatible = "murata,ap18c4k", "battery-smart";
- };
- };
-};
diff --git a/zephyr/program/trogdor/lazor/default_gpio_pinctrl.dts b/zephyr/program/trogdor/lazor/default_gpio_pinctrl.dts
deleted file mode 100644
index 1819bdbc3e..0000000000
--- a/zephyr/program/trogdor/lazor/default_gpio_pinctrl.dts
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Adds the &alt1_no_lpc_espi setting over the NPCX7 default setting. */
-&{/def-io-conf-list} {
- pinmux = <&alt0_gpio_no_spip
- &alt0_gpio_no_fpip
- &alt1_no_pwrgd
- &alt1_no_lpc_espi
- &alta_no_peci_en
- &altd_npsl_in1_sl
- &altd_npsl_in2_sl
- &altd_psl_in3_sl
- &altd_psl_in4_sl
- &alt7_no_ksi0_sl
- &alt7_no_ksi1_sl
- &alt7_no_ksi2_sl
- &alt7_no_ksi3_sl
- &alt7_no_ksi4_sl
- &alt7_no_ksi5_sl
- &alt7_no_ksi6_sl
- &alt7_no_ksi7_sl
- &alt8_no_kso00_sl
- &alt8_no_kso01_sl
- &alt8_no_kso02_sl
- &alt8_no_kso03_sl
- &alt8_no_kso04_sl
- &alt8_no_kso05_sl
- &alt8_no_kso06_sl
- &alt8_no_kso07_sl
- &alt9_no_kso08_sl
- &alt9_no_kso09_sl
- &alt9_no_kso10_sl
- &alt9_no_kso11_sl
- &alt9_no_kso12_sl
- &alt9_no_kso13_sl
- &alt9_no_kso14_sl
- &alt9_no_kso15_sl
- &alta_no_kso16_sl
- &alta_no_kso17_sl >;
-};
diff --git a/zephyr/program/trogdor/lazor/display.dts b/zephyr/program/trogdor/lazor/display.dts
deleted file mode 100644
index 65d3a2d91b..0000000000
--- a/zephyr/program/trogdor/lazor/display.dts
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- displight {
- compatible = "cros-ec,displight";
- pwms = <&pwm5 0 PWM_HZ(4800) PWM_POLARITY_NORMAL>;
- generic-pwm-channel = <1>;
- };
-};
-
-&pwm5 {
- status = "okay";
- pinctrl-0 = <&pwm5_gpb7>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/trogdor/lazor/gpio.dts b/zephyr/program/trogdor/lazor/gpio.dts
deleted file mode 100644
index d40a593949..0000000000
--- a/zephyr/program/trogdor/lazor/gpio.dts
+++ /dev/null
@@ -1,314 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/wake_mask_event_defines.h>
-
-/ {
- aliases {
- gpio-wp = &gpio_ec_wp_odl;
- gpio-kbd-kso2 = &gpio_ec_kso_02_inv;
- };
-
- named-gpios {
- compatible = "named-gpios";
-
- gpio_usb_c0_pd_int_odl: usb_c0_pd_int_odl {
- gpios = <&gpioe 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_PD_INT_ODL";
- };
- gpio_usb_c1_pd_int_odl: usb_c1_pd_int_odl {
- gpios = <&gpiof 5 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_PD_INT_ODL";
- };
- gpio_usb_c0_swctl_int_odl: usb_c0_swctl_int_odl {
- gpios = <&gpio0 3 GPIO_INPUT>;
- enum-name = "GPIO_USB_C0_SWCTL_INT_ODL";
- };
- gpio_usb_c1_swctl_int_odl: usb_c1_swctl_int_odl {
- gpios = <&gpio4 0 GPIO_INPUT>;
- enum-name = "GPIO_USB_C1_SWCTL_INT_ODL";
- };
- gpio_usb_c0_bc12_int_l: usb_c0_bc12_int_l {
- gpios = <&gpio6 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_usb_c1_bc12_int_l: usb_c1_bc12_int_l {
- gpios = <&gpio8 2 GPIO_INPUT_PULL_UP>;
- };
- gpio_usb_a0_oc_odl: usb_a0_oc_odl {
- gpios = <&gpiod 1 GPIO_INPUT_PULL_UP>;
- };
- gpio_acok_od: acok_od {
- gpios = <&gpio0 0 GPIO_INPUT>;
- enum-name = "GPIO_AC_PRESENT";
- };
- gpio_ccd_mode_odl: ccd_mode_odl {
- gpios = <&gpioe 3 GPIO_INPUT>;
- enum-name = "GPIO_CCD_MODE_ODL";
- };
- gpio_ec_pwr_btn_odl: ec_pwr_btn_odl {
- gpios = <&gpio0 1 GPIO_INPUT>;
- enum-name = "GPIO_POWER_BUTTON_L";
- };
- gpio_ec_voldn_btn_odl: ec_voldn_btn_odl {
- gpios = <&gpio7 0 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_DOWN_L";
- };
- gpio_ec_volup_btn_odl: ec_volup_btn_odl {
- gpios = <&gpiof 2 GPIO_INPUT_PULL_UP>;
- enum-name = "GPIO_VOLUME_UP_L";
- };
- gpio_ec_wp_odl: ec_wp_odl {
- gpios = <&gpioa 1 (GPIO_INPUT | GPIO_ACTIVE_LOW)>;
- };
- gpio_lid_open_ec: lid_open_ec {
- gpios = <&gpiod 2 GPIO_INPUT>;
- enum-name = "GPIO_LID_OPEN";
- };
- gpio_ap_rst_l: ap_rst_l {
- gpios = <&gpioc 1 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_AP_RST_L";
- };
- gpio_ps_hold: ps_hold {
- gpios = <&gpioa 4 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_PS_HOLD";
- };
- gpio_ap_suspend: ap_suspend {
- gpios = <&gpio5 7 GPIO_INPUT>;
- enum-name = "GPIO_AP_SUSPEND";
- };
- gpio_deprecated_ap_rst_req: deprecated_ap_rst_req {
- gpios = <&gpioc 2 (GPIO_INPUT_PULL_DOWN | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_DEPRECATED_AP_RST_REQ";
- };
- gpio_power_good: power_good {
- gpios = <&gpio5 4 GPIO_INPUT_PULL_DOWN>;
- enum-name = "GPIO_POWER_GOOD";
- };
- gpio_warm_reset_l: warm_reset_l {
- gpios = <&gpiof 4 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- enum-name = "GPIO_WARM_RESET_L";
- };
- ap_ec_spi_cs_l {
- gpios = <&gpio5 3 GPIO_INPUT_PULL_DOWN>;
- };
- gpio_tablet_mode_l: tablet_mode_l {
- gpios = <&gpioc 6 GPIO_INPUT>;
- enum-name = "GPIO_TABLET_MODE_L";
- };
- gpio_accel_gyro_int_l: accel_gyro_int_l {
- gpios = <&gpioa 0 GPIO_INPUT>;
- };
- gpio_da9313_gpio0: da9313_gpio0 {
- gpios = <&gpioe 2 GPIO_INPUT>;
- enum-name = "GPIO_DA9313_GPIO0";
- };
- /*
- * Active low input
- */
- gpio_switchcap_pg_int_l: switchcap_pg_int_l {
- gpios = <&gpioe 2 (GPIO_ACTIVE_LOW | GPIO_INPUT)>;
- };
- gpio_ec_rst_odl: ec_rst_odl {
- gpios = <&gpio0 2 GPIO_INPUT>;
- };
- ec_entering_rw {
- gpios = <&gpioe 1 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENTERING_RW";
- };
- ec_batt_pres_odl {
- gpios = <&gpioe 5 GPIO_INPUT>;
- enum-name = "GPIO_BATT_PRES_ODL";
- };
- pm845_resin_l {
- gpios = <&gpio3 2 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PMIC_RESIN_L";
- };
- pmic_kpd_pwr_odl {
- gpios = <&gpiod 6 GPIO_ODR_HIGH>;
- enum-name = "GPIO_PMIC_KPD_PWR_ODL";
- };
- ec_int_l {
- gpios = <&gpioa 2 GPIO_ODR_HIGH>;
- enum-name = "GPIO_EC_INT_L";
- };
- qsip_on {
- gpios = <&gpio5 0 GPIO_OUTPUT_LOW>;
- };
- gpio_hibernate_l: hibernate_l {
- gpios = <&gpio5 2 GPIO_OUTPUT_HIGH>;
- };
- gpio_switchcap_on: switchcap_on {
- gpios = <&gpiod 5 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_SWITCHCAP_ON";
- };
- gpio_vbob_en: vbob_en {
- gpios = <&gpiod 3 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_VBOB_EN";
- };
- gpio_en_pp3300_a: en_pp3300_a {
- gpios = <&gpioa 6 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_PP3300_A";
- };
- gpio_en_pp5000_a: en_pp5000_a {
- gpios = <&gpio6 7 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_PP5000";
- };
- ec_bl_disable_l {
- gpios = <&gpiob 6 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_ENABLE_BACKLIGHT";
- };
- gpio_lid_accel_int_l: lid_accel_int_l {
- gpios = <&gpio5 6 GPIO_INPUT>;
- };
- trackpad_int_gate {
- gpios = <&gpio7 4 GPIO_OUTPUT_LOW>;
- };
- gpio_usb_c0_pd_rst_l: usb_c0_pd_rst_l {
- gpios = <&gpiof 1 GPIO_ODR_HIGH>;
- };
- gpio_usb_c1_pd_rst_l: usb_c1_pd_rst_l {
- gpios = <&gpioe 4 GPIO_ODR_HIGH>;
- };
- gpio_dp_mux_oe_l: dp_mux_oe_l {
- gpios = <&gpio9 6 GPIO_ODR_HIGH>;
- };
- gpio_dp_mux_sel: dp_mux_sel {
- gpios = <&gpio4 5 GPIO_OUTPUT_LOW>;
- };
- gpio_dp_hot_plug_det: dp_hot_plug_det {
- gpios = <&gpio9 5 GPIO_OUTPUT_LOW>;
- };
- gpio_en_usb_a_5v: en_usb_a_5v {
- gpios = <&gpio8 6 GPIO_OUTPUT_LOW>;
- enum-name = "GPIO_EN_USB_A_5V";
- };
- usb_a_cdp_ilim_en {
- gpios = <&gpio7 5 GPIO_OUTPUT_HIGH>;
- };
- gpio_ec_chg_led_y_c1: ec_chg_led_y_c1 {
- gpios = <&gpioc 3 GPIO_OUTPUT_LOW>;
- };
- gpio_ec_chg_led_b_c1: ec_chg_led_b_c1 {
- gpios = <&gpioc 4 GPIO_OUTPUT_LOW>;
- };
- gpio_brd_id0: brd_id0 {
- gpios = <&gpioc 7 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION1";
- };
- gpio_brd_id1: brd_id1 {
- gpios = <&gpio9 3 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION2";
- };
- gpio_brd_id2: brd_id2 {
- gpios = <&gpio6 3 GPIO_INPUT>;
- enum-name = "GPIO_BOARD_VERSION3";
- };
- gpio_sku_id0: sku_id0 {
- gpios = <&gpiof 0 GPIO_INPUT>;
- };
- gpio_sku_id1: sku_id1 {
- gpios = <&gpio4 1 GPIO_INPUT>;
- };
- gpio_sku_id2: sku_id2 {
- gpios = <&gpiod 4 GPIO_INPUT>;
- };
- arm_x86 {
- gpios = <&gpio6 6 GPIO_OUTPUT_LOW>;
- };
- ec-i2c-sensor-scl {
- gpios = <&gpiob 3 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- ec-i2c-sensor-sda {
- gpios = <&gpiob 2 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
- };
- gpio_ec_kso_02_inv: ec_kso_02_inv {
- gpios = <&gpio1 7 (GPIO_OUTPUT_LOW | GPIO_ACTIVE_LOW)>;
- };
- };
-
- usba-port-enable-list {
- compatible = "cros-ec,usba-port-enable-pins";
- enable-pins = <&gpio_en_usb_a_5v>;
- };
-
- hibernate-wake-pins {
- compatible = "cros-ec,hibernate-wake-pins";
- wakeup-irqs = <
- &int_ac_present
- &int_power_button
- &int_lid_open
- &int_ec_rst
- >;
- };
-
- ec-mkbp-host-event-wakeup-mask {
- compatible = "ec-wake-mask-event";
- wakeup-mask = <(
- HOST_EVENT_LID_OPEN |
- HOST_EVENT_POWER_BUTTON |
- HOST_EVENT_AC_CONNECTED |
- HOST_EVENT_AC_DISCONNECTED |
- HOST_EVENT_HANG_DETECT |
- HOST_EVENT_RTC |
- HOST_EVENT_MODE_CHANGE |
- HOST_EVENT_DEVICE)>;
- };
-
- ec-mkbp-event-wakeup-mask {
- compatible = "ec-wake-mask-event";
- wakeup-mask = <(MKBP_EVENT_KEY_MATRIX |
- MKBP_EVENT_HOST_EVENT |
- MKBP_EVENT_SENSOR_FIFO)>;
- };
-
- gpio_id_sku: sku {
- compatible = "cros-ec,gpio-id";
- bits = <
- &gpio_sku_id0
- &gpio_sku_id1
- &gpio_sku_id2
- >;
- system = "binary";
- };
-
- gpio_id_board: board {
- compatible = "cros-ec,gpio-id";
- bits = <
- &gpio_brd_id0
- &gpio_brd_id1
- &gpio_brd_id2
- >;
- system = "binary_first_base3";
- };
-
- unused-pins {
- compatible = "unused-gpios";
- unused-gpios =
- <&gpio5 1 0>,
- <&gpiod 0 0>,
- <&gpiof 3 0>,
- <&gpio0 4 0>,
- <&gpioc 0 0>,
- <&gpioa 7 0>,
- <&gpio8 3 0>,
- <&gpio8 1 0>,
- <&gpio3 7 0>,
- <&gpio7 6 0>,
- <&gpio3 4 0>,
- <&gpioc 5 0>,
- <&gpioa 3 0>,
- <&gpio7 3 0>,
- <&gpiod 7 0>,
- <&gpioa 5 0>,
- <&gpiob 0 0>,
- <&gpio9 4 0>,
- <&gpiob 1 0>,
- <&gpio6 2 0>,
- <&gpio3 5 0>,
- <&gpio9 7 0>,
- <&gpio6 0 0>,
- <&gpio7 2 0>;
- };
-};
diff --git a/zephyr/program/trogdor/lazor/host_interface_npcx.dts b/zephyr/program/trogdor/lazor/host_interface_npcx.dts
deleted file mode 100644
index 14efa3c6b2..0000000000
--- a/zephyr/program/trogdor/lazor/host_interface_npcx.dts
+++ /dev/null
@@ -1,12 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* host interface */
-&shi {
- status = "okay";
- pinctrl-0 = <&shi_gp46_47_53_55>;
- pinctrl-1 = <&shi_gpio_gp46_47_53_55>;
- pinctrl-names = "default", "sleep";
-};
diff --git a/zephyr/program/trogdor/lazor/i2c.dts b/zephyr/program/trogdor/lazor/i2c.dts
deleted file mode 100644
index e19ad224a9..0000000000
--- a/zephyr/program/trogdor/lazor/i2c.dts
+++ /dev/null
@@ -1,145 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- named-i2c-ports {
- compatible = "named-i2c-ports";
-
- i2c_power: power {
- i2c-port = <&i2c0_0>;
- remote-port = <0>;
- enum-names = "I2C_PORT_POWER",
- "I2C_PORT_BATTERY",
- "I2C_PORT_VIRTUAL_BATTERY",
- "I2C_PORT_CHARGER";
- };
- i2c_tcpc0: tcpc0 {
- i2c-port = <&i2c1_0>;
- enum-names = "I2C_PORT_TCPC0";
- };
- i2c_tcpc1: tcpc1 {
- i2c-port = <&i2c2_0>;
- enum-names = "I2C_PORT_TCPC1";
- };
- i2c_eeprom: eeprom {
- i2c-port = <&i2c5_0>;
- enum-names = "I2C_PORT_EEPROM";
- };
- i2c_sensor: sensor {
- i2c-port = <&i2c7_0>;
- enum-names = "I2C_PORT_SENSOR",
- "I2C_PORT_ACCEL";
- };
- };
-
-};
-
-&i2c0_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_STANDARD>;
- pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
- pinctrl-names = "default";
-
- bc12_port0: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c0_bc12>;
- };
-
- charger: isl923x@9 {
- compatible = "intersil,isl923x";
- status = "okay";
- reg = <0x9>;
- };
-};
-
-&i2c_ctrl0 {
- status = "okay";
-};
-
-&i2c1_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>;
- pinctrl-names = "default";
-
- ppc_port0: sn5s330@40 {
- compatible = "ti,sn5s330";
- status = "okay";
- reg = <0x40>;
- };
-
- tcpc_port0: ps8xxx@b {
- compatible = "parade,ps8xxx";
- status = "okay";
- reg = <0xb>;
- };
-};
-
-&i2c_ctrl1 {
- status = "okay";
-};
-
-&i2c2_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST_PLUS>;
- pinctrl-0 = <&i2c2_0_sda_scl_gp91_92>;
- pinctrl-names = "default";
-
- ppc_port1: sn5s330@40{
- compatible = "ti,sn5s330";
- status = "okay";
- reg = <0x40>;
- };
-
- tcpc_port1: ps8xxx@b {
- compatible = "parade,ps8xxx";
- status = "okay";
- reg = <0xb>;
- };
-};
-
-&i2c_ctrl2 {
- status = "okay";
-};
-
-&i2c3_0 {
- /* Not used as no WLC connected */
- clock-frequency = <I2C_BITRATE_FAST>;
-};
-
-&i2c_ctrl3 {
- status = "okay";
-};
-
-&i2c5_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c5_0_sda_scl_gp33_36>;
- pinctrl-names = "default";
-
- bc12_port1: pi3usb9201@5f {
- compatible = "pericom,pi3usb9201";
- status = "okay";
- reg = <0x5f>;
- irq = <&int_usb_c1_bc12>;
- };
-};
-
-&i2c_ctrl5 {
- status = "okay";
-};
-
-&i2c7_0 {
- status = "okay";
- clock-frequency = <I2C_BITRATE_FAST>;
- pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>;
- pinctrl-names = "default";
-};
-
-&i2c_ctrl7 {
- status = "okay";
-};
diff --git a/zephyr/program/trogdor/lazor/include/sku.h b/zephyr/program/trogdor/lazor/include/sku.h
deleted file mode 100644
index 76825bbba1..0000000000
--- a/zephyr/program/trogdor/lazor/include/sku.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Lazor board-specific SKU configuration */
-
-#ifndef __ZEPHYR_LAZOR_SKU_H
-#define __ZEPHYR_LAZOR_SKU_H
-
-int board_get_version(void);
-int board_is_clamshell(void);
-int board_has_da9313(void);
-int board_has_ln9310(void);
-int board_has_buck_ic(void);
-
-#endif /* __ZEPHYR_LAZOR_SKU_H */
diff --git a/zephyr/program/trogdor/lazor/interrupts.dts b/zephyr/program/trogdor/lazor/interrupts.dts
deleted file mode 100644
index 5c2ed35e90..0000000000
--- a/zephyr/program/trogdor/lazor/interrupts.dts
+++ /dev/null
@@ -1,140 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- aliases {
- int-wp = &int_wp;
- };
-
- gpio-interrupts {
- compatible = "cros-ec,gpio-interrupts";
-
- int_ac_present: ac_present {
- irq-pin = <&gpio_acok_od>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "extpower_interrupt";
- };
- int_lid_open: lid_open {
- irq-pin = <&gpio_lid_open_ec>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "lid_interrupt";
- };
- int_wp: wp {
- irq-pin = <&gpio_ec_wp_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "switch_interrupt";
- };
- int_power_button: power_button {
- irq-pin = <&gpio_ec_pwr_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_button_interrupt";
- };
- int_volume_up: volume_up {
- irq-pin = <&gpio_ec_volup_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- int_volume_down: volume_down {
- irq-pin = <&gpio_ec_voldn_btn_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "button_interrupt";
- };
- /*
- * Note this is an active low input, so
- * the direction is from logical low to
- * logical high.
- */
- int_switchcap_pg: switchcap_pg {
- irq-pin = <&gpio_switchcap_pg_int_l>;
- flags = <GPIO_INT_EDGE_RISING>;
- handler = "ln9310_interrupt";
- };
- int_ap_rst: ap_rst {
- irq-pin = <&gpio_ap_rst_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "chipset_ap_rst_interrupt";
- };
- int_ap_suspend: ap_suspend {
- irq-pin = <&gpio_ap_suspend>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_deprecated_ap_rst_req: deprecated_ap_rst_req {
- irq-pin = <&gpio_deprecated_ap_rst_req>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_power_good: power_good {
- irq-pin = <&gpio_power_good>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "chipset_power_good_interrupt";
- };
- int_ps_hold: ps_hold {
- irq-pin = <&gpio_ps_hold>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "power_signal_interrupt";
- };
- int_warm_reset: warm_reset {
- irq-pin = <&gpio_warm_reset_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "chipset_warm_reset_interrupt";
- };
- int_usb_c0_tcpc: usb_c0_tcpc {
- irq-pin = <&gpio_usb_c0_pd_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c1_tcpc: usb_c1_tcpc {
- irq-pin = <&gpio_usb_c1_pd_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "tcpc_alert_event";
- };
- int_usb_c0_swctl: usb_c0_swctl {
- irq-pin = <&gpio_usb_c0_swctl_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c1_swctl: usb_c1_swctl {
- irq-pin = <&gpio_usb_c1_swctl_int_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "ppc_interrupt";
- };
- int_usb_c0_bc12: usb_c0_bc12 {
- irq-pin = <&gpio_usb_c0_bc12_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb0_evt";
- };
- int_usb_c1_bc12: usb_c1_bc12 {
- irq-pin = <&gpio_usb_c1_bc12_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "usb1_evt";
- };
- int_usb_a0_oc: usb_a0_oc {
- irq-pin = <&gpio_usb_a0_oc_odl>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "usba_oc_interrupt";
- };
- int_ccd_mode: ccd_mode {
- irq-pin = <&gpio_ccd_mode_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "board_connect_c0_sbu";
- };
- int_accel: accel {
- irq-pin = <&gpio_accel_gyro_int_l>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "bmi160_interrupt";
- };
- int_tablet_mode: tablet_mode {
- irq-pin = <&gpio_tablet_mode_l>;
- flags = <GPIO_INT_EDGE_BOTH>;
- handler = "gmr_tablet_switch_isr";
- };
- int_ec_rst: ec_rst {
- irq-pin = <&gpio_ec_rst_odl>;
- flags = <GPIO_INT_EDGE_FALLING>;
- handler = "wake_isr";
- };
- };
-};
diff --git a/zephyr/program/trogdor/lazor/keyboard.dts b/zephyr/program/trogdor/lazor/keyboard.dts
deleted file mode 100644
index 6580fa2a35..0000000000
--- a/zephyr/program/trogdor/lazor/keyboard.dts
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- cros-keyscan {
- compatible = "cros-ec,keyscan";
-
- actual-key-mask = <
- 0x14 /* C0 */
- 0xff /* C1 */
- 0xff /* C2 */
- 0xff /* C3 */
- 0xff /* C4 */
- 0xf5 /* C5 */
- 0xff /* C6 */
- 0xa4 /* C7 */
- 0xff /* C8 */
- 0xfe /* C9 */
- 0x55 /* C10 */
- 0xfa /* C11 */
- 0xca /* C12 */
- >;
- };
-
- kblight {
- compatible = "cros-ec,kblight-pwm";
- pwms = <&pwm3 0 PWM_KHZ(10) PWM_POLARITY_NORMAL>;
- generic-pwm-channel = <0>;
- };
-};
-
-&pwm3 {
- status = "okay";
- pinctrl-0 = <&pwm3_gp80>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/trogdor/lazor/led.dts b/zephyr/program/trogdor/lazor/led.dts
deleted file mode 100644
index 4527afd34c..0000000000
--- a/zephyr/program/trogdor/lazor/led.dts
+++ /dev/null
@@ -1,90 +0,0 @@
-/ {
- led-colors {
- compatible = "cros-ec,led-policy";
-
- power-state-charge {
- charge-state = "PWR_STATE_CHARGE";
-
- color-0 {
- led-color = <&color_amber>;
- };
- };
-
- power-state-discharge-s0 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S0";
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
-
- power-state-discharge-s3 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S3";
-
- /* Amber 1 sec, off 3 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <3000>;
- };
- };
-
- power-state-discharge-s5 {
- charge-state = "PWR_STATE_DISCHARGE";
- chipset-state = "POWER_S5";
-
- color-0 {
- led-color = <&color_off>;
- };
- };
-
- power-state-error {
- charge-state = "PWR_STATE_ERROR";
-
- /* Amber 1 sec, off 1 sec */
- color-0 {
- led-color = <&color_amber>;
- period-ms = <1000>;
- };
- color-1 {
- led-color = <&color_off>;
- period-ms = <1000>;
- };
- };
-
- power-state-near-full {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
-
- power-state-forced-idle {
- charge-state = "PWR_STATE_FORCED_IDLE";
-
- /* Blue 2 sec, Amber 2 sec */
- color-0 {
- led-color = <&color_blue>;
- period-ms = <2000>;
- };
- color-1 {
- led-color = <&color_amber>;
- period-ms = <2000>;
- };
- };
-
- power-state-idle {
- charge-state = "PWR_STATE_IDLE";
-
- color-0 {
- led-color = <&color_blue>;
- };
- };
- };
-};
diff --git a/zephyr/program/trogdor/lazor/motionsense.dts b/zephyr/program/trogdor/lazor/motionsense.dts
deleted file mode 100644
index 75fe31b997..0000000000
--- a/zephyr/program/trogdor/lazor/motionsense.dts
+++ /dev/null
@@ -1,181 +0,0 @@
-/* Copyright 2020 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dt-bindings/motionsense/utils.h>
-
-
-/ {
- aliases {
- /*
- * motion sense's <>_INT_EVENT is handled
- * by alias. Using the alias, each driver creates
- * its own <>_INT_EVENT.
- */
- bmi160-int = &base_accel;
- };
-
- /*
- * Declare mutexes used by sensor drivers.
- * A mutex node is used to create an instance of mutex_t.
- * A mutex node is referenced by a sensor node if the
- * corresponding sensor driver needs to use the
- * instance of the mutex.
- */
- motionsense-mutex {
- compatible = "cros-ec,motionsense-mutex";
- lid_mutex: lid-mutex {
- };
-
- mutex_bmi160: bmi160-mutex {
- };
- };
-
- /* Rotation matrix used by drivers. */
- motionsense-rotation-ref {
- compatible = "cros-ec,motionsense-rotation-ref";
- lid_rot_ref: lid-rotation-ref {
- mat33 = <(-1) 0 0
- 0 (-1) 0
- 0 0 1>;
- };
-
- base_rot_ref: base-rotation-ref {
- mat33 = <1 0 0
- 0 (-1) 0
- 0 0 (-1)>;
- };
- };
-
- /*
- * Driver specific data. A driver-specific data can be shared with
- * different motion sensors while they are using the same driver.
- *
- * If a node's compatible starts with "cros-ec,accelgyro-", it is for
- * a common structure defined in accelgyro.h.
- * e.g) compatible = "cros-ec,accelgyro-als-drv-data" is for
- * "struct als_drv_data_t" in accelgyro.h
- */
- motionsense-sensor-data {
- bma255_data: bma255-drv-data {
- compatible = "cros-ec,drvdata-bma255";
- status = "okay";
- };
-
- bmi160_data: bmi160-drv-data {
- compatible = "cros-ec,drvdata-bmi160";
- status = "okay";
- };
-
- kx022_data: kx022-drv-data {
- compatible = "cros-ec,drvdata-kionix";
- status = "okay";
- };
- };
-
- /*
- * List of motion sensors that creates motion_sensors array.
- * The nodelabel "lid_accel" and "base_accel" are used to indicate
- * motion sensor IDs for lid angle calculation.
- */
- motionsense-sensor {
- lid_accel: lid-accel {
- compatible = "cros-ec,bma255";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3_S5";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- default-range = <2>;
- drv-data = <&bma255_data>;
- i2c-spi-addr-flags = "BMA2x2_I2C_ADDR1_FLAGS";
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base_accel: base-accel {
- compatible = "cros-ec,bmi160-accel";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3_S5";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi160>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi160_data>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
-
- base-gyro {
- compatible = "cros-ec,bmi160-gyro";
- status = "okay";
-
- active-mask = "SENSOR_ACTIVE_S0_S3_S5";
- location = "MOTIONSENSE_LOC_BASE";
- mutex = <&mutex_bmi160>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&base_rot_ref>;
- drv-data = <&bmi160_data>;
- };
- };
-
- /*
- * List of alternative motion sensors that creates
- * motion_sensors_alt array.
- */
- motionsense-sensor-alt {
- alt_lid_accel {
- compatible = "cros-ec,kx022";
- status = "okay";
- active-mask = "SENSOR_ACTIVE_S0_S3_S5";
- location = "MOTIONSENSE_LOC_LID";
- mutex = <&lid_mutex>;
- port = <&i2c_sensor>;
- rot-standard-ref = <&lid_rot_ref>;
- drv-data = <&kx022_data>;
- alternate-for = <&lid_accel>;
- configs {
- compatible =
- "cros-ec,motionsense-sensor-config";
- ec-s0 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- ec-s3 {
- odr = <(10000 | ROUND_UP_FLAG)>;
- };
- };
- };
- };
-
- motionsense-sensor-info {
- compatible = "cros-ec,motionsense-sensor-info";
-
- /*
- * list of GPIO interrupts that have to
- * be enabled at initial stage
- */
- sensor-irqs = <&int_accel>;
- /* list of sensors in force mode */
- accel-force-mode-sensors = <&lid_accel>;
- };
-};
diff --git a/zephyr/program/trogdor/lazor/prj.conf b/zephyr/program/trogdor/lazor/prj.conf
deleted file mode 100644
index 7863c75917..0000000000
--- a/zephyr/program/trogdor/lazor/prj.conf
+++ /dev/null
@@ -1,149 +0,0 @@
-# Copyright 2021 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-CONFIG_CROS_EC=y
-#
-# Lazor actually has a NPCX7M6FC, but
-# the NPCX7M7FC is actually the same die, without the
-# extra RAM being tested. The code size really could
-# do with the extra space, so we pretend the EC is the
-# part with the larger RAM. YMMV.
-#
-CONFIG_SOC_NPCX7M7FC=y
-CONFIG_SOC_SERIES_NPCX7=y
-CONFIG_SHIMMED_TASKS=y
-CONFIG_PLATFORM_EC=y
-CONFIG_PLATFORM_EC_BRINGUP=y
-CONFIG_PLATFORM_EC_EXTPOWER_GPIO=y
-CONFIG_PLATFORM_EC_SWITCH=y
-CONFIG_PLATFORM_EC_LID_SWITCH=y
-CONFIG_PLATFORM_EC_BACKLIGHT_LID=y
-CONFIG_PLATFORM_EC_POWER_BUTTON=y
-
-# LED
-CONFIG_PLATFORM_EC_LED_DT=y
-
-# PWM
-CONFIG_PWM=y
-
-# Application Processor is Qualcomm SC7180
-CONFIG_AP_ARM_QUALCOMM_SC7180=y
-
-# Board version is selected over GPIO board ID pins.
-CONFIG_PLATFORM_EC_BOARD_VERSION_GPIO=y
-
-# LN9310 Switchcap
-CONFIG_PLATFORM_EC_SWITCHCAP_LN9310=y
-
-# Power Sequencing
-CONFIG_PLATFORM_EC_POWERSEQ=y
-CONFIG_PLATFORM_EC_POWERSEQ_HOST_SLEEP=y
-CONFIG_PLATFORM_EC_POWER_SLEEP_FAILURE_DETECTION=y
-CONFIG_PLATFORM_EC_CHIPSET_RESET_HOOK=y
-CONFIG_PLATFORM_EC_CHIPSET_RESUME_INIT_HOOK=y
-
-# Trogdor family does not use EFS2
-CONFIG_PLATFORM_EC_VBOOT_EFS2=n
-
-# MKBP event
-CONFIG_PLATFORM_EC_MKBP_EVENT=y
-CONFIG_PLATFORM_EC_MKBP_USE_GPIO=y
-
-# Keyboard
-CONFIG_PLATFORM_EC_KEYBOARD_PROTOCOL_MKBP=y
-CONFIG_PLATFORM_EC_MKBP_INPUT_DEVICES=y
-CONFIG_PLATFORM_EC_KEYBOARD_COL2_INVERTED=y
-CONFIG_PLATFORM_EC_VOLUME_BUTTONS=y
-CONFIG_PLATFORM_EC_CMD_BUTTON=y
-
-# Battery
-CONFIG_PLATFORM_EC_BATTERY_SMART=y
-CONFIG_PLATFORM_EC_I2C_VIRTUAL_BATTERY=y
-CONFIG_PLATFORM_EC_I2C_PASSTHRU_RESTRICTED=y
-CONFIG_PLATFORM_EC_BATTERY_FUEL_GAUGE=y
-CONFIG_PLATFORM_EC_BATTERY_CUT_OFF=y
-CONFIG_PLATFORM_EC_BATTERY_PRESENT_GPIO=y
-CONFIG_PLATFORM_EC_CHARGER_ISL9238=y
-CONFIG_PLATFORM_EC_CHARGE_RAMP_HW=y
-CONFIG_PLATFORM_EC_USE_BATTERY_DEVICE_CHEMISTRY=y
-CONFIG_PLATFORM_EC_BATTERY_DEVICE_CHEMISTRY="LION"
-CONFIG_PLATFORM_EC_BATTERY_REVIVE_DISCONNECT=y
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC=y
-CONFIG_PLATFORM_EC_CHARGER_DISCHARGE_ON_AC_CHARGER=y
-CONFIG_PLATFORM_EC_CHARGER_MIN_BAT_PCT_FOR_POWER_ON=2
-CONFIG_PLATFORM_EC_CHARGER_MIN_POWER_MW_FOR_POWER_ON=10000
-CONFIG_PLATFORM_EC_CHARGER_MIN_INPUT_CURRENT_LIMIT=512
-CONFIG_PLATFORM_EC_CHARGER_PROFILE_OVERRIDE=y
-CONFIG_PLATFORM_EC_CHARGER_PSYS=y
-CONFIG_PLATFORM_EC_CHARGER_PSYS_READ=y
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR=10
-CONFIG_PLATFORM_EC_CHARGER_SENSE_RESISTOR_AC=20
-CONFIG_PLATFORM_EC_CONSOLE_CMD_CHARGER_ADC_AMON_BMON=y
-
-# USB-C
-CONFIG_PLATFORM_EC_USB_PD_USB32_DRD=n
-CONFIG_PLATFORM_EC_USBC_PPC_SN5S330=y
-CONFIG_PLATFORM_EC_USBC_RETIMER_FW_UPDATE=n
-CONFIG_PLATFORM_EC_USBC_SS_MUX_DFP_ONLY=y
-CONFIG_PLATFORM_EC_USB_DRP_ACC_TRYSRC=y
-CONFIG_PLATFORM_EC_USB_PD_5V_EN_CUSTOM=y
-CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_TCPC=y
-CONFIG_PLATFORM_EC_USB_PD_DISCHARGE_PPC=y
-CONFIG_PLATFORM_EC_USB_PD_REV30=n
-CONFIG_PLATFORM_EC_USB_PD_TBT_COMPAT_MODE=n
-CONFIG_PLATFORM_EC_USB_PD_USB4=n
-CONFIG_PLATFORM_EC_USB_PD_TCPC_LOW_POWER=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_MULTI_PS8XXX=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_PS8751=y
-CONFIG_PLATFORM_EC_USB_PD_TCPM_PS8805=y
-CONFIG_PLATFORM_EC_USB_PD_TCPC_RUNTIME_CONFIG=n
-CONFIG_PLATFORM_EC_USB_MUX_RUNTIME_CONFIG=n
-CONFIG_PLATFORM_EC_USB_PD_LOGGING=y
-
-# USB ID
-# This is allocated specifically for Trogdor
-# http://google3/hardware/standards/usb/
-# TODO(b/183608112): Move to device tree
-CONFIG_PLATFORM_EC_USB_PID=0x5043
-
-# RTC
-CONFIG_PLATFORM_EC_RTC=y
-CONFIG_PLATFORM_EC_HOSTCMD_RTC=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_RTC=y
-
-# EC software sync
-CONFIG_PLATFORM_EC_VBOOT_HASH=y
-
-# Sensors
-CONFIG_PLATFORM_EC_MOTIONSENSE=y
-CONFIG_PLATFORM_EC_ACCEL_FIFO=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCELS=y
-CONFIG_PLATFORM_EC_CONSOLE_CMD_ACCEL_INFO=y
-CONFIG_PLATFORM_EC_GMR_TABLET_MODE=y
-CONFIG_PLATFORM_EC_LID_ANGLE=y
-CONFIG_PLATFORM_EC_LID_ANGLE_UPDATE=y
-CONFIG_PLATFORM_EC_SENSOR_TIGHT_TIMESTAMPS=y
-CONFIG_PLATFORM_EC_TABLET_MODE=y
-CONFIG_PLATFORM_EC_TABLET_MODE_SWITCH=y
-
-# Sensor Drivers
-CONFIG_PLATFORM_EC_ACCEL_BMA255=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI160=y
-CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=y
-
-# Console history
-CONFIG_SHELL_HISTORY=y
-CONFIG_SHELL_CMDS=y
-CONFIG_SHELL_HELP=n
-CONFIG_SHELL_MINIMAL=y
-
-# Taskinfo
-CONFIG_THREAD_MONITOR=y
-CONFIG_KERNEL_SHELL=y
-
-CONFIG_SYSCON=y
-
-# Features should be enabled. But the code RAM is not enough, disable them.
-#CONFIG_PLATFORM_EC_ACCEL_SPOOF_MODE=y
-#CONFIG_PLATFORM_EC_EMULATED_SYSRQ=y
diff --git a/zephyr/program/trogdor/lazor/pwm_led.dts b/zephyr/program/trogdor/lazor/pwm_led.dts
deleted file mode 100644
index f8375b3596..0000000000
--- a/zephyr/program/trogdor/lazor/pwm_led.dts
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- pwmleds {
- compatible = "pwm-leds";
- pwm_y: pwm_y {
- pwms = <&pwm0 0 PWM_HZ(324) PWM_POLARITY_NORMAL>;
- };
- pwm_b: pwm_b {
- pwms = <&pwm2 0 PWM_HZ(324) PWM_POLARITY_NORMAL>;
- };
- };
-
- pwm-led-pins {
- compatible = "cros-ec,pwm-led-pins";
-
- color_off: color-off {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_BATTERY_LED";
- led-pwms = <&pwm_y &pwm_b>;
- led-values = <0 0>;
- };
-
- color_amber: color-amber {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pwms = <&pwm_y &pwm_b>;
- led-values = <100 0>;
- };
-
- color_blue: color-blue {
- led-color = "LED_BLUE";
- led-id = "EC_LED_ID_BATTERY_LED";
- br-color = "EC_LED_COLOR_BLUE";
- led-pwms = <&pwm_y &pwm_b>;
- led-values = <0 100>;
- };
- };
-};
-
-&pwm0 {
- status = "okay";
- pinctrl-0 = <&pwm0_gpc3>;
- pinctrl-names = "default";
-};
-
-&pwm2 {
- status = "okay";
- pinctrl-0 = <&pwm2_gpc4>;
- pinctrl-names = "default";
-};
diff --git a/zephyr/program/trogdor/lazor/src/hibernate.c b/zephyr/program/trogdor/lazor/src/hibernate.c
deleted file mode 100644
index 388ff1b087..0000000000
--- a/zephyr/program/trogdor/lazor/src/hibernate.c
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "common.h"
-#include "sku.h"
-#include "system.h"
-#include "usbc_ppc.h"
-
-void board_hibernate(void)
-{
- int i;
-
- if (!board_is_clamshell()) {
- /*
- * Sensors are unpowered in hibernate. Apply PD to the
- * interrupt lines such that they don't float.
- */
- gpio_pin_configure_dt(
- GPIO_DT_FROM_NODELABEL(gpio_accel_gyro_int_l),
- GPIO_DISCONNECTED);
- gpio_pin_configure_dt(
- GPIO_DT_FROM_NODELABEL(gpio_lid_accel_int_l),
- GPIO_DISCONNECTED);
- }
-
- /*
- * Board rev 5+ has the hardware fix. Don't need the following
- * workaround.
- */
- if (system_get_board_version() >= 5)
- return;
-
- /*
- * Enable the PPC power sink path before EC enters hibernate;
- * otherwise, ACOK won't go High and can't wake EC up. Check the
- * bug b/170324206 for details.
- */
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++)
- ppc_vbus_sink_enable(i, 1);
-}
-
-void board_hibernate_late(void)
-{
- /* Set the hibernate GPIO to turn off the rails */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_hibernate_l), 0);
-}
diff --git a/zephyr/program/trogdor/lazor/src/i2c.c b/zephyr/program/trogdor/lazor/src/i2c.c
deleted file mode 100644
index e572bbdf37..0000000000
--- a/zephyr/program/trogdor/lazor/src/i2c.c
+++ /dev/null
@@ -1,17 +0,0 @@
-/* Copyright 2021 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "i2c.h"
-#include "i2c/i2c.h"
-
-/* Lazor board specific i2c implementation */
-
-#ifdef CONFIG_PLATFORM_EC_I2C_PASSTHRU_RESTRICTED
-int board_allow_i2c_passthru(const struct i2c_cmd_desc_t *cmd_desc)
-{
- return (i2c_get_device_for_port(cmd_desc->port) ==
- i2c_get_device_for_port(I2C_PORT_VIRTUAL_BATTERY));
-}
-#endif
diff --git a/zephyr/program/trogdor/lazor/src/power.c b/zephyr/program/trogdor/lazor/src/power.c
deleted file mode 100644
index ee99c77196..0000000000
--- a/zephyr/program/trogdor/lazor/src/power.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "gpio.h"
-#include "power.h"
-#include "task.h"
-
-#include <zephyr/drivers/gpio.h>
-#include <zephyr/init.h>
-
-#include <ap_power/ap_power.h>
-
-static void board_power_change(struct ap_power_ev_callback *cb,
- struct ap_power_ev_data data)
-{
- switch (data.event) {
- default:
- return;
-
- case AP_POWER_PRE_INIT:
- /* Turn on the 3.3V rail */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_en_pp3300_a), 1);
-
- /* Turn on the 5V rail. */
-#ifdef CONFIG_POWER_PP5000_CONTROL
- power_5v_enable(task_get_current(), 1);
-#else /* !defined(CONFIG_POWER_PP5000_CONTROL) */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_en_pp5000_a), 1);
-#endif /* defined(CONFIG_POWER_PP5000_CONTROL) */
- break;
-
- case AP_POWER_SHUTDOWN_COMPLETE:
- /* Turn off the 5V rail. */
-#ifdef CONFIG_POWER_PP5000_CONTROL
- power_5v_enable(task_get_current(), 0);
-#else /* !defined(CONFIG_POWER_PP5000_CONTROL) */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_en_pp5000_a), 0);
-#endif /* defined(CONFIG_POWER_PP5000_CONTROL) */
-
- /* Turn off the 3.3V and 5V rails. */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_en_pp3300_a), 0);
- break;
- }
-}
-
-static int board_power_handler_init(const struct device *unused)
-{
- static struct ap_power_ev_callback cb;
-
- /* Setup a suspend/resume callback */
- ap_power_ev_init_callback(&cb, board_power_change,
- AP_POWER_PRE_INIT |
- AP_POWER_SHUTDOWN_COMPLETE);
- ap_power_ev_add_callback(&cb);
- return 0;
-}
-SYS_INIT(board_power_handler_init, APPLICATION, 1);
diff --git a/zephyr/program/trogdor/lazor/src/sku.c b/zephyr/program/trogdor/lazor/src/sku.c
deleted file mode 100644
index a6187d422f..0000000000
--- a/zephyr/program/trogdor/lazor/src/sku.c
+++ /dev/null
@@ -1,92 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "common.h"
-#include "config.h"
-#include "console.h"
-#include "driver/ln9310.h"
-#include "hooks.h"
-#include "sku.h"
-#include "system.h"
-#include "tcpm/ps8xxx_public.h"
-#include "util.h"
-
-#define CPRINTS(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-static uint8_t sku_id;
-
-enum board_model {
- LAZOR,
- LIMOZEEN,
- UNKNOWN,
-};
-
-static const char *const model_name[] = {
- "LAZOR",
- "LIMOZEEN",
- "UNKNOWN",
-};
-
-static enum board_model get_model(void)
-{
- if (sku_id == 0 || sku_id == 1 || sku_id == 2 || sku_id == 3)
- return LAZOR;
- if (sku_id == 4 || sku_id == 5 || sku_id == 6)
- return LIMOZEEN;
- return UNKNOWN;
-}
-
-/* Read SKU ID from GPIO and initialize variables for board variants */
-static void sku_init(void)
-{
- sku_id = system_get_sku_id();
- CPRINTS("SKU: %u (%s)", sku_id, model_name[get_model()]);
-}
-DECLARE_HOOK(HOOK_INIT, sku_init, HOOK_PRIO_POST_I2C);
-
-enum battery_cell_type board_get_battery_cell_type(void)
-{
- switch (get_model()) {
- case LIMOZEEN:
- return BATTERY_CELL_TYPE_3S;
- default:
- return BATTERY_CELL_TYPE_UNKNOWN;
- }
-}
-
-int board_is_clamshell(void)
-{
- return get_model() == LIMOZEEN;
-}
-
-__override uint16_t board_get_ps8xxx_product_id(int port)
-{
- /*
- * Lazor (SKU_ID: 0, 1, 2, 3) rev 3+ changes TCPC from PS8751 to
- * PS8805.
- *
- * Limozeen (SKU_ID: 4, 5, 6) all-rev uses PS8805.
- */
- if (get_model() == LAZOR && system_get_board_version() < 3)
- return PS8751_PRODUCT_ID;
-
- return PS8805_PRODUCT_ID;
-}
-
-int board_has_da9313(void)
-{
- return get_model() == LAZOR;
-}
-
-int board_has_buck_ic(void)
-{
- return get_model() == LIMOZEEN && system_get_board_version() >= 8;
-}
-
-int board_has_ln9310(void)
-{
- return get_model() == LIMOZEEN && system_get_board_version() < 8;
-}
diff --git a/zephyr/program/trogdor/lazor/src/switchcap.c b/zephyr/program/trogdor/lazor/src/switchcap.c
deleted file mode 100644
index 77413fb336..0000000000
--- a/zephyr/program/trogdor/lazor/src/switchcap.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "common.h"
-#include "config.h"
-#include "console.h"
-#include "driver/ln9310.h"
-#include "gpio/gpio_int.h"
-#include "hooks.h"
-#include "i2c.h"
-#include "power/qcom.h"
-#include "sku.h"
-#include "system.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTS(format, args...) cprints(CC_I2C, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_I2C, format, ##args)
-
-/* LN9310 switchcap */
-const struct ln9310_config_t ln9310_config = {
- .i2c_port = I2C_PORT_POWER,
- .i2c_addr_flags = LN9310_I2C_ADDR_0_FLAGS,
-};
-
-static void switchcap_init(void)
-{
- if (board_has_da9313()) {
- CPRINTS("Use switchcap: DA9313");
-
- /*
- * When the chip in power down mode, it outputs high-Z.
- * Set pull-down to avoid floating.
- */
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_da9313_gpio0),
- GPIO_INPUT | GPIO_PULL_DOWN);
-
- /*
- * Configure DA9313 enable, push-pull output. Don't set the
- * level here; otherwise, it will override its value and
- * shutdown the switchcap when sysjump to RW.
- */
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_switchcap_on),
- GPIO_OUTPUT);
- } else if (board_has_ln9310()) {
- CPRINTS("Use switchcap: LN9310");
-
- /* Enable interrupt for LN9310 */
- gpio_enable_dt_interrupt(
- GPIO_INT_FROM_NODELABEL(int_switchcap_pg));
-
- /*
- * Configure LN9310 enable, open-drain output. Don't set the
- * level here; otherwise, it will override its value and
- * shutdown the switchcap when sysjump to RW.
- *
- * Note that the gpio.inc configures it GPIO_OUT_LOW. When
- * sysjump to RW, will output push-pull a short period of
- * time. As it outputs LOW, should be fine.
- *
- * This GPIO changes like:
- * (1) EC boots from RO -> high-Z
- * (2) GPIO init according to gpio.inc -> push-pull LOW
- * (3) This function configures it -> open-drain HIGH
- * (4) Power sequence turns on the switchcap -> open-drain LOW
- * (5) EC sysjumps to RW
- * (6) GPIO init according to gpio.inc -> push-pull LOW
- * (7) This function configures it -> open-drain LOW
- */
- gpio_pin_configure_dt(GPIO_DT_FROM_NODELABEL(gpio_switchcap_on),
- GPIO_OUTPUT | GPIO_OPEN_DRAIN);
-
- /* Only configure the switchcap if not sysjump */
- if (!system_jumped_late()) {
- /*
- * Deassert the enable pin, so the
- * switchcap won't be enabled after the switchcap is
- * configured from standby mode to switching mode.
- */
- gpio_pin_set_dt(
- GPIO_DT_FROM_NODELABEL(gpio_switchcap_on), 0);
- ln9310_init();
- }
- } else if (board_has_buck_ic()) {
- CPRINTS("Use Buck IC");
- } else {
- CPRINTS("ERROR: No switchcap solution");
- }
-}
-DECLARE_HOOK(HOOK_INIT, switchcap_init, HOOK_PRIO_DEFAULT);
-
-void board_set_switchcap_power(int enable)
-{
- if (board_has_da9313()) {
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_switchcap_on),
- enable);
- } else if (board_has_ln9310()) {
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_switchcap_on),
- enable);
- ln9310_software_enable(enable);
- } else if (board_has_buck_ic()) {
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_vbob_en), enable);
- }
-}
-
-int board_is_switchcap_enabled(void)
-{
- if (board_has_da9313() || board_has_ln9310())
- return gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_switchcap_on));
-
- /* Board has buck ic*/
- return gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_vbob_en));
-}
-
-int board_is_switchcap_power_good(void)
-{
- if (board_has_da9313())
- return gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_da9313_gpio0));
- else if (board_has_ln9310())
- return ln9310_power_good();
-
- /* Board has buck ic no way to check POWER GOOD */
- return 1;
-}
diff --git a/zephyr/program/trogdor/lazor/src/usb_pd_policy.c b/zephyr/program/trogdor/lazor/src/usb_pd_policy.c
deleted file mode 100644
index 32e3376ca0..0000000000
--- a/zephyr/program/trogdor/lazor/src/usb_pd_policy.c
+++ /dev/null
@@ -1,261 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "charge_manager.h"
-#include "chipset.h"
-#include "console.h"
-#include "system.h"
-#include "usb_mux.h"
-#include "usbc_ppc.h"
-#include "util.h"
-
-#include <zephyr/drivers/gpio.h>
-
-#define CPRINTS(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-int pd_check_vconn_swap(int port)
-{
- /* In G3, do not allow vconn swap since PP5000 rail is off */
- return gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_en_pp5000_a));
-}
-
-static uint8_t vbus_en[CONFIG_USB_PD_PORT_MAX_COUNT];
-#if CONFIG_USB_PD_PORT_MAX_COUNT == 1
-static uint8_t vbus_rp[CONFIG_USB_PD_PORT_MAX_COUNT] = { TYPEC_RP_1A5 };
-#else
-static uint8_t vbus_rp[CONFIG_USB_PD_PORT_MAX_COUNT] = { TYPEC_RP_1A5,
- TYPEC_RP_1A5 };
-#endif
-
-static void board_vbus_update_source_current(int port)
-{
- /* Both port are controlled by PPC SN5S330. */
- ppc_set_vbus_source_current_limit(port, vbus_rp[port]);
- ppc_vbus_source_enable(port, vbus_en[port]);
-}
-
-void pd_power_supply_reset(int port)
-{
- int prev_en;
-
- prev_en = vbus_en[port];
-
- /* Disable VBUS */
- vbus_en[port] = 0;
- board_vbus_update_source_current(port);
-
- /* Enable discharge if we were previously sourcing 5V */
- if (prev_en)
- pd_set_vbus_discharge(port, 1);
-
- /* notify host of power info change */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-}
-
-int pd_set_power_supply_ready(int port)
-{
- /* Disable charging */
- board_vbus_sink_enable(port, 0);
-
- pd_set_vbus_discharge(port, 0);
-
- /* Provide VBUS */
- vbus_en[port] = 1;
- board_vbus_update_source_current(port);
-
- /* notify host of power info change */
- pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- return EC_SUCCESS; /* we are ready */
-}
-
-int board_vbus_source_enabled(int port)
-{
- return vbus_en[port];
-}
-
-__override void typec_set_source_current_limit(int port, enum tcpc_rp_value rp)
-{
- vbus_rp[port] = rp;
- board_vbus_update_source_current(port);
-}
-
-int pd_snk_is_vbus_provided(int port)
-{
- return tcpm_check_vbus_level(port, VBUS_PRESENT);
-}
-
-/* ----------------- Vendor Defined Messages ------------------ */
-#ifdef CONFIG_USB_PD_ALT_MODE_DFP
-__override int svdm_dp_config(int port, uint32_t *payload)
-{
- int opos = pd_alt_mode(port, TCPCI_MSG_SOP, USB_SID_DISPLAYPORT);
- uint8_t pin_mode = get_dp_pin_mode(port);
-
- if (!pin_mode)
- return 0;
-
- /*
- * Defer setting the usb_mux until HPD goes high, svdm_dp_attention().
- * The AP only supports one DP phy. An external DP mux switches between
- * the two ports. Should switch those muxes when it is really used,
- * i.e. HPD high; otherwise, the real use case is preempted, like:
- * (1) plug a dongle without monitor connected to port-0,
- * (2) plug a dongle without monitor connected to port-1,
- * (3) plug a monitor to the port-1 dongle.
- */
-
- payload[0] =
- VDO(USB_SID_DISPLAYPORT, 1, CMD_DP_CONFIG | VDO_OPOS(opos));
- payload[1] = VDO_DP_CFG(pin_mode, /* pin mode */
- 1, /* DPv1.3 signaling */
- 2); /* UFP connected */
- return 2;
-};
-
-__override void svdm_dp_post_config(int port)
-{
- dp_flags[port] |= DP_FLAGS_DP_ON;
-}
-
-/**
- * Is the port fine to be muxed its DisplayPort lines?
- *
- * Only one port can be muxed to DisplayPort at a time.
- *
- * @param port Port number of TCPC.
- * @return 1 is fine; 0 is bad as other port is already muxed;
- */
-static int is_dp_muxable(int port)
-{
- int i;
-
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++)
- if (i != port) {
- if (usb_mux_get(i) & USB_PD_MUX_DP_ENABLED)
- return 0;
- }
-
- return 1;
-}
-
-__override int svdm_dp_attention(int port, uint32_t *payload)
-{
- const struct gpio_dt_spec *hpd =
- GPIO_DT_FROM_NODELABEL(gpio_dp_hot_plug_det);
- int lvl = PD_VDO_DPSTS_HPD_LVL(payload[1]);
- int irq = PD_VDO_DPSTS_HPD_IRQ(payload[1]);
- int cur_lvl = gpio_pin_get_dt(hpd);
- mux_state_t mux_state;
-
- dp_status[port] = payload[1];
-
- if (!is_dp_muxable(port)) {
- /* TODO(waihong): Info user? */
- CPRINTS("p%d: The other port is already muxed.", port);
- return 0;
- }
-
- /*
- * Initial implementation to handle HPD. Only the first-plugged port
- * works, i.e. sending HPD signal to AP. The second-plugged port
- * will be ignored.
- *
- * TODO(waihong): Continue the above case, if the first-plugged port
- * is then unplugged, switch to the second-plugged port and signal AP?
- */
- if (lvl) {
- /*
- * Enable and switch the DP port selection mux to the
- * correct port.
- *
- * TODO(waihong): Better to move switching DP mux to
- * the usb_mux abstraction.
- */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_mux_sel),
- port == 1);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_mux_oe_l), 0);
-
- /* Connect the SBU lines in PPC chip. */
- if (IS_ENABLED(CONFIG_USBC_PPC_SBU))
- ppc_set_sbu(port, 1);
-
- /*
- * Connect the USB SS/DP lines in TCPC chip.
- *
- * When mf_pref not true, still use the dock muxing
- * because of the board USB-C topology (limited to 2
- * lanes DP).
- */
- usb_mux_set(port, USB_PD_MUX_DOCK, USB_SWITCH_CONNECT,
- polarity_rm_dts(pd_get_polarity(port)));
- } else {
- /* Disconnect the DP port selection mux. */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_mux_oe_l), 1);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_mux_sel), 0);
-
- /* Disconnect the SBU lines in PPC chip. */
- if (IS_ENABLED(CONFIG_USBC_PPC_SBU))
- ppc_set_sbu(port, 0);
-
- /* Disconnect the DP but keep the USB SS lines in TCPC chip. */
- usb_mux_set(port, USB_PD_MUX_USB_ENABLED, USB_SWITCH_CONNECT,
- polarity_rm_dts(pd_get_polarity(port)));
- }
-
- if (chipset_in_state(CHIPSET_STATE_ANY_SUSPEND) && (irq || lvl))
- /*
- * Wake up the AP. IRQ or level high indicates a DP sink is now
- * present.
- */
- pd_notify_dp_alt_mode_entry(port);
-
- /* Configure TCPC for the HPD event, for proper muxing */
- mux_state = (lvl ? USB_PD_MUX_HPD_LVL : USB_PD_MUX_HPD_LVL_DEASSERTED) |
- (irq ? USB_PD_MUX_HPD_IRQ : USB_PD_MUX_HPD_IRQ_DEASSERTED);
- usb_mux_hpd_update(port, mux_state);
-
- /* Signal AP for the HPD event, through GPIO to AP */
- if (irq & cur_lvl) {
- uint64_t now = get_time().val;
- /* Wait for the minimum spacing between IRQ_HPD if needed */
- if (now < svdm_hpd_deadline[port])
- usleep(svdm_hpd_deadline[port] - now);
-
- /* Generate IRQ_HPD pulse */
- gpio_pin_set_dt(hpd, 0);
- usleep(HPD_DSTREAM_DEBOUNCE_IRQ);
- gpio_pin_set_dt(hpd, 1);
-
- /* Set the minimum time delay (2ms) for the next HPD IRQ */
- svdm_hpd_deadline[port] =
- get_time().val + HPD_USTREAM_DEBOUNCE_LVL;
- } else if (irq & !lvl) {
- CPRINTF("ERR:HPD:IRQ&LOW\n");
- return 0;
- }
- gpio_pin_set_dt(hpd, lvl);
- /* Set the minimum time delay (2ms) for the next HPD IRQ */
- svdm_hpd_deadline[port] = get_time().val + HPD_USTREAM_DEBOUNCE_LVL;
-
- return 1;
-}
-
-__override void svdm_exit_dp_mode(int port)
-{
- if (is_dp_muxable(port)) {
- /* Disconnect the DP port selection mux. */
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_mux_oe_l), 1);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_mux_sel), 0);
-
- /* Signal AP for the HPD low event */
- usb_mux_hpd_update(port, USB_PD_MUX_HPD_LVL_DEASSERTED |
- USB_PD_MUX_HPD_IRQ_DEASSERTED);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_dp_hot_plug_det),
- 0);
- }
-}
-#endif /* CONFIG_USB_PD_ALT_MODE_DFP */
diff --git a/zephyr/program/trogdor/lazor/src/usbc_config.c b/zephyr/program/trogdor/lazor/src/usbc_config.c
deleted file mode 100644
index d7d5ca2cc1..0000000000
--- a/zephyr/program/trogdor/lazor/src/usbc_config.c
+++ /dev/null
@@ -1,334 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/* Lazor board-specific USB-C configuration */
-
-#include "battery_fuel_gauge.h"
-#include "bc12/pi3usb9201_public.h"
-#include "charge_manager.h"
-#include "charge_state.h"
-#include "charger.h"
-#include "charger/isl923x_public.h"
-#include "common.h"
-#include "config.h"
-#include "driver/ln9310.h"
-#include "gpio/gpio_int.h"
-#include "gpio_signal.h"
-#include "hooks.h"
-#include "ppc/sn5s330_public.h"
-#include "system.h"
-#include "tcpm/ps8xxx_public.h"
-#include "tcpm/tcpci.h"
-#include "timer.h"
-#include "usb_mux.h"
-#include "usb_pd.h"
-#include "usbc_ocp.h"
-#include "usbc_ppc.h"
-
-#define CPRINTS(format, args...) cprints(CC_USBCHARGE, format, ##args)
-#define CPRINTF(format, args...) cprintf(CC_USBCHARGE, format, ##args)
-
-int charger_profile_override(struct charge_state_data *curr)
-{
- int usb_mv;
- int port;
-
- if (curr->state != ST_CHARGE)
- return 0;
-
- /* Lower the max requested voltage to 5V when battery is full. */
- if (chipset_in_state(CHIPSET_STATE_ANY_OFF) &&
- !(curr->batt.flags & BATT_FLAG_BAD_STATUS) &&
- !(curr->batt.flags & BATT_FLAG_WANT_CHARGE) &&
- (curr->batt.status & STATUS_FULLY_CHARGED))
- usb_mv = 5000;
- else
- usb_mv = PD_MAX_VOLTAGE_MV;
-
- if (pd_get_max_voltage() != usb_mv) {
- CPRINTS("VBUS limited to %dmV", usb_mv);
- for (port = 0; port < CONFIG_USB_PD_PORT_MAX_COUNT; port++)
- pd_set_external_voltage_limit(port, usb_mv);
- }
-
- return 0;
-}
-
-enum ec_status charger_profile_override_get_param(uint32_t param,
- uint32_t *value)
-{
- return EC_RES_INVALID_PARAM;
-}
-
-enum ec_status charger_profile_override_set_param(uint32_t param,
- uint32_t value)
-{
- return EC_RES_INVALID_PARAM;
-}
-
-static void usba_oc_deferred(void)
-{
- /* Use next number after all USB-C ports to indicate the USB-A port */
- board_overcurrent_event(
- CONFIG_USB_PD_PORT_MAX_COUNT,
- !gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_a0_oc_odl)));
-}
-DECLARE_DEFERRED(usba_oc_deferred);
-
-void usba_oc_interrupt(enum gpio_signal signal)
-{
- hook_call_deferred(&usba_oc_deferred_data, 0);
-}
-
-void ppc_interrupt(enum gpio_signal signal)
-{
- switch (signal) {
- case GPIO_SIGNAL(DT_NODELABEL(gpio_usb_c0_swctl_int_odl)):
- sn5s330_interrupt(0);
- break;
- case GPIO_SIGNAL(DT_NODELABEL(gpio_usb_c1_swctl_int_odl)):
- sn5s330_interrupt(1);
- break;
- default:
- break;
- }
-}
-
-static void board_connect_c0_sbu_deferred(void)
-{
- /*
- * If CCD_MODE_ODL asserts, it means there's a debug accessory connected
- * and we should enable the SBU FETs.
- */
- ppc_set_sbu(0, 1);
-}
-DECLARE_DEFERRED(board_connect_c0_sbu_deferred);
-
-void board_connect_c0_sbu(enum gpio_signal s)
-{
- hook_call_deferred(&board_connect_c0_sbu_deferred_data, 0);
-}
-
-/* GPIO Interrupt Handlers */
-void tcpc_alert_event(enum gpio_signal signal)
-{
- int port = -1;
-
- switch (signal) {
- case GPIO_USB_C0_PD_INT_ODL:
- port = 0;
- break;
- case GPIO_USB_C1_PD_INT_ODL:
- port = 1;
- break;
- default:
- return;
- }
-
- schedule_deferred_pd_interrupt(port);
-}
-
-/*
- * Port-0/1 USB mux driver.
- *
- * The USB mux is handled by TCPC chip and the HPD update is through a GPIO
- * to AP. But the TCPC chip is also needed to know the HPD status; otherwise,
- * the mux misbehaves.
- */
-const struct usb_mux_chain usb_muxes[CONFIG_USB_PD_PORT_MAX_COUNT] = {
- {
- .mux =
- &(const struct usb_mux){
- .usb_port = 0,
- .driver = &tcpci_tcpm_usb_mux_driver,
- .hpd_update = &ps8xxx_tcpc_update_hpd_status,
- },
- },
- {
- .mux =
- &(const struct usb_mux){
- .usb_port = 1,
- .driver = &tcpci_tcpm_usb_mux_driver,
- .hpd_update = &ps8xxx_tcpc_update_hpd_status,
- },
- }
-};
-
-__override int board_get_default_battery_type(void)
-{
- /*
- * A 2S battery is set as default. If the board is configured to use
- * a 3S battery, according to its SKU_ID, return a 3S battery as
- * default. It helps to configure the charger to output a correct
- * voltage in case the battery is not attached.
- */
- if (board_get_battery_cell_type() == BATTERY_CELL_TYPE_3S)
- return BATTERY_LGC_AP18C8K;
-
- return DEFAULT_BATTERY_TYPE;
-}
-
-/* Initialize board USC-C things */
-static void board_init_usbc(void)
-{
- /* Enable USB-A overcurrent interrupt */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_a0_oc));
- /*
- * The H1 SBU line for CCD are behind PPC chip. The PPC internal FETs
- * for SBU may be disconnected after DP alt mode is off. Should enable
- * the CCD_MODE_ODL interrupt to make sure the SBU FETs are connected.
- */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_ccd_mode));
-}
-DECLARE_HOOK(HOOK_INIT, board_init_usbc, HOOK_PRIO_DEFAULT);
-
-void board_tcpc_init(void)
-{
- /* Only reset TCPC if not sysjump */
- if (!system_jumped_late()) {
- /* TODO(crosbug.com/p/61098): How long do we need to wait? */
- board_reset_pd_mcu();
- }
-
- /* Enable PPC interrupts */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_swctl));
-
- /* Enable TCPC interrupts */
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c0_tcpc));
- gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_usb_c1_tcpc));
-
- /*
- * Initialize HPD to low; after sysjump SOC needs to see
- * HPD pulse to enable video path
- */
- for (int port = 0; port < CONFIG_USB_PD_PORT_MAX_COUNT; ++port)
- usb_mux_hpd_update(port, USB_PD_MUX_HPD_LVL_DEASSERTED |
- USB_PD_MUX_HPD_IRQ_DEASSERTED);
-}
-DECLARE_HOOK(HOOK_INIT, board_tcpc_init, HOOK_PRIO_POST_I2C);
-
-void board_reset_pd_mcu(void)
-{
- cprints(CC_USB, "Resetting TCPCs...");
- cflush();
-
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_pd_rst_l), 0);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c1_pd_rst_l), 0);
- msleep(PS8XXX_RESET_DELAY_MS);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_pd_rst_l), 1);
- gpio_pin_set_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c1_pd_rst_l), 1);
-}
-
-void board_set_tcpc_power_mode(int port, int mode)
-{
- /* Ignore the "mode" to turn the chip on. We can only do a reset. */
- if (mode)
- return;
-
- board_reset_pd_mcu();
-}
-
-int board_vbus_sink_enable(int port, int enable)
-{
- /* Both ports are controlled by PPC SN5S330 */
- return ppc_vbus_sink_enable(port, enable);
-}
-
-int board_is_sourcing_vbus(int port)
-{
- /* Both ports are controlled by PPC SN5S330 */
- return ppc_is_sourcing_vbus(port);
-}
-
-void board_overcurrent_event(int port, int is_overcurrented)
-{
- /* TODO(b/120231371): Notify AP */
- CPRINTS("p%d: overcurrent!", port);
-}
-
-int board_set_active_charge_port(int port)
-{
- int is_real_port = (port >= 0 && port < CONFIG_USB_PD_PORT_MAX_COUNT);
- int i;
-
- if (!is_real_port && port != CHARGE_PORT_NONE)
- return EC_ERROR_INVAL;
-
- if (port == CHARGE_PORT_NONE) {
- CPRINTS("Disabling all charging port");
-
- /* Disable all ports. */
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- /*
- * Do not return early if one fails otherwise we can
- * get into a boot loop assertion failure.
- */
- if (board_vbus_sink_enable(i, 0))
- CPRINTS("Disabling p%d sink path failed.", i);
- }
-
- return EC_SUCCESS;
- }
-
- /* Check if the port is sourcing VBUS. */
- if (board_is_sourcing_vbus(port)) {
- CPRINTS("Skip enable p%d", port);
- return EC_ERROR_INVAL;
- }
-
- CPRINTS("New charge port: p%d", port);
-
- /*
- * Turn off the other ports' sink path FETs, before enabling the
- * requested charge port.
- */
- for (i = 0; i < CONFIG_USB_PD_PORT_MAX_COUNT; i++) {
- if (i == port)
- continue;
-
- if (board_vbus_sink_enable(i, 0))
- CPRINTS("p%d: sink path disable failed.", i);
- }
-
- /* Enable requested charge port. */
- if (board_vbus_sink_enable(port, 1)) {
- CPRINTS("p%d: sink path enable failed.", port);
- return EC_ERROR_UNKNOWN;
- }
-
- return EC_SUCCESS;
-}
-
-__override void board_set_charge_limit(int port, int supplier, int charge_ma,
- int max_ma, int charge_mv)
-{
- /*
- * Ignore lower charge ceiling on PD transition if our battery is
- * critical, as we may brownout.
- */
- if (supplier == CHARGE_SUPPLIER_PD && charge_ma < 1500 &&
- charge_get_percent() < CONFIG_CHARGER_MIN_BAT_PCT_FOR_POWER_ON) {
- CPRINTS("Using max ilim %d", max_ma);
- charge_ma = max_ma;
- }
-
- charge_set_input_current_limit(charge_ma, charge_mv);
-}
-
-uint16_t tcpc_get_alert_status(void)
-{
- uint16_t status = 0;
-
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c0_pd_int_odl)))
- if (gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_usb_c0_pd_rst_l)))
- status |= PD_STATUS_TCPC_ALERT_0;
- if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c1_pd_int_odl)))
- if (gpio_pin_get_dt(
- GPIO_DT_FROM_NODELABEL(gpio_usb_c1_pd_rst_l)))
- status |= PD_STATUS_TCPC_ALERT_1;
-
- return status;
-}
diff --git a/zephyr/program/trogdor/lazor/usbc.dts b/zephyr/program/trogdor/lazor/usbc.dts
deleted file mode 100644
index 7864c2716b..0000000000
--- a/zephyr/program/trogdor/lazor/usbc.dts
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2022 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/ {
- usbc {
- #address-cells = <1>;
- #size-cells = <0>;
-
- /* TODO(b/227359762): lazor: move UBC-C configuration into the
- * devicetree
- */
- port0@0 {
- compatible = "named-usbc-port";
- reg = <0>;
-
- bc12 = <&bc12_port0>;
- tcpc = <&tcpc_port0>;
-
- ppc = <&ppc_port0>;
-
- chg = <&charger>;
- };
-
- port1@1 {
- compatible = "named-usbc-port";
- reg = <1>;
-
- bc12 = <&bc12_port1>;
- tcpc = <&tcpc_port1>;
-
- ppc = <&ppc_port1>;
- };
- };
-};