[PATCH v4 REPOST 5/5] imx6q: Remove unconditional dependency on l2x0 L2 cache support

2011-12-14 Thread Dave Martin
The i.MX6 Quad SoC will work without the l2x0 L2 cache controller
support built into the kernel, so this patch removes the dependency
on CACHE_L2X0 and selects MIGHT_HAVE_CACHE_L2X0 instead.

This makes the l2x0 support optional, so that it can be turned off
when desired for debugging purposes etc.

Thanks to Shawn Guo for this suggestion. [1]

Signed-off-by: Dave Martin dave.mar...@linaro.org

[1] 
http://lists.infradead.org/pipermail/linux-arm-kernel/2011-November/074602.html
---
 arch/arm/mach-imx/Kconfig |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index 29a3d61..1fb93f2 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -609,13 +609,13 @@ comment i.MX6 family:
 config SOC_IMX6Q
bool i.MX6 Quad support
select ARM_GIC
-   select CACHE_L2X0
select CPU_V7
select HAVE_ARM_SCU
select HAVE_IMX_GPC
select HAVE_IMX_MMDC
select HAVE_IMX_SRC
select HAVE_SMP
+   select MIGHT_HAVE_CACHE_L2X0
select USE_OF
 
help
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH V1] mmc: core: Add host capability check for power class

2011-12-14 Thread Girish K S
This patch adds a check whether the host supports maximum current value
obtained from the device's extended csd register for a selected interface
voltage and frequency.

cc: Chris Ball c...@laptop.org
Signed-off-by: Girish K S girish.shivananja...@linaro.org
---
Changes in v1:
reduced the number of comparisons as per Hein's suggestion

 drivers/mmc/core/mmc.c   |   21 +
 include/linux/mmc/card.h |4 
 2 files changed, 25 insertions(+), 0 deletions(-)

diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
index 006e932..e7f1902 100644
--- a/drivers/mmc/core/mmc.c
+++ b/drivers/mmc/core/mmc.c
@@ -688,6 +688,27 @@ static int mmc_select_powerclass(struct mmc_card *card,
pwrclass_val = (pwrclass_val  EXT_CSD_PWR_CL_4BIT_MASK) 
EXT_CSD_PWR_CL_4BIT_SHIFT;
 
+   if (pwrclass_val = MMC_MAX_CURRENT_800)
+   pwrclass_val = MMC_MAX_CURRENT_800;
+   else if (pwrclass_val = MMC_MAX_CURRENT_600)
+   pwrclass_val = MMC_MAX_CURRENT_600;
+   else if (pwrclass_val = MMC_MAX_CURRENT_400)
+   pwrclass_val = MMC_MAX_CURRENT_400;
+   else if (pwrclass_val = MMC_MAX_CURRENT_200)
+   pwrclass_val = MMC_MAX_CURRENT_200;
+   else
+   pwrclass_val = MMC_MAX_CURRENT_200;
+
+   if ((pwrclass_val == MMC_MAX_CURRENT_800) 
+   !(card-host-caps  MMC_CAP_MAX_CURRENT_800))
+   pwrclass_val = MMC_MAX_CURRENT_600;
+   if ((pwrclass_val == MMC_MAX_CURRENT_600) 
+   !(card-host-caps  MMC_CAP_MAX_CURRENT_600))
+   pwrclass_val = MMC_MAX_CURRENT_400;
+   if ((pwrclass_val == MMC_MAX_CURRENT_400) 
+   !(card-host-caps  MMC_CAP_MAX_CURRENT_400))
+   pwrclass_val = MMC_MAX_CURRENT_200;
+
/* If the power class is different from the default value */
if (pwrclass_val  0) {
err = mmc_switch(card, EXT_CSD_CMD_SET_NORMAL,
diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h
index 9478a6b..c5e031a 100644
--- a/include/linux/mmc/card.h
+++ b/include/linux/mmc/card.h
@@ -195,6 +195,10 @@ struct mmc_part {
 #define MMC_BLK_DATA_AREA_GP   (12)
 };
 
+#define MMC_MAX_CURRENT_200(0)
+#define MMC_MAX_CURRENT_400(7)
+#define MMC_MAX_CURRENT_600(11)
+#define MMC_MAX_CURRENT_800(13)
 /*
  * MMC device
  */
-- 
1.7.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] make s5p64x0_defconfig build error

2011-12-14 Thread Will Deacon
On Wed, Dec 14, 2011 at 04:57:10AM +, Axel Lin wrote:
 I got below build error on linux-next 20111213.
 
   CC  arch/arm/kernel/process.o
 In file included from arch/arm/mach-s5p64x0/include/mach/system.h:16,
  from arch/arm/kernel/process.c:64:
 arch/arm/plat-samsung/include/plat/system-reset.h:19:2: error: #error Fix me 
 up
 make[1]: *** [arch/arm/kernel/process.o] Error 1
 make: *** [arch/arm/kernel] Error 2

The clue is in the commit message:

commit d0f7e2beabe6a116152ccc31959b6654b6ef0071
Author: Russell King rmk+ker...@arm.linux.org.uk
Date:   Tue Dec 6 12:57:02 2011 +

ARM: restart: Temporary #error to persuade platform maintainers to take the 
restart changes seriously

Force builds to fail to ensure that platform maintainers take the
restart changes seriously, and sort out fixing their code before the
next merge window.

Signed-off-by: Russell King rmk+ker...@arm.linux.org.uk


Will
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH 6/8] common: dma-mapping: change alloc/free_coherent method to more generic alloc/free_attrs

2011-12-14 Thread Marek Szyprowski
Hello,

On Sunday, December 11, 2011 11:46 PM Stephen Rothwell wrote:

 On Fri, 09 Dec 2011 17:39:56 +0100 Marek Szyprowski 
 m.szyprow...@samsung.com wrote:
 
  Introduce new alloc/free/mmap methods that take attributes argument.
  alloc/free_coherent can be implemented on top of the new alloc/free
  calls with NULL attributes. dma_alloc_non_coherent can be implemented
  using DMA_ATTR_NONCOHERENT attribute, dma_alloc_writecombine can also
  use separate DMA_ATTR_WRITECOMBINE attribute. This way the drivers will
  get more generic, platform independent way of allocating dma memory
  buffers with specific parameters.
 
  One more attribute can be usefull: DMA_ATTR_NOKERNELVADDR. Buffers with
  such attribute will not have valid kernel virtual address. They might be
  usefull for drivers that only exports the DMA buffers to userspace (like
  for example V4L2 or ALSA).
 
  mmap method is introduced to let the drivers create a user space mapping
  for a DMA buffer in generic, architecture independent way.
 
  TODO: update all dma_map_ops clients for all architectures
 
 To give everyone some chance, you should come up with a transition plan
 rather than this attempt to fix everyone at once approach.  You could
 (for example) just add the new methods now and only remove them in the
 following merge window when all the architectures have had a chance to
 migrate.
 
 And, in fact, (as I presume you know) this patch just breaks everyone
 with no attempt to cope.

Yes, I know that. Next version will include correct fix for this issue as
well as adjustments for other architectures. I was asked to post a current
version of DMA-mapping  IOMMU integration patch rebased on the latest kernel
and I wanted to this before going for holidays to let others to work with the
latest version.

Best regards
-- 
Marek Szyprowski
Samsung Poland RD Center


--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 REPOST 5/5] imx6q: Remove unconditional dependency on l2x0 L2 cache support

2011-12-14 Thread Shawn Guo
Hi Dave,

Sorry for that I did not look into previous post to point it out.

On Wed, Dec 14, 2011 at 11:39:41AM +, Dave Martin wrote:
 The i.MX6 Quad SoC will work without the l2x0 L2 cache controller
 support built into the kernel, so this patch removes the dependency
 on CACHE_L2X0 and selects MIGHT_HAVE_CACHE_L2X0 instead.
 
 This makes the l2x0 support optional, so that it can be turned off
 when desired for debugging purposes etc.
 
 Thanks to Shawn Guo for this suggestion. [1]
 
 Signed-off-by: Dave Martin dave.mar...@linaro.org
 
 [1] 
 http://lists.infradead.org/pipermail/linux-arm-kernel/2011-November/074602.html
 ---
  arch/arm/mach-imx/Kconfig |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
 index 29a3d61..1fb93f2 100644
 --- a/arch/arm/mach-imx/Kconfig
 +++ b/arch/arm/mach-imx/Kconfig
 @@ -609,13 +609,13 @@ comment i.MX6 family:
  config SOC_IMX6Q
   bool i.MX6 Quad support
   select ARM_GIC
 - select CACHE_L2X0
   select CPU_V7
   select HAVE_ARM_SCU
   select HAVE_IMX_GPC
   select HAVE_IMX_MMDC
   select HAVE_IMX_SRC
   select HAVE_SMP
 + select MIGHT_HAVE_CACHE_L2X0

The option SOC_IMX6Q is only available when ARCH_IMX_V6_V7 is selected.
Since MIGHT_HAVE_CACHE_L2X0 has been selected by ARCH_IMX_V6_V7 in
patch #1, this line seems redundant here.

Regards,
Shawn

   select USE_OF
  
   help
 -- 
 1.7.4.1
 
 
 ___
 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-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 REPOST 4/5] highbank: Unconditionally require l2x0 L2 cache controller support

2011-12-14 Thread Dave Martin
On Wed, Dec 14, 2011 at 07:37:32AM -0600, Rob Herring wrote:
 
 On 12/14/2011 05:39 AM, Dave Martin wrote:
  If running in the Normal World on a TrustZone-enabled SoC, Linux
  does not have complete control over the L2 cache controller
  configuration.  The kernel cannot work reliably on such platforms
  without the l2x0 cache support code built in.
  
  This patch unconditionally enables l2x0 support for the Highbank
  SoC.
  
  Thanks to Rob Herring for this suggestion. [1]
  
  Signed-off-by: Dave Martin dave.mar...@linaro.org
  
  [1] 
  http://lists.infradead.org/pipermail/linux-arm-kernel/2011-November/074495.html
 
 Doesn't this need to be above the SOB? Otherwise:

You may be right ... certainly I see no reason _not_ to change it.
So I'll change it.

 
 Acked-by: Rob Herring rob.herr...@calxeda.com

Thanks

---Dave
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 REPOST 5/5] imx6q: Remove unconditional dependency on l2x0 L2 cache support

2011-12-14 Thread Richard Zhao
On Wed, Dec 14, 2011 at 09:26:24PM +0800, Shawn Guo wrote:
 Hi Dave,
 
 Sorry for that I did not look into previous post to point it out.
 
 On Wed, Dec 14, 2011 at 11:39:41AM +, Dave Martin wrote:
  The i.MX6 Quad SoC will work without the l2x0 L2 cache controller
  support built into the kernel, so this patch removes the dependency
  on CACHE_L2X0 and selects MIGHT_HAVE_CACHE_L2X0 instead.
  
  This makes the l2x0 support optional, so that it can be turned off
  when desired for debugging purposes etc.
  
  Thanks to Shawn Guo for this suggestion. [1]
  
  Signed-off-by: Dave Martin dave.mar...@linaro.org
  
  [1] 
  http://lists.infradead.org/pipermail/linux-arm-kernel/2011-November/074602.html
  ---
   arch/arm/mach-imx/Kconfig |2 +-
   1 files changed, 1 insertions(+), 1 deletions(-)
  
  diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
  index 29a3d61..1fb93f2 100644
  --- a/arch/arm/mach-imx/Kconfig
  +++ b/arch/arm/mach-imx/Kconfig
  @@ -609,13 +609,13 @@ comment i.MX6 family:
   config SOC_IMX6Q
  bool i.MX6 Quad support
  select ARM_GIC
  -   select CACHE_L2X0
  select CPU_V7
  select HAVE_ARM_SCU
  select HAVE_IMX_GPC
  select HAVE_IMX_MMDC
  select HAVE_IMX_SRC
  select HAVE_SMP
  +   select MIGHT_HAVE_CACHE_L2X0
 
 The option SOC_IMX6Q is only available when ARCH_IMX_V6_V7 is selected.
 Since MIGHT_HAVE_CACHE_L2X0 has been selected by ARCH_IMX_V6_V7 in
 patch #1, this line seems redundant here.
Would it be better keep this one and remove patch #1 one? imx5 doesn't have
l2x0.

Thanks
Richard
 
 Regards,
 Shawn
 
  select USE_OF
   
  help
  -- 
  1.7.4.1
  
  
  ___
  linux-arm-kernel mailing list
  linux-arm-ker...@lists.infradead.org
  http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
  
 
 
 ___
 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-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 REPOST 5/5] imx6q: Remove unconditional dependency on l2x0 L2 cache support

2011-12-14 Thread Dave Martin
On Wed, Dec 14, 2011 at 10:05:04PM +0800, Richard Zhao wrote:
 On Wed, Dec 14, 2011 at 09:26:24PM +0800, Shawn Guo wrote:
  Hi Dave,
  
  Sorry for that I did not look into previous post to point it out.
  
  On Wed, Dec 14, 2011 at 11:39:41AM +, Dave Martin wrote:
   The i.MX6 Quad SoC will work without the l2x0 L2 cache controller
   support built into the kernel, so this patch removes the dependency
   on CACHE_L2X0 and selects MIGHT_HAVE_CACHE_L2X0 instead.
   
   This makes the l2x0 support optional, so that it can be turned off
   when desired for debugging purposes etc.
   
   Thanks to Shawn Guo for this suggestion. [1]
   
   Signed-off-by: Dave Martin dave.mar...@linaro.org
   
   [1] 
   http://lists.infradead.org/pipermail/linux-arm-kernel/2011-November/074602.html
   ---
arch/arm/mach-imx/Kconfig |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
   
   diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
   index 29a3d61..1fb93f2 100644
   --- a/arch/arm/mach-imx/Kconfig
   +++ b/arch/arm/mach-imx/Kconfig
   @@ -609,13 +609,13 @@ comment i.MX6 family:
config SOC_IMX6Q
 bool i.MX6 Quad support
 select ARM_GIC
   - select CACHE_L2X0
 select CPU_V7
 select HAVE_ARM_SCU
 select HAVE_IMX_GPC
 select HAVE_IMX_MMDC
 select HAVE_IMX_SRC
 select HAVE_SMP
   + select MIGHT_HAVE_CACHE_L2X0
  
  The option SOC_IMX6Q is only available when ARCH_IMX_V6_V7 is selected.
  Since MIGHT_HAVE_CACHE_L2X0 has been selected by ARCH_IMX_V6_V7 in
  patch #1, this line seems redundant here.
 Would it be better keep this one and remove patch #1 one? imx5 doesn't have
 l2x0.

Do you mean to remove MIGHT_HAVE_CACHE_L2X0 from ARCH_IMX_V6_V7, and select
it only from SOC_IMX6Q?

Cheers
---Dave
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH V5] mmc: core: HS200 mode support for eMMC 4.5

2011-12-14 Thread Subhash Jadavani
Just a thought (not sure if it's explicitly specified in 4.5 spec or not):
Do we really need to perform bus test in HS200 mode? because in HS200, we
are anyways going to perform the tuning sequence (which achieves what bus
test command does).

Regards,
Subhash

 -Original Message-
 From: Saugata Das [mailto:saugata@linaro.org]
 Sent: Tuesday, December 13, 2011 11:03 AM
 To: Girish K S
 Cc: Subhash Jadavani; linux-...@vger.kernel.org; patc...@linaro.org;
 linux-samsung-soc@vger.kernel.org; Chris Ball
 Subject: Re: [PATCH V5] mmc: core: HS200 mode support for eMMC 4.5
 
 On 13 December 2011 10:13, Girish K S girish.shivananja...@linaro.org
 wrote:
  On 12 December 2011 12:20, Girish K S
 girish.shivananja...@linaro.org wrote:
  On 5 December 2011 20:29, Saugata Das saugata@linaro.org
 wrote:
  Hi Girish
 
  Please refer to Figure 71 (HS200 device output timing) of the MMC-
 4.5
  spec. It shows that both CMD and DATA[7-0] will have some latency
 till
  valid window. This implies that even the CMD line will need tuning
 for
  reading the response. The specification talks about identifying
  sampling point for data lines by reading tuning blocks. Based on
 host
  controller capability, even the CMD line will get the good sample
  point during the same tuning sequence.
 
  We need to have the tuning done (execute_tuning) soon after
 switching
  to HS200 mode and 200MHz clock.
 
  If i make a change as per subhash suggestionset bus width before
  setting the HS200 mode. then it will affect the entire frame work
 of
  mmc which is developed as per Annexure A6.1 A.6.2 A.6.3 (mentions
 the
  steps for bus initialization). can any of you suggest a way to do
  this.
 
 Note that, we need to make this modification only for HS200 mode. For
 DDR mode, it is required that we keep the current way (i.e. setting
 BUS_WIDTH after HS_TIMING).
 
 
  Any inputs on this
 
 
  Regards
  Saugata
 
 
  On 5 December 2011 16:59, Subhash Jadavani
 subha...@codeaurora.org wrote:
 
 
  -Original Message-
  From: Girish K S [mailto:girish.shivananja...@linaro.org]
  Sent: Monday, December 05, 2011 12:20 PM
  To: Subhash Jadavani
  Cc: linux-...@vger.kernel.org; patc...@linaro.org; linux-samsung-
  s...@vger.kernel.org; Chris Ball
  Subject: Re: [PATCH V5] mmc: core: HS200 mode support for eMMC
 4.5
 
  On 5 December 2011 11:46, Subhash Jadavani
 subha...@codeaurora.org
  wrote:
  
  
   -Original Message-
   From: Girish K S [mailto:girish.shivananja...@linaro.org]
   Sent: Friday, December 02, 2011 5:08 PM
   To: Subhash Jadavani
   Cc: linux-...@vger.kernel.org; patc...@linaro.org; linux-
 samsung-
   s...@vger.kernel.org; Chris Ball
   Subject: Re: [PATCH V5] mmc: core: HS200 mode support for eMMC
 4.5
  
   On 2 December 2011 00:02, Subhash Jadavani
 subha...@codeaurora.org
   wrote:
   
   
-Original Message-
From: linux-mmc-ow...@vger.kernel.org [mailto:linux-mmc-
ow...@vger.kernel.org] On Behalf Of Girish K S
Sent: Thursday, December 01, 2011 7:48 PM
To: Subhash Jadavani
Cc: linux-...@vger.kernel.org; patc...@linaro.org; linux-
 samsung-
s...@vger.kernel.org; Chris Ball
Subject: Re: [PATCH V5] mmc: core: HS200 mode support for
 eMMC
  4.5
   
On 1 December 2011 16:27, Subhash Jadavani
  subha...@codeaurora.org
wrote:


 -Original Message-
 From: linux-mmc-ow...@vger.kernel.org [mailto:linux-mmc-
 ow...@vger.kernel.org] On Behalf Of Girish K S
 Sent: Thursday, December 01, 2011 3:58 PM
 To: Subhash Jadavani
 Cc: linux-...@vger.kernel.org; patc...@linaro.org;
 linux-
  samsung-
 s...@vger.kernel.org; Chris Ball
 Subject: Re: [PATCH V5] mmc: core: HS200 mode support
 for eMMC
   4.5

 On 1 December 2011 15:33, Subhash Jadavani
   subha...@codeaurora.org
 wrote:
  Hi Girish,
 
  -Original Message-
  From: linux-mmc-ow...@vger.kernel.org [mailto:linux-
 mmc-
  ow...@vger.kernel.org] On Behalf Of Girish K S
  Sent: Wednesday, November 30, 2011 2:24 PM
  To: linux-...@vger.kernel.org
  Cc: patc...@linaro.org; linux-samsung-
 s...@vger.kernel.org;
  subha...@codeaurora.org; Girish K S; Chris Ball
  Subject: [PATCH V5] mmc: core: HS200 mode support for
 eMMC
  4.5
 
  This patch adds the support of the HS200 bus speed
 for eMMC
   4.5
  devices.
  The eMMC 4.5 devices have support for 200MHz bus
 speed.The
  mmc
core
 and
  host modules have been touched to add support for
 this
  module.
 
  It is necessary to know the card type in the sdhci.c
 file
  to
   add
  support
  for eMMC tuning function. So card.h file is included
 to
  import
the
 card
  data structure.
 
  cc: Chris Ball c...@laptop.org
  Signed-off-by: Girish K S
 girish.shivananja...@linaro.org
  ---
  Changes in v5:
        Reduced the case statements for better code
  readability.
 Removed
        

Re: [PATCH v4 REPOST 3/5] omap4: Unconditionally require l2x0 L2 cache controller support

2011-12-14 Thread Tony Lindgren
* Dave Martin dave.mar...@linaro.org [111214 03:08]:
 If running in the Normal World on a TrustZone-enabled SoC, Linux
 does not have complete control over the L2 cache controller
 configuration.  The kernel cannot work reliably on such platforms
 without the l2x0 cache support code built in.

There are HS and GP omaps (High Security and General Purpose).
GP omaps do have full control of the L2. Also HS omaps most likely
provide control over enabling and disabling L2 depending how the
secure code is implemented.

BTW, the real problem is that because the secure code is implemented
in various ways, we don't really have any handling for it in Linux.

The SMI instruction numbers don't seem to be standardized at all,
and can mean different things on different boards, even different
board versions :(

Sounds like devicetree is the only safe way to deal with the L2
control options.

Regards,

Tony

 
 This patch unconditionally enables l2x0 support for the OMAP4 SoCs.
 
 Thanks to Rob Herring for this suggestion. [1]
 
 Signed-off-by: Dave Martin dave.mar...@linaro.org
 
 [1] 
 http://lists.infradead.org/pipermail/linux-arm-kernel/2011-November/074495.html
 ---
  arch/arm/mach-omap2/Kconfig |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
 index bb1b670..94e568a 100644
 --- a/arch/arm/mach-omap2/Kconfig
 +++ b/arch/arm/mach-omap2/Kconfig
 @@ -41,11 +41,11 @@ config ARCH_OMAP4
   bool TI OMAP4
   default y
   depends on ARCH_OMAP2PLUS
 + select CACHE_L2X0
   select CPU_V7
   select ARM_GIC
   select HAVE_SMP
   select LOCAL_TIMERS if SMP
 - select MIGHT_HAVE_CACHE_L2X0
   select PL310_ERRATA_588369
   select PL310_ERRATA_727915
   select ARM_ERRATA_720789
 -- 
 1.7.4.1
 
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 REPOST 3/5] omap4: Unconditionally require l2x0 L2 cache controller support

2011-12-14 Thread Dave Martin
On Wed, Dec 14, 2011 at 10:14:25AM -0800, Tony Lindgren wrote:
 * Dave Martin dave.mar...@linaro.org [111214 03:08]:
  If running in the Normal World on a TrustZone-enabled SoC, Linux
  does not have complete control over the L2 cache controller
  configuration.  The kernel cannot work reliably on such platforms
  without the l2x0 cache support code built in.
 
 There are HS and GP omaps (High Security and General Purpose).
 GP omaps do have full control of the L2. Also HS omaps most likely
 provide control over enabling and disabling L2 depending how the
 secure code is implemented.
 
 BTW, the real problem is that because the secure code is implemented
 in various ways, we don't really have any handling for it in Linux.
 
 The SMI instruction numbers don't seem to be standardized at all,
 and can mean different things on different boards, even different
 board versions :(
 
 Sounds like devicetree is the only safe way to deal with the L2
 control options.
 
 Regards,
 
 Tony
 
  
  This patch unconditionally enables l2x0 support for the OMAP4 SoCs.
  
  Thanks to Rob Herring for this suggestion. [1]
  
  Signed-off-by: Dave Martin dave.mar...@linaro.org
  
  [1] 
  http://lists.infradead.org/pipermail/linux-arm-kernel/2011-November/074495.html
  ---
   arch/arm/mach-omap2/Kconfig |2 +-
   1 files changed, 1 insertions(+), 1 deletions(-)
  
  diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
  index bb1b670..94e568a 100644
  --- a/arch/arm/mach-omap2/Kconfig
  +++ b/arch/arm/mach-omap2/Kconfig
  @@ -41,11 +41,11 @@ config ARCH_OMAP4
  bool TI OMAP4
  default y
  depends on ARCH_OMAP2PLUS
  +   select CACHE_L2X0
  select CPU_V7
  select ARM_GIC
  select HAVE_SMP
  select LOCAL_TIMERS if SMP
  -   select MIGHT_HAVE_CACHE_L2X0
  select PL310_ERRATA_588369
  select PL310_ERRATA_727915
  select ARM_ERRATA_720789
  -- 
  1.7.4.1
  

To clarify, are you suggesting we retain this patch, or not?

(If we only know what l2x0 support will be needed once the dts is
parsed at runtime, there could be an argument for keeping the
select CACHE_L2X0 here -- unless we have specific kconfigs for
the different security variants of omap.)

Cheers
---Dave

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 REPOST 3/5] omap4: Unconditionally require l2x0 L2 cache controller support

2011-12-14 Thread Tony Lindgren
* Dave Martin dave.mar...@linaro.org [111214 09:58]:
 On Wed, Dec 14, 2011 at 10:14:25AM -0800, Tony Lindgren wrote:
  * Dave Martin dave.mar...@linaro.org [111214 03:08]:
   If running in the Normal World on a TrustZone-enabled SoC, Linux
   does not have complete control over the L2 cache controller
   configuration.  The kernel cannot work reliably on such platforms
   without the l2x0 cache support code built in.
  
  There are HS and GP omaps (High Security and General Purpose).
  GP omaps do have full control of the L2. Also HS omaps most likely
  provide control over enabling and disabling L2 depending how the
  secure code is implemented.
  
  BTW, the real problem is that because the secure code is implemented
  in various ways, we don't really have any handling for it in Linux.
  
  The SMI instruction numbers don't seem to be standardized at all,
  and can mean different things on different boards, even different
  board versions :(
  
  Sounds like devicetree is the only safe way to deal with the L2
  control options.
  
  Regards,
  
  Tony
  
   
   This patch unconditionally enables l2x0 support for the OMAP4 SoCs.
   
   Thanks to Rob Herring for this suggestion. [1]
   
   Signed-off-by: Dave Martin dave.mar...@linaro.org
   
   [1] 
   http://lists.infradead.org/pipermail/linux-arm-kernel/2011-November/074495.html
   ---
arch/arm/mach-omap2/Kconfig |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
   
   diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
   index bb1b670..94e568a 100644
   --- a/arch/arm/mach-omap2/Kconfig
   +++ b/arch/arm/mach-omap2/Kconfig
   @@ -41,11 +41,11 @@ config ARCH_OMAP4
 bool TI OMAP4
 default y
 depends on ARCH_OMAP2PLUS
   + select CACHE_L2X0
 select CPU_V7
 select ARM_GIC
 select HAVE_SMP
 select LOCAL_TIMERS if SMP
   - select MIGHT_HAVE_CACHE_L2X0
 select PL310_ERRATA_588369
 select PL310_ERRATA_727915
 select ARM_ERRATA_720789
   -- 
   1.7.4.1
   
 
 To clarify, are you suggesting we retain this patch, or not?

I think we should keep L2 configurable for omaps until we have some
way of getting the configuration dynamically or from device tree.
 
 (If we only know what l2x0 support will be needed once the dts is
 parsed at runtime, there could be an argument for keeping the
 select CACHE_L2X0 here -- unless we have specific kconfigs for
 the different security variants of omap.)

Well we can detect if it's an HS omap, but we may not know what
SMI it uses for enabling and disabling L2.. That can depend on
the board version.

Is there some problem keeping MIGHT_HAVE_CACHE_L2X0? This is
pretty important from debugging cache issues point of view.

Regards,

Tony
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] make s5p64x0_defconfig build error

2011-12-14 Thread Nicolas Pitre
On Wed, 14 Dec 2011, Russell King - ARM Linux wrote:

 On Wed, Dec 14, 2011 at 12:32:44PM +, Will Deacon wrote:
  On Wed, Dec 14, 2011 at 04:57:10AM +, Axel Lin wrote:
   I got below build error on linux-next 20111213.
   
 CC  arch/arm/kernel/process.o
   In file included from arch/arm/mach-s5p64x0/include/mach/system.h:16,
from arch/arm/kernel/process.c:64:
   arch/arm/plat-samsung/include/plat/system-reset.h:19:2: error: #error Fix 
   me up
   make[1]: *** [arch/arm/kernel/process.o] Error 1
   make: *** [arch/arm/kernel] Error 2
  
  The clue is in the commit message:
  
  commit d0f7e2beabe6a116152ccc31959b6654b6ef0071
  Author: Russell King rmk+ker...@arm.linux.org.uk
  Date:   Tue Dec 6 12:57:02 2011 +
  
  ARM: restart: Temporary #error to persuade platform maintainers to take 
  the restart changes seriously
  
  Force builds to fail to ensure that platform maintainers take the
  restart changes seriously, and sort out fixing their code before the
  next merge window.
  
  Signed-off-by: Russell King rmk+ker...@arm.linux.org.uk
 
 Indeed, and note the date, and how long its taken for just one of the
 platforms to be noticed.
 
 It seems to me that no one really cares about whether six of the seven
 platforms which have the #error build or don't build, so I really think
 there's a simple solution to this at the next merge window - delete any
 platform which hasn't _at_ _least_ responded with a proposed patch to
 this.
 
 The platform maintainers have had _enough_ notice of this - by not
 responding, they're quite simply an obstacle to further consolidation,
 and we're not going to go through months of waiting for their response
 time and time again.
 
 I've posted the patches to the mailing list, I've copied them asking
 for help, I've chased them several times, and now they have a #error
 to deal with.  If none of this gets their attention (it seems it
 doesn't), then frankly their platform is unmaintained, it will be
 broken at the next merge window, and therefore _should_ be deleted.
 
 So... unless things change, we can expect Gemini, almost all Samsung
 stuff, shmobile, vt8500, and Telechips TCC8k to be at least broken at
 the next merge window.

Let me add to this by pointing to this piece of code in
arch/arm/include/asm/pgtable.h:

|/* This is a temporary hack until shmobile's DMA area size is sorted out */
|#ifdef CONFIG_ARCH_SHMOBILE
|#warning SH-Mobile's consistent DMA size conflicts with VMALLOC_END by 144MB
|#undef VMALLOC_END
|#define VMALLOC_END 0xF600UL
|#endif

Again, the reason for this is in the commit message.  My hope was that, 
by the central nature of this header file, the build would be 
sufficiently overwhelmed with #warning noise that the maintainers would 
manifest themselves and come forth with the needed fix.

After repeated inquiries to the listed maintainers in the MAINTAINERS 
file, I still didn't receive any feedback at this point, and I still 
can't find a reason for the current state of things either by looking at 
the concerned code or the related Git commit logs.

So if no one cares about this platform then I propose to delete it for 
v3.3 as well.


Nicolas
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 REPOST 3/5] omap4: Unconditionally require l2x0 L2 cache controller support

2011-12-14 Thread Rob Herring

On 12/14/2011 12:39 PM, Tony Lindgren wrote:
 * Dave Martin dave.mar...@linaro.org [111214 09:58]:
 On Wed, Dec 14, 2011 at 10:14:25AM -0800, Tony Lindgren wrote:
 * Dave Martin dave.mar...@linaro.org [111214 03:08]:
 If running in the Normal World on a TrustZone-enabled SoC, Linux
 does not have complete control over the L2 cache controller
 configuration.  The kernel cannot work reliably on such platforms
 without the l2x0 cache support code built in.

 There are HS and GP omaps (High Security and General Purpose).
 GP omaps do have full control of the L2. Also HS omaps most likely
 provide control over enabling and disabling L2 depending how the
 secure code is implemented.

 BTW, the real problem is that because the secure code is implemented
 in various ways, we don't really have any handling for it in Linux.

 The SMI instruction numbers don't seem to be standardized at all,
 and can mean different things on different boards, even different
 board versions :(

 Sounds like devicetree is the only safe way to deal with the L2
 control options.

 Regards,

 Tony

  
 This patch unconditionally enables l2x0 support for the OMAP4 SoCs.

 Thanks to Rob Herring for this suggestion. [1]

 Signed-off-by: Dave Martin dave.mar...@linaro.org

 [1] 
 http://lists.infradead.org/pipermail/linux-arm-kernel/2011-November/074495.html
 ---
  arch/arm/mach-omap2/Kconfig |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

 diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
 index bb1b670..94e568a 100644
 --- a/arch/arm/mach-omap2/Kconfig
 +++ b/arch/arm/mach-omap2/Kconfig
 @@ -41,11 +41,11 @@ config ARCH_OMAP4
bool TI OMAP4
default y
depends on ARCH_OMAP2PLUS
 +  select CACHE_L2X0
select CPU_V7
select ARM_GIC
select HAVE_SMP
select LOCAL_TIMERS if SMP
 -  select MIGHT_HAVE_CACHE_L2X0
select PL310_ERRATA_588369
select PL310_ERRATA_727915
select ARM_ERRATA_720789
 -- 
 1.7.4.1


 To clarify, are you suggesting we retain this patch, or not?
 
 I think we should keep L2 configurable for omaps until we have some
 way of getting the configuration dynamically or from device tree.
  

This already exists with l2x0_of_init. OMAP just needs to start using
it. It will initialize the l2 if present in the DT and skip it if not
present.

Rob

 (If we only know what l2x0 support will be needed once the dts is
 parsed at runtime, there could be an argument for keeping the
 select CACHE_L2X0 here -- unless we have specific kconfigs for
 the different security variants of omap.)
 
 Well we can detect if it's an HS omap, but we may not know what
 SMI it uses for enabling and disabling L2.. That can depend on
 the board version.
 
 Is there some problem keeping MIGHT_HAVE_CACHE_L2X0? This is
 pretty important from debugging cache issues point of view.
 
 Regards,
 
 Tony
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 REPOST 3/5] omap4: Unconditionally require l2x0 L2 cache controller support

2011-12-14 Thread Tony Lindgren
* Rob Herring robherri...@gmail.com [111214 12:30]:
 
 On 12/14/2011 12:39 PM, Tony Lindgren wrote:
  
  I think we should keep L2 configurable for omaps until we have some
  way of getting the configuration dynamically or from device tree.
   
 
 This already exists with l2x0_of_init. OMAP just needs to start using
 it. It will initialize the l2 if present in the DT and skip it if not
 present.

That's great, that will allow doing the right thing with setting
up how to enable and disable it :) Considering that, this patch
should be OK to apply:

Acked-by: Tony Lindgren t...@atomide.com

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] make s5p64x0_defconfig build error

2011-12-14 Thread Russell King - ARM Linux
On Thu, Dec 15, 2011 at 01:30:13AM +0200, Denis Kuzmenko wrote:
 On 12/14/2011 09:12 PM, Russell King - ARM Linux wrote:
  On Wed, Dec 14, 2011 at 12:32:44PM +, Will Deacon wrote:
  On Wed, Dec 14, 2011 at 04:57:10AM +, Axel Lin wrote:
  So... unless things change, we can expect Gemini, almost all Samsung
  stuff, shmobile, vt8500, and Telechips TCC8k to be at least broken at
  the next merge window.
 
 Mini2440 march (s3c24xx platform) is not broken in v3.2-rc5. Does that
 mean that s3c24xx is untouched by this issue or this means that I should
 use linux-next?

Most of the completed changes are in linux-next for the restart changes.
I have some additional commits (which were posted to the list as the 3rd
sub-series), which I'm not planning to submit in their current form -
they move things _towards_ sorting out the samsung stuff, but they're
all incomplete.  These continue to be a part of my 'reset' branch.

Basically, the comments in the commit summary line marked with XXX need
addressing - and folk need to get out of the habbit of thinking it's
an include file, it must go into somewhere called 'include'.  Instead,
put includes local to a set of files in a directory in that same
directory.

Author: Russell King rmk+ker...@arm.linux.org.uk
Date:   Sun Nov 6 16:22:23 2011 +

ARM: restart: plat-samsung: remove plat/reset.h and s5p_reset_hook

Now that s5p_reset_hook is unused, we can get rid of plat/reset.h and
the s5p_reset_hook code in plat/system-reset.h.

Signed-off-by: Russell King rmk+ker...@arm.linux.org.uk

Author: Russell King rmk+ker...@arm.linux.org.uk
Date:   Sun Nov 6 16:20:11 2011 +

ARM: restart: s5pv210: use new restart hook XXX WIP XXX WHY IS THERE NO 
LOCAL HEADERS IN arch/arm/mach-exynos4 XXX

Hook these platforms restart code into the new restart hook rather
than using arch_reset().

Signed-off-by: Russell King rmk+ker...@arm.linux.org.uk

Author: Russell King rmk+ker...@arm.linux.org.uk
Date:   Sun Nov 6 13:24:20 2011 +

ARM: restart: exynos4: use new restart hook XXX WIP XXX WHY IS THERE NO 
LOCAL HEADERS IN arch/arm/mach-exynos4 XXX

Hook these platforms restart code into the new restart hook rather
than using arch_reset().

Signed-off-by: Russell King rmk+ker...@arm.linux.org.uk

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] make s5p64x0_defconfig build error

2011-12-14 Thread Axel Lin
Hi Kukjin,

 Axel and Will, thanks for pointing out.

 Oops, I couldn't have much time to follow up :(
 But let me look at that in this weekend and I know, it can be escaped before
 merge window :)

I also found the same build errors by:
make s5pc100_defconfig
make s5pv210_defconfig
make exynos4_defconfig

Regards,
Axel
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 REPOST 5/5] imx6q: Remove unconditional dependency on l2x0 L2 cache support

2011-12-14 Thread Richard Zhao
On Wed, Dec 14, 2011 at 03:01:19PM +, Dave Martin wrote:
 On Wed, Dec 14, 2011 at 10:05:04PM +0800, Richard Zhao wrote:
  On Wed, Dec 14, 2011 at 09:26:24PM +0800, Shawn Guo wrote:
   Hi Dave,
   
   Sorry for that I did not look into previous post to point it out.
   
   On Wed, Dec 14, 2011 at 11:39:41AM +, Dave Martin wrote:
The i.MX6 Quad SoC will work without the l2x0 L2 cache controller
support built into the kernel, so this patch removes the dependency
on CACHE_L2X0 and selects MIGHT_HAVE_CACHE_L2X0 instead.

This makes the l2x0 support optional, so that it can be turned off
when desired for debugging purposes etc.

Thanks to Shawn Guo for this suggestion. [1]

Signed-off-by: Dave Martin dave.mar...@linaro.org

[1] 
http://lists.infradead.org/pipermail/linux-arm-kernel/2011-November/074602.html
---
 arch/arm/mach-imx/Kconfig |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index 29a3d61..1fb93f2 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -609,13 +609,13 @@ comment i.MX6 family:
 config SOC_IMX6Q
bool i.MX6 Quad support
select ARM_GIC
-   select CACHE_L2X0
select CPU_V7
select HAVE_ARM_SCU
select HAVE_IMX_GPC
select HAVE_IMX_MMDC
select HAVE_IMX_SRC
select HAVE_SMP
+   select MIGHT_HAVE_CACHE_L2X0
   
   The option SOC_IMX6Q is only available when ARCH_IMX_V6_V7 is selected.
   Since MIGHT_HAVE_CACHE_L2X0 has been selected by ARCH_IMX_V6_V7 in
   patch #1, this line seems redundant here.
  Would it be better keep this one and remove patch #1 one? imx5 doesn't have
  l2x0.
 
 Do you mean to remove MIGHT_HAVE_CACHE_L2X0 from ARCH_IMX_V6_V7, and select
 it only from SOC_IMX6Q?
Yes, I think it's more precise. Shawn?

Thansk
Richard
 
 Cheers
 ---Dave
 
 ___
 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-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 REPOST 5/5] imx6q: Remove unconditional dependency on l2x0 L2 cache support

2011-12-14 Thread Shawn Guo
On Thu, Dec 15, 2011 at 09:02:20AM +0800, Richard Zhao wrote:
 On Wed, Dec 14, 2011 at 03:01:19PM +, Dave Martin wrote:
  On Wed, Dec 14, 2011 at 10:05:04PM +0800, Richard Zhao wrote:
   On Wed, Dec 14, 2011 at 09:26:24PM +0800, Shawn Guo wrote:
Hi Dave,

Sorry for that I did not look into previous post to point it out.

On Wed, Dec 14, 2011 at 11:39:41AM +, Dave Martin wrote:
 The i.MX6 Quad SoC will work without the l2x0 L2 cache controller
 support built into the kernel, so this patch removes the dependency
 on CACHE_L2X0 and selects MIGHT_HAVE_CACHE_L2X0 instead.
 
 This makes the l2x0 support optional, so that it can be turned off
 when desired for debugging purposes etc.
 
 Thanks to Shawn Guo for this suggestion. [1]
 
 Signed-off-by: Dave Martin dave.mar...@linaro.org
 
 [1] 
 http://lists.infradead.org/pipermail/linux-arm-kernel/2011-November/074602.html
 ---
  arch/arm/mach-imx/Kconfig |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
 index 29a3d61..1fb93f2 100644
 --- a/arch/arm/mach-imx/Kconfig
 +++ b/arch/arm/mach-imx/Kconfig
 @@ -609,13 +609,13 @@ comment i.MX6 family:
  config SOC_IMX6Q
   bool i.MX6 Quad support
   select ARM_GIC
 - select CACHE_L2X0
   select CPU_V7
   select HAVE_ARM_SCU
   select HAVE_IMX_GPC
   select HAVE_IMX_MMDC
   select HAVE_IMX_SRC
   select HAVE_SMP
 + select MIGHT_HAVE_CACHE_L2X0

The option SOC_IMX6Q is only available when ARCH_IMX_V6_V7 is selected.
Since MIGHT_HAVE_CACHE_L2X0 has been selected by ARCH_IMX_V6_V7 in
patch #1, this line seems redundant here.
   Would it be better keep this one and remove patch #1 one? imx5 doesn't 
   have
   l2x0.
  
  Do you mean to remove MIGHT_HAVE_CACHE_L2X0 from ARCH_IMX_V6_V7, and select
  it only from SOC_IMX6Q?
 Yes, I think it's more precise. Shawn?
 
No.

* imx5 hardware does have L2, and it's just not set up in the kernel
  (I do not know why).
* Currently, ARCH_IMX_V6_V7 only covers imx3 and imx6, and both are
  calling l2x0 init function to set L2 up.
* When we merge mach-mx5 into mach-imx to have ARCH_IMX_V6_V7 cover
  imx3, imx5 and imx6, there is no reason for us to not set L2 up for
  imx5 too.

So MIGHT_HAVE_CACHE_L2X0 really should be selected by ARCH_IMX_V6_V7.

-- 
Regards,
Shawn

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH V5] mmc: core: HS200 mode support for eMMC 4.5

2011-12-14 Thread Girish K S
On 14 December 2011 20:50, Subhash Jadavani subha...@codeaurora.org wrote:
 Just a thought (not sure if it's explicitly specified in 4.5 spec or not):
 Do we really need to perform bus test in HS200 mode? because in HS200, we
 are anyways going to perform the tuning sequence (which achieves what bus
 test command does).

you are right. i have removed it in the modified version. It does only
tuning and power class selection

 Regards,
 Subhash

 -Original Message-
 From: Saugata Das [mailto:saugata@linaro.org]
 Sent: Tuesday, December 13, 2011 11:03 AM
 To: Girish K S
 Cc: Subhash Jadavani; linux-...@vger.kernel.org; patc...@linaro.org;
 linux-samsung-soc@vger.kernel.org; Chris Ball
 Subject: Re: [PATCH V5] mmc: core: HS200 mode support for eMMC 4.5

 On 13 December 2011 10:13, Girish K S girish.shivananja...@linaro.org
 wrote:
  On 12 December 2011 12:20, Girish K S
 girish.shivananja...@linaro.org wrote:
  On 5 December 2011 20:29, Saugata Das saugata@linaro.org
 wrote:
  Hi Girish
 
  Please refer to Figure 71 (HS200 device output timing) of the MMC-
 4.5
  spec. It shows that both CMD and DATA[7-0] will have some latency
 till
  valid window. This implies that even the CMD line will need tuning
 for
  reading the response. The specification talks about identifying
  sampling point for data lines by reading tuning blocks. Based on
 host
  controller capability, even the CMD line will get the good sample
  point during the same tuning sequence.
 
  We need to have the tuning done (execute_tuning) soon after
 switching
  to HS200 mode and 200MHz clock.
 
  If i make a change as per subhash suggestionset bus width before
  setting the HS200 mode. then it will affect the entire frame work
 of
  mmc which is developed as per Annexure A6.1 A.6.2 A.6.3 (mentions
 the
  steps for bus initialization). can any of you suggest a way to do
  this.

 Note that, we need to make this modification only for HS200 mode. For
 DDR mode, it is required that we keep the current way (i.e. setting
 BUS_WIDTH after HS_TIMING).

 
  Any inputs on this
 
 
  Regards
  Saugata
 
 
  On 5 December 2011 16:59, Subhash Jadavani
 subha...@codeaurora.org wrote:
 
 
  -Original Message-
  From: Girish K S [mailto:girish.shivananja...@linaro.org]
  Sent: Monday, December 05, 2011 12:20 PM
  To: Subhash Jadavani
  Cc: linux-...@vger.kernel.org; patc...@linaro.org; linux-samsung-
  s...@vger.kernel.org; Chris Ball
  Subject: Re: [PATCH V5] mmc: core: HS200 mode support for eMMC
 4.5
 
  On 5 December 2011 11:46, Subhash Jadavani
 subha...@codeaurora.org
  wrote:
  
  
   -Original Message-
   From: Girish K S [mailto:girish.shivananja...@linaro.org]
   Sent: Friday, December 02, 2011 5:08 PM
   To: Subhash Jadavani
   Cc: linux-...@vger.kernel.org; patc...@linaro.org; linux-
 samsung-
   s...@vger.kernel.org; Chris Ball
   Subject: Re: [PATCH V5] mmc: core: HS200 mode support for eMMC
 4.5
  
   On 2 December 2011 00:02, Subhash Jadavani
 subha...@codeaurora.org
   wrote:
   
   
-Original Message-
From: linux-mmc-ow...@vger.kernel.org [mailto:linux-mmc-
ow...@vger.kernel.org] On Behalf Of Girish K S
Sent: Thursday, December 01, 2011 7:48 PM
To: Subhash Jadavani
Cc: linux-...@vger.kernel.org; patc...@linaro.org; linux-
 samsung-
s...@vger.kernel.org; Chris Ball
Subject: Re: [PATCH V5] mmc: core: HS200 mode support for
 eMMC
  4.5
   
On 1 December 2011 16:27, Subhash Jadavani
  subha...@codeaurora.org
wrote:


 -Original Message-
 From: linux-mmc-ow...@vger.kernel.org [mailto:linux-mmc-
 ow...@vger.kernel.org] On Behalf Of Girish K S
 Sent: Thursday, December 01, 2011 3:58 PM
 To: Subhash Jadavani
 Cc: linux-...@vger.kernel.org; patc...@linaro.org;
 linux-
  samsung-
 s...@vger.kernel.org; Chris Ball
 Subject: Re: [PATCH V5] mmc: core: HS200 mode support
 for eMMC
   4.5

 On 1 December 2011 15:33, Subhash Jadavani
   subha...@codeaurora.org
 wrote:
  Hi Girish,
 
  -Original Message-
  From: linux-mmc-ow...@vger.kernel.org [mailto:linux-
 mmc-
  ow...@vger.kernel.org] On Behalf Of Girish K S
  Sent: Wednesday, November 30, 2011 2:24 PM
  To: linux-...@vger.kernel.org
  Cc: patc...@linaro.org; linux-samsung-
 s...@vger.kernel.org;
  subha...@codeaurora.org; Girish K S; Chris Ball
  Subject: [PATCH V5] mmc: core: HS200 mode support for
 eMMC
  4.5
 
  This patch adds the support of the HS200 bus speed
 for eMMC
   4.5
  devices.
  The eMMC 4.5 devices have support for 200MHz bus
 speed.The
  mmc
core
 and
  host modules have been touched to add support for
 this
  module.
 
  It is necessary to know the card type in the sdhci.c
 file
  to
   add
  support
  for eMMC tuning function. So card.h file is included
 to
  import
the
 card
  data structure.
 
  cc: Chris Ball c...@laptop.org
  

[PATCH V2] mmc: core: Add host capability check for power class

2011-12-14 Thread Girish K S
This patch adds a check whether the host supports maximum current value
obtained from the device's extended csd register for a selected interface
voltage and frequency.

cc: Chris Ball c...@laptop.org
Signed-off-by: Girish K S girish.shivananja...@linaro.org
---
Changes in v2:
deleted a unnecessary if else condition identified by subhash J
Changes in v1:
   reduced the number of comparisons as per Hein's suggestion

 drivers/mmc/core/mmc.c   |   19 +++
 include/linux/mmc/card.h |4 
 2 files changed, 23 insertions(+), 0 deletions(-)

diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
index 006e932..b9ef777 100644
--- a/drivers/mmc/core/mmc.c
+++ b/drivers/mmc/core/mmc.c
@@ -688,6 +688,25 @@ static int mmc_select_powerclass(struct mmc_card *card,
pwrclass_val = (pwrclass_val  EXT_CSD_PWR_CL_4BIT_MASK) 
EXT_CSD_PWR_CL_4BIT_SHIFT;
 
+   if (pwrclass_val = MMC_MAX_CURRENT_800)
+   pwrclass_val = MMC_MAX_CURRENT_800;
+   else if (pwrclass_val = MMC_MAX_CURRENT_600)
+   pwrclass_val = MMC_MAX_CURRENT_600;
+   else if (pwrclass_val = MMC_MAX_CURRENT_400)
+   pwrclass_val = MMC_MAX_CURRENT_400;
+   else
+   pwrclass_val = MMC_MAX_CURRENT_200;
+
+   if ((pwrclass_val == MMC_MAX_CURRENT_800) 
+   !(card-host-caps  MMC_CAP_MAX_CURRENT_800))
+   pwrclass_val = MMC_MAX_CURRENT_600;
+   if ((pwrclass_val == MMC_MAX_CURRENT_600) 
+   !(card-host-caps  MMC_CAP_MAX_CURRENT_600))
+   pwrclass_val = MMC_MAX_CURRENT_400;
+   if ((pwrclass_val == MMC_MAX_CURRENT_400) 
+   !(card-host-caps  MMC_CAP_MAX_CURRENT_400))
+   pwrclass_val = MMC_MAX_CURRENT_200;
+
/* If the power class is different from the default value */
if (pwrclass_val  0) {
err = mmc_switch(card, EXT_CSD_CMD_SET_NORMAL,
diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h
index 9478a6b..c5e031a 100644
--- a/include/linux/mmc/card.h
+++ b/include/linux/mmc/card.h
@@ -195,6 +195,10 @@ struct mmc_part {
 #define MMC_BLK_DATA_AREA_GP   (12)
 };
 
+#define MMC_MAX_CURRENT_200(0)
+#define MMC_MAX_CURRENT_400(7)
+#define MMC_MAX_CURRENT_600(11)
+#define MMC_MAX_CURRENT_800(13)
 /*
  * MMC device
  */
-- 
1.7.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] make s5p64x0_defconfig build error

2011-12-14 Thread Mark Brown
On Wed, Dec 14, 2011 at 07:12:05PM +, Russell King - ARM Linux wrote:
 On Wed, Dec 14, 2011 at 12:32:44PM +, Will Deacon wrote:

  ARM: restart: Temporary #error to persuade platform maintainers to take 
  the restart changes seriously

  Force builds to fail to ensure that platform maintainers take the
  restart changes seriously, and sort out fixing their code before the
  next merge window.

 Indeed, and note the date, and how long its taken for just one of the
 platforms to be noticed.

I noticed s3c64xx the day you added that change but just deleted the
code so I could carry on working after my initial attempts to figure out
what this was about took too long.

 It seems to me that no one really cares about whether six of the seven
 platforms which have the #error build or don't build, so I really think
 there's a simple solution to this at the next merge window - delete any
 platform which hasn't _at_ _least_ responded with a proposed patch to
 this.

Do you have any references to this stuff?  I did make some effort to
understand what needed to be done but the patch doesn't mention which
restart changes are needed and my grovelling around in git wasn't
turning up enough context to tell me what was supposed to be happening
instead.  Frankly I've no need for that code in my systems so if it's a
problem I'd just throw the restart code away if it was that or breakage.
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] ARM: EXYNOS: Configure ARM_NR_BANKS for EXYNOS4

2011-12-14 Thread Boojin Kim
This patch increases the number of bank for EXYNOS4 to support bigger than
2GB memory on it.

Signed-off-by: Boojin Kim boojin@samsung.com
---
 arch/arm/Kconfig |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 928cbcc..5c90dee 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1127,7 +1127,7 @@ source arch/arm/mm/Kconfig
 
 config ARM_NR_BANKS
int
-   default 16 if ARCH_EP93XX
+   default 16 if ARCH_EP93XX || ARCH_EXYNOS4
default 8
 
 config IWMMXT
-- 
1.7.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] DMA: PL330: Support MEMTOMEM transmit without barrier operation.

2011-12-14 Thread Boojin Kim
PL330 r1p0 version fixed the lockup error being on r0p0.
This patch supports the DMA transmit without barrier operation
if the revision is the next of r0p0.

Signed-off-by: Boojin Kim boojin@samsung.com
---
 arch/arm/include/asm/hardware/pl330.h |5 +
 drivers/dma/pl330.c   |   26 +-
 2 files changed, 26 insertions(+), 5 deletions(-)

diff --git a/arch/arm/include/asm/hardware/pl330.h 
b/arch/arm/include/asm/hardware/pl330.h
index ed38e32..1f4d7cb 100644
--- a/arch/arm/include/asm/hardware/pl330.h
+++ b/arch/arm/include/asm/hardware/pl330.h
@@ -144,6 +144,11 @@ enum pl330_reqtype {
 #define CRD0xe14
 
 #define PERIPH_ID  0xfe0
+#define PERIPH_REV_SHIFT   20
+#define PERIPH_REV_MASK0xf
+#define PERIPH_REV_R0P00
+#define PERIPH_REV_R1P01
+#define PERIPH_REV_R1P12
 #define PCELL_ID   0xff0
 
 #define CR0_PERIPH_REQ_SET (1  0)
diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
index 3214ced..d87d884 100644
--- a/drivers/dma/pl330.c
+++ b/drivers/dma/pl330.c
@@ -129,6 +129,7 @@ struct pl330_reqcfg {
enum pl330_dstcachectrl dcctl;
enum pl330_srccachectrl scctl;
enum pl330_byteswap swap;
+   struct pl330_config *pcfg;
 };
 
 /*
@@ -438,6 +439,11 @@ static inline u32 get_id(struct pl330_info *pi, u32 off)
return id;
 }
 
+static inline u32 get_revision(u32 periph_id)
+{
+   return (periph_idPERIPH_REV_SHIFT)PERIPH_REV_MASK;
+}
+
 static inline u32 _emit_ADDH(unsigned dry_run, u8 buf[],
enum pl330_dst da, u16 val)
 {
@@ -1026,12 +1032,21 @@ static inline int _ldst_memtomem(unsigned dry_run, u8 
buf[],
const struct _xfer_spec *pxs, int cyc)
 {
int off = 0;
+   struct pl330_config *pcfg = pxs-r-cfg-pcfg;
 
-   while (cyc--) {
-   off += _emit_LD(dry_run, buf[off], ALWAYS);
-   off += _emit_RMB(dry_run, buf[off]);
-   off += _emit_ST(dry_run, buf[off], ALWAYS);
-   off += _emit_WMB(dry_run, buf[off]);
+   /* check lock-up free version */
+   if (get_revision(pcfg-periph_id)  = PERIPH_REV_R1P0) {
+   while (cyc--) {
+   off += _emit_LD(dry_run, buf[off], ALWAYS);
+   off += _emit_ST(dry_run, buf[off], ALWAYS);
+   }
+   } else {
+   while (cyc--) {
+   off += _emit_LD(dry_run, buf[off], ALWAYS);
+   off += _emit_RMB(dry_run, buf[off]);
+   off += _emit_ST(dry_run, buf[off], ALWAYS);
+   off += _emit_WMB(dry_run, buf[off]);
+   }
}
 
return off;
@@ -2398,6 +2413,7 @@ static struct dma_pl330_desc *pl330_get_desc(struct 
dma_pl330_chan *pch)
async_tx_ack(desc-txd);
 
desc-req.peri = peri_id ? pch-chan.chan_id : 0;
+   desc-rqcfg.pcfg = pch-dmac-pif.pcfg;
 
dma_async_tx_descriptor_init(desc-txd, pch-chan);
 
-- 
1.7.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] iommu: Initialize domain-handler in iommu_domain_alloc()

2011-12-14 Thread KyongHo Cho
Since it is not guaranteed that an iommu driver initializes in its
domain_init() function, it must be initialized with NULL to prevent
calling a function in an arbitrary location when iommu fault occurred.

Signed-off-by: KyongHo Cho pullip@samsung.com
---
 drivers/iommu/iommu.c |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
index 7cc3c65..1afb896 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
@@ -148,6 +148,7 @@ struct iommu_domain *iommu_domain_alloc(struct bus_type 
*bus)
return NULL;
 
domain-ops = bus-iommu_ops;
+   domain-handler = NULL;
 
ret = domain-ops-domain_init(domain);
if (ret)
-- 
1.7.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH V2] mmc: core: Add host capability check for power class

2011-12-14 Thread Girish K S
On 15 December 2011 11:33, amit kachhap amit.kach...@linaro.org wrote:
 On Thu, Dec 15, 2011 at 9:28 AM, Girish K S
 girish.shivananja...@linaro.org wrote:
 This patch adds a check whether the host supports maximum current value
 obtained from the device's extended csd register for a selected interface
 voltage and frequency.

 cc: Chris Ball c...@laptop.org
 Signed-off-by: Girish K S girish.shivananja...@linaro.org
 ---
 Changes in v2:
        deleted a unnecessary if else condition identified by subhash J
 Changes in v1:
       reduced the number of comparisons as per Hein's suggestion

  drivers/mmc/core/mmc.c   |   19 +++
  include/linux/mmc/card.h |    4 
  2 files changed, 23 insertions(+), 0 deletions(-)

 diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
 index 006e932..b9ef777 100644
 --- a/drivers/mmc/core/mmc.c
 +++ b/drivers/mmc/core/mmc.c
 @@ -688,6 +688,25 @@ static int mmc_select_powerclass(struct mmc_card *card,
                pwrclass_val = (pwrclass_val  EXT_CSD_PWR_CL_4BIT_MASK) 
                                EXT_CSD_PWR_CL_4BIT_SHIFT;

 +       if (pwrclass_val = MMC_MAX_CURRENT_800)
 Hi girish,

 These checks can be made like ,
 if (pwrclass_val  MMC_MAX_CURRENT_800)
        pwrclass_val = MMC_MAX_CURRENT_800;
 Applicable in all below conditional checks.

I feel that should be OK. Since there will be no significant
improvement or side effects with the current implementation.


 Thanks,
 Amit D

 +               pwrclass_val = MMC_MAX_CURRENT_800;
 +       else if (pwrclass_val = MMC_MAX_CURRENT_600)
 +               pwrclass_val = MMC_MAX_CURRENT_600;
 +       else if (pwrclass_val = MMC_MAX_CURRENT_400)
 +               pwrclass_val = MMC_MAX_CURRENT_400;
 +       else
 +               pwrclass_val = MMC_MAX_CURRENT_200;
 +
 +       if ((pwrclass_val == MMC_MAX_CURRENT_800) 
 +           !(card-host-caps  MMC_CAP_MAX_CURRENT_800))
 +               pwrclass_val = MMC_MAX_CURRENT_600;
 +       if ((pwrclass_val == MMC_MAX_CURRENT_600) 
 +           !(card-host-caps  MMC_CAP_MAX_CURRENT_600))
 +               pwrclass_val = MMC_MAX_CURRENT_400;
 +       if ((pwrclass_val == MMC_MAX_CURRENT_400) 
 +           !(card-host-caps  MMC_CAP_MAX_CURRENT_400))
 +               pwrclass_val = MMC_MAX_CURRENT_200;
 +
        /* If the power class is different from the default value */
        if (pwrclass_val  0) {
                err = mmc_switch(card, EXT_CSD_CMD_SET_NORMAL,
 diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h
 index 9478a6b..c5e031a 100644
 --- a/include/linux/mmc/card.h
 +++ b/include/linux/mmc/card.h
 @@ -195,6 +195,10 @@ struct mmc_part {
  #define MMC_BLK_DATA_AREA_GP   (12)
  };

 +#define MMC_MAX_CURRENT_200    (0)
 +#define MMC_MAX_CURRENT_400    (7)
 +#define MMC_MAX_CURRENT_600    (11)
 +#define MMC_MAX_CURRENT_800    (13)
  /*
  * MMC device
  */
 --
 1.7.1

 --
 To unsubscribe from this list: send the line unsubscribe linux-samsung-soc 
 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-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html