#
d0f2df40 |
| 25-Oct-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Move ->remove closer to ->probe()
Consolidate ->remove and ->probe() callbacks for better maintenance.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy
pinctrl: lynxpoint: Move ->remove closer to ->probe()
Consolidate ->remove and ->probe() callbacks for better maintenance.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
21a06495 |
| 25-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Extract lp_gpio_acpi_use() for future use
We may need this function for other features in the pin control driver.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-of
pinctrl: lynxpoint: Extract lp_gpio_acpi_use() for future use
We may need this function for other features in the pin control driver.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
Revision tags: v5.3.7, v5.3.6, v5.3.5, v5.3.4, v5.3.3, v5.3.2, v5.3.1, v5.3, v5.2.14, v5.3-rc8, v5.2.13, v5.2.12, v5.2.11, v5.2.10, v5.2.9, v5.2.8, v5.2.7, v5.2.6, v5.2.5, v5.2.4, v5.2.3, v5.2.2, v5.2.1, v5.2, v5.1.16, v5.1.15, v5.1.14, v5.1.13, v5.1.12, v5.1.11, v5.1.10, v5.1.9, v5.1.8, v5.1.7, v5.1.6, v5.1.5, v5.1.4, v5.1.3, v5.1.2, v5.1.1, v5.0.14, v5.1, v5.0.13, v5.0.12, v5.0.11, v5.0.10, v5.0.9, v5.0.8, v5.0.7, v5.0.6, v5.0.5, v5.0.4, v5.0.3, v4.19.29, v5.0.2, v4.19.28, v5.0.1, v4.19.27, v5.0, v4.19.26, v4.19.25, v4.19.24, v4.19.23, v4.19.22, v4.19.21, v4.19.20, v4.19.19, v4.19.18, v4.19.17, v4.19.16, v4.19.15, v4.19.14, v4.19.13, v4.19.12, v4.19.11, v4.19.10, v4.19.9, v4.19.8, v4.19.7, v4.19.6, v4.19.5, v4.19.4, v4.18.20, v4.19.3, v4.18.19, v4.19.2, v4.18.18, v4.18.17, v4.19.1, v4.19, v4.18.16, v4.18.15, v4.18.14, v4.18.13, v4.18.12, v4.18.11 |
|
#
c35f463a |
| 26-Sep-2018 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Convert unsigned to unsigned int
Simple type conversion with no functional change implied.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <
pinctrl: lynxpoint: Convert unsigned to unsigned int
Simple type conversion with no functional change implied.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
e1940ade |
| 25-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Switch to memory mapped IO accessors
Convert driver to use memory mapped IO accessors.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andr
pinctrl: lynxpoint: Switch to memory mapped IO accessors
Convert driver to use memory mapped IO accessors.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
1e78ea71 |
| 25-Oct-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Keep pointer to struct device instead of its container
There is no need to keep pointer to struct platform_device, which is container of struct device, because the latter is what
pinctrl: lynxpoint: Keep pointer to struct device instead of its container
There is no need to keep pointer to struct platform_device, which is container of struct device, because the latter is what have been used everywhere outside of ->probe() path. In any case we may derive pointer to the container when needed.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
03fb681b |
| 25-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Relax GPIO request rules
A pin in native mode still can be requested as GPIO, though we assume that firmware has configured it properly, which sometimes is not the case.
Here we
pinctrl: lynxpoint: Relax GPIO request rules
A pin in native mode still can be requested as GPIO, though we assume that firmware has configured it properly, which sometimes is not the case.
Here we allow turning the pin as GPIO to avoid potential issues, but issue warning that something might be wrong.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
76347d7a |
| 25-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Assume 2 bits for mode selector
New generations can use 2 bits for mode selector. Update the code to support it.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off
pinctrl: lynxpoint: Assume 2 bits for mode selector
New generations can use 2 bits for mode selector. Update the code to support it.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
a718e68e |
| 25-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Use standard pattern for memory allocation
The pattern foo = kmalloc(sizeof(*foo), GFP_KERNEL); has an advantage when foo type is changed. Since we are planning a such, better t
pinctrl: lynxpoint: Use standard pattern for memory allocation
The pattern foo = kmalloc(sizeof(*foo), GFP_KERNEL); has an advantage when foo type is changed. Since we are planning a such, better to be prepared by using standard pattern for memory allocation.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
caedcbd0 |
| 25-Oct-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Use %pR to print IO resource
Replace explicit casting by pointer to struct resource with specifier replacement to %pR to print the IO resource.
Reviewed-by: Linus Walleij <linus
pinctrl: lynxpoint: Use %pR to print IO resource
Replace explicit casting by pointer to struct resource with specifier replacement to %pR to print the IO resource.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
3b4c2d8e |
| 25-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Drop useless assignment
There is no need to assign ret variable in ->probe(). Drop useless assignment.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy
pinctrl: lynxpoint: Drop useless assignment
There is no need to assign ret variable in ->probe(). Drop useless assignment.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
7c0bc7bb |
| 25-Oct-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Correct amount of pins
When we count from 0 it's possible to get into off-by-one error. That's what had happened to this driver. So, correct amount of pins and related typos in t
pinctrl: lynxpoint: Correct amount of pins
When we count from 0 it's possible to get into off-by-one error. That's what had happened to this driver. So, correct amount of pins and related typos in the code.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
b2e05d63 |
| 18-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Use raw_spinlock for locking
The Intel Lynxpoint pinctrl driver implements irqchip callbacks which are called with desc->lock raw_spinlock held. In mainline this is fine because
pinctrl: lynxpoint: Use raw_spinlock for locking
The Intel Lynxpoint pinctrl driver implements irqchip callbacks which are called with desc->lock raw_spinlock held. In mainline this is fine because spinlock resolves to raw_spinlock. However, running the same code in -rt we will get a BUG() asserted.
This is because in -rt spinlocks are preemptible so taking the driver private spinlock in irqchip callbacks causes might_sleep() to trigger.
In order to keep -rt happy but at the same time make sure that register accesses get serialized, convert the driver to use raw_spinlock instead.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
eb83479e |
| 22-Aug-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Move GPIO driver to pin controller folder
Move Lynxpoint GPIO driver under Intel pin control umbrella for further transformation to a real pin control driver.
Reviewed-by: Linus
pinctrl: lynxpoint: Move GPIO driver to pin controller folder
Move Lynxpoint GPIO driver under Intel pin control umbrella for further transformation to a real pin control driver.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
Revision tags: v5.8.17, v5.8.16, v5.8.15, v5.9, v5.8.14, v5.8.13, v5.8.12, v5.8.11, v5.8.10, v5.8.9, v5.8.8, v5.8.7, v5.8.6, v5.4.62, v5.8.5, v5.8.4, v5.4.61, v5.8.3, v5.4.60, v5.8.2, v5.4.59, v5.8.1, v5.4.58, v5.4.57, v5.4.56, v5.8, v5.7.12, v5.4.55, v5.7.11, v5.4.54, v5.7.10, v5.4.53, v5.4.52, v5.7.9, v5.7.8, v5.4.51, v5.4.50, v5.7.7, v5.4.49, v5.7.6, v5.7.5, v5.4.48, v5.7.4, v5.7.3, v5.4.47 |
|
#
e359a6f0 |
| 12-Jun-2020 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Drop no-op ACPI_PTR() call Since we dependent on ACPI, there is no need to use ACPI_PTR() which is a no-op in this case. Signed-off-by: Andy Shevchenko <andr
pinctrl: lynxpoint: Drop no-op ACPI_PTR() call Since we dependent on ACPI, there is no need to use ACPI_PTR() which is a no-op in this case. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
0472567b |
| 15-Jun-2020 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Introduce helpers to enable or disable input Introduce couple of helpers to enable or disable input. i.e. lp_gpio_enable_input() and lp_gpio_disable_input().
pinctrl: lynxpoint: Introduce helpers to enable or disable input Introduce couple of helpers to enable or disable input. i.e. lp_gpio_enable_input() and lp_gpio_disable_input(). Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
Revision tags: v5.4.46, v5.7.2 |
|
#
f3e7d281 |
| 10-Jun-2020 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Make use of for_each_requested_gpio() Make use of for_each_requested_gpio() instead of home grown analogue. Signed-off-by: Andy Shevchenko <andriy.shevchenko@lin
pinctrl: lynxpoint: Make use of for_each_requested_gpio() Make use of for_each_requested_gpio() instead of home grown analogue. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
Revision tags: v5.4.45, v5.7.1, v5.4.44, v5.7, v5.4.43, v5.4.42, v5.4.41, v5.4.40, v5.4.39, v5.4.38, v5.4.37, v5.4.36, v5.4.35, v5.4.34, v5.4.33 |
|
#
5f3b82a1 |
| 14-Apr-2020 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Use platform_get_irq_optional() explicitly There is no need to repeat functionality of platform_get_irq_optional() in the driver. Replace it with explicit call to the
pinctrl: lynxpoint: Use platform_get_irq_optional() explicitly There is no need to repeat functionality of platform_get_irq_optional() in the driver. Replace it with explicit call to the helper. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com> Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
show more ...
|
Revision tags: v5.4.32, v5.4.31, v5.4.30, v5.4.29, v5.6, v5.4.28, v5.4.27, v5.4.26, v5.4.25, v5.4.24, v5.4.23, v5.4.22, v5.4.21, v5.4.20, v5.4.19, v5.4.18, v5.4.17, v5.4.16, v5.5, v5.4.15, v5.4.14, v5.4.13, v5.4.12, v5.4.11, v5.4.10, v5.4.9, v5.4.8, v5.4.7, v5.4.6, v5.4.5, v5.4.4, v5.4.3, v5.3.15, v5.4.2, v5.4.1, v5.3.14 |
|
#
3a67fe38 |
| 25-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Update summary in the driver Reflect in the driver that it is now a pin control one. While here, update copyright years and authors. Reviewed-by: Linus
pinctrl: lynxpoint: Update summary in the driver Reflect in the driver that it is now a pin control one. While here, update copyright years and authors. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
64e14e90 |
| 25-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Switch to pin control API When all preparations are done, we may switch to pin control API. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-
pinctrl: lynxpoint: Switch to pin control API When all preparations are done, we may switch to pin control API. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
Revision tags: v5.4, v5.3.13, v5.3.12, v5.3.11, v5.3.10, v5.3.9 |
|
#
3683509c |
| 04-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Add GPIO <-> pin mapping ranges via callback When IRQ chip is instantiated via GPIO library flow, the few functions, in particular the ACPI event registration mechani
pinctrl: lynxpoint: Add GPIO <-> pin mapping ranges via callback When IRQ chip is instantiated via GPIO library flow, the few functions, in particular the ACPI event registration mechanism, on some of ACPI based platforms expect that the pin ranges are initialized to that point. Add GPIO <-> pin mapping ranges via callback in the GPIO library flow. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
03d9eca7 |
| 25-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Implement ->pin_dbg_show() The introduced callback ->pin_dbg_show() is useful for debugging. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off
pinctrl: lynxpoint: Implement ->pin_dbg_show() The introduced callback ->pin_dbg_show() is useful for debugging. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
7f32d370 |
| 20-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Add pin control operations Add implementation for: - pin control, group information retrieval: count, name and pins - pin muxing: - function inf
pinctrl: lynxpoint: Add pin control operations Add implementation for: - pin control, group information retrieval: count, name and pins - pin muxing: - function information (count, name and groups) - mux setting - GPIO control (enable, disable, set direction) - pin configuration: - pull disable, up and down - any other option is treated as not supported. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
18213ad4 |
| 25-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Reuse struct intel_pinctrl in the driver We may use now available struct intel_pinctrl in the driver. No functional change implied. Reviewed-by: Linus Wallei
pinctrl: lynxpoint: Reuse struct intel_pinctrl in the driver We may use now available struct intel_pinctrl in the driver. No functional change implied. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
Revision tags: v5.3.8 |
|
#
cecddda7 |
| 25-Oct-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Add pin control data structures In order to implement pin control for Intel Lynxpoint, we need data structures in which to store and pass along pin, community and
pinctrl: lynxpoint: Add pin control data structures In order to implement pin control for Intel Lynxpoint, we need data structures in which to store and pass along pin, community and SoC data information. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|
#
54d371cf |
| 19-Nov-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
pinctrl: lynxpoint: Implement intel_gpio_get_direction callback Allows querying GPIO direction from the pad config register. If the pad is not in GPIO mode, return an error. Rev
pinctrl: lynxpoint: Implement intel_gpio_get_direction callback Allows querying GPIO direction from the pad config register. If the pad is not in GPIO mode, return an error. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
show more ...
|