gh #153 dsHdmiIn: Update documentation on calling selectport before calling all APIs as prerequisite#167
Conversation
| * e.g: the @pre condition other than initialization is not met | ||
| * | ||
| * @pre dsHdmiInInit() must be called before calling this API | ||
| * @pre dsHdmiInInit() and dsHdmiInSelectPort() must be called before calling this API. |
There was a problem hiding this comment.
dsIsHdmiARCPort is a platform capability API. It shouldn't need dsHdmiInSelectPort() before calling this API
| * e.g: the @pre condition other than initialization is not met | ||
| * | ||
| * @pre dsHdmiInInit() must be called before calling this API | ||
| * @pre dsHdmiInInit() and dsHdmiInSelectPort() must be called before calling this API |
There was a problem hiding this comment.
I believe EDID Version setting should work even without dsHdmiInSelectPort(). @bijasbabu ?
| * e.g: the @pre condition other than initialization is not met | ||
| * | ||
| * @pre dsHdmiInInit() must be called before calling this API | ||
| * @pre dsHdmiInInit() and dsHdmiInSelectPort() must be called before calling this API |
There was a problem hiding this comment.
I believe EDID Version get should work even without dsHdmiInSelectPort(). @bijasbabu ?
| * e.g: the @pre condition other than initialization is not met | ||
| * | ||
| * @pre dsHdmiInInit() must be called before calling this API | ||
| * @pre dsHdmiInInit() and dsHdmiInSelectPort() must be called before calling this API |
There was a problem hiding this comment.
ALLM support in TV Edid can be altered without selecting the port.
| * e.g: the @pre condition other than initialization is not met | ||
| * | ||
| * @pre dsHdmiInInit() must be called before calling this API | ||
| * @pre dsHdmiInInit() and dsHdmiInSelectPort() must be called before calling this API |
There was a problem hiding this comment.
I guess dsGetHdmiVersion is a platform capability. We should not need to select port to get this. @bijasbabu ?
| * e.g: the @pre condition other than initialization is not met | ||
| * | ||
| * @pre dsHdmiInInit() must be called before calling this API | ||
| * @pre dsHdmiInInit() and dsHdmiInSelectPort() must be called before calling this API |
There was a problem hiding this comment.
dsHdmiInGetVRRSupport is a platform capability. Guess shouldn't need to select port for this. @bijasbabu ?
| * e.g: the @pre condition other than initialization is not met | ||
| * | ||
| * @pre dsHdmiInInit() must be called before calling this API | ||
| * @pre dsHdmiInInit() and dsHdmiInSelectPort() must be called before calling this API |
There was a problem hiding this comment.
@bijasbabu is dsHdmiInSetVRRSupport an EDID operation? If so, guess we don't need to call Select Port?
|
@bijasbabu , can you please address the review comments please so that we can work on the PR accordingly? |
|
Triage note (#167, ~290 days old, last activity ~108 days ago): This PR addresses #153 (dsHdmiIn doc: calling selectport before other APIs). Similar pattern to #152 — a 108-day-ago touch suggests partial revival, then silence. Status: BEHIND main; #153 still open. Suggested next step: author check-in. If still relevant, rebase + drive to merge; otherwise close as stale. |
The test case test_l1_dsHdmiIn_positive_dsGetHDMISPDInfo_sink is failing because dsHdmiInSelectPort() is not being called before GetSpdInfo.
Regarding the dsHDMIIn port APIs, we've observed that some of the APIs list "Select Port" as a prerequisite, while others do not explicitly mention it. From discussion, understanding is that for any port-related activity, selecting the port beforehand is essential—even if it's not explicitly documented as a prerequisite. However, we need to clarify a few key points:
API Behavior Without Port Selection:
What is the return behaviour of the respective APIs when the port is not selected? Do they return a success code (e.g., ALL_OK) or a specific error indicating the missing port selection? This is critical for verification through VTS tests to ensure compliance with the specification.
Data Access Without Port Selection:
In cases where the API does not explicitly require port selection, does it still retrieve or process data correctly if the port hasn't been selected?
Additionally, there’s a need to standardize and enhance the documentation to ensure consistent and clear information across all APIs. Below is the API-specific information currently gathered by the team:
API's which doesn't have pre-requisite to call dsHdmiInSelectPort(): dsIsHdmiARCPort, dsGetEDIDBytesInfo, dsGetHDMISPDInfo, dsSetEdidVersion, dsGetEdidVersion, dsGetAllmStatus, dsGetAVLatency dsSetEdid2AllmSupport dsGetHdmiVersion dsHdmiInGetVRRSupport dsHdmiInSetVRRSupport dsHdmiInGetVRRStatus