Re: [linux-sunxi] HDMI Module on the A80

2015-01-05 Thread Hans de Goede

Hi,

On 05-01-15 09:19, RFat wrote:

Thanks for the reply, but I can't see how that can be the case since this
address range is filled with zeros when the hdmi is active (both in case of
the ubuntu and the u-boot - I am reading these physical addresses).


 Any other idea?

The registers no longer need to be accessed after setting up the hdmi encoder,
so chances are that the adb / adp gate for the hdmi controller is closed,
causing all reads to return 0. First ensure all the clk gates, and resets, etc.
are set up properly before trying to dump the hdmi encoder registers.

Regards,

Hans

--
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[linux-sunxi] Re: [PATCH v2 12/13] ARM: dts: sun6i: Add sun6i-a31s.dtsi

2015-01-05 Thread Hans de Goede

Hi,

On 05-01-15 10:08, Maxime Ripard wrote:

Hi,

On Mon, Dec 22, 2014 at 02:46:12PM +0100, Hans de Goede wrote:

On 21-12-14 23:39, Maxime Ripard wrote:

On Sat, Dec 20, 2014 at 11:24:55AM +0100, Hans de Goede wrote:


snip


Given your previous changes, you should also update the enable-method.


I've not added a new compatible for the enable-method, given that
this is the exact same die, so the 2 are 100?% compatible, just like you
insisted that allwinner,sun4i-a10-mod0-clk should be used for the ir-clk
since it was 100% compatible to that I believe that the enable method
should use the existing compatible and not invent a new one for something
which is 100% compatible.


Yeah, you have a point and I agree, but your patch 3 does add a
CPU_METHOD_OF_DECLARE for the A31s.


Ah right, it does, my bad.


Since I was going to push the branch now that 3.19-rc1 is out, do you
want me to edit your patch before doing so?


Yes, please drop the addition of the extra CPU_METHOD_OF_DECLARE, or let
me know if you want a new version instead.


I just modified it, and pushed it, no need to resend it.


Thanks, while looking at your dt-for-3.20 branch I noticed that you've
merged v2 of ARM: dts: sun6i: Add ir node, I did a v3 adding an ir:
label to the node, which I noticed was missing because you asked me to
move the a31s dt stuff to moving label references, can you fix this up, or
do you want me to do a follow up patch ?

Note that having this fixed is a pre-req for the csq-cs908 dts patch.

Regards,

Hans

--
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[linux-sunxi] Re: [PATCH v2 12/13] ARM: dts: sun6i: Add sun6i-a31s.dtsi

2015-01-05 Thread Maxime Ripard
Hi,

On Mon, Dec 22, 2014 at 02:46:12PM +0100, Hans de Goede wrote:
 On 21-12-14 23:39, Maxime Ripard wrote:
 On Sat, Dec 20, 2014 at 11:24:55AM +0100, Hans de Goede wrote:
 Hi,
 
 On 19-12-14 19:34, Maxime Ripard wrote:
 On Wed, Dec 17, 2014 at 06:18:23PM +0100, Hans de Goede wrote:
 Add a dtsi file for A31s based boards.
 
 Since the  A31s is the same die as the A31 in a different package, this 
 dtsi
 simply includes sun6i-a31.dtsi and then overrides the pinctrl compatible 
 to
 reflect the different package, everything else is identical.
 
 Signed-off-by: Hans de Goede hdego...@redhat.com
 ---
 Changes in v2:
 -include sun6i-a31.dtsi and override the pinctrl compatible, rather then
   copying everything
 ---
   arch/arm/boot/dts/sun6i-a31s.dtsi | 62 
  +++
   1 file changed, 62 insertions(+)
   create mode 100644 arch/arm/boot/dts/sun6i-a31s.dtsi
 
 diff --git a/arch/arm/boot/dts/sun6i-a31s.dtsi 
 b/arch/arm/boot/dts/sun6i-a31s.dtsi
 new file mode 100644
 index 000..d0bd2b9
 --- /dev/null
 +++ b/arch/arm/boot/dts/sun6i-a31s.dtsi
 @@ -0,0 +1,62 @@
 +/*
 + * Copyright 2014 Hans de Goede hdego...@redhat.com
 + *
 + * This file is dual-licensed: you can use it either under the terms
 + * of the GPL or the X11 license, at your option. Note that this dual
 + * licensing only applies to this file, and not this project as a
 + * whole.
 + *
 + *  a) This library is free software; you can redistribute it and/or
 + * modify it under the terms of the GNU General Public License as
 + * published by the Free Software Foundation; either version 2 of the
 + * License, or (at your option) any later version.
 + *
 + * This library is distributed in the hope that it will be useful,
 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 + * GNU General Public License for more details.
 + *
 + * You should have received a copy of the GNU General Public
 + * License along with this library; if not, write to the Free
 + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
 + * MA 02110-1301 USA
 + *
 + * Or, alternatively,
 + *
 + *  b) Permission is hereby granted, free of charge, to any person
 + * obtaining a copy of this software and associated documentation
 + * files (the Software), to deal in the Software without
 + * restriction, including without limitation the rights to use,
 + * copy, modify, merge, publish, distribute, sublicense, and/or
 + * sell copies of the Software, and to permit persons to whom the
 + * Software is furnished to do so, subject to the following
 + * conditions:
 + *
 + * The above copyright notice and this permission notice shall be
 + * included in all copies or substantial portions of the Software.
 + *
 + * THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND,
 + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 + * OTHER DEALINGS IN THE SOFTWARE.
 + */
 +
 +/*
 + * The A31s is the same die as the A31 in a different package, this is
 + * reflected by it having different pinctrl compatible everything else is
 + * identical.
 + */
 +
 +/include/ sun6i-a31.dtsi
 +
 +/ {
 + soc@01c0 {
 + pio: pinctrl@01c20800 {
 + compatible = allwinner,sun6i-a31s-pinctrl;
 + };
 + };
 +};
 
 Given your previous changes, you should also update the enable-method.
 
 I've not added a new compatible for the enable-method, given that
 this is the exact same die, so the 2 are 100?% compatible, just like you
 insisted that allwinner,sun4i-a10-mod0-clk should be used for the ir-clk
 since it was 100% compatible to that I believe that the enable method
 should use the existing compatible and not invent a new one for something
 which is 100% compatible.
 
 Yeah, you have a point and I agree, but your patch 3 does add a
 CPU_METHOD_OF_DECLARE for the A31s.
 
 Ah right, it does, my bad.
 
 Since I was going to push the branch now that 3.19-rc1 is out, do you
 want me to edit your patch before doing so?
 
 Yes, please drop the addition of the extra CPU_METHOD_OF_DECLARE, or let
 me know if you want a new version instead.

I just modified it, and pushed it, no need to resend it.

Thanks!
Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 

Re: [linux-sunxi] Re: sata multiplier with A20

2015-01-05 Thread tandresen1977
Hi,

during a stress test (sunix-next kernel 3.18 rc3) i got some strange errors 
on 2 devices with a port multiplier (only one hdd is connected):

[141223.041206] ata1: illegal qc_active transition (0001-4001)
[141223.049907] ata1.00: failed to read SCR 1 (Emask=0x40)
[141223.055189] ata1.01: failed to read SCR 1 (Emask=0x40)
[141223.060543] ata1.15: exception Emask 0x2 SAct 0x0 SErr 0x41 action 
0x6 frozen
[141223.068152] ata1.15: SError: { RecovData Handshk }
[141223.073135] ata1.00: exception Emask 0x100 SAct 0x1 SErr 0x0 action 0x6 
frozen
[141223.080515] ata1.00: failed command: WRITE FPDMA QUEUED
[141223.085892] ata1.00: cmd 61/08:00:00:c9:d3/00:00:1a:00:00/40 tag 0 ncq 
4096 out
[141223.085892]  res 40/00:04:00:c9:d3/00:00:1a:00:00/40 Emask 
0x100 (unknown error)
[141223.101543] ata1.00: status: { DRDY }
[141223.105342] ata1.01: exception Emask 0x100 SAct 0x0 SErr 0x0 action 0x6 
frozen
[141223.112794] ata1.15: hard resetting link
[141223.679395] ata1.15: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[141223.689560] ata1.00: hard resetting link
[141224.259793] ata1.00: SATA link up 3.0 Gbps (SStatus 123 SControl 320)
[141224.291129] ata1.01: hard resetting link
[141224.670056] ata1.01: SATA link down (SStatus 0 SControl 320)
[141224.681979] ata1.00: configured for UDMA/133
[141224.709013] ata1: EH complete

I did the same test with NCQ disabled and this error did not happen again.

Has someone an idea why this could happen?

Tobias

Am Montag, 29. Dezember 2014 21:22:07 UTC+1 schrieb arete74:

 hi,

 2014-12-29 11:33 GMT+01:00 tandre...@gmail.com javascript::

 Hi,

 these are my test results for the hdd speed with the Marvel PMP 
 MV88SM9602:

 Driver information:

 hdparm -I /dev/sda 

 /dev/sda:

 ATA device, with non-removable media
 Model Number:WD10JPVT-00MS8T0
 Serial Number:   WD-WXB1A1356953
 Firmware Revision:  
 Standards:
 Supported: 9 8 7 6 
 Likely used: 9
 Configuration:
 Logical max current
 cylinders   16383   16383
 heads   16  16
 sectors/track   63  63
 --
 CHS current addressable sectors:   16514064
 LBAuser addressable sectors:  268435455
 LBA48  user addressable sectors: 1953525168
 device size with M = 1024*1024:  953869 MBytes
 device size with M = 1000*1000: 1000204 MBytes (1000 GB)
 Capabilities:
 LBA, IORDY(can be disabled)
 Queue depth: 32
 Standby timer values: spec'd by standard, with device specific 
 minimum
 R/W multiple sector transfer: Max = 16  Current = 0
 AdvancedPM level: unknown setting (0x0060)
 DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 udma5 *udma6 
 Cycle time: min=120ns recommended=120ns
 PIO: pio0 pio1 pio2 pio3 pio4 
 Cycle time: no flow control=120ns  IORDY flow 
 control=120ns
 Commands/features:
 Enabled Supported:
*NOP cmd
*READ BUFFER cmd
*WRITE BUFFER cmd
*Host Protected Area feature set
*Look-ahead
*Write cache
*Power Management feature set
 Security Mode feature set
*SMART feature set
*FLUSH CACHE EXT cmd
*Mandatory FLUSH CACHE cmd 
*Device Configuration Overlay feature set 
*48-bit Address feature set 
 SET MAX security extension
*SET FEATURES subcommand required to spinup after power up
 Power-Up In Standby feature set
*Adv. Power Management feature set
*DOWNLOAD MICROCODE cmd
*General Purpose Logging feature set
*SMART self-test 
*SMART error logging 
 Security:
 Master password revision code = 65534
 supported
 not enabled
 not locked
 not frozen
 not expired: security count
 supported: enhanced erase
 178min for SECURITY ERASE UNIT. 178min for ENHANCED SECURITY 
 ERASE UNIT. 
 Checksum: correct

 Speed tests (reading):

 # hdparm -tT /dev/sda 

 /dev/sda:
 Timing buffer-cache reads:   348 MB in 0.51 seconds = 695658 kB/s
 Timing buffered disk reads:  294 MB in 3.00 seconds = 100205 kB/s
 # 

 time dd if=tempfile of=/dev/null bs=1M count=1024
 1024+0 records in
 1024+0 records out
 real0m 18.84s
 user0m 0.03s
 sys 0m 5.68s

 Writing:

 time dd if=/dev/zero of=tempfile bs=1M count=1024 conv=fsync,notrunc 
 1024+0 records in
 1024+0 records out
 real1m 33.33s
 user0m 0.02s
 sys 0m 6.21s

 If you need some special test (we don't use raid for example) ask - i'll 
 perform these tests if possible.


 Is possible have this tests with same hd , but without PMP? 

 regards
 

Re: [linux-sunxi] HDMI Module on the A80

2015-01-05 Thread RFat
Thanks for the reply, but I can't see how that can be the case since this 
address range is filled with zeros when the hdmi is active (both in case of 
the ubuntu and the u-boot - I am reading these physical addresses).

Any other idea?

Raanan

On Sunday, January 4, 2015 4:47:27 PM UTC+2, Vladimir Komendantskiy wrote:

 From /proc/iomem on Cubieboard 4:

 01c16000-01c165ff : hdmi

 This is hardcoded in drivers/video/sunxi/hdmi/dev_hdmi.c in the SDK.

 --Vladimir


 On 3 January 2015 at 22:46, RFat raa...@gmail.com javascript: wrote:

 Hi there,

 I wonder if anyone knows at what address (and if) the HDMI module can be 
 found. In the platform.h found in the u-boot (in the A80_SDK) it says that 
 it should be at 0x0300 + 0xd0 (part of the REGS_AHB2_BASE). In the 
 SDK linux;s directory this address cannot be found (in the 
 platform-sun9iw1p1.h file).

 I have doubts that it is in fact at that address since when the u-boot 
 loads (or the ubuntu image found at pcduino 8) there no content at 
 0x03d0.. 

 The user manual doesn't offer any info on this module as well. The user 
 manual (as well as the platform files) indicate that there is a new module 
 called display system at 0x0310 which is also not described anywhere. 
 The code that is supposed to activate this module, i.e., hdmi_core.c/h used 
 to be in a function called video_config, but now in the SDK this function 
 calls another function called sunxi_video_config whose code it unavailable 
 (it comes compiles in libhdcp found at the drivers/video/sunxi.. directory).

 Any lead on the HDMI's registers?

 Thanks!

  -- 
 You received this message because you are subscribed to the Google Groups 
 linux-sunxi group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to linux-sunxi...@googlegroups.com javascript:.
 For more options, visit https://groups.google.com/d/optout.




-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[linux-sunxi] [UBOOT NAND] [PATCH 3/4] sunxi: nand: add nand spl boot option

2015-01-05 Thread Daniel Kochmański
---
 arch/arm/cpu/armv7/sunxi/board.c |  4 
 common/spl/spl_nand.c| 23 +--
 include/configs/sunxi-common.h   | 23 ++-
 3 files changed, 39 insertions(+), 11 deletions(-)

diff --git a/arch/arm/cpu/armv7/sunxi/board.c b/arch/arm/cpu/armv7/sunxi/board.c
index ac94a1f..860007f 100644
--- a/arch/arm/cpu/armv7/sunxi/board.c
+++ b/arch/arm/cpu/armv7/sunxi/board.c
@@ -37,7 +37,11 @@ DECLARE_GLOBAL_DATA_PTR;
  */
 u32 spl_boot_device(void)
 {
+#ifdef CONFIG_SPL_ON_NAND
+   return BOOT_DEVICE_NAND;
+#else
return BOOT_DEVICE_MMC1;
+#endif
 }
 
 /* No confirmation data available in SPL yet. Hardcode bootmode */
diff --git a/common/spl/spl_nand.c b/common/spl/spl_nand.c
index 9da0218..d8a5668 100644
--- a/common/spl/spl_nand.c
+++ b/common/spl/spl_nand.c
@@ -78,7 +78,26 @@ void spl_nand_load_image(void)
nand_spl_load_image(CONFIG_SYS_NAND_U_BOOT_OFFS,
CONFIG_SYS_NAND_PAGE_SIZE, (void *)header);
spl_parse_image_header(header);
-   nand_spl_load_image(CONFIG_SYS_NAND_U_BOOT_OFFS,
-   spl_image.size, (void *)spl_image.load_addr);
+   if (header-ih_os == IH_OS_U_BOOT) {
+   nand_spl_load_image(CONFIG_SYS_NAND_U_BOOT_OFFS,
+   spl_image.size, (void 
*)spl_image.load_addr);
+   nand_deselect();
+   return;
+   }
+   puts(U-boot header didn't match.\n);
+#ifdef CONFIG_SYS_NAND_U_BOOT_BACKUP_OFFS
+   puts(Trying to start backup u-boot now...\n);
+   nand_spl_load_image(CONFIG_SYS_NAND_U_BOOT_BACKUP_OFFS,
+   CONFIG_SYS_NAND_PAGE_SIZE, (void *)header);
+   spl_parse_image_header(header);
+   if (header-ih_os == IH_OS_U_BOOT) {
+   nand_spl_load_image(CONFIG_SYS_NAND_U_BOOT_BACKUP_OFFS,
+   spl_image.size, (void 
*)spl_image.load_addr);
+   nand_deselect();
+   return;
+   }
+#endif
+   puts(No valid u-boot image found.\n);
nand_deselect();
+   hang();
 }
diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index 019a1bb..c017909 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -63,14 +63,20 @@
 #else
 #define PHYS_SDRAM_0_SIZE  0x4000 /* 1 GiB */
 #endif
-#if 0
+
 /* Nand config */
 #define CONFIG_NAND
 #define CONFIG_NAND_SUNXI
-#define CONFIG_CMD_NAND /* NAND support */
-#define CONFIG_SYS_MAX_NAND_DEVICE  1
-#define CONFIG_SYS_NAND_BASE0x00
-#endif
+
+#define CONFIG_SPL_NAND_DRIVERS
+#define CONFIG_SPL_NAND_SUPPORT
+#define CONFIG_CMD_SPL_WRITE_SIZE   0x000400/* 1024 byte */
+#define CONFIG_CMD_SPL_NAND_OFS 0x40/* multiimage */
+
+#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x008000
+#define CONFIG_SYS_NAND_U_BOOT_BACKUP_OFFS  0x208000
+#define CONFIG_SYS_NAND_PAGE_SIZE   0x002000/* 8kb*/
+/* ~ Nand config */
 
 #define CONFIG_CMD_MEMORY
 #define CONFIG_CMD_SETEXPR
@@ -259,10 +265,6 @@
  * large SPL for A10/A20 with this on. sun5i however accepts a much larger
  * SPL
  */
-#if defined( CONFIG_SUN5I ) || defined ( CONFIG_SYS_THUMB_BUILD )
-#define CONFIG_SPL_OS_BOOT
-#endif
-
 #ifdef CONFIG_SPL_FEL
 
 #define CONFIG_SPL
@@ -284,7 +286,10 @@
 #endif
 
 #define CONFIG_SPL_LIBDISK_SUPPORT
+
+#if !defined CONFIG_SPL_ON_NAND
 #define CONFIG_SPL_MMC_SUPPORT
+#endif /* CONFIG_SPL_ON_NAND */
 
 #define CONFIG_SPL_LDSCRIPT arch/arm/cpu/armv7/sunxi/u-boot-spl.lds
 
-- 
2.2.1

-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[linux-sunxi] [Question]Allwinner A20 DirectFB.

2015-01-05 Thread 김기범
 

HI.

 

DirectFB using the current Linux-A20 will be configured from the GUI.

 

However, only one layer is made in creating a Layer DirectFB.

 

Below is a debug message when running the arm-linux-dfbinfo's provided in 
directFB.

 

*~~| DirectFB 1.6.0 |~~*

*(c) 2001-2012  The world wide DirectFB Open Source Community*

*(c) 2000-2004  Convergence (integrated media) GmbH*

*  *

 

*(*) DirectFB/Core: Single Application Core. (2014-12-29 02:49) *

*(*) Direct/Memcpy: Using libc memcpy()*

*(*) DirectFB/FBDev: Found '' (ID 0) with frame buffer at 0x4400, 2700k 
(MMIO 0x, 0k)*

*(*) Direct/Modules: suppress module 'keyboard'*

*(*) Direct/Modules: suppress module 'ps2mouse'*

*(*) DirectFB/Input: Hot-plug detection enabled with Input Hub Driver *

*(*) DirectFB/Graphics: Generic Software Rasterizer 0.7 (directfb.org)*

*(*) DirectFB/Core/WM: Default 0.3 (directfb.org)*

*(*) FBDev/Mode: Setting 720x480 RGB32*

*(*) FBDev/Mode: Switched to 720x480 (virtual 720x480) at 32 bit (RGB32), 
pitch 2880*

*(*) FBDev/Mode: Setting 720x480 RGB32*

*(*) FBDev/Mode: Switched to 720x480 (virtual 720x480) at 32 bit (RGB32), 
pitch 2880*

 

 

*Screen (00) FBDev Primary Screen(primary screen)*

*   Caps: VSYNC POWER_MANAGEMENT *

 

* Layer (00) FBDev Primary Layer (primary layer)*

*Type:GRAPHICS*

 

Directfbrc file is shown below.

 

*module-dir=/usr/lib/directfb-1.6-0*

*no-vt*

*software*

*fbdev=/dev/fb0*

*disable-module=keyboard*

*disable-module=ps2mouse*

*#debug*

 

Below is directfb Cross compilation settings.

 

*./configure --prefix=/home/bluearea/samba/player/DirectFB/release 
--target=arm-linux --disable-x11 --disable-network --enable-static 
--enable-png --disable-jpeg --enable-freetype --enable-fbdev 
FREETYPE_CFLAGS=-I/home/bluearea/samba/MerriiLinux/buildroot/target/dragonboard/sysroot/usr/include/freetype2
 
FREETYPE_LIBS=-L/home/bluearea/samba/MerriiLinux/buildroot/target/dragonboard/sysroot/usr/lib
 
LIBPNG_CFLAGS=-I/home/bluearea/samba/MerriiLinux/buildroot/target/dragonboard/sysroot/usr/include/libpng14
 
LIBPNG_LIBS=-L/home/bluearea/samba/MerriiLinux/buildroot/target/dragonboard/sysroot/usr/lib
 
CFLAGS=-I/home/bluearea/samba/MerriiLinux/buildroot/target/dragonboard/sysroot/usr/include
 
LDFLAGS=-L/home/bluearea/samba/MerriiLinux/buildroot/target/dragonboard/sysroot/usr/lib
 
--host=arm-linux-gnueabi LIBS=-ldl*

 

When I tried to get the Layer again after obtaining the Primary layer results 
in an error as shown below.

 

*~~| DirectFB 1.6.0 |~~*

*(c) 2001-2012  The world wide DirectFB Open Source Community*

*(c) 2000-2004  Convergence (integrated media) GmbH*

*  *

 

*(*) DirectFB/Core: Single Application Core. (2014-12-29 02:49) *

*(*) Direct/Memcpy: Using libc memcpy()*

*(*) DirectFB/FBDev: Found '' (ID 0) with frame buffer at 0x4400, 2700k 
(MMIO 0x, 0k)*

*(*) Direct/Modules: suppress module 'keyboard'*

*(*) Direct/Modules: suppress module 'ps2mouse'*

*(*) DirectFB/Input: Hot-plug detection enabled with Input Hub Driver *

*(*) DirectFB/Graphics: Generic Software Rasterizer 0.7 (directfb.org)*

*(*) DirectFB/Core/WM: Default 0.3 (directfb.org)*

*(*) FBDev/Mode: Setting 720x480 RGB32*

*(*) FBDev/Mode: Switched to 720x480 (virtual 720x480) at 32 bit (RGB32), 
pitch 2880*

*(*) FBDev/Mode: Setting 720x480 RGB32*

*(*) FBDev/Mode: Switched to 720x480 (virtual 720x480) at 32 bit (RGB32), 
pitch 2880*

*hdmitester.c 408:*

*(#) DirectFBError [dfb-GetDisplayLayer( dfb,1,layer1)]: No 
resource has been found by the specified id*

*(!!!)  *** WARNING [Application exited without deinitialization of 
DirectFB!] *** [core.c:1401 in dfb_core_deinit_check()]*

*(!!!)  *** WARNING [zombie 0x252c0 [1], refs 1 (in Layer Region Pool)] *** 
[object.c:251 in fusion_object_pool_destroy()]*

*(!!!)  *** WARNING [zombie 0x24ab8 [1], refs 2 (in Layer Context Pool)] 
*** [object.c:251 in fusion_object_pool_destroy()]*

*(!!!)  *** WARNING [zombie 0x1be68 [2], refs 1 (in Layer Context Pool)] 
*** [object.c:251 in fusion_object_pool_destroy()]*

*(!!!)  *** WARNING [zombie 0x25e58 [1], refs 1 (in Surface Pool)] *** 
[object.c:251 in fusion_object_pool_destroy()]*

 

Do you also have to use GFX_Dirver used to directFB which one?

 

Below is a GFX_Driver supported by DirectFB.

 

ati128, cle266, cyber5k, davinci, ep9x, gl, gles2, glx, i810, i830, mach64, 
matrox, neomagic, nsc, nvidia, omap, pvr2d, egl, pxa3xx, radeon, savage, 
sh772x, sis315, tdfx, unichrome, vdpau, vmware,

 

Please help me!

-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an 

[linux-sunxi] [UBOOT NAND] [PATCH 2/4] sunxi: mksunxiboot: increase block size, so checksum is correct on nand

2015-01-05 Thread Daniel Kochmański
---
 tools/mksunxiboot.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/mksunxiboot.c b/tools/mksunxiboot.c
index 1f0fbae..40f0006 100644
--- a/tools/mksunxiboot.c
+++ b/tools/mksunxiboot.c
@@ -65,7 +65,7 @@ int gen_check_sum(struct boot_file_head *head_p)
 
 #define SUN4I_SRAM_SIZE 0x7600 /* 0x7748+ is used by BROM */
 #define SRAM_LOAD_MAX_SIZE (SUN4I_SRAM_SIZE - sizeof(struct boot_file_head))
-#define BLOCK_SIZE 512
+#define BLOCK_SIZE 0x2000
 
 struct boot_img {
struct boot_file_head header;
-- 
2.2.1

-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[linux-sunxi] [UBOOT NAND] [PATCH 0/4] Add nand reading support to u-boot

2015-01-05 Thread Daniel Kochmański
This is a series of patches to enable nand read functionality on sunxi
devices. It uses DMA and is able to read from syndrome partitions and
normal ones. Additionaly mksunxiboot tool is patched to be able to
format resulting binary to be able to read from BROM, so NAND SPL builds
are now possible. a20_nandread command is added for conveniance.

Afaik DMA controller doesn't vary between a10 and a20, so this should
work on a10 devices, but due to no a10 hardware it wasn't tested.

Daniel Kochmański (4):
  sunxi: nand: add minimal nand driver (reading flash only).
  sunxi: mksunxiboot: increase block size, so checksum is correct on
nand
  sunxi: nand: add nand spl boot option
  sunxi: nand: add a20_nandread command

 arch/arm/cpu/armv7/sunxi/board.c |   4 +
 board/sunxi/Makefile |   1 +
 board/sunxi/nand.c   | 252 +++
 common/Makefile  |   1 +
 common/cmd_a20_nandread.c|  26 
 common/spl/spl_nand.c|  23 +++-
 include/configs/sunxi-common.h   |  25 ++--
 tools/mksunxiboot.c  |   2 +-
 8 files changed, 322 insertions(+), 12 deletions(-)
 create mode 100644 board/sunxi/nand.c
 create mode 100644 common/cmd_a20_nandread.c

-- 
2.2.1

-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[linux-sunxi] [UBOOT NAND] [PATCH 1/4] sunxi: nand: add minimal nand driver (reading flash only).

2015-01-05 Thread Daniel Kochmański
---
 board/sunxi/Makefile |   1 +
 board/sunxi/nand.c   | 252 +++
 2 files changed, 253 insertions(+)
 create mode 100644 board/sunxi/nand.c

diff --git a/board/sunxi/Makefile b/board/sunxi/Makefile
index 1bde476..8b2e40e 100644
--- a/board/sunxi/Makefile
+++ b/board/sunxi/Makefile
@@ -9,6 +9,7 @@
 # SPDX-License-Identifier: GPL-2.0+
 #
 obj-y  += board.o
+obj-$(CONFIG_NAND_SUNXI)   += nand.o
 obj-$(CONFIG_SUNXI_GMAC)   += gmac.o
 obj-$(CONFIG_A10_MID_1GB)  += dram_sun4i_360_1024_iow16.o
 obj-$(CONFIG_A10_OLINUXINO_LIME)   += dram_a10_olinuxino_lime.o
diff --git a/board/sunxi/nand.c b/board/sunxi/nand.c
new file mode 100644
index 000..11aa656
--- /dev/null
+++ b/board/sunxi/nand.c
@@ -0,0 +1,252 @@
+/*
+ * Copyright (c) 2014, Antmicro Ltd www.antmicro.com
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+
+#include common.h
+#include config.h
+#include asm/io.h
+#include nand.h
+
+/* minimal boot0 style NAND support for Allwinner A20 */
+#define W32(a, b) (*(volatile unsigned int   *)(a)) = b
+#define R32(a)(*(volatile unsigned int   *)(a))
+
+char ch(char c) {
+if (c = 'a'  c = 'z') return c;
+if (c = 'A'  c = 'Z') return c;
+if (c = '0'  c = '9') return c;
+return '.';
+}
+
+void print_mem(uint32_t addr, uint32_t len, uint32_t label) {
+int i=0;
+int j;
+char buf[16];
+for(i=0; ilen; i++) {
+if(!(i%0x10)) {
+if(i) {
+printf( |);
+for (j = 0; j  16; j++) printf(%c, 
ch(buf[j]));
+printf(|\n);
+}
+printf(  0x%p: , (void *)(label+i));
+} else {
+printf( );
+}
+buf[i % 16] =  *(char *)(addr+i);
+printf(%02x, *(char *)(addr+i));
+}
+printf( |);
+for (j = 0; j  16; j++) printf(%c, ch(buf[j]));
+printf(|\n);
+}
+
+/* temporary buffer for read of 1024 bytes */
+#ifdef CONFIG_SPL_BUILD
+char temp_buf[0x400] __attribute__ ((aligned (0x10), section (.text#)));
+#else
+void *temp_buf = 0x0;
+#endif
+
+
+#define PORTC_BASE  0x01c20800
+#define CCMU_BASE   0x01c2
+#define NANDFLASHC_BASE 0x01c03000
+#define DMAC_BASE   0x01c02000
+
+#define NANDFLASHC_CTL  0x
+#define NANDFLASHC_ST   0x0004
+#define NANDFLASHC_INT  0x0008
+#define NANDFLASHC_TIMING_CTL   0x000C
+#define NANDFLASHC_TIMING_CFG   0x0010
+#define NANDFLASHC_ADDR_LOW 0x0014
+#define NANDFLASHC_ADDR_HIGH0x0018
+#define NANDFLASHC_SECTOR_NUM   0x001C
+#define NANDFLASHC_CNT  0x0020
+#define NANDFLASHC_CMD  0x0024
+#define NANDFLASHC_RCMD_SET 0x0028
+#define NANDFLASHC_WCMD_SET 0x002C
+#define NANDFLASHC_IO_DATA  0x0030
+#define NANDFLASHC_ECC_CTL  0x0034
+#define NANDFLASHC_ECC_ST   0x0038
+#define NANDFLASHC_DEBUG0x003C
+#define NANDFLASHC_ECC_CNT0 0x0040
+#define NANDFLASHC_ECC_CNT1 0x0044
+#define NANDFLASHC_ECC_CNT2 0x0048
+#define NANDFLASHC_ECC_CNT3 0x004C
+#define NANDFLASHC_USER_DATA_BASE   0x0050
+#define NANDFLASHC_EFNAND_STATUS0x0090
+#define NANDFLASHC_SPARE_AREA   0x00A0
+#define NANDFLASHC_PATTERN_ID   0x00A4
+#define NANDFLASHC_RAM0_BASE0x0400
+#define NANDFLASHC_RAM1_BASE0x0800
+
+
+void nand_set_clocks(void) {
+W32(PORTC_BASE + 0x48, 0x);
+W32(PORTC_BASE + 0x4C, 0x);
+W32(PORTC_BASE + 0x50, 0x222);
+W32(PORTC_BASE + 0x54, 0x2);
+W32(PORTC_BASE + 0x5C, 0x);
+W32(PORTC_BASE + 0x60, 0x1);
+W32(PORTC_BASE + 0x64, 0x5140);
+W32(PORTC_BASE + 0x68, 0x4016);
+
+uint32_t val = R32(CCMU_BASE + 0x60);
+W32(CCMU_BASE + 0x60, 0x2000 | val);
+
+val = R32(CCMU_BASE + 0x80);
+W32(CCMU_BASE + 0x80, val | 0x8000 | 0x1);
+}
+
+volatile int inited = 0;
+void nand_init(void) {
+inited = 1;
+uint32_t val;
+nand_set_clocks();
+val = R32(NANDFLASHC_BASE + 0x00);
+/* CTL = (10 -EN11 RESET) */
+W32(NANDFLASHC_BASE + 0x00, val | 0x3); /* enable and reset 
CTL */
+do {
+val = R32(NANDFLASHC_BASE + 0x00);
+if (val  (11)) break;
+} while (1);
+}
+
+/* random seed used by linux */
+const uint16_t random_seed[128] = {
+0x2b75, 0x0bd0, 0x5ca3, 0x62d1, 0x1c93, 0x07e9, 0x2162, 0x3a72,
+0x0d67, 0x67f9, 

[linux-sunxi] [UBOOT NAND] [PATCH 4/4] sunxi: nand: add a20_nandread command

2015-01-05 Thread Daniel Kochmański
---
 common/Makefile|  1 +
 common/cmd_a20_nandread.c  | 26 ++
 include/configs/sunxi-common.h |  2 ++
 3 files changed, 29 insertions(+)
 create mode 100644 common/cmd_a20_nandread.c

diff --git a/common/Makefile b/common/Makefile
index cecd81a..c65dd50 100644
--- a/common/Makefile
+++ b/common/Makefile
@@ -125,6 +125,7 @@ obj-$(CONFIG_CMD_MMC) += cmd_mmc.o
 obj-$(CONFIG_CMD_MMC_SPI) += cmd_mmc_spi.o
 obj-$(CONFIG_MP) += cmd_mp.o
 obj-$(CONFIG_CMD_MTDPARTS) += cmd_mtdparts.o
+obj-$(CONFIG_CMD_A20_NANDREAD) += cmd_a20_nandread.o
 obj-$(CONFIG_CMD_NAND) += cmd_nand.o
 obj-$(CONFIG_CMD_NET) += cmd_net.o
 obj-$(CONFIG_CMD_ONENAND) += cmd_onenand.o
diff --git a/common/cmd_a20_nandread.c b/common/cmd_a20_nandread.c
new file mode 100644
index 000..e975d64
--- /dev/null
+++ b/common/cmd_a20_nandread.c
@@ -0,0 +1,26 @@
+#include common.h
+#include command.h
+
+int nand_spl_load_image(uint32_t offs, unsigned int size, void *dest) ;
+
+static int do_a20_nandread(cmd_tbl_t *cmdtp, int flag, int argc, char * const 
argv[])
+{
+if (argc != 4) {
+printf(usage: a20_nandread address offset bytes\n);
+return 1;
+}
+
+uint32_t dst = simple_strtoul (argv[1], NULL, 16);
+uint32_t src = simple_strtoul (argv[2], NULL, 16);
+uint32_t cnt = simple_strtoul (argv[3], NULL, 16);
+printf(Loading 0x%08XB @ 0x%08X - 0x%08X: , cnt, src, dst);
+nand_spl_load_image(src, cnt, (void *)dst);
+return 0;
+}
+
+U_BOOT_CMD(
+a20_nandread,   CONFIG_SYS_MAXARGS, 3,  do_a20_nandread,
+a20_nandread,
+[offset size bytes]\n
+   
+);
diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index c017909..aaf8ddc 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -76,6 +76,8 @@
 #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x008000
 #define CONFIG_SYS_NAND_U_BOOT_BACKUP_OFFS  0x208000
 #define CONFIG_SYS_NAND_PAGE_SIZE   0x002000/* 8kb*/
+
+#define CONFIG_CMD_A20_NANDREAD
 /* ~ Nand config */
 
 #define CONFIG_CMD_MEMORY
-- 
2.2.1

-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[linux-sunxi] [Question]Allwinner A20 DirectFB.

2015-01-05 Thread 김기범
 

HI.

 

DirectFB using the current Linux-A20 will be configured from the GUI.

 

However, only one layer is made in creating a Layer DirectFB.

 

Below is a debug message when running the arm-linux-dfbinfo's provided in 
directFB.

 

*~~| DirectFB 1.6.0 |~~*

*(c) 2001-2012  The world wide DirectFB Open Source Community*

*(c) 2000-2004  Convergence (integrated media) GmbH*

*  *

 

*(*) DirectFB/Core: Single Application Core. (2014-12-29 02:49) *

*(*) Direct/Memcpy: Using libc memcpy()*

*(*) DirectFB/FBDev: Found '' (ID 0) with frame buffer at 0x4400, 2700k 
(MMIO 0x, 0k)*

*(*) Direct/Modules: suppress module 'keyboard'*

*(*) Direct/Modules: suppress module 'ps2mouse'*

*(*) DirectFB/Input: Hot-plug detection enabled with Input Hub Driver *

*(*) DirectFB/Graphics: Generic Software Rasterizer 0.7 (directfb.org)*

*(*) DirectFB/Core/WM: Default 0.3 (directfb.org)*

*(*) FBDev/Mode: Setting 720x480 RGB32*

*(*) FBDev/Mode: Switched to 720x480 (virtual 720x480) at 32 bit (RGB32), 
pitch 2880*

*(*) FBDev/Mode: Setting 720x480 RGB32*

*(*) FBDev/Mode: Switched to 720x480 (virtual 720x480) at 32 bit (RGB32), 
pitch 2880*

 

 

*Screen (00) FBDev Primary Screen(primary screen)*

*   Caps: VSYNC POWER_MANAGEMENT *

 

* Layer (00) FBDev Primary Layer (primary layer)*

*Type:GRAPHICS*

 

Directfbrc file is shown below.

 

*module-dir=/usr/lib/directfb-1.6-0*

*no-vt*

*software*

*fbdev=/dev/fb0*

*disable-module=keyboard*

*disable-module=ps2mouse*

*#debug*

 

Below is directfb Cross compilation settings.

 

*./configure --prefix=/home/bluearea/samba/player/DirectFB/release 
--target=arm-linux --disable-x11 --disable-network --enable-static 
--enable-png --disable-jpeg --enable-freetype --enable-fbdev 
FREETYPE_CFLAGS=-I/home/bluearea/samba/MerriiLinux/buildroot/target/dragonboard/sysroot/usr/include/freetype2
 
FREETYPE_LIBS=-L/home/bluearea/samba/MerriiLinux/buildroot/target/dragonboard/sysroot/usr/lib
 
LIBPNG_CFLAGS=-I/home/bluearea/samba/MerriiLinux/buildroot/target/dragonboard/sysroot/usr/include/libpng14
 
LIBPNG_LIBS=-L/home/bluearea/samba/MerriiLinux/buildroot/target/dragonboard/sysroot/usr/lib
 
CFLAGS=-I/home/bluearea/samba/MerriiLinux/buildroot/target/dragonboard/sysroot/usr/include
 
LDFLAGS=-L/home/bluearea/samba/MerriiLinux/buildroot/target/dragonboard/sysroot/usr/lib
 
--host=arm-linux-gnueabi LIBS=-ldl*

 

When I tried to get the Layer again after obtaining the Primary layer results 
in an error as shown below.

 

*~~| DirectFB 1.6.0 |~~*

*(c) 2001-2012  The world wide DirectFB Open Source Community*

*(c) 2000-2004  Convergence (integrated media) GmbH*

*  *

 

*(*) DirectFB/Core: Single Application Core. (2014-12-29 02:49) *

*(*) Direct/Memcpy: Using libc memcpy()*

*(*) DirectFB/FBDev: Found '' (ID 0) with frame buffer at 0x4400, 2700k 
(MMIO 0x, 0k)*

*(*) Direct/Modules: suppress module 'keyboard'*

*(*) Direct/Modules: suppress module 'ps2mouse'*

*(*) DirectFB/Input: Hot-plug detection enabled with Input Hub Driver *

*(*) DirectFB/Graphics: Generic Software Rasterizer 0.7 (directfb.org)*

*(*) DirectFB/Core/WM: Default 0.3 (directfb.org)*

*(*) FBDev/Mode: Setting 720x480 RGB32*

*(*) FBDev/Mode: Switched to 720x480 (virtual 720x480) at 32 bit (RGB32), 
pitch 2880*

*(*) FBDev/Mode: Setting 720x480 RGB32*

*(*) FBDev/Mode: Switched to 720x480 (virtual 720x480) at 32 bit (RGB32), 
pitch 2880*

*hdmitester.c 408:*

*(#) DirectFBError [dfb-GetDisplayLayer( dfb,1,layer1)]: No 
resource has been found by the specified id*

*(!!!)  *** WARNING [Application exited without deinitialization of 
DirectFB!] *** [core.c:1401 in dfb_core_deinit_check()]*

*(!!!)  *** WARNING [zombie 0x252c0 [1], refs 1 (in Layer Region Pool)] *** 
[object.c:251 in fusion_object_pool_destroy()]*

*(!!!)  *** WARNING [zombie 0x24ab8 [1], refs 2 (in Layer Context Pool)] 
*** [object.c:251 in fusion_object_pool_destroy()]*

*(!!!)  *** WARNING [zombie 0x1be68 [2], refs 1 (in Layer Context Pool)] 
*** [object.c:251 in fusion_object_pool_destroy()]*

*(!!!)  *** WARNING [zombie 0x25e58 [1], refs 1 (in Surface Pool)] *** 
[object.c:251 in fusion_object_pool_destroy()]*

 

Do you also have to use GFX_Dirver used to directFB which one?

 

Below is a GFX_Driver supported by DirectFB.

 

ati128, cle266, cyber5k, davinci, ep9x, gl, gles2, glx, i810, i830, mach64, 
matrox, neomagic, nsc, nvidia, omap, pvr2d, egl, pxa3xx, radeon, savage, 
sh772x, sis315, tdfx, unichrome, vdpau, vmware,

 

Please help me!

-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an 

Re: [linux-sunxi] mainline u-boot config from sinxi u-boot config

2015-01-05 Thread Hans de Goede

Hi,

On 04-01-15 22:38, Michal Suchanek wrote:

Hello,

I wanted to try mainline u-boot on an inet 86vs tablet.

This tablet has sunxi u-boot config.

I started by

1) copying the A13 Olinuxino Micro defconfig

2) removing redundant (EHCI) and harmful (CONS_INDEX) options

3) changing target name

4) copying dram.c file from u-boot sunxi and registering it with the new target

Remaining problems:

- config includesd a DT file - where to get?


This is only necessary when using an upstream kernel, if you boot with a
boot.scr which loads a linux-sunxi-3.4 kernel you don't need this, just
set to the name which you want to eventually use for the dts for the
upstream kernel (you are going to create a dts for us, right ?  :)


- defining display timings

Is there some place these are described?


http://linux-sunxi.org/LCD

Regards,

Hans

--
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [linux-sunxi] Re: mainline u-boot config from sunxi u-boot config

2015-01-05 Thread Hans de Goede

Hi,

On 04-01-15 23:02, Michal Suchanek wrote:

On 4 January 2015 at 22:38, Michal Suchanek hramr...@gmail.com wrote:

Hello,

I wanted to try mainline u-boot on an inet 86vs tablet.

This tablet has sunxi u-boot config.

I started by

1) copying the A13 Olinuxino Micro defconfig

2) removing redundant (EHCI) and harmful (CONS_INDEX) options

3) changing target name

4) copying dram.c file from u-boot sunxi and registering it with the new target

Remaining problems:

- config includesd a DT file - where to get?


It builds without one.

Maybe it's just hint what file to load?



- defining display timings


Here: http://linux-sunxi.org/LCD

Cutpaste if the timings were in an old fex file in sunxi-boards.

Conversion script TBD. Maybe upload to sunxi-tools/the wiki/... ?

Also the info is useless with current mainline u-boot because it does
not have the LCD support.

For the time being this one has:

https://github.com/jwrdegoede/u-boot-sunxi/tree/sunxi-wip


Well I'm working on getting that upstream, I just need a review of the
videomodes.c patches and then I'll queue it up for merging when the
u-boot-2015.04 merge windows opens in 2 weeks from now.


and also has LCD and WiFi config example with the Ippo defconfigs.


Right, note though that your tablet has a different AXP so the voltage /
wifi bits of the Ippo tablet do not apply to it.

Did you get that branch going, with lcd output ? Note that once you've
that working + a dts you can also run an upstream (3.19 or newer) kernel
with lcd output by using the simplefb driver in the upstream kernel.

Regards,

Hans

--
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[linux-sunxi] Re: Mainline work status

2015-01-05 Thread Maxime Ripard
Hi Chen-Yu,

On Wed, Dec 24, 2014 at 11:29:26PM +0800, wens Tsai wrote:
 Hi everyone,
 
 As some of you might have noticed, I've sent out patches for A80 MMC
 and AXP20x.  In addition, I've picked up Boris' AXP221 patches to
 resend after the AXP patches are merged.

Thanks for your amazing work.

 The following is a list of things I'm working on or waiting to
 submit:
 
 - AXP20x (PEK and docs) series, originally by Carlo, posted v8
 - AXP20x regulator driver cleanup, finished and tested

What is left to be posted, besides the DT bits?

 - AXP221 support, originally by Boris, finished and tested
   * Also enables WiFi on the Hummingbird A31

There was some discussion since for some board (maybe the APP4) we had
some circular dependency between the regulators exposed by the
PMIC. Has that been taken care of?

 - sunxi (sun[457]i) cpufreq support, finished and testing (CB/CB2 tested)
   * Only added support for the boards I own. It's just a matter of adding
 the regulator nodes with the proper constraints

Did you test individual OPPs or global ones (ie per-board or per-SoC)?
Eventually, I'd like to have per-SoC OPPs. It doesn't seem that
undoable from the spreadsheet I shared with you.

 - sun6i cpufreq support, WiP
 - sun8i cpufreq support, minimal work only
 - sun9i mmc support, posted v2
 - sun9i usb support, v3 WiP
 - RSB driver, not working yet
 
 All the above, excluding RSB, can be found in my repository:
 https://github.com/wens/linux
 Each topic is a separate branch, except for the AXP branches, which
 have dependencies.
 
 Testing and feedback is more than welcome.

Again, thanks a lot for your efforts.

Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


signature.asc
Description: Digital signature


Re: [U-Boot] [linux-sunxi] Mainline U-Boot, EHCI, usbkbd not working (workaround)

2015-01-05 Thread Simon Glass
Hi Hans,

On 5 January 2015 at 00:10, Hans de Goede hdego...@redhat.com wrote:
 Hi,


 On 05-01-15 03:49, Simon Glass wrote:

 Hi Hans,

 On 4 January 2015 at 12:05, Hans de Goede hdego...@redhat.com wrote:

 Hi,


 On 04-01-15 19:21, B.R. Oake wrote:


 (This started on the linux-sunxi mailing list but will hopefully be
 of interest on the U-Boot list)

 On 04/01/15 13:45, Lars Doelle wrote:


 while testing with mainline u-boot, I came over the
 problem, that the USB keyboard is not recognized.

 The device is an A20-OLinuXIno-LIME2. I used the
 current A20-OLinuXino-Lime2_defconfig for building.

 In my understanding, the issue should be reproducible
 with all devices having an EHCI root hub.

 ---
 sun7i# usb reset
 (Re)start USB...
 USB0:   USB EHCI 1.00
 scanning bus 0 for devices... cannot reset port 1!?
 1 USB Device(s) found
 USB1:   USB EHCI 1.00
 scanning bus 1 for devices... 1 USB Device(s) found
  scanning usb for storage devices... 0 Storage Device(s) found
 sun7i# usb tree
 USB device tree:
 1  Hub (480 Mb/s, 0mA)
u-boot EHCI Host Controller

 2  Hub (480 Mb/s, 0mA)
u-boot EHCI Host Controller
 ---

 As a workaround, i plugged an USB hub in between:
 [...]




 I also have this problem.  I've tried three different USB keyboards on
 an A20-Olinuxino-Micro and a Banana Pi, and I always get that error
 cannot reset port N!? where N is whichever USB socket I've plugged
 it into, and U-Boot cannot see the keyboard.  Once Linux has loaded,
 the keyboard works without any trouble.

 Can anyone suggest what is causing this?



 The problem is that u-boot does not allow building both ohci and
 ehci drivers into the same u-boot binary, so we cannot enable both
 usb-1 and usb-2 support at the same time.

 So we're stuck with having only usb-2 support until someone reworks
 u-boot's usb code, and keyboards and mice are typically usb-1 devices,
 the workaround for this is to plug in a usb-2 hub so that the board
 sees a usb-2 device, and then plug the mouse / keyboard into that
 hub.


 This could be solved by moving USB to driver model.


 Yes, that is what I was thinking too.

 Marek do you know if anyone is looking at this?


 Actually I was about to ask you (Simon) if you are looking into converting
 the usb stuff to dm, AFAIK no one else is working on this.

I think Marek is busy for a while.

I'd like to get PCI over the line first, and I have a few other things
on my plate.

But I think it would not be too difficult to move the
usb_lowlevel_init() stuff into driver model. That would solve the
primary problem I think. I'll see how things look later in the month.

Regards,
Simon

-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[linux-sunxi] Re: Mainline work status

2015-01-05 Thread wens Tsai
Hi,

On Tue, Jan 6, 2015 at 12:15 AM, Maxime Ripard
maxime.rip...@free-electrons.com wrote:
 Hi Chen-Yu,

 On Wed, Dec 24, 2014 at 11:29:26PM +0800, wens Tsai wrote:
 Hi everyone,

 As some of you might have noticed, I've sent out patches for A80 MMC
 and AXP20x.  In addition, I've picked up Boris' AXP221 patches to
 resend after the AXP patches are merged.

 Thanks for your amazing work.

 The following is a list of things I'm working on or waiting to
 submit:

 - AXP20x (PEK and docs) series, originally by Carlo, posted v8
 - AXP20x regulator driver cleanup, finished and tested

 What is left to be posted, besides the DT bits?

This is actually getting rid of the DT parsing code in the regulator
driver, and using common code in the regulator core added in 3.19-rc1.
So this is new.

 - AXP221 support, originally by Boris, finished and tested
   * Also enables WiFi on the Hummingbird A31

 There was some discussion since for some board (maybe the APP4) we had
 some circular dependency between the regulators exposed by the
 PMIC. Has that been taken care of?

The work Boris has done on that doesn't mesh well with the previous
item. For now I've dropped that bit. The dependency is ELDOs are
powered from DCDC1, which is a fairly simple dependency. I think
we can get around it by registering the DCDC ones first.

 - sunxi (sun[457]i) cpufreq support, finished and testing (CB/CB2 tested)
   * Only added support for the boards I own. It's just a matter of adding
 the regulator nodes with the proper constraints

 Did you test individual OPPs or global ones (ie per-board or per-SoC)?
 Eventually, I'd like to have per-SoC OPPs. It doesn't seem that
 undoable from the spreadsheet I shared with you.

I've tested per-SoC OPPs with the boards I have using the hardware reliability
test on the wiki [1]. Doing per-board OPPs should be as simple as overriding
the OPP table in the board dts. As I will state in the series cover letter,
for sun[457]i the OPPs are the same or very similar.

For sun6i it is somewhat harder.

[1] 
http://linux-sunxi.org/Hardware_Reliability_Tests#Reliability_of_cpufreq_voltage.2Ffrequency_settings

 - sun6i cpufreq support, WiP
 - sun8i cpufreq support, minimal work only
 - sun9i mmc support, posted v2
 - sun9i usb support, v3 WiP
 - RSB driver, not working yet

 All the above, excluding RSB, can be found in my repository:
 https://github.com/wens/linux
 Each topic is a separate branch, except for the AXP branches, which
 have dependencies.

 Testing and feedback is more than welcome.

 Again, thanks a lot for your efforts.

You're more than welcome. The work put in earlier by others shouldn't
be left to waste. I'd like to see them through. :)


Cheers
ChenYu

-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[linux-sunxi] sharing a video test with Optimus board A80 octacore simultaneous WebRTC+HLS / VP8+H.264

2015-01-05 Thread javqui
Just to share a video showing some A80 capabilities.
It's just an initial test. There is room for improvements (particularly 
with the 4k video memory handlers and GPU processing). 
YouTube video https://www.youtube.com/watch?v=99kjbriibPY
 

-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [linux-sunxi] Re: i2s audio codec support for sun7i

2015-01-05 Thread Puneet B
i used i2c second bus,

[twi2_para]
twi2_used = 1
twi2_scl = port:PB202defaultdefaultdefault
twi2_sda = port:PB212defaultdefaultdefault

Regards
Punith

On Mon, Jan 5, 2015 at 11:28 PM, omeraygo...@gmail.com wrote:

 Hi Punith B,

 which i2c pin did you use?

 On Saturday, September 27, 2014 8:19:22 AM UTC+3, Puneet B wrote:
   Hi Rafel,
 
  The fex file i have attached in my previous post i did not done any
 changes.
  and here my machine driver .
 
  in device.c file just add fallowing line.
  +static struct i2c_board_info __initdata aic3x_i2c_board_info[] = {
  +{
   +   .type = tlv320aic31xx,
   +   .addr = 0x18,
  +}
  +};
  void __init sw_pdev_init(void)
  {
  platform_add_devices(sw_pdevs, ARRAY_SIZE(sw_pdevs));
  +i2c_register_board_info(2, aic3x_i2c_board_info,
+  ARRAY_SIZE(aic3x_i2c_board_info));
  }
 
  which kernel you are using?.
 
  Regards
  Punith

 --
 You received this message because you are subscribed to a topic in the
 Google Groups linux-sunxi group.
 To unsubscribe from this topic, visit
 https://groups.google.com/d/topic/linux-sunxi/t44VY2-cOMo/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to
 linux-sunxi+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.


-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [linux-sunxi] Re: i2s audio codec support for sun7i

2015-01-05 Thread omeraygor71
Hi Punith B,

which i2c pin did you use?

On Saturday, September 27, 2014 8:19:22 AM UTC+3, Puneet B wrote:
  Hi Rafel,
 
 The fex file i have attached in my previous post i did not done any changes. 
 and here my machine driver .
 
 in device.c file just add fallowing line.
 +static struct i2c_board_info __initdata aic3x_i2c_board_info[] = {
 +    {
  +   .type = tlv320aic31xx,
  +   .addr = 0x18,
 +    }
 +};
 void __init sw_pdev_init(void)
 {
     platform_add_devices(sw_pdevs, ARRAY_SIZE(sw_pdevs));
     +    i2c_register_board_info(2, aic3x_i2c_board_info,
   +  ARRAY_SIZE(aic3x_i2c_board_info));
 }
 
 which kernel you are using?.
 
 Regards
 Punith

-- 
You received this message because you are subscribed to the Google Groups 
linux-sunxi group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.