Aaronwu,
Please help!
I have tried a couple of changes and can't get rid of the CPLB miss
I reviewed , but I don't know how to add a cplb entry, please help me there
Below are the changes I made and at the end is a boot capture and the CPLB miss
I modified mem_map.h as such
/* Async Memory Banks */
/* //JK Added banks 4-7 */
#define ASYNC_BANK7_BASE 0x20700000 /* Async Bank 7 */
#define ASYNC_BANK7_SIZE 0x00100000 /* 1M */
#define ASYNC_BANK6_BASE 0x20600000 /* Async Bank 6 */
#define ASYNC_BANK6_SIZE 0x00100000 /* 1M */
#define ASYNC_BANK5_BASE 0x20500000 /* Async Bank 5 */
#define ASYNC_BANK5_SIZE 0x00100000 /* 1M */
#define ASYNC_BANK4_BASE 0x20400000 /* Async Bank 4 */
#define ASYNC_BANK4_SIZE 0x00100000 /* 1M */
#define ASYNC_BANK3_BASE 0x20300000 /* Async Bank 3 */
#define ASYNC_BANK3_SIZE 0x00100000 /* 1M */
#define ASYNC_BANK2_BASE 0x20200000 /* Async Bank 2 */
#define ASYNC_BANK2_SIZE 0x00100000 /* 1M */
#define ASYNC_BANK1_BASE 0x20100000 /* Async Bank 1 */
#define ASYNC_BANK1_SIZE 0x00100000 /* 1M */
#define ASYNC_BANK0_BASE 0x20000000 /* Async Bank 0 */
#define ASYNC_BANK0_SIZE 0x00100000 /* 1M */
I found this in mmu_context.h and changed it
/*//JK if (unlikely(addr >= ASYNC_BANK0_BASE && addr < ASYNC_BANK3_BASE + ASYNC_BANK3_SIZE)) */
if (unlikely(addr >= ASYNC_BANK0_BASE && addr < ASYNC_BANK7_BASE + ASYNC_BANK7_SIZE))
page = (addr - (ASYNC_BANK0_BASE - _ramend)) >> 12;
else
I hunted down all the ASYNC_BANK3_BASE and size and changed them to ASYNC_BANK7_BASE and size
and I am still getting the CPLB miss
U-Boot 2011.09 (ADI-2011R1) (Feb 21 2014 - 12:10:08)
CPU: ADSP bf526-0.2 (Detected Rev: 0.2) (parallel flash boot)
Board: ADI BF526 ML Ctrl-Board board
Support: JKadin@harman.com
Clock: VCO: 400 MHz, Core: 400 MHz, System: 100 MHz
RAM: 32 MiB
Flash: 8 MiB
In: serial
Out: serial
Err: serial
KGDB: [on serial] ready
EUP STBY: gpio: PG11 (27) set to 1
CPLD Reset: gpio: PG0 (16) set to 1 - 0 - 1
Net: bfin_mac
Hit any key to stop autoboot: 0
Done.
..... done
Protected 5 sectors
## Booting kernel from Legacy Image at 01000000 ...
Image Name: bf527-2.6.34.7-ADI-2010R1ml52
Created: 2014-02-23 14:12:43 UTC
Image Type: Blackfin Linux Kernel Image (gzip compressed)
Data Size: 3605950 Bytes = 3.4 MiB
Load Address: 00001000
Entry Point: 0026e680
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Starting Kernel at = 0026e680
console [ttyBF0] enabled, bootconsole disabled
Calibrating delay loop... 796.67 BogoMIPS (lpj=1593344)
Mount-cache hash table entries: 512
Blackfin Scratchpad data SRAM: 4 KB
Blackfin L1 Data A SRAM: 16 KB (16 KB free)
Blackfin L1 Data B SRAM: 16 KB (16 KB free)
Blackfin L1 Instruction SRAM: 48 KB (42 KB free)
NET: Registered protocol family 16
Blackfin DMA Controller
ezbrd_init(): registering device resources
bio: create slab <bio-0> at 0
SCSI subsystem initialized
spi spi0.5: Warning: SPI CPHA not set: Slave Select not under software control!
See Documentation/blackfin/bfin-spi-notes.txt
bfin-spi bfin-spi.0: Blackfin on-chip SPI Controller Driver, Version 1.0, regs_base@ffc00500, dma channel@7
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
i2c-bfin-twi i2c-bfin-twi.0: Blackfin BF5xx on-chip I2C TWI Contoller, regs_base@ffc01400
musb_hdrc: version 6.0, musb-dma, host, debug=0
musb_hdrc musb_hdrc.0: MUSB HDRC host driver
musb_hdrc musb_hdrc.0: new USB bus registered, assigned bus number 1
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: MUSB HDRC host driver
usb usb1: Manufacturer: Linux 2.6.34.7-ADI-2010R1ml52 musb-hcd
usb usb1: SerialNumber: musb_hdrc.0
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
musb_hdrc musb_hdrc.0: USB Host mode controller at ffc03800 using DMA, IRQ 59
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 1024 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
NTFS driver 2.1.29 [Flags: R/W DEBUG].
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
JFFS2: default compression mode: priority
msgmni has been set to 48
io scheduler noop registered (default)
bfin-otp: initialized
bfin-uart: Blackfin serial driver
bfin-uart.0: ttyBF0 at MMIO 0xffc00400 (irq = 29) is a BFIN-UART
bfin-uart.1: ttyBF1 at MMIO 0xffc02000 (irq = 31) is a BFIN-UART
brd: module loaded
GPIO_PG10 granted
GPIO_PG10 Direction set as input
bfin-gpio: GPIO 26 is already reserved by BFIN-GPIO! (Documentation/blackfin/bfin-gpio-notes.txt)
IRQ for FP_HOST or GPIO_PG10 registered
GPIO_PG5 granted
GPIO_PG5 Direction set as input
bfin-gpio: GPIO 21 is already reserved by BFIN-GPIO! (Documentation/blackfin/bfin-gpio-notes.txt)
IRQ for CPLD_CPU or GPIO_PG5 registered
ml52_irq: gpio_request() - GPIO_PH10 - TrigIn success
ml52_irq: gpio_direction_input() - GPIO_PH10 - TrigIn success
bfin-gpio: GPIO 42 is already reserved by BFIN-GPIO! (Documentation/blackfin/bfin-gpio-notes.txt)
ml52_irq: request_irq() - GPIO_PH10 - TrigIn success
gpio-addr-flash: probing 16-bit flash bus
gpio-addr-flash: Found 1 x16 devices at 0x0 in 16-bit bank
Amd/Fujitsu Extended Query Table at 0x0040
number of CFI chips: 1
RedBoot partition parsing not available
gpio-addr-flash: Using board partition definition
Creating 3 MTD partitions on "gpio-addr-flash":
0x000000000000-0x000000040000 : "bootloader(nor)"
mtd: Giving out device 0 to bootloader(nor)
0x000000090000-0x000000800000 : "linux kernel(nor)"
mtd: Giving out device 1 to linux kernel(nor)
0x000000040000-0x000000090000 : "file system(nor)"
mtd: Giving out device 2 to file system(nor)
bfin_mii_bus: probed
bfin_mac: attached PHY driver [Generic PHY] (mii_bus:phy_addr=0:01, irq=-1, mdc_clk=2500000Hz(mdc_div=19)@sclk=100MHz)
bfin_mac bfin_mac.0: Blackfin on-chip Ethernet MAC driver, Version 1.1
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
bfin-wdt: initialized: timeout=20 sec (nowayout=0)
TCP cubic registered
NET: Registered protocol family 17
dma_alloc_init: dma_page @ 0x016a9000 - 256 pages at 0x01f00000
Freeing unused kernel memory: 4316k freed
mount: mounting devpts on /dev/pts failed: No such device
_____________________________________
a8888b. / Welcome to the uClinux distribution \
d888888b. / _ _ \
8P"YP"Y88 / | | |_| __ __ (TM) |
8|o||o|88 _____/ | | _ ____ _ _ \ \/ / |
8' .88 \ | | | | _ \| | | | \ / |
8`._.' Y8. \ | |__ | | | | | |_| | / \ |
d/ `8b. \ \____||_|_| |_|\____|/_/\_\ |
dP . Y8b. \ For embedded processors including |
d8:' " `::88b \ the Analog Devices Blackfin /
d8" 'Y88b \___________________________________/
:8P ' :888
8a. : _a88P For further information, check out:
._/"Yaa_: .| 88P| - http://blackfin.uclinux.org/
\ YP" `| 8P `. - http://docs.blackfin.uclinux.org/
/ \.___.d| .' - http://www.uclinux.org/
`--..__)8888P`._.' jgs/a:f - http://www.analog.com/blackfin
Have a lot of fun...
[01/Jan/2007:00:00:02 +0000] boa: server version Boa/0.94.14rc21
[01/Jan/2007:00:00:02 +0000] boa: server built Feb 23 2014 at 06:11:47.
[01/Jan/2007:00:00:02 +0000] boa: starting server pid=347, port 80
main() (V2) Sleeping for flash
MAC Addr: < 00 16 5A 00 02 6D >
BusyBox v1.16.2 (2014-02-23 06:11:49 PST) hush - the humble shell
root:/>
----------------------------------------------------------------------
(via telnet flash_eraseall /dev/mtd1 was executed, it ran until "Erasing 64 Kibyte @ 360000 -- 45 % complete."
and then the console showed the CPLB miss
----------------------------------------------------------------------
Data access CPLB miss
<5> - Used by the MMU to signal a CPLB miss on a data access.
Kernel OOPS in progress
Deferred Exception context
CURRENT PROCESS:
COMM=flash_eraseall PID=374 CPU=0
TEXT = 0x002b0040-0x002b5460 DATA = 0x002b5480-0x002b73e8
BSS = 0x002b73e8-0x002b76b0 USER-STACK = 0x002b8ee8
return address: [0x001160d8]; contents of:
0x001160b0: 05f4 3220 0167 3039 3032 6fa6 af65 300a
0x001160c0: 3045 e3ff ff9b e429 0015 3006 e3c7 5b4a
0x001160d0: a0e1 5041 3211 6c66 [9717] 0127 05b4 0010
0x001160e0: 05e4 3220 0167 6fa6 ce82 c801 a375 0000
ADSP-BF526-0.2 400(MHz CCLK) 100(MHz SCLK) (mpu off)
Linux version 2.6.34.7-ADI-2010R1ml52 (root@ubuntu) (gcc version 4.3.5 (ADI-2010R1-RC4) ) #1536 Sun Feb 23 06:12:41 PST 2014
SEQUENCER STATUS: Not tainted
SEQSTAT: 00002026 IPEND: 8008 IMASK: ffff SYSCFG: 0006
EXCAUSE : 0x26
physical IVG3 asserted : <0xffa00764> { _trap + 0x0 }
physical IVG15 asserted : <0xffa00fa0> { _evt_system_call + 0x0 }
logical irq 6 mapped : <0xffa003a0> { _bfin_coretmr_interrupt + 0x0 }
logical irq 27 mapped : <0x0013b448> { _bfin_twi_interrupt_entry + 0x0 }
logical irq 29 mapped : <0x000ed610> { _bfin_serial_dma_rx_int + 0x0 }
logical irq 30 mapped : <0x000ed384> { _bfin_serial_dma_tx_int + 0x0 }
logical irq 31 mapped : <0x000ed610> { _bfin_serial_dma_rx_int + 0x0 }
logical irq 32 mapped : <0x000ed384> { _bfin_serial_dma_tx_int + 0x0 }
logical irq 35 mapped : <0x0011c904> { _bfin_mac_interrupt + 0x0 }
logical irq 59 mapped : <0x001330d4> { _blackfin_interrupt + 0x0 }
logical irq 62 mapped : <0x001365e4> { _dma_controller_irq + 0x0 }
logical irq 92 mapped : <0x000f37a0> { _gpio_irq_handler_2 + 0x0 }
logical irq 97 mapped : <0x000f37c0> { _gpio_irq_handler + 0x0 }
logical irq 113 mapped : <0x000f37e0> { _gpio_irq_handler_trigin + 0x0 }
RETE: <0x00000000> /* Maybe null pointer? */
RETN: <0x00501c84> /* kernel dynamic memory (maybe user-space) */
RETX: <0x00000480> /* Maybe fixed code section */
RETS: <0x001160d0> { _gf_write + 0x20 }
PC : <0x001160d8> { _gf_write + 0x28 }
DCPLB_FAULT_ADDR: <0x20400000> /* reserved memory */
ICPLB_FAULT_ADDR: <0x001160d8> { _gf_write + 0x28 }
PROCESSOR STATE:
R0 : 00400000 R1 : 20400000 R2 : 00000000 R3 : 00000000
R4 : 00000554 R5 : 00000002 R6 : 00400000 R7 : 00000030
P0 : 00000002 P1 : 0168de18 P2 : 20400000 P3 : 001160b0
P4 : 015d4204 P5 : 015d4200 FP : 00400000 SP : 00501ba8
LB0: 000cce34 LT0: 000cce32 LC0: 00000000
LB1: 002b380d LT1: 002b37c2 LC1: 00000000
B0 : 00000000 L0 : 00000000 M0 : 00000004 I0 : 00000002
B1 : 00000000 L1 : 00000000 M1 : 00000000 I1 : 001f23c4
B2 : 00000000 L2 : 00000000 M2 : 00000000 I2 : 00000000
B3 : 00000000 L3 : 00000000 M3 : 00000000 I3 : 00000000
A0.w: 00000000 A0.x: 00000000 A1.w: 00000000 A1.x: 00000000
USP : 002b8d38 ASTAT: 02002020
Hardware Trace:
0 Target : <0x00003f10> { _trap_c + 0x0 }
Source : <0xffa006f8> { _exception_to_level5 + 0xa4 } JUMP.L
1 Target : <0xffa00654> { _exception_to_level5 + 0x0 }
Source : <0xffa00508> { _bfin_return_from_exception + 0x18 } RTX
2 Target : <0xffa004f0> { _bfin_return_from_exception + 0x0 }
Source : <0xffa005ac> { _ex_trap_c + 0x74 } JUMP.S
3 Target : <0xffa0041c> { _ex_dcplb_miss + 0x0 }
Source : <0xffa007be> { _trap + 0x5a } JUMP (P4)
4 Target : <0xffa00764> { _trap + 0x0 }
FAULT : <0x001160d8> { _gf_write + 0x28 } W[P2] = R7 (Z)
Source : <0x001160d6> { _gf_write + 0x26 } 0x6c66
5 Target : <0x001160d0> { _gf_write + 0x20 }
Source : <0xffa01790> { ___umodsi3 + 0x30 } RTS
6 Target : <0xffa01790> { ___umodsi3 + 0x30 }
Source : <0xffa01772> { ___umodsi3 + 0x12 } IF CC JUMP pcrel
7 Target : <0xffa01760> { ___umodsi3 + 0x0 }
Source : <0x001160cc> { _gf_write + 0x1c } CALL pcrel
8 Target : <0x001160c6> { _gf_write + 0x16 }
Source : <0x00116060> { _gf_set_gpios + 0x68 } RTS
9 Target : <0x0011605a> { _gf_set_gpios + 0x62 }
Source : <0x00116028> { _gf_set_gpios + 0x30 } IF !CC JUMP pcrel
10 Target : <0x00116020> { _gf_set_gpios + 0x28 }
Source : <0x0011603e> { _gf_set_gpios + 0x46 } IF CC JUMP pcrel
11 Target : <0x0011602a> { _gf_set_gpios + 0x32 }
Source : <0x00116010> { _gf_set_gpios + 0x18 } JUMP.S
12 Target : <0x0011600c> { _gf_set_gpios + 0x14 }
Source : <0xffa01706> { ___udivsi3 + 0xf6 } RTS
13 Target : <0xffa01704> { ___udivsi3 + 0xf4 }
Source : <0xffa016f4> { ___udivsi3 + 0xe4 } IF CC JUMP pcrel
14 Target : <0xffa016f0> { ___udivsi3 + 0xe0 }
Source : <0xffa01612> { ___udivsi3 + 0x2 } IF CC JUMP pcrel
15 Target : <0xffa01610> { ___udivsi3 + 0x0 }
Source : <0x00116008> { _gf_set_gpios + 0x10 } CALL pcrel
Kernel Stack
Stack info:
SP: [0x00501f24] <0x00501f24> /* kernel dynamic memory (maybe user-space) */
Memory from 0x00501f20 to 00502000
00501f20: 00000000 [002b0d34] 00008000 00002000 00000000 00502000 002b0d34 002b0d34
00501f40: 002b0310 ffa01004 02001044 002b380d 002b1ef5 002b37c2 002b1ef2 00000000
00501f60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00501f80: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00501fa0: 00000004 00000000 00000000 002b6e90 002b6a1e 002b8d38 002b8d44 002b7410
00501fc0: 002b7410 00000000 0000002d 00000003 00000036 00000000 00000001 00000000
00501fe0: 00000003 00000000 002b8e6c 40084d02 00000003 00000003 00000036 00000006
Return addresses in stack:
Modules linked in:
Kernel panic - not syncing: Kernel exception
Hardware Trace:
Stack info:
SP: [0x00501acc] <0x00501acc> /* kernel dynamic memory (maybe user-space) */
FP: (0x00501d40)
Memory from 0x00501ac0 to 00502000
00501ac0: 00000007 00501acc 00000013 [001c72f8] 0018ddaa 00501ba8 001c72f8 002214be
00501ae0: 002214be 002214be 00501afc 0000434c 00501ba8 00008008 00501ba8 0000003f
00501b00: 0000003f 4a0a3020 20206e61 00030001 3a30313a 4d203232 2032354c 72657375
00501b20: 6265642e 6b206775 656e7265 73203a6c 65646970 70732076 352e3069 7463203a
00501b40: 65725f6c 73692067 31783020 2c343030 616c6620 65725f67 73692067 32783020
00501b60: 0a303030 206e614a 30203120 30313a30 2032323a 32354c4d 65737520 65642e72
00501b80: 20677562 ffa006fc 0021e000 00008008 00002026 00000002 00000554 0000be2a
00501ba0: 0024e0e0 00000480 00000480 00008008 00002026 00000000 00501c84 00000480
00501bc0: 001160d8 001160d0 00400000 02002020 002b380d 000cce34 002b37c2 000cce32
00501be0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00501c00: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00501c20: 00000000 00000004 00000000 00000000 001f23c4 00000002 002b8d38 00400000
00501c40: 015d4200 015d4204 001160b0 20400000 0168de18 00000002 00000030 00400000
00501c60: 00000002 00000554 00000000 00000000 20400000 00400000 00400000 00000002
00501c80: 00000006 <00110bfc> 0168dde0 015d4204 00000002 00000002 015d4204 00000000
00501ca0: 00400000 00000004 00000000 00000000 0105e0e0 0000e620 00000000 00000000
00501cc0: 015d4204 <0010b8d8> 016a1de0 00010000 0168dde0 00000000 00400000 00000000
00501ce0: 00400000 00501e88 0168de18 00501d70 00010000 00000000 001108a8 00000000
00501d00: 00000001 00010000 002b8d44 001116d0 003e37e0 003e37e0 00501e88 40084d02
00501d20: 00000000 002b8e6c 40084d02 0105e0e0 00000001 00400000 00000000 00010000
00501d40:(00000000)<00106864> 016a2a00 40084d02 002b8e6c 002b8e6c 00109578 <0010978c>
00501d60: 003e37e0 016a2a00 40084d02 00501dc4 0109dd40 40084d02 00000004 00501db4
00501d80: 0000b2fc 0057a000 00000000 0105e0e0 0000e620 00000000 00000000 000000c0
00501da0: 0000002d 0001d776 0057a000 00000000 00000004 0109d8c0 000d97c4 0000002d
00501dc0: 0001d7cc 0000002d 00500000 00000004 000dfba8 0000002d 0057a800 0036f000
00501de0: 0109d8c0 0018ecb4 0000002d <000dafec> 0057a000 00000000 0057a380 00000000
00501e00: 0109d8c0 000dbd28 000dbdb0 0057ac00 00501e48 0000b2fc 016f1af0 0057a000
00501e20: 0057ac00 0000ffff 00000000 002b752c 0000002d 00000000 0105e0e0 0000e620
00501e40: 00000000 00000004 0000002d 000d9336 <015d8ea0> 00000000 0057ac00 0000002d
00501e60: 000d9672 0000002d 00000000 00000000 00370000 00010000 0000002d 00000002
00501e80: 016f1af0 <015d8ea0> 00501e88 00501e88 <0004cc76> 0109dd40 00000036 00000000
00501ea0: 00000003 002b8e6c 002b8e6c 0109dd40 00000020 00000003 002b8e6c 0004cf90
00501ec0: 00000000 00043938 0109d8c0 00000004 002b752c 0004d188 0004d160 0109dd40
00501ee0: 00000003 00020002 ffffe000 00501ef0 002b8e6c 00000000 <ffa008f6> 00000000
00501f00: ffffe000 00000000 00000003 00298feb 0105e0e0 00000001 00000000 00000003
00501f20: 00000000 002b0d34 00008000 00002000 00000000 00502000 002b0d34 002b0d34
00501f40: 002b0310 ffa01004 02001044 002b380d 002b1ef5 002b37c2 002b1ef2 00000000
00501f60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00501f80: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00501fa0: 00000004 00000000 00000000 002b6e90 002b6a1e 002b8d38 002b8d44 002b7410
00501fc0: 002b7410 00000000 0000002d 00000003 00000036 00000000 00000001 00000000
00501fe0: 00000003 00000000 002b8e6c 40084d02 00000003 00000003 00000036 00000006
Return addresses in stack:
address : <0x00110bfc> { _do_erase_oneblock + 0x354 }
address : <0x0010b8d8> { _cfi_varsize_frob + 0x14c }
frame 1 : <0x00106864> { _part_erase + 0x50 }
address : <0x0010978c> { _mtd_ioctl + 0x520 }
address : <0x000dafec> { _process_output_block + 0x8c }
address : <0x015d8ea0> /* kernel dynamic memory (maybe user-space) */
address : <0x015d8ea0> /* kernel dynamic memory (maybe user-space) */
address : <0x0004cc76> { _vfs_ioctl + 0x4a }
address : <0xffa008f6> { _system_call + 0x6a }