On Wednesday 03 August 2011 04:53 AM, Kevin Hilman wrote:
Shubhrajyoti Dshubhrajy...@ti.com writes:
Under some error conditions the i2c driver may do a reset.
^^
minor: extra whitespace
Adding a reset field and support in the platform.
On Wed, 2011-08-03 at 22:10 +0200, Daniel Morsing wrote:
If a manager is moved while attached to an enabled display, the DSS
system will be left in an inconsistent state. This will eventually cause
a kernel oops when the enabled display is disabled.
Fix this by not allowing the user to move
On Wed, 2011-07-06 at 12:08 -0500, Andy Doan wrote:
Make the debug message useful by printing the name of the device
that no associated driver could be found for.
Signed-off-by: Andy Doan andy.d...@linaro.org
---
drivers/video/omap2/omapfb/omapfb-main.c |3 ++-
1 files changed, 2
While migrating from .33 to .37 kernel I found, that HW-ECC is used by default.
I found that this is set in omap2.c:
pdata-ecc_opt = OMAP_ECC_HAMMING_CODE_HW;
Unfortunatly setting it back to
pdata-ecc_opt = OMAP_ECC_HAMMING_CODE_DEFAULT;
doesn't prevent me from
From: Charulatha V ch...@ti.com
mpuio_init() function is defined under #ifdefs. It is required only in case
of MPUIO bank type and only when PM operations are supported by it.
This is applicable only in case of OMAP16xx SoC's MPUIO GPIO bank type.
For all the other cases it is a dummy function.
It is not required to use hard-coded offsets any more in context save and
restore functions and instead use the generic offsets which have been correctly
initialized during device registration.
Signed-off-by: Tarun Kanti DebBarma tarun.ka...@ti.com
Signed-off-by: Charulatha V ch...@ti.com
---
From: Charulatha V ch...@ti.com
In all OMAP1 SoCs, the MPUIO bank width is 16 bits. But, in OMAP7xx,
it is wrongly initialised to 32. Fix this.
Signed-off-by: Charulatha V ch...@ti.com
---
arch/arm/mach-omap1/gpio7xx.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git
There is no need to operate on all the banks every time the function is called.
Just operate on the current bank passed by the framework.
Signed-off-by: Tarun Kanti DebBarma tarun.ka...@ti.com
---
drivers/gpio/gpio-omap.c | 54 +
1 files changed, 25
With register offsets now defined for respective OMAP versions we can get rid
of cpu_class_* checks. This function now has common initialization code for
all OMAP versions. Initialization specific to OMAP16xx has been moved within
omap16xx_gpio_init().
Signed-off-by: Tarun Kanti DebBarma
Call runtime pm APIs pm_runtime_get_sync() and pm_runtime_put_sync()
for enabling/disabling clocks appropriately. Remove syscore_ops and
instead use dev_pm_ops now.
Signed-off-by: Charulatha V ch...@ti.com
Signed-off-by: Tarun Kanti DebBarma tarun.ka...@ti.com
---
drivers/gpio/gpio-omap.c | 89
From: Charulatha V ch...@ti.com
The only bank-type (method) used in the OMAP GPIO driver is MPUIO type as they
need to be handled separately. Identify the same using a flag and remove all
METHOD_* macros.
Signed-off-by: Charulatha V ch...@ti.com
Signed-off-by: Tarun Kanti DebBarma
Context is now saved dynamically in respective functions whenever and
whichever registers are modified. This avoid overhead of saving all
registers context in the runtime callback.
Signed-off-by: Tarun Kanti DebBarma tarun.ka...@ti.com
---
drivers/gpio/gpio-omap.c | 66
Wakeup istatus register offset initialized according to OMAP versions
during device registration. Use this to avoid version checks.
Starting with OMAP4, legacy registers should not be used in combination
with the updated regsiters. Use wkup_status register consistently for
all SoCs wherever
By adding level and edge detection register offsets and then initializing them
correctly according to OMAP versions during device registrations we can now
remove
lot of revision checks in these functions.
Signed-off-by: Tarun Kanti DebBarma tarun.ka...@ti.com
Signed-off-by: Charulatha V
From: Charulatha V ch...@ti.com
In omap3, save/restore context is implemented for GPIO banks 2-6 as GPIO bank1
is in wakeup domain. Instead of identifying bank's power domain by bank id,
use 'loses_context' flag which is filled by pwrdm_can_ever_lose_context()
during dev_init.
For getting the
This series is continuation of cleanup of OMAP GPIO driver and fixes.
The cleanup include getting rid of cpu_is_* checks wherever possible,
use of gpio_bank list instead of static array, use of unique platform
specific value associated data member to OMAP platforms to avoid
cpu_is_* checks. The
From: Charulatha V ch...@ti.com
The gpio_bank_count is the count of number of GPIO devices in a SoC. Remove this
dependency from the driver by using list. Also remove the dependency on array of
pointers to gpio_bank struct of all GPIO devices.
Signed-off-by: Charulatha V ch...@ti.com
---
Getting rid of ifdefs within the function by adding register offset intctrl
and associating OMAP_GPIO_INT_CONTROL in respective SoC specific files.
Also, use wkup_status register consistently instead of referring to wakeup
clear and wakeup set register offsets.
Signed-off-by: Charulatha V
From: Charulatha V ch...@ti.com
Use regs-pinctrl field instead of using the macro OMAP1510_GPIO_PIN_CONTROL
Signed-off-by: Charulatha V ch...@ti.com
---
arch/arm/mach-omap1/gpio15xx.c |1 +
arch/arm/plat-omap/include/plat/gpio.h |1 +
drivers/gpio/gpio-omap.c |
Most operations within runtime callbacks should be skipped when
*_runtime_get_sync() and *_runtime_put_sync() are called in probe(),
*_gpio_request() and *_gpio_free(). We just need clock enable/disable.
Signed-off-by: Tarun Kanti DebBarma tarun.ka...@ti.com
---
drivers/gpio/gpio-omap.c |6
From: Charulatha V ch...@ti.com
Modify omap_gpio_prepare_for_idle() omap_gpio_resume_after_idle() functions
to handle save context restore context respectively in the OMAP GPIO driver
itself instead of calling these functions from pm specific files.
For this, in gpio_prepare_for_idle(), call
From: Charulatha V ch...@ti.com
Remove cpu-is checks while enabling/disabling OMAP GPIO module during a gpio
request/free.
Signed-off-by: Charulatha V ch...@ti.com
---
arch/arm/mach-omap2/gpio.c |2 +
arch/arm/plat-omap/include/plat/gpio.h |1 +
drivers/gpio/gpio-omap.c
From: Charulatha V ch...@ti.com
Currently gpio_context array used to save gpio bank's context, is used only for
OMAP3 architecture. Move gpio_context as part of gpio_bank structure so that it
can be specific to each gpio bank and can be used for any OMAP architecture
Signed-off-by: Charulatha V
From: Charulatha V ch...@ti.com
Non-wakeup GPIOs are available only in OMAP2. Avoid cpu_is checks by making
non_wakeup_gpios as part of pdata.
Signed-off-by: Charulatha V ch...@ti.com
---
arch/arm/mach-omap2/gpio.c |8
arch/arm/plat-omap/include/plat/gpio.h |1 +
From: Charulatha V ch...@ti.com
The context lost count is modified in omap_sram_idle() path when
pwrdm_post_transition() is called. But pwrdm_post_transition() is called
only after omap_gpio_resume_after_idle() is called. Correct this so that
context lost count is modified before calling
Simplify omap2_gpio_prepare_for_idle() and omap2_gpio_resume_after_idle()
by moving most of the stuff to *_runtime_suspend() and *_runtime_resume().
Signed-off-by: Tarun Kanti DebBarma tarun.ka...@ti.com
Signed-off-by: Charulatha V ch...@ti.com
---
drivers/gpio/gpio-omap.c | 230
From: Charulatha V ch...@ti.com
Even when bank-width is 16, all the OMAP1 registers are 4-byte aligned, so just
use a 4-byte read. The 'enabled' mask is already taking care to mask for bank
width.
Signed-off-by: Charulatha V ch...@ti.com
Signed-off-by: Tarun Kanti DebBarma tarun.ka...@ti.com
Hi,
On Wed, 2011-06-29 at 20:44 -0700, Arve Hjønnevåg wrote:
Change-Id: I18168c887e1384c07dc033a1ffc57abdacb26073
Signed-off-by: Arve Hjønnevåg a...@android.com
---
drivers/video/omap2/dss/dsi.c |7 ++-
1 files changed, 6 insertions(+), 1 deletions(-)
This feels somehow partial...
On Wed, Aug 03, 2011 at 12:16:17AM +0200, Rafael J. Wysocki wrote:
On Tuesday, August 02, 2011, Kevin Hilman wrote:
I disagree and think that both are quite realistic (mainly because they
exist today, albiet mostly out of tree because no generic QoS framework
exist. e.g. on OMAP, we have
-Original Message-
From: Tero Kristo [mailto:t-kri...@ti.com]
Sent: Wednesday, August 03, 2011 8:59 PM
To: linux-omap@vger.kernel.org
Cc: Vishwanath Sripathy
Subject: [RFC 1/2] OMAP3+: voltage / oscillator parameter
segregation
This patch separates board specific voltage and
Felipe Balbi ba...@ti.com writes:
On Wed, Aug 03, 2011 at 10:59:39AM -0700, Kevin Hilman wrote:
This reverts commit adf6e07922255937c8bfeea777d19502b4c9a2be.
Remove system PM methods which can race with runtime PM methods.
Also, as of v3.1, the PM domain level code for OMAP handles device
This reverts commit adf6e07922255937c8bfeea777d19502b4c9a2be.
Remove system PM methods which can race with runtime PM methods.
Also, as of v3.1, the PM domain level code for OMAP handles device
power state transistions automatically for devices, so drivers no
longer need to specifically call the
Felipe Balbi ba...@ti.com writes:
Hi,
On Wed, Aug 03, 2011 at 11:09:20AM -0700, Kevin Hilman wrote:
Current usage of runtime PM is not quite correct. The actual
idle/unidle of the I2C hardware should not happen until the runtime PM
callbacks are called. Therefore, change
A pointer to the struct device associated with the i2c device is
already kept in the struct omap_i2c_dev, so use omap_i2c_device to
find the pointer to struct device.
Reviewed-by: Felipe Balbi ba...@ti.com
Signed-off-by: Kevin Hilman khil...@ti.com
---
drivers/i2c/busses/i2c-omap.c | 22
Current usage of runtime PM is not quite correct. The actual
idle/unidle of the I2C hardware should not happen until the runtime PM
callbacks are called. Therefore, change omap_i2c_[un]idle() functions
to only be called from the runtime PM callbacks (when usage count
transitions to/from zero.)
Do some PM-related cleanup on this driver and make the runtime PM
usage more standard.
Series applies on Andy's I2C cleanup series (for_3.1/i2c-andy-2 branch
in my tree[1]) plus the misc. i2c fixes queued for v3.1-rc
(for_3.1/i2c-fixes branch) and are available in the
for_3.2/i2c-cleanup branch
BASEADDRESS is located in the 6 lower bits of the CONFIG7 register.
See OMAP 35x Technical Reference Manual, p. 1169.
Signed-off-by: David Wagner david.wag...@free-electrons.com
---
arch/arm/plat-omap/include/plat/gpmc.h |1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git
---
arch/arm/mach-omap2/board-igep0020.c |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-omap2/board-igep0020.c
b/arch/arm/mach-omap2/board-igep0020.c
index 35be778..f89573a 100644
--- a/arch/arm/mach-omap2/board-igep0020.c
+++
Shubhrajyoti shubhrajy...@ti.com writes:
On Wednesday 03 August 2011 04:53 AM, Kevin Hilman wrote:
Shubhrajyoti Dshubhrajy...@ti.com writes:
Under some error conditions the i2c driver may do a reset.
^^
minor: extra whitespace
Adding a reset
Now that this driver is using runtime PM, there is no longer a need
for the idle/enable/shutdown function pointers in pdata.
Signed-off-by: Kevin Hilman khil...@ti.com
---
Here's one more for the i2c-cleanup series
include/linux/i2c-omap.h |3 ---
1 files changed, 0 insertions(+), 3
Hi,
On Thu, Aug 04, 2011 at 07:53:37AM -0700, Kevin Hilman wrote:
@@ -1140,6 +1128,36 @@ omap_i2c_remove(struct platform_device *pdev)
return 0;
}
+#ifdef CONFIG_PM_RUNTIME
+static int omap_i2c_runtime_suspend(struct device *dev)
+{
+ struct platform_device *pdev =
Signed-off-by: David Wagner david.wag...@free-electrons.com
---
erratum: added the missing s-o-b
arch/arm/mach-omap2/board-igep0020.c |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-omap2/board-igep0020.c
b/arch/arm/mach-omap2/board-igep0020.c
index
Hi Tony,
Here's my current collection of PM-related fixes for the -rc cycle.
They are based on the next/board branch of Arnd's arm-soc tree (which
has already been merged by Linus) and are also available in the
for_3.1/pm-fixes branch of my tree:
CONFIG_PM is no longer a user-selectable Kconfig option. Rather it is
automatically enabled if either CONFIG_SUSPEND or CONFIG_RUNTIME_PM is
enabled, so having a 'select PM' here is redunant when 'select
CONFIG_PM_RUNTIME' is present.
Signed-off-by: Kevin Hilman khil...@ti.com
---
From: Nishanth Menon n...@ti.com
SmartReflex should be disabled while entering low power mode due to
a) SmartReflex values are not defined for retention voltage, further
b) with SmartReflex enabled, if CPU enters lower c-states, FSM will try
to bump the voltage to current OPP's voltage for which
OMAP1 needs this also since GPIO driver (common for all OMAPs) is
being converted to use generic IRQ chip.
Signed-off-by: Kevin Hilman khil...@ti.com
---
arch/arm/plat-omap/Kconfig |1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/arch/arm/plat-omap/Kconfig
From: Colin Cross ccr...@google.com
omap_sr_disable_reset_volt is called with irqs off in omapx_enter_sleep,
as part of idle sequence, this eventually calls sr_disable and
pm_runtime_put_sync. pm_runtime_put_sync calls rpm_idle, which will
enable interrupts in order to call the callback. In this
For converting from struct device to platform_device, and from
platform_device to struct omap_device, there are existing macros. Use
them instead of manual use of container_of().
Signed-off-by: Kevin Hilman khil...@ti.com
---
arch/arm/plat-omap/mcbsp.c |6 +++---
1 files changed, 3
This patch-set gets the kernel booting up on a AM3517 EVM.
The board is able to boot with ramdisk after this,but the MMC and Ethernet
drivers are not up yet. Lots of warnings remain which will be addressed in
subsequent patches.
The patches are tested on master of tmlind/linux-omap-2.6.git.
This patch enables AM35x SoCs to use generic OMAP3 hwmods
(i,e. omap3xxx_hwmods) by allowing board-am3517evm.c to
disable the modules which are not present in AM3517.
Reviewed-by: Sanjeev Premi pr...@ti.com
Signed-off-by: Abhilash K V abhilash...@ti.com
---
arch/arm/mach-omap2/board-am3517evm.c
From: Vaibhav Hiremath hvaib...@ti.com
In case of AM3517 AM3505, Smart Reflex is not applicable so
we must not enable it. So add check for am3517/05 cpu revision
in omap3_twl_init() and return -ENODEV if true, else continue.
Signed-off-by: Vaibhav Hiremath hvaib...@ti.com
Signed-off-by:
On Wednesday 03 August 2011 04:57 AM, Kevin Hilman wrote:
Shubhrajyoti Dshubhrajy...@ti.com writes:
- The reset in the driver at init is not needed anymore as the
hwmod framework takes care of reseting it.
- Reset is removed from omap_i2c_init, which was called
not only during
Hi Paul,
Paul Walmsley wrote on Saturday, July 16, 2011 1:38 PM:
Hello Hemant,
On Wed, 13 Jul 2011, Pedanekar, Hemant wrote:
Any comments on the hwmod and clock patch sets?
I haven't forgotten about these patches.
Here are a few questions:
Sorry I missed this mail.
- Are there
Paul Walmsley wrote on Saturday, July 16, 2011 1:25 PM:
On Fri, 25 Mar 2011, Hemant Pedanekar wrote:
This patch adds data for various clock domains and power domains in TI816X.
Note that at present this is not exhaustive and need to add missing
domains.
Signed-off-by: Hemant Pedanekar
This patch set adds support for DM814x, C6A814x and AM387x device series having
Cortex-A8 MPU.
The technical documents are available from following link:
http://focus.ti.com/docs/prod/folders/print/tms320dm8148.html
This series is referred in code as TI814X.
Since these devices share similar
This patch updates existing macros, functions used for TI816X, to enable
addition of other SoCs belonging to TI81XX family (e.g., TI814X).
The approach taken is to use TI81XX/ti81xx for code/data going to be common
across all TI81XX devices.
cpu_is_ti81xx() is introduced to handle code common
This patch adds cpu type, macros for identification of TI814X device.
Note that following updates to common OMAP data structures are made:
1) struct omap_chip_id member 'oc' is updated to u32 from u16 as omap chip
bitfield has exhausted 16 bits for CHIP_IS_XXX.
2) cpu_mask and RATE_IN_XXX flags
This patch adds minimal support and build configuration for TI8148 EVM. Also
adds support for low level debugging on UART1 console on the EVM.
Signed-off-by: Hemant Pedanekar hema...@ti.com
---
arch/arm/mach-omap2/Kconfig |5 ++
arch/arm/mach-omap2/Makefile |
Compiling the current mainline tree (commit
288d5abec8314ae50fe6692f324b0444acae8486) produces some omap-related
warnings. Most of them are harmless, and they are simple enough to
fix that even I can do it. I hope..
The compiler warnings from running `make omap2plus_defconfig uImage
Stop `warning: 'cpu_clkflg' may be used uninitialized in this
function' from compiler.
---
arch/arm/mach-omap2/clock44xx_data.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mach-omap2/clock44xx_data.c
b/arch/arm/mach-omap2/clock44xx_data.c
index
`keypad_pads' is referred to by `keypad_data' which is
not __initdata, so `keypad_pads' should not be __initdata either.
---
arch/arm/mach-omap2/board-4430sdp.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mach-omap2/board-4430sdp.c
Don't call omap4430_phy_init(dev) before dev is initialized.
The real omap4430_phy_init(dev) call is done at the end of
this function.
---
arch/arm/mach-omap2/usb-musb.c |3 ---
1 files changed, 0 insertions(+), 3 deletions(-)
diff --git a/arch/arm/mach-omap2/usb-musb.c
Not in use anymore.
---
arch/arm/mach-omap2/usb-musb.c | 38 --
1 files changed, 0 insertions(+), 38 deletions(-)
diff --git a/arch/arm/mach-omap2/usb-musb.c b/arch/arm/mach-omap2/usb-musb.c
index 19e4dac..852d6e4 100644
--- a/arch/arm/mach-omap2/usb-musb.c
On Thursday, August 04, 2011, Mark Brown wrote:
On Wed, Aug 03, 2011 at 12:16:17AM +0200, Rafael J. Wysocki wrote:
On Tuesday, August 02, 2011, Kevin Hilman wrote:
I disagree and think that both are quite realistic (mainly because they
exist today, albiet mostly out of tree because no
From: Axel Haslam axelhas...@ti.com
As Documented in runtime documentation, drivers can call put_sync
in contexts where sleep is allowed, in contexts where sleep is not
possible, the drivers need to mark these as to be made interrupt
safe and also use put_sync_suspend instead of put_sync as the
Felipe Balbi ba...@ti.com writes:
Hi,
On Thu, Aug 04, 2011 at 07:53:37AM -0700, Kevin Hilman wrote:
@@ -1140,6 +1128,36 @@ omap_i2c_remove(struct platform_device *pdev)
return 0;
}
+#ifdef CONFIG_PM_RUNTIME
+static int omap_i2c_runtime_suspend(struct device *dev)
+{
+
Abhilash K V abhilash...@ti.com writes:
From: Vaibhav Hiremath hvaib...@ti.com
In case of AM3517 AM3505, Smart Reflex is not applicable so
we must not enable it. So add check for am3517/05 cpu revision
in omap3_twl_init() and return -ENODEV if true, else continue.
Signed-off-by: Vaibhav
Nishanth Menon n...@ti.com writes:
SmartReflex should be disabled while entering low power mode due to
the following reasons:
a) SmartReflex values are not defined for retention voltage.
b) With SmartReflex enabled, if the CPU enters low power state, FSM
will try to bump the voltage to
Rafael J. Wysocki r...@sisk.pl writes:
On Friday, July 22, 2011, Kevin Hilman wrote:
Currently the use of pm_runtime_put_sync() is not safe from
interrupts-disabled context because rpm_idle() will release the
spinlock and enable interrupts for the idle callbacks. This enables
interrupts
On Fri, Jul 1, 2011 at 21:30, Rajendra Nayak rna...@ti.com wrote:
[...]
+static void __init omap4_check_features(void)
+{
+ u32 si_type;
+
+ if (cpu_is_omap443x())
+ omap_features |= OMAP4_HAS_MPU_1GHZ;
+
+
+ if (cpu_is_omap446x()) {
+
Moiz Sonasath m-sonas...@ti.com writes:
From: Axel Haslam axelhas...@ti.com
As Documented in runtime documentation, drivers can call put_sync
in contexts where sleep is allowed, in contexts where sleep is not
possible, the drivers need to mark these as to be made interrupt
safe and also use
2011/8/4 Tomi Valkeinen tomi.valkei...@ti.com:
Hi,
On Wed, 2011-06-29 at 20:44 -0700, Arve Hjønnevåg wrote:
Change-Id: I18168c887e1384c07dc033a1ffc57abdacb26073
Signed-off-by: Arve Hjønnevåg a...@android.com
---
drivers/video/omap2/dss/dsi.c | 7 ++-
1 files changed, 6
72 matches
Mail list logo