diff options
author | Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> | 2014-02-14 20:28:43 -0500 |
---|---|---|
committer | Simon Horman <horms+renesas@verge.net.au> | 2014-02-16 22:20:36 -0500 |
commit | ca6da5319761308e38bb97af9030d16e223355d1 (patch) | |
tree | f9d18084cb341913a6aac36c5bf9d9b563cca37f | |
parent | 78060840cd2286c0e382641e60dcd4145f82f881 (diff) |
ARM: shmobile: BOCK-W: set proper DMA masks for Ether device
Ether MAC is a DMA-capable device and so should have 'dev.dma_mask' and
'dev.coherent_dma_mask' fields set properly, to reflect 32-bit DMA addressing
ability.
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-rw-r--r-- | arch/arm/mach-shmobile/board-bockw.c | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/arch/arm/mach-shmobile/board-bockw.c b/arch/arm/mach-shmobile/board-bockw.c index 684a529e400d..aaed215e96b9 100644 --- a/arch/arm/mach-shmobile/board-bockw.c +++ b/arch/arm/mach-shmobile/board-bockw.c | |||
@@ -1,9 +1,9 @@ | |||
1 | /* | 1 | /* |
2 | * Bock-W board support | 2 | * Bock-W board support |
3 | * | 3 | * |
4 | * Copyright (C) 2013 Renesas Solutions Corp. | 4 | * Copyright (C) 2013-2014 Renesas Solutions Corp. |
5 | * Copyright (C) 2013 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> | 5 | * Copyright (C) 2013 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
6 | * Copyright (C) 2013 Cogent Embedded, Inc. | 6 | * Copyright (C) 2013-2014 Cogent Embedded, Inc. |
7 | * | 7 | * |
8 | * This program is free software; you can redistribute it and/or modify | 8 | * This program is free software; you can redistribute it and/or modify |
9 | * it under the terms of the GNU General Public License as published by | 9 | * it under the terms of the GNU General Public License as published by |
@@ -235,6 +235,17 @@ static struct sh_eth_plat_data ether_platform_data __initdata = { | |||
235 | .no_ether_link = 1, | 235 | .no_ether_link = 1, |
236 | }; | 236 | }; |
237 | 237 | ||
238 | static struct platform_device_info ether_info __initdata = { | ||
239 | .parent = &platform_bus, | ||
240 | .name = "r8a777x-ether", | ||
241 | .id = -1, | ||
242 | .res = ether_resources, | ||
243 | .num_res = ARRAY_SIZE(ether_resources), | ||
244 | .data = ðer_platform_data, | ||
245 | .size_data = sizeof(ether_platform_data), | ||
246 | .dma_mask = DMA_BIT_MASK(32), | ||
247 | }; | ||
248 | |||
238 | /* I2C */ | 249 | /* I2C */ |
239 | static struct i2c_board_info i2c0_devices[] = { | 250 | static struct i2c_board_info i2c0_devices[] = { |
240 | { | 251 | { |
@@ -592,11 +603,7 @@ static void __init bockw_init(void) | |||
592 | r8a7778_init_irq_extpin(1); | 603 | r8a7778_init_irq_extpin(1); |
593 | r8a7778_add_standard_devices(); | 604 | r8a7778_add_standard_devices(); |
594 | 605 | ||
595 | platform_device_register_resndata(&platform_bus, "r8a777x-ether", -1, | 606 | platform_device_register_full(ðer_info); |
596 | ether_resources, | ||
597 | ARRAY_SIZE(ether_resources), | ||
598 | ðer_platform_data, | ||
599 | sizeof(ether_platform_data)); | ||
600 | 607 | ||
601 | platform_device_register_full(&vin0_info); | 608 | platform_device_register_full(&vin0_info); |
602 | /* VIN1 has a pin conflict with Ether */ | 609 | /* VIN1 has a pin conflict with Ether */ |