Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 57975
b: refs/heads/master
c: 629cf6d
h: refs/heads/master
i:
  57973: 33332da
  57971: 09ba897
  57967: c392593
v: v3
  • Loading branch information
Len Brown committed Jun 23, 2007
1 parent 16dc465 commit a2bb7c7
Show file tree
Hide file tree
Showing 127 changed files with 1,445 additions and 1,090 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: d5a3d32a042126f65a008e0e5204ef92ad2ee55d
refs/heads/master: 629cf6d74beca87d57cea3e38edf7522c397d41e
16 changes: 8 additions & 8 deletions trunk/CREDITS
Original file line number Diff line number Diff line change
Expand Up @@ -3301,14 +3301,6 @@ S: 12725 SW Millikan Way, Suite 400
S: Beaverton, Oregon 97005
S: USA

N: Li Yang
E: leoli@freescale.com
D: Freescale Highspeed USB device driver
D: Freescale QE SoC support and Ethernet driver
S: B-1206 Jingmao Guojigongyu
S: 16 Baliqiao Nanjie, Beijing 101100
S: People's Repulic of China

N: Marcelo Tosatti
E: marcelo@kvack.org
D: v2.4 kernel maintainer
Expand Down Expand Up @@ -3726,6 +3718,14 @@ S: 542 West 112th Street, 5N
S: New York, New York 10025
S: USA

N: Li Yang
E: leoli@freescale.com
D: Freescale Highspeed USB device driver
D: Freescale QE SoC support and Ethernet driver
S: B-1206 Jingmao Guojigongyu
S: 16 Baliqiao Nanjie, Beijing 101100
S: People's Repulic of China

N: Victor Yodaiken
E: yodaiken@fsmlabs.com
D: RTLinux (RealTime Linux)
Expand Down
4 changes: 2 additions & 2 deletions trunk/MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -4022,11 +4022,11 @@ S: Supported

XFS FILESYSTEM
P: Silicon Graphics Inc
P: Tim Shimmin, David Chatterton
P: Tim Shimmin
M: xfs-masters@oss.sgi.com
L: xfs@oss.sgi.com
W: http://oss.sgi.com/projects/xfs
T: git git://oss.sgi.com:8090/xfs/xfs-2.6
T: git git://oss.sgi.com:8090/xfs/xfs-2.6.git
S: Supported

XILINX UARTLITE SERIAL DRIVER
Expand Down
8 changes: 5 additions & 3 deletions trunk/arch/blackfin/kernel/setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -329,9 +329,10 @@ void __init setup_arch(char **cmdline_p)

printk(KERN_INFO "Memory map:\n"
KERN_INFO " text = 0x%p-0x%p\n"
KERN_INFO " init = 0x%p-0x%p\n"
KERN_INFO " rodata = 0x%p-0x%p\n"
KERN_INFO " data = 0x%p-0x%p\n"
KERN_INFO " stack = 0x%p-0x%p\n"
KERN_INFO " stack = 0x%p-0x%p\n"
KERN_INFO " init = 0x%p-0x%p\n"
KERN_INFO " bss = 0x%p-0x%p\n"
KERN_INFO " available = 0x%p-0x%p\n"
#ifdef CONFIG_MTD_UCLINUX
Expand All @@ -341,9 +342,10 @@ void __init setup_arch(char **cmdline_p)
KERN_INFO " DMA Zone = 0x%p-0x%p\n"
#endif
, _stext, _etext,
__init_begin, __init_end,
__start_rodata, __end_rodata,
_sdata, _edata,
(void*)&init_thread_union, (void*)((int)(&init_thread_union) + 0x2000),
__init_begin, __init_end,
__bss_start, __bss_stop,
(void*)_ramstart, (void*)memory_end
#ifdef CONFIG_MTD_UCLINUX
Expand Down
141 changes: 86 additions & 55 deletions trunk/arch/blackfin/kernel/traps.c
Original file line number Diff line number Diff line change
Expand Up @@ -148,8 +148,15 @@ asmlinkage void trap_c(struct pt_regs *fp)
unsigned long trapnr = fp->seqstat & SEQSTAT_EXCAUSE;

#ifdef CONFIG_KGDB
# define CHK_DEBUGGER_TRAP() do { CHK_DEBUGGER(trapnr, sig, info.si_code, fp,); } while (0)
# define CHK_DEBUGGER_TRAP_MAYBE() do { if (kgdb_connected) CHK_DEBUGGER_TRAP(); } while (0)
# define CHK_DEBUGGER_TRAP() \
do { \
CHK_DEBUGGER(trapnr, sig, info.si_code, fp); \
} while (0)
# define CHK_DEBUGGER_TRAP_MAYBE() \
do { \
if (kgdb_connected) \
CHK_DEBUGGER_TRAP(); \
} while (0)
#else
# define CHK_DEBUGGER_TRAP() do { } while (0)
# define CHK_DEBUGGER_TRAP_MAYBE() do { } while (0)
Expand Down Expand Up @@ -297,7 +304,8 @@ asmlinkage void trap_c(struct pt_regs *fp)
info.si_code = ILL_CPLB_MULHIT;
#ifdef CONFIG_DEBUG_HUNT_FOR_ZERO
sig = SIGSEGV;
printk(KERN_EMERG "\n\nNULL pointer access (probably)\n");
printk(KERN_EMERG "\n"
KERN_EMERG "NULL pointer access (probably)\n");
#else
sig = SIGILL;
printk(KERN_EMERG EXC_0x27);
Expand Down Expand Up @@ -418,7 +426,9 @@ asmlinkage void trap_c(struct pt_regs *fp)
if (current->mm) {
fp->pc = current->mm->start_code;
} else {
printk(KERN_EMERG "I can't return to memory that doesn't exist - bad things happen\n");
printk(KERN_EMERG
"I can't return to memory that doesn't exist"
" - bad things happen\n");
panic("Help - I've fallen and can't get up\n");
}
}
Expand Down Expand Up @@ -522,15 +532,19 @@ EXPORT_SYMBOL(dump_stack);
void dump_bfin_regs(struct pt_regs *fp, void *retaddr)
{
if (current->pid) {
printk("\nCURRENT PROCESS:\n\n");
printk("COMM=%s PID=%d\n", current->comm, current->pid);
printk(KERN_EMERG "\n" KERN_EMERG "CURRENT PROCESS:\n"
KERN_EMERG "\n");
printk(KERN_EMERG "COMM=%s PID=%d\n",
current->comm, current->pid);
} else {
printk
("\nNo Valid pid - Either things are really messed up, or you are in the kernel\n");
(KERN_EMERG "\n" KERN_EMERG
"No Valid pid - Either things are really messed up,"
" or you are in the kernel\n");
}

if (current->mm) {
printk("TEXT = 0x%p-0x%p DATA = 0x%p-0x%p\n"
printk(KERN_EMERG "TEXT = 0x%p-0x%p DATA = 0x%p-0x%p\n"
"BSS = 0x%p-0x%p USER-STACK = 0x%p\n\n",
(void*)current->mm->start_code,
(void*)current->mm->end_code,
Expand All @@ -541,7 +555,7 @@ void dump_bfin_regs(struct pt_regs *fp, void *retaddr)
(void*)current->mm->start_stack);
}

printk("return address: 0x%p; contents of [PC-16...PC+8]:\n", retaddr);
printk(KERN_EMERG "return address: [0x%p]; contents of:", retaddr);
if (retaddr != 0 && retaddr <= (void*)physical_mem_end
#if L1_CODE_LENGTH != 0
/* FIXME: Copy the code out of L1 Instruction SRAM through dma
Expand All @@ -550,64 +564,81 @@ void dump_bfin_regs(struct pt_regs *fp, void *retaddr)
&& retaddr < (void*)(L1_CODE_START + L1_CODE_LENGTH))
#endif
) {
int i = 0;
int i = ((unsigned int)retaddr & 0xFFFFFFF0) - 32;
unsigned short x = 0;
for (i = -16; i < 8; i++) {
if (get_user(x, (unsigned short *)retaddr + i))
for (; i < ((unsigned int)retaddr & 0xFFFFFFF0 ) + 32 ;
i += 2) {
if ( !(i & 0xF) )
printk(KERN_EMERG "\n" KERN_EMERG
"0x%08x: ", i);

if (get_user(x, (unsigned short *)i))
break;
#ifndef CONFIG_DEBUG_HWERR
/* If one of the last few instructions was a STI
* it is likely that the error occured awhile ago
* and we just noticed
*/
if (x >= 0x0040 && x <= 0x0047 && i <= 0)
panic("\n\nWARNING : You should reconfigure the kernel to turn on\n"
" 'Hardware error interrupt debugging'\n"
" The rest of this error is meanless\n");
panic("\n\nWARNING : You should reconfigure"
" the kernel to turn on\n"
" 'Hardware error interrupt"
" debugging'\n"
" The rest of this error"
" is meanless\n");
#endif

if (i == -8)
printk("\n");
if (i == 0)
printk("X\n");
printk("%04x ", x);
if ( i == (unsigned int)retaddr )
printk("[%04x]", x);
else
printk(" %04x ", x);
}
printk("\n" KERN_EMERG "\n");
} else
printk("Cannot look at the [PC] for it is in unreadable L1 SRAM - sorry\n");

printk("\n\n");

printk("RETE: %08lx RETN: %08lx RETX: %08lx RETS: %08lx\n",
fp->rete, fp->retn, fp->retx, fp->rets);
printk("IPEND: %04lx SYSCFG: %04lx\n", fp->ipend, fp->syscfg);
printk("SEQSTAT: %08lx SP: %08lx\n", (long)fp->seqstat, (long)fp);
printk("R0: %08lx R1: %08lx R2: %08lx R3: %08lx\n",
fp->r0, fp->r1, fp->r2, fp->r3);
printk("R4: %08lx R5: %08lx R6: %08lx R7: %08lx\n",
fp->r4, fp->r5, fp->r6, fp->r7);
printk("P0: %08lx P1: %08lx P2: %08lx P3: %08lx\n",
fp->p0, fp->p1, fp->p2, fp->p3);
printk("P4: %08lx P5: %08lx FP: %08lx\n", fp->p4, fp->p5, fp->fp);
printk("A0.w: %08lx A0.x: %08lx A1.w: %08lx A1.x: %08lx\n",
fp->a0w, fp->a0x, fp->a1w, fp->a1x);

printk("LB0: %08lx LT0: %08lx LC0: %08lx\n", fp->lb0, fp->lt0,
fp->lc0);
printk("LB1: %08lx LT1: %08lx LC1: %08lx\n", fp->lb1, fp->lt1,
fp->lc1);
printk("B0: %08lx L0: %08lx M0: %08lx I0: %08lx\n", fp->b0, fp->l0,
fp->m0, fp->i0);
printk("B1: %08lx L1: %08lx M1: %08lx I1: %08lx\n", fp->b1, fp->l1,
fp->m1, fp->i1);
printk("B2: %08lx L2: %08lx M2: %08lx I2: %08lx\n", fp->b2, fp->l2,
fp->m2, fp->i2);
printk("B3: %08lx L3: %08lx M3: %08lx I3: %08lx\n", fp->b3, fp->l3,
fp->m3, fp->i3);

printk("\nUSP: %08lx ASTAT: %08lx\n", rdusp(), fp->astat);
printk(KERN_EMERG
"Cannot look at the [PC] for it is"
"in unreadable L1 SRAM - sorry\n");


printk(KERN_EMERG
"RETE: %08lx RETN: %08lx RETX: %08lx RETS: %08lx\n",
fp->rete, fp->retn, fp->retx, fp->rets);
printk(KERN_EMERG "IPEND: %04lx SYSCFG: %04lx\n",
fp->ipend, fp->syscfg);
printk(KERN_EMERG "SEQSTAT: %08lx SP: %08lx\n",
(long)fp->seqstat, (long)fp);
printk(KERN_EMERG "R0: %08lx R1: %08lx R2: %08lx R3: %08lx\n",
fp->r0, fp->r1, fp->r2, fp->r3);
printk(KERN_EMERG "R4: %08lx R5: %08lx R6: %08lx R7: %08lx\n",
fp->r4, fp->r5, fp->r6, fp->r7);
printk(KERN_EMERG "P0: %08lx P1: %08lx P2: %08lx P3: %08lx\n",
fp->p0, fp->p1, fp->p2, fp->p3);
printk(KERN_EMERG
"P4: %08lx P5: %08lx FP: %08lx\n",
fp->p4, fp->p5, fp->fp);
printk(KERN_EMERG
"A0.w: %08lx A0.x: %08lx A1.w: %08lx A1.x: %08lx\n",
fp->a0w, fp->a0x, fp->a1w, fp->a1x);

printk(KERN_EMERG "LB0: %08lx LT0: %08lx LC0: %08lx\n",
fp->lb0, fp->lt0, fp->lc0);
printk(KERN_EMERG "LB1: %08lx LT1: %08lx LC1: %08lx\n",
fp->lb1, fp->lt1, fp->lc1);
printk(KERN_EMERG "B0: %08lx L0: %08lx M0: %08lx I0: %08lx\n",
fp->b0, fp->l0, fp->m0, fp->i0);
printk(KERN_EMERG "B1: %08lx L1: %08lx M1: %08lx I1: %08lx\n",
fp->b1, fp->l1, fp->m1, fp->i1);
printk(KERN_EMERG "B2: %08lx L2: %08lx M2: %08lx I2: %08lx\n",
fp->b2, fp->l2, fp->m2, fp->i2);
printk(KERN_EMERG "B3: %08lx L3: %08lx M3: %08lx I3: %08lx\n",
fp->b3, fp->l3, fp->m3, fp->i3);

printk(KERN_EMERG "\n" KERN_EMERG "USP: %08lx ASTAT: %08lx\n",
rdusp(), fp->astat);
if ((long)fp->seqstat & SEQSTAT_EXCAUSE) {
printk(KERN_EMERG "DCPLB_FAULT_ADDR=%p\n", (void*)bfin_read_DCPLB_FAULT_ADDR());
printk(KERN_EMERG "ICPLB_FAULT_ADDR=%p\n", (void*)bfin_read_ICPLB_FAULT_ADDR());
printk(KERN_EMERG "DCPLB_FAULT_ADDR=%p\n",
(void *)bfin_read_DCPLB_FAULT_ADDR());
printk(KERN_EMERG "ICPLB_FAULT_ADDR=%p\n",
(void *)bfin_read_ICPLB_FAULT_ADDR());
}

printk("\n\n");
Expand Down
5 changes: 5 additions & 0 deletions trunk/arch/blackfin/lib/memcmp.S
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,12 @@ ENTRY(_memcmp)

LSETUP (.Lquad_loop_s, .Lquad_loop_e) LC0=P1;
.Lquad_loop_s:
#ifdef ANOMALY_05000202
R0 = [P0++];
R1 = [I0++];
#else
MNOP || R0 = [P0++] || R1 = [I0++];
#endif
CC = R0 == R1;
IF !CC JUMP .Lquad_different;
.Lquad_loop_e:
Expand Down
13 changes: 10 additions & 3 deletions trunk/arch/blackfin/lib/memcpy.S
Original file line number Diff line number Diff line change
Expand Up @@ -94,13 +94,20 @@ ENTRY(_memcpy)
.Lmore_than_seven:
/* There's at least eight bytes to copy. */
P2 += -1; /* because we unroll one iteration */
LSETUP(.Lword_loop, .Lword_loop) LC0=P2;
LSETUP(.Lword_loops, .Lword_loope) LC0=P2;
R0 = R1;
I1 = P1;
R3 = [I1++];
.Lword_loop:
#ifdef ANOMALY_05000202
.Lword_loops:
[P0++] = R3;
.Lword_loope:
R3 = [I1++];
#else
.Lword_loops:
.Lword_loope:
MNOP || [P0++] = R3 || R3 = [I1++];

#endif
[P0++] = R3;
/* Any remaining bytes to copy? */
R3 = 0x3;
Expand Down
17 changes: 15 additions & 2 deletions trunk/arch/blackfin/lib/memmove.S
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,17 @@ ENTRY(_memmove)
P2 = R2; /* set remainder */
R1 = [I0++];

LSETUP (.Lquad_loop, .Lquad_loop) LC0=P1;
.Lquad_loop: MNOP || [P0++] = R1 || R1 = [I0++];
LSETUP (.Lquad_loops, .Lquad_loope) LC0=P1;
#ifdef ANOMALY_05000202
.Lquad_loops:
[P0++] = R1;
.Lquad_loope:
R1 = [I0++];
#else
.Lquad_loops:
.Lquad_loope:
MNOP || [P0++] = R1 || R1 = [I0++];
#endif
[P0++] = R1;

CC = P2 == 0; /* any remaining bytes? */
Expand All @@ -93,6 +102,10 @@ ENTRY(_memmove)
R1 = B[P3--] (Z);
CC = P2 == 0;
IF CC JUMP .Lno_loop;
#ifdef ANOMALY_05000245
NOP;
NOP;
#endif
LSETUP (.Lol_s, .Lol_e) LC0 = P2;
.Lol_s: B[P0--] = R1;
.Lol_e: R1 = B[P3--] (Z);
Expand Down
Loading

0 comments on commit a2bb7c7

Please sign in to comment.