Re: [PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits
Jacob, Please avoid sending copies of your messages to all addresses you can find for me. I only require one copy, preferably to the linux@ address if its mainly about Linux stuff. Thanks. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits
On Wed, Aug 11, 2010 at 08:51:22PM +0200, ext Jacob Tanenbaum wrote: Valid point we will remove the ifdefs please follow the Netiquette [1]. Send only plain text emails, with your replies right below the topic you're replying to. Don't top-post, it makes it really difficult to follow you're emails. http://www.elinux.org/Netiquette -- balbi DefectiveByDesign.org -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: [PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits
-Original Message- From: Kevin Hilman [mailto:khil...@deeprootsystems.com] Sent: Wednesday, August 11, 2010 2:05 PM To: Jacob Tanenbaum Cc: li...@arm.linux.org.uk; linux-omap@vger.kernel.org; linux-ker...@vger.kernel.org; r...@arm.linux.org.uk; t...@atomide.com Subject: Re: [PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits Jacob Tanenbaum writes: > Adding LogicPD OMAP3 board support > > Adding support for LogicPD's OMAP 3530 LV SOM and > OMAP 35x Torpedo board. > >Tested against: linux-next 81e09f50c93edff607259cbe374a3006c9c5fa74 > Signed-off-by: Jacob Tanenbaum [...] > +/* Micron MT46H32M32LF-6 */ > +/* FIXME: borrowed from sdram-micron-mt46h32m32lf-6.h because on LogicPD > + * boards we can't use the default values -- why? I suspect the reason > + * lies in the boot strap code. We correct this part if we have ported > + * U-Boot and X-Load. */ Another option here instead of re-defining the struct is to includ the original header and just change the values you need to. That way you can describe the reasons behind the values that are changing. Will fix [...] > +static struct omap_board_config_kernel omap3logic_config[] __initdata = { > +}; > + > +static void __init omap3logic_init_irq(void) > +{ > + omap_board_config = omap3logic_config; > + omap_board_config_size = ARRAY_SIZE(omap3logic_config); > + omap2_init_common_hw(mt46h32m32lf6_sdrc_params, > + mt46h32m32lf6_sdrc_params); > + omap_init_irq(); > +#ifdef CONFIG_OMAP_32K_TIMER > + omap2_gp_clockevent_set_gptimer(12); > +#endif Why do you need GPT12? Was this a copy-paste from Beagle? Certain revs of beagle had this limitation due to a board design problem, so unless you've inherited the same board-design problem, you should be find with the default. Will test and fix Kevin -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: [PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits
Valid point we will remove the ifdefs -Original Message- From: Felipe Balbi [mailto:felipe.ba...@nokia.com] Sent: Wednesday, August 11, 2010 2:49 PM To: Jacob Tanenbaum Cc: Balbi Felipe (Nokia-MS/Helsinki); li...@arm.linux.org.uk; linux-omap@vger.kernel.org; linux-ker...@vger.kernel.org; r...@arm.linux.org.uk; t...@atomide.com Subject: Re: [PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits Hi, On Wed, Aug 11, 2010 at 08:45:22PM +0200, ext Jacob Tanenbaum wrote: >No one else uses the ifdef but we were told from an earlier submission >we should because if both boards are disabled in the .config it would >inform the user on bootup What do you mean ? If these boards are't enabled on .config then this board-file won't even get added to the binary so those machine ids won't be available, right ? -- balbi DefectiveByDesign.org -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits
Hi, On Wed, Aug 11, 2010 at 08:45:22PM +0200, ext Jacob Tanenbaum wrote: No one else uses the ifdef but we were told from an earlier submission we should because if both boards are disabled in the .config it would inform the user on bootup What do you mean ? If these boards are't enabled on .config then this board-file won't even get added to the binary so those machine ids won't be available, right ? -- balbi DefectiveByDesign.org -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: [PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits
-Original Message- From: Felipe Balbi [mailto:felipe.ba...@nokia.com] Sent: Wednesday, August 11, 2010 1:23 PM To: Jacob Tanenbaum Cc: li...@arm.linux.org.uk; linux-omap@vger.kernel.org; linux-ker...@vger.kernel.org; r...@arm.linux.org.uk; t...@atomide.com Subject: Re: [PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits Hi Jacob, few style comments only On Wed, Aug 11, 2010 at 06:31:34PM +0200, ext Jacob Tanenbaum wrote: > > Adding LogicPD OMAP3 board support > > Adding support for LogicPD's OMAP 3530 LV SOM and > OMAP 35x Torpedo board. > >Tested against: linux-next 81e09f50c93edff607259cbe374a3006c9c5fa74 > Signed-off-by: Jacob Tanenbaum don't tab here. Please remove. Will fix >+static int omap3logic_twl_gpio_setup(struct device *dev, >+ unsigned gpio, unsigned ngpio) >+{ >+ return 0; >+} no gpio setup ?? If you truly don't need, you don't have to add this stub function. Will fix >+static struct twl4030_gpio_platform_data omap3logic_gpio_data = { >+ .gpio_base = OMAP_MAX_GPIO_LINES, >+ .irq_base = TWL4030_GPIO_IRQ_BASE, >+ .irq_end= TWL4030_GPIO_IRQ_END, >+ .use_leds = true, >+ .pullups= BIT(1), >+ .pulldowns = BIT(2) | BIT(6) | BIT(7) | BIT(8) >+ | BIT(13) | BIT(15) | BIT(16) | BIT(17), >+ .setup = omap3logic_twl_gpio_setup, >+}; >+ >+static struct twl4030_platform_data omap3logic_twldata = { >+ .irq_base = TWL4030_IRQ_BASE, >+ .irq_end= TWL4030_IRQ_END, >+ >+ /* platform_data for children goes here */ >+ .gpio = &omap3logic_gpio_data, no USB on this board ? there is USB support it will be added in later >+static struct omap_board_config_kernel omap3logic_config[] __initdata = { >+}; just don't assign anything ? will fix >+static void __init omap3logic_init_irq(void) >+{ >+ omap_board_config = omap3logic_config; >+ omap_board_config_size = ARRAY_SIZE(omap3logic_config); >+ omap2_init_common_hw(mt46h32m32lf6_sdrc_params, >+ mt46h32m32lf6_sdrc_params); >+ omap_init_irq(); >+#ifdef CONFIG_OMAP_32K_TIMER >+ omap2_gp_clockevent_set_gptimer(12); >+#endif >+ omap_gpio_init(); >+} >+ >+ >+ one blank line only will fix >+static void __init omap3logic_init(void) >+{ >+ omap3logic_i2c_init(); >+ omap_serial_init(); >+ >+ /* Ensure SDRC pins are mux'd for self-refresh */ >+/*omap_cfg_reg(H16_34XX_SDRC_CKE0); >+ omap_cfg_reg(H17_34XX_SDRC_CKE1); >+ omap_cfg_reg(SDRC_CKE0); >+ omap_cfg_reg(SDRC_CKE1); */ remove this commented code if it's not used yet. I made a mistake rebasing this code gets removed in patch 4, will fix >+#ifdef CONFIG_MACH_OMAP3_TORPEDO no need to wrap on this ifdef, please remove. >+#ifdef CONFIG_MACH_OMAP3530_LV_SOM neither this. No one else uses the ifdef but we were told from an earlier submission we should because if both boards are disabled in the .config it would inform the user on bootup -- balbi DefectiveByDesign.org -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits
Jacob Tanenbaum writes: > Adding LogicPD OMAP3 board support > > Adding support for LogicPD's OMAP 3530 LV SOM and > OMAP 35x Torpedo board. > >Tested against: linux-next 81e09f50c93edff607259cbe374a3006c9c5fa74 > Signed-off-by: Jacob Tanenbaum [...] > +/* Micron MT46H32M32LF-6 */ > +/* FIXME: borrowed from sdram-micron-mt46h32m32lf-6.h because on LogicPD > + * boards we can't use the default values -- why? I suspect the reason > + * lies in the boot strap code. We correct this part if we have ported > + * U-Boot and X-Load. */ Another option here instead of re-defining the struct is to includ the original header and just change the values you need to. That way you can describe the reasons behind the values that are changing. [...] > +static struct omap_board_config_kernel omap3logic_config[] __initdata = { > +}; > + > +static void __init omap3logic_init_irq(void) > +{ > + omap_board_config = omap3logic_config; > + omap_board_config_size = ARRAY_SIZE(omap3logic_config); > + omap2_init_common_hw(mt46h32m32lf6_sdrc_params, > + mt46h32m32lf6_sdrc_params); > + omap_init_irq(); > +#ifdef CONFIG_OMAP_32K_TIMER > + omap2_gp_clockevent_set_gptimer(12); > +#endif Why do you need GPT12? Was this a copy-paste from Beagle? Certain revs of beagle had this limitation due to a board design problem, so unless you've inherited the same board-design problem, you should be find with the default. Kevin -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits
Hi Jacob. Some quick comments. Sam > diff --git a/arch/arm/configs/omap3_defconfig > b/arch/arm/configs/omap3_defconfig > index 5db9a6b..f510dfd 100644 > --- a/arch/arm/configs/omap3_defconfig > +++ b/arch/arm/configs/omap3_defconfig > @@ -37,6 +37,8 @@ CONFIG_MACH_OMAP_2430SDP=y > CONFIG_MACH_OMAP3_BEAGLE=y > CONFIG_MACH_DEVKIT8000=y > CONFIG_MACH_OMAP_LDP=y > +CONFIG_MACH_OMAP3530_LV_SOM=y > +CONFIG_MACH_OMAP3_TORPEDO=y > CONFIG_MACH_OVERO=y > CONFIG_MACH_OMAP3EVM=y > CONFIG_MACH_OMAP3517EVM=y Are the omap3_defconfig supposed to enable all omap board variants? Otherwise leave this change out. > diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig > index b48bacf..42e7d4a 100644 > --- a/arch/arm/mach-omap2/Kconfig > +++ b/arch/arm/mach-omap2/Kconfig > @@ -135,6 +135,14 @@ config MACH_OMAP_LDP > default y > select OMAP_PACKAGE_CBB > > +config MACH_OMAP3530_LV_SOM > + bool "OMAP3 Logic 3530 LV SOM board" > + depends on ARCH_OMAP3 > + > +config MACH_OMAP3_TORPEDO > + bool "OMAP3 Logic 35x Torpedo board" > + depends on ARCH_OMAP3 > + Some help would be beneficial. URL's to product descriptions etc could be included there. You may alos consider telling people this is a TI deriviate etc. > +static void __init omap3logic_init_irq(void) > +{ > + omap_board_config = omap3logic_config; > + omap_board_config_size = ARRAY_SIZE(omap3logic_config); > + omap2_init_common_hw(mt46h32m32lf6_sdrc_params, > + mt46h32m32lf6_sdrc_params); > + omap_init_irq(); > +#ifdef CONFIG_OMAP_32K_TIMER > + omap2_gp_clockevent_set_gptimer(12); > +#endif Fix this on the called site. There is zero reason to sprinkle all user of omap2_gp_clockevent_set_gptimer() with ifdef/endif. > + /* Ensure SDRC pins are mux'd for self-refresh */ > +/* omap_cfg_reg(H16_34XX_SDRC_CKE0); > + omap_cfg_reg(H17_34XX_SDRC_CKE1); > + omap_cfg_reg(SDRC_CKE0); > + omap_cfg_reg(SDRC_CKE1); */ Why do we have code that is not in use? -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits
Hi Jacob, few style comments only On Wed, Aug 11, 2010 at 06:31:34PM +0200, ext Jacob Tanenbaum wrote: Adding LogicPD OMAP3 board support Adding support for LogicPD's OMAP 3530 LV SOM and OMAP 35x Torpedo board. Tested against: linux-next 81e09f50c93edff607259cbe374a3006c9c5fa74 Signed-off-by: Jacob Tanenbaum don't tab here. Please remove. +static int omap3logic_twl_gpio_setup(struct device *dev, + unsigned gpio, unsigned ngpio) +{ + return 0; +} no gpio setup ?? If you truly don't need, you don't have to add this stub function. +static struct twl4030_gpio_platform_data omap3logic_gpio_data = { + .gpio_base = OMAP_MAX_GPIO_LINES, + .irq_base = TWL4030_GPIO_IRQ_BASE, + .irq_end= TWL4030_GPIO_IRQ_END, + .use_leds = true, + .pullups= BIT(1), + .pulldowns = BIT(2) | BIT(6) | BIT(7) | BIT(8) + | BIT(13) | BIT(15) | BIT(16) | BIT(17), + .setup = omap3logic_twl_gpio_setup, +}; + +static struct twl4030_platform_data omap3logic_twldata = { + .irq_base = TWL4030_IRQ_BASE, + .irq_end= TWL4030_IRQ_END, + + /* platform_data for children goes here */ + .gpio = &omap3logic_gpio_data, no USB on this board ? +static struct omap_board_config_kernel omap3logic_config[] __initdata = { +}; just don't assign anything ? +static void __init omap3logic_init_irq(void) +{ + omap_board_config = omap3logic_config; + omap_board_config_size = ARRAY_SIZE(omap3logic_config); + omap2_init_common_hw(mt46h32m32lf6_sdrc_params, + mt46h32m32lf6_sdrc_params); + omap_init_irq(); +#ifdef CONFIG_OMAP_32K_TIMER + omap2_gp_clockevent_set_gptimer(12); +#endif + omap_gpio_init(); +} + + + one blank line only +static void __init omap3logic_init(void) +{ + omap3logic_i2c_init(); + omap_serial_init(); + + /* Ensure SDRC pins are mux'd for self-refresh */ +/* omap_cfg_reg(H16_34XX_SDRC_CKE0); + omap_cfg_reg(H17_34XX_SDRC_CKE1); + omap_cfg_reg(SDRC_CKE0); + omap_cfg_reg(SDRC_CKE1); */ remove this commented code if it's not used yet. +#ifdef CONFIG_MACH_OMAP3_TORPEDO no need to wrap on this ifdef, please remove. +#ifdef CONFIG_MACH_OMAP3530_LV_SOM neither this. -- balbi DefectiveByDesign.org -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 1/4] initial support for LogicPD's OMAP3 SOM and TORPEDO development kits
Adding LogicPD OMAP3 board support Adding support for LogicPD's OMAP 3530 LV SOM and OMAP 35x Torpedo board. Tested against: linux-next 81e09f50c93edff607259cbe374a3006c9c5fa74 Signed-off-by: Jacob Tanenbaum --- arch/arm/configs/omap3_defconfig |2 + arch/arm/mach-omap2/Kconfig|8 ++ arch/arm/mach-omap2/Makefile |4 + arch/arm/mach-omap2/board-omap3logic.c | 184 4 files changed, 198 insertions(+), 0 deletions(-) create mode 100644 arch/arm/mach-omap2/board-omap3logic.c diff --git a/arch/arm/configs/omap3_defconfig b/arch/arm/configs/omap3_defconfig index 5db9a6b..f510dfd 100644 --- a/arch/arm/configs/omap3_defconfig +++ b/arch/arm/configs/omap3_defconfig @@ -37,6 +37,8 @@ CONFIG_MACH_OMAP_2430SDP=y CONFIG_MACH_OMAP3_BEAGLE=y CONFIG_MACH_DEVKIT8000=y CONFIG_MACH_OMAP_LDP=y +CONFIG_MACH_OMAP3530_LV_SOM=y +CONFIG_MACH_OMAP3_TORPEDO=y CONFIG_MACH_OVERO=y CONFIG_MACH_OMAP3EVM=y CONFIG_MACH_OMAP3517EVM=y diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig index b48bacf..42e7d4a 100644 --- a/arch/arm/mach-omap2/Kconfig +++ b/arch/arm/mach-omap2/Kconfig @@ -135,6 +135,14 @@ config MACH_OMAP_LDP default y select OMAP_PACKAGE_CBB +config MACH_OMAP3530_LV_SOM + bool "OMAP3 Logic 3530 LV SOM board" + depends on ARCH_OMAP3 + +config MACH_OMAP3_TORPEDO + bool "OMAP3 Logic 35x Torpedo board" + depends on ARCH_OMAP3 + config MACH_OVERO bool "Gumstix Overo board" depends on ARCH_OMAP3 diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile index 63b2d88..bc77d32 100644 --- a/arch/arm/mach-omap2/Makefile +++ b/arch/arm/mach-omap2/Makefile @@ -114,6 +114,10 @@ obj-$(CONFIG_MACH_DEVKIT8000) += board-devkit8000.o \ obj-$(CONFIG_MACH_OMAP_LDP)+= board-ldp.o \ board-flash.o \ hsmmc.o +obj-$(CONFIG_MACH_OMAP3530_LV_SOM) += board-omap3logic.o \ + hsmmc.o +obj-$(CONFIG_MACH_OMAP3_TORPEDO)+= board-omap3logic.o \ + hsmmc.o obj-$(CONFIG_MACH_OVERO) += board-overo.o \ hsmmc.o obj-$(CONFIG_MACH_OMAP3EVM)+= board-omap3evm.o \ diff --git a/arch/arm/mach-omap2/board-omap3logic.c b/arch/arm/mach-omap2/board-omap3logic.c new file mode 100644 index 000..b449f9e --- /dev/null +++ b/arch/arm/mach-omap2/board-omap3logic.c @@ -0,0 +1,184 @@ +/* + * linux/arch/arm/mach-omap2/board-omap3logic.c + * + * Copyright (C) 2010 Li-Pro.Net + * Stephan Linz + * + * Copyright (C) 2010 Logic Product Development, Inc. + * Peter Barada + * + * Modified from Beagle, EVM, and RX51 + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include + +#include +#include +#include +#include + +#include "mux.h" + +#include +#include +#include +#include +#include +#include + +/* Micron MT46H32M32LF-6 */ +/* FIXME: borrowed from sdram-micron-mt46h32m32lf-6.h because on LogicPD + * boards we can't use the default values -- why? I suspect the reason + * lies in the boot strap code. We correct this part if we have ported + * U-Boot and X-Load. */ + +static struct omap_sdrc_params mt46h32m32lf6_sdrc_params[] = { + [0] = { + .rate= 16600, + .actim_ctrla = 0xaa9db4c6, + .actim_ctrlb = 0x00011517, + .rfr_ctrl= 0x0004e201, + .mr = 0x0032, + }, + [1] = { + .rate= 165941176, + .actim_ctrla = 0xaa9db4c6, + .actim_ctrlb = 0x00011517, + .rfr_ctrl= 0x0004e201, + .mr = 0x0032, + }, + [2] = { + .rate= 8300, + .actim_ctrla = 0x8a99b481, + .actim_ctrlb = 0x00011312, + .rfr_ctrl= 0x0003de01, + .mr = 0x0032, + }, + [3] = { + .rate= 82970588, + .actim_ctrla = 0x8a99b481, + .actim_ctrlb = 0x00011312, + .rfr_ctrl= 0x0003de01, + .mr = 0x0032, + }, + [4] = { + .rate= 0 + }, +}; + +static int omap3logic_twl_gpio_setup(struct device *dev, + unsigned gpio, unsigned ngpio) +{ + return 0; +} + +static struct twl4030_gpio_platform_data omap3logic_gpio_data = { + .gpio_base = OMAP_MAX_GPIO_LINES, + .irq_base = TWL4030_GPIO_IRQ