Janusz Krzysztofik | 1 Dec 01:17 2009
Picon

Re: [PATCH 0/2] [RESEND] Amstrad Delta: add support for LCD contrast

Monday 23 November 2009 18:57:51 Janusz Krzysztofik wrote:
> Initialy submitted on 2009-11-16
> (http://www.spinics.net/lists/linux-omap/msg20629.html).
> Resendig due to fbdev mailing list address changed.

Hi,

2 weeks have passed now since my initial submisison, and I still got no single 
answer. I can assume that Tony is just waiting with OMAP part for someone 
from fbdev to answer first, but I have no idea why I can't hear from Imre, 
who is still pointed out in MAINTAINERS as a right person to talk to about 
drivers/video/omap/*, nor anybody else involved in framebuffer development.

Could someone please give me an advice what I should do now?

Thanks,
Janusz

> The series consists of 2 patches:
>
>  [PATCH 1/2] omapfb: lcd_ams_delta: add support for contrast control

http://marc.info/?l=linux-fbdev&m=125899977102760

>  [PATCH 2/2] OMAP: ams_delta_defconfig: enable LCD class device support

http://marc.info/?l=linux-fbdev&m=125899990003070

> It is intended for 2.6.33, if it's not too late.
>
(Continue reading)

Janusz Krzysztofik | 1 Dec 04:10 2009
Picon

[PATCH v3 0/4] OMAP: McBSP: Use register cache

Change the way McBSP registers are maintained: store values written to the
device in a cache in order to  make use of those cached values when
convenient.

This could help for developing the McBSP context save/restore features, as
well as solve the problem of possible register corruption experienced on
OMAP1510 based Amstrad Delta board, at least.

Janusz Krzysztofik (4):
	OMAP: McBSP: Use macros for all register read/write operations
	OMAP: McBSP: Prepare register read/write macros API for caching
	OMAP: McBSP: Introduce caching in register write operations
	OMAP: McBSP: Use cache when modifying individual register bits

 arch/arm/plat-omap/include/plat/mcbsp.h |    5
 arch/arm/plat-omap/mcbsp.c              |  397 ++++++++++++++++++++++++---------------------------
 2 files changed, 198 insertions(+), 204 deletions(-)

Thanks,
Janusz
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Janusz Krzysztofik | 1 Dec 04:12 2009
Picon

[PATCH v3 1/4] OMAP: McBSP: Use macros for all register read/write operations

There are several places where readw()/writew() functions are used instead of
OMAP_MCBSP_READ()/WRITE() macros for manipulating McBSP registers. Replace
them with macros to ensure consistent behaviour after caching is introduced.

Created against linux-omap for-next,
commit 4421752e331cfb1d942b47ffdb26e451a8da58a0.

Tested on OMAP1510 based Amstrad Delta.
Compile-tested with omap_3430sdp_defconfig.

Signed-off-by: Janusz Krzysztofik <jkrzyszt <at> tis.icnet.pl>

---
 arch/arm/plat-omap/mcbsp.c |   44 
++++++++++++++++++++++----------------------
 1 file changed, 22 insertions(+), 22 deletions(-)

--- git/arch/arm/plat-omap/mcbsp.c.orig	2009-11-27 11:53:46.000000000 +0100
+++ git/arch/arm/plat-omap/mcbsp.c	2009-12-01 03:02:17.000000000 +0100
 <at>  <at>  -622,26 +622,26  <at>  <at>  int omap_mcbsp_pollwrite(unsigned int id
 	mcbsp = id_to_mcbsp_ptr(id);
 	base = mcbsp->io_base;

-	writew(buf, base + OMAP_MCBSP_REG_DXR1);
+	OMAP_MCBSP_WRITE(base, DXR1, buf);
 	/* if frame sync error - clear the error */
-	if (readw(base + OMAP_MCBSP_REG_SPCR2) & XSYNC_ERR) {
+	if (OMAP_MCBSP_READ(base, SPCR2) & XSYNC_ERR) {
 		/* clear error */
-		writew(readw(base + OMAP_MCBSP_REG_SPCR2) & (~XSYNC_ERR),
(Continue reading)

Janusz Krzysztofik | 1 Dec 04:14 2009
Picon

[PATCH v3 2/4] OMAP: McBSP: Prepare register read/write macros API for caching

OMAP_MCBSP_READ()/WRITE() macros accept McBSP register base address as an
argument. In order to support caching, that must be replaced with an address
of the omap_mcbsp structure that would provide both register AND cache
addresses to deal with.
Since OMAP_ prefix seems obvious, drop it off from macro names in order to
minimize line wrapping.

Applies on top of patch 1 from this series:
[PATCH v3 1/4] OMAP: McBSP: Use macros for all register read/write operations

Tested on OMAP1510 based Amstrad Delta using linux-omap for-next,
commit 4421752e331cfb1d942b47ffdb26e451a8da58a0.
Compile-tested with omap_3430sdp_defconfig.

Signed-off-by: Janusz Krzysztofik <jkrzyszt <at> tis.icnet.pl>

---
 arch/arm/plat-omap/mcbsp.c |  269 ++++++++++++++++++++++++++++------------------------------------
 1 file changed, 119 insertions(+), 150 deletions(-)

--- git/arch/arm/plat-omap/mcbsp.c.orig	2009-12-01 03:02:17.000000000 +0100
+++ git/arch/arm/plat-omap/mcbsp.c	2009-12-01 03:19:56.000000000 +0100
 <at>  <at>  -46,10 +46,10  <at>  <at>  int omap_mcbsp_read(void __iomem *io_bas
 		return __raw_readl(io_base + reg);
 }

-#define OMAP_MCBSP_READ(base, reg) \
-			omap_mcbsp_read(base, OMAP_MCBSP_REG_##reg)
-#define OMAP_MCBSP_WRITE(base, reg, val) \
-			omap_mcbsp_write(base, OMAP_MCBSP_REG_##reg, val)
(Continue reading)

Janusz Krzysztofik | 1 Dec 04:15 2009
Picon

[PATCH v3 3/4] OMAP: McBSP: Introduce caching in register write operations

Reserve space inside omap_mcbsp structure for storing cached copies of McBSP
register values.
Modify the MCBSP_WRITE() macro to update the cache with every register write
operation.
Introduce a new macro that reads from the cache instead of hardware.

Applies on top of patch 2 from this series:
[PATCH v3 2/4] OMAP: McBSP: Prepare register read/write macros API for caching

Tested on OMAP1510 based Amstrad Delta using linux-omap for-next,
commit 4421752e331cfb1d942b47ffdb26e451a8da58a0.
Compile-tested with omap_3430sdp_defconfig.

Signed-off-by: Janusz Krzysztofik <jkrzyszt <at> tis.icnet.pl>

---
 arch/arm/plat-omap/include/plat/mcbsp.h |    5 +++++
 arch/arm/plat-omap/mcbsp.c              |    6 +++++-
 2 files changed, 10 insertions(+), 1 deletion(-)

--- git/arch/arm/plat-omap/include/plat/mcbsp.h.orig	2009-11-27 11:53:45.000000000 +0100
+++ git/arch/arm/plat-omap/include/plat/mcbsp.h	2009-12-01 03:37:21.000000000 +0100
 <at>  <at>  -415,6 +415,11  <at>  <at>  struct omap_mcbsp {
 	u16 max_tx_thres;
 	u16 max_rx_thres;
 #endif
+#ifdef CONFIG_ARCH_OMAP1
+	u16 reg_cache[OMAP_MCBSP_REG_XCERH / sizeof(u16) + 1];
+#else
+	u32 reg_cache[OMAP_MCBSP_REG_RCCR / sizeof(u32) + 1];
(Continue reading)

Janusz Krzysztofik | 1 Dec 04:17 2009
Picon

[PATCH v3 4/4] OMAP: McBSP: Use cache when modifying individual register bits

Change the way McBSP registers are updated: use cached values instead of
relying upon those read back from the device.

With this patch, I have finally managed to get rid of all random
playback/recording hangups on my OMAP1510 based Amstrad Delta hardware. Before
that, values read back from McBSP registers to be used for updating them
happened to be errornous.

From the hardware side, the issue appeared to be caused by a relatively high
power requirements of an external USB adapter connected to the board's printer
dedicated USB port.

I think there is one important point that makes this patch worth of applying,
apart from my hardware quality. With the current code, if it ever happens to
any machine, no matter if OMAP1510 or newer, to read incorrect value from a
McBSP register, this wrong value will get written back without any checking.
That can lead to hardware damage if, for example, an input pin is turned into
output as a result.

Applies on top of patch 3 from this series:
[PATCH v3 3/4] OMAP: McBSP: Introduce caching in register write operations

Tested on OMAP1510 based Amstrad Delta using linux-omap for-next,
commit 4421752e331cfb1d942b47ffdb26e451a8da58a0.
Compile-tested with omap_3430sdp_defconfig.

Signed-off-by: Janusz Krzysztofik <jkrzyszt <at> tis.icnet.pl>

---
 arch/arm/plat-omap/mcbsp.c |   78 ++++++++++++++++++++++++++++++++++++++--------------------------
(Continue reading)

Olof Johansson | 1 Dec 04:19 2009
Picon

[PATCH v2] arm: omap: Add omap3_defconfig

Having one combined defconfig that is the superset of the individual
defconfigs for OMAP3 platforms is useful for easily finding build
errors. Not to mention convenient as a base if you want to boot several
platforms with a single kernel image.

Signed-off-by: Olof Johansson <olof <at> lixom.net>


---


Changed since v1:

* Refreshed to be based on for-next of linux-omap, resulting in minor
  differences, and:
* Disabled OTG_WHITELIST/BLACKLIST
* Disabled SYSFS_DEPRECATED.*
* Disabled MUSB_PIO_ONLY




Tony, I noticed linux-next doesn't build many of the OMAP defconfigs,
and a handful of them won't build to date. I suggest adding this config,
and I'll as Stephen Rothwell to add it as one of the configs that are
tested (and build errors reported) for every release.

He's reluctant to add too many individual configs since it adds time to
each cycle, but one more can surely be acceptable.

(Continue reading)

Janusz Krzysztofik | 1 Dec 04:26 2009
Picon

[Resend] [PATCH v3 1/4] OMAP: McBSP: Use macros for all register read/write operations

There are several places where readw()/writew() functions are used instead of
OMAP_MCBSP_READ()/WRITE() macros for manipulating McBSP registers. Replace
them with macros to ensure consistent behaviour after caching is introduced.

Created against linux-omap for-next,
commit 4421752e331cfb1d942b47ffdb26e451a8da58a0.

Tested on OMAP1510 based Amstrad Delta.
Compile-tested with omap_3430sdp_defconfig.

Signed-off-by: Janusz Krzysztofik <jkrzyszt <at> tis.icnet.pl>

---
Initial submission seems line wrapped, sorry.

 arch/arm/plat-omap/mcbsp.c |   44 ++++++++++++++++++++++----------------------
 1 file changed, 22 insertions(+), 22 deletions(-)

--- git/arch/arm/plat-omap/mcbsp.c.orig	2009-11-27 11:53:46.000000000 +0100
+++ git/arch/arm/plat-omap/mcbsp.c	2009-12-01 03:02:17.000000000 +0100
 <at>  <at>  -622,26 +622,26  <at>  <at>  int omap_mcbsp_pollwrite(unsigned int id
 	mcbsp = id_to_mcbsp_ptr(id);
 	base = mcbsp->io_base;

-	writew(buf, base + OMAP_MCBSP_REG_DXR1);
+	OMAP_MCBSP_WRITE(base, DXR1, buf);
 	/* if frame sync error - clear the error */
-	if (readw(base + OMAP_MCBSP_REG_SPCR2) & XSYNC_ERR) {
+	if (OMAP_MCBSP_READ(base, SPCR2) & XSYNC_ERR) {
 		/* clear error */
(Continue reading)

Menon, Nishanth | 1 Dec 04:57 2009
Picon

RE: [PATCH v2 09/20] DSPBRIDGE: checkpatch - printk() should include KERN_ facility level

> From: Ramirez Luna, Omar
> Sent: Monday, November 30, 2009 11:55 PM
> To: linux-omap
> Cc: Ramirez Luna, Omar; Menon, Nishanth
> Subject: [PATCH v2 09/20] DSPBRIDGE: checkpatch - printk() should include
> KERN_ facility level
> 
> WARNING: printk() should include KERN_ facility level

Any reason why we would like to stick with printk(KERN_ERR when we can use pr_err ?

> 
> Signed-off-by: Omar Ramirez Luna <omar.ramirez <at> ti.com>
> CC: Nishant Menon <nm <at> ti.com>
> ---
>  arch/arm/plat-omap/include/dspbridge/dbc.h |    2 +-
>  arch/arm/plat-omap/include/dspbridge/gt.h  |    2 +-
>  drivers/dsp/bridge/gen/_gt_para.c          |    2 +-
>  3 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm/plat-omap/include/dspbridge/dbc.h b/arch/arm/plat-
> omap/include/dspbridge/dbc.h
> index e9cb548..13b1ff6 100644
> --- a/arch/arm/plat-omap/include/dspbridge/dbc.h
> +++ b/arch/arm/plat-omap/include/dspbridge/dbc.h
>  <at>  <at>  -36,7 +36,7  <at>  <at> 
> 
>  #define DBC_Assert(exp) \
>      if (!(exp)) \
> -	printk("%s, line %d: Assertion (" #exp ") failed.\n", \
(Continue reading)

Pandita, Vikram | 1 Dec 04:59 2009
Picon

RE: [PATCH v2] arm: omap: Add omap3_defconfig


>-----Original Message-----
>From: linux-omap-owner <at> vger.kernel.org [mailto:linux-omap-owner <at> vger.kernel.org] On Behalf Of Olof
<snip>
>+# CONFIG_OMAP_LL_DEBUG_UART1 is not set
>+# CONFIG_OMAP_LL_DEBUG_UART2 is not set
>+CONFIG_OMAP_LL_DEBUG_UART3=y
>+# CONFIG_OMAP_LL_DEBUG_NONE is not set

I will suggest to keep LL_DEBUG_NONE as the default option and also disable the DEBUG_LL by default.
a) Not all omap boards have UART3 as the debug low level interface
b) Boards like zoom2/zoom3 have external uarts and should not define internal omap uart as Low level debug function.

>+# CONFIG_OMAP_PM_NONE is not set
>+CONFIG_OMAP_PM_NOOP=y
>+CONFIG_ARCH_OMAP34XX=y
>+CONFIG_ARCH_OMAP3430=y
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Gmane