summaryrefslogtreecommitdiff
path: root/drivers/isdn/hisax
AgeCommit message (Collapse)AuthorFilesLines
2009-08-13Merge branch 'master' of ↵David S. Miller1-1/+0
master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: arch/microblaze/include/asm/socket.h
2009-07-25ISDN: ARRAY_SIZE changesKarsten Keil9-83/+41
These changes were a direct result of using a semantic patch More information can be found at http://www.emn.fr/x-info/coccinelle/ Modified some of the changes to avoid the extra define. Signed-off-by: Stoyan Gaydarov <sgayda2@uiuc.edu> Signed-off-by: Karsten Keil <keil@b1-systems.de>
2009-07-25drivers/isdn: Drop unnecessary NULL testJulia Lawall6-12/+0
The result of container_of should not be NULL. In particular, in this case the argument to the enclosing function has passed though INIT_WORK, which dereferences it, implying that its container cannot be NULL. A simplified version of the semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ identifier fn,work,x,fld; type T; expression E1,E2; statement S; @@ static fn(struct work_struct *work) { ... when != work = E1 x = container_of(work,T,fld) ... when != x = E2 - if (x == NULL) S ... } // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Karsten Keil <keil@b1-systems.de>
2009-07-25ISDN: Add support for none reverse bitstreams to isdnhdcKarsten Keil3-6/+12
The original isdnhdlc code was developed for devices which had reversed bitorder in the byte stream. Adding code to handle normal bitstreams as well. Signed-off-by: Karsten Keil <keil@b1-systems.de>
2009-07-25ISDN: Make isdnhdlc usable for other ISDN driversKarsten Keil5-683/+2
isdnhdlc is useful for other ISDN drivers as well. Move the include file to a central location and the source to the central isdn location. Signed-off-by: Karsten Keil <keil@b1-systems.de>
2009-07-12headers: smp_lock.h reduxAlexey Dobriyan1-1/+0
* Remove smp_lock.h from files which don't need it (including some headers!) * Add smp_lock.h to files which do need it * Make smp_lock.h include conditional in hardirq.h It's needed only for one kernel_locked() usage which is under CONFIG_PREEMPT This will make hardirq.h inclusion cheaper for every PREEMPT=n config (which includes allmodconfig/allyesconfig, BTW) Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-06-11ISDN:Fix DMA alloc for hfcpciKarsten Keil2-12/+31
Replace wrong code with correct DMA API functions. Signed-off-by: Karsten Keil <keil@b1-systems.de>
2009-04-17USB: add reset endpoint operationsDavid Vrabel1-8/+1
Wireless USB endpoint state has a sequence number and a current window and not just a single toggle bit. So allow HCDs to provide a endpoint_reset method and call this or clear the software toggles as required (after a clear halt, set configuration etc.). usb_settoggle() and friends are then HCD internal and are moved into core/hcd.h and all device drivers call usb_reset_endpoint() instead. If the device endpoint state has been reset (with a clear halt) but the host endpoint state has not then subsequent data transfers will not complete. The device will only work again after it is reset or disconnected. Signed-off-by: David Vrabel <david.vrabel@csr.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-02-27drivers/isdn/hisax: fix sparse warning: Should it be static?Hannes Eder8-16/+11
Impact: Move declarations to a header file. Fix this sparse warning: drivers/isdn/hisax/callc.c:24:12: warning: symbol 'lli_revision' was not declared. Should it be static? drivers/isdn/hisax/config.c:84:12: warning: symbol 'CardType' was not declared. Should it be static? drivers/isdn/hisax/config.c:362:5: warning: symbol 'nrcards' was not declared. Should it be static? drivers/isdn/hisax/isdnl1.c:21:12: warning: symbol 'l1_revision' was not declared. Should it be static? drivers/isdn/hisax/isdnl2.c:22:12: warning: symbol 'l2_revision' was not declared. Should it be static? drivers/isdn/hisax/isdnl3.c:22:12: warning: symbol 'l3_revision' was not declared. Should it be static? drivers/isdn/hisax/tei.c:23:12: warning: symbol 'tei_revision' was not declared. Should it be static? Signed-off-by: Hannes Eder <hannes@hanneseder.net> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-11-30tricky one: hisax sectionsAl Viro1-3/+13
a) hisax_init_pcmcia() needs to be defined only if we have CONFIG_HOTPLUG (no PCMCIA support otherwise) and can be declared __devinit. b) HiSax_inithardware() can go __init c) hisax_register() is passing to checkcard() full-blown hisax_cs_setup_card(): checkcard(i, id, NULL, hisax_d_if->owner, hisax_cs_setup_card); The problem with it is that * hisax_cs_setup_card() is __devinit * hisax_register() is not * hisax_cs_setup_card() is a switch from hell, calling a lot of setup_some_weirdcard() depending on card->typ. _These_ are also __devinit. However, in hisax_register() we have card->typ equal to ISDN_CTYPE_DYNAMIC, which reduces hisax_cs_setup_card() to "nevermind all that crap, just do nothing and return 2". So we add a trimmed-down callback doing just that and passed to checkcard() by hisax_register(). _This_ is non-init (we can stand the impact on .text size). Voila - no section warnings from drivers/isdn Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-08-23pcmcia: deprecate CS_SUCCESSDominik Brodowski3-8/+8
Instead of using own error or success codes, the PCMCIA code should rely on the generic return values. Therefore, replace all occurrences of CS_SUCCESS with 0. CC: netdev@vger.kernel.org Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2008-08-23pcmcia: pcmcia_config_loop() improvement by passing vccDominik Brodowski4-26/+19
By passing the current Vcc setting to the pcmcia_config_loop callback function, we can remove pcmcia_get_configuration_info() calls from many drivers. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2008-08-23pcmcia: pcmcia_config_loop() default CIS entry handlingDominik Brodowski4-15/+18
Many drivers use the default CIS entry within their pcmcia_config_loop() callback function. Therefore, factor the default CIS entry handling out. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2008-08-23pcmcia: pcmcia_config_loop() ConfigIndex unificationDominik Brodowski4-6/+0
Almost all drivers set p_dev->conf.ConfigIndex to cfg->index in the pcmcia_config_loop() callback function. Therefore, factor it out. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2008-08-23pcmcia: use pcmcia_loop_config in ISDN pcmcia driversDominik Brodowski4-262/+168
Use the config loop helper in ISDN pcmcia drivers. CC: Karsten Keil <kkeil@suse.de> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2008-07-26pnp: fix the fcpnp_driver declaration to only exist if CONFIG_PNP=yDavid Howells1-2/+0
Fix the fcpnp_driver declaration to only exist if CONFIG_PNP=y as it's only accessed in that case. The PNP=n variant was added by 30d55e71a81b1f5a8136f191dc9f4c21f18e77e6 ("hisax: depend on CONFIG_PNP, not __ISAPNP__") Fixes an unused variable warning. Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-07-25Rename WARN() to WARNING() to clear the namespaceArjan van de Ven4-16/+16
We want to use WARN() as a variant of WARN_ON(), however a few drivers are using WARN() internally. This patch renames these to WARNING() to avoid the namespace clash. A few cases were defining but not using the thing, for those cases I just deleted the definition. Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Acked-by: Greg KH <greg@kroah.com> Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-04-28hisax: depend on CONFIG_PNP, not __ISAPNP__Bjorn Helgaas1-4/+6
The PNP driver interfaces depend on CONFIG_PNP, so test that rather than __ISAPNP__. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-04-28isdn: fix obvious cut-and-paste error in st5481_usb.cRobert P. J. Day1-1/+1
Fix a rather obvious cut-and-paste error, where earlier code for the controller URB got somehow mixed in with code for the interrupt URB. Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-04-28isdn: replace remaining __FUNCTION__ occurrencesHarvey Harrison14-22/+22
__FUNCTION__ is gcc-specific, use __func__ Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-04-22Merge branch 'irq-cleanups-upstream' of ↵Linus Torvalds3-5/+5
git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/misc-2.6 * 'irq-cleanups-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/misc-2.6: [ISDN] minor irq handler cleanups drivers/char: minor irq handler cleanups [PPC] minor irq handler cleanups [BLACKFIN] minor irq handler cleanups [SPARC] minor irq handler cleanups ARM minor irq handler cleanup: avoid passing unused info to irq
2008-04-21[ISDN] minor irq handler cleanupsJeff Garzik3-5/+5
- reference irq number in CardState structure - remove now-unused 'intno' argument from rs_interrupt_elsa() - cs->irq_func() should be defined using standard irq_handler_t - add KERN_DEBUG to printk() where appropriate Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2008-04-21[ISDN] Hisax: eliminate many unnecessary references to CardType[]Jeff Garzik20-120/+70
For the vast majority of CardType[card->typ] uses (but not all!), the string is constant for each driver. Therefore, we may replace CardType[card->typ] with the actual string describing the driver, making each printk() a bit more simple. This also has the nice, intended side effect of greatly reducing external references to hisax global CardType[]. This will be of value once the ISDN drivers are converted to the ISA/PCI/PNP hotplug APIs. Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2008-04-21[ISDN] HiSax: modularization prepJeff Garzik2-5/+11
Pass a function pointer into the core HiSax probe function checkcard(), in order to facilitate modular drivers passing in their own setup routines. Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2008-03-05hisax_fcpcipnp: move request_irq later in probeKyle McMartin1-17/+17
After a quick glance at the code, we're getting the DEBUG_SHIRQ spurious interrupt before we have the adapter template filled in. Real interrupts appear to be turned on by fcpci*_init(), so move request_irq until just before that. Signed-off-by: Kyle McMartin <kmcmartin@redhat.com> Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-02-10isdn: fix section mismatch warning for ISACVerSam Ravnborg2-4/+2
Fix following warnings: WARNING: drivers/isdn/hisax/built-in.o(.text+0x19723): Section mismatch in reference from the function ISACVersion() to the variable .devinit.data:ISACVer WARNING: drivers/isdn/hisax/built-in.o(.text+0x2005b): Section mismatch in reference from the function setup_avm_a1_pcmcia() to the function .devinit.text:setup_isac() ISACVer were only used from function annotated __devinit so add same annotation to ISACVer. One af the fererencing functions missed __devinit so add it and kill an additional warning. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Karsten Keil <kkeil@suse.de> Cc: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-02-10isdn: fix section mismatch warnings from hisax_cs_setup_cardSam Ravnborg1-2/+5
Fix the following warnings: WARNING: drivers/isdn/hisax/built-in.o(.text+0x722): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_teles3() WARNING: drivers/isdn/hisax/built-in.o(.text+0x72c): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_s0box() WARNING: drivers/isdn/hisax/built-in.o(.text+0x736): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_telespci() WARNING: drivers/isdn/hisax/built-in.o(.text+0x747): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_avm_pcipnp() WARNING: drivers/isdn/hisax/built-in.o(.text+0x74e): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_elsa() WARNING: drivers/isdn/hisax/built-in.o(.text+0x755): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_diva() WARNING: drivers/isdn/hisax/built-in.o(.text+0x75c): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_sedlbauer() WARNING: drivers/isdn/hisax/built-in.o(.text+0x763): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_netjet_s() WARNING: drivers/isdn/hisax/built-in.o(.text+0x76a): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_hfcpci() WARNING: drivers/isdn/hisax/built-in.o(.text+0x771): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_hfcsx() WARNING: drivers/isdn/hisax/built-in.o(.text+0x778): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_niccy() WARNING: drivers/isdn/hisax/built-in.o(.text+0x77f): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_bkm_a4t() WARNING: drivers/isdn/hisax/built-in.o(.text+0x786): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_sct_quadro() WARNING: drivers/isdn/hisax/built-in.o(.text+0x78d): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_gazel() WARNING: drivers/isdn/hisax/built-in.o(.text+0x794): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_w6692() WARNING: drivers/isdn/hisax/built-in.o(.text+0x79b): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_netjet_u() WARNING: drivers/isdn/hisax/built-in.o(.text+0x7a2): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_enternow_pci() checkcard() are the only user of hisax_cs_setup_card(). And checkcard is only used during init or when hot plugging ISDN devices. So annotate hisax_cs_setup_card() with __devinit. checkcard() is used by exported functions so it cannot be annotated __devinit. Annotate it with __ref so modpost ignore references to _devinit section. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Karsten Keil <kkeil@suse.de> Cc: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-02-10isdn: fix section mismatch warnings in isac.c and isar.cSam Ravnborg2-6/+3
Fix the following warnings: WARNING: drivers/isdn/hisax/built-in.o(.text+0x1b276): Section mismatch in reference from the function inithscxisac() to the function .devinit.text:clear_pending_isac_ints() WARNING: drivers/isdn/hisax/built-in.o(.text+0x1b286): Section mismatch in reference from the function inithscxisac() to the function .devinit.text:initisac() WARNING: drivers/isdn/hisax/built-in.o(.text+0x1fec7): Section mismatch in reference from the function AVM_card_msg() to the function .devinit.text:clear_pending_isac_ints() WARNING: drivers/isdn/hisax/built-in.o(.text+0x21669): Section mismatch in reference from the function AVM_card_msg() to the function .devinit.text:clear_pending_isac_ints() WARNING: drivers/isdn/hisax/built-in.o(.text+0x21671): Section mismatch in reference from the function AVM_card_msg() to the function .devinit.text:initisac() WARNING: drivers/isdn/hisax/built-in.o(.text+0x2991e): Section mismatch in reference from the function Sedl_card_msg() to the function .devinit.text:clear_pending_isac_ints() WARNING: drivers/isdn/hisax/built-in.o(.text+0x29936): Section mismatch in reference from the function Sedl_card_msg() to the function .devinit.text:initisac() WARNING: drivers/isdn/hisax/built-in.o(.text+0x2993e): Section mismatch in reference from the function Sedl_card_msg() to the function .devinit.text:initisar() WARNING: drivers/isdn/hisax/built-in.o(.text+0x2e026): Section mismatch in reference from the function NETjet_S_card_msg() to the function .devinit.text:clear_pending_isac_ints() WARNING: drivers/isdn/hisax/built-in.o(.text+0x2e02e): Section mismatch in reference from the function NETjet_S_card_msg() to the function .devinit.text:initisac() WARNING: drivers/isdn/hisax/built-in.o(.text+0x37813): Section mismatch in reference from the function BKM_card_msg() to the function .devinit.text:clear_pending_isac_ints() WARNING: drivers/isdn/hisax/built-in.o(.text+0x37823): Section mismatch in reference from the function BKM_card_msg() to the function .devinit.text:initisac() initisar(), initisac() and clear_pending_isac_ints() were all used via a cardmsg fnction - which may be called ouside __devinit context. So remove the bogus __devinit annotation of the above three functions to fix the warnings. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Karsten Keil <kkeil@suse.de> Cc: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-02-10isdn: fix section mismatch warning in hfc_sx.cSam Ravnborg1-2/+1
Fix the following warning: WARNING: drivers/isdn/hisax/built-in.o(.text+0x35818): Section mismatch in reference from the function hfcsx_card_msg() to the function .devinit.text:inithfcsx() hfcsx_card_msg() may be called outside __devinit context. Following the program logic is looks like the CARD_INIT branch will only be taken under __devinit context but to be consistent remove the __devinit annotation of inithfcsx() so we do not mix non-__devinit and __devinit code. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Karsten Keil <kkeil@suse.de> Cc: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-02-08[ISDN]: fix section mismatch warning in enpci_card_msgSam Ravnborg1-2/+1
Fix following warnings: WARNING: drivers/isdn/hisax/built-in.o(.text+0x3cf50): Section mismatch in reference from the function enpci_card_msg() to the function .devinit.text:Amd7930_init() WARNING: drivers/isdn/hisax/built-in.o(.text+0x3cf85): Section mismatch in reference from the function enpci_card_msg() to the function .devinit.text:Amd7930_init() enpci_card_msg() can be called outside __devinit context referenced function should not be annotated __devinit. Remove annotation of Amd7930_init to fix this. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-02-06cleanup after APUS removalAdrian Bunk1-8/+0
After the APUS removal, some code can be removed. Signed-off-by: Adrian Bunk <bunk@kernel.org> Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> Cc: Karsten Keil <kkeil@suse.de> Cc: James Bottomley <James.Bottomley@steeleye.com> Cc: "Antonino A. Daplas" <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-11-29isdn: bootup crash fixIngo Molnar1-2/+1
got this HiSax bootup crash on a "make randconfig" bzImage bootup: Calling initcall 0xc0bb1320: HiSax_init+0x0/0x380() HiSax: Linux Driver for passive ISDN cards HiSax: Version 3.5 (kernel) HiSax: Layer1 Revision 2.46.2.5 HiSax: Layer2 Revision 2.30.2.4 HiSax: TeiMgr Revision 2.20.2.3 HiSax: Layer3 Revision 2.22.2.3 HiSax: LinkLayer Revision 2.59.2.4 HiSax: Total 1 card defined HiSax: Card 1 Protocol EDSS1 Id=HiSax (0) HiSax: HFC-S driver Rev. 1.10.2.4 HFCS: defined at 0x500 IRQ 5 HZ 250 Teles 16.3c: IRQ 5 count 0 HFCS: resetting card Teles 16.3c: IRQ 5 count 0 Teles 16.3c: IRQ(5) getting no interrupts during init 1 HFCS: resetting card ------------[ cut here ]------------ kernel BUG at include/linux/timer.h:145! invalid opcode: 0000 [#1] PREEMPT DEBUG_PAGEALLOC Modules linked in: Pid: 1, comm: swapper Not tainted (2.6.24-rc3 #2045) EIP: 0060:[<c063afbf>] EFLAGS: 00010286 CPU: 0 EIP is at hfcs_card_msg+0x15f/0x180 EAX: c0cf2e5c EBX: 000000f2 ECX: 00000000 EDX: ffff1193 ESI: f76e8000 EDI: f76e8000 EBP: f7c23ec4 ESP: f7c23eac DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068 Process swapper (pid: 1, ti=f7c22000 task=f7c0e000 task.ti=f7c22000) Stack: 00000000 f7c23ec4 c011703b 00000002 f76e8000 00000000 f7c23ef8 c060c3e5 c0a7c9c0 c0a315dc 00000005 00000001 00000000 f7c23f34 00000000 c0b5c9c0 f7c23f34 00000000 c0f5a8e0 f7c23f80 c0bb154f 00000000 00000001 c0a9b5b9 Call Trace: [<c010339a>] show_trace_log_lvl+0x1a/0x40 [<c0103469>] show_stack_log_lvl+0xa9/0xe0 [<c010355f>] show_registers+0xbf/0x200 [<c01037a4>] die+0x104/0x220 [<c0103943>] do_trap+0x83/0xc0 [<c0103ca8>] do_invalid_op+0x88/0xa0 [<c083621a>] error_code+0x6a/0x70 [<c060c3e5>] checkcard+0x4a5/0x620 [<c0bb154f>] HiSax_init+0x22f/0x380 [<c0b867b7>] kernel_init+0x97/0x2a0 [<c0102f87>] kernel_thread_helper+0x7/0x20 ======================= Code: e8 43 ae ff 8b 57 3c 85 d2 0f 84 ef fe ff ff b8 a0 99 ad c0 b9 02 00 00 00 e8 ce 11 ae ff 83 c4 0c b8 00 00 00 00 5b 5e 5f c9 c3 <0f> 0b eb fe 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 EIP: [<c063afbf>] hfcs_card_msg+0x15f/0x180 SS:ESP 0068:f7c23eac Kernel panic - not syncing: Attempted to kill init! The box has no HiSax card installed. the reason for the crash is add_timer() done on an already running timer. This happens because for some reason CARD_INIT is called twice. this patch works this problem around by using mod_timer() - this gets a booting system - but it would be nice to figure out why CARD_INIT is done twice. the ISDN config section (generated via make randconfig) is this: # # ISDN feature submodules # # CONFIG_ISDN_DRV_LOOP is not set CONFIG_ISDN_DIVERSION=y # # ISDN4Linux hardware drivers # # # Passive cards # CONFIG_ISDN_DRV_HISAX=y # # D-channel protocol features # CONFIG_HISAX_EURO=y CONFIG_DE_AOC=y # CONFIG_HISAX_NO_SENDCOMPLETE is not set # CONFIG_HISAX_NO_LLC is not set # CONFIG_HISAX_NO_KEYPAD is not set CONFIG_HISAX_1TR6=y CONFIG_HISAX_NI1=y CONFIG_HISAX_MAX_CARDS=8 # # HiSax supported cards # CONFIG_HISAX_16_0=y # CONFIG_HISAX_16_3 is not set # CONFIG_HISAX_TELESPCI is not set CONFIG_HISAX_S0BOX=y # CONFIG_HISAX_AVM_A1 is not set CONFIG_HISAX_FRITZPCI=y CONFIG_HISAX_AVM_A1_PCMCIA=y CONFIG_HISAX_ELSA=y CONFIG_HISAX_IX1MICROR2=y CONFIG_HISAX_DIEHLDIVA=y # CONFIG_HISAX_ASUSCOM is not set # CONFIG_HISAX_TELEINT is not set CONFIG_HISAX_HFCS=y # CONFIG_HISAX_SEDLBAUER is not set CONFIG_HISAX_SPORTSTER=y # CONFIG_HISAX_MIC is not set # CONFIG_HISAX_NETJET is not set # CONFIG_HISAX_NETJET_U is not set # CONFIG_HISAX_NICCY is not set # CONFIG_HISAX_ISURF is not set # CONFIG_HISAX_HSTSAPHIR is not set # CONFIG_HISAX_BKM_A4T is not set # CONFIG_HISAX_SCT_QUADRO is not set # CONFIG_HISAX_GAZEL is not set # CONFIG_HISAX_HFC_PCI is not set # CONFIG_HISAX_W6692 is not set # CONFIG_HISAX_HFC_SX is not set # CONFIG_HISAX_DEBUG is not set # # HiSax PCMCIA card service modules # # # HiSax sub driver modules # CONFIG_HISAX_ST5481=y CONFIG_HISAX_HFCUSB=y # CONFIG_HISAX_HFC4S8S is not set CONFIG_HISAX_FRITZ_PCIPNP=y CONFIG_HISAX_HDLC=y # # Active cards # CONFIG_ISDN_DRV_ICN=m CONFIG_ISDN_DRV_PCBIT=m CONFIG_ISDN_DRV_SC=y # CONFIG_ISDN_DRV_ACT2000 is not set CONFIG_HYSDN=m # CONFIG_ISDN_DRV_GIGASET is not set # CONFIG_ISDN_CAPI is not set CONFIG_PHONE=y CONFIG_PHONE_IXJ=m Signed-off-by: Ingo Molnar <mingo@elte.hu> Cc: Karsten Keil <kkeil@suse.de> Cc: Kai Germaschewski <kai@germaschewski.name> Cc: "Rafael J. Wysocki" <rjw@sisk.pl> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-11-06i4l: errors with assignments in ifRoel Kluin1-1/+1
Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Acked-by: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-11-06PCI: Add Kconfig option to disable deprecated pci_find_* APIJeff Garzik7-22/+25
Signed-off-by: Jeff Garzik <jgarzik@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-10-20Convert files to UTF-8 and some cleanupsJan Engelhardt6-15/+15
* Convert files to UTF-8. * Also correct some people's names (one example is Eißfeldt, which was found in a source file. Given that the author used an ß at all in a source file indicates that the real name has in fact a 'ß' and not an 'ss', which is commonly used as a substitute for 'ß' when limited to 7bit.) * Correct town names (Goettingen -> Göttingen) * Update Eberhard Mönkeberg's address (http://lkml.org/lkml/2007/1/8/313) Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Signed-off-by: Adrian Bunk <bunk@kernel.org>
2007-10-14hisax: hfc_usb: update to current CVS versionMartin Bachem1-30/+33
- killed paranoid NULL Pointer check - human readable LED states - support for "Eicon DIVA USB 4.0" (0x071d/0x1005) Signed-off-by: Martin Bachem <info@colognechip.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-14more trivial signedness fixes in driversAl Viro2-2/+3
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-14long vs. unsigned long - low-hanging fruits in driversAl Viro2-2/+2
deal with signedness of the stuff passed to set_bit() et.al. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-13fallout from elsa setup splitAl Viro1-1/+1
... and yes, caller wants it to return int. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-12[ISDN] HiSax diva: split setup into three smaller functionsJeff Garzik1-219/+294
Just code movement, and the glue to call the new functions. Preparation for hotplug APIs. Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2007-10-12[ISDN] HiSax sedlbauer: move ISAPNP and PCI code into functions of their ownJeff Garzik1-119/+157
Prep for hotplug API conversion. Just code movement (+glue). Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2007-10-12[ISDN] HiSax elsa: split huge setup function into four smaller functionsJeff Garzik1-216/+278
Prep for hotplug API conversion. Just code movement (+glue). Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2007-10-12[ISDN] HiSax avm_pci: split setup into three smaller functionsJeff Garzik1-88/+136
Preparation for new ISA/PNP/PCI APIs. Just code movement, and the glue to call the new functions. Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2007-10-12[ISDN] Remove CONFIG_PCI ifdefs from 100% PCI source codeJeff Garzik3-20/+3
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-08-21hisax: update hfc_usb driverMartin Bachem2-445/+288
This fixes handling of USB ISO completion error -EXDEV and includes several other changes to current CVS version at isdn4linux.de (changes in debug flags, style of code remarks, etc) Signed-off-by: Martin Bachem <info@colognechip.com> Acked-by: Karsten Keil <kkeil@suse.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-22Use menuconfig objects - CONFIG_ISDN_I4LTilman Schmidt1-1/+0
Remove a menu statement and several dependencies from the Kconfig files in the drivers/isdn tree as they have become unnecessary by the transformation of CONFIG_ISDN from "menu, config" into "menuconfig". (Modified version of a patch originally proposed by Jan Engelhardt.) Signed-off-by: Tilman Schmidt <tilman@imap.cc> Cc: Jan Engelhardt <jengelh@computergmbh.de> Acked-by: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-19ISDN HiSax: uninitialized return in hisax_cs_setupFlorin Malita1-3/+1
Coverity (1792) spotted a possibly uninitialized return value in case of kmalloc() failure: 1116 static int hisax_cs_setup(int cardnr, struct IsdnCard *card, 1117 struct IsdnCardState *cs) 1119 int ret; 1120 1121 if (!(cs->rcvbuf = kmalloc(MAX_DFRAME_LEN_L1, GFP_ATOMIC))) { 1122 printk(KERN_WARNING "HiSax: No memory for isac rcvbuf\n"); 1123 ll_unload(cs); 1124 goto outf_cs; ... 1165 outf_cs: 1166 kfree(cs); 1167 card->cs = NULL; 1168 return ret; The straightforward solution would be to just add the missing initialization but hardcoding the return value in the out_cs branch (only taken on failure) seems to work just as well and it allows killing a couple of other lines too. Signed-off-by: Florin Malita <fmalita@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-18[ISDN] HiSax hfc_pci: minor cleanupsJeff Garzik1-98/+93
* trim trailing whitespace * remove CONFIG_PCI ifdefs, this driver is always PCI (Kconfig enforced) * remove return statements at the tail of a function * remove indentation levels by returning an error code immediately. Makes the code much more readable, and easier to update to PCI hotplug API. Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-18[ISDN] HiSax bkm_a4t: split setup into two smaller functionsJeff Garzik1-45/+63
No behavior changes, just code movement. Prep for PCI hotplug API. Well, CONFIG_PCI useless ifdef was removed. Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-18[ISDN] HiSax enternow: split setup into 3 smaller functionsJeff Garzik1-76/+89
No behavior changes, just code movement. Prep for PCI hotplug API. Signed-off-by: Jeff Garzik <jeff@garzik.org>