diff options
Diffstat (limited to 'arch/arm/mach-davinci/board-dm646x-evm.c')
-rw-r--r-- | arch/arm/mach-davinci/board-dm646x-evm.c | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-davinci/board-dm646x-evm.c index 4502f346b2b0..f6ac9ba74878 100644 --- a/arch/arm/mach-davinci/board-dm646x-evm.c +++ b/arch/arm/mach-davinci/board-dm646x-evm.c | |||
@@ -42,6 +42,7 @@ | |||
42 | #include <mach/nand.h> | 42 | #include <mach/nand.h> |
43 | #include <mach/clock.h> | 43 | #include <mach/clock.h> |
44 | #include <mach/cdce949.h> | 44 | #include <mach/cdce949.h> |
45 | #include <mach/aemif.h> | ||
45 | 46 | ||
46 | #include "clock.h" | 47 | #include "clock.h" |
47 | 48 | ||
@@ -71,6 +72,16 @@ static struct mtd_partition davinci_nand_partitions[] = { | |||
71 | } | 72 | } |
72 | }; | 73 | }; |
73 | 74 | ||
75 | static struct davinci_aemif_timing dm6467tevm_nandflash_timing = { | ||
76 | .wsetup = 29, | ||
77 | .wstrobe = 24, | ||
78 | .whold = 14, | ||
79 | .rsetup = 19, | ||
80 | .rstrobe = 33, | ||
81 | .rhold = 0, | ||
82 | .ta = 29, | ||
83 | }; | ||
84 | |||
74 | static struct davinci_nand_pdata davinci_nand_data = { | 85 | static struct davinci_nand_pdata davinci_nand_data = { |
75 | .mask_cle = 0x80000, | 86 | .mask_cle = 0x80000, |
76 | .mask_ale = 0x40000, | 87 | .mask_ale = 0x40000, |
@@ -718,9 +729,7 @@ static struct davinci_uart_config uart_config __initdata = { | |||
718 | .enabled_uarts = (1 << 0), | 729 | .enabled_uarts = (1 << 0), |
719 | }; | 730 | }; |
720 | 731 | ||
721 | #define DM646X_EVM_PHY_MASK (0x2) | 732 | #define DM646X_EVM_PHY_ID "0:01" |
722 | #define DM646X_EVM_MDIO_FREQUENCY (2200000) /* PHY bus frequency */ | ||
723 | |||
724 | /* | 733 | /* |
725 | * The following EDMA channels/slots are not being used by drivers (for | 734 | * The following EDMA channels/slots are not being used by drivers (for |
726 | * example: Timer, GPIO, UART events etc) on dm646x, hence they are being | 735 | * example: Timer, GPIO, UART events etc) on dm646x, hence they are being |
@@ -763,6 +772,9 @@ static __init void evm_init(void) | |||
763 | dm646x_init_mcasp0(&dm646x_evm_snd_data[0]); | 772 | dm646x_init_mcasp0(&dm646x_evm_snd_data[0]); |
764 | dm646x_init_mcasp1(&dm646x_evm_snd_data[1]); | 773 | dm646x_init_mcasp1(&dm646x_evm_snd_data[1]); |
765 | 774 | ||
775 | if (machine_is_davinci_dm6467tevm()) | ||
776 | davinci_nand_data.timing = &dm6467tevm_nandflash_timing; | ||
777 | |||
766 | platform_device_register(&davinci_nand_device); | 778 | platform_device_register(&davinci_nand_device); |
767 | 779 | ||
768 | dm646x_init_edma(dm646x_edma_rsv); | 780 | dm646x_init_edma(dm646x_edma_rsv); |
@@ -770,8 +782,7 @@ static __init void evm_init(void) | |||
770 | if (HAS_ATA) | 782 | if (HAS_ATA) |
771 | davinci_init_ide(); | 783 | davinci_init_ide(); |
772 | 784 | ||
773 | soc_info->emac_pdata->phy_mask = DM646X_EVM_PHY_MASK; | 785 | soc_info->emac_pdata->phy_id = DM646X_EVM_PHY_ID; |
774 | soc_info->emac_pdata->mdio_max_freq = DM646X_EVM_MDIO_FREQUENCY; | ||
775 | } | 786 | } |
776 | 787 | ||
777 | #define DM646X_EVM_REF_FREQ 27000000 | 788 | #define DM646X_EVM_REF_FREQ 27000000 |
@@ -786,8 +797,6 @@ void __init dm646x_board_setup_refclk(struct clk *clk) | |||
786 | } | 797 | } |
787 | 798 | ||
788 | MACHINE_START(DAVINCI_DM6467_EVM, "DaVinci DM646x EVM") | 799 | MACHINE_START(DAVINCI_DM6467_EVM, "DaVinci DM646x EVM") |
789 | .phys_io = IO_PHYS, | ||
790 | .io_pg_offst = (__IO_ADDRESS(IO_PHYS) >> 18) & 0xfffc, | ||
791 | .boot_params = (0x80000100), | 800 | .boot_params = (0x80000100), |
792 | .map_io = davinci_map_io, | 801 | .map_io = davinci_map_io, |
793 | .init_irq = davinci_irq_init, | 802 | .init_irq = davinci_irq_init, |
@@ -796,8 +805,6 @@ MACHINE_START(DAVINCI_DM6467_EVM, "DaVinci DM646x EVM") | |||
796 | MACHINE_END | 805 | MACHINE_END |
797 | 806 | ||
798 | MACHINE_START(DAVINCI_DM6467TEVM, "DaVinci DM6467T EVM") | 807 | MACHINE_START(DAVINCI_DM6467TEVM, "DaVinci DM6467T EVM") |
799 | .phys_io = IO_PHYS, | ||
800 | .io_pg_offst = (__IO_ADDRESS(IO_PHYS) >> 18) & 0xfffc, | ||
801 | .boot_params = (0x80000100), | 808 | .boot_params = (0x80000100), |
802 | .map_io = davinci_map_io, | 809 | .map_io = davinci_map_io, |
803 | .init_irq = davinci_irq_init, | 810 | .init_irq = davinci_irq_init, |