Jlink调试Linux内核,记录ok6410 jlink 命令行调试uboot

1\启动ok6410 进入uboot命令行

2\启动JLinkGDBServer -device ARM11

3\arm-none-eabi-gdb u-boot

初始化脚本

# Connect to the J-Link GDBServer

target remote localhost:2331

# Set JTAG speed to 30 kHz

monitor endian little

monitor speed 30

# Reset the target

monitor reset

monitor sleep 10

#

# CPU core initialization

#

# Set the processor to service mode

monitor reg cpsr = 0xd3

# Config MMU

# Flush v3/v4 cache

monitor cp15 7, 7, 0, 0 = 0x0

monitor cp15 8, 7, 0, 0 = 0x0

# Disable MMU stuff and caches

monitor cp15 1, 0, 0, 0 =0x1002

# Peri port setup

monitor cp15 15, 2, 0, 4 = 0x70000013

# Disable watchdog

monitor MemU32 0x7e004000 = 0x00000000

monitor sleep 10

# Disable interrupt

monitor MemU32 0x71200014 = 0xffffffff

monitor MemU32 0x71300014 = 0xffffffff

monitor MemU32 0x7120000C = 0x00000000

monitor MemU32 0x7130000C = 0x00000000

monitor MemU32 0x71200F00 = 0x00000000

monitor MemU32 0x71300F00 = 0x00000000

# Set clock

monitor MemU32 0x7e00f900 = 0x000080de

monitor MemU32 0x7e00f000 = 0x0000ffff

monitor MemU32 0x7e00f004 = 0x0000ffff

monitor MemU32 0x7e00f008 = 0x0000ffff

monitor MemU32 0x7e00f028 = 0x00300000

monitor MemU32 0x7e00f020 = 0x01043310

monitor MemU32 0x7e00f00C = 0x810a0301

monitor MemU32 0x7e00f010 = 0x810a0301

monitor MemU32 0x7e00f014 = 0x80200102

monitor MemU32 0x7e00f018 = 0x00000000

monitor MemU32 0x7e00f01c = 0x00000007

monitor sleep 1

# UART Init

monitor MemU32 0x7f008000 = 0x00220022

monitor memU32 0x7f008020 = 0x00002222

monitor memU32 0x7f005008 = 0x00000000

monitor memU32 0x7f00500c = 0x00000000

monitor memU32 0x7f005000 = 0x00000003

monitor memU32 0x7f005004 = 0x00000e45

monitor memU32 0x7f005028 = 0x00000033

monitor memU32 0x7f00502c = 0x0000dfdd

monitor memU32 0x7f005020 = 0x4f4f4f4f

monitor memU32 0x7f005020 = 0x4b4b4b4b

# Config Mobile DDR SDRAM

monitor MemU32 0x7e00f120 = 0x0000000d

monitor MemU32 0x7e001004 = 0x00000004

monitor MemU32 0x7e001010 = 0x0000040f

monitor MemU32 0x7e001014 = 0x00000006

monitor MemU32 0x7e001018 = 0x00000001

monitor MemU32 0x7e00101c = 0x00000002

monitor MemU32 0x7e001020 = 0x00000006

monitor MemU32 0x7e001024 = 0x0000000a

monitor MemU32 0x7e001028 = 0x0000000c

monitor MemU32 0x7e00102c = 0x0000010b

monitor MemU32 0x7e001030 = 0x0000000c

monitor MemU32 0x7e001034 = 0x00000002

monitor MemU32 0x7e001038 = 0x00000002

monitor MemU32 0x7e00103c = 0x00000002

monitor MemU32 0x7e001040 = 0x00000002

monitor MemU32 0x7e001044 = 0x00000010

monitor MemU32 0x7e001048 = 0x00000010

monitor MemU32 0x7e00100C = 0x0001001a

monitor MemU32 0x7e00104C = 0x00000b45

monitor MemU32 0x7e001200 = 0x000150f0

monitor MemU32 0x7e001304 = 0x00000000

monitor MemU32 0x7e001008 = 0x000c0000

monitor MemU32 0x7e001008 = 0x00000000

monitor MemU32 0x7e001008 = 0x00040000

monitor MemU32 0x7e001008 = 0x00040000

monitor MemU32 0x7e001008 = 0x000a0000

monitor MemU32 0x7e001008 = 0x00080032

monitor MemU32 0x7e001004 = 0x00000000

# Setup GDB for faster downloads

#set remote memory-write-packet-size 1024

set remote memory-write-packet-size 4096

set remote memory-write-packet-size fixed

然后下面单行输入

monitor speed 6000

b start_armboot

load

continue

上电之后第一次可能无法进入断点,然后退出arm-none-eabi-gdb,重新进入arm-none-eabi-gdb 重新初始化

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值