The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (C/C++)
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

rk30xxnand, pavel_simple (ok), 19-Янв-14, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


5. "rk30xxnand"  +/
Сообщение от pavlinux (ok), 21-Янв-14, 03:52 
> я правильно понимаю что это не вылечить никак кроме как

Дарю :) https://github.com/aloksinha2001/Linux3188/blob/master/drive...

Тут ещо много полезного http://www.linux-rockchip.info/

Ответить | Правка | Наверх | Cообщить модератору

6. "rk30xxnand"  +/
Сообщение от pavel_simple (ok), 21-Янв-14, 07:19 
>> я правильно понимаю что это не вылечить никак кроме как
> Дарю :) https://github.com/aloksinha2001/Linux3188/blob/master/drive...

эта не тот драйвер, хотя из этого репо не тестил -- посмотрю.

> Тут ещо много полезного http://www.linux-rockchip.info/

был, да. ещё ~ 15 репо на github облазил.

Ответить | Правка | Наверх | Cообщить модератору

7. "rk30xxnand"  +/
Сообщение от pavlinux (ok), 21-Янв-14, 15:35 
>>> я правильно понимаю что это не вылечить никак кроме как
>> Дарю :) https://github.com/aloksinha2001/Linux3188/blob/master/drive...
> эта не тот драйвер, хотя из этого репо не тестил -- посмотрю.

# modinfo ./rk30xxnand.ko покаж?
Там в комменте 29 API должно быть.

---


modinfo ./rk30xxnand.ko
filename:       ./rk30xxnand.ko
description:    FTL layer for SLC and MlC nand flash on RK29xx SDK boards
author:         ZYF <zyf@rock-chips.com>
license:        
alias:          rk29xxnand
depends:        
vermagic:       3.0.8+ SMP preempt mod_unload ARMv7

Дривер, что по ссылке - GPL_ный, так что, вполне могли чего-нить и урезать.  

Ответить | Правка | Наверх | Cообщить модератору

8. "rk30xxnand"  +/
Сообщение от pavel_simple (ok), 21-Янв-14, 16:44 
>[оверквотинг удален]
> description:    FTL layer for SLC and MlC nand flash
> on RK29xx SDK boards
> author:         ZYF <zyf@rock-chips.com>
> license:
> alias:          rk29xxnand
> depends:
> vermagic:       3.0.8+ SMP preempt mod_unload ARMv7
>
> Дривер, что по ссылке - GPL_ный, так что, вполне могли чего-нить и
> урезать.

filename:       /lib/modules/3.0.36+/misc/rk30xxnand-3.0.36.ko
description:    FTL layer for SLC and MlC nand flash on RK29xx SDK boards
author:         ZYF <zyf@rock-chips.com>
license:        
alias:          rk29xxnand
depends:        
vermagic:       3.0.36+ SMP preempt mod_unload ARMv7


я проверю palinux, спасибо.

а вообще драйвером таким конечно страшно пользоваться -- ниже dmesg при загрузке оного.

[164114.870117] gp_rknand_info = : 0xf0d86000
[164114.870344] request IRQ_NANDC irq , ret=0.........
[164114.870475] FlashCopyProgBuf1=0xc190c000
[164114.870505] ATime: 40 ns AHB: 148 timming: 1081
[164114.870521] No.1 FLASH INFO:45 d7 84 93 72
[164114.871031] ATime: 32 ns AHB: 148 timming: 1061
[164114.871274] ATime: 32 ns AHB: 148 timming: 1061
[164114.871285] randomizer = 1 , EccBits = 28 pSpec->pReadRetrial = bf161b78
[164114.994411] FTL INFO:Version = 438,Date = 20121229
[164114.994422] totalLogicBlkRaw  = 874
[164114.994460] gBootMedia = 0 gSdmmcFwPartOffset =0!
[164114.994469] rknand_buffer.c version: 4.38 20121130!
[164114.994643] add_rknand_device:
[164114.994669] 5 cmdlinepart partitions found on MTD device rk29xxnand
[164114.994700] num_partitions = 5
[164114.994709] Creating 5 MTD partitions on "rk29xxnand":
[164114.994721] 0x000000000000-0x000000400000 : "parameter"
[164114.998907] mtd: Giving out device 0 to parameter
[164115.001478] 0x000000400000-0x000000800000 : "misc"
[164115.003730] MTD_open
[164115.005618] mtd: Giving out device 1 to misc
[164115.007016] 0x000000800000-0x000001000000 : "kernel"
[164115.008003] mtd: Giving out device 2 to kernel
[164115.011433] 0x000001000000-0x000002000000 : "boot"
[164115.012181] mtd: Giving out device 3 to boot
[164115.017071] 0x000002000000-0x0000da800000 : "recovery"
[164115.021303] MTD_open
[164115.021758] mtd: Giving out device 4 to recovery
[164115.025625] MTD_open
[164115.027715] MTD_open
[164115.027748] MTD_open
[164115.028343] [<c0bb4ef0>] (unwind_backtrace+0x0/0xe0) from [<bf166884>] (GetRemap+0x174/0x1e4 [rk30xxnand_ko])
[164115.028447] [<bf166884>] (GetRemap+0x174/0x1e4 [rk30xxnand_ko]) from [<bf166b50>] (FtlSetSysProtAddr+0x28/0x2f4 [rk30xxnand_ko])
[164115.028538] [<bf166b50>] (FtlSetSysProtAddr+0x28/0x2f4 [rk30xxnand_ko]) from [<bf16c928>] (rk29nand_probe+0x194/0x210 [rk30xxnand_ko])
[164115.028598] [<bf16c928>] (rk29nand_probe+0x194/0x210 [rk30xxnand_ko]) from [<c0ba9604>] (do_one_initcall+0x90/0x160)
[164115.028623] [<c0ba9604>] (do_one_initcall+0x90/0x160) from [<c0c06d04>] (sys_init_module+0x15b8/0x171c)
[164115.028644] [<c0c06d04>] (sys_init_module+0x15b8/0x171c) from [<c0baeac0>] (ret_fast_syscall+0x0/0x30)
[164115.028705] [<c0bb4ef0>] (unwind_backtrace+0x0/0xe0) from [<bf166884>] (GetRemap+0x174/0x1e4 [rk30xxnand_ko])
[164115.028788] [<bf166884>] (GetRemap+0x174/0x1e4 [rk30xxnand_ko]) from [<bf166b80>] (FtlSetSysProtAddr+0x58/0x2f4 [rk30xxnand_ko])
[164115.028870] [<bf166b80>] (FtlSetSysProtAddr+0x58/0x2f4 [rk30xxnand_ko]) from [<bf16c928>] (rk29nand_probe+0x194/0x210 [rk30xxnand_ko])
[164115.028932] [<bf16c928>] (rk29nand_probe+0x194/0x210 [rk30xxnand_ko]) from [<c0ba9604>] (do_one_initcall+0x90/0x160)
[164115.028954] [<c0ba9604>] (do_one_initcall+0x90/0x160) from [<c0c06d04>] (sys_init_module+0x15b8/0x171c)
[164115.028977] [<c0c06d04>] (sys_init_module+0x15b8/0x171c) from [<c0baeac0>] (ret_fast_syscall+0x0/0x30)
[164115.028996] startBlk = 1  sysProtAddr = 0
[164115.030583] MTD_ioctl
[164115.030998] MTD_close
[164115.031345] MTD_ioctl
[164115.031841] MTD_ioctl
[164115.032326] MTD_close
[164115.032953] MTD_close
[164115.033683] MTD_ioctl
[164115.035316] MTD_ioctl
[164115.035728] MTD_close
[164115.035947] MTD_close

даже чего-то читает, причём судя по всему правильно
# cat /dev/mtdblock0 | md5sum
498f8d852d8371d8ed9e833cc6e147b5  -
# cat /dev/mtdblock0 | md5sum
498f8d852d8371d8ed9e833cc6e147b5  -

Ответить | Правка | Наверх | Cообщить модератору

9. "rk30xxnand"  +/
Сообщение от pavlinux (ok), 21-Янв-14, 17:10 
> а вообще драйвером таким конечно страшно пользоваться -- ниже dmesg при загрузке
> оного.

Похоже у тя отладочная инфа включена, да и CONFIG_PRINTK_TIME можно выкинуть, quiet прописать.

---
> даже чего-то читает, причём судя по всему правильно

Вот они, 5 разделов

[164114.994669] 5 cmdlinepart partitions found on MTD device rk29xxnand
[164114.994700] num_partitions = 5
[164114.994709] Creating 5 MTD partitions on "rk29xxnand":
[164114.994721] 0x000000000000-0x000000400000 : "parameter"
[164114.998907] mtd: Giving out device 0 to parameter
[164115.001478] 0x000000400000-0x000000800000 : "misc"
[164115.003730] MTD_open
[164115.005618] mtd: Giving out device 1 to misc
[164115.007016] 0x000000800000-0x000001000000 : "kernel"
[164115.008003] mtd: Giving out device 2 to kernel
[164115.011433] 0x000001000000-0x000002000000 : "boot"
[164115.012181] mtd: Giving out device 3 to boot
[164115.017071] 0x000002000000-0x0000da800000 : "recovery"

Ответить | Правка | Наверх | Cообщить модератору

10. "rk30xxnand"  +/
Сообщение от pavlinux (ok), 21-Янв-14, 17:19 
> Похоже у тя отладочная инфа включена

А.... вон глядь, в начале дривера


#if 1
   #define FLASH_DEBUG(x...) do { printk(x); } while(0)
#else
   #define FLASH_DEBUG(s,x...)
#endif

Собственно заменяется на

#if 0

или что-нить феншуйное:

#ifdef CONFIG_DEBUG_KERNEL

А еще круче в drivers/mtd/nand/Kconfig прописать после раздела "config MTD_NAND_RK29"


config MTD_NAND_RK29_DEBUG
        bool "Debugging NAND Flash RK29XX"
        depends on MTD_NAND_RK29
        help
          This enables the printk info from the RK29XX NAND

А в дривер вписать


#ifdef CONFIG_MTD_NAND_RK29_DEBUG
   #define FLASH_DEBUG(x...) do { printk(x); } while(0)
#else
   #define FLASH_DEBUG(s,x...)
#endif

Ответить | Правка | Наверх | Cообщить модератору

11. "rk30xxnand"  +/
Сообщение от skb7 (ok), 22-Янв-14, 00:27 
А почему не использовать dev_dbg()/pr_debug(), а потом включать нужный отладочный функционал через debugfs? Как это работает описано тут: http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.g...

На этапе разработки удобно в таком случае просто сделать в самом верху драйвера:


#define DEBUG


и все dev_dbg()/pr_debug() будут работать как printk(). А когда драйвер уже работает -- удаляем эту строчку и пользователь сможет сам включать через debugfs, что ему нужно.

Ответить | Правка | Наверх | Cообщить модератору

13. "rk30xxnand"  +/
Сообщение от pavlinux (ok), 22-Янв-14, 00:50 
> А почему не использовать

Github такой большой, форкай всех и исправляй!

Ответить | Правка | Наверх | Cообщить модератору

15. "rk30xxnand"  +/
Сообщение от skb7 (ok), 22-Янв-14, 01:29 
>> А почему не использовать
> форкай всех

Какой искрометный юмор! Долго придумывали? :)

Ответить | Правка | Наверх | Cообщить модератору

16. "rk30xxnand"  +/
Сообщение от pavel_simple (ok), 22-Янв-14, 07:21 
>>> А почему не использовать
>> форкай всех
> Какой искрометный юмор! Долго придумывали? :)

Парни, прошу не портить друг-другу настроение и не пить кровь. Я только начал было радоваться что хоть кто-то на отупнете начал понимать ядерную физику окромя сетевой части.

Ответить | Правка | Наверх | Cообщить модератору

17. "rk30xxnand"  +/
Сообщение от pavlinux (ok), 22-Янв-14, 14:36 
>>>> А почему не использовать
>>> форкай всех
>> Какой искрометный юмор! Долго придумывали? :)
> Парни, прошу не портить друг-другу настроение и не пить кровь. Я только
> начал было радоваться что хоть кто-то на отупнете начал понимать ядерную
> физику окромя сетевой части.

Спокуха, мы любя.

Ответить | Правка | Наверх | Cообщить модератору

18. "rk30xxnand"  +/
Сообщение от skb7 (ok), 22-Янв-14, 17:05 
>>>> А почему не использовать
>>> форкай всех
>> Какой искрометный юмор! Долго придумывали? :)
> Парни, прошу не портить друг-другу настроение и не пить кровь. Я только
> начал было радоваться что хоть кто-то на отупнете начал понимать ядерную
> физику окромя сетевой части.

Да мы прикалываемся, не принимайте близко к сердцу ;)

Ответить | Правка | К родителю #16 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру