* [U-Boot] [PATCH v3 0/5] Add get_alt_function ops
@ 2018-09-10 16:11 Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 1/5] dm: gpio: " Patrice Chotard
` (5 more replies)
0 siblings, 6 replies; 15+ messages in thread
From: Patrice Chotard @ 2018-09-10 16:11 UTC (permalink / raw)
To: u-boot
This series :
- Add new gpio ops get_alt_function
- Add get_function and get_alt_function support to stm32 gpio driver
- Add get_alt_function test
Changes in v3:
- Rename get_alternate_function to get_alt_function
in include/asm-generic/gpio.h
- Rename get_alternate_function to get_alt_function in
drivers/gpio/stm32f7_gpio.c
- Rename SDBX_GPIO_(OUTPUT|HIGH|ODR) to SANDBOX_GPIO_(OUTPUT|HIGH|ODR)
- Rename get_alternate_function to get_alt_function
Changes in v2:
- Rename get_function_number to get_alternate_function
in include/asm-generic/gpio.h
- Rename get_function_number to get_alternate_function in
drivers/gpio/stm32f7_gpio.c
- Rename get_function_number to get_alternate_function
in test/dm/gpio.c, drivers/gpio/sandbox.c and in
arch/sandbox/include/asm/gpio.h
Christophe Kerello (1):
gpio: stm32f7: Add ops get_function
Patrice Chotard (2):
gpio: sandbox: Rename GPIOF_(OUTPUT|HIGH|ODR) to
SANDBOX_GPIO_(OUTPUT|HIGH|ODR)
test: dm: Add gpio get_alt_function ops test
Patrick Delaunay (2):
dm: gpio: Add get_alt_function ops
gpio: stm32f7: Add ops get_alt_function
arch/sandbox/include/asm/gpio.h | 24 ++++++++++++++++++++
drivers/gpio/gpio-uclass.c | 6 +++++
drivers/gpio/sandbox.c | 49 ++++++++++++++++++++++++++++++++---------
drivers/gpio/stm32f7_gpio.c | 36 ++++++++++++++++++++++++++++++
include/asm-generic/gpio.h | 13 +++++++++++
test/dm/gpio.c | 13 +++++++++++
6 files changed, 130 insertions(+), 11 deletions(-)
--
1.9.1
^ permalink raw reply [flat|nested] 15+ messages in thread
* [U-Boot] [PATCH v3 1/5] dm: gpio: Add get_alt_function ops
2018-09-10 16:11 [U-Boot] [PATCH v3 0/5] Add get_alt_function ops Patrice Chotard
@ 2018-09-10 16:11 ` Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 2/5] gpio: stm32f7: Add ops get_function Patrice Chotard
` (4 subsequent siblings)
5 siblings, 0 replies; 15+ messages in thread
From: Patrice Chotard @ 2018-09-10 16:11 UTC (permalink / raw)
To: u-boot
From: Patrick Delaunay <patrick.delaunay@st.com>
When a pin is not configured as a GPIO, it could
have several alternate function.
To be able to identify the alternate function,
add ops get_alt_function() to request the pin
alternate function index from the driver when pin is
not used as gpio.
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
---
Changes in v3:
- Rename get_alternate_function to get_alt_function
in include/asm-generic/gpio.h
Changes in v2:
- Rename get_function_number to get_alternate_function
in include/asm-generic/gpio.h
drivers/gpio/gpio-uclass.c | 6 ++++++
include/asm-generic/gpio.h | 13 +++++++++++++
2 files changed, 19 insertions(+)
diff --git a/drivers/gpio/gpio-uclass.c b/drivers/gpio/gpio-uclass.c
index da5e9ba6e524..27010a1ebf22 100644
--- a/drivers/gpio/gpio-uclass.c
+++ b/drivers/gpio/gpio-uclass.c
@@ -568,6 +568,12 @@ int gpio_get_status(struct udevice *dev, int offset, char *buf, int buffsize)
label ? label : "");
}
+ if (func == GPIOF_FUNC && ops->get_alt_function) {
+ ret = ops->get_alt_function(dev, offset);
+ if (ret >= 0)
+ snprintf(str + len, buffsize - len, ": %d", ret);
+ }
+
return 0;
}
diff --git a/include/asm-generic/gpio.h b/include/asm-generic/gpio.h
index d03602696f6d..dd3d77fafa98 100644
--- a/include/asm-generic/gpio.h
+++ b/include/asm-generic/gpio.h
@@ -266,6 +266,19 @@ struct dm_gpio_ops {
int (*get_function)(struct udevice *dev, unsigned offset);
/**
+ * get_alt_function() Get the pins alternate function
+ *
+ * When a pin is not configured as GPIO, this pin can have several
+ * alternate function. get_alt_function indicate the current
+ * pin's alternate function index
+ *
+ * @dev: Device to check
+ * @offset: GPIO offset within that device
+ * @return current alternate function index
+ */
+ int (*get_alt_function)(struct udevice *dev, unsigned int offset);
+
+ /**
* xlate() - Translate phandle arguments into a GPIO description
*
* This function should set up the fields in desc according to the
--
1.9.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [U-Boot] [PATCH v3 2/5] gpio: stm32f7: Add ops get_function
2018-09-10 16:11 [U-Boot] [PATCH v3 0/5] Add get_alt_function ops Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 1/5] dm: gpio: " Patrice Chotard
@ 2018-09-10 16:11 ` Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 3/5] gpio: stm32f7: Add ops get_alt_function Patrice Chotard
` (3 subsequent siblings)
5 siblings, 0 replies; 15+ messages in thread
From: Patrice Chotard @ 2018-09-10 16:11 UTC (permalink / raw)
To: u-boot
From: Christophe Kerello <christophe.kerello@st.com>
This patch adds gpio get_function ops support.
This function reports the state of a gpio.
Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
---
Changes in v3: None
Changes in v2: None
drivers/gpio/stm32f7_gpio.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/drivers/gpio/stm32f7_gpio.c b/drivers/gpio/stm32f7_gpio.c
index 5b08e7ee275c..55e121699022 100644
--- a/drivers/gpio/stm32f7_gpio.c
+++ b/drivers/gpio/stm32f7_gpio.c
@@ -66,11 +66,31 @@ static int stm32_gpio_set_value(struct udevice *dev, unsigned offset, int value)
return 0;
}
+static int stm32_gpio_get_function(struct udevice *dev, unsigned int offset)
+{
+ struct stm32_gpio_priv *priv = dev_get_priv(dev);
+ struct stm32_gpio_regs *regs = priv->regs;
+ int bits_index = MODE_BITS(offset);
+ int mask = MODE_BITS_MASK << bits_index;
+ u32 mode;
+
+ mode = (readl(®s->moder) & mask) >> bits_index;
+ if (mode == STM32_GPIO_MODE_OUT)
+ return GPIOF_OUTPUT;
+ if (mode == STM32_GPIO_MODE_IN)
+ return GPIOF_INPUT;
+ if (mode == STM32_GPIO_MODE_AN)
+ return GPIOF_UNUSED;
+
+ return GPIOF_FUNC;
+}
+
static const struct dm_gpio_ops gpio_stm32_ops = {
.direction_input = stm32_gpio_direction_input,
.direction_output = stm32_gpio_direction_output,
.get_value = stm32_gpio_get_value,
.set_value = stm32_gpio_set_value,
+ .get_function = stm32_gpio_get_function,
};
static int gpio_stm32_probe(struct udevice *dev)
--
1.9.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [U-Boot] [PATCH v3 3/5] gpio: stm32f7: Add ops get_alt_function
2018-09-10 16:11 [U-Boot] [PATCH v3 0/5] Add get_alt_function ops Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 1/5] dm: gpio: " Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 2/5] gpio: stm32f7: Add ops get_function Patrice Chotard
@ 2018-09-10 16:11 ` Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 4/5] gpio: sandbox: Rename GPIOF_(OUTPUT|HIGH|ODR) to SANDBOX_GPIO_(OUTPUT|HIGH|ODR) Patrice Chotard
` (2 subsequent siblings)
5 siblings, 0 replies; 15+ messages in thread
From: Patrice Chotard @ 2018-09-10 16:11 UTC (permalink / raw)
To: u-boot
From: Patrick Delaunay <patrick.delaunay@st.com>
Allow to display alternate function index using "gpio" command.
Example, display all gpio state :
gpio status -a
GPIOD2: func: 12
GPIOD3: func: 9
GPIOE3: func: 9
GPIOG6: func: 10
It's useful to control pin configuration
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
---
Changes in v3:
- Rename get_alternate_function to get_alt_function in
drivers/gpio/stm32f7_gpio.c
Changes in v2:
- Rename get_function_number to get_alternate_function in
drivers/gpio/stm32f7_gpio.c
drivers/gpio/stm32f7_gpio.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/drivers/gpio/stm32f7_gpio.c b/drivers/gpio/stm32f7_gpio.c
index 55e121699022..d9a6c1dc6f1e 100644
--- a/drivers/gpio/stm32f7_gpio.c
+++ b/drivers/gpio/stm32f7_gpio.c
@@ -85,12 +85,28 @@ static int stm32_gpio_get_function(struct udevice *dev, unsigned int offset)
return GPIOF_FUNC;
}
+static int stm32_gpio_get_alt_function(struct udevice *dev,
+ unsigned int offset)
+{
+ struct stm32_gpio_priv *priv = dev_get_priv(dev);
+ struct stm32_gpio_regs *regs = priv->regs;
+ u32 af;
+ u32 alt_shift = (offset % 8) * 4;
+ u32 alt_index = offset / 8;
+
+ af = (readl(®s->afr[alt_index]) &
+ GENMASK(alt_shift + 3, alt_shift)) >> alt_shift;
+
+ return af;
+}
+
static const struct dm_gpio_ops gpio_stm32_ops = {
.direction_input = stm32_gpio_direction_input,
.direction_output = stm32_gpio_direction_output,
.get_value = stm32_gpio_get_value,
.set_value = stm32_gpio_set_value,
.get_function = stm32_gpio_get_function,
+ .get_alt_function = stm32_gpio_get_alt_function,
};
static int gpio_stm32_probe(struct udevice *dev)
--
1.9.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [U-Boot] [PATCH v3 4/5] gpio: sandbox: Rename GPIOF_(OUTPUT|HIGH|ODR) to SANDBOX_GPIO_(OUTPUT|HIGH|ODR)
2018-09-10 16:11 [U-Boot] [PATCH v3 0/5] Add get_alt_function ops Patrice Chotard
` (2 preceding siblings ...)
2018-09-10 16:11 ` [U-Boot] [PATCH v3 3/5] gpio: stm32f7: Add ops get_alt_function Patrice Chotard
@ 2018-09-10 16:11 ` Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 5/5] test: dm: Add gpio get_alt_function ops test Patrice Chotard
2018-09-11 5:51 ` [U-Boot] [PATCH v3 0/5] Add get_alt_function ops Michal Simek
5 siblings, 0 replies; 15+ messages in thread
From: Patrice Chotard @ 2018-09-10 16:11 UTC (permalink / raw)
To: u-boot
To avoid confusion with enum gpio_func_t GPIOF_OUTPUT defined in
asm-generic/gpio.h, rename all sandbox flags GPIOF_(OUTPUT|HIGH|ODR)
to SANDBOX_GPIO_(OUTPUT|HIGH|ODR)
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---
Changes in v3:
- Rename SDBX_GPIO_(OUTPUT|HIGH|ODR) to SANDBOX_GPIO_(OUTPUT|HIGH|ODR)
Changes in v2: None
drivers/gpio/sandbox.c | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/drivers/gpio/sandbox.c b/drivers/gpio/sandbox.c
index 2ef5c67ad593..e7bed17d0db0 100644
--- a/drivers/gpio/sandbox.c
+++ b/drivers/gpio/sandbox.c
@@ -12,9 +12,9 @@
#include <dt-bindings/gpio/gpio.h>
/* Flags for each GPIO */
-#define GPIOF_OUTPUT (1 << 0) /* Currently set as an output */
-#define GPIOF_HIGH (1 << 1) /* Currently set high */
-#define GPIOF_ODR (1 << 2) /* Currently set to open drain mode */
+#define SANDBOX_GPIO_OUTPUT BIT(0) /* Currently set as an output */
+#define SANDBOX_GPIO_HIGH BIT(1) /* Currently set high */
+#define SANDBOX_GPIO_ODR BIT(2) /* Currently set to open drain mode */
struct gpio_state {
const char *label; /* label given by requester */
@@ -60,34 +60,34 @@ static int set_gpio_flag(struct udevice *dev, unsigned offset, int flag,
int sandbox_gpio_get_value(struct udevice *dev, unsigned offset)
{
- if (get_gpio_flag(dev, offset, GPIOF_OUTPUT))
+ if (get_gpio_flag(dev, offset, SANDBOX_GPIO_OUTPUT))
debug("sandbox_gpio: get_value on output gpio %u\n", offset);
- return get_gpio_flag(dev, offset, GPIOF_HIGH);
+ return get_gpio_flag(dev, offset, SANDBOX_GPIO_HIGH);
}
int sandbox_gpio_set_value(struct udevice *dev, unsigned offset, int value)
{
- return set_gpio_flag(dev, offset, GPIOF_HIGH, value);
+ return set_gpio_flag(dev, offset, SANDBOX_GPIO_HIGH, value);
}
int sandbox_gpio_get_open_drain(struct udevice *dev, unsigned offset)
{
- return get_gpio_flag(dev, offset, GPIOF_ODR);
+ return get_gpio_flag(dev, offset, SANDBOX_GPIO_ODR);
}
int sandbox_gpio_set_open_drain(struct udevice *dev, unsigned offset, int value)
{
- return set_gpio_flag(dev, offset, GPIOF_ODR, value);
+ return set_gpio_flag(dev, offset, SANDBOX_GPIO_ODR, value);
}
int sandbox_gpio_get_direction(struct udevice *dev, unsigned offset)
{
- return get_gpio_flag(dev, offset, GPIOF_OUTPUT);
+ return get_gpio_flag(dev, offset, SANDBOX_GPIO_OUTPUT);
}
int sandbox_gpio_set_direction(struct udevice *dev, unsigned offset, int output)
{
- return set_gpio_flag(dev, offset, GPIOF_OUTPUT, output);
+ return set_gpio_flag(dev, offset, SANDBOX_GPIO_OUTPUT, output);
}
/*
@@ -158,7 +158,7 @@ static int sb_gpio_set_open_drain(struct udevice *dev, unsigned offset, int valu
static int sb_gpio_get_function(struct udevice *dev, unsigned offset)
{
- if (get_gpio_flag(dev, offset, GPIOF_OUTPUT))
+ if (get_gpio_flag(dev, offset, SDBX_GPIO_OUTPUT))
return GPIOF_OUTPUT;
return GPIOF_INPUT;
}
--
1.9.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [U-Boot] [PATCH v3 5/5] test: dm: Add gpio get_alt_function ops test
2018-09-10 16:11 [U-Boot] [PATCH v3 0/5] Add get_alt_function ops Patrice Chotard
` (3 preceding siblings ...)
2018-09-10 16:11 ` [U-Boot] [PATCH v3 4/5] gpio: sandbox: Rename GPIOF_(OUTPUT|HIGH|ODR) to SANDBOX_GPIO_(OUTPUT|HIGH|ODR) Patrice Chotard
@ 2018-09-10 16:11 ` Patrice Chotard
2018-09-11 5:51 ` [U-Boot] [PATCH v3 0/5] Add get_alt_function ops Michal Simek
5 siblings, 0 replies; 15+ messages in thread
From: Patrice Chotard @ 2018-09-10 16:11 UTC (permalink / raw)
To: u-boot
In order to test get_alt_function ops, add
sandbox_gpio_set_function() and sandbox_gpio_set_alternate_function()
to be able to configure a pin not as a GPIO and to select the
alternate function index.
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---
Changes in v3:
- Rename get_alternate_function to get_alt_function
Changes in v2:
- Rename get_function_number to get_alternate_function
in test/dm/gpio.c, drivers/gpio/sandbox.c and in
arch/sandbox/include/asm/gpio.h
arch/sandbox/include/asm/gpio.h | 24 ++++++++++++++++++++++++
drivers/gpio/sandbox.c | 29 ++++++++++++++++++++++++++++-
test/dm/gpio.c | 13 +++++++++++++
3 files changed, 65 insertions(+), 1 deletion(-)
diff --git a/arch/sandbox/include/asm/gpio.h b/arch/sandbox/include/asm/gpio.h
index de8ac37f4262..217f6435b8bd 100644
--- a/arch/sandbox/include/asm/gpio.h
+++ b/arch/sandbox/include/asm/gpio.h
@@ -82,4 +82,28 @@ int sandbox_gpio_get_direction(struct udevice *dev, unsigned int offset);
int sandbox_gpio_set_direction(struct udevice *dev, unsigned int offset,
int output);
+/**
+ * Set the simulated usage of a pin, as a GPIO or not (used only in sandbox
+ * test code)
+ *
+ * @param dev device to use
+ * @param offset GPIO offset within bank
+ * @param value 0 to set as GPIO, 1 to set as not a GPIO
+ * @return -1 on error, 0 if ok
+ */
+int sandbox_gpio_set_function(struct udevice *dev, unsigned int offset,
+ int value);
+
+/**
+ * Set the simulated alt function of a pin when pin is not used as a GPIO
+ * (used only in sandbox test code)
+ *
+ * @param dev device to use
+ * @param offset GPIO offset within bank
+ * @param value pin alternate function number
+ * @return -1 on error, 0 if ok
+ */
+int sandbox_gpio_set_alt_function(struct udevice *dev,
+ unsigned int offset,
+ int value);
#endif
diff --git a/drivers/gpio/sandbox.c b/drivers/gpio/sandbox.c
index e7bed17d0db0..55b7a2579db6 100644
--- a/drivers/gpio/sandbox.c
+++ b/drivers/gpio/sandbox.c
@@ -15,6 +15,8 @@
#define SANDBOX_GPIO_OUTPUT BIT(0) /* Currently set as an output */
#define SANDBOX_GPIO_HIGH BIT(1) /* Currently set high */
#define SANDBOX_GPIO_ODR BIT(2) /* Currently set to open drain mode */
+#define SANDBOX_GPIO_FUNC BIT(3) /* Currently set as not used as GPIO */
+#define SANDBOX_GPIO_FUNC_NB BIT(4) /* Currently set as function number 1 */
struct gpio_state {
const char *label; /* label given by requester */
@@ -90,6 +92,19 @@ int sandbox_gpio_set_direction(struct udevice *dev, unsigned offset, int output)
return set_gpio_flag(dev, offset, SANDBOX_GPIO_OUTPUT, output);
}
+int sandbox_gpio_set_function(struct udevice *dev, unsigned int offset,
+ int value)
+{
+ return set_gpio_flag(dev, offset, SANDBOX_GPIO_FUNC, value);
+}
+
+int sandbox_gpio_set_alt_function(struct udevice *dev,
+ unsigned int offset,
+ int value)
+{
+ return set_gpio_flag(dev, offset, SANDBOX_GPIO_FUNC_NB, value);
+}
+
/*
* These functions implement the public interface within U-Boot
*/
@@ -158,11 +173,22 @@ static int sb_gpio_set_open_drain(struct udevice *dev, unsigned offset, int valu
static int sb_gpio_get_function(struct udevice *dev, unsigned offset)
{
- if (get_gpio_flag(dev, offset, SDBX_GPIO_OUTPUT))
+ if (get_gpio_flag(dev, offset, SANDBOX_GPIO_FUNC))
+ return GPIOF_FUNC;
+
+ if (get_gpio_flag(dev, offset, SANDBOX_GPIO_OUTPUT))
return GPIOF_OUTPUT;
return GPIOF_INPUT;
}
+static int sb_gpio_get_alt_function(struct udevice *dev,
+ unsigned int offset)
+{
+ debug("%s: offset:%u\n", __func__, offset);
+
+ return get_gpio_flag(dev, offset, SANDBOX_GPIO_FUNC_NB);
+}
+
static int sb_gpio_xlate(struct udevice *dev, struct gpio_desc *desc,
struct ofnode_phandle_args *args)
{
@@ -189,6 +215,7 @@ static const struct dm_gpio_ops gpio_sandbox_ops = {
.get_open_drain = sb_gpio_get_open_drain,
.set_open_drain = sb_gpio_set_open_drain,
.get_function = sb_gpio_get_function,
+ .get_alt_function = sb_gpio_get_alt_function,
.xlate = sb_gpio_xlate,
};
diff --git a/test/dm/gpio.c b/test/dm/gpio.c
index bb4b20cea938..302342c2e0ce 100644
--- a/test/dm/gpio.c
+++ b/test/dm/gpio.c
@@ -92,6 +92,19 @@ static int dm_test_gpio(struct unit_test_state *uts)
ut_assertok(gpio_get_status(dev, offset, buf, sizeof(buf)));
ut_asserteq_str("b4: input: 0 [ ]", buf);
+ /*
+ * Make it not used as GPIO, select function
+ * (by default function number 0 is active)
+ */
+ sandbox_gpio_set_function(dev, offset, 1);
+ ut_assertok(gpio_get_status(dev, offset, buf, sizeof(buf)));
+ ut_asserteq_str("b4: func: 0", buf);
+
+ /* select function number 1 */
+ sandbox_gpio_set_alt_function(dev, offset, 1);
+ ut_assertok(gpio_get_status(dev, offset, buf, sizeof(buf)));
+ ut_asserteq_str("b4: func: 1", buf);
+
/* Check the 'a' bank also */
ut_assertok(gpio_lookup_name("a15", &dev, &offset, &gpio));
ut_asserteq_str(dev->name, "base-gpios");
--
1.9.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [U-Boot] [PATCH v3 0/5] Add get_alt_function ops
2018-09-10 16:11 [U-Boot] [PATCH v3 0/5] Add get_alt_function ops Patrice Chotard
` (4 preceding siblings ...)
2018-09-10 16:11 ` [U-Boot] [PATCH v3 5/5] test: dm: Add gpio get_alt_function ops test Patrice Chotard
@ 2018-09-11 5:51 ` Michal Simek
2018-09-11 7:31 ` Patrice CHOTARD
5 siblings, 1 reply; 15+ messages in thread
From: Michal Simek @ 2018-09-11 5:51 UTC (permalink / raw)
To: u-boot
On 10.9.2018 18:11, Patrice Chotard wrote:
>
> This series :
> - Add new gpio ops get_alt_function
> - Add get_function and get_alt_function support to stm32 gpio driver
> - Add get_alt_function test
I went quickly over this series and TBH I am not getting what this is
for. It looks like that this is the part of pinmux.
Can you please elaborate more what this is for?
Thanks,
Michal
^ permalink raw reply [flat|nested] 15+ messages in thread
* [U-Boot] [PATCH v3 0/5] Add get_alt_function ops
2018-09-11 5:51 ` [U-Boot] [PATCH v3 0/5] Add get_alt_function ops Michal Simek
@ 2018-09-11 7:31 ` Patrice CHOTARD
2018-09-11 10:24 ` Michal Simek
2018-09-11 17:03 ` [U-Boot] " Stephen Warren
0 siblings, 2 replies; 15+ messages in thread
From: Patrice CHOTARD @ 2018-09-11 7:31 UTC (permalink / raw)
To: u-boot
Hi Michal
On 09/11/2018 07:51 AM, Michal Simek wrote:
> On 10.9.2018 18:11, Patrice Chotard wrote:
>>
>> This series :
>> - Add new gpio ops get_alt_function
>> - Add get_function and get_alt_function support to stm32 gpio driver
>> - Add get_alt_function test
>
>
> I went quickly over this series and TBH I am not getting what this is
> for. It looks like that this is the part of pinmux.
>
> Can you please elaborate more what this is for?
Currently, get_function callback returns the state of a gpio
(GPIOF_INPUT, GPIOF_OUTPUT or GPIO_FUNC).
If a pin's state is GPIO_FUNC, it's useful to know which alternate
function is selected for debug purpose.
As example, on STM32 SoCs, a pins can be configured as GPIO or also
configured with up to 16 alternate function. Using command "gpio", user
can retrieve this information as shown below:
STM32MP> gpio state -a
Bank GPIOA:
GPIOA0: unused: 0 [ ]
GPIOA1: unused: 0 [ ]
GPIOA2: unused: 0 [ ]
GPIOA3: unused: 0 [ ]
GPIOA4: unused: 0 [ ]
GPIOA5: unused: 0 [ ]
GPIOA6: unused: 0 [ ]
GPIOA7: unused: 0 [ ]
GPIOA8: func: 9
GPIOA9: func: 10
GPIOA10: unused: 0 [ ]
GPIOA11: unused: 0 [ ]
GPIOA12: unused: 0 [ ]
GPIOA13: output: 1 [x] red.gpios
GPIOA14: output: 0 [x] green.gpios
GPIOA15: unused: 0 [ ]
It shows that pin 8 and 9 of bank A are configured respectively in
alternate function 9 and 10.
Patrice
>
> Thanks,
> Michal
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* [U-Boot] [PATCH v3 0/5] Add get_alt_function ops
2018-09-11 7:31 ` Patrice CHOTARD
@ 2018-09-11 10:24 ` Michal Simek
2018-09-11 11:12 ` Patrice CHOTARD
2018-09-11 17:03 ` [U-Boot] " Stephen Warren
1 sibling, 1 reply; 15+ messages in thread
From: Michal Simek @ 2018-09-11 10:24 UTC (permalink / raw)
To: u-boot
Hi,
On 11.9.2018 09:31, Patrice CHOTARD wrote:
> Hi Michal
>
> On 09/11/2018 07:51 AM, Michal Simek wrote:
>> On 10.9.2018 18:11, Patrice Chotard wrote:
>>>
>>> This series :
>>> - Add new gpio ops get_alt_function
>>> - Add get_function and get_alt_function support to stm32 gpio driver
>>> - Add get_alt_function test
>>
>>
>> I went quickly over this series and TBH I am not getting what this is
>> for. It looks like that this is the part of pinmux.
>>
>> Can you please elaborate more what this is for?
>
> Currently, get_function callback returns the state of a gpio
> (GPIOF_INPUT, GPIOF_OUTPUT or GPIO_FUNC).
>
> If a pin's state is GPIO_FUNC, it's useful to know which alternate
> function is selected for debug purpose.
>
> As example, on STM32 SoCs, a pins can be configured as GPIO or also
> configured with up to 16 alternate function. Using command "gpio", user
> can retrieve this information as shown below:
>
> STM32MP> gpio state -a
>
> Bank GPIOA:
> GPIOA0: unused: 0 [ ]
> GPIOA1: unused: 0 [ ]
> GPIOA2: unused: 0 [ ]
> GPIOA3: unused: 0 [ ]
> GPIOA4: unused: 0 [ ]
> GPIOA5: unused: 0 [ ]
> GPIOA6: unused: 0 [ ]
> GPIOA7: unused: 0 [ ]
> GPIOA8: func: 9
> GPIOA9: func: 10
> GPIOA10: unused: 0 [ ]
> GPIOA11: unused: 0 [ ]
> GPIOA12: unused: 0 [ ]
> GPIOA13: output: 1 [x] red.gpios
> GPIOA14: output: 0 [x] green.gpios
> GPIOA15: unused: 0 [ ]
>
> It shows that pin 8 and 9 of bank A are configured respectively in
> alternate function 9 and 10.
Can you list that functionality? Isn't it something what should be shown
with a name instead of number?
I expect that user has to go to any decode table to find out what 9 or
10 means.
Thanks,
Michal
^ permalink raw reply [flat|nested] 15+ messages in thread
* [U-Boot] [PATCH v3 0/5] Add get_alt_function ops
2018-09-11 10:24 ` Michal Simek
@ 2018-09-11 11:12 ` Patrice CHOTARD
2018-09-11 12:17 ` Michal Simek
0 siblings, 1 reply; 15+ messages in thread
From: Patrice CHOTARD @ 2018-09-11 11:12 UTC (permalink / raw)
To: u-boot
Hi,
On 09/11/2018 12:24 PM, Michal Simek wrote:
> Hi,
>
> On 11.9.2018 09:31, Patrice CHOTARD wrote:
>> Hi Michal
>>
>> On 09/11/2018 07:51 AM, Michal Simek wrote:
>>> On 10.9.2018 18:11, Patrice Chotard wrote:
>>>>
>>>> This series :
>>>> - Add new gpio ops get_alt_function
>>>> - Add get_function and get_alt_function support to stm32 gpio driver
>>>> - Add get_alt_function test
>>>
>>>
>>> I went quickly over this series and TBH I am not getting what this is
>>> for. It looks like that this is the part of pinmux.
>>>
>>> Can you please elaborate more what this is for?
>>
>> Currently, get_function callback returns the state of a gpio
>> (GPIOF_INPUT, GPIOF_OUTPUT or GPIO_FUNC).
>>
>> If a pin's state is GPIO_FUNC, it's useful to know which alternate
>> function is selected for debug purpose.
>>
>> As example, on STM32 SoCs, a pins can be configured as GPIO or also
>> configured with up to 16 alternate function. Using command "gpio", user
>> can retrieve this information as shown below:
>>
>> STM32MP> gpio state -a
>>
>> Bank GPIOA:
>> GPIOA0: unused: 0 [ ]
>> GPIOA1: unused: 0 [ ]
>> GPIOA2: unused: 0 [ ]
>> GPIOA3: unused: 0 [ ]
>> GPIOA4: unused: 0 [ ]
>> GPIOA5: unused: 0 [ ]
>> GPIOA6: unused: 0 [ ]
>> GPIOA7: unused: 0 [ ]
>> GPIOA8: func: 9
>> GPIOA9: func: 10
>> GPIOA10: unused: 0 [ ]
>> GPIOA11: unused: 0 [ ]
>> GPIOA12: unused: 0 [ ]
>> GPIOA13: output: 1 [x] red.gpios
>> GPIOA14: output: 0 [x] green.gpios
>> GPIOA15: unused: 0 [ ]
>>
>> It shows that pin 8 and 9 of bank A are configured respectively in
>> alternate function 9 and 10.
>
> Can you list that functionality? Isn't it something what should be shown
> with a name instead of number?
Listing this functionality is possible and printing name instead of
number also, but for each pins, alternate function configuration is
different and need to store all these informations into a table, which
consumes a lot of memory.
> I expect that user has to go to any decode table to find out what 9 or
> 10 means.
Yes, using the SoC's datasheet, user can find the corresponding
alternate function description.
Thanks
Patrice
>
> Thanks,
> Michal
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* [U-Boot] [PATCH v3 0/5] Add get_alt_function ops
2018-09-11 11:12 ` Patrice CHOTARD
@ 2018-09-11 12:17 ` Michal Simek
2018-09-11 13:31 ` [U-Boot] [Uboot-stm32] " Patrice CHOTARD
0 siblings, 1 reply; 15+ messages in thread
From: Michal Simek @ 2018-09-11 12:17 UTC (permalink / raw)
To: u-boot
On 11.9.2018 13:12, Patrice CHOTARD wrote:
> Hi,
>
> On 09/11/2018 12:24 PM, Michal Simek wrote:
>> Hi,
>>
>> On 11.9.2018 09:31, Patrice CHOTARD wrote:
>>> Hi Michal
>>>
>>> On 09/11/2018 07:51 AM, Michal Simek wrote:
>>>> On 10.9.2018 18:11, Patrice Chotard wrote:
>>>>>
>>>>> This series :
>>>>> - Add new gpio ops get_alt_function
>>>>> - Add get_function and get_alt_function support to stm32 gpio driver
>>>>> - Add get_alt_function test
>>>>
>>>>
>>>> I went quickly over this series and TBH I am not getting what this is
>>>> for. It looks like that this is the part of pinmux.
>>>>
>>>> Can you please elaborate more what this is for?
>>>
>>> Currently, get_function callback returns the state of a gpio
>>> (GPIOF_INPUT, GPIOF_OUTPUT or GPIO_FUNC).
>>>
>>> If a pin's state is GPIO_FUNC, it's useful to know which alternate
>>> function is selected for debug purpose.
>>>
>>> As example, on STM32 SoCs, a pins can be configured as GPIO or also
>>> configured with up to 16 alternate function. Using command "gpio", user
>>> can retrieve this information as shown below:
>>>
>>> STM32MP> gpio state -a
>>>
>>> Bank GPIOA:
>>> GPIOA0: unused: 0 [ ]
>>> GPIOA1: unused: 0 [ ]
>>> GPIOA2: unused: 0 [ ]
>>> GPIOA3: unused: 0 [ ]
>>> GPIOA4: unused: 0 [ ]
>>> GPIOA5: unused: 0 [ ]
>>> GPIOA6: unused: 0 [ ]
>>> GPIOA7: unused: 0 [ ]
>>> GPIOA8: func: 9
>>> GPIOA9: func: 10
>>> GPIOA10: unused: 0 [ ]
>>> GPIOA11: unused: 0 [ ]
>>> GPIOA12: unused: 0 [ ]
>>> GPIOA13: output: 1 [x] red.gpios
>>> GPIOA14: output: 0 [x] green.gpios
>>> GPIOA15: unused: 0 [ ]
>>>
>>> It shows that pin 8 and 9 of bank A are configured respectively in
>>> alternate function 9 and 10.
>>
>> Can you list that functionality? Isn't it something what should be shown
>> with a name instead of number?
>
> Listing this functionality is possible and printing name instead of
> number also, but for each pins, alternate function configuration is
> different and need to store all these informations into a table, which
> consumes a lot of memory.
>
>> I expect that user has to go to any decode table to find out what 9 or
>> 10 means.
>
> Yes, using the SoC's datasheet, user can find the corresponding
> alternate function description.
Can you give some examples of that functionality or link to datasheet
and page?
M
^ permalink raw reply [flat|nested] 15+ messages in thread
* [U-Boot] [Uboot-stm32] [PATCH v3 0/5] Add get_alt_function ops
2018-09-11 12:17 ` Michal Simek
@ 2018-09-11 13:31 ` Patrice CHOTARD
2018-09-11 13:45 ` Michal Simek
0 siblings, 1 reply; 15+ messages in thread
From: Patrice CHOTARD @ 2018-09-11 13:31 UTC (permalink / raw)
To: u-boot
On 09/11/2018 02:17 PM, Michal Simek wrote:
> On 11.9.2018 13:12, Patrice CHOTARD wrote:
>> Hi,
>>
>> On 09/11/2018 12:24 PM, Michal Simek wrote:
>>> Hi,
>>>
>>> On 11.9.2018 09:31, Patrice CHOTARD wrote:
>>>> Hi Michal
>>>>
>>>> On 09/11/2018 07:51 AM, Michal Simek wrote:
>>>>> On 10.9.2018 18:11, Patrice Chotard wrote:
>>>>>>
>>>>>> This series :
>>>>>> - Add new gpio ops get_alt_function
>>>>>> - Add get_function and get_alt_function support to stm32 gpio driver
>>>>>> - Add get_alt_function test
>>>>>
>>>>>
>>>>> I went quickly over this series and TBH I am not getting what this is
>>>>> for. It looks like that this is the part of pinmux.
>>>>>
>>>>> Can you please elaborate more what this is for?
>>>>
>>>> Currently, get_function callback returns the state of a gpio
>>>> (GPIOF_INPUT, GPIOF_OUTPUT or GPIO_FUNC).
>>>>
>>>> If a pin's state is GPIO_FUNC, it's useful to know which alternate
>>>> function is selected for debug purpose.
>>>>
>>>> As example, on STM32 SoCs, a pins can be configured as GPIO or also
>>>> configured with up to 16 alternate function. Using command "gpio", user
>>>> can retrieve this information as shown below:
>>>>
>>>> STM32MP> gpio state -a
>>>>
>>>> Bank GPIOA:
>>>> GPIOA0: unused: 0 [ ]
>>>> GPIOA1: unused: 0 [ ]
>>>> GPIOA2: unused: 0 [ ]
>>>> GPIOA3: unused: 0 [ ]
>>>> GPIOA4: unused: 0 [ ]
>>>> GPIOA5: unused: 0 [ ]
>>>> GPIOA6: unused: 0 [ ]
>>>> GPIOA7: unused: 0 [ ]
>>>> GPIOA8: func: 9
>>>> GPIOA9: func: 10
>>>> GPIOA10: unused: 0 [ ]
>>>> GPIOA11: unused: 0 [ ]
>>>> GPIOA12: unused: 0 [ ]
>>>> GPIOA13: output: 1 [x] red.gpios
>>>> GPIOA14: output: 0 [x] green.gpios
>>>> GPIOA15: unused: 0 [ ]
>>>>
>>>> It shows that pin 8 and 9 of bank A are configured respectively in
>>>> alternate function 9 and 10.
>>>
>>> Can you list that functionality? Isn't it something what should be shown
>>> with a name instead of number?
>>
>> Listing this functionality is possible and printing name instead of
>> number also, but for each pins, alternate function configuration is
>> different and need to store all these informations into a table, which
>> consumes a lot of memory.
>>
>>> I expect that user has to go to any decode table to find out what 9 or
>>> 10 means.
>>
>> Yes, using the SoC's datasheet, user can find the corresponding
>> alternate function description.
>
> Can you give some examples of that functionality or link to datasheet
> and page?
As example, regarding the pin 8 of bank A (GPIOA8 above), alternate
function 9 means that pins is currently configured as SDMMC2_DATA4.
For this pins, here are all the possible alternate function :
alternate function description
AF0 MCO0
AF1 TIM1_CH1
AF2
AF3 TIM8_BKIN2
AF4 I2C3_SCL
AF5 SPI3_MOSI/SDO
AF6
AF7 USART1_CK
AF8 SDMMC2 CKIN
AF9 SDMMC2 DATA4
AF10 USB_SOF
AF11
AF12 SAI4_SD_B
AF13 UART7_RX
AF14 LCD_R6
AF15 EVENTOUT
Patrice
>
> M
> _______________________________________________
> Uboot-stm32 mailing list
> Uboot-stm32 at st-md-mailman.stormreply.com
> https://st-md-mailman.stormreply.com/mailman/listinfo/uboot-stm32
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* [U-Boot] [Uboot-stm32] [PATCH v3 0/5] Add get_alt_function ops
2018-09-11 13:31 ` [U-Boot] [Uboot-stm32] " Patrice CHOTARD
@ 2018-09-11 13:45 ` Michal Simek
0 siblings, 0 replies; 15+ messages in thread
From: Michal Simek @ 2018-09-11 13:45 UTC (permalink / raw)
To: u-boot
On 11.9.2018 15:31, Patrice CHOTARD wrote:
> On 09/11/2018 02:17 PM, Michal Simek wrote:
>> On 11.9.2018 13:12, Patrice CHOTARD wrote:
>>> Hi,
>>>
>>> On 09/11/2018 12:24 PM, Michal Simek wrote:
>>>> Hi,
>>>>
>>>> On 11.9.2018 09:31, Patrice CHOTARD wrote:
>>>>> Hi Michal
>>>>>
>>>>> On 09/11/2018 07:51 AM, Michal Simek wrote:
>>>>>> On 10.9.2018 18:11, Patrice Chotard wrote:
>>>>>>>
>>>>>>> This series :
>>>>>>> - Add new gpio ops get_alt_function
>>>>>>> - Add get_function and get_alt_function support to stm32 gpio driver
>>>>>>> - Add get_alt_function test
>>>>>>
>>>>>>
>>>>>> I went quickly over this series and TBH I am not getting what this is
>>>>>> for. It looks like that this is the part of pinmux.
>>>>>>
>>>>>> Can you please elaborate more what this is for?
>>>>>
>>>>> Currently, get_function callback returns the state of a gpio
>>>>> (GPIOF_INPUT, GPIOF_OUTPUT or GPIO_FUNC).
>>>>>
>>>>> If a pin's state is GPIO_FUNC, it's useful to know which alternate
>>>>> function is selected for debug purpose.
>>>>>
>>>>> As example, on STM32 SoCs, a pins can be configured as GPIO or also
>>>>> configured with up to 16 alternate function. Using command "gpio", user
>>>>> can retrieve this information as shown below:
>>>>>
>>>>> STM32MP> gpio state -a
>>>>>
>>>>> Bank GPIOA:
>>>>> GPIOA0: unused: 0 [ ]
>>>>> GPIOA1: unused: 0 [ ]
>>>>> GPIOA2: unused: 0 [ ]
>>>>> GPIOA3: unused: 0 [ ]
>>>>> GPIOA4: unused: 0 [ ]
>>>>> GPIOA5: unused: 0 [ ]
>>>>> GPIOA6: unused: 0 [ ]
>>>>> GPIOA7: unused: 0 [ ]
>>>>> GPIOA8: func: 9
>>>>> GPIOA9: func: 10
>>>>> GPIOA10: unused: 0 [ ]
>>>>> GPIOA11: unused: 0 [ ]
>>>>> GPIOA12: unused: 0 [ ]
>>>>> GPIOA13: output: 1 [x] red.gpios
>>>>> GPIOA14: output: 0 [x] green.gpios
>>>>> GPIOA15: unused: 0 [ ]
>>>>>
>>>>> It shows that pin 8 and 9 of bank A are configured respectively in
>>>>> alternate function 9 and 10.
>>>>
>>>> Can you list that functionality? Isn't it something what should be shown
>>>> with a name instead of number?
>>>
>>> Listing this functionality is possible and printing name instead of
>>> number also, but for each pins, alternate function configuration is
>>> different and need to store all these informations into a table, which
>>> consumes a lot of memory.
>>>
>>>> I expect that user has to go to any decode table to find out what 9 or
>>>> 10 means.
>>>
>>> Yes, using the SoC's datasheet, user can find the corresponding
>>> alternate function description.
>>
>> Can you give some examples of that functionality or link to datasheet
>> and page?
>
> As example, regarding the pin 8 of bank A (GPIOA8 above), alternate
> function 9 means that pins is currently configured as SDMMC2_DATA4.
>
> For this pins, here are all the possible alternate function :
>
> alternate function description
>
> AF0 MCO0
> AF1 TIM1_CH1
> AF2
> AF3 TIM8_BKIN2
> AF4 I2C3_SCL
> AF5 SPI3_MOSI/SDO
> AF6
> AF7 USART1_CK
> AF8 SDMMC2 CKIN
> AF9 SDMMC2 DATA4
> AF10 USB_SOF
> AF11
> AF12 SAI4_SD_B
> AF13 UART7_RX
> AF14 LCD_R6
> AF15 EVENTOUT
ok that means that it is pin mux decoding and you want to use gpio
status command to show it. I would expect when you set a value for gpio
that nothing is going to change because it is not propagated to output pin.
I can do it for zynq/zynqmp device but I don't think this is something
what should be shown via gpio status command.
In my case there is even different address range which should be used to
get this value.
Anyway I think that it would be better to create regular pinctrl command
for this instead of trying to reuse gpio command for that but that's
just my opinion.
Thanks,
Michal
^ permalink raw reply [flat|nested] 15+ messages in thread
* [U-Boot] [PATCH v3 0/5] Add get_alt_function ops
2018-09-11 7:31 ` Patrice CHOTARD
2018-09-11 10:24 ` Michal Simek
@ 2018-09-11 17:03 ` Stephen Warren
2018-09-12 7:09 ` Patrice CHOTARD
1 sibling, 1 reply; 15+ messages in thread
From: Stephen Warren @ 2018-09-11 17:03 UTC (permalink / raw)
To: u-boot
On 09/11/2018 01:31 AM, Patrice CHOTARD wrote:
> Hi Michal
>
> On 09/11/2018 07:51 AM, Michal Simek wrote:
>> On 10.9.2018 18:11, Patrice Chotard wrote:
>>>
>>> This series :
>>> - Add new gpio ops get_alt_function
>>> - Add get_function and get_alt_function support to stm32 gpio driver
>>> - Add get_alt_function test
>>
>>
>> I went quickly over this series and TBH I am not getting what this is
>> for. It looks like that this is the part of pinmux.
>>
>> Can you please elaborate more what this is for?
>
> Currently, get_function callback returns the state of a gpio
> (GPIOF_INPUT, GPIOF_OUTPUT or GPIO_FUNC).
>
> If a pin's state is GPIO_FUNC, it's useful to know which alternate
> function is selected for debug purpose.
This sounds like pinmux not GPIO. There should be a pinmux printing
command to dump the pinmux state; the GPIO command shouldn't know about it.
^ permalink raw reply [flat|nested] 15+ messages in thread
* [U-Boot] [PATCH v3 0/5] Add get_alt_function ops
2018-09-11 17:03 ` [U-Boot] " Stephen Warren
@ 2018-09-12 7:09 ` Patrice CHOTARD
0 siblings, 0 replies; 15+ messages in thread
From: Patrice CHOTARD @ 2018-09-12 7:09 UTC (permalink / raw)
To: u-boot
Hi Stephen
On 09/11/2018 07:03 PM, Stephen Warren wrote:
> On 09/11/2018 01:31 AM, Patrice CHOTARD wrote:
>> Hi Michal
>>
>> On 09/11/2018 07:51 AM, Michal Simek wrote:
>>> On 10.9.2018 18:11, Patrice Chotard wrote:
>>>>
>>>> This series :
>>>> - Add new gpio ops get_alt_function
>>>> - Add get_function and get_alt_function support to stm32 gpio driver
>>>> - Add get_alt_function test
>>>
>>>
>>> I went quickly over this series and TBH I am not getting what this is
>>> for. It looks like that this is the part of pinmux.
>>>
>>> Can you please elaborate more what this is for?
>>
>> Currently, get_function callback returns the state of a gpio
>> (GPIOF_INPUT, GPIOF_OUTPUT or GPIO_FUNC).
>>
>> If a pin's state is GPIO_FUNC, it's useful to know which alternate
>> function is selected for debug purpose.
>
> This sounds like pinmux not GPIO. There should be a pinmux printing
> command to dump the pinmux state; the GPIO command shouldn't know about it.
Ok i will abandon this series and submit a new one implementing a new
pinmux command.
Thanks
Patrice
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2018-09-12 7:09 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-10 16:11 [U-Boot] [PATCH v3 0/5] Add get_alt_function ops Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 1/5] dm: gpio: " Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 2/5] gpio: stm32f7: Add ops get_function Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 3/5] gpio: stm32f7: Add ops get_alt_function Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 4/5] gpio: sandbox: Rename GPIOF_(OUTPUT|HIGH|ODR) to SANDBOX_GPIO_(OUTPUT|HIGH|ODR) Patrice Chotard
2018-09-10 16:11 ` [U-Boot] [PATCH v3 5/5] test: dm: Add gpio get_alt_function ops test Patrice Chotard
2018-09-11 5:51 ` [U-Boot] [PATCH v3 0/5] Add get_alt_function ops Michal Simek
2018-09-11 7:31 ` Patrice CHOTARD
2018-09-11 10:24 ` Michal Simek
2018-09-11 11:12 ` Patrice CHOTARD
2018-09-11 12:17 ` Michal Simek
2018-09-11 13:31 ` [U-Boot] [Uboot-stm32] " Patrice CHOTARD
2018-09-11 13:45 ` Michal Simek
2018-09-11 17:03 ` [U-Boot] " Stephen Warren
2018-09-12 7:09 ` Patrice CHOTARD
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.