mb/google/trulo/var/pujjocento: Add P-sensor support
Apply DRIVERS_I2C_SX9324 Apply DRIVERS_I2C_SX9324_SUPPORT_LEGACY_LINUX_DRIVER GPIO changes: GPP_B7 ==> I2C_P_SENSOR_SDA GPP_B8 ==> I2C_P_SENSOR_SCL GPP_H19 ==> P_SENSOR_INT_L BUG=b:417176908 TEST=Build and verify on pujjocento Device list: cat /sys/bus/iio/devices/iio\:device0/name sx9324 The value of register 01 when away: i2cget -f -y 13 0x28 01 0x00 The value of register 01 when approaching: i2cget -f -y 13 0x28 01 0x01 Change-Id: Ie5543f592876c1ebfbb39049f00fe7fe171c8e2f Signed-off-by: Zhaoxiong Lv <lvzhaoxiong@huaqin.corp-partner.google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/87743 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Subrata Banik <subratabanik@google.com> Reviewed-by: Eric Lai <ericllai@google.com>
This commit is contained in:
parent
04c0527aba
commit
47133a716d
3 changed files with 78 additions and 3 deletions
|
|
@ -516,6 +516,8 @@ config BOARD_GOOGLE_PUJJONIRU
|
|||
|
||||
config BOARD_GOOGLE_PUJJOCENTO
|
||||
select BOARD_GOOGLE_BASEBOARD_TRULO
|
||||
select DRIVERS_I2C_SX9324
|
||||
select DRIVERS_I2C_SX9324_SUPPORT_LEGACY_LINUX_DRIVER
|
||||
select MAINBOARD_HAS_GOOGLE_STRAUSS_KEYBOARD
|
||||
select SOC_INTEL_COMMON_BLOCK_HDA_VERB
|
||||
select SOC_INTEL_TCSS_USE_PDC_PMC_USBC_MUX_CONFIGURATION
|
||||
|
|
|
|||
|
|
@ -66,9 +66,9 @@ static const struct pad_config gpio_table[] = {
|
|||
/* B6 : GPP_B6 ==> ISH_I2C0_SENSOR_SDA */
|
||||
PAD_CFG_NF_IOSTANDBY_IGNORE(GPP_B6, NONE, DEEP, NF1),
|
||||
/* B7 : I2C3_SDA ==> SOC_I2C_SAR_SDA */
|
||||
PAD_CFG_NF_LOCK(GPP_B7, NONE, NF2, LOCK_CONFIG),
|
||||
PAD_CFG_NF(GPP_B7, NONE, DEEP, NF2),
|
||||
/* B8 : I2C3_SCL ==> SOC_I2C_SAR_SCL */
|
||||
PAD_CFG_NF_LOCK(GPP_B8, NONE, NF2, LOCK_CONFIG),
|
||||
PAD_CFG_NF(GPP_B8, NONE, DEEP, NF2),
|
||||
/* B9 : Not available */
|
||||
PAD_NC(GPP_B9, NONE),
|
||||
/* B10 : Not available */
|
||||
|
|
|
|||
|
|
@ -81,7 +81,7 @@ chip soc/intel/alderlake
|
|||
[PchSerialIoIndexI2C0] = PchSerialIoPci,
|
||||
[PchSerialIoIndexI2C1] = PchSerialIoPci,
|
||||
[PchSerialIoIndexI2C2] = PchSerialIoDisabled,
|
||||
[PchSerialIoIndexI2C3] = PchSerialIoDisabled,
|
||||
[PchSerialIoIndexI2C3] = PchSerialIoPci,
|
||||
[PchSerialIoIndexI2C4] = PchSerialIoDisabled,
|
||||
[PchSerialIoIndexI2C5] = PchSerialIoPci,
|
||||
}"
|
||||
|
|
@ -109,6 +109,7 @@ chip soc/intel/alderlake
|
|||
#| | required to set up a BAR |
|
||||
#| | for TPM communication |
|
||||
#| I2C1 | Trackpad |
|
||||
#| I2C3 | P-sensor |
|
||||
#+-------------------+---------------------------+
|
||||
register "common_soc_config" = "{
|
||||
.i2c[0] = {
|
||||
|
|
@ -130,6 +131,15 @@ chip soc/intel/alderlake
|
|||
.sda_hold = 7,
|
||||
}
|
||||
},
|
||||
.i2c[3] = {
|
||||
.speed = I2C_SPEED_FAST,
|
||||
.speed_config[0] = {
|
||||
.speed = I2C_SPEED_FAST,
|
||||
.scl_lcnt = 158,
|
||||
.scl_hcnt = 79,
|
||||
.sda_hold = 7,
|
||||
}
|
||||
},
|
||||
.i2c[5] = {
|
||||
.speed = I2C_SPEED_FAST,
|
||||
.speed_config[0] = {
|
||||
|
|
@ -539,6 +549,69 @@ chip soc/intel/alderlake
|
|||
device i2c 24 on end
|
||||
end
|
||||
end #I2C1
|
||||
device ref i2c3 on
|
||||
chip drivers/i2c/sx9324
|
||||
register "desc" = ""SAR Proximity Sensor""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_H19_IRQ)"
|
||||
register "speed" = "I2C_SPEED_FAST"
|
||||
register "uid" = "1"
|
||||
register "reg_irq_cfg0" = "0x00"
|
||||
register "reg_irq_cfg1" = "0x80"
|
||||
register "reg_irq_cfg2" = "0x00"
|
||||
register "reg_gnrl_ctrl0" = "0x16"
|
||||
register "reg_gnrl_ctrl1" = "0x25"
|
||||
register "reg_afe_ctrl0" = "0x20"
|
||||
register "reg_afe_ctrl1" = "0x10"
|
||||
register "reg_afe_ctrl2" = "0x00"
|
||||
register "reg_afe_ctrl3" = "0x00"
|
||||
register "reg_afe_ctrl4" = "0x86"
|
||||
register "reg_afe_ctrl5" = "0x00"
|
||||
register "reg_afe_ctrl6" = "0x00"
|
||||
register "reg_afe_ctrl7" = "0x86"
|
||||
register "reg_afe_ctrl8" = "0x12"
|
||||
register "reg_afe_ctrl9" = "0x0F"
|
||||
register "reg_prox_ctrl0" = "0x09"
|
||||
register "reg_prox_ctrl1" = "0x09"
|
||||
register "reg_prox_ctrl2" = "0x20"
|
||||
register "reg_prox_ctrl3" = "0x60"
|
||||
register "reg_prox_ctrl4" = "0x0c"
|
||||
register "reg_prox_ctrl5" = "0x00"
|
||||
register "reg_prox_ctrl6" = "0x2C"
|
||||
register "reg_prox_ctrl7" = "0xFF"
|
||||
register "reg_adv_ctrl0" = "0x00"
|
||||
register "reg_adv_ctrl1" = "0x00"
|
||||
register "reg_adv_ctrl2" = "0x04"
|
||||
register "reg_adv_ctrl3" = "0x00"
|
||||
register "reg_adv_ctrl4" = "0x00"
|
||||
register "reg_adv_ctrl5" = "0x05"
|
||||
register "reg_adv_ctrl6" = "0x00"
|
||||
register "reg_adv_ctrl7" = "0x00"
|
||||
register "reg_adv_ctrl8" = "0x00"
|
||||
register "reg_adv_ctrl9" = "0x00"
|
||||
register "reg_adv_ctrl10" = "0x00"
|
||||
register "reg_adv_ctrl11" = "0x00"
|
||||
register "reg_adv_ctrl12" = "0x00"
|
||||
register "reg_adv_ctrl16" = "0x00"
|
||||
register "reg_adv_ctrl17" = "0x00"
|
||||
register "reg_adv_ctrl18" = "0x00"
|
||||
|
||||
register "ph0_pin" = "{3, 1, 3}"
|
||||
register "ph1_pin" = "{1, 3, 3}"
|
||||
register "ph2_pin" = "{3, 3, 1}"
|
||||
register "ph3_pin" = "{3, 3, 3}"
|
||||
register "ph01_resolution" = "512"
|
||||
register "ph23_resolution" = "512"
|
||||
register "startup_sensor" = "1"
|
||||
register "ph01_proxraw_strength" = "1"
|
||||
register "ph23_proxraw_strength" = "1"
|
||||
register "avg_pos_strength" = "256"
|
||||
register "cs_idle_sleep" = ""gnd""
|
||||
register "int_comp_resistor" = ""lowest""
|
||||
register "input_precharge_resistor_ohms" = "4000"
|
||||
register "input_analog_gain" = "3"
|
||||
device i2c 28 on end
|
||||
end
|
||||
end
|
||||
device ref i2c5 on
|
||||
chip drivers/i2c/hid
|
||||
register "generic.hid" = ""FTCS1000""
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue