[U-Boot] [PATCH 3/3] exynos: pinmux: remove unnecessary routine

Because of the list of peripherals is not sequential, such a routine does not check for valid correctly. Error check will be done when call the exynos_pinmux_config function.
Signed-off-by: Minkyu Kang mk7.kang@samsung.com --- arch/arm/cpu/armv7/exynos/pinmux.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/arch/arm/cpu/armv7/exynos/pinmux.c b/arch/arm/cpu/armv7/exynos/pinmux.c index 904177a..645c497 100644 --- a/arch/arm/cpu/armv7/exynos/pinmux.c +++ b/arch/arm/cpu/armv7/exynos/pinmux.c @@ -751,12 +751,7 @@ static int exynos5_pinmux_decode_periph_id(const void *blob, int node) if (err) return PERIPH_ID_NONE;
- /* check for invalid peripheral id */ - if ((PERIPH_ID_SDMMC4 > cell[1]) || (cell[1] < PERIPH_ID_UART0)) - return cell[1]; - - debug(" invalid peripheral id\n"); - return PERIPH_ID_NONE; + return cell[1]; }
int pinmux_decode_periph_id(const void *blob, int node)

Hi Minkyu Knag,
On Wed, Jan 29, 2014 at 1:34 PM, Minkyu Kang mk7.kang@samsung.com wrote:
Because of the list of peripherals is not sequential, such a routine does not check for valid correctly. Error check will be done when call the exynos_pinmux_config function.
Signed-off-by: Minkyu Kang mk7.kang@samsung.com
arch/arm/cpu/armv7/exynos/pinmux.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/arch/arm/cpu/armv7/exynos/pinmux.c b/arch/arm/cpu/armv7/exynos/pinmux.c index 904177a..645c497 100644 --- a/arch/arm/cpu/armv7/exynos/pinmux.c +++ b/arch/arm/cpu/armv7/exynos/pinmux.c @@ -751,12 +751,7 @@ static int exynos5_pinmux_decode_periph_id(const void *blob, int node) if (err) return PERIPH_ID_NONE;
/* check for invalid peripheral id */
if ((PERIPH_ID_SDMMC4 > cell[1]) || (cell[1] < PERIPH_ID_UART0))
return cell[1];
Cant we check if less than PERIPH_ID_COUNT, this way we can atleast cut down some wrong values. Or value has to range between PERIPH_ID_UART0 and PERIPH_ID_COUNT

On 29/01/14 18:01, Rajeshwari Birje wrote:
Hi Minkyu Knag,
On Wed, Jan 29, 2014 at 1:34 PM, Minkyu Kang mk7.kang@samsung.com wrote:
Because of the list of peripherals is not sequential, such a routine does not check for valid correctly. Error check will be done when call the exynos_pinmux_config function.
Signed-off-by: Minkyu Kang mk7.kang@samsung.com
arch/arm/cpu/armv7/exynos/pinmux.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/arch/arm/cpu/armv7/exynos/pinmux.c b/arch/arm/cpu/armv7/exynos/pinmux.c index 904177a..645c497 100644 --- a/arch/arm/cpu/armv7/exynos/pinmux.c +++ b/arch/arm/cpu/armv7/exynos/pinmux.c @@ -751,12 +751,7 @@ static int exynos5_pinmux_decode_periph_id(const void *blob, int node) if (err) return PERIPH_ID_NONE;
/* check for invalid peripheral id */
if ((PERIPH_ID_SDMMC4 > cell[1]) || (cell[1] < PERIPH_ID_UART0))
return cell[1];
Cant we check if less than PERIPH_ID_COUNT, this way we can atleast cut down some wrong values. Or value has to range between PERIPH_ID_UART0 and PERIPH_ID_COUNT
possible. but I think it's unnecessary. It can not check error correctly. for example, if cell[1] is 55 then it's valid but does not supported.
Thanks, Minkyu Kang.

Hi Minkyu Kang,
On Mon, Feb 3, 2014 at 12:53 PM, Minkyu Kang mk7.kang@samsung.com wrote:
On 29/01/14 18:01, Rajeshwari Birje wrote:
Hi Minkyu Knag,
On Wed, Jan 29, 2014 at 1:34 PM, Minkyu Kang mk7.kang@samsung.com wrote:
Because of the list of peripherals is not sequential, such a routine does not check for valid correctly. Error check will be done when call the exynos_pinmux_config function.
Signed-off-by: Minkyu Kang mk7.kang@samsung.com
arch/arm/cpu/armv7/exynos/pinmux.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/arch/arm/cpu/armv7/exynos/pinmux.c b/arch/arm/cpu/armv7/exynos/pinmux.c index 904177a..645c497 100644 --- a/arch/arm/cpu/armv7/exynos/pinmux.c +++ b/arch/arm/cpu/armv7/exynos/pinmux.c @@ -751,12 +751,7 @@ static int exynos5_pinmux_decode_periph_id(const void *blob, int node) if (err) return PERIPH_ID_NONE;
/* check for invalid peripheral id */
if ((PERIPH_ID_SDMMC4 > cell[1]) || (cell[1] < PERIPH_ID_UART0))
return cell[1];
Cant we check if less than PERIPH_ID_COUNT, this way we can atleast cut down some wrong values. Or value has to range between PERIPH_ID_UART0 and PERIPH_ID_COUNT
possible. but I think it's unnecessary. It can not check error correctly. for example, if cell[1] is 55 then it's valid but does not supported.
Ok the point seems valid.
Acked-by: Rajeshwari Shinderajeshwari.s@samsung.com
Thanks, Minkyu Kang.

Acked-by: Jaehoon Chung jh80.chung@samsung.com
On 01/29/2014 05:04 PM, Minkyu Kang wrote:
Because of the list of peripherals is not sequential, such a routine does not check for valid correctly. Error check will be done when call the exynos_pinmux_config function.
Signed-off-by: Minkyu Kang mk7.kang@samsung.com
arch/arm/cpu/armv7/exynos/pinmux.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/arch/arm/cpu/armv7/exynos/pinmux.c b/arch/arm/cpu/armv7/exynos/pinmux.c index 904177a..645c497 100644 --- a/arch/arm/cpu/armv7/exynos/pinmux.c +++ b/arch/arm/cpu/armv7/exynos/pinmux.c @@ -751,12 +751,7 @@ static int exynos5_pinmux_decode_periph_id(const void *blob, int node) if (err) return PERIPH_ID_NONE;
- /* check for invalid peripheral id */
- if ((PERIPH_ID_SDMMC4 > cell[1]) || (cell[1] < PERIPH_ID_UART0))
return cell[1];
- debug(" invalid peripheral id\n");
- return PERIPH_ID_NONE;
- return cell[1];
}
int pinmux_decode_periph_id(const void *blob, int node)

On 29/01/14 17:04, Minkyu Kang wrote:
Because of the list of peripherals is not sequential, such a routine does not check for valid correctly. Error check will be done when call the exynos_pinmux_config function.
Signed-off-by: Minkyu Kang mk7.kang@samsung.com
arch/arm/cpu/armv7/exynos/pinmux.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-)
applied to u-boot-samsung.
Minkyu Kang.
participants (3)
-
Jaehoon Chung
-
Minkyu Kang
-
Rajeshwari Birje