[PATCH] omap: Fix linker error in drivers/video/omap/lcd_2430sdp.c
There is a linker error from lcd_2430sdp.c if CONFIG_TWL4030_CORE is not set. This can be triggered on OMAP2 builds where OMAP3 or OMAP4 are not set. drivers/built-in.o: In function `sdp2430_panel_disable': drivers/video/omap/lcd_2430sdp.c:123: undefined reference to `twl_i2c_write_u8' drivers/video/omap/lcd_2430sdp.c:124: undefined reference to `twl_i2c_write_u8' drivers/built-in.o: In function `sdp2430_panel_enable': drivers/video/omap/lcd_2430sdp.c:110: undefined reference to `twl_i2c_write_u8' drivers/video/omap/lcd_2430sdp.c:112: undefined reference to `twl_i2c_write_u8' Fix this by adding TWL4030_CORE dependency to CONFIG_MACH_OMAP_2430SDP as there is no own entry in drivers/video/omap/Kconfig. Signed-off-by: Jarkko Nikula jhnik...@gmail.com Cc: Tomi Valkeinen tomi.valkei...@ti.com --- Quite old issue most probably. Can be triggered in mainline anyway. --- arch/arm/mach-omap2/Kconfig |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig index b9d8a7b..bfdf240 100644 --- a/arch/arm/mach-omap2/Kconfig +++ b/arch/arm/mach-omap2/Kconfig @@ -132,6 +132,7 @@ config MACH_OMAP_2430SDP depends on SOC_OMAP2430 default y select OMAP_PACKAGE_ZAC + select TWL4030_CORE config MACH_OMAP3_BEAGLE bool OMAP3 BEAGLE board -- 1.7.0.4 -- 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: Re: Ping- Subject: [PATCH] omap: omap3evm: add support for the WL12xx WLAN module to the omap3evm
On Thu, 2011-02-17 at 14:20 -0800, Tony Lindgren wrote: * Reizer, Eyal ey...@ti.com [110215 07:11]: Dear Tony, I did not receive any comments to the patch I have send in the following link: http://marc.info/?l=linux-omapm=129612179900695w=2 Are there any issues with excepting this patch? Pushing to devel-board branch for the upcoming merge window. Can you please check it's working? I had to merge some other evm board changes manually.. Tony Dear Tony, As you requested, I have tested the devel-board branch this morning and found one merge issue. I see that there are now two mux arrays, one for omap35x and one for omap36x. You have merged the muxes changes to the omap35x_board_mux[] array, but have missed the other structure called omap36x_board_mux[]. The same change should be merged there as well. The result is that it would work OK on an evm with an omap35x SOM but not on aboard with an omap37x SOM. Please find below a fix for that. Best Regards, Eyal Reizer diff --git a/arch/arm/mach-omap2/board-omap3evm.c b/arch/arm/mach-omap2/board-om index d4a1157..b77140f 100644 --- a/arch/arm/mach-omap2/board-omap3evm.c +++ b/arch/arm/mach-omap2/board-omap3evm.c @@ -815,6 +815,21 @@ static struct omap_board_mux omap36x_board_mux[] __initdata OMAP3_MUX(SYS_BOOT4, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE), OMAP3_MUX(SYS_BOOT5, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE), OMAP3_MUX(SYS_BOOT6, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE), +#ifdef CONFIG_WL12XX_PLATFORM_DATA + /* WLAN IRQ - GPIO 149 */ + OMAP3_MUX(UART1_RTS, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP), + + /* WLAN POWER ENABLE - GPIO 150 */ + OMAP3_MUX(UART1_CTS, OMAP_MUX_MODE4 | OMAP_PIN_OUTPUT), + + /* MMC2 SDIO pin muxes for WL12xx */ + OMAP3_MUX(SDMMC2_CLK, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP), + OMAP3_MUX(SDMMC2_CMD, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP), + OMAP3_MUX(SDMMC2_DAT0, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP), + OMAP3_MUX(SDMMC2_DAT1, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP), + OMAP3_MUX(SDMMC2_DAT2, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP), + OMAP3_MUX(SDMMC2_DAT3, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP), +#endif attachment: winmail.dat
Re: [PATCH 1/5] ARM: smp: Select local timers vs dummy timer support runtime
On Sat, Feb 12, 2011 at 04:59:43PM +0530, Santosh Shilimkar wrote: -#ifndef CONFIG_LOCAL_TIMERS static void broadcast_timer_set_mode(enum clock_event_mode mode, struct clock_event_device *evt) { } -static void local_timer_setup(struct clock_event_device *evt) +static void dummy_timer_setup(struct clock_event_device *evt) Please call this broadcast_timer_setup(). -- 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/5] ARM: smp: Select local timers vs dummy timersupport runtime
-Original Message- From: Russell King - ARM Linux [mailto:li...@arm.linux.org.uk] Sent: Sunday, February 20, 2011 4:34 PM To: Santosh Shilimkar Cc: linux-omap@vger.kernel.org; khil...@ti.com; linux-arm- ker...@lists.infradead.org; t...@atomide.com; David Brown; Daniel Walker; Bryan Huntsman; Kukjin Kim; Paul Mundt; Magnus Damm; Colin Cross; Erik Gilling; Srinidhi Kasagar; Linus Walleij Subject: Re: [PATCH 1/5] ARM: smp: Select local timers vs dummy timersupport runtime On Sat, Feb 12, 2011 at 04:59:43PM +0530, Santosh Shilimkar wrote: -#ifndef CONFIG_LOCAL_TIMERS static void broadcast_timer_set_mode(enum clock_event_mode mode, struct clock_event_device *evt) { } -static void local_timer_setup(struct clock_event_device *evt) +static void dummy_timer_setup(struct clock_event_device *evt) Please call this broadcast_timer_setup(). Right. Will fix this. Regards Santosh -- 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: Re: Ping- Subject: [PATCH] omap: omap3evm: add support for the WL12xx WLAN module to the omap3evm
Hi Ohad, On Sun, 2011-02-20 at 13:32 +0200, Ohad Ben-Cohen wrote: Hi Eyal, (posting from a mobile device, so formatting maybe funky) On Feb 20, 2011, at 12:50 PM, Reizer, Eyal ey...@ti.com wrote: ... +#ifdef CONFIG_WL12XX_PLATFORM_DATA [?][?]CONFIG_WL12XX_PLATFORM_DATAhere is a bit problematic. But we can change that once those other modules show up (if any) er: there is only one wlan module available for the omap3evm board (both made by Mistral) so this should be ok. [?] [?] No need to have the host pulling up the 1271's interrupt line (it's just wasting power). Yeah, we have that on ZOOM, too, but it's redundant. er: ok, I will change that for the omap3evm. Best Regards, Eyal attachment: winmail.dat
Re: [PATCH 2/6] ARM: pm: add generic CPU suspend/resume support
Kukjin, could you test this update as well please? Thanks. On Tue, Feb 15, 2011 at 11:04:53AM +, Russell King - ARM Linux wrote: On Fri, Feb 11, 2011 at 06:50:57PM -0800, Colin Cross wrote: +ENDPROC(cpu_resume_turn_mmu_on) +cpu_resume_after_mmu: + str r5, [r2, r4, lsl #2] @ restore old mapping +#ifdef MULTI_CACHE + ldr r10, =cpu_cache + ldr pc, [r10, #CACHE_FLUSH_KERN_ALL] +#else + b __cpuc_flush_kern_all +#endif I think we can eliminate this cache flush by delaying the cache enable as below. Could you see whether Tegra 2 survives this please? Thanks. diff --git a/arch/arm/kernel/sleep.S b/arch/arm/kernel/sleep.S index bed1876..193be5f 100644 --- a/arch/arm/kernel/sleep.S +++ b/arch/arm/kernel/sleep.S @@ -4,6 +4,7 @@ #include asm/assembler.h #include asm/glue-cache.h #include asm/glue-proc.h +#include asm/system.h .text /* @@ -81,25 +82,22 @@ ENTRY(cpu_resume_mmu) str r3, [r2, r4, lsl #2]@ setup 1:1 mapping for mmu code sub r2, r2, r1 ldr r3, =cpu_resume_after_mmu + bic r1, r0, #CR_C @ ensure D-cache is disabled b cpu_resume_turn_mmu_on ENDPROC(cpu_resume_mmu) .ltorg .align 5 cpu_resume_turn_mmu_on: - mcr p15, 0, r0, c1, c0, 0 @ turn on MMU, caches, etc - mrc p15, 0, r0, c0, c0, 0 @ read id reg - mov r0, r0 - mov r0, r0 + mcr p15, 0, r1, c1, c0, 0 @ turn on MMU, I-cache, etc + mrc p15, 0, r1, c0, c0, 0 @ read id reg + mov r1, r1 + mov r1, r1 mov pc, r3 @ jump to virtual address ENDPROC(cpu_resume_turn_mmu_on) cpu_resume_after_mmu: str r5, [r2, r4, lsl #2]@ restore old mapping -#ifdef MULTI_CACHE - ldr r10, =cpu_cache - ldr pc, [r10, #CACHE_FLUSH_KERN_ALL] -#else - b __cpuc_flush_kern_all -#endif + mcr p15, 0, r0, c1, c0, 0 @ turn on D-cache + mov pc, lr /* * Note: Yes, part of the following code is located into the .data section. ___ linux-arm-kernel mailing list linux-arm-ker...@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel -- 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: RE: [PATCH] omap: omap3evm: add support for the WL12xx WLAN module to the AM/DM3xx Evaluation Module
On Fri, 2011-02-18 at 21:03 +0530, Premi, Sanjeev wrote: -Original Message- From: linux-omap-ow...@vger.kernel.org [mailto:linux-omap- ow...@vger.kernel.org] On Behalf Of Reizer, Eyal Sent: Thursday, January 27, 2011 3:20 PM To: linux-omap@vger.kernel.org Subject: [PATCH] omap: omap3evm: add support for the WL12xx WLAN module to the AM/DM3xx Evaluation Module [sp] prefix omap: seems redundant when omap3evm is specified. Similarly, the AM/DM3xx Evaluation Module seems redundant when omap3evm is specified. [er] ok, comment taken Adds platform initialization for working with the WLAN module attached to the evaluation module. The patch includes MMC2 initialization, SDIO and control pins muxing and platform device registration [sp] The description text has too many characters per line. Consider reformatting the same. [er] ok, comment taken Signed-off-by: Eyal Reizer ey...@ti.com --- arch/arm/mach-omap2/board-omap3evm.c | 78 ++ 1 files changed, 78 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-omap2/board-omap3evm.c b/arch/arm/mach- omap2/board-omap3evm.c index 323c380..2d2092a 100644 --- a/arch/arm/mach-omap2/board-omap3evm.c +++ b/arch/arm/mach-omap2/board-omap3evm.c @@ -30,6 +30,8 @@ #include linux/usb/otg.h #include linux/smsc911x.h +#include linux/wl12xx.h +#include linux/regulator/fixed.h #include linux/regulator/machine.h #include linux/mmc/host.h @@ -381,6 +383,16 @@ static struct omap2_hsmmc_info mmc[] = { .gpio_cd= -EINVAL, .gpio_wp= 63, }, +#ifdef CONFIG_WL12XX_PLATFORM_DATA [sp] Haven't seen this config option earlier. Just wanted to know where is this defined? Any reason why simple CONFIG_WL12XX wasn't sufficient? [er] CONFIG_WL12XX_PLATFORM_DATA is selected in .config when you select MAC80211 (always selected as CONFIG_WL12XX_PLATFORM_DATA=y). I preferred using it instead of CONFIG_WL12XX so it would work also for people using compat-wireless where the CONFIG_WL12XX might not be selected in their .config + { + .name = wl1271, + .mmc= 2, [sp] There are spaces before =. Stands apart from rest of the assignments in this block. [er] ok, will be fixed + .caps = MMC_CAP_4_BIT_DATA | MMC_CAP_POWER_OFF_CARD, + .gpio_wp= -EINVAL, + .gpio_cd= -EINVAL, + .nonremovable = true, + }, +#endif {} /* Terminator */ }; @@ -538,6 +550,50 @@ static struct regulator_init_data omap3_evm_vpll2 = { .consumer_supplies = omap3_evm_vpll2_supply, }; +#ifdef CONFIG_WL12XX_PLATFORM_DATA + +#define OMAP3EVM_WLAN_PMENA_GPIO (150) +#define OMAP3EVM_WLAN_IRQ_GPIO (149) + +static struct regulator_consumer_supply omap3evm_vmmc2_supply = { + .supply = vmmc, + .dev_name = mmci-omap-hs.1, +}; [sp] Consider use of macro REGULATOR_SUPPLY() here. [er] ok, will be fixed + +/* VMMC2 for driving the WL12xx module */ +static struct regulator_init_data omap3evm_vmmc2 = { [sp] Consider following the convention is rest of the file e.g. omap3_evm_vdac, omap3_evm_vpll2, omap3_evm_vusb. [er] ok, will be fixed I see another exception to this convention; in the current file but that should be fixed. + .constraints = { + .valid_ops_mask = REGULATOR_CHANGE_STATUS, [sp] Any specific reason for not including REGULATOR_CHANGE_MODE in the mask above? [er] this is a fixed voltage regulator and we only enable/disable it. Why do we need the REGULATOR_CHANGE_MODE? + }, + .num_consumer_supplies = 1, + .consumer_supplies = omap3evm_vmmc2_supply, +}; + +static struct fixed_voltage_config omap3evm_vwlan = { + .supply_name= vwl1271, + .microvolts = 180, /* 1.80V */ + .gpio = OMAP3EVM_WLAN_PMENA_GPIO, + .startup_delay = 7, /* 70ms */ + .enable_high= 1, + .enabled_at_boot= 0, + .init_data = omap3evm_vmmc2, +}; + +static struct platform_device omap3evm_vwlan_device = { + .name = reg-fixed-voltage, + .id = 1, + .dev = { + .platform_data = omap3evm_vwlan, + }, +}; [sp] The name of platform device here apears to be name of regulator. Otherwise, should you explain why it is named reg-fixed-voltage. + +struct wl12xx_platform_data omap3evm_wlan_data __initdata = { + .irq = OMAP_GPIO_IRQ(OMAP3EVM_WLAN_IRQ_GPIO), + /* ref clock is 38.4 MHz */ + .board_ref_clock = 2, [sp] Suggest putting the comment on ref clock after the assignment. [er] ok, will be fixed +}; +#endif + static struct twl4030_platform_data
Re: SDHC card affected by preemption model in 2.6.35
On Sun, Feb 20, 2011 at 10:42 PM, S, Venkatraman svenk...@ti.com wrote: On Fri, Feb 18, 2011 at 6:27 PM, Thomas Weber we...@corscience.de wrote: Hello Mathieu, hello Venkat, I hope it is not too old and you remember this: This provides a good 100ms window for delays due to scheduling variations. I have to still find out which section is sensitive to it. Regards, Venkat. -- We have a custom omap3 board and use kernel 2.6.37-rc8. We have the problem that we sometimes cannot mount our rootfs from sd-card. This happens only when CONFIG_PREEMPT=y. When using CONFIG_PREEMPT_NONE or enabling CONFIG_MMC_DEBUG everything works fine. The 100 ms patch doesn't work for us. Do you found other solution(s)? No - I was working on some other things lately - I'll check this out this week. What type of card are you using ? Regards, Venkat. -- 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 resend] omap: Fix linker error in drivers/video/omap/lcd_2430sdp.c
There is a linker error from lcd_2430sdp.c if CONFIG_TWL4030_CORE is not set. This can be triggered on OMAP2 builds where OMAP3 or OMAP4 are not set. drivers/built-in.o: In function `sdp2430_panel_disable': drivers/video/omap/lcd_2430sdp.c:123: undefined reference to `twl_i2c_write_u8' drivers/video/omap/lcd_2430sdp.c:124: undefined reference to `twl_i2c_write_u8' drivers/built-in.o: In function `sdp2430_panel_enable': drivers/video/omap/lcd_2430sdp.c:110: undefined reference to `twl_i2c_write_u8' drivers/video/omap/lcd_2430sdp.c:112: undefined reference to `twl_i2c_write_u8' Fix this by adding TWL4030_CORE dependency to CONFIG_MACH_OMAP_2430SDP as there is no own entry in drivers/video/omap/Kconfig. Signed-off-by: Jarkko Nikula jhnik...@gmail.com Cc: Tomi Valkeinen tomi.valkei...@ti.com --- Resend = forgot to cc LAKML. Quite old issue most probably. Can be triggered in mainline anyway. --- arch/arm/mach-omap2/Kconfig |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig index b9d8a7b..bfdf240 100644 --- a/arch/arm/mach-omap2/Kconfig +++ b/arch/arm/mach-omap2/Kconfig @@ -132,6 +132,7 @@ config MACH_OMAP_2430SDP depends on SOC_OMAP2430 default y select OMAP_PACKAGE_ZAC + select TWL4030_CORE config MACH_OMAP3_BEAGLE bool OMAP3 BEAGLE board -- 1.7.0.4 -- 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 0/3] OMAP2+: voltage: first pass at cleanup/reorganization
Hello, this patch set does an initial round of cleanup on the OMAP voltage code in arch/arm/mach-omap2/voltage.c. As part of this process, the header files for the voltage code and SmartReflex are moved into arch/arm/mach-omap2, since they are currently OMAP2+-specific. There is still quite a bit of cleanup left to do; hopefully someone else will get to it before I do. More details are in the last patch. This series was built-tested for an OSK5912-specific config, omap1_defconfig, a N800-specific config, omap2plus_defconfig, an OMAP3-specific config, and an OMAP4-specific config. It was boot-tested on an OMAP35xx Beagleboard. Further testing assistance is, of course, appreciated. This series is available from git://git.pwsan.com/linux-2.6 in the 'voltage_split_2.6.39' branch. - Paul --- voltage_split_2.6.39 textdata bss dec hex filename 5766071 488104 5596920 11851095 b4d557 vmlinux.omap2plus_defconfig.orig 5765631 487848 5596920 11850399 b4d29f vmlinux.omap2plus_defconfig Paul Walmsley (3): OMAP: smartreflex: move plat/smartreflex.h to mach-omap2/smartreflex.h OMAP: voltage: move plat/voltage.h to mach-omap2/voltage.h OMAP2+: voltage: reorganize, split code from data arch/arm/mach-omap2/Makefile | 20 arch/arm/mach-omap2/omap_hwmod_3xxx_data.c|2 arch/arm/mach-omap2/omap_opp_data.h | 12 arch/arm/mach-omap2/omap_twl.c|2 arch/arm/mach-omap2/opp3xxx_data.c| 44 + arch/arm/mach-omap2/opp4xxx_data.c| 30 + arch/arm/mach-omap2/pm.c |2 arch/arm/mach-omap2/smartreflex-class3.c |2 arch/arm/mach-omap2/smartreflex.c |2 arch/arm/mach-omap2/smartreflex.h |3 arch/arm/mach-omap2/sr_device.c |4 arch/arm/mach-omap2/vc.h | 83 ++ arch/arm/mach-omap2/vc3xxx_data.c | 63 ++ arch/arm/mach-omap2/vc44xx_data.c | 72 ++ arch/arm/mach-omap2/voltage.c | 1019 +++-- arch/arm/mach-omap2/voltage.h | 66 ++ arch/arm/mach-omap2/voltagedomains3xxx_data.c | 104 +++ arch/arm/mach-omap2/voltagedomains44xx_data.c | 108 +++ arch/arm/mach-omap2/vp.h | 143 arch/arm/mach-omap2/vp3xxx_data.c | 82 ++ arch/arm/mach-omap2/vp44xx_data.c | 97 ++ arch/arm/plat-omap/include/plat/omap_hwmod.h |1 22 files changed, 1203 insertions(+), 758 deletions(-) rename arch/arm/{plat-omap/include/plat/smartreflex.h = mach-omap2/smartreflex.h} (99%) create mode 100644 arch/arm/mach-omap2/vc.h create mode 100644 arch/arm/mach-omap2/vc3xxx_data.c create mode 100644 arch/arm/mach-omap2/vc44xx_data.c rename arch/arm/{plat-omap/include/plat/voltage.h = mach-omap2/voltage.h} (68%) create mode 100644 arch/arm/mach-omap2/voltagedomains3xxx_data.c create mode 100644 arch/arm/mach-omap2/voltagedomains44xx_data.c create mode 100644 arch/arm/mach-omap2/vp.h create mode 100644 arch/arm/mach-omap2/vp3xxx_data.c create mode 100644 arch/arm/mach-omap2/vp44xx_data.c -- 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/3] OMAP: smartreflex: move plat/smartreflex.h to mach-omap2/smartreflex.h
There's no reason for this header file to be in plat-omap/include/plat/smartreflex.h. The hardware devices are in OMAP2+ SoCs only. Leaving this header file in plat-omap causes problems due to cross-dependencies with other header files that should live in mach-omap2/. Signed-off-by: Paul Walmsley p...@pwsan.com --- arch/arm/mach-omap2/omap_hwmod_3xxx_data.c|2 +- arch/arm/mach-omap2/smartreflex-class3.c |2 +- arch/arm/mach-omap2/smartreflex.c |2 +- arch/arm/mach-omap2/smartreflex.h |0 arch/arm/mach-omap2/sr_device.c |2 +- 5 files changed, 4 insertions(+), 4 deletions(-) rename arch/arm/{plat-omap/include/plat/smartreflex.h = mach-omap2/smartreflex.h} (100%) diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c index 8d81813..7f0b5e7 100644 --- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c @@ -21,13 +21,13 @@ #include plat/l4_3xxx.h #include plat/i2c.h #include plat/gpio.h -#include plat/smartreflex.h #include omap_hwmod_common_data.h #include prm-regbits-34xx.h #include cm-regbits-34xx.h #include wd_timer.h +#include smartreflex.h /* * OMAP3xxx hardware module integration data diff --git a/arch/arm/mach-omap2/smartreflex-class3.c b/arch/arm/mach-omap2/smartreflex-class3.c index 60e7055..f438cf4 100644 --- a/arch/arm/mach-omap2/smartreflex-class3.c +++ b/arch/arm/mach-omap2/smartreflex-class3.c @@ -11,7 +11,7 @@ * published by the Free Software Foundation. */ -#include plat/smartreflex.h +#include smartreflex.h static int sr_class3_enable(struct voltagedomain *voltdm) { diff --git a/arch/arm/mach-omap2/smartreflex.c b/arch/arm/mach-omap2/smartreflex.c index c37e823..077dfb6 100644 --- a/arch/arm/mach-omap2/smartreflex.c +++ b/arch/arm/mach-omap2/smartreflex.c @@ -26,9 +26,9 @@ #include linux/pm_runtime.h #include plat/common.h -#include plat/smartreflex.h #include pm.h +#include smartreflex.h #define SMARTREFLEX_NAME_LEN 16 #define NVALUE_NAME_LEN40 diff --git a/arch/arm/plat-omap/include/plat/smartreflex.h b/arch/arm/mach-omap2/smartreflex.h similarity index 100% rename from arch/arm/plat-omap/include/plat/smartreflex.h rename to arch/arm/mach-omap2/smartreflex.h diff --git a/arch/arm/mach-omap2/sr_device.c b/arch/arm/mach-omap2/sr_device.c index b1e0af1..a636604 100644 --- a/arch/arm/mach-omap2/sr_device.c +++ b/arch/arm/mach-omap2/sr_device.c @@ -23,9 +23,9 @@ #include linux/io.h #include plat/omap_device.h -#include plat/smartreflex.h #include plat/voltage.h +#include smartreflex.h #include control.h #include pm.h -- 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 2/3] OMAP: voltage: move plat/voltage.h to mach-omap2/voltage.h
At this point in time, there's no reason for this header file to be in plat-omap/include/plat/voltage.h. It should not be included by device drivers, and the code that uses it is currently all under mach-omap2/. Signed-off-by: Paul Walmsley p...@pwsan.com --- arch/arm/mach-omap2/omap_twl.c |2 +- arch/arm/mach-omap2/pm.c |2 +- arch/arm/mach-omap2/smartreflex.h|3 ++- arch/arm/mach-omap2/sr_device.c |2 +- arch/arm/mach-omap2/voltage.c|3 ++- arch/arm/mach-omap2/voltage.h|0 arch/arm/plat-omap/include/plat/omap_hwmod.h |1 - 7 files changed, 7 insertions(+), 6 deletions(-) rename arch/arm/{plat-omap/include/plat/voltage.h = mach-omap2/voltage.h} (100%) diff --git a/arch/arm/mach-omap2/omap_twl.c b/arch/arm/mach-omap2/omap_twl.c index 00e1d2b..ad8c18a 100644 --- a/arch/arm/mach-omap2/omap_twl.c +++ b/arch/arm/mach-omap2/omap_twl.c @@ -18,7 +18,7 @@ #include linux/kernel.h #include linux/i2c/twl.h -#include plat/voltage.h +#include voltage.h #include pm.h diff --git a/arch/arm/mach-omap2/pm.c b/arch/arm/mach-omap2/pm.c index d5a102c..4baa674 100644 --- a/arch/arm/mach-omap2/pm.c +++ b/arch/arm/mach-omap2/pm.c @@ -18,8 +18,8 @@ #include plat/omap-pm.h #include plat/omap_device.h #include plat/common.h -#include plat/voltage.h +#include voltage.h #include powerdomain.h #include clockdomain.h #include pm.h diff --git a/arch/arm/mach-omap2/smartreflex.h b/arch/arm/mach-omap2/smartreflex.h index 6568c88..5f35b9e 100644 --- a/arch/arm/mach-omap2/smartreflex.h +++ b/arch/arm/mach-omap2/smartreflex.h @@ -21,7 +21,8 @@ #define __ASM_ARM_OMAP_SMARTREFLEX_H #include linux/platform_device.h -#include plat/voltage.h + +#include voltage.h /* * Different Smartreflex IPs version. The v1 is the 65nm version used in diff --git a/arch/arm/mach-omap2/sr_device.c b/arch/arm/mach-omap2/sr_device.c index a636604..10d3c5e 100644 --- a/arch/arm/mach-omap2/sr_device.c +++ b/arch/arm/mach-omap2/sr_device.c @@ -23,9 +23,9 @@ #include linux/io.h #include plat/omap_device.h -#include plat/voltage.h #include smartreflex.h +#include voltage.h #include control.h #include pm.h diff --git a/arch/arm/mach-omap2/voltage.c b/arch/arm/mach-omap2/voltage.c index 12be525..3c9bcdc 100644 --- a/arch/arm/mach-omap2/voltage.c +++ b/arch/arm/mach-omap2/voltage.c @@ -26,7 +26,6 @@ #include linux/slab.h #include plat/common.h -#include plat/voltage.h #include prm-regbits-34xx.h #include prm-regbits-44xx.h @@ -35,6 +34,8 @@ #include prminst44xx.h #include control.h +#include voltage.h + #define VP_IDLE_TIMEOUT200 #define VP_TRANXDONE_TIMEOUT 300 #define VOLTAGE_DIR_SIZE 16 diff --git a/arch/arm/plat-omap/include/plat/voltage.h b/arch/arm/mach-omap2/voltage.h similarity index 100% rename from arch/arm/plat-omap/include/plat/voltage.h rename to arch/arm/mach-omap2/voltage.h diff --git a/arch/arm/plat-omap/include/plat/omap_hwmod.h b/arch/arm/plat-omap/include/plat/omap_hwmod.h index 1eee85a..93beae2 100644 --- a/arch/arm/plat-omap/include/plat/omap_hwmod.h +++ b/arch/arm/plat-omap/include/plat/omap_hwmod.h @@ -34,7 +34,6 @@ #include linux/ioport.h #include linux/spinlock.h #include plat/cpu.h -#include plat/voltage.h struct omap_device; -- 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: omapfb: no driver for display
Hi, On Sat, Feb 19, 2011 at 6:10 PM, Ming Lei tom.leim...@gmail.com wrote: Hi, 2011/2/19 archit taneja arc...@ti.com: Hi, Which board are you on? For all the display devices you add in the board file, you should have the corresponding drivers in the menuconfig set also. Pandaboard. DVI support for pandaboard is slated to be in for 2.6.39. There are around 6-7 patch series which enable it. You could look at the top patches at: git://dev.omapzoom.org/pub/scm/anand/linux-omap-usb.git, branch: display-patches-for-v2.6.38-rc4. Best regards, ~Sumit. For example, in board3430-sdp.c, we add a sharp ls, a dvi and venc panel. We therefore select sharpls and generic dpi panel in menuconfig. and at least DPI and VENC in the interfaces menu. I also selected all the options above. thanks, -- Lei Ming -- 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
linux-next: manual merge of the omap_dss2 tree with the omap tree
Hi Tomi, Today's linux-next merge of the omap_dss2 tree got a conflict in arch/arm/mach-omap2/board-3430sdp.c between commits e109f171e2f4128e867b3445c369c18830c73751 (omap3sdp: Fix regulator mapping for ads7846 TS controller) and 6b272c098f64f0451d2b19bb911d65c6cd11cfc7 (omap3sdp: clean regulator supply mapping in board file) from the omap tree and various commits from the omap_dss2 tree. So, I have no idea how to fix this up ... Can you guys come to some argreement about who does what, please? I have ended up with the merge fix below, but I have no idea if it will even build, much less be semantically correct, sorry. Do these trees get merged separately by Linus? If not, then maybe I should just be merging the one tree that combines all the omap work and let you guys figure out the merge mess. -- Cheers, Stephen Rothwells...@canb.auug.org.au diff --cc arch/arm/mach-omap2/board-3430sdp.c index 76a260f,33ff4f6..000 --- a/arch/arm/mach-omap2/board-3430sdp.c +++ b/arch/arm/mach-omap2/board-3430sdp.c @@@ -307,18 -307,9 +307,6 @@@ static struct omap_dss_board_info sdp34 .default_device = sdp3430_lcd_device, }; - static struct platform_device sdp3430_dss_device = { - .name = omapdss, - .id = -1, - .dev= { - .platform_data = sdp3430_dss_data, - }, - }; - - static struct platform_device *sdp3430_devices[] __initdata = { - sdp3430_dss_device, - }; - -static struct regulator_consumer_supply sdp3430_vdda_dac_supply = - REGULATOR_SUPPLY(vdda_dac, omap_venc); - static struct omap_board_config_kernel sdp3430_config[] __initdata = { }; @@@ -402,34 -413,6 +390,35 @@@ static struct twl4030_madc_platform_dat .irq_line = 1, }; +/* regulator consumer mappings */ + +/* ads7846 on SPI */ +static struct regulator_consumer_supply sdp3430_vaux3_supplies[] = { + REGULATOR_SUPPLY(vcc, spi1.0), +}; + +static struct regulator_consumer_supply sdp3430_vdda_dac_supplies[] = { + REGULATOR_SUPPLY(vdda_dac, omapdss), +}; + +/* VPLL2 for digital video outputs */ +static struct regulator_consumer_supply sdp3430_vpll2_supplies[] = { + REGULATOR_SUPPLY(vdds_dsi, omapdss), ++ REGULATOR_SUPPLY(vdds_dsi, omap_dsi1), +}; + +static struct regulator_consumer_supply sdp3430_vmmc1_supplies[] = { + REGULATOR_SUPPLY(vmmc, mmci-omap-hs.0), +}; + +static struct regulator_consumer_supply sdp3430_vsim_supplies[] = { + REGULATOR_SUPPLY(vmmc_aux, mmci-omap-hs.0), +}; + +static struct regulator_consumer_supply sdp3430_vmmc2_supplies[] = { + REGULATOR_SUPPLY(vmmc, mmci-omap-hs.1), +}; + /* * Apply all the fixed voltages since most versions of U-Boot * don't bother with that initialization. -- 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 2/3] OMAP: voltage: move plat/voltage.h to mach-omap2/voltage.h
Hi, On Mon, Feb 21, 2011 at 7:38 AM, Paul Walmsley p...@pwsan.com wrote: At this point in time, there's no reason for this header file to be in plat-omap/include/plat/voltage.h. It should not be included by device drivers, and the code that uses it is currently all under mach-omap2/. Signed-off-by: Paul Walmsley p...@pwsan.com --- arch/arm/mach-omap2/omap_twl.c | 2 +- arch/arm/mach-omap2/pm.c | 2 +- arch/arm/mach-omap2/smartreflex.h | 3 ++- arch/arm/mach-omap2/sr_device.c | 2 +- arch/arm/mach-omap2/voltage.c | 3 ++- arch/arm/mach-omap2/voltage.h | 0 arch/arm/plat-omap/include/plat/omap_hwmod.h | 1 - 7 files changed, 7 insertions(+), 6 deletions(-) rename arch/arm/{plat-omap/include/plat/voltage.h = mach-omap2/voltage.h} (100%) diff --git a/arch/arm/mach-omap2/omap_twl.c b/arch/arm/mach-omap2/omap_twl.c index 00e1d2b..ad8c18a 100644 --- a/arch/arm/mach-omap2/omap_twl.c +++ b/arch/arm/mach-omap2/omap_twl.c @@ -18,7 +18,7 @@ #include linux/kernel.h #include linux/i2c/twl.h -#include plat/voltage.h +#include voltage.h Extra Blank Line #include pm.h diff --git a/arch/arm/mach-omap2/pm.c b/arch/arm/mach-omap2/pm.c index d5a102c..4baa674 100644 --- a/arch/arm/mach-omap2/pm.c +++ b/arch/arm/mach-omap2/pm.c @@ -18,8 +18,8 @@ #include plat/omap-pm.h #include plat/omap_device.h #include plat/common.h -#include plat/voltage.h +#include voltage.h #include powerdomain.h #include clockdomain.h #include pm.h diff --git a/arch/arm/mach-omap2/smartreflex.h b/arch/arm/mach-omap2/smartreflex.h index 6568c88..5f35b9e 100644 --- a/arch/arm/mach-omap2/smartreflex.h +++ b/arch/arm/mach-omap2/smartreflex.h @@ -21,7 +21,8 @@ #define __ASM_ARM_OMAP_SMARTREFLEX_H #include linux/platform_device.h -#include plat/voltage.h + +#include voltage.h /* * Different Smartreflex IPs version. The v1 is the 65nm version used in diff --git a/arch/arm/mach-omap2/sr_device.c b/arch/arm/mach-omap2/sr_device.c index a636604..10d3c5e 100644 --- a/arch/arm/mach-omap2/sr_device.c +++ b/arch/arm/mach-omap2/sr_device.c @@ -23,9 +23,9 @@ #include linux/io.h #include plat/omap_device.h -#include plat/voltage.h #include smartreflex.h +#include voltage.h #include control.h #include pm.h diff --git a/arch/arm/mach-omap2/voltage.c b/arch/arm/mach-omap2/voltage.c index 12be525..3c9bcdc 100644 --- a/arch/arm/mach-omap2/voltage.c +++ b/arch/arm/mach-omap2/voltage.c @@ -26,7 +26,6 @@ #include linux/slab.h #include plat/common.h -#include plat/voltage.h #include prm-regbits-34xx.h #include prm-regbits-44xx.h @@ -35,6 +34,8 @@ #include prminst44xx.h #include control.h Extra Blank line +#include voltage.h + #define VP_IDLE_TIMEOUT 200 #define VP_TRANXDONE_TIMEOUT 300 #define VOLTAGE_DIR_SIZE 16 diff --git a/arch/arm/plat-omap/include/plat/voltage.h b/arch/arm/mach-omap2/voltage.h similarity index 100% rename from arch/arm/plat-omap/include/plat/voltage.h rename to arch/arm/mach-omap2/voltage.h diff --git a/arch/arm/plat-omap/include/plat/omap_hwmod.h b/arch/arm/plat-omap/include/plat/omap_hwmod.h index 1eee85a..93beae2 100644 --- a/arch/arm/plat-omap/include/plat/omap_hwmod.h +++ b/arch/arm/plat-omap/include/plat/omap_hwmod.h @@ -34,7 +34,6 @@ #include linux/ioport.h #include linux/spinlock.h #include plat/cpu.h -#include plat/voltage.h voltage.h is not added. struct omap_device; -- 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 -- Thanks, Regards, Shweta -- 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: do we need CHIP_GE_OMAP3630ES1in .oc? (was Re: [PATCH 02/19] omap3630: hwmod: sr: enable for higher ES)
Better might be to introduce and use CHIP_GE_OMAP3630ES1 in hwmod structs in that case - that should ease things up. but the ES1 story should be fixed I guess. What do people think of this? + Anand from commit b0a1a6ce0597662c06f970643da60b8ebb5cdd1c which introduced the code in id.c to hear his views as well. There's one instance where we needed to distinguish between ES1.0 and all later revs of the 36xx - this was in commit 58dcfb3a0f (omap: 3630: disable TLL SAR on 3630 ES1). I chose to pick the same approach that was done for 3430 ES3.0 and below. We keep two struct powerdomain core_3xx*pwrdm instances in mach-omap2/powerdomains34xx.h with TLL SAR disabled in one. I couldn't think up a better way to handle this at the time. - Anand -- 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] OMAP: DSS2: Have separate irq handlers for DISPC and DSI
Currently, the core DSS platform device requests for an irq line for OMAP2 and OMAP3. Make DISPC and DSI platform devices request for a shared IRQ line. On OMAP3, the logical OR of DSI and DISPC interrupt lines goes to the MPU. There is a register DSS_IRQSTATUS which tells if the interrupt came from DISPC or DSI. On OMAP2, there is no DSI, only DISPC interrupts goto the MPU. There is no DSS_IRQSTATUS register. Hence, it makes more sense to have separate irq handlers corresponding to the DSS sub modules instead of having a common handler. Since on OMAP3 the logical OR of the lines goes to MPU, the irq line is shared among the IRQ handlers. The hwmod irq info has been removed for DSS to DISPC and DSI for OMAP2 and OMAP3 hwmod databases. The Probes of DISPC and DSI now request for irq handlers. Signed-off-by: Archit Taneja arc...@ti.com --- v3: -return IRQ_NONE instead of IRQ_HANDLED when interrupt is not ours -don't print module names wehn using DSSERR v2: Removed checking with DSS_IRQSTATUS. v3 tested on 3430sdp with sharp ls panel and 3430sdp with a Taal panel. arch/arm/mach-omap2/omap_hwmod_2420_data.c | 13 +++ arch/arm/mach-omap2/omap_hwmod_2430_data.c | 12 +++--- arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 21 ++- drivers/video/omap2/dss/dispc.c| 40 +++--- drivers/video/omap2/dss/dsi.c | 27 +-- drivers/video/omap2/dss/dss.c | 51 +--- 6 files changed, 84 insertions(+), 80 deletions(-) diff --git a/arch/arm/mach-omap2/omap_hwmod_2420_data.c b/arch/arm/mach-omap2/omap_hwmod_2420_data.c index 21014de..085d053 100644 --- a/arch/arm/mach-omap2/omap_hwmod_2420_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_2420_data.c @@ -506,11 +506,6 @@ static struct omap_hwmod_class omap2420_dss_hwmod_class = { .sysc = omap2420_dss_sysc, }; -/* dss */ -static struct omap_hwmod_irq_info omap2420_dss_irqs[] = { - { .irq = 25 }, -}; - static struct omap_hwmod_dma_info omap2420_dss_sdma_chs[] = { { .name = dispc, .dma_req = 5 }, }; @@ -559,8 +554,6 @@ static struct omap_hwmod omap2420_dss_core_hwmod = { .name = dss_core, .class = omap2420_dss_hwmod_class, .main_clk = dss1_fck, /* instead of dss_fck */ - .mpu_irqs = omap2420_dss_irqs, - .mpu_irqs_cnt = ARRAY_SIZE(omap2420_dss_irqs), .sdma_reqs = omap2420_dss_sdma_chs, .sdma_reqs_cnt = ARRAY_SIZE(omap2420_dss_sdma_chs), .prcm = { @@ -603,6 +596,10 @@ static struct omap_hwmod_class omap2420_dispc_hwmod_class = { .sysc = omap2420_dispc_sysc, }; +static struct omap_hwmod_irq_info omap2420_dispc_irqs[] = { + { .irq = 25 }, +}; + static struct omap_hwmod_addr_space omap2420_dss_dispc_addrs[] = { { .pa_start = 0x48050400, @@ -635,6 +632,8 @@ static struct omap_hwmod_ocp_if *omap2420_dss_dispc_slaves[] = { static struct omap_hwmod omap2420_dss_dispc_hwmod = { .name = dss_dispc, .class = omap2420_dispc_hwmod_class, + .mpu_irqs = omap2420_dispc_irqs, + .mpu_irqs_cnt = ARRAY_SIZE(omap2420_dispc_irqs), .main_clk = dss1_fck, .prcm = { .omap2 = { diff --git a/arch/arm/mach-omap2/omap_hwmod_2430_data.c b/arch/arm/mach-omap2/omap_hwmod_2430_data.c index 1ef3f3f..f486df8 100644 --- a/arch/arm/mach-omap2/omap_hwmod_2430_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_2430_data.c @@ -505,10 +505,6 @@ static struct omap_hwmod_class omap2430_dss_hwmod_class = { .sysc = omap2430_dss_sysc, }; -/* dss */ -static struct omap_hwmod_irq_info omap2430_dss_irqs[] = { - { .irq = 25 }, -}; static struct omap_hwmod_dma_info omap2430_dss_sdma_chs[] = { { .name = dispc, .dma_req = 5 }, }; @@ -551,8 +547,6 @@ static struct omap_hwmod omap2430_dss_core_hwmod = { .name = dss_core, .class = omap2430_dss_hwmod_class, .main_clk = dss1_fck, /* instead of dss_fck */ - .mpu_irqs = omap2430_dss_irqs, - .mpu_irqs_cnt = ARRAY_SIZE(omap2430_dss_irqs), .sdma_reqs = omap2430_dss_sdma_chs, .sdma_reqs_cnt = ARRAY_SIZE(omap2430_dss_sdma_chs), .prcm = { @@ -595,6 +589,10 @@ static struct omap_hwmod_class omap2430_dispc_hwmod_class = { .sysc = omap2430_dispc_sysc, }; +static struct omap_hwmod_irq_info omap2430_dispc_irqs[] = { + { .irq = 25 }, +}; + static struct omap_hwmod_addr_space omap2430_dss_dispc_addrs[] = { { .pa_start = 0x48050400, @@ -621,6 +619,8 @@ static struct omap_hwmod_ocp_if *omap2430_dss_dispc_slaves[] = { static struct omap_hwmod omap2430_dss_dispc_hwmod = { .name = dss_dispc, .class = omap2430_dispc_hwmod_class, + .mpu_irqs = omap2430_dispc_irqs, + .mpu_irqs_cnt =
Re: [PATCH] OMAP: DSS2: Have separate irq handlers for DISPC and DSI
Hi, On Monday 21 February 2011 11:30 AM, Taneja, Archit wrote: Currently, the core DSS platform device requests for an irq line for OMAP2 and OMAP3. Make DISPC and DSI platform devices request for a shared IRQ line. On OMAP3, the logical OR of DSI and DISPC interrupt lines goes to the MPU. There is a register DSS_IRQSTATUS which tells if the interrupt came from DISPC or DSI. On OMAP2, there is no DSI, only DISPC interrupts goto the MPU. There is no DSS_IRQSTATUS register. Hence, it makes more sense to have separate irq handlers corresponding to the DSS sub modules instead of having a common handler. Since on OMAP3 the logical OR of the lines goes to MPU, the irq line is shared among the IRQ handlers. The hwmod irq info has been removed for DSS to DISPC and DSI for OMAP2 and OMAP3 hwmod databases. The Probes of DISPC and DSI now request for irq handlers. Signed-off-by: Archit Tanejaarc...@ti.com --- v3: -return IRQ_NONE instead of IRQ_HANDLED when interrupt is not ours -don't print module names wehn using DSSERR v2: Removed checking with DSS_IRQSTATUS. v3 tested on 3430sdp with sharp ls panel and 3430sdp with a Taal panel. Minor correction: Subject should have been: [PATCH v3] OMAP: DSS2: Have separate irq handlers for DISPC and DSI snip Regards, Archit -- 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 resend] omap: rx51: Add SI4713 FM transmitter
Add SI4713 FM transmitter supplies, platform data and setup to RX-51/N900. It is connected to line output signals of TLV320AIC34 codec A part. Driver can be either built-in or a module. It can be tuned with v4l2-ctl from ivtv-utils. Following examples illustrate the use of it: v4l2-ctl -d /dev/radio0 --set-ctrl=mute=0 (power up) v4l2-ctl -d /dev/radio0 -f 107900 (tune 107.9 MHz) v4l2-ctl -d /dev/radio0 --set-ctrl=mute=1 (power down) Signed-off-by: Jarkko Nikula jhnik...@gmail.com --- Resend = forgot to cc LAKML. --- arch/arm/mach-omap2/board-rx51-peripherals.c | 44 ++ 1 files changed, 44 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-omap2/board-rx51-peripherals.c b/arch/arm/mach-omap2/board-rx51-peripherals.c index e75e240..d0998f8 100644 --- a/arch/arm/mach-omap2/board-rx51-peripherals.c +++ b/arch/arm/mach-omap2/board-rx51-peripherals.c @@ -36,6 +36,8 @@ #include sound/tlv320aic3x.h #include sound/tpa6130a2-plat.h +#include media/radio-si4713.h +#include media/si4713.h #include ../drivers/staging/iio/light/tsl2563.h @@ -47,6 +49,8 @@ #define RX51_WL1251_POWER_GPIO 87 #define RX51_WL1251_IRQ_GPIO 42 +#define RX51_FMTX_RESET_GPIO 163 +#define RX51_FMTX_IRQ 53 /* list all spi devices here */ enum { @@ -357,10 +361,14 @@ static struct regulator_consumer_supply rx51_vio_supplies[] = { REGULATOR_SUPPLY(DVDD, 2-0018), REGULATOR_SUPPLY(IOVDD, 2-0019), REGULATOR_SUPPLY(DVDD, 2-0019), + /* Si4713 IO supply */ + REGULATOR_SUPPLY(vio, 2-0063), }; static struct regulator_consumer_supply rx51_vaux1_consumers[] = { REGULATOR_SUPPLY(vdds_sdi, omapdss), + /* Si4713 supply */ + REGULATOR_SUPPLY(vdd, 2-0063), }; static struct regulator_consumer_supply rx51_vdac_supply[] = { @@ -511,6 +519,41 @@ static struct regulator_init_data rx51_vio = { .consumer_supplies = rx51_vio_supplies, }; +static struct si4713_platform_data rx51_si4713_i2c_data __initdata_or_module = { + .gpio_reset = RX51_FMTX_RESET_GPIO, +}; + +static struct i2c_board_info rx51_si4713_board_info __initdata_or_module = { + I2C_BOARD_INFO(si4713, SI4713_I2C_ADDR_BUSEN_HIGH), + .platform_data = rx51_si4713_i2c_data, +}; + +static struct radio_si4713_platform_data rx51_si4713_data __initdata_or_module = { + .i2c_bus= 2, + .subdev_board_info = rx51_si4713_board_info, +}; + +static struct platform_device rx51_si4713_dev __initdata_or_module = { + .name = radio-si4713, + .id = -1, + .dev= { + .platform_data = rx51_si4713_data, + }, +}; + +static __init void rx51_init_si4713(void) +{ + int err; + + err = gpio_request_one(RX51_FMTX_IRQ, GPIOF_DIR_IN, si4713 irq); + if (err) { + printk(KERN_ERR Cannot request si4713 irq gpio. %d\n, err); + return; + } + rx51_si4713_board_info.irq = gpio_to_irq(RX51_FMTX_IRQ); + platform_device_register(rx51_si4713_dev); +} + static int rx51_twlgpio_setup(struct device *dev, unsigned gpio, unsigned n) { /* FIXME this gpio setup is just a placeholder for now */ @@ -921,6 +964,7 @@ void __init rx51_peripherals_init(void) board_smc91x_init(); rx51_add_gpio_keys(); rx51_init_wl1251(); + rx51_init_si4713(); spi_register_board_info(rx51_peripherals_spi_board_info, ARRAY_SIZE(rx51_peripherals_spi_board_info)); -- 1.7.2.3 -- 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 v7 00/12] omap3: pm: TWL4030 power scripts and workaround for TWL errata 27
Hi Jean, On Fri, Feb 18, 2011 at 10:57 PM, Jean Pihet jean.pi...@newoldbits.com wrote: On Fri, Feb 18, 2011 at 6:08 PM, Lesly A M lesl...@ti.com wrote: Patch series for TWL4030 power scripts and workaround for TWL errata 27. Changes for implementing TWL4030 power scripts recommended by hardware team. Introduced a new TWL4030 power script file, which can be used by different OMAP3 board with the power companion chip TWL4030. Updated the changes for TWL4030 errata 27 28, modified the TWL4030 power script and voltage controller setuptime. Workaround for TWL4030 errata 27 28 is required for Si version less than or equal to TWL5030 ES1.1. TWL4030 script changes rebased on Kevin's PM tree in pm branch. Changes in v7: changes to fix Nishanth Menon's comments i) Added the TWL4030 Errata 27 fix split the first patch in v6 i) fix for twl4030 script load ii) correct the warning print during script loading Added new patch files i) pmic_info struct cleanup ii) changing sys_off signal polarity Updated the change logs This changes are tested on OMAP3430 OMAP3630 SDP with off mode enabled in suspend path. Tested with suspend/resume script, which will test system suspend in a loop. Tested for more than 1000 iterations. Good to see the TWL scripts back in the mainline kernel! Are the scripts compatible with the OMAP3 Beagleboard? I would like to test the changes on that board. I have not tested on Beagleboard. I think Beagleboard is using different PM IC TPS. If its equivalent to TRITON then this script should work on it. Regards, Lesly A M Cc: Nishanth Menon n...@ti.com Cc: David Derrick dderr...@ti.com Cc: Samuel Ortiz sa...@linux.intel.com --- Lesly A M (12): omap3: pm: Fix for the TRITON sleep/wakeup sequence omap3: pm: Correct the warning print during script loading omap3: pm: cleanup pmic_info structure omap3: pm: Using separate clk/volt setup_time for RET and OFF states omap3630: pm: Adding voltage controller data omap3: pm: Correcting the sys_offmode signal polarity omap3: pm: Re-programing the setup time based on CORE target state omap3: pm: TWL4030 power scripts for OMAP3 boards omap3: pm: TWL5030 version checking mfd: TWL4030: changes for TRITON Errata 27 workaround omap3430: Updating the board file to use TWL4030 scripts omap3630: Updating the board file to use TWL4030 scripts arch/arm/mach-omap2/Makefile | 12 +- arch/arm/mach-omap2/board-3430sdp.c | 3 +- arch/arm/mach-omap2/board-zoom-peripherals.c | 2 + arch/arm/mach-omap2/omap_twl.c | 369 +++--- arch/arm/mach-omap2/pm34xx.c | 15 +- arch/arm/mach-omap2/twl4030.c | 261 ++ arch/arm/mach-omap2/twl4030.h | 21 ++ arch/arm/mach-omap2/voltage.c | 167 +--- arch/arm/plat-omap/include/plat/voltage.h | 49 +++- drivers/mfd/twl-core.c | 50 drivers/mfd/twl4030-power.c | 79 ++- include/linux/i2c/twl.h | 45 +++- 12 files changed, 961 insertions(+), 112 deletions(-) create mode 100644 arch/arm/mach-omap2/twl4030.c create mode 100644 arch/arm/mach-omap2/twl4030.h -- 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 -- 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] omap3: Adding vdd_sdi regulator supply to OMAP3EVM
Hi, would you guys take a look at this? Thanks, -Bryan On Thu, Feb 17, 2011 at 4:11 PM, Bryan Wu bryan...@canonical.com wrote: From: Mathieu J. Poirier mathieu.poir...@canonical.com https://bugs.launchpad.net/bugs/630885 When booting, the omapdss subsystem is looking for a regulator named vdds_sdi. When the regulator is not found the initialisation sequence is aborted resulting in omapfb not finding a display to work with. This patch allows the omapfb sub system to complete its initialisation properly and enable LCD display. The problem was fixed by lumping a vdds_sdi with the already existing vdds_dsi regulator. This fix takes its root from work done on the Beagle board and the Pandora board. Signed-off-by: Mathieu Poirier mathieu.poir...@canonical.com Signed-off-by: Andy Whitcroft a...@canonical.com Signed-off-by: Bryan Wu bryan...@canonical.com --- arch/arm/mach-omap2/board-omap3evm.c | 10 ++ 1 files changed, 6 insertions(+), 4 deletions(-) diff --git a/arch/arm/mach-omap2/board-omap3evm.c b/arch/arm/mach-omap2/board-omap3evm.c index c2a0fca..8b8eb36 100644 --- a/arch/arm/mach-omap2/board-omap3evm.c +++ b/arch/arm/mach-omap2/board-omap3evm.c @@ -521,8 +521,10 @@ static struct regulator_init_data omap3_evm_vdac = { }; /* VPLL2 for digital video outputs */ -static struct regulator_consumer_supply omap3_evm_vpll2_supply = - REGULATOR_SUPPLY(vdds_dsi, omapdss); +static struct regulator_consumer_supply omap3_evm_vdds_supplies[] = { + REGULATOR_SUPPLY(vdds_sdi, omapdss), + REGULATOR_SUPPLY(vdds_dsi, omapdss), +}; static struct regulator_init_data omap3_evm_vpll2 = { .constraints = { @@ -534,8 +536,8 @@ static struct regulator_init_data omap3_evm_vpll2 = { .valid_ops_mask = REGULATOR_CHANGE_MODE | REGULATOR_CHANGE_STATUS, }, - .num_consumer_supplies = 1, - .consumer_supplies = omap3_evm_vpll2_supply, + .num_consumer_supplies = ARRAY_SIZE(omap3_evm_vdds_supplies), + .consumer_supplies = omap3_evm_vdds_supplies, }; static struct twl4030_platform_data omap3evm_twldata = { -- 1.7.1 -- 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 -- 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 resend] video: omap24xxcam: Fix compilation
Hi, On Sat, Feb 19, 2011 at 06:04:58PM +0200, David Cohen wrote: I have to disagree. The fundamental problem is the circular dependency between those two files: sched.h uses wait_queue_head_t defined in wait.h wait.h uses TASK_* defined in sched.h So, IMO the real fix would be clear out the circular dependency. Maybe introducing linux/task.h to define those TASK_* symbols and include that on sched.h and wait.h Just dig a quick and dirty to try it out and works like a charm We have 2 problems: - omap24xxcam compilation broken - circular dependency between sched.h and wait.h To fix the broken compilation we can do what the rest of the kernel is doing, which is to include sched.h. Then, the circular dependency is fixed by some different approach which would probably change *all* current usage of TASK_*. considering that 1 is caused by 2 I would fix 2. IMO, there's no need to create a dependency between those issues. There's no dependency between them, it's just that the root cause for this problem is a circular dependency between wait.h and sched.h -- balbi -- 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 resend] omap: rx51: Add SI4713 FM transmitter
On Mon, Feb 21, 2011 at 12:12, Jarkko Nikula jhnik...@gmail.com wrote: Add SI4713 FM transmitter supplies, platform data and setup to RX-51/N900. It is connected to line output signals of TLV320AIC34 codec A part. Driver can be either built-in or a module. It can be tuned with v4l2-ctl from ivtv-utils. Following examples illustrate the use of it: v4l2-ctl -d /dev/radio0 --set-ctrl=mute=0 (power up) v4l2-ctl -d /dev/radio0 -f 107900 (tune 107.9 MHz) v4l2-ctl -d /dev/radio0 --set-ctrl=mute=1 (power down) Signed-off-by: Jarkko Nikula jhnik...@gmail.com --- Resend = forgot to cc LAKML. --- snip + +static __init void rx51_init_si4713(void) +{ + int err; + + err = gpio_request_one(RX51_FMTX_IRQ, GPIOF_DIR_IN, si4713 irq); + if (err) { + printk(KERN_ERR Cannot request si4713 irq gpio. %d\n, err); use pr_err instead of printk. + return; + } + rx51_si4713_board_info.irq = gpio_to_irq(RX51_FMTX_IRQ); + platform_device_register(rx51_si4713_dev); +} + snip -- 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 resend] omap: rx51: Add SI4713 FM transmitter
On Mon, 21 Feb 2011 13:10:59 +0530 Varadarajan, Charulatha ch...@ti.com wrote: + err = gpio_request_one(RX51_FMTX_IRQ, GPIOF_DIR_IN, si4713 irq); + if (err) { + printk(KERN_ERR Cannot request si4713 irq gpio. %d\n, err); use pr_err instead of printk. Thanks, I was obviously blind, will send an update :-) -- Jarkko -- 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