Skip to content

tlmm: qcom: add gpio and pinctrl driver - #18

Closed
siva-potu wants to merge 10 commits into
qualcomm-linux:qcom-nextfrom
siva-potu:qcom/tlmm-driver
Closed

siva-potu wants to merge 10 commits into
qualcomm-linux:qcom-nextfrom
siva-potu:qcom/tlmm-driver

Conversation

@siva-potu

Copy link
Copy Markdown
Contributor

No description provided.

Organizes PAS clock support under platform/$(PLATFORM_FLAVOR)/ so
future platforms can provide their own PAS clock implementation.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
Move all Kodiak-specific logic and the PTA command handlers into
platform/kodiak/, and model each subsystem with a descriptor/ops
abstraction: every platform exposes a table via
qcom_pas_platform_subsys() that the generic pas_core.c drives.
Pure structural refactor.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
Add qcom_clock_lucidevo_pll_enable(), a self-contained helper that
configures, locks and enables the main output of a Lucid-EVO PLL given its
register block base and a struct qcom_lucidevo_pll_config.

No caller yet; this provides the building block for per-processor PLL
bring-up.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
Bring up the Compute DSP (CDSP0/1) via the PAS peripheral
authentication path on the Lemans platform.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
Each PAS subsystem maps its controller window at runtime via
core_mmu_add_mapping(); these late mappings come from
CFG_RESERVED_VASPACE_SIZE and are never released. The six DSP windows
total ~146.5 MB but the previous 60 MB default fits only one, so
reserve 256 MB to cover them with headroom.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
Add LPASS / ADSP (QDSP6 v68/v69) PAS bring-up for the Lemans platform
(IQ-9075-EVK), following the existing Lemans CDSP0/1 PAS + clock-driver
pattern and the Kodiak LPASS PTA layout.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
After boot the static memory map is frozen at count + 5 entries, so
core_mmu_add_mapping() failed once those spare slots were exhausted.

Grow the map through the same realloc hook as every other add path,
re-resolving RES_VASPACE afterwards.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
Add the IRIS video-codec PAS driver for lemans, mirroring the kodiak
venus driver (which already targets IRIS hardware). The lemans IRIS
register layout is identical: WRAPPER_TZ at IRIS+0xc0000 with the same
XTSS_SW_RESET / FW / CPA / NONPIX offsets.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
Add PAS bring-up for the two general-purpose Hexagon DSPs on Lemans
(SA8775P): GP-DSP0 (TURINGGDSP, image id 39) and GP-DSP1 (TURINGGDSP1,
image id 40). This follows the same architecture as the existing
CDSP0/1, LPASS and IRIS subsystems.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
Signed-off-by: Siva Rama Krishna Potu <spotu@qti.qualcomm.com>
@b49020

Copy link
Copy Markdown
Member

Please rebase on tip of qcom-next

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cleanup the comments on all the files please. it is hard to see the code.
static functions should be self explanatory - actually all the code should be written in such a way that function names help understand the flow.

comments should be the exception not the norm

};
DECLARE_KEEP_PAGER(tlmm_gpio_ops);

/* -------------------------------------------------------------------------

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove these sort of unnecessary comments. we want to see the code not the comments

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll rebase on qcom-next and clean up all this.

@@ -0,0 +1,325 @@
// SPDX-License-Identifier: BSD-2-Clause
/*
* Qualcomm TLMM pinctrl driver — non-DT implementation.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we dont want to maintain all of these comments... remove them

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sure

@siva-potu

Copy link
Copy Markdown
Contributor Author

Recreated as #23, rebased on qcom-next. Closing this one in favor of the new PR.

@siva-potu siva-potu closed this Jul 14, 2026
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.

4 participants