[PATCH 3/3] [v6] pinctrl: qcom: qdf2xxx: add support for new ACPI HID QCOM8002
From: Timur Tabi <hidden>
Date: 2017-12-19 01:18:10
Also in:
linux-arm-msm, linux-gpio
Stephen, any follow-up to this? I'd like to get these patches into 4.16 if at all possible. Thanks. On 12/13/17 5:09 PM, Timur Tabi wrote:
On 12/13/2017 05:01 PM, Stephen Boyd wrote:quoted
Given that we have MAX_GPIOS, it would be better to declare a bitmap of available gpios of that size on the stack and then iterate through the bitmap and set bits for the available ones. In the QCOM8001 case, that would be setting all bits up to num_gpios, and in the QCOM8002 case it would be iterating through the list of gpios from the DSD property and setting the bit for that gpio number.? This avoids explicitly allocating a list of numbers that is freed almost immediately. Instead we just stack 256 / sizeof(unsigned long) words and set bits.I'm not sure I understand.? The only think I'm allocating temporarily is the 'gpios' array, which is an array of shorts.? Each element stores the gpio number.? It's not a bit array, so "256 / sizeof(unsigned long)" doesn't apply.? I need that array to read the DSD.? You can't iterate through an DSD property without reading it completely first.quoted
Hopefully we could lift the same logic into the core pinctrl msm driver for usage on non-ACPI systems.There is no new memory allocation being done in pinctrl-msm, so I don't understand this either.
-- Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc. Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project.