Skip to content

PENDING: arm64: dts: qcom: monaco-evk: fix overlay stacking and PHY reset polarity#994

Open
ayaan-anwar wants to merge 1 commit intoqualcomm-linux:tech/overlay/dtfrom
ayaan-anwar:monaco_staging_qps615_fix
Open

PENDING: arm64: dts: qcom: monaco-evk: fix overlay stacking and PHY reset polarity#994
ayaan-anwar wants to merge 1 commit intoqualcomm-linux:tech/overlay/dtfrom
ayaan-anwar:monaco_staging_qps615_fix

Conversation

@ayaan-anwar
Copy link
Copy Markdown
Contributor

Fix issues with the Monaco EVK IFP Mezz staging overlay for QPS615:

  1. Setting the VendorDtbOverlays EFI variable to "staging" causes UEFI
    to fail the overlay application entirely. The staging overlay
    references &eeprom1, a label introduced by the ifp-mezzanine
    overlay. When overlays are stacked, ufdt does not propagate
    symbols from previously applied overlays into the working DTB,
    so &eeprom1 cannot be resolved as a fixup target and the firmware
    aborts with FDT_ERR_NOTFOUND. Fix this by defining the eeprom node
    inline under &i2c15, which is present in the base DTB symbols.

  2. The QCA8081 port does not come out of reset and is therefore never
    detected. The PHY reset line is declared GPIO_ACTIVE_HIGH, but the
    QCA8081 has an active-low reset input. With GPIO_ACTIVE_HIGH the
    driver's deassert call maps logical 0 to physical LOW, holding
    RESETN asserted throughout probe. Correct it to GPIO_ACTIVE_LOW.

CRs-Fixed: 4510876

…eset polarity

Fix issues with the Monaco EVK IFP Mezz staging overlay for QPS615:

1) Setting the VendorDtbOverlays EFI variable to "staging" causes UEFI
   to fail the overlay application entirely. The staging overlay
   references &eeprom1, a label introduced by the ifp-mezzanine
   overlay. When overlays are stacked, ufdt does not propagate
   __symbols__ from previously applied overlays into the working DTB,
   so &eeprom1 cannot be resolved as a fixup target and the firmware
   aborts with FDT_ERR_NOTFOUND. Fix this by defining the eeprom node
   inline under &i2c15, which is present in the base DTB __symbols__.

2) The QCA8081 port does not come out of reset and is therefore never
   detected. The PHY reset line is declared GPIO_ACTIVE_HIGH, but the
   QCA8081 has an active-low reset input. With GPIO_ACTIVE_HIGH the
   driver's deassert call maps logical 0 to physical LOW, holding
   RESETN asserted throughout probe. Correct it to GPIO_ACTIVE_LOW.

Signed-off-by: Mohd Ayaan Anwar <mohd.anwar@oss.qualcomm.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant