OSDN Git Service

2013.10.24
[uclinux-h8/uClinux-dist.git] / tools / misc / pfw-wireless.gdb
1 #
2 #       PFW-WIRELESS - Atheros AR2317 target gdbinit script.
3 #
4 #       (C) Copyright 2007-2008, Greg Ungerer <gerg@snapgear.com>
5 #
6
7 define uart-init
8 # set 115200,8,n,1
9 monitor char 0x1110000f = 0x83
10 monitor char 0x11100003 = 0x15
11 monitor char 0x11100007 = 0x00
12 monitor char 0x1110000f = 0x03
13 end
14
15 define uart-print
16 monitor char 0x11100003 = $arg0
17 end
18
19 define uart-loop
20 while (1)
21         monitor char 0x11100003 = 0x55
22 end
23 end
24
25
26 #
27 #       RAM setup!
28 #
29
30 define mem-init
31 # set MEMCTL_SCONR for xxx
32 monitor long 0x10300000 = 0x00001168
33 # set MEMCTL_STMG0R for xxx
34 monitor long 0x10300004 = 0x02265696
35 # set MEMCTL_STMG1R for xxx
36 monitor long 0x10300008 = 0x00070008
37 # set MEMCTL_SCTLR for xxx
38 monitor long 0x1030000c = 0x00003088
39 # set MEMCTL_SREFR for xxx
40 monitor long 0x10300010 = 0x00000410
41 end
42
43
44 #
45 #       Set of flash programming macros for SPI flash
46 #
47
48 define spi-write-enable
49 monitor long 0x1f000000 = 1
50 monitor long 0x1f000008 = 0x70000
51 monitor long 0x1f000008 = 0x60000
52 spi-bit-banger 6
53 monitor long 0x1f000008 = 0x70000
54 monitor long 0x1f000000 = 0
55 end
56
57
58 define spi-write-page
59 set $addr = $arg0
60 set $addrend = $addr + $arg1
61
62 spi-write-enable
63 monitor long 0x1f000000 = 1
64 monitor long 0x1f000008 = 0x70000
65 monitor long 0x1f000008 = 0x60000
66 spi-bit-banger 2
67 spi-send-addr $addr
68
69 while ($addr < $addrend)
70         set $val = *((unsigned char *) $addr)
71         spi-bit-banger $val
72         set $addr = $addr + 1
73 end
74
75 monitor long 0x1f000008 = 0x70000
76 monitor long 0x1f000000 = 0
77 end
78
79
80 define spi-erase-sector
81 set $addr = $arg0
82 spi-write-enable
83 monitor long 0x1f000000 = 1
84 monitor long 0x1f000008 = 0x70000
85 monitor long 0x1f000008 = 0x60000
86 spi-bit-banger 0xd8
87 spi-send-addr $addr
88 monitor long 0x1f000008 = 0x70000
89 monitor long 0x1f000000 = 0
90 end
91
92
93 define spi-read-id
94 monitor long 0x11300004 = 0x000000ab
95 monitor long 0x11300008 = 0x00000000
96 monitor long 0x11300000 = 0x00000114
97 monitor long 0x11300000
98 monitor long 0x11300008
99 end
100
101
102 #
103 #       Complete flash programming macros.
104 #
105 define flash-program
106 uart-init
107 #mem-init
108 #load /tmp/boot.elf
109 #load tools/bin/ar2317-flasher
110 load /tmp/flasher
111 set $pc = 0
112
113 end
114
115
116 #
117 #       Real startup now...
118 #
119 set output-radix 16
120 set input-radix 16
121
122 target remote localhost:8888
123
124 set endian big
125 monitor endian big
126 #set endian little
127 #monitor endian little
128
129 #display/i $pc
130