[Linux-Xtensa] Running linux in xtensa simulator

Piet Delaney pdelaney at tensilica.com
Thu Dec 8 21:20:45 PST 2011


Skipped content of type multipart/alternative-------------- next part --------------
GNU DDD 3.3.12 (i686-pc-linux-gnu), by Dorothea Lütkehaus and Andreas Zeller.
Copyright © 1995-1999 Technische Universität Braunschweig, Germany.
Copyright © 1999-2001 Universität Passau, Germany.
Copyright © 2001 Universität des Saarlandes, Germany.
Copyright © 2001-2004 Free Software Foundation, Inc.
(gdb) source .xt-gdbinit
"Using MMU, assumne V2 MMU Mappings
""add-symbol-file vmlinux 0xd0003000
"add symbol table from file "vmlinux" at
	.text_addr = 0xd0003000
"target sim --turbo --memlimit=128
"Connected to the simulator.
Breakpoint 1 at 0xfe000104: file arch/xtensa/boot/boot-elf/bootstrap.S, line 93.
"Starting Simulation
"Breakpoint 2 at 0xfe000000: file arch/xtensa/boot/boot-elf/bootstrap.S, line 44.
Breakpoint 3 at 0xd0003003: file arch/xtensa/kernel/head.S, line 66.
Breakpoint 4 at 0xd000303a: file arch/xtensa/kernel/head.S, line 190.
".xt-gdbinit: Done
"(gdb) run
Starting the ISS simulator.
Switching to remote protocol
Remote debugging using localhost:54983

Breakpoint 1, set_breakpoints () at arch/xtensa/boot/boot-elf/bootstrap.S:94
"
""================================ set_breakpoint: Beginning ==================================
""
""
""Skip Free of Init Memory; might have breakpoints in init code.
""
""Try Enableing ddd graphs of displays of global highmem arrays; ... 
""... Bug in ddd makes it necessary to cut-N-past this into the ddd console.
"graph display pkmap_page_dirgraph display *kmap_ptegraph display pkmap_countgraph display last_pkmap_nr"
""Non-MX/UP/Non-SMP Processor:  No irq_init BreakPoints to be set
""
""NOT Setting 'out_of_memory' Breakpoints
""
""Not doing Stress Test; Setting Additional Breakpoints
"Breakpoint 5 at 0xd0008c8f: file arch/xtensa/kernel/traps.c, line 610.
Breakpoint 6 at 0xd00089de: file arch/xtensa/kernel/traps.c, line 293.
Breakpoint 7 at 0xd0008dac: file arch/xtensa/kernel/traps.c, line 637.
"
""NOT Setting Open Ethernet Breakpoints
""
""NOT Setting Initcall Breakpoints
""
""NOT Setting Module Breakpoints
""
""NOT Setting Common HiFi-2 Sound Driver Breakpoints
""
""Setting Misc Breakpoints
"Function "break_on" not defined.
Breakpoint 8 at 0xd0008dac: file arch/xtensa/kernel/traps.c, line 637.
Breakpoint 9 at 0xd0016aa9: file kernel/panic.c, line 72.
Breakpoint 10 at 0xd0016e69: file kernel/panic.c, line 331.
Breakpoint 11 at 0xd004df85: file mm/page_alloc.c, line 234.
Breakpoint 12 at 0xd000a48b: file arch/xtensa/mm/fault.c, line 293.
Function "update_mmu_cache_bp" not defined.
Breakpoint 13 at 0xd0004a03: file arch/xtensa/kernel/irq.c, line 43.
Breakpoint 14 at 0xd0008a52: file arch/xtensa/kernel/traps.c, line 341.
Breakpoint 15 at 0xd0008996: file arch/xtensa/kernel/traps.c, line 258.
Breakpoint 16 at 0xd00088ff: file arch/xtensa/kernel/traps.c, line 217.
Breakpoint 17 at 0xd00088a9: file arch/xtensa/kernel/traps.c, line 200.
"
""=============================== set_breakpoint: Completed ======================================
""
"type "set_commands""$mess_with_context_asid:"$1 = 0x0
Num     Type           Disp Enb Address    What
2       breakpoint     keep y   0xfe000000 arch/xtensa/boot/boot-elf/bootstrap.S:44
3       breakpoint     keep y   0xd0003003 arch/xtensa/kernel/head.S:66
4       breakpoint     keep y   0xd000303a arch/xtensa/kernel/head.S:190
5       breakpoint     keep y   0xd0008c8f in dump_stack at arch/xtensa/kernel/traps.c:610
6       breakpoint     keep y   0xd00089de in do_unaligned_user at arch/xtensa/kernel/traps.c:293
7       breakpoint     keep y   0xd0008dac in die at arch/xtensa/kernel/traps.c:637
8       breakpoint     keep y   0xd0008dac in die at arch/xtensa/kernel/traps.c:637
9       breakpoint     keep y   0xd0016aa9 in panic at kernel/panic.c:72
10      breakpoint     keep y   0xd0016e69 in warn_slowpath at kernel/panic.c:331
11      breakpoint     keep y   0xd004df85 in bad_page at mm/page_alloc.c:234
12      breakpoint     keep y   0xd000a48b in bad_page_fault_bp at arch/xtensa/mm/fault.c:293
13      breakpoint     keep y   0xd0004a03 in IRQ_likely_stack_overflow_breakpoint at arch/xtensa/kernel/irq.c:43
14      breakpoint     keep y   0xd0008a52 in do_debug at arch/xtensa/kernel/traps.c:341
15      breakpoint     keep y   0xd0008996 in do_illegal_instruction at arch/xtensa/kernel/traps.c:258
16      breakpoint     keep y   0xd00088ff in do_multihit at arch/xtensa/kernel/traps.c:217
17      breakpoint     keep y   0xd00088a9 in do_unhandled at arch/xtensa/kernel/traps.c:200
(gdb) c

Breakpoint 3, _start () at arch/xtensa/kernel/head.S:68
(gdb) c

Breakpoint 4, _startup () at arch/xtensa/kernel/head.S:191
(gdb) c
Linux version 2.6.29-smp (pdelaney at pdelaney_fc9) (Thread model: single) #78 Thu Dec 8 20:28:55 PST 2011
Kernel command line: console=ttyS0,38400 root=/dev/simdisk0
console [ttyS0] enabled
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Calibrating delay loop... 99.12 BogoMIPS (lpj=495616)
net_namespace: 296 bytes
NET: Registered protocol family 16
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
NET: Registered protocol family 1
msgmni has been set to 247
alg: No test for md5 (md5-generic)
alg: No test for des (des-generic)
alg: No test for des3_ede (des3_ede-generic)
alg: No test for stdrng (krng)
io scheduler noop registered (default)
mice: PS/2 mouse device common for all mice
TCP cubic registered
NET: Registered protocol family 17
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
Starting portmap: done
Initializing random number generator... done.
Starting network...
ip: RTNETLINK answers: File exists
Starting sshd: OK
Starting NFS statd: done
Starting NFS services: done
Starting NFS daemon: done
Starting NFS mountd: done
Starting domain name daemon: namedwarning: `named' uses 32-bit capabilities (legacy support in use)
failed



Welcome to your custom Xtensa dc233c_ca Development System
(none) login: 
-------------- next part --------------
GNU DDD 3.3.12 (i686-pc-linux-gnu), by Dorothea Lütkehaus and Andreas Zeller.
Copyright © 1995-1999 Technische Universität Braunschweig, Germany.
Copyright © 1999-2001 Universität Passau, Germany.
Copyright © 2001 Universität des Saarlandes, Germany.
Copyright © 2001-2004 Free Software Foundation, Inc.
(gdb) source .xt-gdbinit
"Using MMU, assumne V2 MMU Mappings
""add-symbol-file vmlinux 0xd0003000
"add symbol table from file "vmlinux" at
	.text_addr = 0xd0003000
"target sim --memlimit=128
"Connected to the simulator.
Breakpoint 1 at 0xfe000104: file arch/xtensa/boot/boot-elf/bootstrap.S, line 93.
"Starting Simulation
"Breakpoint 2 at 0xfe000000: file arch/xtensa/boot/boot-elf/bootstrap.S, line 44.
Breakpoint 3 at 0xd0003003: file arch/xtensa/kernel/head.S, line 66.
Breakpoint 4 at 0xd000303a: file arch/xtensa/kernel/head.S, line 190.
".xt-gdbinit: Done
"(gdb) run
Starting the ISS simulator.
Switching to remote protocol
Remote debugging using localhost:61503

Breakpoint 1, set_breakpoints () at arch/xtensa/boot/boot-elf/bootstrap.S:94
"
""================================ set_breakpoint: Beginning ==================================
""
""
""Skip Free of Init Memory; might have breakpoints in init code.
""
""Try Enableing ddd graphs of displays of global highmem arrays; ... 
""... Bug in ddd makes it necessary to cut-N-past this into the ddd console.
"graph display pkmap_page_dirgraph display *kmap_ptegraph display pkmap_countgraph display last_pkmap_nr"
""Non-MX/UP/Non-SMP Processor:  No irq_init BreakPoints to be set
""
""NOT Setting 'out_of_memory' Breakpoints
""
""Not doing Stress Test; Setting Additional Breakpoints
"Breakpoint 5 at 0xd0008c8f: file arch/xtensa/kernel/traps.c, line 610.
Breakpoint 6 at 0xd00089de: file arch/xtensa/kernel/traps.c, line 293.
Breakpoint 7 at 0xd0008dac: file arch/xtensa/kernel/traps.c, line 637.
"
""NOT Setting Open Ethernet Breakpoints
""
""NOT Setting Initcall Breakpoints
""
""NOT Setting Module Breakpoints
""
""NOT Setting Common HiFi-2 Sound Driver Breakpoints
""
""Setting Misc Breakpoints
"Function "break_on" not defined.
Breakpoint 8 at 0xd0008dac: file arch/xtensa/kernel/traps.c, line 637.
Breakpoint 9 at 0xd0016aa9: file kernel/panic.c, line 72.
Breakpoint 10 at 0xd0016e69: file kernel/panic.c, line 331.
Breakpoint 11 at 0xd004df85: file mm/page_alloc.c, line 234.
Breakpoint 12 at 0xd000a48b: file arch/xtensa/mm/fault.c, line 293.
Function "update_mmu_cache_bp" not defined.
Breakpoint 13 at 0xd0004a03: file arch/xtensa/kernel/irq.c, line 43.
Breakpoint 14 at 0xd0008a52: file arch/xtensa/kernel/traps.c, line 341.
Breakpoint 15 at 0xd0008996: file arch/xtensa/kernel/traps.c, line 258.
Breakpoint 16 at 0xd00088ff: file arch/xtensa/kernel/traps.c, line 217.
Breakpoint 17 at 0xd00088a9: file arch/xtensa/kernel/traps.c, line 200.
"
""=============================== set_breakpoint: Completed ======================================
""
"type "set_commands""$mess_with_context_asid:"$1 = 0x0
Num     Type           Disp Enb Address    What
2       breakpoint     keep y   0xfe000000 arch/xtensa/boot/boot-elf/bootstrap.S:44
3       breakpoint     keep y   0xd0003003 arch/xtensa/kernel/head.S:66
4       breakpoint     keep y   0xd000303a arch/xtensa/kernel/head.S:190
5       breakpoint     keep y   0xd0008c8f in dump_stack at arch/xtensa/kernel/traps.c:610
6       breakpoint     keep y   0xd00089de in do_unaligned_user at arch/xtensa/kernel/traps.c:293
7       breakpoint     keep y   0xd0008dac in die at arch/xtensa/kernel/traps.c:637
8       breakpoint     keep y   0xd0008dac in die at arch/xtensa/kernel/traps.c:637
9       breakpoint     keep y   0xd0016aa9 in panic at kernel/panic.c:72
10      breakpoint     keep y   0xd0016e69 in warn_slowpath at kernel/panic.c:331
11      breakpoint     keep y   0xd004df85 in bad_page at mm/page_alloc.c:234
12      breakpoint     keep y   0xd000a48b in bad_page_fault_bp at arch/xtensa/mm/fault.c:293
13      breakpoint     keep y   0xd0004a03 in IRQ_likely_stack_overflow_breakpoint at arch/xtensa/kernel/irq.c:43
14      breakpoint     keep y   0xd0008a52 in do_debug at arch/xtensa/kernel/traps.c:341
15      breakpoint     keep y   0xd0008996 in do_illegal_instruction at arch/xtensa/kernel/traps.c:258
16      breakpoint     keep y   0xd00088ff in do_multihit at arch/xtensa/kernel/traps.c:217
17      breakpoint     keep y   0xd00088a9 in do_unhandled at arch/xtensa/kernel/traps.c:200
(gdb) c

Breakpoint 3, _start () at arch/xtensa/kernel/head.S:68
(gdb) c

Breakpoint 4, _startup () at arch/xtensa/kernel/head.S:191
(gdb) c
Linux version 2.6.29-smp (pdelaney at pdelaney_fc9) (Thread model: single) #78 Thu Dec 8 20:28:55 PST 2011
Kernel command line: console=ttyS0,38400 root=/dev/simdisk0
console [ttyS0] enabled
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Calibrating delay loop... 39.52 BogoMIPS (lpj=197632)
net_namespace: 296 bytes
NET: Registered protocol family 16
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
NET: Registered protocol family 1
msgmni has been set to 247
alg: No test for md5 (md5-generic)
alg: No test for des (des-generic)
alg: No test for des3_ede (des3_ede-generic)
alg: No test for stdrng (krng)
io scheduler noop registered (default)
mice: PS/2 mouse device common for all mice
TCP cubic registered
NET: Registered protocol family 17
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
Starting portmap: done
Initializing random number generator... done.
Starting network...
ip: RTNETLINK answers: File exists
Starting sshd: OK
Starting NFS statd: done
Starting NFS services: done
Starting NFS daemon: done
Starting NFS mountd: done
Starting domain name daemon: namedwarning: `named' uses 32-bit capabilities (legacy support in use)
failed



Welcome to your custom Xtensa dc233c_ca Development System
(none) login: root

-------------- next part --------------
#
# Example .xt-gdbinit file:
#
#	Sets a hardware breakpoint at _startup to setup
#	kernel breakpoints once the V3 MMU has remapped 
#	to our normal virtaul mappings.
#
#	Includes general purpose macros for dumping the
#	the state of the PTEs, TLB, task list and switching
#	the context to a particular task for backtrace.
#
#	Breakpoints in exception vectors can only be enabled
#	once the exception vectors have been set up by the
#	kernel.
#
#	Tuneed for used with xt-gdb driven with ddd with
#	kernel compiled without optimization.
#
#					    -piet
#
set editing on
set radix 0x0a
set print pretty
set print array
set print union
set pagination off
set can-use-hw-watchpoints 1
set print elements 64
set var $doing_commands = 0
set var $sa_tcp_breakpoints = 0
set var $set_exception_breakpoints = 0
set var $mess_with_context_asid = 0

set var $monitor_trace_supported = 1
set var $monitor_trace_enabled = 0
set var $monitor_trace_enabled_during_load = 0
set var $monitor_verify_supported = 1
set var $monitor_verify_enabled = 0
set var $monitor_async = 1

set var $debug_stress_test = 0
set var $debug_irq_init = 0
set var $debug_irqs_disabled = 0
set var $debug_irq_handler = 0
set var $debug_uart = 0
set var $debug_sound = 0
set var $debug_lcd = 0
set var $debug_initcalls = 0
set var $debug_modules = 0
set var $debug_all_sound = 0
set var $debug_vm_page_mapcount = 0
set var $debug_vm_page_mapcount_writers = 0
set var $debug_clear_lazy_smp_coprocessor_flushing_enabled = 0

# NOTE: A Breakpoint at init_arch causes 2nd CPU to get stuck;
#       which is a handy way to come up with just 1 CPU
set var $debug_init_arch = 0

# $debug_reset needed for placing breakpoints with V3 MMU
set var $debug_reset = 1		

set var $debug_skip_free_initmem = 1
set var $debug_out_of_memory = 0
set var $debug_start_kernel = 0
set var $debug_platform_init = 0
set var $debug_platform_setup = 0
set var $debug_setup_arch = 0
set var $debug_mem_init = 0
set var $debug_page_table_code = 0
set var $debug_bootmem_init = 0
set var $debug_early_page_alloc = 0
set var $debug_highmem_init = 0
set var $debug_xtensa_highmem = 0
set var $debug_xtensa_kmap_atomic = 0
set var $debug_generic_highmem = 0
set var $debug_enable_highmem_graphs = 1
set var $debug_page_faults = 0
set var $set_page_fault_debug = 0
set var $debug_free_area_init_node = 0
set var $debug_unmap_region = 0
set var $debug_open_eth = 0
set var $debug_exceptions = 0
set var $debug_page_migration = 0
set var $mx = 0

set var $debug_iss_simulation = 1
set var $debug_iss_trace_enabled = 0
set var $debug_iss_initial_trace_level = 0
if $debug_iss_simulation
    set var $debug_hw_breakpoints_supported = 0
else
    set var $debug_hw_breakpoints_supported = 1
end

set var $use_mmu = 1

if $mx
	set var $debug_secondary = 1
	set var $debug_ipi_messages = 1
	set var $debug_cpu_init = 1
	set var $debug_migration = 1
	set var $debug_boot_secondary_processors = 1
else
	# These Breakpoints are not available for non-SMP systems.
	# MUST BE SET to ZERO
	set var $debug_secondary = 0
	set var $debug_ipi_messages = 0
	set var $debug_cpu_init = 0
	set var $debug_migration = 0
	set var $debug_boot_secondary_processors = 0
end
set logging on
set logging file kgdb.log
set logging overwrite on
# show logging
# set debug remote 10
# set debug remote 1
# set backtrace limit 50

display/i $pc
#target sim --timer
set output-radix 16

# set debug remote 1
# set remotebaud 115200
# set remotebaud 19200

# target remote udp:192.168.110.61:6443 MY_GATE
# target remote /dev/ttyS0
# target remote gums:20000 0

#
# Delete Any Existing Breakpoints. This makes
# it possible to source this .xt-gdbinit file
# more than once.
delete

if $mx
	add-symbol-file vmlinux 0xd0000000
#	add-symbol-file vmlinux 0
	file arch/xtensa/boot/Image.elf
#	target remote gums:20000 0xd0000012
#	target remote gums:20001 0xd0000012
#	target remote gums:20002 0xd0000012
#	target remote gums:20000 &spill_location_0
#	target remote localhost:40000 &spill_location_0
#	target remote localhost:60000 &spill_location_0
#	target remote localhost:40001 &spill_location_1
#	target remote localhost:20002 &spill_location_2
#	target remote gums:20001 &spill_location_1
#	target remote gums:20002 &spill_location_2
#
# 2nd Board
#	target remote localhost:20010 0
#	target remote localhost:20000 0
else
	if $use_mmu
		echo "Using MMU, assumne V2 MMU Mappings\n"
		echo "add-symbol-file vmlinux 0xd0003000\n"
		      add-symbol-file vmlinux 0xd0003000
	else
		echo "Not Using MMU, assume virtual == physical mappings\n"
		echo "add-symbol-file vmlinux 0x00001000\n"
		      add-symbol-file vmlinux 0x00001000
	end

	file arch/xtensa/boot/Image.elf
	if ($debug_iss_simulation != 0 )
	    # Simulator can used up to 128MB [134,217,728 Bytes]
	    # Use 'xt-run --help' to see args forwared by 'target sim' gdb command.

	    if ($debug_iss_trace_enabled)
#	  	echo 'target sim --turbo --cc_none --memlimit=128 --client_cmds="trace --level 0 --syms iss_trace.out" \n'
#	              target sim --turbo --cc_none --memlimit=128 --client_cmds="trace --level 0 --syms iss_trace.out"

	  	echo 'target sim --turbo            --memlimit=128 --client_cmds="trace --level 0 --syms iss_trace.out" \n'
	              target sim --turbo            --memlimit=128 --client_cmds="trace --level 0 --syms iss_trace.out"

#		echo 'target sim                    --memlimit=128 --client_cmds="trace --level 0 --syms iss_trace.out" \n'
#	              target sim                    --memlimit=128 --client_cmds="trace --level 0 --syms iss_trace.out"

		echo "\n"
		echo "Change iss trace level later, when you are near a problem, with:\n"
		echo "    iss client trace level 3"
	    else
#		 echo "target sim --turbo --memlimit=128\n"
#		       target sim --turbo --memlimit=128
#
		 echo "target sim --memlimit=128\n"
		       target sim --memlimit=128
	    end

	else 

	    echo "target remote localhost:20000  &spill_location_0\n"
#	    echo "target remote  tuscana2:20000  &spill_location_0\n"
#	          target remote localhost:40000  &spill_location_0
#	          target remote localhost:60000  &spill_location_0
	          target remote localhost:20000  &spill_location_0
#	          target remote  tuscana2:20000  &spill_location_0
#	          target remote  wintrax1:20000  &spill_location_0
#	          target remote  192.168.11.204:20000  &spill_location_0
        end
end

if $debug_iss_simulation == 0
  reset

  if $monitor_trace_supported
    if $monitor_trace_enabled_during_load
      echo "Monitor trace on\n"
      monitor trace on
      echo "monitor trace level 60; max compiled in to xocd is typically 65"
      monitor trace level 95
      echo "monitor trace file /export2/tmp/trace"
      monitor trace file /export2/tmp/trace
    else
       echo "Monitor trace off\n"
       monitor trace off
    end
  end
  
  if $monitor_verify_supported
  echo "monitor verify all off\n"
#
#  echo "monitor verify write on\n"
  monitor verify all off
#   monitor verify all on
# monitor verify write on
   echo "monitor verify verbose off\n"
#  monitor verify all off
   monitor verify verbose off
  end

if $xocd_async_enabled
 	echo "monitor async on\n"
 	monitor async on
else
 	echo "monitor async off\n"
 	monitor async off
end

# set remote memory-write-packet-size 524288
#
# DEFAULT is 262K if fixed
# ========================
# 217 KB/s with no Verify
# FAILS FOR verify all
#set remote memory-write-packet-size 262144 
#
# Too big for ASYNC  verify write on
# set remote memory-write-packet-size 131072
#
# 50  KB/s with ASYNC  verify write on
# 183 KB/s with no Verify
# set  remote memory-write-packet-size 65536
#
# 189 KB/s no veriry
# FAILS for verify all
# set remote memory-write-packet-size 32768
#
# 193 KB/s no veriry
# 40KB/s with ASYNC verify write on
# TOO BIG for WINDOWS?
# set remote memory-write-packet-size 16384
#
# 195 KBps no veriify
# 85 KBps with verfiy all and ASYNC
# set remote memory-write-packet-size  8192
#
# 184K without verify
# set remote memory-write-packet-size  4096
#
set remote memory-write-packet-size  2048
# set remote memory-write-packet-size  999
# set remote memory-write-packet-size  512
# set remote memory-write-packet-size  256
  set  remote memory-write-packet-size  fixed
  show remote memory-write-packet-size
  
  
  echo "load: Started\n"
  shell date
  load
  shell date
  echo "load: Completed\n"
  
  if $monitor_trace_supported
    if $monitor_trace_enabled
      echo "Monitor trace on\n"
      monitor trace on
      echo "monitor trace level 60"
      monitor trace level 60
      echo "monitor trace file trace /export2/tmp/Trace"
      monitor trace file /export2/tmp/Trace
    end
  end
  
  if $monitor_verify_supported
    if $monitor_verify_enabled
      echo "Monitor verify all on\n"
      monitor verify all on
    end
  end

end

#   NOTE: you can't enable this breakpoint while
#         single stepping in the MMU-V3 remapping
#	  code and mapped to 0x46000000.
#
def set_breakpoints
	echo "\n"
	echo "================================ set_breakpoint: Beginning ==================================\n"
	echo "\n"

	if $debug_clear_lazy_smp_coprocessor_flushing_enabled
		echo "\n"
		echo "Setting lazy_smp_coprocessor_flushing_enabled = 1\n"
		set lazy_smp_coprocessor_flushing_enabled = 1
	end

	if $debug_irq_handler
		echo "\n"
		echo "Setting IRQ Handler Breakpoints\n"
		break *&__set_irq_handler
		break do_interrupt
		break handle_level_irq
	end

	if $debug_skip_free_initmem
		echo "\n"
		echo "Skip Free of Init Memory; might have breakpoints in init code.\n"	
		set skip_free_of_initmem = 1
	end

	if $debug_page_table_code
		echo "\n"
		echo "Setting Page Table Vmalloc Code  Breakpoints (mm/vmalloc.c)\n"
		break map_vm_area
		break  vmap_page_range
		break   vmap_pud_range
		break    vmap_pte_range
		break     __pte_alloc_kernel
		break      pte_alloc_one_kernel
#		break __cache_alloc
#		break pgd_ctor
	end

	if $debug_page_migration
		echo "\n"
		echo "Setting page migration Breakpoints\n"
		break setup_usemap
		break get_pageblock_migratetype
		break get_pageblock_flags_group
		break free_hot_cold_page
		break free_pages_bulk
	end


	if $debug_pmd_code
		echo "\n"
		echo "Setting Page Middle Directory (PMD) Code  Breakpoints\n"
	end

	if $debug_bootmem_init 
		echo "\n"
		echo "Setting Boot Memory Initialization Breakpoints\n"
		break mem)init
		break bootmem_init
		break zones_init
		break free_reserved_mem
		break free_initmem
		break free_area_init_node
		break free_bootmem
		break mark_bootmem
		break mark_bootmem_node
		break init_bootmem_node
		break init_bootmem
		break free_all_bootmem_core
		break init_bootmem_core
	end

	if $debug_early_page_alloc
		echo "\n"
		echo "Setting Early Page Allocation Initialization Breakpoints\n"
		break free_area_init_node
		break alloc_node_mem_map
		break calculate_node_totalpages
		break free_hot_page
		break mem_init
	end

	if $debug_highmem_init
		echo "\n"
		echo "Setting High-Memory Initialization Breakpoints (arch/xtensa/mm/mmu.c)\n"
		break page_table_range_init
		break permanent_kmaps_init
		break pagetable_init
		break kmap_init
		break init_mmu
		break paging_init
		break pgd_ctor
		break pgtable_cache_init
	end

	if $debug_xtensa_highmem
		echo "\n"
		echo "Setting Xtensa High-Memory Breakpoints (arch/xtensa/mm/highmem.c)\n"
		break kmap
		break kunmap
		break debug_kmap_atomic_prot
		break kmap_atomic_prot
#		break kmap_atomic
#		break kunmap_atomic
		break kpte_clear_flush
		break kmap_atomic_pfn
		break kmap_atomic_to_page
#		break __pte_alloc_kernel
#		break xdr_partial_copy_from_skb
	end

	if $debug_xtensa_kmap_atomic
		break kmap_atomic
		break kunmap_atomic
	end

	if $debug_generic_highmem
		echo "\n"
		echo "Setting Generic High-Memory Breakpoints (mm/highmem.c)\n"
#		break nr_free_highpages
		break flush_all_zero_pkmaps
		break kmap_flush_unused
		break map_new_virtual
		break kmap_high
		break kunmap_high
		break page_address_map
		break page_address
		break set_page_address
		break page_address_init
	end

	if $debug_enable_highmem_graphs
		echo "\n"
		echo "Try Enableing ddd graphs of displays of global highmem arrays; ... \n"
		echo "... Bug in ddd makes it necessary to cut-N-past this into the ddd console.\n"
		echo graph display pkmap_page_dir
		echo graph display *kmap_pte
		echo graph display pkmap_count
		echo graph display last_pkmap_nr
	end

	if $set_page_fault_debug
		echo "\n"
		echo "Enabling Tracing in do_page_fault\n"
		set page_fault_debug = 0

		break do_page_fault
		set $do_page_fault_bpnum = $bpnum

		break do_group_exit
		set $do_group_exit_bpnum = $bpnum
	end

	if $debug_page_faults
		echo "\n"
		eccho "Enabling Breakpoints in fault.c\n"
		break platform_init
		break do_page_fault
		break handle_mm_fault
		break handle_pte_fault
		break do_linear_fault
		break __do_fault
		break filemap_fault
	end

	if ($mx != 0)
	    # echo "MX\n"
	    if ($debug_cpu_init != 0)
		echo "\n"
		echo "Setting CPU Initialization Breakpoints\n"
		break cpu_up
		break _cpu_up
		break __cpu_up
		break cpu_online
		break smp_init
		break smp_init_cpus
		break get_core_count
		break smp_prepare_cpus
		break secondary_start_kernel
	    end

	    if ($debug_secondary != 0)
		echo "\n"
		echo "MX/SMP Processor: Setting secondary CPU Breakpoints\n"
		break wakeup_secondary_cpu
		break secondary_irq_enable
	    end

	    if $debug_boot_secondary_processors == 0
		echo "\n"
		echo "Setting boot_secondary_processors = 0\n"
		set boot_secondary_processors = 0
	    end

    	    if ($debug_migration != 0) 
		echo "\n"
		echo "Setting Migration Breakpoints\n"
		break load_balance
        	break *&fast_coprocessor
    	    end

	    if ($debug_ipi_messages != 0)
		echo "MX/SMP Processor: Setting IPI Message Breakpoints\n"
		break send_ipi_message
		break recv_ipi_messages
	    end
	
	    if ($debug_irq_init != 0)
		echo "\n"
	        echo "MX/SMP Processor, setting MX IRQ Breakpoints\n"
		break xtensa_mx_irq_mask
		break xtensa_mx_irq_unmask
		break xtensa_mx_irq_ack
		break xtensa_mx_irq_retrigger
		break secondary_irq_init
	   else
		echo "\n"
		echo "MX/SMP Processor: No irq_init BreakPoints to be set.\n"
	   end	

	else
	    # echo "NOT_MX\n"
	    if ($debug_irq_init != 0)
		echo "\n"
	        echo "Non-MX/UP/Non-SMP Processor, setting STD IRQ Breakpoints\n"
		break xtensa_irq_mask
		break xtensa_irq_unmask
		break xtensa_irq_ack
		break xtensa_irq_retrigger
	    else
		 echo "\n"
		 echo "Non-MX/UP/Non-SMP Processor:  No irq_init BreakPoints to be set\n"
	    end
	end 

	if ($debug_free_area_init_node != 0)
	    echo "\n"
	    echo "Setting free_area_init_node Breakpoint\n"	
	    break free_area_init_node
	    set var $free_area_init_node = $bpnum
	end

	# echo "$debug_exceptions: "
	# print $debug_exceptions
	# echo "\n"
	if ($debug_exceptions != 0)
		echo "\n"
	        echo "Setting Exception Handler Breakpoints; CAN'T BE ENABLED YET.\n"
		break  *&_UserExceptionVector
		set var $_UserExceptionVector = $bpnum
		disable $_UserExceptionVector

		break  *&_KernelExceptionVector
		set var $_KernelExceptionVector = $bpnum
		disable $_KernelExceptionVector

		break  *&_DoubleExceptionVector
		set var $_DoubleExceptionVector = $bpnum
		disable $_DoubleExceptionVector
	
		break  *&fast_unaligned
		set var $fast_unaligned = $bpnum
		disable $fast_unaligned
	end

	# echo "$debug_init_arch: "
	# print $debug_init_arch
	# echo "\n"
	if ($debug_init_arch != 0)
	    echo "\n"	
	    echo "Setting ARCH Initialization Breakpoints\n"
	    break init_arch
	    set $init_arch = $bpnum
	    if ($doing_commands != 0)
		echo "\n"
		echo "TYPE 'set_breakpoints' TO ENABLE ARCH INITIALIZATION BREAKPOINTS\n"
		echo "\n"
	    else
	      	commands $init_arch
		    disable $init_arch
		    echo "\n"	
	            echo "init_arch(): Enabling Breakpoints at Exception Vectors\n"
	            enable $_DoubleExceptionVector_Hang
	            echo skip enable $fast_unaligned
	       	    continue
	      	end
	    end
	 end
	
	if ($debug_start_kernel != 0)
	    echo "\n"
	    echo "Setting 'start_kernel' Breakpoint\n"
	    break start_kernel
	    set $start_kernel = $bpnum
	end
	
	if ($debug_platform_init != 0)
	    echo "\n"
	    echo "Setting 'platform_init' breakpoint\n"
	    if $debug_platform_init
	        break platform_init
	        set $platform_init = $bpnum
	    end
	end

	if ($debug_platform_setup != 0)
		echo "\n"
		echo "Setting 'platform_setup' breakpoint\n"	
		break platform_setup
		set $platform_setup = $bpnum
	end
	
	if ($debug_setup_arch != 0)
		echo "\n"
		echo "Setting 'setup_arch' breakpoint\n"	
		break setup_arch
		set $setup_arch = $bpnum
	end
	
	if ($debug_unmap_region != 0)
	    break unmap_region
	    set $unmap_region = $bpnum
	end
	
	 if ($debug_irqs_disabled != 0)
	    break irqs_disabled
	    set $irqs_disabled = $bpnum
	end
	
	if ($debug_out_of_memory != 0)
	    echo "\n"	
	    echo "Setting 'out_of_memory' Breakpoints\n"
	    break out_of_memory
	    set $out_of_memory = $bpnum
	    
	    break oom_kill_process
	    set $oom_kill_process = $bpnum
	else
	     echo "\n"
	     echo "NOT Setting 'out_of_memory' Breakpoints\n"			
	end
	
#
#	You likely don't want to have a breakpoint here
#	with multiple cpu's. The other CPUs will think
#	it's a SIGTRAP and leave things in a bad state.
#	There will be BREAK instructions in your code
#	and you will have to detach.
#
	if ($debug_stress_test == 0)
		echo "\n"
		echo "Not doing Stress Test; Setting Additional Breakpoints\n"
		break dump_stack
		break do_unaligned_user
		break die 
	else
		echo "\n
		echo "Doing Stress Test; NOT Setting Additional Breakpoints\n"
	end
	

	if ($debug_open_eth != 0)
		echo "\n"
		echo "Setting Open Ethernet Breakpoints\n"
                break oeth_probe
                break oeth_open
                break oeth_start_xmit
                break oeth_init
                break oeth_interrupt
                break ip_local_deliver_finish
                break ip_local_deliver
                break ip_rcv_finish
                break ip_rcv
	else
		echo "\n"
		echo "NOT Setting Open Ethernet Breakpoints\n"
	end

	if ($debug_initcalls != 0)
		echo "\n"
		echo "Setting Initcall Breakpoints\n"
		break do_one_initcall
	else
		 echo "\n"
		 echo "NOT Setting Initcall Breakpoints\n"
	end

	if ($debug_modules != 0)
		echo "\n"
		echo "Setting Module Breakpoints\n"
		break load_module
		set var $load_module_bpnum = $bpnum
		if $doing_commands
			echo "Type 'set_breakpoints' to set Module Breakpoints\n"
		else
		    commands $load_module_bpnum
			break sys_init_module
			break apply_relocate_add
			break do_one_initcall
		    end
		end
		# set apply_relocate_add_enabled = 1
	else
		echo "\n"
		echo "NOT Setting Module Breakpoints\n"	
	end

	# break print_oops_end_marker
	# break show_stack
	# break  *&fast_second_level_miss_double_kernel
	# break  *&_DoubleExceptionVector_WindowOverflow
	# break update_mmu_cache
	# break copy_pte_range
	# break zap_pte_range
	# break remap_pte_range
	# break change_pte_range
	# break move_ptes
	# break ic_dynamic
	# break parse_early_param


    if ($debug_uart != 0)
	echo "\n"
	echo "Setting UART Breakpoints\n"
    	break uart_get_baud_rate	
    	break time_init	
    	break uart_parse_options	
    	break uart_set_options	
    	break __platform_calibrate_ccount
    end	

    if ($debug_all_sound != 0) 
	echo "\n"
	echo "Setting ALL HiFi-2 Sound Driver Breakpoints\n"
	#
	# HiFI-2 Driver at sound/oss/sound_lx200.c
	# No Interrupt handler.
	#
	break aic23_write_reg
	break aic23_config_dac
	break aic23_set_vol
	break aic23_get_vol
	break aic23_set_freq
	break slx200_fifo_logic
	break slx200_audio_mute
	break slx200_fifo_write
	break slx200_set_sample_rate
	break slx200_set_volume
	break slx200_set_channels
	break slx200_audio_ioctl
	break slx200_audio_write
	break slx200_audio_open
	break slx200_audio_release
	break slx200_init
    end

    if ($debug_sound != 0)
	echo "\n"
	echo "Setting Common HiFi-2 Sound Driver Breakpoints\n"
	break slx200_audio_open
	break slx200_audio_write
	break slx200_fifo_write
	break slx200_audio_ioctl
	break i2s_output_interrupt
	break i2s_input_interrupt
	break move_full_audio_buffs_to_free_list
	break release_audio_buffs
	break slx200_audio_release
	graph display free_audio_buffs
	graph display full_audio_buffs
    else
	 echo "\n"
	 echo "NOT Setting Common HiFi-2 Sound Driver Breakpoints\n"	
    end

    if ($debug_lcd != 0)
	break lcd_init
	break lcd_disp_at_pos
	break lcd_shiftleft
	break lcd_shiftright
    end


    if ($debug_vm_page_mapcount != 0)
	echo "\n"
	echo "Setting vm_page_mapcount Breakpoints\n"
	break reset_page_mapcount
	break page_mapcount
	break page_dup_rmap
#	break get_page_bootmem
#	break put_page_bootmem
	break page_add_anon_rmap
	break page_add_new_anon_rmap
	break page_add_file_rmap
	break page_dup_rmap
	break page_remove_rmap
#	break free_map_bootmem
    end

    if ($debug_vm_page_mapcount_writers != 0)
	echo "\n"
	echo "Setting vm_page_mapcount_writers Breakpoints\n"
	break reset_page_mapcount
	break page_dup_rmap
#	break get_page_bootmem
#	break put_page_bootmem
	break page_add_anon_rmap
	break page_add_new_anon_rmap
	break page_add_file_rmap
	break page_dup_rmap
	break page_remove_rmap
    end

#
# Misc Breakpoints
#
	echo "\n"
	echo "Setting Misc Breakpoints\n"
	break break_on 
	break die 
	break panic
	break warn_slowpath
#	break xtensa_breakpoint
#	break show_regs
#	break handle_pte_fault
#	break bad_page_fault
	break bad_page
	break bad_page_fault_bp
	break update_mmu_cache_bp
	break IRQ_likely_stack_overflow_breakpoint
#	break swapon
	break do_debug
	break do_illegal_instruction
	break do_multihit
	break do_unhandled
# 	break dtlb_probe
#	break get_current_bp
# 	break _image_start
#	break *&_startup
#	break emit_log_char
#	break printk
#	break init_mmu
#	break init_IRQ
#
	echo "\n"
	echo "=============================== set_breakpoint: Completed ======================================\n"
	echo "\n"
end

def set_commands
        echo "\n"
        echo "================================ set_commands: Beginning ==================================\n"

	if $do_page_fault_bpnum
		echo "Enableing commands for do_page_fault Breakpoint\n"
		commands $do_page_fault_bpnum
			echo c 85
		end
	end

	if $do_group_exit_bpnum
		echo "Enabling commands for do_group_exit Breakpoint\n"
		commands $do_page_fault_bpnum
			bt
			print $windowbase
			print $windowstart
		end
	end

        echo "================================ set_commands: Completed ==================================\n"
        echo "\n"
end




def source_gdb_macros
    #
    # Bring in gdb macros after re-mapping MMU
    # so they can access config constants.
    #	
    source ps.gdb
    source showtlb.gdb
    source showcache.gdb
    source show_mem_pte.gdb
    source show_pages.gdb
end

def set_kernel_flags
	echo "$mess_with_context_asid:"
	print $mess_with_context_asid
	if $mess_with_context_asid != 0
		echo "set config_ignore_mm_context_asid = 1;\n"
		set config_ignore_mm_context_asid = 1
		print config_ignore_mm_context_asid
	end
end

#
# Now we set up a HARDWARE BREAKPOINT at the
# first code executed after we map the MMU
# to the virtual addresses Linux is configured
# for; typically 0xd000,000 region.
#
# Once we hit _startup it's safe to set
# the normal kernel brekpoints and to
# play with configurable global variables.
#
if $debug_hw_breakpoints_supported
  show can-use-hw-watchpoints
  hbreak _startup
else
  break set_breakpoints
end

set var $_startup = $bpnum
commands $_startup
    set var $doing_commands = 1
    set_breakpoints
    echo type "set_commands"
    source_gdb_macros
    set_kernel_flags    
    delete $_startup
    if $debug_hw_breakpoints_supported
        hbreak *&_DoubleExceptionVector_Hang
#       hbreak 0X200014fc
    end
    info breakpoints
    set var $doing_commands = 0
    set bootmem_debug = 0
#   break do_exit
#   break do_signal
end




define exit 
	quit
	end

define regs 
	info registers pc a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15
	end

define cregs
	info registers ccount ccompare0 ccompare1
	end

define iregs
	info registers interrupt intenable icount icountlvl psintlvl
	end

define lregs
	info registers lbeg lend lcount
	end

define restart
	set *(volatile unsigned *)0xfd020010 = 0xdead
	end

define i8regs 
	info registers i80 i81 i82 i83 i84 i85 i86 i87 i88 i89 i810 i811 i812 i813 i814 i815
	end

define i16regs 
	info registers i160 i161 i162 i163 i164 i165 i166 i167 i168 i169 i1610 i1611 i1612 i1613 i1614 i1615
	end

define i32regs 
	info registers i320 i321 i322 i323 i324 i325 i326 i327 i328 i329 i3210 i3211 i3212 i3213 i3214 i3215
	end

define extraregs 
	info registers s8 s16 s32 result
	end

define memfree
	graph display contig_page_data

	print contig_page_data.node_zones[0].name
	print contig_page_data.node_zones[0].present_pages

	print contig_page_data.node_zones[1].name
	print contig_page_data.node_zones[1].present_pages

	print contig_page_data.node_zones[2].name
	print contig_page_data.node_zones[2].present_pages
end

if $debug_iss_simulation
   echo "Starting Simulation\n"
   break _ResetVector
   break _image_start
   break _startup
#   run
end

echo ".xt-gdbinit: Done\n"
-------------- next part --------------
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.29-rc7
# Wed Jun 29 21:47:31 2011
#
CONFIG_ZONE_DMA=y
CONFIG_XTENSA=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_FIND_NEXT_BIT=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_GPIO=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
CONFIG_NO_IOPORT=y
CONFIG_IRQ_PER_CPU=y
CONFIG_HZ=100
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

#
# General setup
#
CONFIG_EXPERIMENTAL=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
# CONFIG_TASKSTATS is not set
# CONFIG_AUDIT is not set

#
# RCU Subsystem
#
CONFIG_CLASSIC_RCU=y
# CONFIG_TREE_RCU is not set
# CONFIG_PREEMPT_RCU is not set
# CONFIG_TREE_RCU_TRACE is not set
# CONFIG_PREEMPT_RCU_TRACE is not set
# CONFIG_IKCONFIG is not set
CONFIG_LOG_BUF_SHIFT=17
# CONFIG_GROUP_SCHED is not set
# CONFIG_CGROUPS is not set
CONFIG_SYSFS_DEPRECATED=y
CONFIG_SYSFS_DEPRECATED_V2=y
# CONFIG_RELAY is not set
CONFIG_NAMESPACES=y
# CONFIG_UTS_NS is not set
# CONFIG_IPC_NS is not set
# CONFIG_USER_NS is not set
# CONFIG_PID_NS is not set
# CONFIG_NET_NS is not set
# CONFIG_BLK_DEV_INITRD is not set
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
CONFIG_SYSCTL=y
CONFIG_ANON_INODES=y
# CONFIG_EMBEDDED is not set
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
CONFIG_KALLSYMS_EXTRA_PASS=y
# CONFIG_HOTPLUG is not set
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_AIO=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_COMPAT_BRK=y
CONFIG_SLAB=y
# CONFIG_SLUB is not set
# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
CONFIG_HAVE_OPROFILE=y
# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
# CONFIG_MODULE_FORCE_LOAD is not set
# CONFIG_MODULE_UNLOAD is not set
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_BLOCK=y
# CONFIG_LBD is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
# CONFIG_BLK_DEV_BSG is not set
# CONFIG_BLK_DEV_INTEGRITY is not set

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
# CONFIG_IOSCHED_AS is not set
# CONFIG_IOSCHED_DEADLINE is not set
# CONFIG_IOSCHED_CFQ is not set
# CONFIG_DEFAULT_AS is not set
# CONFIG_DEFAULT_DEADLINE is not set
# CONFIG_DEFAULT_CFQ is not set
CONFIG_DEFAULT_NOOP=y
CONFIG_DEFAULT_IOSCHED="noop"
# CONFIG_FREEZER is not set

#
# Xtensa Processor type and features
#
CONFIG_MMU=y
# CONFIG_VARIANT_IRQ_SWITCH is not set
# CONFIG_XTENSA_VARIANT_HASCODE is not set
# CONFIG_XTENSA_VARIANT_FSF is not set
# CONFIG_XTENSA_VARIANT_MMUBASELE is not set
# CONFIG_XTENSA_VARIANT_DC232A is not set
# CONFIG_XTENSA_VARIANT_DC232B is not set
# CONFIG_XTENSA_VARIANT_S6000 is not set
CONFIG_XTENSA_VARIANT_CUSTOM=y
CONFIG_XTENSA_VARIANT_CUSTOM_NAME="dc233c_ca"
CONFIG_XTENSA_VARIANT_NAME="dc233c_ca"
# CONFIG_XTENSA_UNALIGNED_USER is not set
# CONFIG_XTENSA_UNALIGNED_KERNEL is not set
# CONFIG_PREEMPT is not set
# CONFIG_MATH_EMULATION is not set
# CONFIG_ARCH_HAS_SMP is not set
# CONFIG_INITIALIZE_XTENSA_MMU_INSIDE_VMLINUX is not set
CONFIG_USE_XTENSA_XCC_COMPILER=y
# CONFIG_GENERIC_TIME is not set
CONFIG_XTENSA_CALIBRATE_CCOUNT=y
CONFIG_SERIAL_CONSOLE=y
CONFIG_XTENSA_ISS_NETWORK=y

#
# Xtensa Platform options
#
CONFIG_XTENSA_PLATFORM_ISS=y
# CONFIG_XTENSA_PLATFORM_XT2000 is not set
# CONFIG_XTENSA_PLATFORM_S6105 is not set
# CONFIG_XTENSA_PLATFORM_XTAVNET is not set
# CONFIG_XTENSA_PLATFORM_S56XX is not set
# CONFIG_XTENSA_PLATFORM_CUSTOM is not set
CONFIG_XTENSA_PLATFORM_NAME="iss"
CONFIG_XTENSA_CPU_CLOCK_UNITS=1000
CONFIG_XTENSA_CPU_CLOCK=50000
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_CMDLINE_BOOL=y
CONFIG_CMDLINE="console=ttyS0,38400 root=/dev/simdisk0"
CONFIG_BLK_DEV_SIMDISK_COUNT=1
CONFIG_SIMDISK0_FILENAME="/export2/DC_C_233L/LINUX_ROOT.ext2"
CONFIG_SIMDISK1_FILENAME="x"
CONFIG_ARCH_SUPPORTS_OPROFILE=y
CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not set
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
CONFIG_PAGEFLAGS_EXTENDED=y
CONFIG_SPLIT_PTLOCK_CPUS=4
# CONFIG_PHYS_ADDR_T_64BIT is not set
CONFIG_ZONE_DMA_FLAG=1
CONFIG_BOUNCE=y
CONFIG_VIRT_TO_BUS=y
CONFIG_UNEVICTABLE_LRU=y

#
# Xtensa Bus options
#
# CONFIG_ARCH_SUPPORTS_MSI is not set

#
# Xtensa Executable file formats
#
CONFIG_KCORE_ELF=y
CONFIG_BINFMT_ELF=y
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
# CONFIG_HAVE_AOUT is not set
# CONFIG_BINFMT_MISC is not set
CONFIG_NET=y

#
# Networking options
#
CONFIG_COMPAT_NET_DEV_OPS=y
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
# CONFIG_IP_ADVANCED_ROUTER is not set
CONFIG_IP_FIB_HASH=y
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
CONFIG_IP_PNP_BOOTP=y
CONFIG_IP_PNP_RARP=y
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
CONFIG_IP_MROUTE=y
# CONFIG_IP_PIMSM_V1 is not set
# CONFIG_IP_PIMSM_V2 is not set
# CONFIG_ARPD is not set
# CONFIG_SYN_COOKIES is not set
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set
# CONFIG_INET_XFRM_TUNNEL is not set
# CONFIG_INET_TUNNEL is not set
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
# CONFIG_INET_XFRM_MODE_BEET is not set
# CONFIG_INET_LRO is not set
# CONFIG_INET_DIAG is not set
# CONFIG_TCP_CONG_ADVANCED is not set
CONFIG_TCP_CONG_CUBIC=y
CONFIG_DEFAULT_TCP_CONG="cubic"
# CONFIG_TCP_MD5SIG is not set
# CONFIG_IPV6 is not set
# CONFIG_NETWORK_SECMARK is not set
# CONFIG_NETFILTER is not set
# CONFIG_IP_DCCP is not set
# CONFIG_IP_SCTP is not set
# CONFIG_TIPC is not set
# CONFIG_ATM is not set
# CONFIG_BRIDGE is not set
# CONFIG_NET_DSA is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_DECNET is not set
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set
# CONFIG_NET_SCHED is not set
# CONFIG_DCB is not set

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_HAMRADIO is not set
# CONFIG_CAN is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_PHONET is not set
CONFIG_WIRELESS=y
# CONFIG_CFG80211 is not set
CONFIG_WIRELESS_OLD_REGULATORY=y
# CONFIG_WIRELESS_EXT is not set
# CONFIG_LIB80211 is not set
# CONFIG_MAC80211 is not set
# CONFIG_WIMAX is not set
# CONFIG_RFKILL is not set
# CONFIG_NET_9P is not set

#
# Device Drivers
#

#
# Generic Driver Options
#
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
# CONFIG_CONNECTOR is not set
# CONFIG_MTD is not set
# CONFIG_PARPORT is not set
CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_COW_COMMON is not set
# CONFIG_BLK_DEV_LOOP is not set
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_RAM is not set
# CONFIG_CDROM_PKTCDVD is not set
# CONFIG_ATA_OVER_ETH is not set
# CONFIG_BLK_DEV_HD is not set
# CONFIG_MISC_DEVICES is not set
CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set

#
# SCSI device support
#
# CONFIG_RAID_ATTRS is not set
# CONFIG_SCSI is not set
# CONFIG_SCSI_DMA is not set
# CONFIG_SCSI_NETLINK is not set
# CONFIG_ATA is not set
# CONFIG_MD is not set
CONFIG_NETDEVICES=y
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_MACVLAN is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_VETH is not set
# CONFIG_PHYLIB is not set
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
# CONFIG_OPENCORES_ETHERNET is not set
# CONFIG_IBM_NEW_EMAC_ZMII is not set
# CONFIG_IBM_NEW_EMAC_RGMII is not set
# CONFIG_IBM_NEW_EMAC_TAH is not set
# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
# CONFIG_B44 is not set
# CONFIG_NETDEV_1000 is not set
# CONFIG_NETDEV_10000 is not set

#
# Wireless LAN
#
# CONFIG_WLAN_PRE80211 is not set
# CONFIG_WLAN_80211 is not set
# CONFIG_IWLWIFI_LEDS is not set

#
# Enable WiMAX (Networking options) to see the WiMAX drivers
#
# CONFIG_WAN is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
# CONFIG_NETCONSOLE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NET_POLL_CONTROLLER is not set
# CONFIG_ISDN is not set
# CONFIG_PHONE is not set

#
# Input device support
#
CONFIG_INPUT=y
# CONFIG_INPUT_FF_MEMLESS is not set
# CONFIG_INPUT_POLLDEV is not set

#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_EVDEV is not set
# CONFIG_INPUT_EVBUG is not set

#
# Input Device Drivers
#
# CONFIG_INPUT_KEYBOARD is not set
# CONFIG_INPUT_MOUSE is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TABLET is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
# CONFIG_INPUT_MISC is not set

#
# Hardware I/O ports
#
# CONFIG_SERIO is not set
# CONFIG_GAMEPORT is not set

#
# Character devices
#
CONFIG_VT=y
CONFIG_CONSOLE_TRANSLATIONS=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
# CONFIG_VT_HW_CONSOLE_BINDING is not set
CONFIG_DEVKMEM=y
# CONFIG_SERIAL_NONSTANDARD is not set

#
# Serial drivers
#
# CONFIG_SERIAL_8250 is not set

#
# Non-8250 serial port support
#
CONFIG_UNIX98_PTYS=y
# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
# CONFIG_IPMI_HANDLER is not set
# CONFIG_HW_RANDOM is not set
# CONFIG_RTC is not set
# CONFIG_GEN_RTC is not set
# CONFIG_R3964 is not set
# CONFIG_RAW_DRIVER is not set
# CONFIG_TCG_TPM is not set
# CONFIG_I2C is not set
# CONFIG_SPI is not set
# CONFIG_W1 is not set
# CONFIG_POWER_SUPPLY is not set
# CONFIG_HWMON is not set
# CONFIG_THERMAL is not set
# CONFIG_THERMAL_HWMON is not set
# CONFIG_WATCHDOG is not set
CONFIG_SSB_POSSIBLE=y

#
# Sonics Silicon Backplane
#
# CONFIG_SSB is not set

#
# Multifunction device drivers
#
# CONFIG_MFD_CORE is not set
# CONFIG_MFD_SM501 is not set
# CONFIG_HTC_PASIC3 is not set
# CONFIG_MFD_TMIO is not set
# CONFIG_REGULATOR is not set

#
# Multimedia devices
#

#
# Multimedia core support
#
# CONFIG_VIDEO_DEV is not set
# CONFIG_DVB_CORE is not set
# CONFIG_VIDEO_MEDIA is not set

#
# Multimedia drivers
#
# CONFIG_DAB is not set

#
# Graphics support
#
# CONFIG_VGASTATE is not set
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
# CONFIG_FB is not set
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set

#
# Display device support
#
# CONFIG_DISPLAY_SUPPORT is not set

#
# Console display driver support
#
CONFIG_DUMMY_CONSOLE=y
CONFIG_SOUND=y
CONFIG_SOUND_OSS_CORE=y
# CONFIG_SND is not set
CONFIG_SOUND_PRIME=y
# CONFIG_HID_SUPPORT is not set
CONFIG_USB_SUPPORT=y
# CONFIG_USB_ARCH_HAS_HCD is not set
# CONFIG_USB_ARCH_HAS_OHCI is not set
# CONFIG_USB_ARCH_HAS_EHCI is not set

#
# Enable Host or Gadget support to see Inventra options
#

#
# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed;
#
# CONFIG_USB_GADGET is not set

#
# OTG and related infrastructure
#
# CONFIG_MMC is not set
# CONFIG_MEMSTICK is not set
# CONFIG_NEW_LEDS is not set
# CONFIG_ACCESSIBILITY is not set
# CONFIG_RTC_CLASS is not set
# CONFIG_DMADEVICES is not set
# CONFIG_UIO is not set
# CONFIG_STAGING is not set

#
# File systems
#
CONFIG_EXT2_FS=y
# CONFIG_EXT2_FS_XATTR is not set
# CONFIG_EXT2_FS_XIP is not set
# CONFIG_EXT3_FS is not set
# CONFIG_EXT4_FS is not set
# CONFIG_REISERFS_FS is not set
# CONFIG_JFS_FS is not set
CONFIG_FS_POSIX_ACL=y
CONFIG_FILE_LOCKING=y
# CONFIG_XFS_FS is not set
# CONFIG_OCFS2_FS is not set
# CONFIG_BTRFS_FS is not set
CONFIG_DNOTIFY=y
# CONFIG_INOTIFY is not set
# CONFIG_QUOTA is not set
# CONFIG_AUTOFS_FS is not set
# CONFIG_AUTOFS4_FS is not set
# CONFIG_FUSE_FS is not set
CONFIG_GENERIC_ACL=y

#
# CD-ROM/DVD Filesystems
#
# CONFIG_ISO9660_FS is not set
# CONFIG_UDF_FS is not set

#
# DOS/FAT/NT Filesystems
#
# CONFIG_MSDOS_FS is not set
# CONFIG_VFAT_FS is not set
# CONFIG_NTFS_FS is not set

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_PROC_SYSCTL=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
# CONFIG_HUGETLB_PAGE is not set
CONFIG_CONFIGFS_FS=y
CONFIG_MISC_FILESYSTEMS=y
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_HFSPLUS_FS is not set
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
CONFIG_CRAMFS=y
# CONFIG_SQUASHFS is not set
# CONFIG_VXFS_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_OMFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_ROMFS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set
CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
# CONFIG_NFS_V3_ACL is not set
CONFIG_NFS_V4=y
CONFIG_ROOT_NFS=y
# CONFIG_NFSD is not set
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=y
CONFIG_SUNRPC_GSS=y
# CONFIG_SUNRPC_REGISTER_V4 is not set
CONFIG_RPCSEC_GSS_KRB5=y
# CONFIG_RPCSEC_GSS_SPKM3 is not set
# CONFIG_SMB_FS is not set
# CONFIG_CIFS is not set
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set

#
# Partition Types
#
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y
# CONFIG_NLS is not set
# CONFIG_DLM is not set

#
# Kernel hacking
#
# CONFIG_PRINTK_TIME is not set
CONFIG_ENABLE_WARN_DEPRECATED=y
# CONFIG_ENABLE_MUST_CHECK is not set
CONFIG_FRAME_WARN=1024
# CONFIG_MAGIC_SYSRQ is not set
# CONFIG_UNUSED_SYMBOLS is not set
# CONFIG_DEBUG_FS is not set
# CONFIG_HEADERS_CHECK is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_SHIRQ is not set
CONFIG_DETECT_SOFTLOCKUP=y
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
CONFIG_SCHED_DEBUG=y
# CONFIG_SCHEDSTATS is not set
# CONFIG_TIMER_STATS is not set
# CONFIG_DEBUG_OBJECTS is not set
# CONFIG_DEBUG_SLAB is not set
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_RT_MUTEX_TESTER is not set
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_MUTEXES is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
# CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_INFO is not set
# CONFIG_DEBUG_VM is not set
# CONFIG_DEBUG_WRITECOUNT is not set
CONFIG_DEBUG_MEMORY_INIT=y
# CONFIG_DEBUG_LIST is not set
# CONFIG_DEBUG_SG is not set
# CONFIG_DEBUG_NOTIFIERS is not set
# CONFIG_FRAME_POINTER is not set
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_RCU_CPU_STALL_DETECTOR is not set
# CONFIG_BACKTRACE_SELF_TEST is not set
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
# CONFIG_FAULT_INJECTION is not set
# CONFIG_SYSCTL_SYSCALL_CHECK is not set

#
# Tracers
#
# CONFIG_SCHED_TRACER is not set
# CONFIG_CONTEXT_SWITCH_TRACER is not set
# CONFIG_BOOT_TRACER is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
# CONFIG_SAMPLES is not set
CONFIG_HAVE_ARCH_KGDB=y
# CONFIG_KGDB is not set
CONFIG_CC_OPTIMIZE_FOR_DEBUGGING=y
CONFIG_XTENSA_EXTRA_CFLAGS="-O0 -g3"
CONFIG_XTENSA_ALT_EXTRA_CFLAGS="-O0"
# CONFIG_4KSTACKS is not set
# CONFIG_8KSTACKS is not set
CONFIG_16KSTACKS=y
CONFIG_DEBUG_STACKOVERFLOW=y
CONFIG_IGNORE_MM_CONTEXT_ASID=y
CONFIG_IGNORE_PAGE_ARCH_1_BIT=y
CONFIG_OPTIMIZE_INLINING=y
CONFIG_STACK_SIZE=16384
CONFIG_STACK_SHIFT=14

#
# Security options
#
# CONFIG_KEYS is not set
# CONFIG_SECURITY is not set
# CONFIG_SECURITYFS is not set
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
CONFIG_CRYPTO=y

#
# Crypto core or helper
#
# CONFIG_CRYPTO_FIPS is not set
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_ALGAPI2=y
CONFIG_CRYPTO_AEAD2=y
CONFIG_CRYPTO_BLKCIPHER=y
CONFIG_CRYPTO_BLKCIPHER2=y
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_HASH2=y
CONFIG_CRYPTO_RNG2=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_MANAGER2=y
# CONFIG_CRYPTO_GF128MUL is not set
# CONFIG_CRYPTO_NULL is not set
# CONFIG_CRYPTO_CRYPTD is not set
# CONFIG_CRYPTO_AUTHENC is not set
# CONFIG_CRYPTO_TEST is not set

#
# Authenticated Encryption with Associated Data
#
# CONFIG_CRYPTO_CCM is not set
# CONFIG_CRYPTO_GCM is not set
# CONFIG_CRYPTO_SEQIV is not set

#
# Block modes
#
CONFIG_CRYPTO_CBC=y
# CONFIG_CRYPTO_CTR is not set
# CONFIG_CRYPTO_CTS is not set
# CONFIG_CRYPTO_ECB is not set
# CONFIG_CRYPTO_LRW is not set
# CONFIG_CRYPTO_PCBC is not set
# CONFIG_CRYPTO_XTS is not set

#
# Hash modes
#
# CONFIG_CRYPTO_HMAC is not set
# CONFIG_CRYPTO_XCBC is not set

#
# Digest
#
# CONFIG_CRYPTO_CRC32C is not set
# CONFIG_CRYPTO_MD4 is not set
CONFIG_CRYPTO_MD5=y
# CONFIG_CRYPTO_MICHAEL_MIC is not set
# CONFIG_CRYPTO_RMD128 is not set
# CONFIG_CRYPTO_RMD160 is not set
# CONFIG_CRYPTO_RMD256 is not set
# CONFIG_CRYPTO_RMD320 is not set
# CONFIG_CRYPTO_SHA1 is not set
# CONFIG_CRYPTO_SHA256 is not set
# CONFIG_CRYPTO_SHA512 is not set
# CONFIG_CRYPTO_TGR192 is not set
# CONFIG_CRYPTO_WP512 is not set

#
# Ciphers
#
# CONFIG_CRYPTO_AES is not set
# CONFIG_CRYPTO_ANUBIS is not set
# CONFIG_CRYPTO_ARC4 is not set
# CONFIG_CRYPTO_BLOWFISH is not set
# CONFIG_CRYPTO_CAMELLIA is not set
# CONFIG_CRYPTO_CAST5 is not set
# CONFIG_CRYPTO_CAST6 is not set
CONFIG_CRYPTO_DES=y
# CONFIG_CRYPTO_FCRYPT is not set
# CONFIG_CRYPTO_KHAZAD is not set
# CONFIG_CRYPTO_SALSA20 is not set
# CONFIG_CRYPTO_SEED is not set
# CONFIG_CRYPTO_SERPENT is not set
# CONFIG_CRYPTO_TEA is not set
# CONFIG_CRYPTO_TWOFISH is not set

#
# Compression
#
# CONFIG_CRYPTO_DEFLATE is not set
# CONFIG_CRYPTO_LZO is not set

#
# Random Number Generation
#
# CONFIG_CRYPTO_ANSI_CPRNG is not set
# CONFIG_CRYPTO_HW is not set

#
# Library routines
#
CONFIG_GENERIC_FIND_LAST_BIT=y
# CONFIG_CRC_CCITT is not set
# CONFIG_CRC16 is not set
# CONFIG_CRC_T10DIF is not set
# CONFIG_CRC_ITU_T is not set
# CONFIG_CRC32 is not set
# CONFIG_CRC7 is not set
# CONFIG_LIBCRC32C is not set
CONFIG_ZLIB_INFLATE=y
CONFIG_PLIST=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_DMA=y
-------------- next part --------------
#!/bin/tcsh
# useconfig Coh_alias
# useconfig cohalias
# useconfig cohalias232
# useconfig test_mmuhifi_c3
# useconfig DC_C_233L_lx200
useconfig DC_D_233L_Avnt60
# useconfig   DC_C_233L_Avnt60_ca
# useconfig dc233c_ca
# useconfig c1lx2_lx200
# useconfig DC_B_232L
# useconfig Coh_232L
# useconfig DC_C_233L_lx200
# useroot   boreal.new
useroot   cottonwood_1
# useroot   cottonwood_1.13-Feb-2011
# useroot   boreal.steve
# bconfig   cohalias232
# bconfig   dc_c_233l_lx200
# bconfig     dc233c_ca
bconfig     dc233c
# bconfig     c1lx2_lx200
# bconfig     centillium_c1p600
# bconfig   coh_232l
# bconfig   dc_b_232l
# broot     /opt/work/buildroot
# broot     /export/builds/buildroot
# broot     /export/src/buildroot2
# broot     /export/src/HiFi-2_DemoBoard/buildroot-xtensa-smp
# broot       /export/src/HiFi-2_DemoBoard/buildroot-xtensa-HiFi2-Snapshot.19.clone
# broot        /home/pdelaney/src/HiFi-2_DemoBoard/buildroot-xtensa-HiFi2-Snapshot.11-June-2010
# broot       /export/src/HiFi-2_DemoBoard/buildroot-xtensa-HiFi2-Snapshot.3
# broot       /export/src/HiFi-2_DemoBoard/buildroot-xtensa-HiFi2-Snapshot.5
# broot       /export/src/Transswitch/src/buildroot-xtensa-HiFi2-Snapshot-Transwitch-uClibc-with-debug-info
# broot	    /export2/src/Transwitch/buildroot-xtensa-HiFi2-Snapshot
broot	    /export2/DC_C_233L/src/buildroot-xtensa-HiFi2-Snapshot
# broot     /export/src/buildroot3
# broot     /export/src/buildroot6
#
setenv ARCH xtensa

setenv INSTALL_MOD_PATH /exports/LINUX_ROOT.HiFi-2

usewhat
bwhat

echo ddd -debugger xt-gdb
# ddd /home/pdelaney/bin/xtensa-elf-gdb-rvi  -n
# /fac/vol6/software/pdelaney/Work/boreal.new/swtools-x86-linux/bin/xt-gdb -n
# exec ddd -debugger /fac/vol6/software/pdelaney/Work/cottonwood_1/swtools-x86-linux/bin/xt-gdb -n 
# exec ddd -debugger /fac/vol6/software/pdelaney/Work/cottonwood_1/builds-x86-linux/_swtools_/xbuild/Software/gdb/gdb/gdb -n
exec ddd -debugger /fac/vol6/software/pdelaney/Work/cottonwood_1/swtools-x86-linux/bin/xt-gdb -n &
# /fac/vol6/software/pdelaney/Work/cottonwood_1/swtools-x86-linux/bin/xt-gdb -n 
# /fac/vol6/software/pdelaney/Work/cottonwood_1/swtools-x86-linux/bin/xt-gdb -n 
# /fac/vol6/software/pdelaney/Work/cottonwood_1/swtools-x86-linux/bin/xt-gdb -n 
# exec ddd -debugger ./xtensa-elf-gdb -n &
# exec ddd -debugger /fac/vol6/software/pdelaney/Work/boreal.new/swtools-x86-linux/bin/xt-gdb -n &
# exec ddd -debugger /fac/vol6/software/pdelaney/Work/boreal.new/swtools-x86-linux/bin/xt-gdb -n &
# exec ddd -debugger /fac/vol6/software/pdelaney/Work/boreal.new/swtools-x86-linux/bin/xt-gdb -n &
# exec xt-gdb

-------------- next part --------------
#
# Example .xt-gdbinit file:
#
#	Sets a hardware breakpoint at _startup to setup
#	kernel breakpoints once the V3 MMU has remapped 
#	to our normal virtaul mappings.
#
#	Includes general purpose macros for dumping the
#	the state of the PTEs, TLB, task list and switching
#	the context to a particular task for backtrace.
#
#	Breakpoints in exception vectors can only be enabled
#	once the exception vectors have been set up by the
#	kernel.
#
#	Tuneed for used with xt-gdb driven with ddd with
#	kernel compiled without optimization.
#
#					    -piet
#
set editing on
set radix 0x0a
set print pretty
set print array
set print union
set pagination off
set can-use-hw-watchpoints 1
set print elements 64
set var $doing_commands = 0
set var $sa_tcp_breakpoints = 0
set var $set_exception_breakpoints = 0
set var $mess_with_context_asid = 0

set var $monitor_trace_supported = 1
set var $monitor_trace_enabled = 0
set var $monitor_trace_enabled_during_load = 0
set var $monitor_verify_supported = 1
set var $monitor_verify_enabled = 0
set var $monitor_async = 1

set var $debug_stress_test = 0
set var $debug_irq_init = 0
set var $debug_irqs_disabled = 0
set var $debug_irq_handler = 0
set var $debug_uart = 0
set var $debug_sound = 0
set var $debug_lcd = 0
set var $debug_initcalls = 0
set var $debug_modules = 0
set var $debug_all_sound = 0
set var $debug_vm_page_mapcount = 0
set var $debug_vm_page_mapcount_writers = 0
set var $debug_clear_lazy_smp_coprocessor_flushing_enabled = 0

# NOTE: A Breakpoint at init_arch causes 2nd CPU to get stuck;
#       which is a handy way to come up with just 1 CPU
set var $debug_init_arch = 0

# $debug_reset needed for placing breakpoints with V3 MMU
set var $debug_reset = 1		

set var $debug_skip_free_initmem = 1
set var $debug_out_of_memory = 0
set var $debug_start_kernel = 0
set var $debug_platform_init = 0
set var $debug_platform_setup = 0
set var $debug_setup_arch = 0
set var $debug_mem_init = 0
set var $debug_page_table_code = 0
set var $debug_bootmem_init = 0
set var $debug_early_page_alloc = 0
set var $debug_highmem_init = 0
set var $debug_xtensa_highmem = 0
set var $debug_xtensa_kmap_atomic = 0
set var $debug_generic_highmem = 0
set var $debug_enable_highmem_graphs = 1
set var $debug_page_faults = 0
set var $set_page_fault_debug = 0
set var $debug_free_area_init_node = 0
set var $debug_unmap_region = 0
set var $debug_open_eth = 0
set var $debug_exceptions = 0
set var $debug_page_migration = 0
set var $mx = 0

set var $debug_iss_simulation = 1
set var $debug_iss_trace_enabled = 0
set var $debug_iss_initial_trace_level = 0
if $debug_iss_simulation
    set var $debug_hw_breakpoints_supported = 0
else
    set var $debug_hw_breakpoints_supported = 1
end

set var $use_mmu = 1

if $mx
	set var $debug_secondary = 1
	set var $debug_ipi_messages = 1
	set var $debug_cpu_init = 1
	set var $debug_migration = 1
	set var $debug_boot_secondary_processors = 1
else
	# These Breakpoints are not available for non-SMP systems.
	# MUST BE SET to ZERO
	set var $debug_secondary = 0
	set var $debug_ipi_messages = 0
	set var $debug_cpu_init = 0
	set var $debug_migration = 0
	set var $debug_boot_secondary_processors = 0
end
set logging on
set logging file kgdb.log
set logging overwrite on
# show logging
# set debug remote 10
# set debug remote 1
# set backtrace limit 50

display/i $pc
#target sim --timer
set output-radix 16

# set debug remote 1
# set remotebaud 115200
# set remotebaud 19200

# target remote udp:192.168.110.61:6443 MY_GATE
# target remote /dev/ttyS0
# target remote gums:20000 0

#
# Delete Any Existing Breakpoints. This makes
# it possible to source this .xt-gdbinit file
# more than once.
delete

if $mx
	add-symbol-file vmlinux 0xd0000000
#	add-symbol-file vmlinux 0
	file arch/xtensa/boot/Image.elf
#	target remote gums:20000 0xd0000012
#	target remote gums:20001 0xd0000012
#	target remote gums:20002 0xd0000012
#	target remote gums:20000 &spill_location_0
#	target remote localhost:40000 &spill_location_0
#	target remote localhost:60000 &spill_location_0
#	target remote localhost:40001 &spill_location_1
#	target remote localhost:20002 &spill_location_2
#	target remote gums:20001 &spill_location_1
#	target remote gums:20002 &spill_location_2
#
# 2nd Board
#	target remote localhost:20010 0
#	target remote localhost:20000 0
else
	if $use_mmu
		echo "Using MMU, assumne V2 MMU Mappings\n"
		echo "add-symbol-file vmlinux 0xd0003000\n"
		      add-symbol-file vmlinux 0xd0003000
	else
		echo "Not Using MMU, assume virtual == physical mappings\n"
		echo "add-symbol-file vmlinux 0x00001000\n"
		      add-symbol-file vmlinux 0x00001000
	end

	file arch/xtensa/boot/Image.elf
	if ($debug_iss_simulation != 0 )
	    # Simulator can used up to 128MB [134,217,728 Bytes]
	    # Use 'xt-run --help' to see args forwared by 'target sim' gdb command.

	    if ($debug_iss_trace_enabled)
#	  	echo 'target sim --turbo --cc_none --memlimit=128 --client_cmds="trace --level 0 --syms iss_trace.out" \n'
#	              target sim --turbo --cc_none --memlimit=128 --client_cmds="trace --level 0 --syms iss_trace.out"

	  	echo 'target sim --turbo            --memlimit=128 --client_cmds="trace --level 0 --syms iss_trace.out" \n'
	              target sim --turbo            --memlimit=128 --client_cmds="trace --level 0 --syms iss_trace.out"

#		echo 'target sim                    --memlimit=128 --client_cmds="trace --level 0 --syms iss_trace.out" \n'
#	              target sim                    --memlimit=128 --client_cmds="trace --level 0 --syms iss_trace.out"

		echo "\n"
		echo "Change iss trace level later, when you are near a problem, with:\n"
		echo "    iss client trace level 3"
	    else
		 echo "target sim --turbo --memlimit=128\n"
		       target sim --turbo --memlimit=128
	    end

	else 

	    echo "target remote localhost:20000  &spill_location_0\n"
#	    echo "target remote  tuscana2:20000  &spill_location_0\n"
#	          target remote localhost:40000  &spill_location_0
#	          target remote localhost:60000  &spill_location_0
	          target remote localhost:20000  &spill_location_0
#	          target remote  tuscana2:20000  &spill_location_0
#	          target remote  wintrax1:20000  &spill_location_0
#	          target remote  192.168.11.204:20000  &spill_location_0
        end
end

if $debug_iss_simulation == 0
  reset

  if $monitor_trace_supported
    if $monitor_trace_enabled_during_load
      echo "Monitor trace on\n"
      monitor trace on
      echo "monitor trace level 60; max compiled in to xocd is typically 65"
      monitor trace level 95
      echo "monitor trace file /export2/tmp/trace"
      monitor trace file /export2/tmp/trace
    else
       echo "Monitor trace off\n"
       monitor trace off
    end
  end
  
  if $monitor_verify_supported
  echo "monitor verify all off\n"
#
#  echo "monitor verify write on\n"
  monitor verify all off
#   monitor verify all on
# monitor verify write on
   echo "monitor verify verbose off\n"
#  monitor verify all off
   monitor verify verbose off
  end

if $xocd_async_enabled
 	echo "monitor async on\n"
 	monitor async on
else
 	echo "monitor async off\n"
 	monitor async off
end

# set remote memory-write-packet-size 524288
#
# DEFAULT is 262K if fixed
# ========================
# 217 KB/s with no Verify
# FAILS FOR verify all
#set remote memory-write-packet-size 262144 
#
# Too big for ASYNC  verify write on
# set remote memory-write-packet-size 131072
#
# 50  KB/s with ASYNC  verify write on
# 183 KB/s with no Verify
# set  remote memory-write-packet-size 65536
#
# 189 KB/s no veriry
# FAILS for verify all
# set remote memory-write-packet-size 32768
#
# 193 KB/s no veriry
# 40KB/s with ASYNC verify write on
# TOO BIG for WINDOWS?
# set remote memory-write-packet-size 16384
#
# 195 KBps no veriify
# 85 KBps with verfiy all and ASYNC
# set remote memory-write-packet-size  8192
#
# 184K without verify
# set remote memory-write-packet-size  4096
#
set remote memory-write-packet-size  2048
# set remote memory-write-packet-size  999
# set remote memory-write-packet-size  512
# set remote memory-write-packet-size  256
  set  remote memory-write-packet-size  fixed
  show remote memory-write-packet-size
  
  
  echo "load: Started\n"
  shell date
  load
  shell date
  echo "load: Completed\n"
  
  if $monitor_trace_supported
    if $monitor_trace_enabled
      echo "Monitor trace on\n"
      monitor trace on
      echo "monitor trace level 60"
      monitor trace level 60
      echo "monitor trace file trace /export2/tmp/Trace"
      monitor trace file /export2/tmp/Trace
    end
  end
  
  if $monitor_verify_supported
    if $monitor_verify_enabled
      echo "Monitor verify all on\n"
      monitor verify all on
    end
  end

end

#   NOTE: you can't enable this breakpoint while
#         single stepping in the MMU-V3 remapping
#	  code and mapped to 0x46000000.
#
def set_breakpoints
	echo "\n"
	echo "================================ set_breakpoint: Beginning ==================================\n"
	echo "\n"

	if $debug_clear_lazy_smp_coprocessor_flushing_enabled
		echo "\n"
		echo "Setting lazy_smp_coprocessor_flushing_enabled = 1\n"
		set lazy_smp_coprocessor_flushing_enabled = 1
	end

	if $debug_irq_handler
		echo "\n"
		echo "Setting IRQ Handler Breakpoints\n"
		break *&__set_irq_handler
		break do_interrupt
		break handle_level_irq
	end

	if $debug_skip_free_initmem
		echo "\n"
		echo "Skip Free of Init Memory; might have breakpoints in init code.\n"	
		set skip_free_of_initmem = 1
	end

	if $debug_page_table_code
		echo "\n"
		echo "Setting Page Table Vmalloc Code  Breakpoints (mm/vmalloc.c)\n"
		break map_vm_area
		break  vmap_page_range
		break   vmap_pud_range
		break    vmap_pte_range
		break     __pte_alloc_kernel
		break      pte_alloc_one_kernel
#		break __cache_alloc
#		break pgd_ctor
	end

	if $debug_page_migration
		echo "\n"
		echo "Setting page migration Breakpoints\n"
		break setup_usemap
		break get_pageblock_migratetype
		break get_pageblock_flags_group
		break free_hot_cold_page
		break free_pages_bulk
	end


	if $debug_pmd_code
		echo "\n"
		echo "Setting Page Middle Directory (PMD) Code  Breakpoints\n"
	end

	if $debug_bootmem_init 
		echo "\n"
		echo "Setting Boot Memory Initialization Breakpoints\n"
		break mem)init
		break bootmem_init
		break zones_init
		break free_reserved_mem
		break free_initmem
		break free_area_init_node
		break free_bootmem
		break mark_bootmem
		break mark_bootmem_node
		break init_bootmem_node
		break init_bootmem
		break free_all_bootmem_core
		break init_bootmem_core
	end

	if $debug_early_page_alloc
		echo "\n"
		echo "Setting Early Page Allocation Initialization Breakpoints\n"
		break free_area_init_node
		break alloc_node_mem_map
		break calculate_node_totalpages
		break free_hot_page
		break mem_init
	end

	if $debug_highmem_init
		echo "\n"
		echo "Setting High-Memory Initialization Breakpoints (arch/xtensa/mm/mmu.c)\n"
		break page_table_range_init
		break permanent_kmaps_init
		break pagetable_init
		break kmap_init
		break init_mmu
		break paging_init
		break pgd_ctor
		break pgtable_cache_init
	end

	if $debug_xtensa_highmem
		echo "\n"
		echo "Setting Xtensa High-Memory Breakpoints (arch/xtensa/mm/highmem.c)\n"
		break kmap
		break kunmap
		break debug_kmap_atomic_prot
		break kmap_atomic_prot
#		break kmap_atomic
#		break kunmap_atomic
		break kpte_clear_flush
		break kmap_atomic_pfn
		break kmap_atomic_to_page
#		break __pte_alloc_kernel
#		break xdr_partial_copy_from_skb
	end

	if $debug_xtensa_kmap_atomic
		break kmap_atomic
		break kunmap_atomic
	end

	if $debug_generic_highmem
		echo "\n"
		echo "Setting Generic High-Memory Breakpoints (mm/highmem.c)\n"
#		break nr_free_highpages
		break flush_all_zero_pkmaps
		break kmap_flush_unused
		break map_new_virtual
		break kmap_high
		break kunmap_high
		break page_address_map
		break page_address
		break set_page_address
		break page_address_init
	end

	if $debug_enable_highmem_graphs
		echo "\n"
		echo "Try Enableing ddd graphs of displays of global highmem arrays; ... \n"
		echo "... Bug in ddd makes it necessary to cut-N-past this into the ddd console.\n"
		echo graph display pkmap_page_dir
		echo graph display *kmap_pte
		echo graph display pkmap_count
		echo graph display last_pkmap_nr
	end

	if $set_page_fault_debug
		echo "\n"
		echo "Enabling Tracing in do_page_fault\n"
		set page_fault_debug = 0

		break do_page_fault
		set $do_page_fault_bpnum = $bpnum

		break do_group_exit
		set $do_group_exit_bpnum = $bpnum
	end

	if $debug_page_faults
		echo "\n"
		eccho "Enabling Breakpoints in fault.c\n"
		break platform_init
		break do_page_fault
		break handle_mm_fault
		break handle_pte_fault
		break do_linear_fault
		break __do_fault
		break filemap_fault
	end

	if ($mx != 0)
	    # echo "MX\n"
	    if ($debug_cpu_init != 0)
		echo "\n"
		echo "Setting CPU Initialization Breakpoints\n"
		break cpu_up
		break _cpu_up
		break __cpu_up
		break cpu_online
		break smp_init
		break smp_init_cpus
		break get_core_count
		break smp_prepare_cpus
		break secondary_start_kernel
	    end

	    if ($debug_secondary != 0)
		echo "\n"
		echo "MX/SMP Processor: Setting secondary CPU Breakpoints\n"
		break wakeup_secondary_cpu
		break secondary_irq_enable
	    end

	    if $debug_boot_secondary_processors == 0
		echo "\n"
		echo "Setting boot_secondary_processors = 0\n"
		set boot_secondary_processors = 0
	    end

    	    if ($debug_migration != 0) 
		echo "\n"
		echo "Setting Migration Breakpoints\n"
		break load_balance
        	break *&fast_coprocessor
    	    end

	    if ($debug_ipi_messages != 0)
		echo "MX/SMP Processor: Setting IPI Message Breakpoints\n"
		break send_ipi_message
		break recv_ipi_messages
	    end
	
	    if ($debug_irq_init != 0)
		echo "\n"
	        echo "MX/SMP Processor, setting MX IRQ Breakpoints\n"
		break xtensa_mx_irq_mask
		break xtensa_mx_irq_unmask
		break xtensa_mx_irq_ack
		break xtensa_mx_irq_retrigger
		break secondary_irq_init
	   else
		echo "\n"
		echo "MX/SMP Processor: No irq_init BreakPoints to be set.\n"
	   end	

	else
	    # echo "NOT_MX\n"
	    if ($debug_irq_init != 0)
		echo "\n"
	        echo "Non-MX/UP/Non-SMP Processor, setting STD IRQ Breakpoints\n"
		break xtensa_irq_mask
		break xtensa_irq_unmask
		break xtensa_irq_ack
		break xtensa_irq_retrigger
	    else
		 echo "\n"
		 echo "Non-MX/UP/Non-SMP Processor:  No irq_init BreakPoints to be set\n"
	    end
	end 

	if ($debug_free_area_init_node != 0)
	    echo "\n"
	    echo "Setting free_area_init_node Breakpoint\n"	
	    break free_area_init_node
	    set var $free_area_init_node = $bpnum
	end

	# echo "$debug_exceptions: "
	# print $debug_exceptions
	# echo "\n"
	if ($debug_exceptions != 0)
		echo "\n"
	        echo "Setting Exception Handler Breakpoints; CAN'T BE ENABLED YET.\n"
		break  *&_UserExceptionVector
		set var $_UserExceptionVector = $bpnum
		disable $_UserExceptionVector

		break  *&_KernelExceptionVector
		set var $_KernelExceptionVector = $bpnum
		disable $_KernelExceptionVector

		break  *&_DoubleExceptionVector
		set var $_DoubleExceptionVector = $bpnum
		disable $_DoubleExceptionVector
	
		break  *&fast_unaligned
		set var $fast_unaligned = $bpnum
		disable $fast_unaligned
	end

	# echo "$debug_init_arch: "
	# print $debug_init_arch
	# echo "\n"
	if ($debug_init_arch != 0)
	    echo "\n"	
	    echo "Setting ARCH Initialization Breakpoints\n"
	    break init_arch
	    set $init_arch = $bpnum
	    if ($doing_commands != 0)
		echo "\n"
		echo "TYPE 'set_breakpoints' TO ENABLE ARCH INITIALIZATION BREAKPOINTS\n"
		echo "\n"
	    else
	      	commands $init_arch
		    disable $init_arch
		    echo "\n"	
	            echo "init_arch(): Enabling Breakpoints at Exception Vectors\n"
	            enable $_DoubleExceptionVector_Hang
	            echo skip enable $fast_unaligned
	       	    continue
	      	end
	    end
	 end
	
	if ($debug_start_kernel != 0)
	    echo "\n"
	    echo "Setting 'start_kernel' Breakpoint\n"
	    break start_kernel
	    set $start_kernel = $bpnum
	end
	
	if ($debug_platform_init != 0)
	    echo "\n"
	    echo "Setting 'platform_init' breakpoint\n"
	    if $debug_platform_init
	        break platform_init
	        set $platform_init = $bpnum
	    end
	end

	if ($debug_platform_setup != 0)
		echo "\n"
		echo "Setting 'platform_setup' breakpoint\n"	
		break platform_setup
		set $platform_setup = $bpnum
	end
	
	if ($debug_setup_arch != 0)
		echo "\n"
		echo "Setting 'setup_arch' breakpoint\n"	
		break setup_arch
		set $setup_arch = $bpnum
	end
	
	if ($debug_unmap_region != 0)
	    break unmap_region
	    set $unmap_region = $bpnum
	end
	
	 if ($debug_irqs_disabled != 0)
	    break irqs_disabled
	    set $irqs_disabled = $bpnum
	end
	
	if ($debug_out_of_memory != 0)
	    echo "\n"	
	    echo "Setting 'out_of_memory' Breakpoints\n"
	    break out_of_memory
	    set $out_of_memory = $bpnum
	    
	    break oom_kill_process
	    set $oom_kill_process = $bpnum
	else
	     echo "\n"
	     echo "NOT Setting 'out_of_memory' Breakpoints\n"			
	end
	
#
#	You likely don't want to have a breakpoint here
#	with multiple cpu's. The other CPUs will think
#	it's a SIGTRAP and leave things in a bad state.
#	There will be BREAK instructions in your code
#	and you will have to detach.
#
	if ($debug_stress_test == 0)
		echo "\n"
		echo "Not doing Stress Test; Setting Additional Breakpoints\n"
		break dump_stack
		break do_unaligned_user
		break die 
	else
		echo "\n
		echo "Doing Stress Test; NOT Setting Additional Breakpoints\n"
	end
	

	if ($debug_open_eth != 0)
		echo "\n"
		echo "Setting Open Ethernet Breakpoints\n"
                break oeth_probe
                break oeth_open
                break oeth_start_xmit
                break oeth_init
                break oeth_interrupt
                break ip_local_deliver_finish
                break ip_local_deliver
                break ip_rcv_finish
                break ip_rcv
	else
		echo "\n"
		echo "NOT Setting Open Ethernet Breakpoints\n"
	end

	if ($debug_initcalls != 0)
		echo "\n"
		echo "Setting Initcall Breakpoints\n"
		break do_one_initcall
	else
		 echo "\n"
		 echo "NOT Setting Initcall Breakpoints\n"
	end

	if ($debug_modules != 0)
		echo "\n"
		echo "Setting Module Breakpoints\n"
		break load_module
		set var $load_module_bpnum = $bpnum
		if $doing_commands
			echo "Type 'set_breakpoints' to set Module Breakpoints\n"
		else
		    commands $load_module_bpnum
			break sys_init_module
			break apply_relocate_add
			break do_one_initcall
		    end
		end
		# set apply_relocate_add_enabled = 1
	else
		echo "\n"
		echo "NOT Setting Module Breakpoints\n"	
	end

	# break print_oops_end_marker
	# break show_stack
	# break  *&fast_second_level_miss_double_kernel
	# break  *&_DoubleExceptionVector_WindowOverflow
	# break update_mmu_cache
	# break copy_pte_range
	# break zap_pte_range
	# break remap_pte_range
	# break change_pte_range
	# break move_ptes
	# break ic_dynamic
	# break parse_early_param


    if ($debug_uart != 0)
	echo "\n"
	echo "Setting UART Breakpoints\n"
    	break uart_get_baud_rate	
    	break time_init	
    	break uart_parse_options	
    	break uart_set_options	
    	break __platform_calibrate_ccount
    end	

    if ($debug_all_sound != 0) 
	echo "\n"
	echo "Setting ALL HiFi-2 Sound Driver Breakpoints\n"
	#
	# HiFI-2 Driver at sound/oss/sound_lx200.c
	# No Interrupt handler.
	#
	break aic23_write_reg
	break aic23_config_dac
	break aic23_set_vol
	break aic23_get_vol
	break aic23_set_freq
	break slx200_fifo_logic
	break slx200_audio_mute
	break slx200_fifo_write
	break slx200_set_sample_rate
	break slx200_set_volume
	break slx200_set_channels
	break slx200_audio_ioctl
	break slx200_audio_write
	break slx200_audio_open
	break slx200_audio_release
	break slx200_init
    end

    if ($debug_sound != 0)
	echo "\n"
	echo "Setting Common HiFi-2 Sound Driver Breakpoints\n"
	break slx200_audio_open
	break slx200_audio_write
	break slx200_fifo_write
	break slx200_audio_ioctl
	break i2s_output_interrupt
	break i2s_input_interrupt
	break move_full_audio_buffs_to_free_list
	break release_audio_buffs
	break slx200_audio_release
	graph display free_audio_buffs
	graph display full_audio_buffs
    else
	 echo "\n"
	 echo "NOT Setting Common HiFi-2 Sound Driver Breakpoints\n"	
    end

    if ($debug_lcd != 0)
	break lcd_init
	break lcd_disp_at_pos
	break lcd_shiftleft
	break lcd_shiftright
    end


    if ($debug_vm_page_mapcount != 0)
	echo "\n"
	echo "Setting vm_page_mapcount Breakpoints\n"
	break reset_page_mapcount
	break page_mapcount
	break page_dup_rmap
#	break get_page_bootmem
#	break put_page_bootmem
	break page_add_anon_rmap
	break page_add_new_anon_rmap
	break page_add_file_rmap
	break page_dup_rmap
	break page_remove_rmap
#	break free_map_bootmem
    end

    if ($debug_vm_page_mapcount_writers != 0)
	echo "\n"
	echo "Setting vm_page_mapcount_writers Breakpoints\n"
	break reset_page_mapcount
	break page_dup_rmap
#	break get_page_bootmem
#	break put_page_bootmem
	break page_add_anon_rmap
	break page_add_new_anon_rmap
	break page_add_file_rmap
	break page_dup_rmap
	break page_remove_rmap
    end

#
# Misc Breakpoints
#
	echo "\n"
	echo "Setting Misc Breakpoints\n"
	break break_on 
	break die 
	break panic
	break warn_slowpath
#	break xtensa_breakpoint
#	break show_regs
#	break handle_pte_fault
#	break bad_page_fault
	break bad_page
	break bad_page_fault_bp
	break update_mmu_cache_bp
	break IRQ_likely_stack_overflow_breakpoint
#	break swapon
	break do_debug
	break do_illegal_instruction
	break do_multihit
	break do_unhandled
# 	break dtlb_probe
#	break get_current_bp
# 	break _image_start
#	break *&_startup
#	break emit_log_char
#	break printk
#	break init_mmu
#	break init_IRQ
#
	echo "\n"
	echo "=============================== set_breakpoint: Completed ======================================\n"
	echo "\n"
end

def set_commands
        echo "\n"
        echo "================================ set_commands: Beginning ==================================\n"

	if $do_page_fault_bpnum
		echo "Enableing commands for do_page_fault Breakpoint\n"
		commands $do_page_fault_bpnum
			echo c 85
		end
	end

	if $do_group_exit_bpnum
		echo "Enabling commands for do_group_exit Breakpoint\n"
		commands $do_page_fault_bpnum
			bt
			print $windowbase
			print $windowstart
		end
	end

        echo "================================ set_commands: Completed ==================================\n"
        echo "\n"
end




def source_gdb_macros
    #
    # Bring in gdb macros after re-mapping MMU
    # so they can access config constants.
    #	
    source ps.gdb
    source showtlb.gdb
    source showcache.gdb
    source show_mem_pte.gdb
    source show_pages.gdb
end

def set_kernel_flags
	echo "$mess_with_context_asid:"
	print $mess_with_context_asid
	if $mess_with_context_asid != 0
		echo "set config_ignore_mm_context_asid = 1;\n"
		set config_ignore_mm_context_asid = 1
		print config_ignore_mm_context_asid
	end
end

#
# Now we set up a HARDWARE BREAKPOINT at the
# first code executed after we map the MMU
# to the virtual addresses Linux is configured
# for; typically 0xd000,000 region.
#
# Once we hit _startup it's safe to set
# the normal kernel brekpoints and to
# play with configurable global variables.
#
if $debug_hw_breakpoints_supported
  show can-use-hw-watchpoints
  hbreak _startup
else
  break set_breakpoints
end

set var $_startup = $bpnum
commands $_startup
    set var $doing_commands = 1
    set_breakpoints
    echo type "set_commands"
    source_gdb_macros
    set_kernel_flags    
    delete $_startup
    if $debug_hw_breakpoints_supported
        hbreak *&_DoubleExceptionVector_Hang
#       hbreak 0X200014fc
    end
    info breakpoints
    set var $doing_commands = 0
    set bootmem_debug = 0
#   break do_exit
#   break do_signal
end




define exit 
	quit
	end

define regs 
	info registers pc a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15
	end

define cregs
	info registers ccount ccompare0 ccompare1
	end

define iregs
	info registers interrupt intenable icount icountlvl psintlvl
	end

define lregs
	info registers lbeg lend lcount
	end

define restart
	set *(volatile unsigned *)0xfd020010 = 0xdead
	end

define i8regs 
	info registers i80 i81 i82 i83 i84 i85 i86 i87 i88 i89 i810 i811 i812 i813 i814 i815
	end

define i16regs 
	info registers i160 i161 i162 i163 i164 i165 i166 i167 i168 i169 i1610 i1611 i1612 i1613 i1614 i1615
	end

define i32regs 
	info registers i320 i321 i322 i323 i324 i325 i326 i327 i328 i329 i3210 i3211 i3212 i3213 i3214 i3215
	end

define extraregs 
	info registers s8 s16 s32 result
	end

define memfree
	graph display contig_page_data

	print contig_page_data.node_zones[0].name
	print contig_page_data.node_zones[0].present_pages

	print contig_page_data.node_zones[1].name
	print contig_page_data.node_zones[1].present_pages

	print contig_page_data.node_zones[2].name
	print contig_page_data.node_zones[2].present_pages
end

if $debug_iss_simulation
   echo "Starting Simulation\n"
   break _ResetVector
   break _image_start
   break _startup
#   run
end

echo ".xt-gdbinit: Done\n"


More information about the linux-xtensa mailing list