V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Byter
V2EX  ›  嵌入式开发

想给和家亲摄像头刷 OpenIPC,求助 u-boot 相关问题

  •  
  •   Byter · 66 天前 · 650 次点击
    这是一个创建于 66 天前的主题,其中的信息可能已经有所发展或是发生改变。

    纯小白,不太了解这方面,让大家见笑了。

    摄像头是岭雁科技的 LYC40-PTZ ,经拆机确认 SoC 是君正的 T31N ,CMOS 是 sc2335 ,应该可以支持 OpenIPC ,所以用 ttl 连接后按照网上一些教程照葫芦画瓢准备进 u-boot 刷机。

    启动日志如下:

    U-Boot SPL 2013.07 (Nov 23 2020 - 17:19:58)
    Timer init
    CLK stop
    PLL init
    pll_init:366
    pll_cfg.pdiv = 10, pll_cfg.h2div = 5, pll_cfg.h0div = 5, pll_cfg.cdiv = 1, pll_cfg.l2div = 2
    nf=118 nr = 1 od0 = 1 od1 = 2
    cppcr is 07605100
    CPM_CPAPCR 0750510d
    nf=100 nr = 1 od0 = 1 od1 = 2
    cppcr is 06405100
    CPM_CPMPCR 0640510d
    nf=100 nr = 1 od0 = 1 od1 = 2
    cppcr is 06405100
    CPM_CPVPCR 0640510d
    cppcr 0x9a7b5510
    apll_freq 1404000000
    mpll_freq 1200000000
    vpll_freq = 1200000000
    ddr sel mpll, cpu sel apll
    ddrfreq 600000000
    cclk  1404000000
    l2clk 702000000
    h0clk 240000000
    h2clk 240000000
    pclk  120000000
    CLK init
    SDRAM init
    sdram init start
    ddr_inno_phy_init ..!
    phy reg = 0x00000007, CL = 0x00000007
    ddr_inno_phy_init ..! 11:  00000004
    ddr_inno_phy_init ..! 22:  00000006
    ddr_inno_phy_init ..! 33:  00000006
    REG_DDR_LMR: 00000210
    REG_DDR_LMR: 00000310
    REG_DDR_LMR: 00000110
    REG_DDR_LMR, MR0: 00f73011
    T31_0x5: 00000007
    T31_0x15: 0000000c
    T31_0x4: 00000000
    T31_0x14: 00000002
    INNO_TRAINING_CTRL 1: 00000000
    INNO_TRAINING_CTRL 2: 000000a1
    T31_cc: 00000003
    INNO_TRAINING_CTRL 3: 000000a0
    T31_118: 0000003c
    T31_158: 0000003c
    T31_190: 0000001f
    T31_194: 0000001e
    jz-04 :  0x00000051
    jz-08 :  0x000000a0
    jz-28 :  0x00000024
    DDR PHY init OK
    INNO_DQ_WIDTH   :00000003
    INNO_PLL_FBDIV  :00000014
    INNO_PLL_PDIV   :00000005
    INNO_MEM_CFG    :00000051
    INNO_PLL_CTRL   :00000018
    INNO_CHANNEL_EN :0000000d
    INNO_CWL        :00000006
    INNO_CL         :00000007
    DDR Controller init
    DDRC_STATUS         0x80000001
    DDRC_CFG            0x0a288a40
    DDRC_CTRL           0x0000011c
    DDRC_LMR            0x00400008
    DDRC_DLP            0x00000000
    DDRC_TIMING1        0x040e0806
    DDRC_TIMING2        0x02170707
    DDRC_TIMING3        0x2007051e
    DDRC_TIMING4        0x1a240031
    DDRC_TIMING5        0xff060405
    DDRC_TIMING6        0x32170505
    DDRC_REFCNT         0x00f2e701
    DDRC_MMAP0          0x000020fc
    DDRC_MMAP1          0x00002400
    DDRC_REMAP1         0x03020d0c
    DDRC_REMAP2         0x07060504
    DDRC_REMAP3         0x0b0a0908
    DDRC_REMAP4         0x0f0e0100
    DDRC_REMAP5         0x13121110
    DDRC_AUTOSR_EN      0x00000000
    sdram init finished
    SDRAM init ok
    board_init_r
    image entry point: 0x80100000
    
    
    U-Boot 2013.07 (Nov 23 2020 - 17:19:58)
    
    Board: ISVP (Ingenic XBurst T31 SoC)
    DRAM:  64 MiB
    Top of RAM usable for U-Boot at: 84000000
    Reserving 445k for U-Boot at: 83f90000
    Reserving 32832k for malloc() at: 81f80000
    Reserving 32 Bytes for Board Info at: 81f7ffe0
    Reserving 124 Bytes for Global Data at: 81f7ff64
    Reserving 128k for boot params() at: 81f5ff64
    Stack Pointer at: 81f5ff48
    Now running in RAM - U-Boot at: 83f90000
    MMC:   msc: 0
    the manufacturer 1c
    SF: Detected EN25QH128A
    
    In:    serial
    Out:   serial
    Err:   serial
    Net:   ====>phy 0:0x0-0x0 found
    SPEED:0, DUPLEX:0
    Jz4775-9161
    upgradeFirmware 20200921120000 20200921120000
    upgradeFirmware 20200921120000 20200921120000
    upgradeFirmware 013 013
    sdupdate - auto upgrade file from mmc to flash
    
    Usage:
    sdupdate LOAD_ID ADDR_START ADDR_END
    LOAD_ID: 0-->u-boot
             1-->kernel
             2-->rootfs
             3-->demo.bin
    ex:
            sdupdate   (update all)
    or
            sdupdate 0 0x0 0x40000
    Enter key to stop autoboot in 3 seconds
    the manufacturer 1c
    SF: Detected EN25QH128A
    
    --->probe spend 4 ms
    SF: 2621440 bytes @ 0x50000 Read: OK
    --->read spend 842 ms
    ## Booting kernel from Legacy Image at 80600000 ...
       Image Name:   Linux-3.10.14__isvp_swan_1.0__
       Image Type:   MIPS Linux Kernel Image (lzma compressed)
       Data Size:    1727656 Bytes = 1.6 MiB
       Load Address: 80010000
       Entry Point:  803c7810
       Verifying Checksum ... OK
       Uncompressing Kernel Image ... OK
    
    Starting kernel ...
    

    现在的问题是,根据提示“Enter key to stop autoboot in 3 seconds”中断启动不成功,不管按什么键都会照常启动内核。ttl 连接确认没问题,是可以正常输入的。在内核启动开始跑 log 后按键会有一个登陆提示 Ingenic-uc1_1 login: 然后继续跑码。

    我的疑惑是:

    • 看类似的教程,即使有 u-boot 密码,也是在按任意键停止启动后不跑码了才出登陆提示,那我这边出现的登陆提示到底是进入 u-boot 的登陆,还是其他的?
    • 为什么无法中断启动,是设置了特殊的按键吗?
    • 根据日志内容提示可以用 sdupdate 命令更新 u-boot ,假如我无法找到正确的密码,我可以直接用该命令覆盖一个新的 u-boot 上去吗?

    希望各位大佬解惑。

    hanguofu
        1
    hanguofu  
       65 天前
    楼主显然对 LINUX 系统不太了解,想刷机恐怕有点难度:
    看类似的教程,即使有 u-boot 密码,也是在按任意键停止启动后不跑码了才出登陆提示,那我这边出现的登陆提示到底是进入 u-boot 的登陆,还是其他的? -------> 这个”在内核启动开始跑 log 后按键会有一个登陆提示 Ingenic-uc1_1 login:“是内核运行后的用户登录,和 u-boot 密码、u-boot 登录完全是两码事。
    为什么无法中断启动,是设置了特殊的按键吗?---> 这个如果你确认这个 串口是能正常输入字符的话,那就是因为厂家对 uboot 的代码进行了修改,屏蔽了来自串口的内容。
    根据日志内容提示可以用 sdupdate 命令更新 u-boot ,假如我无法找到正确的密码,我可以直接用该命令覆盖一个新的 u-boot 上去吗?------> 最重要的是要有厂家的工具和配套的 u-boot 。
    Byter
        2
    Byter  
    OP
       65 天前
    @hanguofu 感谢解答,确实是一知半解,见笑了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2980 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 14:16 · PVG 22:16 · LAX 07:16 · JFK 10:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.