On Saturday, January 3, 2015 4:19:48 PM UTC+6, wingrime wrote:
>
> 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] 
> <javascript:>>:
>
>>
>>
>> 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] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> Hello
It means that i need to move standby's main function to .startup section 
like 
https://groups.google.com/forum/#!searchin/linux-sunxi/fix$20standby/linux-sunxi/sV7e3yZmxpQ/w94o6az6K7cJ?
Standby image from sdk kernel seems to work (Kernel crashes with reboot 
after exiting code in pm.c and i don't have uart now to determine why. 
sunxi kernel seems to have problems with optimisation (in sdk it's -O0) and 
probably with unaligned access, (there was problems with kernel memcpy and 
gcc 4.7+ and it has own memcpy code)

-- 
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