Перейти к содержанию
    

sasamy

Участник
  • Постов

    1 361
  • Зарегистрирован

  • Посещение

  • Победитель дней

    1

Сообщения, опубликованные sasamy


  1. On 5/30/2024 at 3:12 PM, Метценгерштейн said:

    У вас есть фирменная доска отладочная?

    нет

    On 5/30/2024 at 3:12 PM, Метценгерштейн said:

    Тогда я теряюсь.

    после того как в логе напишет один раз

    Quote

    This sample code demonstrate reset WDT function

    попробуйте приаттачить через USB nuwriter-ом - если он найдет процессор то 100% он ребутнулся, я так и определил что на грабли наступил 🙂 возможно у вас выбор источника загрузки криво реализован, нувотоновские "фирменные" платы я в глаза не видел

  2. On 5/30/2024 at 2:34 PM, Метценгерштейн said:

    Вы с u-boot делаете. Я напрямую. Сказали, что без убута тоже работает. Если SPI флешку грузить. Не через USB.

    Так да или нет?

    Работает всегда и везде - и с убутом и без убута и с флешки и с usb, вот тут логи запись на spi флешку и старт с spi флешки

     

  3. On 5/30/2024 at 1:59 PM, Метценгерштейн said:

    А с вашим wdt.bin
    только один раз

     

    еще раз перепроверил - скачал аттач отсюда

    записал

    $ sudo ./nuwriter -m spi -d NUC976DK62Y.ini -t uboot -a 0x0 -w WDT.bin -v
    [sudo] password for sasa: 
    Write UBOOT ... Passed                                                                                                         
    Verify UBOOT... Passed                                        

    убрал перемычки и запустил с флешки

    Quote

    This sample code demonstrate reset WDT function

    This sample code demonstrate reset WDT function

    This sample code demonstrate reset WDT function

    ...

    из странного у вас я вижу только то что с ваших слов процессор ваш 976 а в настройках nuwriter вы указываете другой процессор 972

  4. On 5/30/2024 at 12:55 PM, sasamy said:

    проверил у себя - загрузил напрямую WDT.bin через nuwriter и сброс не срабатывает как и у вас

    =======================================
    Run firmware code
    CPU: 300MHz, DDR: 150MHz, SYS: 300MHz, PCLK: 75MHz
    Parse NuWriter command line
    =======================================
    ID=0x0000C216  _spi_type =0
    SM ID [0][0][0][0]
    SM ID not support!! [0][0][0][0]
    
    This sample code demonstrate reset WDT function

    так что дело всё же в ините примера - после загрузки через u-boot он начинает работать.

    вот блин - повёлся я на ваши страшилки и сам наступил на старые грабли 🙂 всё там нормально с примером - он рабочий 100%. Если перемычка стоит на загрузку с USB, а она так установлена для загрузки через nuwriter, то после сброса проц просто молчит в консоли - реально он сбрасывается только в консоли это не виднопотому что его никто не грузит
    🙂 достаточно записать пример на носитель и тогда после перезагрузки он снова грузится с него и в консоли это видно

    This sample code demonstrate reset WDT function
    
    This sample code demonstrate reset WDT function
    
    This sample code demonstrate reset WDT function
    
    This sample code demonstrate reset WDT function

     

  5. On 5/30/2024 at 12:36 PM, Метценгерштейн said:

    Чтобы загрузить U-boot, мы здесь его в SPI флеш грузим?

    проверил у себя - загрузил напрямую WDT.bin через nuwriter и сброс не срабатывает как и у вас

    =======================================
    Run firmware code
    CPU: 300MHz, DDR: 150MHz, SYS: 300MHz, PCLK: 75MHz
    Parse NuWriter command line
    =======================================
    ID=0x0000C216  _spi_type =0
    SM ID [0][0][0][0]
    SM ID not support!! [0][0][0][0]
    
    This sample code demonstrate reset WDT function

    так что дело всё же в ините примера - после загрузки через u-boot он начинает работать. Как записать убут должно быть написано в мануале nuwriter, куда вам записывать я не могу сказать - я даже не знаю с какого носителя вы загружаете вашу плату. Чтобы загрузить напрямую в sdram

    1) type: DDR/SRAM

    2) DDR init: NUC976DK62Y.ini

    3) Image execute address: 0xE00000

    вроде так

  6. On 5/30/2024 at 12:13 PM, Метценгерштейн said:

    Я не так выразился. Я пытался понять, что такое u-boot и как его записать, потом сверху прошивку, не затерев его.

    u-boot это загрузчик, он работает в sdram, примеры в sram так что они не пересекаются. Я загружал примеры из u-boot который стартует из spi nor, но его можно стартануть и через nuwriter чтобы не писать ничего на носитель и уже из убута загрузить пример с usb флешки например. Я проверял у себя - убут стартует такой командой из sdram

    Quote

    sudo ./nuwriter -m sdram -d NUC976DK62Y.ini -a 0xE00000 -w u-boot.bin -n

    -a 0xE00000 - это адрес в sdram по которому его нужно записать после инита sdram и передать туда управление, у меня нет винды чтобы проверять как это на винде с графическим интерфейсом сделать

  7. On 5/30/2024 at 11:39 AM, Метценгерштейн said:

    На фирменной плате ваш бинарь имеет аналогичное поведение- один вход в main()

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

    Quote

    sudo ./nuwriter -m sdram -d NUC976DK62Y.ini -a 0xE00000 -w u-boot.bin -n

    на вин аналогично можно запустить

     

    u-boot.bin

  8. On 5/30/2024 at 9:56 AM, mantech said:

    И в чем проблема?

    У вас видимо с чтением написанного 🙂 и пониманием как работает wdt, в примере очевидно нет никаких проблем - сторожевой таймер работает, если не сбросить счётчик wdt имитируя "зависание" процессор перезагружается аппаратно.

     

    Без прерываний пример тоже работает - достаточно запустить wdt и не сбрасывать его счётчик процессор сбрасывается аппаратно. Чем я собирал написано выше, схема платы на которой запускал http://starterkit.ru/html/doc/SK-NUC976.pdf , бинарник в аттаче

     

    #include "nuc970.h"
    #include "sys.h"
    
    int main(void)
    {
        sysDisableCache();
        sysFlushCache(I_D_CACHE);
        sysEnableCache(CACHE_WRITE_BACK);
        sysInitializeUART();
    
        sysprintf("\nThis sample code demonstrate reset WDT function\n");
    
        // Disable write protect mode to control WDT register
        outpw(REG_SYS_REGWPCTL,0x59);
        outpw(REG_SYS_REGWPCTL,0x16);
        outpw(REG_SYS_REGWPCTL,0x88);
        while(!(inpw(REG_SYS_REGWPCTL)&(1<<0)));
    
        outpw(REG_CLK_PCLKEN0, inpw(REG_CLK_PCLKEN0) | 1); // Enable WDT engine clock
    
        sysSetWatchDogTimerInterval(6);     // Set WDT time out interval to 2^16 Twdt = 0.7 sec. Where Twdt = 12MHZ / 128
    //    sysInstallWatchDogTimerISR(HIGH_LEVEL_SENSITIVE | IRQ_LEVEL_1, WDT_IRQHandler);
        sysEnableWatchDogTimerReset();
        sysEnableWatchDogTimer();
    
        while(1);
    }

     

    U-Boot> tftp 0 WDT.bin
    Using emac device
    TFTP from server 192.168.0.2; our IP address is 192.168.0.136
    Filename 'WDT.bin'.
    Load address: 0x0
    Loading: #
    	 243.2 KiB/s
    done
    Bytes transferred = 5732 (1664 hex)
    U-Boot> go 0
    ## Starting application at 0x00000000 ...
    SF: Detected MX25L6405D with page size 64 KiB, total 8 MiB
    
    This sample code demonstrate reset WDT function
    
    
    U-Boot 2013.04-rc2 (May 29 2024 - 22:20:57)
    
    CPU: NUC976
    DRAM:  64 MiB

    WDT.bin

  9. On 5/29/2024 at 4:25 PM, Метценгерштейн said:

    Линукс - это здорово, но я пишу нативно и с WDT так и не решил вопрос- сброса нет.

    закоментировал сброс таймера

    void WDT_IRQHandler(void)
    {
        // Reload WWDT counter and clear WWDT interrupt flag
        // sysClearWatchDogTimerCount();
        sysClearWatchDogTimerInterruptStatus();
        sysprintf("Reset WDT counter\n");
    }

    сброс процессора есть

    U-Boot> usb start
    (Re)start USB...
    USB0:   USB EHCI 0.95
    scanning bus 0 for devices... 2 USB Device(s) found
           scanning usb for storage devices... 1 Storage Device(s) found
    U-Boot> fatload usb 0 0 wdt.bin
    reading wdt.bin
    7468 bytes read in 25 ms (291 KiB/s)
    U-Boot> go 0
    ## Starting application at 0x00000000 ...
    SF: Detected MX25L6405D with page size 64 KiB, total 8 MiB
    
    This sample code demonstrate reset WDT function
    Reset WDT counter
    
    
    U-Boot 2013.04-rc2 (May 29 2024 - 22:20:57)
    
    CPU: NUC976
    DRAM:  64 MiB
    MMC:   mmc: 0

    если собрать пример как есть -  не сбрасывается

    U-Boot> tftp 0 WDT.bin
    Using emac device
    TFTP from server 192.168.0.2; our IP address is 192.168.0.136
    Filename 'WDT.bin'.
    Load address: 0x0
    Loading: #
    	 1.2 MiB/s
    done
    Bytes transferred = 7540 (1d74 hex)
    U-Boot> go 0
    ## Starting application at 0x00000000 ...
    SF: Detected MX25L6405D with page size 64 KiB, total 8 MiB
    
    This sample code demonstrate reset WDT function
    Reset WDT counter
    Reset WDT counter
    Reset WDT counter
    Reset WDT counter
    Reset WDT counter
    Reset WDT counter
    Reset WDT counter

    Собирал эклипсом под Linux - скачал "Eclipse IDE for Embedded C/C++ Developers" распаковал и запустил

    https://www.eclipse.org/downloads/packages/

    компилятор был установлен, помоему это штатный убунтовский

    $ cat /etc/lsb-release 
    DISTRIB_ID=Ubuntu
    DISTRIB_RELEASE=22.04
    DISTRIB_CODENAME=jammy
    DISTRIB_DESCRIPTION="Ubuntu 22.04.4 LTS"

    arm-none-eabi-gcc,  gcc version 10.3.1 20210621 (release) (15:10.3-2021.07-4)

    Если не установлен, установить

    $ sudo apt update 
    $ sudo apt install gcc-arm-none-eabi

    импортировал проект

    File -> Open Projects from File System -> Import source: путь к директории с примером

    нажал build, эклипс сам нашел компилятор и все собрал

     

  10. On 5/28/2024 at 3:51 PM, Samum421 said:

    Проц конечно старый, отстойный. Мы им уже 5 лет не пользуемся.

    Они ядро Linux для него обновили. Всего через 7 лет 🙂

    https://www.nuvoton.com/export/resource-files/en-us--NUC970_Linux_5.10_BSP_User_Manual_EN.pdf

  11. On 5/28/2024 at 6:24 PM, Метценгерштейн said:

    Но вот ресет от вотчдога- нет.

    в linux работает

    Quote

      497 root     watchdog -t 1 /dev/watchdog0
      498 root     ps
    # kill -9 497
    # watchdog watchdog0: nowayout prevents watchdog being stopped!
    watchdog watchdog0: watchdog did not stop!


    U-Boot 2013.04-rc2 (Sep 21 2016 - 14:01:21)

    CPU: NUC976
    DRAM:  64 MiB
    MMC:   mmc: 0
    SF: Detected MX25L6405D with page size 64 KiB, total 8 MiB
    *** Warning - bad CRC, using default environment

     

    https://github.com/OpenNuvoton/NUC970_Linux_Kernel/blob/master/drivers/watchdog/nuc970_wdt.c

  12. On 5/16/2024 at 4:39 PM, mantech said:

    В случае ДДОСа что-ли?

    достаточно сброс до заводских параметров вашему мокротику сделать 🙂

    On 5/16/2024 at 4:39 PM, mantech said:

    как в прочем и у вас с линуксом

    до моего лунукса вам не добраться, а взлом ваших длинков с мокротиками уже на потоке

    https://safe.cnews.ru/news/top/2024-05-06_novyj_botnet_udit_starye

     

  13. On 5/16/2024 at 3:24 PM, mantech said:

    подумайте, чем грозит попытка взлома моей системе? там ничего нет!

    я так и подумал

    On 5/16/2024 at 3:24 PM, mantech said:

    Рут права не получить, удаленного доступа нет, размерность всех принимаемых буферов чекится, переполнить и завесить не получится

    опять лапша какая-то, а как без интернета оплата будет работать ?

  14. On 5/16/2024 at 8:42 AM, mantech said:

    роутер уже сидит на NATом провайдера, и не доступен из инета, только сам может слать туда запросы, каким образом вы его ломать-то думаете

    а у провайдера-то бетонная стена, да ?

    https://курсы-по-ит.рф/articles/mikrotik/95-mikrotik-routeros-6-29-6-42-mikrotik

     

  15. On 5/15/2024 at 11:37 PM, mantech said:

    Мне гораздо важнее, что это стандартное устройство, которое

    вы не контролируете, а уж насколько дырявые длинки это уже легенда - там годами известные проблемы безопасности  не фиксят

  16. On 5/15/2024 at 6:34 PM, mantech said:

    терминалы безнала и кассы приобретает клиент уже сертифицированные везде, где нужно, с гарантией и техподдержкой их производителей, а вот с вашими идеями это будете делать вы

    понятно, у вас только рога и копыта, но я вообще не кассы изначально имел ввиду а сеть которая у вас на линуксе который вам так не нужен но без него ничего не работает 🙂

  17. On 5/15/2024 at 11:05 AM, mantech said:

    Да без проблем, сертифицируйте

    странно тут другое, почему у вас на системах собранных из г..на и палок проблем с сертификацией не возникает

  18. On 5/15/2024 at 9:38 AM, mantech said:

    Похоже вы не в теме просто, ну либо гений, который может сделать устройство безнал оплаты, кассу, контроллер, и пр в одном одноплатнике, ну супер, снимаю шляпу! А теперь идите и засертифицируйте все это, в банке, ОФД и пр... Удачи

    какая-то лапша на уши,  POS терминалы на Linux сертифицируют как-то

    http://mirtorg.ru/catalog/pos_terminaly_monobloki/pos_terminal_atol_strike_linux_debian/

    может в банках, офд и прочих стандарты безопасности строже чем в авиакосмической отрасли и автопроме 🙂

    https://www.sysgo.com/pikeos

  19. On 5/15/2024 at 12:52 AM, Tarbal said:

    Разумеется ext4 буду использовать.

    такие маленькие диски даже утилиты для fat не хотят форматировать, автор драйвера там замутил своё ядерное форматирование, я сомневаюсь что с ext от диска чтото останется кроме служебной информации фс 🙂

  20. On 5/14/2024 at 12:18 PM, sasamy said:

    там не то что поменялось, такой интерфейс был только в ядре 3.х. и его давно нет.

    Драйвер eeprom предоставляет интерфейс nvmem provider

    https://elixir.bootlin.com/linux/v6.8.9/source/drivers/misc/eeprom/at24.c#L776

    так что можно переписать доступ к eeprom через интерфейс nvmem consumer

    https://docs.kernel.org/driver-api/nvmem.html#direct-nvmem-device-based-consumer-apis

     

  21. On 5/14/2024 at 9:55 PM, mantech said:

    Вы вкурсе, что это все разные устройства, а не подпрограммы в одной системе

    у вас да - куча контроллеров обмотанных проводами

    On 5/14/2024 at 9:55 PM, mantech said:

    И причем тут многозадачность?

    при том что всё это реализуют на одной системе на кристалле, может вы не заметили что и процессоры сейчас многоядерные ?

    On 5/14/2024 at 9:55 PM, mantech said:

    Чем это круче, чем мое гуи на g2d

    я ваш гуй на g2d не видел, а говорили вы про неон, так вот неон не даст такой производительности на графике как gpu

    On 5/14/2024 at 9:55 PM, mantech said:

    Вот интересно, почему вы считаете, что только ваше круче и лучше?

    это не моё а объективная реальность - использовать специальные ядра под задачи на одном кристалле/корпусе, и управлять ими из многозадачных ОС, часто даже несколько ОС

  22. On 5/14/2024 at 8:01 PM, mantech said:

    А ваш вращающийся куб для чего? Показать вашу круть на стандартном пример? Я помню, такой пример был в бареметаловском IMX platform SDK, представляете, без линухи!

    для чего стандартные демо без линукса вам понятно а с линуксом сразу ступор наступает ? в линуксе 2d гуй реализуют на 3d gpu - они есть практически на всех системах в отличии от 2d gpu и на неоне на больших экранах вы такое не сделаете, да и на маленьких тоже 🙂

    On 5/14/2024 at 8:01 PM, mantech said:

    Про роутер-то? Я б посмотрел, как вы на вашем любимом линухе, контроллер, онлайн кассу, вендотек и еще устройство сделали б без роутера на одном вашем контроллере

    и в чём проблема, вы видимо не понимаете даже что такое многозадачная ОС

  23. On 5/14/2024 at 7:25 PM, mantech said:

    Вот для баловства как раз ваша фотка, ибо никакой практической ценности в этом нет

    а какая практическая ценность от закрашенного вами квадрата, Малевича импортозаместить ?

    On 5/14/2024 at 2:27 PM, mantech said:

    еслиб еще и там не работало подобное, то нафига тогда вообще эта линуха не нужна

    а потом оказывается что все ваши девайсы на самом деле "а унутре у неё неонка линукс" не работают без роутера на линуксе

×
×
  • Создать...