Skip to content

Commit 76d25a5

Browse files
committed
Merge tag 'pinctrl-for-v3.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl
Pull pin control fixes from Linus Walleij: - Driver fixes for AM33xx, SIRF and PFC pin controllers - Fix a compile warning from the pinctrl single-register driver - Fix a little nasty memory leak * tag 'pinctrl-for-v3.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: pinctrl: fix a memleak when freeing maps pinctrl: pinctrl-single: fix compile warning when no CONFIG_PM pinctrl: sh-pfc: fix SDHI0 VccQ regulator on sh73a0 with DT arm/dts: sirf: fix the pingroup name mismatch between drivers and dts pinctrl: sirf: add usp0_uart_nostreamctrl pin group for usp-uart without flowctrl pinctrl: sirf: fix the pin number and mux bit for usp0 pinctrl: am33xx dt binding: correct include path
2 parents 6803f37 + db6c2c6 commit 76d25a5

File tree

7 files changed

+49
-19
lines changed

7 files changed

+49
-19
lines changed

arch/arm/boot/dts/atlas6.dtsi

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -485,6 +485,12 @@
485485
sirf,function = "usp0";
486486
};
487487
};
488+
usp0_uart_nostreamctrl_pins_a: usp0@1 {
489+
usp0 {
490+
sirf,pins = "usp0_uart_nostreamctrl_grp";
491+
sirf,function = "usp0_uart_nostreamctrl";
492+
};
493+
};
488494
usp1_pins_a: usp1@0 {
489495
usp1 {
490496
sirf,pins = "usp1grp";
@@ -515,16 +521,16 @@
515521
sirf,function = "pulse_count";
516522
};
517523
};
518-
cko0_rst_pins_a: cko0_rst@0 {
519-
cko0_rst {
520-
sirf,pins = "cko0_rstgrp";
521-
sirf,function = "cko0_rst";
524+
cko0_pins_a: cko0@0 {
525+
cko0 {
526+
sirf,pins = "cko0grp";
527+
sirf,function = "cko0";
522528
};
523529
};
524-
cko1_rst_pins_a: cko1_rst@0 {
525-
cko1_rst {
526-
sirf,pins = "cko1_rstgrp";
527-
sirf,function = "cko1_rst";
530+
cko1_pins_a: cko1@0 {
531+
cko1 {
532+
sirf,pins = "cko1grp";
533+
sirf,function = "cko1";
528534
};
529535
};
530536
};

arch/arm/boot/dts/prima2.dtsi

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -515,16 +515,16 @@
515515
sirf,function = "pulse_count";
516516
};
517517
};
518-
cko0_rst_pins_a: cko0_rst@0 {
519-
cko0_rst {
520-
sirf,pins = "cko0_rstgrp";
521-
sirf,function = "cko0_rst";
518+
cko0_pins_a: cko0@0 {
519+
cko0 {
520+
sirf,pins = "cko0grp";
521+
sirf,function = "cko0";
522522
};
523523
};
524-
cko1_rst_pins_a: cko1_rst@0 {
525-
cko1_rst {
526-
sirf,pins = "cko1_rstgrp";
527-
sirf,function = "cko1_rst";
524+
cko1_pins_a: cko1@0 {
525+
cko1 {
526+
sirf,pins = "cko1grp";
527+
sirf,function = "cko1";
528528
};
529529
};
530530
};

drivers/pinctrl/core.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1193,6 +1193,7 @@ void pinctrl_unregister_map(struct pinctrl_map const *map)
11931193
list_for_each_entry(maps_node, &pinctrl_maps, node) {
11941194
if (maps_node->maps == map) {
11951195
list_del(&maps_node->node);
1196+
kfree(maps_node);
11961197
mutex_unlock(&pinctrl_maps_mutex);
11971198
return;
11981199
}

drivers/pinctrl/pinctrl-single.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1483,6 +1483,7 @@ static int pcs_add_gpio_func(struct device_node *node, struct pcs_device *pcs)
14831483
return ret;
14841484
}
14851485

1486+
#ifdef CONFIG_PM
14861487
static int pinctrl_single_suspend(struct platform_device *pdev,
14871488
pm_message_t state)
14881489
{
@@ -1505,6 +1506,7 @@ static int pinctrl_single_resume(struct platform_device *pdev)
15051506

15061507
return pinctrl_force_default(pcs->pctl);
15071508
}
1509+
#endif
15081510

15091511
static int pcs_probe(struct platform_device *pdev)
15101512
{

drivers/pinctrl/sh-pfc/pfc-sh73a0.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3785,6 +3785,7 @@ static const struct regulator_desc sh73a0_vccq_mc0_desc = {
37853785

37863786
static struct regulator_consumer_supply sh73a0_vccq_mc0_consumers[] = {
37873787
REGULATOR_SUPPLY("vqmmc", "sh_mobile_sdhi.0"),
3788+
REGULATOR_SUPPLY("vqmmc", "ee100000.sdhi"),
37883789
};
37893790

37903791
static const struct regulator_init_data sh73a0_vccq_mc0_init_data = {

drivers/pinctrl/sirf/pinctrl-atlas6.c

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -496,7 +496,7 @@ static const unsigned sdmmc5_pins[] = { 24, 25, 26 };
496496
static const struct sirfsoc_muxmask usp0_muxmask[] = {
497497
{
498498
.group = 1,
499-
.mask = BIT(19) | BIT(20) | BIT(21) | BIT(22),
499+
.mask = BIT(19) | BIT(20) | BIT(21) | BIT(22) | BIT(23),
500500
},
501501
};
502502

@@ -507,8 +507,21 @@ static const struct sirfsoc_padmux usp0_padmux = {
507507
.funcval = 0,
508508
};
509509

510-
static const unsigned usp0_pins[] = { 51, 52, 53, 54 };
510+
static const unsigned usp0_pins[] = { 51, 52, 53, 54, 55 };
511511

512+
static const struct sirfsoc_muxmask usp0_uart_nostreamctrl_muxmask[] = {
513+
{
514+
.group = 1,
515+
.mask = BIT(20) | BIT(21),
516+
},
517+
};
518+
519+
static const struct sirfsoc_padmux usp0_uart_nostreamctrl_padmux = {
520+
.muxmask_counts = ARRAY_SIZE(usp0_uart_nostreamctrl_muxmask),
521+
.muxmask = usp0_uart_nostreamctrl_muxmask,
522+
};
523+
524+
static const unsigned usp0_uart_nostreamctrl_pins[] = { 52, 53 };
512525
static const struct sirfsoc_muxmask usp1_muxmask[] = {
513526
{
514527
.group = 0,
@@ -822,6 +835,8 @@ static const struct sirfsoc_pin_group sirfsoc_pin_groups[] = {
822835
SIRFSOC_PIN_GROUP("uart2grp", uart2_pins),
823836
SIRFSOC_PIN_GROUP("uart2_nostreamctrlgrp", uart2_nostreamctrl_pins),
824837
SIRFSOC_PIN_GROUP("usp0grp", usp0_pins),
838+
SIRFSOC_PIN_GROUP("usp0_uart_nostreamctrl_grp",
839+
usp0_uart_nostreamctrl_pins),
825840
SIRFSOC_PIN_GROUP("usp1grp", usp1_pins),
826841
SIRFSOC_PIN_GROUP("i2c0grp", i2c0_pins),
827842
SIRFSOC_PIN_GROUP("i2c1grp", i2c1_pins),
@@ -862,6 +877,8 @@ static const char * const uart0grp[] = { "uart0grp" };
862877
static const char * const uart1grp[] = { "uart1grp" };
863878
static const char * const uart2grp[] = { "uart2grp" };
864879
static const char * const uart2_nostreamctrlgrp[] = { "uart2_nostreamctrlgrp" };
880+
static const char * const usp0_uart_nostreamctrl_grp[] = {
881+
"usp0_uart_nostreamctrl_grp" };
865882
static const char * const usp0grp[] = { "usp0grp" };
866883
static const char * const usp1grp[] = { "usp1grp" };
867884
static const char * const i2c0grp[] = { "i2c0grp" };
@@ -904,6 +921,9 @@ static const struct sirfsoc_pmx_func sirfsoc_pmx_functions[] = {
904921
SIRFSOC_PMX_FUNCTION("uart2", uart2grp, uart2_padmux),
905922
SIRFSOC_PMX_FUNCTION("uart2_nostreamctrl", uart2_nostreamctrlgrp, uart2_nostreamctrl_padmux),
906923
SIRFSOC_PMX_FUNCTION("usp0", usp0grp, usp0_padmux),
924+
SIRFSOC_PMX_FUNCTION("usp0_uart_nostreamctrl",
925+
usp0_uart_nostreamctrl_grp,
926+
usp0_uart_nostreamctrl_padmux),
907927
SIRFSOC_PMX_FUNCTION("usp1", usp1grp, usp1_padmux),
908928
SIRFSOC_PMX_FUNCTION("i2c0", i2c0grp, i2c0_padmux),
909929
SIRFSOC_PMX_FUNCTION("i2c1", i2c1grp, i2c1_padmux),

include/dt-bindings/pinctrl/am33xx.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
#ifndef _DT_BINDINGS_PINCTRL_AM33XX_H
66
#define _DT_BINDINGS_PINCTRL_AM33XX_H
77

8-
#include <include/dt-bindings/pinctrl/omap.h>
8+
#include <dt-bindings/pinctrl/omap.h>
99

1010
/* am33xx specific mux bit defines */
1111
#undef PULL_ENA

0 commit comments

Comments
 (0)