GitHub/LineageOS/G12/android_kernel_amlogic_linux-4.9.git
18 years ago[POWERPC] Generic BUG for powerpc
Jeremy Fitzhardinge [Fri, 8 Dec 2006 11:30:41 +0000 (03:30 -0800)]
[POWERPC] Generic BUG for powerpc

This makes powerpc use the generic BUG machinery.  The biggest reports the
function name, since it is redundant with kallsyms, and not needed in general.

There is an overall reduction of code, since module_32/64 duplicated several
functions.

Unfortunately there's no way to tell gcc that BUG won't return, so the BUG
macro includes a goto loop.  This will generate a real jmp instruction, which
is never used.

[akpm@osdl.org: build fix]
[paulus@samba.org: remove infinite loop in BUG_ON]
Signed-off-by: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Andi Kleen <ak@muc.de>
Cc: Hugh Dickens <hugh@veritas.com>
Cc: Michael Ellerman <michael@ellerman.id.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agoMerge branch 'for_paulus' of master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc
Paul Mackerras [Mon, 11 Dec 2006 05:31:42 +0000 (16:31 +1100)]
Merge branch 'for_paulus' of /linux/kernel/git/galak/powerpc

18 years ago[PPC] Fix compile failure do to introduction of PHY_POLL
Kumar Gala [Mon, 11 Dec 2006 05:26:16 +0000 (23:26 -0600)]
[PPC] Fix compile failure do to introduction of PHY_POLL

PHY_POLL is defined in <linux/phy.h> include it in <linux/fsl_devices.h> so
board code will have it defined.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
18 years agoMerge branch '85xx' into for_paulus
Kumar Gala [Mon, 11 Dec 2006 05:16:08 +0000 (23:16 -0600)]
Merge branch '85xx' into for_paulus

18 years ago[POWERPC] Only export __mtdcr/__mfdcr if CONFIG_PPC_DCR is set
Kumar Gala [Mon, 11 Dec 2006 05:15:47 +0000 (23:15 -0600)]
[POWERPC] Only export __mtdcr/__mfdcr if CONFIG_PPC_DCR is set

On 85xx we don't build in dcr support because the core doesn't implement the
instructions.  This caused problems when building an 85xx kernel.  Additionally
made it so we only build __mtdcr/__mfdcr if we are CONFIG_PPC_DCR_NATIVE.

The 85xx build issue wasPointed out by Dai Haruki.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
18 years ago[POWERPC] Remove old dcr.S
Benjamin Herrenschmidt [Mon, 11 Dec 2006 04:08:40 +0000 (15:08 +1100)]
[POWERPC] Remove old dcr.S

When I renamed dcr.S to dcr_low.S (and added dcr.c) it looks like the
old dcr.S file didn't properly get removed.  This fixes it.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Fix SPU coredump code for max_fdset removal
Paul Mackerras [Mon, 11 Dec 2006 04:13:37 +0000 (15:13 +1100)]
[POWERPC] Fix SPU coredump code for max_fdset removal

Commit bbea9f69668a3d0cf9feba15a724cd02896f8675 removed the max_fdset
element of struct fdtable.  It appears that checking max_fds is
sufficient now.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Fix irq routing on some 32-bit PowerMacs
Benjamin Herrenschmidt [Mon, 11 Dec 2006 03:09:07 +0000 (14:09 +1100)]
[POWERPC] Fix irq routing on some 32-bit PowerMacs

The changes to use pci_read_irq_line() broke interrupt parsing
on some 32-bit powermacs (oops).  The reason is a bit obscure.
The code to parse interrupts happens earlier now, during
pcibios_fixup() as the PCI bus is being probed.  However, the
current implementation pci_device_to_OF_node() for 32-bit
powerpc relies, on machines like PowerMac which renumber PCI buses,
on a table called pci_OF_bus_map containing a map of bus numbers
between the kernel and the firmware which is setup only later.
Thus, it fails to match the device node.  In addition, some of
Apple internal PCI devices lack a proper PCI_INTERRUPT_PIN, thus
preventing the fallback mapping code to work.

This patch fixes it by making pci_device_to_OF_node() 32-bit
implementation use a different algorithm that works without
using the pci_OF_bus_map thing (which I intend to deprecate
anyway). It's a bit slower but that function isn't called in
any hot path hopefully.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
18 years ago[POWERPC] ps3: Add vuart support
Geoff Levand [Sat, 9 Dec 2006 02:27:47 +0000 (18:27 -0800)]
[POWERPC] ps3: Add vuart support

Adds support for the PS3 virtual UART (vuart).  The vuart provides a
bi-directional byte stream data link between logical partitions.

This is needed for the ps3 graphics driver and the ps3 power
control support to be able to communicate with the lv1 policy
module.

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Support ibm,dynamic-reconfiguration-memory nodes
Paul Mackerras [Wed, 29 Nov 2006 11:27:42 +0000 (22:27 +1100)]
[POWERPC] Support ibm,dynamic-reconfiguration-memory nodes

For PAPR partitions with large amounts of memory, the firmware has an
alternative, more compact representation for the information about the
memory in the partition and its NUMA associativity information.  This
adds the code to the kernel to parse this alternative representation.

The other part of this patch is telling the firmware that we can
handle the alternative representation.  There is however a subtlety
here, because the firmware will invoke a reboot if the memory
representation we request is different from the representation that
firmware is currently using.  This is because firmware can't change
the representation on the fly.  Further, some firmware versions used
on POWER5+ machines have a bug where this reboot leaves the machine
with an altered value of load-base, which will prevent any kernel
booting until it is reset to the normal value (0x4000).  Because of
this bug, we do NOT set fake_elf.rpanote.new_mem_def = 1, and thus we
do not request the new representation on POWER5+ and earlier machines.
We do request the new representation on POWER6, which uses the
ibm,client-architecture-support call.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] dont allow pSeries_probe to succeed without initialising MMU
Anton Blanchard [Fri, 8 Dec 2006 07:22:09 +0000 (18:22 +1100)]
[POWERPC] dont allow pSeries_probe to succeed without initialising MMU

pSeries_probe can decide that we are a pseries but then fail to
initialise the MMU. If an rtas node doesnt exist, we continually fall
out of pSeries_probe_hypertas early and never get to the MMU init code.

While pseries without RTAS is an illegal combination, the way we
currently fail is a pain to track down, and can happen if your flattened
device tree code has issues (like mine did :).

With the following patch we init the MMU, come up and print some
warnings about RTAS not existing, instead of looping on 0x400 exceptions.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] micro optimise pSeries_probe
Anton Blanchard [Fri, 8 Dec 2006 07:08:37 +0000 (18:08 +1100)]
[POWERPC] micro optimise pSeries_probe

We find the OF root the line before, we may as well use it.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Add SPURR SPR to sysfs
Anton Blanchard [Fri, 8 Dec 2006 06:51:13 +0000 (17:51 +1100)]
[POWERPC] Add SPURR SPR to sysfs

Now we have a SPURR cpu feature bit, we can export it to userspace in
sysfs.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Add DSCR SPR to sysfs
Anton Blanchard [Fri, 8 Dec 2006 06:46:58 +0000 (17:46 +1100)]
[POWERPC] Add DSCR SPR to sysfs

POWER6 adds a new SPR, the data stream control register (DSCR). It can
be used to adjust how agressive the prefetch mechanisms are.

Its possible we may want to context switch this, but for now just export
it to userspace via sysfs so we can adjust it.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Fix 440SPe CPU table entry
Kumar Gala [Fri, 8 Dec 2006 08:34:38 +0000 (02:34 -0600)]
[POWERPC] Fix 440SPe CPU table entry

The 440SPe CPU table entry was missing the CPU_FTR_NODSISRALIGN and
really should have been CPU_FTRS_44X.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
18 years agoMerge branch '83xx' into for_paulus
Kumar Gala [Fri, 8 Dec 2006 08:44:40 +0000 (02:44 -0600)]
Merge branch '83xx' into for_paulus

18 years ago[POWERPC] Add support for FP emulation for the e300c2 core
Kim Phillips [Fri, 8 Dec 2006 08:43:30 +0000 (02:43 -0600)]
[POWERPC] Add support for FP emulation for the e300c2 core

The e300c2 has no FPU.  Its MSR[FP] is grounded to zero.  If an attempt
is made to execute a floating point instruction (including floating-point
load, store, or move instructions), the e300c2 takes a floating-point
unavailable interrupt.

This patch adds support for FP emulation on the e300c2 by declaring a
new CPU_FTR_FP_TAKES_FPUNAVAIL, where FP unavail interrupts are
intercepted and redirected to the ProgramCheck exception path for
correct emulation handling.

(If we run out of CPU_FTR bits we could look to reclaim this bit by adding
support to test the cpu_user_features for PPC_FEATURE_HAS_FPU instead)

It adds a nop to the exception path for 32-bit processors with a FPU.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
18 years ago[POWERPC] of_device_register: propagate device_create_file return code
Kumar Gala [Fri, 8 Dec 2006 08:23:07 +0000 (02:23 -0600)]
[POWERPC] of_device_register: propagate device_create_file return code

Removed compiler warning about ignoring the return code of device_create_file
in of_device_register.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
18 years ago[POWERPC] Fix mmap of PCI resource with hack for X
Benjamin Herrenschmidt [Fri, 8 Dec 2006 06:14:33 +0000 (17:14 +1100)]
[POWERPC] Fix mmap of PCI resource with hack for X

The powerpc version of pci_resource_to_user() and associated hooks
used by /proc/bus/pci and /sys/bus/pci mmap have been broken for some
time on machines that don't have a 1:1 mapping of devices (basically
on non-PowerMacs) and have PCI devices above 32 bits.

This attempts to fix it as well as possible.

The rule is supposed to be that pci_resource_to_user() always converts
the resources back into a BAR values since that's what the /proc
interface was supposed to deal with. However, for X to work on
platforms where PCI MMIO is not mapped 1:1, it became a habit of
platforms like powerpc to pass "fixed up" values there since X expects
to be able to use values from /proc/bus/pci/devices as offsets to mmap
of /dev/mem...

So we keep that contraption here, causing also /sys/*/resource to
expose fully absolute MMIO addresses instead of BAR values, which is
ugly, but should still work as long as those are only used to calculate
alignment within a page.

X is still broken when built 32 bits on machines where PCI MMIO can be
above 32-bit space unfortunately.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] iSeries: head_64.o needs to depend on lparmap.s
Stephen Rothwell [Fri, 8 Dec 2006 05:57:49 +0000 (16:57 +1100)]
[POWERPC] iSeries: head_64.o needs to depend on lparmap.s

This dependency was inadvertantly removed in a previous patch
(e73aedba562d1e7777287043afb8e46131ed402e).

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] cbe_thermal: Fix initialization of sysfs attribute_group
Christian Krafft [Thu, 7 Dec 2006 18:01:16 +0000 (19:01 +0100)]
[POWERPC] cbe_thermal: Fix initialization of sysfs attribute_group

This patch adds NULL to the initialization of the attribute_groups.
The spu_attributes and ppe_attributes arrays are arrays of pointers
that need to be terminated with a NULL entry.

Signed-off-by: Christian Krafft <krafft@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Remove QE header files from lite5200.c
Timur Tabi [Thu, 7 Dec 2006 17:07:32 +0000 (11:07 -0600)]
[POWERPC] Remove QE header files from lite5200.c

The MPC 5200 does not have a QUICCEngine (QE), so lite5200.c should not
include the QE header files.

Signed-off-by: Timur Tabi <timur@freescale.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] of_platform_make_bus_id(): make `magic' int
Geert Uytterhoeven [Thu, 7 Dec 2006 15:49:18 +0000 (16:49 +0100)]
[POWERPC] of_platform_make_bus_id(): make `magic' int

of_platform_make_bus_id(): Kill a compiler warning which is a real
bug on PPC64 by changing `magic' to `int'.

Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] maple: Use RTAS for reboot and halt
Nathan Lynch [Thu, 7 Dec 2006 00:50:46 +0000 (18:50 -0600)]
[POWERPC] maple: Use RTAS for reboot and halt

On maple, use the RTAS "system-reboot" and "power-off" methods if they
are available.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Add rtas_service_present() helper
Nathan Lynch [Thu, 7 Dec 2006 00:50:45 +0000 (18:50 -0600)]
[POWERPC] Add rtas_service_present() helper

To test for the existence of an RTAS function, we typically do:

   foo_token = rtas_token("foo");
   if (foo_token == RTAS_UNKNOWN_SERVICE)
      return;

Add a rtas_service_present method, which provides a more conventional
boolean interface for testing the existence of an RTAS method.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] maple: Select PPC_RTAS
Nathan Lynch [Thu, 7 Dec 2006 00:50:44 +0000 (18:50 -0600)]
[POWERPC] maple: Select PPC_RTAS

Some systems supported by the maple platform have RTAS; make PPC_MAPLE
select PPC_RTAS.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] maple: Match "pcie" name for CPC945
Nathan Lynch [Thu, 7 Dec 2006 00:50:43 +0000 (18:50 -0600)]
[POWERPC] maple: Match "pcie" name for CPC945

Some firmwares have "pcie" for the "name" property of the CPC945 PCI
Express host bridge.  Check for "pcie" in addition to "pci" so we
don't miss it.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] qe_ic: Do a sync when masking interrupts
Scott Wood [Wed, 6 Dec 2006 21:16:24 +0000 (15:16 -0600)]
[POWERPC] qe_ic: Do a sync when masking interrupts

This patch causes a sync do be done after masking a QE interrupt, to
ensure that the masking has completed before interrupts are enabled.
This allows the masking of the cascade IRQ to be removed without causing
spurious interrupts.

The mask_and_ack function is also removed and set to the mask function,
as the two are identical.

Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] EEH recovery tweaks
Linas Vepstas [Wed, 6 Dec 2006 18:32:20 +0000 (12:32 -0600)]
[POWERPC] EEH recovery tweaks

If one attempts to create a device driver recovery sequence that
does not depend on a hard reset of the device, but simply just
attempts to resume processing, then one discovers that the
recovery sequence implemented on powerpc is not quite right.
This patch fixes this up.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Delete unused irq functions on powerpc
Matthew Wilcox [Wed, 6 Dec 2006 05:15:05 +0000 (22:15 -0700)]
[POWERPC] Delete unused irq functions on powerpc

The ack_irq macro is unused and conflicts with James' work to template
the generic irq code.  mask_irq and unmask_irq are also unused, so delete
those macros too.

Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Define pci_unmap_addr() et al. when CONFIG_NOT_COHERENT_CACHE=y
Roland Dreier [Wed, 6 Dec 2006 23:15:38 +0000 (15:15 -0800)]
[POWERPC] Define pci_unmap_addr() et al. when CONFIG_NOT_COHERENT_CACHE=y

The current PowerPC code makes pci_unmap_addr(), pci_unmap_addr_set(),
and friends trivial for all 32-bit kernels.  This is reasonable, since
for those kernels it is true that pci_unmap_single() does not need the
DMA address from the original DMA mapping -- in fact, it is a NOP.

However, I recently tried the tg3 driver on a PowerPC 440SPe machine,
which runs a 32-bit kernel and has non-cache-coherent PCI DMA.  I
found that the tg3 driver crashed in pci_dma_sync_single_for_cpu(),
since for non-coherent systems, that function must invalidate the
cache for the DMA address range requested, and therefore it does use
the address passed in.  tg3 uses a DMA address it stashes away with
pci_unmap_addr_set() and retrieves with pci_unmap_addr().  Of course,
since pci_unmap_addr() is defined to (0) right now, this doesn't work.

It seems to me that the tg3 driver is using pci_unmap_addr() in a
legitimate way -- I wouldn't want to have to teach all drivers that
they should use pci_unmap_addr() if they only need the address for
unmapping functions, but if they want the pci_dma_sync functions, then
they have to store the DMA address without the helper macros.
The right fix therefore seems to be in the definition of the macros in
<asm/pci.h> -- we should use the trivial versions only for 32-bit
kernels for coherent systems, and the real versions for both 64-bit
kernels and non-coherent systems.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] powerpc: fix build error in rom.c
Geoff Levand [Tue, 5 Dec 2006 23:30:17 +0000 (15:30 -0800)]
[POWERPC] powerpc: fix build error in rom.c

Add missing include in rom.c.  Fixes this build error when CONFIG_MTD=y:

  arch/powerpc/sysdev/rom.c:26: error: implicit declaration of function
  of_platform_device_create

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] cell: Fix spu_info.h header export
Arnd Bergmann [Tue, 5 Dec 2006 22:30:16 +0000 (23:30 +0100)]
[POWERPC] cell: Fix spu_info.h header export

It uses #ifdef __KERNEL__, so needs to be processed with unifdef.

Signed-off-by: Arnd Bergann <arnd.bergmann@de.ibm.com>
Acked-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Cleanup pass over platforms/pseries/hotplug-cpu.c
Michael Ellerman [Tue, 5 Dec 2006 06:52:39 +0000 (17:52 +1100)]
[POWERPC] Cleanup pass over platforms/pseries/hotplug-cpu.c

Purely cosmetic.  Change pSeries to pseries inline with other parts of the
kernel, and fix an overly long line.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Only enable cpu hotplug via RTAS if the required firmware support is found
Michael Ellerman [Tue, 5 Dec 2006 06:52:38 +0000 (17:52 +1100)]
[POWERPC] Only enable cpu hotplug via RTAS if the required firmware support is found

To support cpu hotplug on pseries we require two RTAS tokens.  The cpu
hotplug machinery should only be wired up if these tokens are found in
the device tree.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Move the rest of the hotplug cpu code into platforms/pseries/hotplug-cpu.c
Michael Ellerman [Tue, 5 Dec 2006 06:52:38 +0000 (17:52 +1100)]
[POWERPC] Move the rest of the hotplug cpu code into platforms/pseries/hotplug-cpu.c

Move the rest of the hotplug cpu code from platforms/pseries/smp.c into
platforms/pseries/hotplug-cpu.c.

Wire up the smp_ops callbacks and the notifier in the hotplug cpu initcall,
rather than in smp_init_pseries().  No change in behaviour.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Move pSeries_mach_cpu_die() into platforms/pseries/hotplug-cpu.c
Michael Ellerman [Tue, 5 Dec 2006 06:52:37 +0000 (17:52 +1100)]
[POWERPC] Move pSeries_mach_cpu_die() into platforms/pseries/hotplug-cpu.c

Move pSeries_mach_cpu_die() into platforms/pseries/hotplug-cpu.c,
this allows rtas_stop_self() to be static so remove the prototype.

Wire up pSeries_mach_cpu_die() in the initcall, rather than statically
in setup.c, the initcall will still run prior to the cpu hotplug code
being callable, so there should be no change in behaviour.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Move rtas_stop_self() into platforms/pseries/hotplug-cpu.c
Michael Ellerman [Tue, 5 Dec 2006 06:52:36 +0000 (17:52 +1100)]
[POWERPC] Move rtas_stop_self() into platforms/pseries/hotplug-cpu.c

As the first step in consolidating the pseries hotplug cpu code,
create platforms/pseries/hotplug-cpu.c and move rtas_stop_self()
into it.  Do the rtas token initialisation in a new initcall, rather
than rtas_initialize().

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Acked-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Fix cell pmu initialisation
Stephen Rothwell [Tue, 5 Dec 2006 04:54:14 +0000 (15:54 +1100)]
[POWERPC] Fix cell pmu initialisation

Make sure that the pmu is not initialised unless we are running on a cell.
Also make the init routine static.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394...
Linus Torvalds [Fri, 8 Dec 2006 00:18:46 +0000 (16:18 -0800)]
Merge branch 'for-linus' of git://git./linux/kernel/git/ieee1394/linux1394-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: (55 commits)
  ieee1394: sbp2: code formatting around work_struct stuff
  ieee1394: nodemgr: remove a kcalloc
  ieee1394: conditionally export ieee1394_bus_type
  ieee1394: Consolidate driver registering
  ieee1394: sbp2: convert from PCI DMA to generic DMA
  ieee1394: nodemgr: spaces to tabs
  ieee1394: nodemgr: fix deadlock in shutdown
  ieee1394: nodemgr: remove duplicate assignment
  sbp2: make 1bit bitfield unsigned
  ieee1394: schedule *_oui sysfs attributes for removal
  ieee1394: schedule unused symbol exports for removal
  ieee1394: dv1394: schedule for feature removal
  ieee1394: raw1394: defer feature removal of old isoch interface
  ieee1394: ohci1394: call PMac code in shutdown only for proper machines
  ieee1394: ohci1394: reformat PPC_PMAC platform code
  ieee1394: ohci1394: add PPC_PMAC platform code to driver probe
  ieee1394: sbp2: wrap two functions into one
  ieee1394: sbp2: update comment on things to do
  ieee1394: sbp2: use list_move_tail()
  ieee1394: sbp2: more concise names for types and variables
  ...

18 years agoMerge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Thu, 7 Dec 2006 23:40:39 +0000 (15:40 -0800)]
Merge branch 'for-linus' of /home/rmk/linux-2.6-arm

* 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (76 commits)
  [ARM] 4002/1: S3C24XX: leave parent IRQs unmasked
  [ARM] 4001/1: S3C24XX: shorten reboot time
  [ARM] 3983/2: remove unused argument to __bug()
  [ARM] 4000/1: Osiris: add third serial port in
  [ARM] 3999/1: RX3715: suspend to RAM support
  [ARM] 3998/1: VR1000: LED platform devices
  [ARM] 3995/1: iop13xx: add iop13xx support
  [ARM] 3968/1: iop13xx: add iop13xx_defconfig
  [ARM] Update mach-types
  [ARM] Allow gcc to optimise arm_add_memory a little more
  [ARM] 3991/1: i.MX/MX1 high resolution time source
  [ARM] 3990/1: i.MX/MX1 more precise PLL decode
  [ARM] 3986/1: H1940: suspend to RAM support
  [ARM] 3985/1: ixp4xx clocksource cleanup
  [ARM] 3984/1: ixp4xx/nslu2: Fix disk LED numbering (take 2)
  [ARM] 3994/1: ixp23xx: fix handling of pci master aborts
  [ARM] 3981/1: sched_clock for PXA2xx
  [ARM] 3980/1: extend the ARM Versatile sched_clock implementation from 32 to 63 bit
  [ARM] 3979/1: extend the SA11x0 sched_clock implementation from 32 to 63 bit period
  [ARM] 3978/1: macro to provide a 63-bit value from a 32-bit hardware counter
  ...

18 years agoMerge branch 'release' of master.kernel.org:/pub/scm/linux/kernel/git/aegl/linux-2.6
Linus Torvalds [Thu, 7 Dec 2006 23:39:22 +0000 (15:39 -0800)]
Merge branch 'release' of /linux/kernel/git/aegl/linux-2.6

* 'release' of master.kernel.org:/pub/scm/linux/kernel/git/aegl/linux-2.6:
  [IA64] replace kmalloc+memset with kzalloc
  [IA64] resolve name clash by renaming is_available_memory()
  [IA64] Need export for csum_ipv6_magic
  [IA64] Fix DISCONTIGMEM without VIRTUAL_MEM_MAP
  [PATCH] Add support for type argument in PAL_GET_PSTATE
  [IA64] tidy up return value of ip_fast_csum
  [IA64] implement csum_ipv6_magic for ia64.
  [IA64] More Itanium PAL spec updates
  [IA64] Update processor_info features
  [IA64] Add se bit to Processor State Parameter structure
  [IA64] Add dp bit to cache and bus check structs
  [IA64] SN: Correctly update smp_affinty mask
  [IA64] sparse cleanups
  [IA64] IA64 Kexec/kdump

18 years ago[ARM] Merge individual ARM sub-trees
Russell King [Thu, 7 Dec 2006 23:07:26 +0000 (23:07 +0000)]
[ARM] Merge individual ARM sub-trees

Merge:
 Atmel AT91RM9200 and AT91SAM9260 changes
 General ARM developments
 Disconfiguous memory cleanups
 64-bit/32-bit division and sched_clock extension patches
 EP93xx support changes
 IOP support changes

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years agoMerge branch 'intx' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/misc-2.6
Linus Torvalds [Thu, 7 Dec 2006 23:04:20 +0000 (15:04 -0800)]
Merge branch 'intx' of /linux/kernel/git/jgarzik/misc-2.6

* 'intx' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/misc-2.6:
  PCI MSI: always toggle legacy-INTx-enable bit upon MSI entry/exit

18 years ago[ARM] 4002/1: S3C24XX: leave parent IRQs unmasked
Ben Dooks [Thu, 7 Dec 2006 22:59:05 +0000 (23:59 +0100)]
[ARM] 4002/1: S3C24XX: leave parent IRQs unmasked

Do not bother masking/unmasking the parent IRQ
for the mulitplexed EINT irqs, as masking the
leaf seems to be fine.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 4001/1: S3C24XX: shorten reboot time
Ben Dooks [Thu, 7 Dec 2006 22:53:21 +0000 (23:53 +0100)]
[ARM] 4001/1: S3C24XX: shorten reboot time

Cut down the time between requesting a reboot
and actually getting the reboot to happen by
a quarter.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years agoPCI MSI: always toggle legacy-INTx-enable bit upon MSI entry/exit
Jeff Garzik [Thu, 7 Dec 2006 22:56:06 +0000 (17:56 -0500)]
PCI MSI: always toggle legacy-INTx-enable bit upon MSI entry/exit

The current code (prior to this change) would disable the PCI INTx
legacy interrupt when enabling MSI... but only on PCI Express.  We
should do this for all MSI devices, for safety's sake.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[ARM] 3983/2: remove unused argument to __bug()
Nicolas Pitre [Thu, 7 Dec 2006 18:09:20 +0000 (19:09 +0100)]
[ARM] 3983/2: remove unused argument to __bug()

It appears that include/asm-arm/bug.h requires include/linux/stddef.h
for the definition of NULL. It seems that stddef.h was always included
indirectly in most cases, and that issue was properly fixed a while ago.

Then commit 5047f09b56d0bc3c21aec9cb16de60283da645c6 incorrectly reverted
change from commit ff10952a547dad934d9ed9afc5cf579ed1ccb53a (bad dwmw2)
and the problem recently resurfaced.

Because the third argument to __bug() is never used anyway, RMK suggested
getting rid of it entirely instead of readding #include <linux/stddef.h>
which this patch does.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 4000/1: Osiris: add third serial port in
Ben Dooks [Thu, 7 Dec 2006 19:49:01 +0000 (20:49 +0100)]
[ARM] 4000/1: Osiris: add third serial port in

Add the mapping for the third S3C2440 serial
port into the default serial devices for the
Osiris.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3999/1: RX3715: suspend to RAM support
Ben Dooks [Thu, 7 Dec 2006 19:47:58 +0000 (20:47 +0100)]
[ARM] 3999/1: RX3715: suspend to RAM support

The RX3715 is similar to the H1940 in the way
that suspend to RAM works, so we can use most
of the extant support for the H1940 with only
a few modifictions

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3998/1: VR1000: LED platform devices
Ben Dooks [Thu, 7 Dec 2006 19:28:23 +0000 (20:28 +0100)]
[ARM] 3998/1: VR1000: LED platform devices

Support for the GPIO attached LEDs on the VR1000

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years agoieee1394: sbp2: code formatting around work_struct stuff
Stefan Richter [Thu, 7 Dec 2006 22:23:25 +0000 (23:23 +0100)]
ieee1394: sbp2: code formatting around work_struct stuff

Merge is finished, can bring the code in readable style again.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: nodemgr: remove a kcalloc
Stefan Richter [Sat, 2 Dec 2006 21:23:34 +0000 (22:23 +0100)]
ieee1394: nodemgr: remove a kcalloc

Was I sleepwalking when I wrote this?

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: conditionally export ieee1394_bus_type
Stefan Richter [Fri, 24 Nov 2006 19:19:09 +0000 (20:19 +0100)]
ieee1394: conditionally export ieee1394_bus_type

Follow-up to patch "Consolidate driver registering":
Since I plan the lifetime of Linux 2.6.20 to be the deprecation phase
of CONFIG_IEEE1394_EXPORT_FULL_API, it seems fair to keep all previously
exported symbols available with this option until this phase is over.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: Consolidate driver registering
Ben Collins [Thu, 23 Nov 2006 18:59:48 +0000 (13:59 -0500)]
ieee1394: Consolidate driver registering

This patch consolidates some bookkeeping for driver registering. It
closely models what pci_register_driver() does. The main addition is
that the owner of the driver is set, so we get a proper symlink
for /sys/bus/ieee1394/driver/*/module.

Also moves setting of name and bus type into nodemgr. Because of this,
we can remove the EXPORT_SYMBOL for ieee1394_bus_type, since it's now
only used in ieee1394.ko.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: convert from PCI DMA to generic DMA
Stefan Richter [Wed, 22 Nov 2006 20:44:34 +0000 (21:44 +0100)]
ieee1394: sbp2: convert from PCI DMA to generic DMA

API conversion without change in functionality

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: nodemgr: spaces to tabs
Stefan Richter [Wed, 22 Nov 2006 20:28:19 +0000 (21:28 +0100)]
ieee1394: nodemgr: spaces to tabs

whitespace pedantry

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: nodemgr: fix deadlock in shutdown
Stefan Richter [Wed, 22 Nov 2006 20:09:42 +0000 (21:09 +0100)]
ieee1394: nodemgr: fix deadlock in shutdown

If "modprobe ohci1394" was quickly followed by "modprobe -r ohci1394",
say with 1 second pause in between, the modprobe -r got stuck in
uninterruptible sleep in kthread_stop.  At the same time the knodemgrd
slept uninterruptibly in bus_rescan_devices_helper.  That's because
driver_detach took the semaphore of the PCI device and
bus_rescan_devices_helper wanted to take the semaphore of the FireWire
host device's parent, which is the same semaphore. This was a regression
since Linux 2.6.16, commit bf74ad5bc41727d5f2f1c6bedb2c1fac394de731,
"Hold the device's parent's lock during probe and remove".

The fix (or workaround) adds a dummy driver to the hpsb_host device. Now
bus_rescan_devices_helper won't scan the host device anymore.  This
doesn't hurt since we have no drivers which will bind to these devices
and it is unlikely that there will ever be such a driver.  The dummy
driver is befittingly presented as a representation of ieee1394 itself.

Fixes: http://bugzilla.kernel.org/show_bug.cgi?id=6706

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: nodemgr: remove duplicate assignment
Stefan Richter [Sat, 18 Nov 2006 22:16:11 +0000 (23:16 +0100)]
ieee1394: nodemgr: remove duplicate assignment

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agosbp2: make 1bit bitfield unsigned
Luca Tettamanti [Wed, 15 Nov 2006 18:14:15 +0000 (19:14 +0100)]
sbp2: make 1bit bitfield unsigned

A signed single-bit bitfield doesn't make much sense. Make it unsigned.

Signed-off-by: Luca Tettamanti <kronos.it@gmail.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: schedule *_oui sysfs attributes for removal
Stefan Richter [Sun, 19 Nov 2006 22:04:31 +0000 (23:04 +0100)]
ieee1394: schedule *_oui sysfs attributes for removal

There is no manpower available to reform oui.db into a library for use
in more kernel subsystems.  The low ratio of usefulness to size and the
occasional need to update oui.db from IEEE's official list suggest to
drop oui.db.  I plan to make a userspace script available which
translates the remaining numeric sysfs attributes to names of
organizations.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: schedule unused symbol exports for removal
Stefan Richter [Sun, 19 Nov 2006 22:03:09 +0000 (23:03 +0100)]
ieee1394: schedule unused symbol exports for removal

This also means that former parts of ieee1394's API will be subject to
change or removal.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: dv1394: schedule for feature removal
Stefan Richter [Sun, 19 Nov 2006 23:07:26 +0000 (00:07 +0100)]
ieee1394: dv1394: schedule for feature removal

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: raw1394: defer feature removal of old isoch interface
Stefan Richter [Sun, 19 Nov 2006 23:05:05 +0000 (00:05 +0100)]
ieee1394: raw1394: defer feature removal of old isoch interface

Known to be affected:
 - libdc1394: prefers video1394 for now, old-style raw1394 support might
   be dropped eventually
 - OpenH323 PWLib, AVC video input module: uses libraw1394's old API

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: ohci1394: call PMac code in shutdown only for proper machines
Stefan Richter [Fri, 10 Nov 2006 23:26:24 +0000 (00:26 +0100)]
ieee1394: ohci1394: call PMac code in shutdown only for proper machines

There has been an if(...) missing, for ages.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: ohci1394: reformat PPC_PMAC platform code
Stefan Richter [Fri, 10 Nov 2006 23:23:50 +0000 (00:23 +0100)]
ieee1394: ohci1394: reformat PPC_PMAC platform code

Adjust whitespace and line lengths

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: ohci1394: add PPC_PMAC platform code to driver probe
Stefan Richter [Fri, 10 Nov 2006 23:22:35 +0000 (00:22 +0100)]
ieee1394: ohci1394: add PPC_PMAC platform code to driver probe

Fixes http://bugzilla.kernel.org/show_bug.cgi?id=7431
iBook G3 threw a machine check exception and put the display backlight
to full brightness after ohci1394 was unloaded and reloaded.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: wrap two functions into one
Stefan Richter [Sat, 4 Nov 2006 08:55:33 +0000 (09:55 +0100)]
ieee1394: sbp2: wrap two functions into one

Move the body of a function into its only caller.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: update comment on things to do
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: update comment on things to do

Some people actually look at those comments.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: use list_move_tail()
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: use list_move_tail()

It's OK to reorder list_del() and sbp2util_free_command_dma() here.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: more concise names for types and variables
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: more concise names for types and variables

"struct scsi_id_instance_data" represents a logical unit.
Rename it to "struct sbp2_lu", and "scsi_id" to "lu".
Rename some other variables too.
Wrap almost all lines after at most 80 columns.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: remove unused struct members
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: remove unused struct members

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: proper unit in module parameter description
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: proper unit in module parameter description

It's 2^20 bit/s, not 0.001 bit.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: clean up sbp2_ namespace
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: clean up sbp2_ namespace

Prepend sbp2*_ to anything globally defined in sbp2.c except for some
macros.  Strip sbp2_ from names of struct members.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: some conditions in queue_command are unlikely
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: some conditions in queue_command are unlikely

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years ago[IA64] replace kmalloc+memset with kzalloc
Yan Burman [Mon, 4 Dec 2006 22:58:35 +0000 (14:58 -0800)]
[IA64] replace kmalloc+memset with kzalloc

Replace kmalloc+memset with kzalloc

Signed-off-by: Yan Burman <burman.yan@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64] resolve name clash by renaming is_available_memory()
Christoph Lameter [Mon, 4 Dec 2006 22:58:35 +0000 (14:58 -0800)]
[IA64] resolve name clash by renaming is_available_memory()

There is a name clash with ia64 arch code in Andrew's tree. Rename
is_avialable_memory() to is_memory_available() to avoid the clash.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years agoieee1394: sbp2: remove superfluous comments
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: remove superfluous comments

And update and reformat remaining comments.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: delayed_work -> work_struct
Stefan Richter [Thu, 7 Dec 2006 21:40:33 +0000 (22:40 +0100)]
ieee1394: sbp2: delayed_work -> work_struct

This work is not delayed.

Also bring the code format in a state which reduces my work to merge
pending sbp2 patchs.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoMerge branch 'master' of /home/trondmy/kernel/linux-2.6/ into merge_linus
Trond Myklebust [Thu, 7 Dec 2006 21:35:17 +0000 (16:35 -0500)]
Merge branch 'master' of /home/trondmy/kernel/linux-2.6/ into merge_linus

18 years ago[IA64] Need export for csum_ipv6_magic
Tony Luck [Thu, 7 Dec 2006 21:18:57 +0000 (13:18 -0800)]
[IA64] Need export for csum_ipv6_magic

Now we have our own highly optimized assembly code version of
this routine (Thanks Ken!) we should export it so that it can
be used.

Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years agoMerge branch 'master' of /home/trondmy/kernel/linux-2.6/ into merge_linus
Trond Myklebust [Thu, 7 Dec 2006 20:48:15 +0000 (15:48 -0500)]
Merge branch 'master' of /home/trondmy/kernel/linux-2.6/ into merge_linus

Conflicts:

include/linux/sunrpc/xprt.h
net/sunrpc/xprtsock.c
Fix up conflicts with the workqueue changes.

18 years agoieee1394: sbp2: coding style of some macros
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: coding style of some macros

Adjust parentheses, indentation, line lengths.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: remove debug macros
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: remove debug macros

No need to keep them in released sources.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: consolidate log levels
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: consolidate log levels

Replace some calls to SBP2_ERR and SBP2_WARN by SBP2_INFO.
Remove logging macros SBP2_NOTICE and SBP2_WARN.
Remove direct usage of HPSB_ logging macros.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: remove duplicate code
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: remove duplicate code

The same case is handled further below in sbp2scsi_complete_command.
Note, the second version behaves slightly different but looks
preferable.  It's an extremely unlikely case by the way.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: remove dead code
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: remove dead code

This has been within #if 0 for a long time and is wrong anyway.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: clean up function declarations
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: clean up function declarations

Remove unnecessary function prototypes.
Remove variable names from function prototypes.
Move declarations from sbp2.h to sbp2.c.
Move definitions of driver templates together near the top of sbp2.c.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: sbp2: remove irritating log message
Stefan Richter [Thu, 2 Nov 2006 20:16:08 +0000 (21:16 +0100)]
ieee1394: sbp2: remove irritating log message

The queue depth can be read from /sys/bus/scsi/devices/*/queue_depth,
so don't log it.  And the hint about speed improvements is misleading,
at least under current kernels.  If serialization is switched off, read
performance is typically increased by less than 10%.  (I did not test
write performance recently.)  On the other hand, serialize_io=0 is not
yet safe due to some implementation issues that are not trivial to fix.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoohci1394: shortcut irq printing
Alexey Dobriyan [Mon, 30 Oct 2006 12:51:52 +0000 (15:51 +0300)]
ohci1394: shortcut irq printing

To print irq number no need to transform to string using %d, then print
using %s. Just use %d.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
18 years agoieee1394: nodemgr: take it easy if bus_rescan_devices fails
Stefan Richter [Sun, 29 Oct 2006 22:09:11 +0000 (23:09 +0100)]
ieee1394: nodemgr: take it easy if bus_rescan_devices fails

This happens.  No need to log a BUG trace.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agodrivers/ieee1394/*: use kmemdup()
Eric Sesterhenn [Sun, 29 Oct 2006 20:13:40 +0000 (23:13 +0300)]
drivers/ieee1394/*: use kmemdup()

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: ohci1394: proper log messages in suspend and resume
Stefan Richter [Sun, 29 Oct 2006 18:58:25 +0000 (19:58 +0100)]
ieee1394: ohci1394: proper log messages in suspend and resume

 - correct thinko in one of my last commits: cannot use PRINT macro with
   ohci == NULL
 - add log messages on ohci == NULL and on pci_enable_device != 0
 - update log macros from patch "revert fail on error in suspend" to use
   PRINT and DBGMSG where possible

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: ohci1394: revert fail on error in suspend
Stefan Richter [Sun, 29 Oct 2006 18:52:49 +0000 (19:52 +0100)]
ieee1394: ohci1394: revert fail on error in suspend

Some errors during preparation for suspended state can be skipped with a
warning instead of a failure of the whole suspend transition, notably an
error in pci_set_power_state.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: only build OUI database files if config enabled
Randy Dunlap [Tue, 24 Oct 2006 18:19:11 +0000 (11:19 -0700)]
ieee1394: only build OUI database files if config enabled

Only build IEEE1394 OUI database files if the config option is enabled.

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: fix printk format warning
Randy Dunlap [Tue, 24 Oct 2006 04:44:36 +0000 (21:44 -0700)]
ieee1394: fix printk format warning

Fix printk format warning:
drivers/ieee1394/nodemgr.c:364: warning: long long unsigned int format, u64 arg (arg 3)

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: nodemgr: revise semaphore protection of driver core data
Stefan Richter [Sun, 22 Oct 2006 14:16:27 +0000 (16:16 +0200)]
ieee1394: nodemgr: revise semaphore protection of driver core data

 - The list "struct class.children" is supposed to be protected by
   class.sem, not by class.subsys.rwsem.

 - nodemgr_remove_uds() iterated over nodemgr_ud_class.children without
   proper protection.  This was never observed as a bug since the code
   is usually only accessed by knodemgrd.  All knodemgrds are currently
   globally serialized.  But userspace can trigger this code too by
   writing to /sys/bus/ieee1394/destroy_node.

 - Clean up access to the FireWire bus type's subsys.rwsem:  Access it
   uniformly via ieee1394_bus_type.  Shrink rwsem protected regions
   where possible.  Expand them where necessary.  The latter wasn't a
   problem so far because knodemgr is globally serialized.

This should harden the interaction of ieee1394 with sysfs and lay ground
for deserialized operation of multiple knodemgrds and for implementation
of subthreads for parallelized scanning and probing.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: nodemgr: reflect which return values are errors
Stefan Richter [Fri, 20 Oct 2006 23:23:56 +0000 (01:23 +0200)]
ieee1394: nodemgr: reflect which return values are errors

Give better names to local variables.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agoieee1394: nodemgr: small fix after sysfs errors patch
Stefan Richter [Fri, 20 Oct 2006 23:22:36 +0000 (01:22 +0200)]
ieee1394: nodemgr: small fix after sysfs errors patch

One hunk in "ieee1394: handle sysfs errors" was wrong.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
18 years agodv1394: remove BKL contention
Stefan Richter [Fri, 20 Oct 2006 19:01:58 +0000 (21:01 +0200)]
dv1394: remove BKL contention

Purges the one remaining call to lock_kernel() from the 1394 subsystem.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>