Attention is currently required from: Kane Chen, Chris Wang, chris wang.
chris wang has uploaded a new patch set (#7) to the change originally created by Kane Chen. ( https://review.coreboot.org/c/coreboot/+/51523 )
Change subject: mb/google/zork/var/shuboz: update USB OC pin mapping
......................................................................
mb/google/zork/var/shuboz: update USB OC pin mapping
modify USB OC pin setting for Shuboz, as follow:
usb_port_overcurrent_pin[0] = "USB_OC_PIN_0" # USB C0
usb_port_overcurrent_pin[1] = "USB_OC_PIN_0" # USB A0
usb_port_overcurrent_pin[2] = "USB_OC_NONE" # NONE
usb_port_overcurrent_pin[3] = "USB_OC_PIN_1" # USB C1
BUG=b:182879559
BRANCH=zork
TEST=emerge-zork coreboot
Signed-off-by: Kane Chen <kane_chen(a)pegatron.corp-partner.google.com>
Change-Id: Icc1fa090109e6be54e2a5f49e364f5502f53aca2
---
M src/mainboard/google/zork/variants/baseboard/helpers.c
M src/mainboard/google/zork/variants/baseboard/include/baseboard/variants.h
M src/mainboard/google/zork/variants/shuboz/variant.c
3 files changed, 31 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/23/51523/7
--
To view, visit https://review.coreboot.org/c/coreboot/+/51523
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Icc1fa090109e6be54e2a5f49e364f5502f53aca2
Gerrit-Change-Number: 51523
Gerrit-PatchSet: 7
Gerrit-Owner: Kane Chen <kane_chen(a)pegatron.corp-partner.google.com>
Gerrit-Reviewer: Chris Wang <chris.wang(a)amd.corp-partner.google.com>
Gerrit-Reviewer: Kane Chen <kane_chen(a)pegatron.corp-partner.google.com>
Gerrit-Reviewer: Kangheui Won <khwon(a)chromium.org>
Gerrit-Reviewer: Martin Roth <martinroth(a)google.com>
Gerrit-Reviewer: Patrick Georgi <pgeorgi(a)google.com>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-CC: Frank Chu <frank_chu(a)pegatron.corp-partner.google.com>
Gerrit-CC: Hank Lin <hank2_lin(a)pegatron.corp-partner.google.com>
Gerrit-CC: Ken Lu <ken_lu(a)pegatron.corp-partner.google.com>
Gerrit-CC: Paul Menzel <paulepanter(a)mailbox.org>
Gerrit-Attention: Kane Chen <kane_chen(a)pegatron.corp-partner.google.com>
Gerrit-Attention: Chris Wang <chris.wang(a)amd.corp-partner.google.com>
Gerrit-Attention: chris wang <Chris.Wang(a)amd.com>
Gerrit-MessageType: newpatchset
Arthur Heymans has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/54030 )
Change subject: Documentation/releases: Update checklist
......................................................................
Patch Set 1: Code-Review+2
--
To view, visit https://review.coreboot.org/c/coreboot/+/54030
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I49e6dfe22894402d5a0526588f8a04595ac88862
Gerrit-Change-Number: 54030
Gerrit-PatchSet: 1
Gerrit-Owner: Patrick Georgi <pgeorgi(a)google.com>
Gerrit-Reviewer: Arthur Heymans <arthur(a)aheymans.xyz>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-Comment-Date: Tue, 11 May 2021 12:45:37 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Arthur Heymans has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/54029 )
Change subject: Documentation: Update vboot support list
......................................................................
Patch Set 1: Code-Review+2
--
To view, visit https://review.coreboot.org/c/coreboot/+/54029
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I49536c26540c0fd1940a32f588fa49afb55b108a
Gerrit-Change-Number: 54029
Gerrit-PatchSet: 1
Gerrit-Owner: Patrick Georgi <pgeorgi(a)google.com>
Gerrit-Reviewer: Arthur Heymans <arthur(a)aheymans.xyz>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-Comment-Date: Tue, 11 May 2021 12:45:16 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: Chris Wang.
build bot (Jenkins) has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/51523 )
Change subject: mb/google/zork/var/shuboz: update USB OC pin mapping
......................................................................
Patch Set 6:
(3 comments)
File src/mainboard/google/zork/variants/baseboard/helpers.c:
Robot Comment from checkpatch (run ID jenkins-coreboot-checkpatch-118985):
https://review.coreboot.org/c/coreboot/+/51523/comment/aaa2bec2_d0fffa04
PS6, Line 117: return !!extract_field(FW_CONFIG_MASK_LID_ANGLE_TABLET_MODE, FW_CONFIG_LID_ANGLE_TABLET_MODE_SHIFT);
line over 96 characters
File src/mainboard/google/zork/variants/shuboz/variant.c:
Robot Comment from checkpatch (run ID jenkins-coreboot-checkpatch-118985):
https://review.coreboot.org/c/coreboot/+/51523/comment/985cb345_74889992
PS6, Line 7: uint32_t usb_oc_map_override [USB_PORT_COUNT] = {
space prohibited before open square bracket '['
Robot Comment from checkpatch (run ID jenkins-coreboot-checkpatch-118985):
https://review.coreboot.org/c/coreboot/+/51523/comment/5d051ee8_90245845
PS6, Line 55: }
adding a line without newline at end of file
--
To view, visit https://review.coreboot.org/c/coreboot/+/51523
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Icc1fa090109e6be54e2a5f49e364f5502f53aca2
Gerrit-Change-Number: 51523
Gerrit-PatchSet: 6
Gerrit-Owner: Kane Chen <kane_chen(a)pegatron.corp-partner.google.com>
Gerrit-Reviewer: Chris Wang <chris.wang(a)amd.corp-partner.google.com>
Gerrit-Reviewer: Kane Chen <kane_chen(a)pegatron.corp-partner.google.com>
Gerrit-Reviewer: Kangheui Won <khwon(a)chromium.org>
Gerrit-Reviewer: Martin Roth <martinroth(a)google.com>
Gerrit-Reviewer: Patrick Georgi <pgeorgi(a)google.com>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-CC: Frank Chu <frank_chu(a)pegatron.corp-partner.google.com>
Gerrit-CC: Hank Lin <hank2_lin(a)pegatron.corp-partner.google.com>
Gerrit-CC: Ken Lu <ken_lu(a)pegatron.corp-partner.google.com>
Gerrit-CC: Paul Menzel <paulepanter(a)mailbox.org>
Gerrit-Attention: Chris Wang <chris.wang(a)amd.corp-partner.google.com>
Gerrit-Comment-Date: Tue, 11 May 2021 12:40:40 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: Chris Wang.
chris wang has uploaded a new patch set (#6) to the change originally created by Kane Chen. ( https://review.coreboot.org/c/coreboot/+/51523 )
Change subject: mb/google/zork/var/shuboz: update USB OC pin mapping
......................................................................
mb/google/zork/var/shuboz: update USB OC pin mapping
modify USB OC pin setting for Shuboz, as follow:
usb_port_overcurrent_pin[0] = "USB_OC_PIN_0" # USB C0
usb_port_overcurrent_pin[1] = "USB_OC_PIN_0" # USB A0
usb_port_overcurrent_pin[2] = "USB_OC_NONE" # NONE
usb_port_overcurrent_pin[3] = "USB_OC_PIN_1" # USB C1
BUG=b:182879559
BRANCH=zork
TEST=emerge-zork coreboot
Signed-off-by: Kane Chen <kane_chen(a)pegatron.corp-partner.google.com>
Change-Id: Icc1fa090109e6be54e2a5f49e364f5502f53aca2
---
M src/mainboard/google/zork/variants/baseboard/helpers.c
M src/mainboard/google/zork/variants/baseboard/include/baseboard/variants.h
M src/mainboard/google/zork/variants/shuboz/variant.c
3 files changed, 29 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/23/51523/6
--
To view, visit https://review.coreboot.org/c/coreboot/+/51523
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Icc1fa090109e6be54e2a5f49e364f5502f53aca2
Gerrit-Change-Number: 51523
Gerrit-PatchSet: 6
Gerrit-Owner: Kane Chen <kane_chen(a)pegatron.corp-partner.google.com>
Gerrit-Reviewer: Chris Wang <chris.wang(a)amd.corp-partner.google.com>
Gerrit-Reviewer: Kane Chen <kane_chen(a)pegatron.corp-partner.google.com>
Gerrit-Reviewer: Kangheui Won <khwon(a)chromium.org>
Gerrit-Reviewer: Martin Roth <martinroth(a)google.com>
Gerrit-Reviewer: Patrick Georgi <pgeorgi(a)google.com>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-CC: Frank Chu <frank_chu(a)pegatron.corp-partner.google.com>
Gerrit-CC: Hank Lin <hank2_lin(a)pegatron.corp-partner.google.com>
Gerrit-CC: Ken Lu <ken_lu(a)pegatron.corp-partner.google.com>
Gerrit-CC: Paul Menzel <paulepanter(a)mailbox.org>
Gerrit-Attention: Chris Wang <chris.wang(a)amd.corp-partner.google.com>
Gerrit-MessageType: newpatchset
Attention is currently required from: David Wu, Furquan Shaikh, Henry Sun, Karthik Ramasubramanian.
Marco Chen has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/52851 )
Change subject: mb/google/dedede/var/magolor: Select touchscreen based on SSFC in FW_CONFIG
......................................................................
Patch Set 6:
(2 comments)
File src/mainboard/google/dedede/variants/magolor/overridetree.cb:
https://review.coreboot.org/c/coreboot/+/52851/comment/21598624_af1f952a
PS5, Line 2: field CAMERA_WFC 38 40
> Different variants have different components and different sources. […]
* Definition of SSFC bits in coreboot per variant or baseboard is all fine to me so nothing we need to decide / change here.
* The real issue is that the same range of SSFC bits here is defined in coreboot for camera_wfc (variant level) but also is defined in EC (baseboard) for USB mux options. Therefore once in the future Magolor also needs to have multi-sources of USB mux then this same range of SSFC bits will be conflict between camera_wfc in coreboot and USB mux in EC.
File src/mainboard/google/dedede/variants/magolor/overridetree.cb:
https://review.coreboot.org/c/coreboot/+/52851/comment/a6a623a5_7544a83e
PS6, Line 208: 10
> Can we not program the touch panel to use a different I2C address to solve this issue? […]
* partners mentioned that this panel is leveraged from other platform bound with touchscreen chip together so from supply management point of view, partners would like to keep them as the same part instead of configuring other slave address from FW level (vendor confirmed new slave address is set in FW level) which make them as two parts. As a result, it introduced the conflict in address here.
* Agree with you that options per touchscreen would be ideal and the reason of having this option is just because it is a compromised way to limit the options.
* Hi ODM team, could we change it to per touchscreen instead of panel size? And factory can still leverage EDID from panel to identify the touchscreen chip.
--
To view, visit https://review.coreboot.org/c/coreboot/+/52851
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I087ea677a8865fc8c5b3f7c9773bd7f97924dbb3
Gerrit-Change-Number: 52851
Gerrit-PatchSet: 6
Gerrit-Owner: David Wu <david_wu(a)quanta.corp-partner.google.com>
Gerrit-Reviewer: Furquan Shaikh <furquan(a)google.com>
Gerrit-Reviewer: Henry Sun <henrysun(a)google.com>
Gerrit-Reviewer: Karthik Ramasubramanian <kramasub(a)google.com>
Gerrit-Reviewer: Marco Chen <marcochen(a)google.com>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-Attention: David Wu <david_wu(a)quanta.corp-partner.google.com>
Gerrit-Attention: Furquan Shaikh <furquan(a)google.com>
Gerrit-Attention: Henry Sun <henrysun(a)google.com>
Gerrit-Attention: Karthik Ramasubramanian <kramasub(a)google.com>
Gerrit-Comment-Date: Tue, 11 May 2021 12:23:26 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Marco Chen <marcochen(a)google.com>
Comment-In-Reply-To: Karthik Ramasubramanian <kramasub(a)google.com>
Gerrit-MessageType: comment
Nico Huber has submitted this change. ( https://review.coreboot.org/c/libgfxinit/+/51133 )
Change subject: Add support to switch LSPCON modes
......................................................................
Add support to switch LSPCON modes
LSPCON is a level shifter and protocol converter chip. It is principally
used to convert DisplayPort into HDMI 2.0, since some Intel iGPUs do not
have native HDMI 2.0 support. The chip defaults to LS mode, in which the
display engine has to generate an HDMI-protocol signal, which the LSPCON
converts from DisplayPort signal levels to HDMI signal levels.
Add code to detect LSPCON chips and put them in protocol-converter mode.
This way, the LSPCON behaves like a regular DisplayPort sink. This needs
to be done before any DPCD accesses, because the LSPCON does not respond
to DPCD accesses in level-shifter mode.
Tested on Purism Librem Mini v1 (WHL-U), HDMI port can now light up.
Change-Id: Idfa9bdff47a6591000cd5092d64a4cd4f8dbdc8d
Signed-off-by: Angel Pons <th3fanbus(a)gmail.com>
Reviewed-on: https://review.coreboot.org/c/libgfxinit/+/51133
Reviewed-by: Matt DeVillier <matt.devillier(a)gmail.com>
Reviewed-by: Nico Huber <nico.h(a)gmx.de>
---
M common/Makefile.inc
A common/hw-gfx-dp_dual_mode.adb
A common/hw-gfx-dp_dual_mode.ads
M common/hw-gfx-gma-connector_info.adb
A common/hw-gfx-gma-dp_dual_mode.ads
5 files changed, 265 insertions(+), 0 deletions(-)
Approvals:
Angel Pons: Verified
Nico Huber: Looks good to me, approved
Matt DeVillier: Looks good to me, but someone else must approve
diff --git a/common/Makefile.inc b/common/Makefile.inc
index b1ed074..2d18703 100644
--- a/common/Makefile.inc
+++ b/common/Makefile.inc
@@ -1,6 +1,8 @@
gfxinit-y += hw-gfx-dp_aux_ch.adb
gfxinit-y += hw-gfx-dp_aux_ch.ads
gfxinit-y += hw-gfx-dp_defs.ads
+gfxinit-y += hw-gfx-dp_dual_mode.adb
+gfxinit-y += hw-gfx-dp_dual_mode.ads
gfxinit-y += hw-gfx-dp_info.adb
gfxinit-y += hw-gfx-dp_info.ads
gfxinit-y += hw-gfx-dp_training.adb
@@ -17,6 +19,7 @@
gfxinit-y += hw-gfx-gma-dp_aux_ch.ads
gfxinit-y += hw-gfx-gma-dp_aux_request.adb
gfxinit-y += hw-gfx-gma-dp_aux_request.ads
+gfxinit-y += hw-gfx-gma-dp_dual_mode.ads
gfxinit-y += hw-gfx-gma-dp_info.ads
gfxinit-y += hw-gfx-gma-i2c.adb
gfxinit-y += hw-gfx-gma-i2c.ads
diff --git a/common/hw-gfx-dp_dual_mode.adb b/common/hw-gfx-dp_dual_mode.adb
new file mode 100644
index 0000000..595f8f3
--- /dev/null
+++ b/common/hw-gfx-dp_dual_mode.adb
@@ -0,0 +1,210 @@
+--
+-- Copyright (C) 2021 Angel Pons <th3fanbus(a)gmail.com>
+--
+-- This program is free software; you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation; either version 2 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+
+with HW.Debug;
+with HW.Time;
+with GNAT.Source_Info;
+
+with HW.GFX.DP_Defs;
+with HW.GFX.I2C;
+
+use type HW.Word8;
+
+package body HW.GFX.DP_Dual_Mode is
+
+ DUAL_MODE_I2C_ADDR : constant := 16#40#;
+
+ DUAL_MODE_ADAPTOR_ID : constant := 16#10#;
+ LSPCON_MODE_CHANGE : constant := 16#40#;
+ LSPCON_CURRENT_MODE : constant := 16#41#;
+
+ LSPCON_MODE_LS : constant := 0;
+ LSPCON_MODE_PCON : constant := 1;
+
+ procedure Read_LSPCON_Mode
+ (Port : in T;
+ Mode : out Word8;
+ Success : out Boolean)
+ is
+ begin
+ pragma Debug (Debug.Put_Line (GNAT.Source_Info.Enclosing_Entity));
+ for I in 1 .. 6 loop
+ Aux_Ch.I2C_Read_Byte
+ (Port => Port,
+ Address => DUAL_MODE_I2C_ADDR,
+ Offset => LSPCON_CURRENT_MODE,
+ Value => Mode,
+ Success => Success);
+ exit when Success;
+ Time.U_Delay (500);
+ end loop;
+ end Read_LSPCON_Mode;
+
+ procedure Write_LSPCON_Mode
+ (Port : in T;
+ Mode : in Word8;
+ Success : out Boolean)
+ is
+ begin
+ pragma Debug (Debug.Put_Line (GNAT.Source_Info.Enclosing_Entity));
+ for I in 1 .. 6 loop
+ Aux_Ch.I2C_Write_Byte
+ (Port => Port,
+ Address => DUAL_MODE_I2C_ADDR,
+ Offset => LSPCON_MODE_CHANGE,
+ Value => Mode,
+ Success => Success);
+ exit when Success;
+ Time.U_Delay (500);
+ end loop;
+ end Write_LSPCON_Mode;
+
+ pragma Warnings
+ (GNATprove, Off, "subprogram ""Dump_LSPCON_Mode"" has no effect",
+ Reason => "It's only used for debugging");
+ procedure Dump_LSPCON_Mode (Mode : in Word8)
+ is
+ begin
+ pragma Debug (Debug.Put ("Current LSPCON mode: "));
+ case Mode is
+ when LSPCON_MODE_LS => pragma Debug (Debug.Put_Line ("Level Shifter"));
+ when LSPCON_MODE_PCON => pragma Debug (Debug.Put_Line ("Protocol Converter"));
+ when others =>
+ pragma Debug (Debug.Put ("Unknown ("));
+ pragma Debug (Debug.Put_Word8 (Mode));
+ pragma Debug (Debug.Put_Line (")"));
+ end case;
+ end Dump_LSPCON_Mode;
+
+ procedure Auto_Configure_LSPCON (Port : in T)
+ is
+ Wanted_Mode : constant Word8 := LSPCON_MODE_PCON;
+ Timeout : Time.T;
+ Timed_Out : Boolean;
+ Success : Boolean;
+ Mode : Word8;
+ begin
+ pragma Debug (Debug.Put_Line (GNAT.Source_Info.Enclosing_Entity));
+
+ Read_LSPCON_Mode (Port, Mode, Success);
+
+ if not Success then
+ pragma Debug (Debug.Put_Line ("Could not determine LSPCON mode."));
+ return;
+ end if;
+
+ Dump_LSPCON_Mode (Mode);
+
+ if Mode = Wanted_Mode then
+ pragma Debug (Debug.Put_Line ("LSPCON mode is good enough."));
+ return;
+ end if;
+
+ -- Change to PCON mode if necessary
+ Write_LSPCON_Mode (Port, Wanted_Mode, Success);
+
+ if not Success then
+ pragma Debug (Debug.Put_Line ("Could not write new LSPCON mode."));
+ return;
+ end if;
+
+ Timeout := Time.MS_From_Now (2000);
+ loop
+ Read_LSPCON_Mode (Port, Mode, Success);
+
+ if not Success then
+ pragma Debug (Debug.Put_Line ("Could not confirm LSPCON mode change."));
+ return;
+ end if;
+
+ if Mode = Wanted_Mode then
+ pragma Debug (Debug.Put_Line ("Successfully set LSPCON to PCON mode."));
+ return;
+ end if;
+
+ Timed_Out := Time.Timed_Out (Timeout);
+ exit when Timed_Out;
+ end loop;
+
+ pragma Debug (Debug.Put_Line ("Timed out waiting for LSPCON mode change."));
+ Dump_LSPCON_Mode (Mode);
+ end Auto_Configure_LSPCON;
+
+ subtype HDMI_ID_Index is Natural range 0 .. 15;
+ subtype HDMI_ID_Data is Buffer (HDMI_ID_Index);
+
+ procedure Read_Dual_Mode_HDMI_ID
+ (Port : in T;
+ HDMI_ID : out HDMI_ID_Data;
+ Success : out Boolean)
+ is
+ Length : I2C.Transfer_Length := HDMI_ID'Length;
+ Buffer : I2C.Transfer_Data;
+ begin
+ Aux_Ch.I2C_Read
+ (Port => Port,
+ Address => DUAL_MODE_I2C_ADDR,
+ Length => Length,
+ Data => Buffer,
+ Success => Success);
+
+ Success := Success and then Length = HDMI_ID'Length;
+ if Success then
+ HDMI_ID := Buffer (HDMI_ID'Range);
+ else
+ HDMI_ID := HDMI_ID_Data'(others => 0);
+ end if;
+ end Read_Dual_Mode_HDMI_ID;
+
+ function Is_HDMI_Adaptor (Actual_ID : in HDMI_ID_Data) return Boolean
+ is
+ -- "DP-HDMI ADAPTOR\x04"
+ Expected_ID : constant HDMI_ID_Data :=
+ (16#44#, 16#50#, 16#2d#, 16#48#, 16#44#, 16#4d#, 16#49#, 16#20#,
+ 16#41#, 16#44#, 16#41#, 16#50#, 16#54#, 16#4f#, 16#52#, 16#04#);
+ begin
+ return Expected_ID = Actual_ID;
+ end Is_HDMI_Adaptor;
+
+ procedure Detect_LSPCON (Port : in T; Success : out Boolean)
+ is
+ HDMI_ID : HDMI_ID_Data;
+ Adaptor_ID : Word8;
+ begin
+ Read_Dual_Mode_HDMI_ID (Port, HDMI_ID, Success);
+ Success := Success and then Is_HDMI_Adaptor (HDMI_ID);
+ if Success then
+ Aux_Ch.I2C_Read_Byte
+ (Port => Port,
+ Address => DUAL_MODE_I2C_ADDR,
+ Offset => DUAL_MODE_ADAPTOR_ID,
+ Value => Adaptor_ID,
+ Success => Success);
+
+ Success := Success and then Adaptor_ID = 16#a8#;
+ end if;
+ end Detect_LSPCON;
+
+ procedure Switch_LSPCON (Port : in T)
+ is
+ Has_LSPCON : Boolean;
+ begin
+ pragma Debug (Debug.Put_Line (GNAT.Source_Info.Enclosing_Entity));
+ Detect_LSPCON (Port, Has_LSPCON);
+ if Has_LSPCON then
+ Auto_Configure_LSPCON (Port);
+ end if;
+ end Switch_LSPCON;
+
+end HW.GFX.DP_Dual_Mode;
diff --git a/common/hw-gfx-dp_dual_mode.ads b/common/hw-gfx-dp_dual_mode.ads
new file mode 100644
index 0000000..3f4dd45
--- /dev/null
+++ b/common/hw-gfx-dp_dual_mode.ads
@@ -0,0 +1,27 @@
+--
+-- Copyright (C) 2021 Angel Pons <th3fanbus(a)gmail.com>
+--
+-- This program is free software; you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation; either version 2 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+
+with HW.GFX.DP_Aux_Ch;
+
+private generic
+
+ type T (<>) is limited private;
+
+ with package Aux_Ch is new DP_Aux_Ch (T => T, others => <>);
+
+package HW.GFX.DP_Dual_Mode is
+
+ procedure Switch_LSPCON (Port : in T);
+
+end HW.GFX.DP_Dual_Mode;
diff --git a/common/hw-gfx-gma-connector_info.adb b/common/hw-gfx-gma-connector_info.adb
index dcbed2e..d611309 100644
--- a/common/hw-gfx-gma-connector_info.adb
+++ b/common/hw-gfx-gma-connector_info.adb
@@ -14,6 +14,7 @@
with HW.GFX.GMA.Config;
with HW.GFX.GMA.Panel;
+with HW.GFX.GMA.DP_Dual_Mode;
with HW.GFX.GMA.DP_Info;
with HW.Debug;
@@ -44,6 +45,8 @@
Panel.On (Port_Cfg.Panel);
end if;
+ DP_Dual_Mode.Switch_LSPCON (DP_Port);
+
DP_Info.Read_Caps
(Link => Port_Cfg.DP,
Port => DP_Port,
diff --git a/common/hw-gfx-gma-dp_dual_mode.ads b/common/hw-gfx-gma-dp_dual_mode.ads
new file mode 100644
index 0000000..6457928
--- /dev/null
+++ b/common/hw-gfx-gma-dp_dual_mode.ads
@@ -0,0 +1,22 @@
+--
+-- Copyright (C) 2021 Angel Pons <th3fanbus(a)gmail.com>
+--
+-- This program is free software; you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation; either version 2 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+
+with HW.GFX.DP_Dual_Mode;
+pragma Elaborate_All (HW.GFX.DP_Dual_Mode);
+with HW.GFX.GMA.DP_Aux_Ch;
+
+private package HW.GFX.GMA.DP_Dual_Mode
+ is new HW.GFX.DP_Dual_Mode
+ (T => DP_Port,
+ Aux_Ch => DP_Aux_Ch);
--
To view, visit https://review.coreboot.org/c/libgfxinit/+/51133
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: libgfxinit
Gerrit-Branch: master
Gerrit-Change-Id: Idfa9bdff47a6591000cd5092d64a4cd4f8dbdc8d
Gerrit-Change-Number: 51133
Gerrit-PatchSet: 13
Gerrit-Owner: Angel Pons <th3fanbus(a)gmail.com>
Gerrit-Reviewer: Angel Pons <th3fanbus(a)gmail.com>
Gerrit-Reviewer: Martin Roth <martinroth(a)google.com>
Gerrit-Reviewer: Matt DeVillier <matt.devillier(a)gmail.com>
Gerrit-Reviewer: Nico Huber <nico.h(a)gmx.de>
Gerrit-Reviewer: Patrick Georgi <pgeorgi(a)google.com>
Gerrit-CC: Paul Menzel <paulepanter(a)mailbox.org>
Gerrit-MessageType: merged
Attention is currently required from: Martin Roth, Matt DeVillier, Angel Pons.
Nico Huber has posted comments on this change. ( https://review.coreboot.org/c/libgfxinit/+/51133 )
Change subject: Add support to switch LSPCON modes
......................................................................
Patch Set 12:
(1 comment)
File common/hw-gfx-dp_dual_mode.adb:
https://review.coreboot.org/c/libgfxinit/+/51133/comment/4161666c_4ad76ca8
PS11, Line 87: end case;
> SPARK still complains ðŸ˜
Wasn't sure. What is missing would be a contract for the HW.Debug procedures
that makes side-effects visible to SPARK.
--
To view, visit https://review.coreboot.org/c/libgfxinit/+/51133
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: libgfxinit
Gerrit-Branch: master
Gerrit-Change-Id: Idfa9bdff47a6591000cd5092d64a4cd4f8dbdc8d
Gerrit-Change-Number: 51133
Gerrit-PatchSet: 12
Gerrit-Owner: Angel Pons <th3fanbus(a)gmail.com>
Gerrit-Reviewer: Angel Pons <th3fanbus(a)gmail.com>
Gerrit-Reviewer: Martin Roth <martinroth(a)google.com>
Gerrit-Reviewer: Matt DeVillier <matt.devillier(a)gmail.com>
Gerrit-Reviewer: Nico Huber <nico.h(a)gmx.de>
Gerrit-Reviewer: Patrick Georgi <pgeorgi(a)google.com>
Gerrit-CC: Paul Menzel <paulepanter(a)mailbox.org>
Gerrit-Attention: Martin Roth <martinroth(a)google.com>
Gerrit-Attention: Matt DeVillier <matt.devillier(a)gmail.com>
Gerrit-Attention: Angel Pons <th3fanbus(a)gmail.com>
Gerrit-Comment-Date: Tue, 11 May 2021 12:11:10 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Nico Huber <nico.h(a)gmx.de>
Comment-In-Reply-To: Angel Pons <th3fanbus(a)gmail.com>
Gerrit-MessageType: comment
Attention is currently required from: Kevin Chang, Henry Sun, Paul Menzel, Marco Chen.
Marco Chen has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/52878 )
Change subject: mb/google/octopus/var/phaser: add audio codec into SSFC support for Phaser
......................................................................
Patch Set 8: Code-Review+2
--
To view, visit https://review.coreboot.org/c/coreboot/+/52878
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I202f71f57ad2db84fb90b52f9ffd7a1fd05494a3
Gerrit-Change-Number: 52878
Gerrit-PatchSet: 8
Gerrit-Owner: Kevin Chang <kevin.chang(a)lcfc.corp-partner.google.com>
Gerrit-Reviewer: Henry Sun <henrysun(a)google.com>
Gerrit-Reviewer: Marco Chen <marcochen(a)chromium.org>
Gerrit-Reviewer: Marco Chen <marcochen(a)google.com>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-CC: Paul Menzel <paulepanter(a)mailbox.org>
Gerrit-CC: Tiffany Li <tiffany.li(a)lcfc.corp-partner.google.com>
Gerrit-Attention: Kevin Chang <kevin.chang(a)lcfc.corp-partner.google.com>
Gerrit-Attention: Henry Sun <henrysun(a)google.com>
Gerrit-Attention: Paul Menzel <paulepanter(a)mailbox.org>
Gerrit-Attention: Marco Chen <marcochen(a)chromium.org>
Gerrit-Comment-Date: Tue, 11 May 2021 12:06:50 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment