It maybe that issue with linker agian that I have seen in a10.

linux-sunxi git tree have my fix for a10 and you can find it , generaly
speaking,
standby image is broken due link map




2015-01-03 15:16 GMT+05:00 Toroshin Dmitry <[email protected]>:

>
>
> On Friday, October 10, 2014 4:33:51 AM UTC+7, Siarhei Siamashka wrote:
>>
>> On Wed, 10 Sep 2014 03:52:38 -0700 (PDT)
>> Toroshin Dmitry <[email protected]> wrote:
>>
>> > I have Wexler.tab 7200 with broken standby mode in sunxi kernel (in aw
>> > kernel suspend works).
>> > I have tried to debug standby code using RTC to trace it (i have no
>> access
>> > to UART now), it hangs after this lines in dram.c:
>> > reg_val = mctl_read_w(SDR_DCR);
>> > reg_val &= ~(0x1fU<<27);
>> > reg_val |= 0x12U<<27;
>> > mctl_write_w(SDR_DCR, reg_val);
>> > in DRAMC_enter_selfrefresh (before suspend)
>> > I tried to replace standby binary with other, compiled from sdk. device
>> now
>> > can  enter standby mode, but kernel crashes (reboot) after resume.
>> > Does standby mode (not super standby) work on other A20 devices?
>>
>> Now I also have an Allwinner A20 tablet and can share this fun.
>>
>> I'm not entirely sure what is the actual difference between the standby
>> and super standby mode. However I think that the latter is related to
>> the following bit of code, which dot recently purged from the mainline
>> u-boot:
>>     http://git.denx.de/?p=u-boot.git;a=commitdiff;h=
>> f2577967738f923571b7156ad46ef91d9fa8d9f8
>>
>> Note that this code was already mutilated in u-boot-sunxi, so I doubt
>> that it was in a usable shape anyway.
>>
>> My understanding of this super-standby stuff is that the SoC gets
>> powered off, while DRAM remains in self-refresh mode. And after we
>> turn the device on again, the bootloader gets executed just like on any
>> normal boot and checks the bit in the dram->ppwrsctl register. If the
>> bootloader can see that the DRAM is in self-refresh mode, then we need
>> to bring the DRAM back out of the self-refresh mode and the execution
>> needs to be resumed somehow. This requires some mutual understanding
>> between the kernel and the bootloader.
>>
>> As a test, you can insert some bootable SD card into the SD slot (for
>> example, the FEL SD card). After that, in Android system switch the
>> tablet into the 'airplane mode' (to turn off WLAN) and try to blank
>> the screen. It is easy to see that the tablet does not wake up in
>> Android anymore, but tries to boot from the SD card instead. This
>> does not end up well.
>>
>> Going forward, we eventually need to have standby and/or suspend-to-RAM
>> support. Can you provide more details about your use case? Are you
>> running a GNU/Linux system? What kind of kernel is used (sunxi-3.4 or
>> mainline)? How are you switching the tablet to the standby mode?
>>
>> --
>> Best regards,
>> Siarhei Siamashka
>>
> Hello
> It means that super standby mode is not broken on android kernel.
> Now i'm running sunxi-3.4 kernel with mainline u-boot, but it hangs on
> standby similar to u-boot-sunxi. I'm using normal standby (because super
> standby was removed from sunxi-3.4).
> I'm using sdk 3.4 kernel with GNU (Gentoo) system too (after i erased nand
> with bad driver, i have no android).
> Super standby seems does not work in sdk 3.4 kernel. But it's difficult to
> me to work with sdk kernel because it does not work when built with gcc-4.7
> or 4.8 on device and it has strange disp driver.
> II use echo mem >/sys/power/state to enter standby mode.
> Super standby is almost inuseful without working dram self-refresh, but it
> can be used to add hibernation (suspend to disk) support to sunxi (because
> it can save and restore cpu state).
> Does anybody try to enable self-refresh to standby or reclock dram on
> mainline?
> Regards,
> Toroshin Dmitry
>
> --
> 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 [email protected].
> 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 [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to