LinuxPPC-Dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH] ppc: remove unused amiga_request_irq and mach_request_irq
From: Paul Mackerras @ 2007-08-22  9:44 UTC (permalink / raw)
  To: Fernando Luis Vázquez Cao; +Cc: linuxppc-dev, linux-kernel
In-Reply-To: <1187767237.25624.11.camel@sebastian.kern.oss.ntt.co.jp>

Fernando Luis V=E1zquez Cao writes:

> amiga=5Frequest=5Firq and mach=5Frequest=5Firq are never used, so del=
ete them.

OK, but is there a particular reason you want to do this=3F

The whole of arch/ppc is going away eventually, so I don't think we
need to remove it piece by piece.

Paul.

^ permalink raw reply

* Patches added to powerpc.git for-2.6.24 branch
From: Paul Mackerras @ 2007-08-22  9:47 UTC (permalink / raw)
  To: linuxppc-dev

Josh Boyer (10):
      [POWERPC] Rename 4xx paths to 40x
      [POWERPC] 4xx Kconfig cleanup
      [POWERPC] Rename 44x bootwrapper
      [POWERPC] 4xx bootwrapper reworks
      [POWERPC] 40x MMU
      [POWERPC] 40x decrementer fixes
      [POWERPC] Fix 40x build
      [POWERPC] Bamboo DTS
      [POWERPC] Bamboo board support
      [POWERPC] Bamboo zImage wrapper

Olaf Hering (1):
      [POWERPC] Advertise correct IDE mode on Pegasos2

Olof Johansson (1):
      [POWERPC] Rework SMP timebase handoff for pasemi

Scott Wood (15):
      [POWERPC] Whitespace cleanup in arch/powerpc
      [POWERPC] Add clrbits8 and setbits8
      [POWERPC] Use strcasecmp() rather than strncasecmp() when determining device node compatibility
      [POWERPC] bootwrapper: Update .gitignore
      [POWERPC] bootwrapper: Set timebase_period_ns from dt_fixup_cpu_clocks
      [POWERPC] bootwrapper: dt_xlate_range() bugfixes
      [POWERPC] bootwrapper: Add dt_is_compatible()
      [POWERPC] bootwrapper: Add 16-bit I/O, sync(), eieio(), and barrier()
      [POWERPC] bootwrapper: Add TARGET_HAS_ETHn tests to ppcboot.h
      [POWERPC] bootwrapper: serial_console_init() fixes
      [POWERPC] bootwrapper: Declare udelay() in ops.h
      [POWERPC] bootwrapper: Add CPM serial driver
      [POWERPC] bootwrapper: Move linker symbols into ops.h
      [POWERPC] bootwrapper: Add 8xx cuboot support
      [POWERPC] bootwrapper: Add PowerQUICC II (82xx with CPM) cuboot support

Stephen Rothwell (6):
      [POWERPC] iSeries: Clean up lparmap mess
      [POWERPC] Move iSeries startup code out of head_64.S
      [POWERPC] Move the exception macros into a header file
      [POWERPC] Move the iSeries exception vectors
      [POWERPC] Split out iSeries specific exception macros
      [POWERPC] Exception numbers are not relevant to iSeries

 arch/powerpc/Makefile                      |    2 
 arch/powerpc/boot/.gitignore               |    8 
 arch/powerpc/boot/44x.c                    |   85 ---
 arch/powerpc/boot/44x.h                    |    5 
 arch/powerpc/boot/4xx.c                    |  192 +++++++
 arch/powerpc/boot/4xx.h                    |   21 +
 arch/powerpc/boot/Makefile                 |   10 
 arch/powerpc/boot/bamboo.c                 |   45 ++
 arch/powerpc/boot/cpm-serial.c             |  249 +++++++++
 arch/powerpc/boot/cuboot-83xx.c            |    1 
 arch/powerpc/boot/cuboot-85xx.c            |    1 
 arch/powerpc/boot/cuboot-8xx.c             |   45 ++
 arch/powerpc/boot/cuboot-pq2.c             |  283 ++++++++++
 arch/powerpc/boot/cuboot.c                 |    3 
 arch/powerpc/boot/dcr.h                    |   13 
 arch/powerpc/boot/devtree.c                |   70 ++-
 arch/powerpc/boot/dts/bamboo.dts           |  244 +++++++++
 arch/powerpc/boot/dts/mpc8272ads.dts       |  376 +++++++-------
 arch/powerpc/boot/ebony.c                  |    6 
 arch/powerpc/boot/holly.c                  |    5 
 arch/powerpc/boot/io.h                     |   49 ++
 arch/powerpc/boot/main.c                   |   10 
 arch/powerpc/boot/mpsc.c                   |    1 
 arch/powerpc/boot/mv64x60_i2c.c            |    2 
 arch/powerpc/boot/of.c                     |    2 
 arch/powerpc/boot/ops.h                    |   24 +
 arch/powerpc/boot/ppcboot.h                |    7 
 arch/powerpc/boot/prpmc2800.c              |    6 
 arch/powerpc/boot/ps3.c                    |    4 
 arch/powerpc/boot/serial.c                 |   19 -
 arch/powerpc/boot/treeboot-bamboo.c        |   27 +
 arch/powerpc/boot/treeboot-ebony.c         |    2 
 arch/powerpc/configs/bamboo_defconfig      |  775 ++++++++++++++++++++++++++++
 arch/powerpc/kernel/Makefile               |    9 
 arch/powerpc/kernel/asm-offsets.c          |    8 
 arch/powerpc/kernel/head_40x.S             |    3 
 arch/powerpc/kernel/head_64.S              |  585 +--------------------
 arch/powerpc/kernel/irq.c                  |    4 
 arch/powerpc/kernel/lparmap.c              |   32 -
 arch/powerpc/kernel/ppc_ksyms.c            |    2 
 arch/powerpc/kernel/prom_init.c            |   11 
 arch/powerpc/kernel/time.c                 |    2 
 arch/powerpc/mm/40x_mmu.c                  |    4 
 arch/powerpc/mm/Makefile                   |    2 
 arch/powerpc/platforms/40x/Kconfig         |   77 ---
 arch/powerpc/platforms/40x/Makefile        |    0 
 arch/powerpc/platforms/44x/Kconfig         |   15 -
 arch/powerpc/platforms/44x/Makefile        |    1 
 arch/powerpc/platforms/44x/bamboo.c        |   66 ++
 arch/powerpc/platforms/8xx/m8xx_setup.c    |   72 +--
 arch/powerpc/platforms/Kconfig             |    1 
 arch/powerpc/platforms/Kconfig.cputype     |    2 
 arch/powerpc/platforms/chrp/pci.c          |   29 +
 arch/powerpc/platforms/iseries/Makefile    |    1 
 arch/powerpc/platforms/iseries/exception.S |  251 +++++++++
 arch/powerpc/platforms/iseries/exception.h |   58 ++
 arch/powerpc/platforms/pasemi/setup.c      |   24 +
 arch/powerpc/sysdev/commproc.c             |   20 -
 arch/powerpc/sysdev/cpm2_common.c          |    2 
 include/asm-powerpc/exception.h            |  309 +++++++++++
 include/asm-powerpc/io.h                   |    3 
 include/asm-powerpc/iseries/lpar_map.h     |    3 
 include/asm-powerpc/mmu-40x.h              |   65 ++
 include/asm-powerpc/mmu.h                  |    3 
 include/asm-powerpc/page_64.h              |    2 
 include/asm-powerpc/ppc_asm.h              |   14 +
 include/asm-powerpc/prom.h                 |    2 
 include/asm-powerpc/time.h                 |    2 
 68 files changed, 3158 insertions(+), 1118 deletions(-)
 delete mode 100644 arch/powerpc/boot/44x.c
 create mode 100644 arch/powerpc/boot/4xx.c
 create mode 100644 arch/powerpc/boot/4xx.h
 create mode 100644 arch/powerpc/boot/bamboo.c
 create mode 100644 arch/powerpc/boot/cpm-serial.c
 create mode 100644 arch/powerpc/boot/cuboot-8xx.c
 create mode 100644 arch/powerpc/boot/cuboot-pq2.c
 create mode 100644 arch/powerpc/boot/dts/bamboo.dts
 create mode 100644 arch/powerpc/boot/treeboot-bamboo.c
 create mode 100644 arch/powerpc/configs/bamboo_defconfig
 rename arch/powerpc/kernel/{head_4xx.S => head_40x.S} (99%)
 delete mode 100644 arch/powerpc/kernel/lparmap.c
 rename arch/powerpc/mm/{4xx_mmu.c => 40x_mmu.c} (96%)
 rename arch/powerpc/platforms/{4xx/Kconfig => 40x/Kconfig} (68%)
 rename arch/powerpc/platforms/{4xx/Makefile => 40x/Makefile} (100%)
 create mode 100644 arch/powerpc/platforms/44x/bamboo.c
 create mode 100644 arch/powerpc/platforms/iseries/exception.S
 create mode 100644 arch/powerpc/platforms/iseries/exception.h
 create mode 100644 include/asm-powerpc/exception.h
 create mode 100644 include/asm-powerpc/mmu-40x.h

^ permalink raw reply

* Re: [PATCH 3/3] Add support for xupv2p and ml410 boards.
From: Esben Nielsen @ 2007-08-22 10:20 UTC (permalink / raw)
  To: Robert Woodworth; +Cc: Stephen Neuendorffer, linuxppc-embedded
In-Reply-To: <1187751864.6266.6.camel@PisteOff>



On Tue, 21 Aug 2007, Robert Woodworth wrote:

> Should the xparameters????.h file *really* be included in the tree?
>
> This file is completely board/EDK/ISE/synthesis specific.  I'd rather it
> not be included and have people copy theirs from EDK.
> Or as I have done, sym-link it from my EDK project.
>
>
> Woody.
>

The solution below is in line with what we do in our 2.4 kernel to support
several of our own boards.
When you distribute the kernel you have to distribute the source as well. 
You thus have to include xparameters.h such the kernel can be rebuild by 
the receiver.

Esben

>
>
> On Tue, 2007-08-21 at 17:53 -0700, wolfgang.reissnegger@xilinx.com
> wrote:
>> From: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com>
>
>> diff --git a/arch/ppc/platforms/4xx/xparameters/xparameters.h b/arch/ppc/platforms/4xx/xparameters/xparameters.h
>> index 01aa043..34d9844 100644
>> --- a/arch/ppc/platforms/4xx/xparameters/xparameters.h
>> +++ b/arch/ppc/platforms/4xx/xparameters/xparameters.h
>> @@ -15,8 +15,12 @@
>>
>>  #if defined(CONFIG_XILINX_ML300)
>>    #include "xparameters_ml300.h"
>> +#elif defined(CONFIG_XILINX_XUPV2P)
>> +  #include "xparameters_xupv2p.h"
>>  #elif defined(CONFIG_XILINX_ML403)
>>    #include "xparameters_ml403.h"
>> +#elif defined(CONFIG_XILINX_ML41x)
>> +  #include "xparameters_ml41x.h"
>>  #else
>>    /* Add other board xparameter includes here before the #else */
>>    #error No xparameters_*.h file included
>> diff --git a/arch/ppc/platforms/4xx/xparameters/xparameters_ml41x.h b/arch/ppc/platforms/4xx/xparameters/xparameters_ml41x.h
>> new file mode 100644
>> index 0000000..06dac67
>> --- /dev/null
>> +++ b/arch/ppc/platforms/4xx/xparameters/xparameters_ml41x.h
>> @@ -0,0 +1,277 @@
>> +
>> +/*******************************************************************
>> +*
>> +* CAUTION: This file is automatically generated by libgen.
>> +* Version: Xilinx EDK 8.2.02 EDK_Im_Sp2.4
>> +* DO NOT EDIT.
>> +*
>> +* Copyright (c) 2005 Xilinx, Inc.  All rights reserved.
>> +*
>> +* Description: Driver parameters
>> +*
>> +*******************************************************************/
>> +
>
>
> _______________________________________________
> Linuxppc-embedded mailing list
> Linuxppc-embedded@ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-embedded
>

^ permalink raw reply

* How to port PReP to arch/powerpc?
From: Meelis Roos @ 2007-08-22 11:50 UTC (permalink / raw)
  To: linuxppc-dev

It seems no one cares for arch/ppc any more but the move to powerpc was 
not finished completely (PReP subarch was not migrated but sees users, I 
do not know about the user base of the other subarches). So I have been 
thinking about migrating PReP support to arch/powerpc myself since I use 
it.

Any general guidelines or specific hints about that? I have looked 
around in the code and some pieces are clearly PReP specific (setup, 
pci, boot) but others seem wuite a bit mixed up with other subarches.

-- 
Meelis Roos (mroos@linux.ee)

^ permalink raw reply

* Re: How to port PReP to arch/powerpc?
From: Josh Boyer @ 2007-08-22 12:29 UTC (permalink / raw)
  To: Meelis Roos; +Cc: linuxppc-dev
In-Reply-To: <Pine.SOC.4.64.0708221444510.5639@math.ut.ee>

On Wed, 22 Aug 2007 14:50:07 +0300 (EEST)
Meelis Roos <mroos@linux.ee> wrote:

> It seems no one cares for arch/ppc any more but the move to powerpc was 
> not finished completely (PReP subarch was not migrated but sees users, I 
> do not know about the user base of the other subarches). So I have been 
> thinking about migrating PReP support to arch/powerpc myself since I use 
> it.

The merge is still on-going.  So it's not "finished" at all.

> Any general guidelines or specific hints about that? I have looked 
> around in the code and some pieces are clearly PReP specific (setup, 
> pci, boot) but others seem wuite a bit mixed up with other subarches.

David Gibson and Rob Landley had a quite interesting discussion about
PReP last night on IRC.  You might want to contact them and see if they
came to any conclusions.

josh

^ permalink raw reply

* Re: Patches added to powerpc.git for-2.6.24 branch
From: Timur Tabi @ 2007-08-22 12:44 UTC (permalink / raw)
  To: Paul Mackerras; +Cc: linuxppc-dev
In-Reply-To: <18124.1591.112487.322248@cargo.ozlabs.ibm.com>

Paul Mackerras wrote:

> Scott Wood (15):
>       [POWERPC] Add clrbits8 and setbits8

No love for my similar patch that adds the clrsetbits macros? Or the one that changes immap_86xx.h?

^ permalink raw reply

* Re: How to port PReP to arch/powerpc?
From: Sven Luther @ 2007-08-22 13:04 UTC (permalink / raw)
  To: Meelis Roos; +Cc: linuxppc-dev
In-Reply-To: <Pine.SOC.4.64.0708221444510.5639@math.ut.ee>

On Wed, Aug 22, 2007 at 02:50:07PM +0300, Meelis Roos wrote:
> It seems no one cares for arch/ppc any more but the move to powerpc was 
> not finished completely (PReP subarch was not migrated but sees users, I 
> do not know about the user base of the other subarches). So I have been 
> thinking about migrating PReP support to arch/powerpc myself since I use 
> it.
> 
> Any general guidelines or specific hints about that? I have looked 
> around in the code and some pieces are clearly PReP specific (setup, 
> pci, boot) but others seem wuite a bit mixed up with other subarches.

I don't have much time for this right now, but i am interested in
helping out in a PReP arch/powerpc port, as this would allow debian to
drop the arch/ppc -prep flavour. I have both a motorola and an IBM PReP
box here to play with and test.

Friendly,

Sven Luther

^ permalink raw reply

* Re: Patches added to powerpc.git for-2.6.24 branch
From: Kumar Gala @ 2007-08-22 13:25 UTC (permalink / raw)
  To: Paul Mackerras; +Cc: linuxppc-dev
In-Reply-To: <18124.1591.112487.322248@cargo.ozlabs.ibm.com>

How do we want to handle the include cleanup I've got.

I know you'd like some way of showing it complete.  Any ideas?

- k

^ permalink raw reply

* Re: 2.6.23-rc3 is not booting
From: Kumar Gala @ 2007-08-22 13:30 UTC (permalink / raw)
  To: sivaji; +Cc: linuxppc-dev
In-Reply-To: <12268833.post@talk.nabble.com>


On Aug 22, 2007, at 1:32 AM, sivaji wrote:

>
> Hai,
>          I am using the kernel 2.6.23-rc3. i am trying to boot this  
> kernel
> to my 8641D board. It was not booting.
> I go the following message
>
> Bytes transferred = 1505 (5e1 hex)
> ## Booting image at 00200000 ...
>    Image Name:   Linux-2.6.23-rc3
>    Image Type:   PowerPC Linux Kernel Image (gzip compressed)
>    Data Size:    1801717 Bytes =  1.7 MB
>    Load Address: 00000000
>    Entry Point:  00000000
>    Verifying Checksum ... OK
>    Uncompressing Kernel Image ... OK
>    Booting using flat device tree at 0x800000
>
> Whether the problem belongs to device tree? I am using the  
> mpc8641_hpcn.dts
> file
>
> Pls Advice me.

What rev board/silicon do you have?  I'd suggest building the kernel  
w/o PCI support and see what happens.  Make sure you've got the  
latest dts from the kernel tree.

- k

^ permalink raw reply

* RFC: [PATCH v2] Fixup modpost warnings in head*.S for ppc32
From: Kumar Gala @ 2007-08-22 13:58 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: Paul Mackerras

Addess the following modpost warnings we get out of the ppc32 head
files:

WARNING: vmlinux.o(.text+0x358): Section mismatch: reference to .init.text:early_init (between 'skpinv' and 'interrupt_base')
WARNING: vmlinux.o(.text+0x380): Section mismatch: reference to .init.text:machine_init (between 'skpinv' and 'interrupt_base')
WARNING: vmlinux.o(.text+0x384): Section mismatch: reference to .init.text:MMU_init (between 'skpinv' and 'interrupt_base')
WARNING: vmlinux.o(.text+0x3aa): Section mismatch: reference to .init.text:start_kernel (between 'skpinv' and 'interrupt_base')
WARNING: vmlinux.o(.text+0x3ae): Section mismatch: reference to .init.text:start_kernel (between 'skpinv' and 'interrupt_base')

Does anyone have any issues with this?  This version cleans up 40x based
on the latest for-2.6.24 tree and removes the stabs defn from _ENTRY.

- k

diff --git a/arch/powerpc/kernel/head_32.S b/arch/powerpc/kernel/head_32.S
index 7d73a13..6d332db 100644
--- a/arch/powerpc/kernel/head_32.S
+++ b/arch/powerpc/kernel/head_32.S
@@ -48,20 +48,17 @@
 	mtspr	SPRN_DBAT##n##L,RB;	\
 1:

-	.text
+	.section	.text.head, "ax"
 	.stabs	"arch/powerpc/kernel/",N_SO,0,0,0f
 	.stabs	"head_32.S",N_SO,0,0,0f
 0:
-	.globl	_stext
-_stext:
+_ENTRY(_stext);

 /*
  * _start is defined this way because the XCOFF loader in the OpenFirmware
  * on the powermac expects the entry point to be a procedure descriptor.
  */
-	.text
-	.globl	_start
-_start:
+_ENTRY(_start);
 	/*
 	 * These are here for legacy reasons, the kernel used to
 	 * need to look like a coff function entry for the pmac
@@ -841,7 +838,7 @@ relocate_kernel:
  * r3 = dest addr, r4 = source addr, r5 = copy limit, r6 = start offset
  * on exit, r3, r4, r5 are unchanged, r6 is updated to be >= r5.
  */
-_GLOBAL(copy_and_flush)
+_ENTRY(copy_and_flush)
 	addi	r5,r5,-4
 	addi	r6,r6,-4
 4:	li	r0,L1_CACHE_BYTES/4
@@ -954,9 +951,9 @@ __secondary_start:
  * included in CONFIG_6xx
  */
 #if !defined(CONFIG_6xx)
-_GLOBAL(__save_cpu_setup)
+_ENTRY(__save_cpu_setup)
 	blr
-_GLOBAL(__restore_cpu_setup)
+_ENTRY(__restore_cpu_setup)
 	blr
 #endif /* !defined(CONFIG_6xx) */

@@ -1080,7 +1077,7 @@ start_here:
 /*
  * Set up the segment registers for a new context.
  */
-_GLOBAL(set_context)
+_ENTRY(set_context)
 	mulli	r3,r3,897	/* multiply context by skew factor */
 	rlwinm	r3,r3,4,8,27	/* VSID = (context & 0xfffff) << 4 */
 	addis	r3,r3,0x6000	/* Set Ks, Ku bits */
diff --git a/arch/powerpc/kernel/head_40x.S b/arch/powerpc/kernel/head_40x.S
index a8e0457..00bdb6d 100644
--- a/arch/powerpc/kernel/head_40x.S
+++ b/arch/powerpc/kernel/head_40x.S
@@ -52,9 +52,9 @@
  *
  * This is all going to change RSN when we add bi_recs.......  -- Dan
  */
-	.text
-_GLOBAL(_stext)
-_GLOBAL(_start)
+	.section	.text.head, "ax"
+_ENTRY(_stext);
+_ENTRY(_start);

 	/* Save parameters we are passed.
 	*/
@@ -89,9 +89,9 @@ turn_on_mmu:
  */
 	. = 0xc0
 crit_save:
-_GLOBAL(crit_r10)
+_ENTRY(crit_r10)
 	.space	4
-_GLOBAL(crit_r11)
+_ENTRY(crit_r11)
 	.space	4

 /*
@@ -814,7 +814,7 @@ finish_tlb_load:
  * The PowerPC 4xx family of processors do not have an FPU, so this just
  * returns.
  */
-_GLOBAL(giveup_fpu)
+_ENTRY(giveup_fpu)
 	blr

 /* This is where the main kernel code starts.
diff --git a/arch/powerpc/kernel/head_44x.S b/arch/powerpc/kernel/head_44x.S
index 8869596..7b0fda9 100644
--- a/arch/powerpc/kernel/head_44x.S
+++ b/arch/powerpc/kernel/head_44x.S
@@ -50,9 +50,9 @@
  *   r7 - End of kernel command line string
  *
  */
-	.text
-_GLOBAL(_stext)
-_GLOBAL(_start)
+	.section	.text.head, "ax"
+_ENTRY(_stext);
+_ENTRY(_start);
 	/*
 	 * Reserve a word at a fixed location to store the address
 	 * of abatron_pteptrs
diff --git a/arch/powerpc/kernel/head_8xx.S b/arch/powerpc/kernel/head_8xx.S
index 901be47..a6ecdd6 100644
--- a/arch/powerpc/kernel/head_8xx.S
+++ b/arch/powerpc/kernel/head_8xx.S
@@ -38,12 +38,9 @@
 #else
 #define DO_8xx_CPU6(val, reg)
 #endif
-	.text
-	.globl	_stext
-_stext:
-	.text
-	.globl	_start
-_start:
+	.section	.text.head, "ax"
+_ENTRY(_stext);
+_ENTRY(_start);

 /* MPC8xx
  * This port was done on an MBX board with an 860.  Right now I only
diff --git a/arch/powerpc/kernel/head_fsl_booke.S b/arch/powerpc/kernel/head_fsl_booke.S
index 1f155d3..d83cbbb 100644
--- a/arch/powerpc/kernel/head_fsl_booke.S
+++ b/arch/powerpc/kernel/head_fsl_booke.S
@@ -52,9 +52,9 @@
  *   r7 - End of kernel command line string
  *
  */
-	.text
-_GLOBAL(_stext)
-_GLOBAL(_start)
+	.section	.text.head, "ax"
+_ENTRY(_stext);
+_ENTRY(_start);
 	/*
 	 * Reserve a word at a fixed location to store the address
 	 * of abatron_pteptrs
diff --git a/arch/powerpc/kernel/vmlinux.lds.S b/arch/powerpc/kernel/vmlinux.lds.S
index 0c45855..823a8cb 100644
--- a/arch/powerpc/kernel/vmlinux.lds.S
+++ b/arch/powerpc/kernel/vmlinux.lds.S
@@ -34,6 +34,8 @@ SECTIONS

 	/* Text and gots */
 	.text : {
+		ALIGN_FUNCTION();
+		*(.text.head)
 		_text = .;
 		TEXT_TEXT
 		SCHED_TEXT
diff --git a/include/asm-powerpc/ppc_asm.h b/include/asm-powerpc/ppc_asm.h
index 211fdae..2dbd4e7 100644
--- a/include/asm-powerpc/ppc_asm.h
+++ b/include/asm-powerpc/ppc_asm.h
@@ -209,6 +209,10 @@ GLUE(.,name):

 #else /* 32-bit */

+#define _ENTRY(n)	\
+	.globl n;	\
+n:
+
 #define _GLOBAL(n)	\
 	.text;		\
 	.stabs __stringify(n:F-1),N_FUN,0,0,n;\

^ permalink raw reply related

* Re: Patches added to powerpc.git for-2.6.24 branch
From: Kumar Gala @ 2007-08-22 14:03 UTC (permalink / raw)
  To: Timur Tabi; +Cc: linuxppc-dev, Paul Mackerras
In-Reply-To: <46CC2FB3.4000200@freescale.com>


On Aug 22, 2007, at 7:44 AM, Timur Tabi wrote:

> Paul Mackerras wrote:
>
>> Scott Wood (15):
>>       [POWERPC] Add clrbits8 and setbits8
>
> No love for my similar patch that adds the clrsetbits macros? Or  
> the one that changes immap_86xx.h?

I think the clrsetbits macros needs some further cleanup.  I think  
Stephen mentioned doing something like we do for DEF_MMIO_OUT_BE() to  
only have one 'actual' macro.

The immap_86xx.h will go through me since its FSL code.

- k

^ permalink raw reply

* Re: RFC: [PATCH v2] Fixup modpost warnings in head*.S for ppc32
From: Josh Boyer @ 2007-08-22 14:03 UTC (permalink / raw)
  To: Kumar Gala; +Cc: linuxppc-dev, Paul Mackerras
In-Reply-To: <Pine.LNX.4.64.0708220856530.31744@blarg.am.freescale.net>

On Wed, 22 Aug 2007 08:58:31 -0500 (CDT)
Kumar Gala <galak@kernel.crashing.org> wrote:

> Addess the following modpost warnings we get out of the ppc32 head
> files:
> 
> WARNING: vmlinux.o(.text+0x358): Section mismatch: reference to .init.text:early_init (between 'skpinv' and 'interrupt_base')
> WARNING: vmlinux.o(.text+0x380): Section mismatch: reference to .init.text:machine_init (between 'skpinv' and 'interrupt_base')
> WARNING: vmlinux.o(.text+0x384): Section mismatch: reference to .init.text:MMU_init (between 'skpinv' and 'interrupt_base')
> WARNING: vmlinux.o(.text+0x3aa): Section mismatch: reference to .init.text:start_kernel (between 'skpinv' and 'interrupt_base')
> WARNING: vmlinux.o(.text+0x3ae): Section mismatch: reference to .init.text:start_kernel (between 'skpinv' and 'interrupt_base')
> 
> Does anyone have any issues with this?  This version cleans up 40x based
> on the latest for-2.6.24 tree and removes the stabs defn from _ENTRY.

No signed-off-by on purpose?

> diff --git a/arch/powerpc/kernel/head_40x.S b/arch/powerpc/kernel/head_40x.S
> index a8e0457..00bdb6d 100644
> --- a/arch/powerpc/kernel/head_40x.S
> +++ b/arch/powerpc/kernel/head_40x.S
> @@ -52,9 +52,9 @@
>   *
>   * This is all going to change RSN when we add bi_recs.......  -- Dan
>   */
> -	.text
> -_GLOBAL(_stext)
> -_GLOBAL(_start)
> +	.section	.text.head, "ax"
> +_ENTRY(_stext);
> +_ENTRY(_start);
> 
>  	/* Save parameters we are passed.
>  	*/
> @@ -89,9 +89,9 @@ turn_on_mmu:
>   */
>  	. = 0xc0
>  crit_save:
> -_GLOBAL(crit_r10)
> +_ENTRY(crit_r10)
>  	.space	4
> -_GLOBAL(crit_r11)
> +_ENTRY(crit_r11)
>  	.space	4
> 
>  /*
> @@ -814,7 +814,7 @@ finish_tlb_load:
>   * The PowerPC 4xx family of processors do not have an FPU, so this just
>   * returns.
>   */
> -_GLOBAL(giveup_fpu)
> +_ENTRY(giveup_fpu)
>  	blr

I had moved this bit below initial_mmu instead in my version.  I
realize there isn't much difference from a technical point of view, but
it seems misleading to label this one as _ENTRY.

josh

^ permalink raw reply

* Re: RFC: [PATCH v2] Fixup modpost warnings in head*.S for ppc32
From: Kumar Gala @ 2007-08-22 14:08 UTC (permalink / raw)
  To: Josh Boyer; +Cc: linuxppc-dev, Paul Mackerras
In-Reply-To: <20070822090315.7e0010c4@weaponx.rchland.ibm.com>


On Aug 22, 2007, at 9:03 AM, Josh Boyer wrote:

> On Wed, 22 Aug 2007 08:58:31 -0500 (CDT)
> Kumar Gala <galak@kernel.crashing.org> wrote:
>
>> Addess the following modpost warnings we get out of the ppc32 head
>> files:
>>
>> WARNING: vmlinux.o(.text+0x358): Section mismatch: reference  
>> to .init.text:early_init (between 'skpinv' and 'interrupt_base')
>> WARNING: vmlinux.o(.text+0x380): Section mismatch: reference  
>> to .init.text:machine_init (between 'skpinv' and 'interrupt_base')
>> WARNING: vmlinux.o(.text+0x384): Section mismatch: reference  
>> to .init.text:MMU_init (between 'skpinv' and 'interrupt_base')
>> WARNING: vmlinux.o(.text+0x3aa): Section mismatch: reference  
>> to .init.text:start_kernel (between 'skpinv' and 'interrupt_base')
>> WARNING: vmlinux.o(.text+0x3ae): Section mismatch: reference  
>> to .init.text:start_kernel (between 'skpinv' and 'interrupt_base')
>>
>> Does anyone have any issues with this?  This version cleans up 40x  
>> based
>> on the latest for-2.6.24 tree and removes the stabs defn from _ENTRY.
>
> No signed-off-by on purpose?

Yes, since its an RFC, I explicitly didn't put a signed-off-by :)

>> diff --git a/arch/powerpc/kernel/head_40x.S b/arch/powerpc/kernel/ 
>> head_40x.S
>> index a8e0457..00bdb6d 100644
>> --- a/arch/powerpc/kernel/head_40x.S
>> +++ b/arch/powerpc/kernel/head_40x.S
>> @@ -52,9 +52,9 @@
>>   *
>>   * This is all going to change RSN when we add bi_recs.......  --  
>> Dan
>>   */
>> -	.text
>> -_GLOBAL(_stext)
>> -_GLOBAL(_start)
>> +	.section	.text.head, "ax"
>> +_ENTRY(_stext);
>> +_ENTRY(_start);
>>
>>  	/* Save parameters we are passed.
>>  	*/
>> @@ -89,9 +89,9 @@ turn_on_mmu:
>>   */
>>  	. = 0xc0
>>  crit_save:
>> -_GLOBAL(crit_r10)
>> +_ENTRY(crit_r10)
>>  	.space	4
>> -_GLOBAL(crit_r11)
>> +_ENTRY(crit_r11)
>>  	.space	4
>>
>>  /*
>> @@ -814,7 +814,7 @@ finish_tlb_load:
>>   * The PowerPC 4xx family of processors do not have an FPU, so  
>> this just
>>   * returns.
>>   */
>> -_GLOBAL(giveup_fpu)
>> +_ENTRY(giveup_fpu)
>>  	blr
>
> I had moved this bit below initial_mmu instead in my version.  I
> realize there isn't much difference from a technical point of view,  
> but
> it seems misleading to label this one as _ENTRY.

Do you want to move both crit_r10/r11 & giveup_fpu or just giveup_fpu?

- k

^ permalink raw reply

* Re: [PATCH v5 0/2] SPI support for fsl_soc and mpc832x_rdb
From: Kumar Gala @ 2007-08-22 14:22 UTC (permalink / raw)
  To: avorontsov; +Cc: linuxppc-dev
In-Reply-To: <20070821152745.GA28986@localhost.localdomain>


On Aug 21, 2007, at 10:27 AM, Anton Vorontsov wrote:

> On Tue, Aug 21, 2007 at 05:45:37PM +0400, Anton Vorontsov wrote:
>> Hi all,
>>
>> Thanks for the previous reviews, this is v4 against Linus' tree,
>> as of today.
>
> Okay, here is brand-new, shiny v5. Today and only today it comes
> without section mismatch warnings, don't miss your chance. Get it
> free of charge! ;-)

This looks good, have some minor cleanup nits.

- k

^ permalink raw reply

* Re: [PATCH v5 1/2] [POWERPC] fsl_soc: add support for fsl_spi
From: Kumar Gala @ 2007-08-22 14:24 UTC (permalink / raw)
  To: Anton Vorontsov; +Cc: linuxppc-dev
In-Reply-To: <20070821152942.GA633@localhost.localdomain>


On Aug 21, 2007, at 10:29 AM, Anton Vorontsov wrote:

> Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
> ---
>  arch/powerpc/sysdev/fsl_soc.c |   84 ++++++++++++++++++++++++++++++ 
> +++++++++++
>  arch/powerpc/sysdev/fsl_soc.h |    7 +++
>  2 files changed, 91 insertions(+), 0 deletions(-)
>
> diff --git a/arch/powerpc/sysdev/fsl_soc.c b/arch/powerpc/sysdev/ 
> fsl_soc.c
> index 1cf29c9..2bdaeb2 100644
> --- a/arch/powerpc/sysdev/fsl_soc.c
> +++ b/arch/powerpc/sysdev/fsl_soc.c
> @@ -24,6 +24,7 @@
>  #include <linux/platform_device.h>
>  #include <linux/of_platform.h>
>  #include <linux/phy.h>
> +#include <linux/spi/spi.h>
>  #include <linux/fsl_devices.h>
>  #include <linux/fs_enet_pd.h>
>  #include <linux/fs_uart_pd.h>
> @@ -1187,3 +1188,86 @@ err:
>  arch_initcall(cpm_smc_uart_of_init);
>
>  #endif /* CONFIG_8xx */
> +
> +int __init fsl_spi_init(struct spi_board_info *board_infos,
> +			unsigned int num_board_infos,
> +			void (*activate_cs)(u8 cs, u8 polarity),
> +			void (*deactivate_cs)(u8 cs, u8 polarity))
> +{
> +	struct device_node *np;
> +	unsigned int i;
> +	u32 sysclk;
> +
> +	np = of_find_node_by_type(NULL, "qe");
> +	if (!np)
> +		return -ENODEV;
> +
> +	sysclk = *(u32 *)of_get_property(np, "bus-frequency", NULL);
> +
> +	for (np = NULL, i = 1;
> +	     (np = of_find_compatible_node(np, "spi", "fsl_spi")) != NULL;
> +	     i++) {
> +		int ret = 0;
> +		unsigned int j;
> +		const char *mode;
> +		struct resource res[2];
> +		struct platform_device *pdev = NULL;
> +		struct fsl_spi_platform_data pdata = {
> +			.activate_cs = activate_cs,
> +			.deactivate_cs = deactivate_cs,
> +		};
> +
> +		memset(res, 0, sizeof(res));
> +
> +		mode = of_get_property(np, "mode", NULL);
> +		pdata.sysclk = sysclk;
> +		pdata.bus_num = *(u32 *)of_get_property(np, "reg", NULL);
> +
> +		for (j = 0; j < num_board_infos; j++) {
> +			if (board_infos[j].bus_num == pdata.bus_num)
> +				pdata.max_chipselect++;
> +		}
> +
> +		if (!pdata.max_chipselect)
> +			goto err;
> +
> +		if (!strcmp(mode, "cpu-qe"))
> +			pdata.qe_mode = 1;
> +
> +		ret = of_address_to_resource(np, 0, &res[0]);
> +		if (ret)
> +			goto err;
> +
> +		res[1].start = res[2].end = irq_of_parse_and_map(np, 0);
> +		if (res[1].start == NO_IRQ)
> +			goto err;
> +
> +		res[1].name = "mpc83xx_spi";
> +		res[1].flags = IORESOURCE_IRQ;;

double ;;

can we not use of_irq_to_resource() ?

> +
> +		pdev = platform_device_alloc("mpc83xx_spi", i);
> +		if (!pdev)
> +			goto err;
> +
> +		ret = platform_device_add_data(pdev, &pdata, sizeof(pdata));
> +		if (ret)
> +			goto unreg;
> +
> +		ret = platform_device_add_resources(pdev, res,
> +						    ARRAY_SIZE(res));
> +		if (ret)
> +			goto unreg;
> +
> +		ret = platform_device_register(pdev);
> +		if (ret)
> +			goto unreg;
> +
> +		continue;
> +unreg:
> +		platform_device_del(pdev);
> +err:
> +		continue;
> +	}
> +
> +	return spi_register_board_info(board_infos, num_board_infos);
> +}
> diff --git a/arch/powerpc/sysdev/fsl_soc.h b/arch/powerpc/sysdev/ 
> fsl_soc.h
> index 04e145b..618d91d 100644
> --- a/arch/powerpc/sysdev/fsl_soc.h
> +++ b/arch/powerpc/sysdev/fsl_soc.h
> @@ -8,5 +8,12 @@ extern phys_addr_t get_immrbase(void);
>  extern u32 get_brgfreq(void);
>  extern u32 get_baudrate(void);
>
> +struct spi_board_info;
> +
> +extern int fsl_spi_init(struct spi_board_info *board_infos,
> +			unsigned int num_board_infos,
> +			void (*activate_cs)(u8 cs, u8 polarity),
> +			void (*deactivate_cs)(u8 cs, u8 polarity));
> +
>  #endif
>  #endif
> -- 
> 1.5.0.6
>
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev@ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-dev

^ permalink raw reply

* Re: Patches added to powerpc.git for-2.6.24 branch
From: Timur Tabi @ 2007-08-22 14:22 UTC (permalink / raw)
  To: Kumar Gala; +Cc: linuxppc-dev, Paul Mackerras
In-Reply-To: <C3CB0CDB-AA2B-4D24-AEA6-1A7305B5B311@kernel.crashing.org>

Kumar Gala wrote:

> I think the clrsetbits macros needs some further cleanup.  I think 
> Stephen mentioned doing something like we do for DEF_MMIO_OUT_BE() to 
> only have one 'actual' macro.

Yeah I saw that one, but on IRC a few people said they don't like ##, so I 
decided against it.  Are you saying I should change it anyway?

> The immap_86xx.h will go through me since its FSL code.

I was thinking some more about that file this morning.  If you want, I can 
rename it to guts.h since it only has one structure in it, and then also 
update a few other files that use the global utilities registers to use that 
structure instead of using macros.

-- 
Timur Tabi
Linux Kernel Developer @ Freescale

^ permalink raw reply

* Re: [PATCH v5 2/2] [POWERPC] MPC832x_RDB: update dts to use SPI1 in QE, register mmc_spi stub
From: Kumar Gala @ 2007-08-22 14:25 UTC (permalink / raw)
  To: Anton Vorontsov; +Cc: linuxppc-dev
In-Reply-To: <20070821152947.GB633@localhost.localdomain>


On Aug 21, 2007, at 10:29 AM, Anton Vorontsov wrote:

> mmc_spi already tested to work. When it will hit mainline
> the only change that will be needed is replacing "spidev"
> with "mmc_spi".
>
> Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
> ---
>  arch/powerpc/boot/dts/mpc832x_rdb.dts     |    2 +-
>  arch/powerpc/platforms/83xx/mpc832x_rdb.c |   50 ++++++++++++++++++ 
> +++++++++++
>  2 files changed, 51 insertions(+), 1 deletions(-)
>
> diff --git a/arch/powerpc/boot/dts/mpc832x_rdb.dts b/arch/powerpc/ 
> boot/dts/mpc832x_rdb.dts
> index e9c332f..1ac0025 100644
> --- a/arch/powerpc/boot/dts/mpc832x_rdb.dts
> +++ b/arch/powerpc/boot/dts/mpc832x_rdb.dts
> @@ -211,7 +211,7 @@
>  			reg = <4c0 40>;
>  			interrupts = <2>;
>  			interrupt-parent = <&qeic>;
> -			mode = "cpu";
> +			mode = "cpu-qe";
>  		};
>
>  		spi@500 {
> diff --git a/arch/powerpc/platforms/83xx/mpc832x_rdb.c b/arch/ 
> powerpc/platforms/83xx/mpc832x_rdb.c
> index e021b08..cf58d06 100644
> --- a/arch/powerpc/platforms/83xx/mpc832x_rdb.c
> +++ b/arch/powerpc/platforms/83xx/mpc832x_rdb.c
> @@ -15,6 +15,7 @@
>   */
>
>  #include <linux/pci.h>
> +#include <linux/spi/spi.h>
>
>  #include <asm/of_platform.h>
>  #include <asm/time.h>
> @@ -24,6 +25,7 @@
>  #include <asm/qe_ic.h>
>
>  #include "mpc83xx.h"
> +#include "../../sysdev/fsl_soc.h"

we usually do #include <sysdev/fsl_soc.h>

>
>  #undef DEBUG
>  #ifdef DEBUG
> @@ -32,6 +34,54 @@
>  #define DBG(fmt...)
>  #endif
>
> +extern int par_io_data_set(u8 port, u8 pin, u8 val);
> +extern int par_io_config_pin(u8 port, u8 pin, int dir, int  
> open_drain,
> +			     int assignment, int has_irq);
> +
> +static void mpc83xx_spi_activate_cs(u8 cs, u8 polarity)
> +{
> +	pr_debug("%s %d %d\n", __func__, cs, polarity);
> +	par_io_data_set(3, 13, polarity);
> +}
> +
> +static void mpc83xx_spi_deactivate_cs(u8 cs, u8 polarity)
> +{
> +	pr_debug("%s %d %d\n", __func__, cs, polarity);
> +	par_io_data_set(3, 13, !polarity);
> +}
> +
> +static struct spi_board_info mpc832x_spi_boardinfo = {
> +	.bus_num = 0x4c0,
> +	.chip_select = 0,
> +	.max_speed_hz = 50000000,
> +	/*
> +	 * XXX: This is spidev (spi in userspace) stub, should
> +	 * be replaced by "mmc_spi" when mmc_spi will hit mainline.
> +	 */
> +	.modalias = "spidev",
> +};
> +
> +static int __init mpc832x_spi_init(void)
> +{
> +	if (!machine_is(mpc832x_rdb))
> +		return 0;
> +
> +	par_io_config_pin(3,  0, 3, 0, 1, 0); /* SPI1 MOSI, I/O */
> +	par_io_config_pin(3,  1, 3, 0, 1, 0); /* SPI1 MISO, I/O */
> +	par_io_config_pin(3,  2, 3, 0, 1, 0); /* SPI1 CLK,  I/O */
> +	par_io_config_pin(3,  3, 2, 0, 1, 0); /* SPI1 SEL,  I   */
> +
> +	par_io_config_pin(3, 13, 1, 0, 0, 0); /* !SD_CS,    O */
> +	par_io_config_pin(3, 14, 2, 0, 0, 0); /* SD_INSERT, I */
> +	par_io_config_pin(3, 15, 2, 0, 0, 0); /* SD_PROTECT,I */
> +
> +	return fsl_spi_init(&mpc832x_spi_boardinfo, 1,
> +			    mpc83xx_spi_activate_cs,
> +			    mpc83xx_spi_deactivate_cs);
> +}
> +
> +device_initcall(mpc832x_spi_init);
> +
>  /*  
> ********************************************************************** 
> **
>   *
>   * Setup the architecture
> -- 
> 1.5.0.6
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev@ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-dev

^ permalink raw reply

* Re: RFC: [PATCH v2] Fixup modpost warnings in head*.S for ppc32
From: Josh Boyer @ 2007-08-22 14:31 UTC (permalink / raw)
  To: Kumar Gala; +Cc: linuxppc-dev, Paul Mackerras
In-Reply-To: <490B1783-FA20-4DD8-A580-E71398B9928F@kernel.crashing.org>

On Wed, 22 Aug 2007 09:08:31 -0500
Kumar Gala <galak@kernel.crashing.org> wrote:

> 
> On Aug 22, 2007, at 9:03 AM, Josh Boyer wrote:
> 
> > On Wed, 22 Aug 2007 08:58:31 -0500 (CDT)
> > Kumar Gala <galak@kernel.crashing.org> wrote:
> >
> >> Addess the following modpost warnings we get out of the ppc32 head
> >> files:
> >>
> >> WARNING: vmlinux.o(.text+0x358): Section mismatch: reference  
> >> to .init.text:early_init (between 'skpinv' and 'interrupt_base')
> >> WARNING: vmlinux.o(.text+0x380): Section mismatch: reference  
> >> to .init.text:machine_init (between 'skpinv' and 'interrupt_base')
> >> WARNING: vmlinux.o(.text+0x384): Section mismatch: reference  
> >> to .init.text:MMU_init (between 'skpinv' and 'interrupt_base')
> >> WARNING: vmlinux.o(.text+0x3aa): Section mismatch: reference  
> >> to .init.text:start_kernel (between 'skpinv' and 'interrupt_base')
> >> WARNING: vmlinux.o(.text+0x3ae): Section mismatch: reference  
> >> to .init.text:start_kernel (between 'skpinv' and 'interrupt_base')
> >>
> >> Does anyone have any issues with this?  This version cleans up 40x  
> >> based
> >> on the latest for-2.6.24 tree and removes the stabs defn from _ENTRY.
> >
> > No signed-off-by on purpose?
> 
> Yes, since its an RFC, I explicitly didn't put a signed-off-by :)

Ok.  I can never tell if people just forgot or if they really meant
to.  Maybe we should be like Ben and do: Not-Signed-off-by ;)

> >> diff --git a/arch/powerpc/kernel/head_40x.S b/arch/powerpc/kernel/ 
> >> head_40x.S
> >> index a8e0457..00bdb6d 100644
> >> --- a/arch/powerpc/kernel/head_40x.S
> >> +++ b/arch/powerpc/kernel/head_40x.S
> >> @@ -52,9 +52,9 @@
> >>   *
> >>   * This is all going to change RSN when we add bi_recs.......  --  
> >> Dan
> >>   */
> >> -	.text
> >> -_GLOBAL(_stext)
> >> -_GLOBAL(_start)
> >> +	.section	.text.head, "ax"
> >> +_ENTRY(_stext);
> >> +_ENTRY(_start);
> >>
> >>  	/* Save parameters we are passed.
> >>  	*/
> >> @@ -89,9 +89,9 @@ turn_on_mmu:
> >>   */
> >>  	. = 0xc0
> >>  crit_save:
> >> -_GLOBAL(crit_r10)
> >> +_ENTRY(crit_r10)
> >>  	.space	4
> >> -_GLOBAL(crit_r11)
> >> +_ENTRY(crit_r11)
> >>  	.space	4
> >>
> >>  /*
> >> @@ -814,7 +814,7 @@ finish_tlb_load:
> >>   * The PowerPC 4xx family of processors do not have an FPU, so  
> >> this just
> >>   * returns.
> >>   */
> >> -_GLOBAL(giveup_fpu)
> >> +_ENTRY(giveup_fpu)
> >>  	blr
> >
> > I had moved this bit below initial_mmu instead in my version.  I
> > realize there isn't much difference from a technical point of view,  
> > but
> > it seems misleading to label this one as _ENTRY.
> 
> Do you want to move both crit_r10/r11 & giveup_fpu or just giveup_fpu?

I just moved giveup_fpu.  Moving crit_r10/r11 was more work than my 5
minute fixup allowed :).  Really, this isn't a big deal either way so
don't stress too much about it.

josh

^ permalink raw reply

* [PATCH 1/4] ehea: fix interface to DLPAR tools
From: Jan-Bernd Themann @ 2007-08-22 14:20 UTC (permalink / raw)
  To: Jeff Garzik
  Cc: Thomas Klein, Jan-Bernd Themann, netdev, linux-kernel, linux-ppc,
	Christoph Raisch, Marcus Eder, Stefan Roscher

Userspace DLPAR tool expects decimal numbers to be written to
and read from sysfs entries.

Signed-off-by: Jan-Bernd Themann <themann@de.ibm.com>


---
 drivers/net/ehea/ehea_main.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/net/ehea/ehea_main.c b/drivers/net/ehea/ehea_main.c
index 9756211..22d000f 100644
--- a/drivers/net/ehea/ehea_main.c
+++ b/drivers/net/ehea/ehea_main.c
@@ -2490,7 +2490,7 @@ static ssize_t ehea_show_port_id(struct device *dev,
 				 struct device_attribute *attr, char *buf)
 {
 	struct ehea_port *port = container_of(dev, struct ehea_port, ofdev.dev);
-	return sprintf(buf, "0x%X", port->logical_port_id);
+	return sprintf(buf, "%d", port->logical_port_id);
 }
 
 static DEVICE_ATTR(log_port_id, S_IRUSR | S_IRGRP | S_IROTH, ehea_show_port_id,
@@ -2781,7 +2781,7 @@ static ssize_t ehea_probe_port(struct device *dev,
 
 	u32 logical_port_id;
 
-	sscanf(buf, "%X", &logical_port_id);
+	sscanf(buf, "%d", &logical_port_id);
 
 	port = ehea_get_port(adapter, logical_port_id);
 
@@ -2834,7 +2834,7 @@ static ssize_t ehea_remove_port(struct device *dev,
 	int i;
 	u32 logical_port_id;
 
-	sscanf(buf, "%X", &logical_port_id);
+	sscanf(buf, "%d", &logical_port_id);
 
 	port = ehea_get_port(adapter, logical_port_id);
 
-- 
1.5.2

^ permalink raw reply related

* Kerenel crashes every other Boot..
From: ravi.rao @ 2007-08-22 14:53 UTC (permalink / raw)
  To: linuxppc-embedded

[-- Attachment #1: Type: text/plain, Size: 1036 bytes --]

Hi All,
    I have a PPC 405EP custom target. I based most of my software on the 
EP405 Taihu reference and now I am able to load the 2.6.21 kernel and with 
a minimum initramfs I also get the busy box prompt. I see a strange poblem 
it fails(linux crashes) every other boot. Can any one please tell me what 
may be happening ???
Thanks,
Ravishankar Govindarao
RFL Electronics Inc.
E-mail : Ravi.Rao@rflelect.com
Voice: 973.334.3100 Ext. 233
Fax: 973.334.3863
 
CONFIDENTIALITY NOTE
This e-mail, including any attachments, may contain confidential and/or 
legally privileged information.  The Information is intended only for the 
use of the individual or entity named on this e-mail .  If you are not the 
intended recipient, you are hereby notified that any disclosure, copying, 
distribution, or the taking of any action in reliance on the contents of 
this transmitted Information is strictly prohibited.  Further, if you are 
not the intended recipient, please notify us by return e-mail and delete 
the Information promptly.
 
 
 

[-- Attachment #2: Type: text/html, Size: 1779 bytes --]

^ permalink raw reply

* [PATCH 2/4] ehea: fix module parameter description
From: Jan-Bernd Themann @ 2007-08-22 14:21 UTC (permalink / raw)
  To: Jeff Garzik
  Cc: Thomas Klein, Jan-Bernd Themann, netdev, linux-kernel, linux-ppc,
	Christoph Raisch, Marcus Eder, Stefan Roscher

Update the module parameter description of "use_mcs" to
show correct default value

Signed-off-by: Jan-Bernd Themann <themann@de.ibm.com>

---
 drivers/net/ehea/ehea_main.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/ehea/ehea_main.c b/drivers/net/ehea/ehea_main.c
index 22d000f..db57474 100644
--- a/drivers/net/ehea/ehea_main.c
+++ b/drivers/net/ehea/ehea_main.c
@@ -76,7 +76,7 @@ MODULE_PARM_DESC(rq1_entries, "Number of entries for Receive Queue 1 "
 MODULE_PARM_DESC(sq_entries, " Number of entries for the Send Queue  "
 		 "[2^x - 1], x = [6..14]. Default = "
 		 __MODULE_STRING(EHEA_DEF_ENTRIES_SQ) ")");
-MODULE_PARM_DESC(use_mcs, " 0:NAPI, 1:Multiple receive queues, Default = 1 ");
+MODULE_PARM_DESC(use_mcs, " 0:NAPI, 1:Multiple receive queues, Default = 0 ");
 
 static int port_name_cnt = 0;
 static LIST_HEAD(adapter_list);
-- 
1.5.2

^ permalink raw reply related

* [PATCH 3/4] ehea: fix queue destructor
From: Jan-Bernd Themann @ 2007-08-22 14:21 UTC (permalink / raw)
  To: Jeff Garzik
  Cc: Thomas Klein, Jan-Bernd Themann, netdev, linux-kernel, linux-ppc,
	Christoph Raisch, Marcus Eder, Stefan Roscher

Includes hcp_epas_dtor in eq/cq/qp destructors to unmap
HW register.

Signed-off-by: Jan-Bernd Themann <themann@de.ibm.com>

---
 drivers/net/ehea/ehea_qmr.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/drivers/net/ehea/ehea_qmr.c b/drivers/net/ehea/ehea_qmr.c
index a36fa6c..c82e245 100644
--- a/drivers/net/ehea/ehea_qmr.c
+++ b/drivers/net/ehea/ehea_qmr.c
@@ -235,6 +235,8 @@ int ehea_destroy_cq(struct ehea_cq *cq)
 	if (!cq)
 		return 0;
 
+	hcp_epas_dtor(&cq->epas);
+
 	if ((hret = ehea_destroy_cq_res(cq, NORMAL_FREE)) == H_R_STATE) {
 		ehea_error_data(cq->adapter, cq->fw_handle);
 		hret = ehea_destroy_cq_res(cq, FORCE_FREE);
@@ -361,6 +363,8 @@ int ehea_destroy_eq(struct ehea_eq *eq)
 	if (!eq)
 		return 0;
 
+	hcp_epas_dtor(&eq->epas);
+
 	if ((hret = ehea_destroy_eq_res(eq, NORMAL_FREE)) == H_R_STATE) {
 		ehea_error_data(eq->adapter, eq->fw_handle);
 		hret = ehea_destroy_eq_res(eq, FORCE_FREE);
@@ -541,6 +545,8 @@ int ehea_destroy_qp(struct ehea_qp *qp)
 	if (!qp)
 		return 0;
 
+	hcp_epas_dtor(&qp->epas);
+
 	if ((hret = ehea_destroy_qp_res(qp, NORMAL_FREE)) == H_R_STATE) {
 		ehea_error_data(qp->adapter, qp->fw_handle);
 		hret = ehea_destroy_qp_res(qp, FORCE_FREE);
-- 
1.5.2

^ permalink raw reply related

* [PATCH v6 0/2] SPI support for fsl_soc and mpc832x_rdb
From: Anton Vorontsov @ 2007-08-22 14:54 UTC (permalink / raw)
  To: Kumar Gala; +Cc: linuxppc-dev
In-Reply-To: <3DC4D103-C7C1-42CC-AEE6-38CFB8836E82@kernel.crashing.org>

On Wed, Aug 22, 2007 at 09:22:47AM -0500, Kumar Gala wrote:
>
> On Aug 21, 2007, at 10:27 AM, Anton Vorontsov wrote:
>
>> On Tue, Aug 21, 2007 at 05:45:37PM +0400, Anton Vorontsov wrote:
>>> Hi all,
>>>
>>> Thanks for the previous reviews, this is v4 against Linus' tree,
>>> as of today.
>>
>> Okay, here is brand-new, shiny v5. Today and only today it comes
>> without section mismatch warnings, don't miss your chance. Get it
>> free of charge! ;-)
>
> This looks good, have some minor cleanup nits.

Much thanks, fixed.

-- 
Anton Vorontsov
email: cbou@mail.ru
backup email: ya-cbou@yandex.ru
irc://irc.freenode.net/bd2

^ permalink raw reply

* [PATCH 4/4] ehea: show physical port state
From: Jan-Bernd Themann @ 2007-08-22 14:21 UTC (permalink / raw)
  To: Jeff Garzik
  Cc: Thomas Klein, Jan-Bernd Themann, netdev, linux-kernel, linux-ppc,
	Christoph Raisch, Marcus Eder, Stefan Roscher

Introduces a module parameter to decide whether the physical
port link state is propagated to the network stack or not.
It makes sense not to take the physical port state into account
on machines with more logical partitions that communicate
with each other. This is always possible no matter what the physical
port state is. Thus eHEA can be considered as a switch there.

Signed-off-by: Jan-Bernd Themann <themann@de.ibm.com>

---
 drivers/net/ehea/ehea.h      |    5 ++++-
 drivers/net/ehea/ehea_main.c |   14 +++++++++++++-
 2 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ehea/ehea.h b/drivers/net/ehea/ehea.h
index d67f97b..8d58be5 100644
--- a/drivers/net/ehea/ehea.h
+++ b/drivers/net/ehea/ehea.h
@@ -39,7 +39,7 @@
 #include <asm/io.h>
 
 #define DRV_NAME	"ehea"
-#define DRV_VERSION	"EHEA_0073"
+#define DRV_VERSION	"EHEA_0074"
 
 /* eHEA capability flags */
 #define DLPAR_PORT_ADD_REM 1
@@ -402,6 +402,8 @@ struct ehea_mc_list {
 
 #define EHEA_PORT_UP 1
 #define EHEA_PORT_DOWN 0
+#define EHEA_PHY_LINK_UP 1
+#define EHEA_PHY_LINK_DOWN 0
 #define EHEA_MAX_PORT_RES 16
 struct ehea_port {
 	struct ehea_adapter *adapter;	 /* adapter that owns this port */
@@ -427,6 +429,7 @@ struct ehea_port {
 	u32 msg_enable;
 	u32 sig_comp_iv;
 	u32 state;
+	u8 phy_link;
 	u8 full_duplex;
 	u8 autoneg;
 	u8 num_def_qps;
diff --git a/drivers/net/ehea/ehea_main.c b/drivers/net/ehea/ehea_main.c
index db57474..1804c99 100644
--- a/drivers/net/ehea/ehea_main.c
+++ b/drivers/net/ehea/ehea_main.c
@@ -53,17 +53,21 @@ static int rq3_entries = EHEA_DEF_ENTRIES_RQ3;
 static int sq_entries = EHEA_DEF_ENTRIES_SQ;
 static int use_mcs = 0;
 static int num_tx_qps = EHEA_NUM_TX_QP;
+static int show_phys_link = 0;
 
 module_param(msg_level, int, 0);
 module_param(rq1_entries, int, 0);
 module_param(rq2_entries, int, 0);
 module_param(rq3_entries, int, 0);
 module_param(sq_entries, int, 0);
+module_param(show_phys_link, int, 0);
 module_param(use_mcs, int, 0);
 module_param(num_tx_qps, int, 0);
 
 MODULE_PARM_DESC(num_tx_qps, "Number of TX-QPS");
 MODULE_PARM_DESC(msg_level, "msg_level");
+MODULE_PARM_DESC(show_phys_link, "Show link state of external port"
+		 "1:yes, 0: no.  Default = 0 ");
 MODULE_PARM_DESC(rq3_entries, "Number of entries for Receive Queue 3 "
 		 "[2^x - 1], x = [6..14]. Default = "
 		 __MODULE_STRING(EHEA_DEF_ENTRIES_RQ3) ")");
@@ -814,7 +818,9 @@ int ehea_set_portspeed(struct ehea_port *port, u32 port_speed)
 			ehea_error("Failed setting port speed");
 		}
 	}
-	netif_carrier_on(port->netdev);
+	if (!show_phys_link || (port->phy_link == EHEA_PHY_LINK_UP))
+		netif_carrier_on(port->netdev);
+
 	kfree(cb4);
 out:
 	return ret;
@@ -869,13 +875,19 @@ static void ehea_parse_eqe(struct ehea_adapter *adapter, u64 eqe)
 			}
 
 		if (EHEA_BMASK_GET(NEQE_EXTSWITCH_PORT_UP, eqe)) {
+			port->phy_link = EHEA_PHY_LINK_UP;
 			if (netif_msg_link(port))
 				ehea_info("%s: Physical port up",
 					  port->netdev->name);
+			if (show_phys_link)
+				netif_carrier_on(port->netdev);
 		} else {
+			port->phy_link = EHEA_PHY_LINK_DOWN;
 			if (netif_msg_link(port))
 				ehea_info("%s: Physical port down",
 					  port->netdev->name);
+			if (show_phys_link)
+				netif_carrier_off(port->netdev);
 		}
 
 		if (EHEA_BMASK_GET(NEQE_EXTSWITCH_PRIMARY, eqe))
-- 
1.5.2

^ permalink raw reply related

* [PATCH v6 1/2] [POWERPC] fsl_soc: add support for fsl_spi
From: Anton Vorontsov @ 2007-08-22 14:57 UTC (permalink / raw)
  To: linuxppc-dev
In-Reply-To: <20070822145415.GA22595@localhost.localdomain>

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
---
 arch/powerpc/sysdev/fsl_soc.c |   81 +++++++++++++++++++++++++++++++++++++++++
 arch/powerpc/sysdev/fsl_soc.h |    7 ++++
 2 files changed, 88 insertions(+), 0 deletions(-)

diff --git a/arch/powerpc/sysdev/fsl_soc.c b/arch/powerpc/sysdev/fsl_soc.c
index 1cf29c9..473b45b 100644
--- a/arch/powerpc/sysdev/fsl_soc.c
+++ b/arch/powerpc/sysdev/fsl_soc.c
@@ -24,6 +24,7 @@
 #include <linux/platform_device.h>
 #include <linux/of_platform.h>
 #include <linux/phy.h>
+#include <linux/spi/spi.h>
 #include <linux/fsl_devices.h>
 #include <linux/fs_enet_pd.h>
 #include <linux/fs_uart_pd.h>
@@ -1187,3 +1188,83 @@ err:
 arch_initcall(cpm_smc_uart_of_init);
 
 #endif /* CONFIG_8xx */
+
+int __init fsl_spi_init(struct spi_board_info *board_infos,
+			unsigned int num_board_infos,
+			void (*activate_cs)(u8 cs, u8 polarity),
+			void (*deactivate_cs)(u8 cs, u8 polarity))
+{
+	struct device_node *np;
+	unsigned int i;
+	u32 sysclk;
+
+	np = of_find_node_by_type(NULL, "qe");
+	if (!np)
+		return -ENODEV;
+
+	sysclk = *(u32 *)of_get_property(np, "bus-frequency", NULL);
+
+	for (np = NULL, i = 1;
+	     (np = of_find_compatible_node(np, "spi", "fsl_spi")) != NULL;
+	     i++) {
+		int ret = 0;
+		unsigned int j;
+		const char *mode;
+		struct resource res[2];
+		struct platform_device *pdev;
+		struct fsl_spi_platform_data pdata = {
+			.activate_cs = activate_cs,
+			.deactivate_cs = deactivate_cs,
+		};
+
+		memset(res, 0, sizeof(res));
+
+		mode = of_get_property(np, "mode", NULL);
+		pdata.sysclk = sysclk;
+		pdata.bus_num = *(u32 *)of_get_property(np, "reg", NULL);
+
+		for (j = 0; j < num_board_infos; j++) {
+			if (board_infos[j].bus_num == pdata.bus_num)
+				pdata.max_chipselect++;
+		}
+
+		if (!pdata.max_chipselect)
+			goto err;
+
+		if (!strcmp(mode, "cpu-qe"))
+			pdata.qe_mode = 1;
+
+		ret = of_address_to_resource(np, 0, &res[0]);
+		if (ret)
+			goto err;
+
+		ret = of_irq_to_resource(np, 0, &res[1]);
+		if (ret == NO_IRQ)
+			goto err;
+
+		pdev = platform_device_alloc("mpc83xx_spi", i);
+		if (!pdev)
+			goto err;
+
+		ret = platform_device_add_data(pdev, &pdata, sizeof(pdata));
+		if (ret)
+			goto unreg;
+
+		ret = platform_device_add_resources(pdev, res,
+						    ARRAY_SIZE(res));
+		if (ret)
+			goto unreg;
+
+		ret = platform_device_register(pdev);
+		if (ret)
+			goto unreg;
+
+		continue;
+unreg:
+		platform_device_del(pdev);
+err:
+		continue;
+	}
+
+	return spi_register_board_info(board_infos, num_board_infos);
+}
diff --git a/arch/powerpc/sysdev/fsl_soc.h b/arch/powerpc/sysdev/fsl_soc.h
index 04e145b..618d91d 100644
--- a/arch/powerpc/sysdev/fsl_soc.h
+++ b/arch/powerpc/sysdev/fsl_soc.h
@@ -8,5 +8,12 @@ extern phys_addr_t get_immrbase(void);
 extern u32 get_brgfreq(void);
 extern u32 get_baudrate(void);
 
+struct spi_board_info;
+
+extern int fsl_spi_init(struct spi_board_info *board_infos,
+			unsigned int num_board_infos,
+			void (*activate_cs)(u8 cs, u8 polarity),
+			void (*deactivate_cs)(u8 cs, u8 polarity));
+
 #endif
 #endif
-- 
1.5.0.6

^ permalink raw reply related


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox