aboutsummaryrefslogtreecommitdiff
path: root/include/pcmcia
AgeCommit message (Collapse)AuthorFilesLines
2008-08-23pcmcia: move config_info_t definition to ioctl-related parts in header filesDominik Brodowski2-21/+21
Signed-off-by: Dominik Brodowski <[email protected]>
2008-08-23pcmcia: move pccard_get_configuration_info to ioctlDominik Brodowski1-1/+0
With the PCMCIA ioctl being the only remaining user of _get_configuration_info, move the function to pcmcia_ioctl.c Signed-off-by: Dominik Brodowski <[email protected]>
2008-08-23Merge branches 'pcmcia-config-loop' and 'pcmcia-printk' into pcmciaDominik Brodowski1-0/+8
* pcmcia-config-loop: pcmcia: pcmcia_config_loop() improvement by passing vcc pcmcia: pcmcia_config_loop() default CIS entry handling pcmcia: pcmcia_config_loop() ConfigIndex unification pcmcia: use pcmcia_loop_config in misc pcmcia drivers pcmcia: use pcmcia_loop_config in net pcmcia drivers pcmcia: use pcmcia_loop_config in ISDN pcmcia drivers pcmcia: use pcmcia_loop_config in scsi pcmcia drivers pcmcia: use pcmcia_loop_config in bluetooth drivers pcmcia: use pcmcia_loop_config in pata and ide drivers pcmcia: add pcmcia_loop_config() helper * pcmcia-printk: pcmcia: don't add extra DEBUG cflag pcmcia: remove unused cs_socket_name() definition pcmcia: use dev_printk in module rsrc_nonstatic pcmcia: use dev_printk in module pcmcia pcmcia: use dev_printk in module pcmcia_core pcmcia: use dev_printk and dev_dbg in yenta_socket
2008-08-23pcmcia: pcmcia_config_loop() improvement by passing vccDominik Brodowski1-0/+1
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 <[email protected]>
2008-08-23pcmcia: pcmcia_config_loop() default CIS entry handlingDominik Brodowski1-0/+1
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 <[email protected]>
2008-08-23pcmcia: add pcmcia_loop_config() helperDominik Brodowski1-0/+6
By calling pcmcia_loop_config(), a pcmcia driver can iterate over all available configuration options. During a driver's probe() phase, one doesn't need to use pcmcia_get_{first,next}_tuple, pcmcia_get_tuple_data and pcmcia_parse_tuple directly in most if not all cases. Signed-off-by: Dominik Brodowski <[email protected]>
2008-08-02pcmcia: only copy CIS override data onceDominik Brodowski3-10/+10
Instead of copying CIS override data in socket_sysfs.c or ds.c, and then again in cistpl.c, only do so once. Also, cisdump_t is now only used by the deprecated ioctl. Signed-off-by: Dominik Brodowski <[email protected]>
2008-06-24pcmcia: (re)move {pcmcia,pccard}_get_statusDominik Brodowski1-1/+0
Except for one debug message in a driver marked BROKEN, pcmcia_get_status is only used by the ioctl. Therefore, move it to pcmcia_ioctl.c and unexport it. Signed-off-by: Dominik Brodowski <[email protected]>
2008-06-24pcmcia: Remove unused header file codeMagnus Damm2-5/+0
pcmcia: Remove unused header file code Signed-off-by: Magnus Damm <[email protected]> Signed-off-by: Dominik Brodowski <[email protected]>
2008-06-24pcmcia: remove unused bulkmem.hMagnus Damm3-43/+18
The code in include/pcmcia/bulkmem.h was only kept for compatibility reasons. Therefore, move the remaining region_info_t definition to ds.h [[email protected]: do not modify the IOCTL, move definition to ds.h, and update changelog] Signed-off-by: Magnus Damm <[email protected]> Signed-off-by: Dominik Brodowski <[email protected]>
2008-06-24pcmcia: simplify pccard_validate_cisDominik Brodowski1-1/+1
As cisinfo_t only contains one unsigned_int, pccard_validate_cis can be simplified by passing that around directly. Signed-off-by: Dominik Brodowski <[email protected]>
2008-06-24pcmcia: carve out ioctl adjust function to pcmcia_ioctlDominik Brodowski1-2/+8
Let pcmcia_ioctl interact with rsrc_nonstatic using functions which rsrc_nonstatic.c has to use anyway. Signed-off-by: Dominik Brodowski <[email protected]>
2008-06-24pcmcia: add support CompactFlash PCMCIA support for Blackfin.Michael Hennerich1-1/+2
A new host driver to add CompactFlash PCMCIA support for Blackfin. [[email protected]: coding-style fixes] Signed-off-by: Michael Hennerich <[email protected]> Signed-off-by: Bryan Wu <[email protected]> Cc: Mike Frysinger <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Dominik Brodowski <[email protected]>
2008-06-24pcmcia: remove version.hDominik Brodowski1-3/+0
pcmcia/version.h is empty and its existence is not even needed by deprecated userspace tools. CC: David Sterba <[email protected]> Signed-off-by: Jiri Kosina <[email protected]> Signed-off-by: Dominik Brodowski <[email protected]>
2008-06-24pcmcia: cs: kill thread_waitChristoph Hellwig1-1/+0
There is not reason to have a waitqueue if it's always the same thread that is waiting for it. Just use wake_up_process instead. Signed-off-by: Christoph Hellwig <[email protected]> Small modification: Also remove unused variable. Signed-off-by: Dominik Brodowski <[email protected]>
2008-02-05pcmcia: replace kio_addr_t with unsigned int everywhereOlof Johansson2-4/+3
Remove kio_addr_t, and replace it with unsigned int. No known architecture needs more than 32 bits for IO addresses and ports and having a separate type for it is just messy. Signed-off-by: Olof Johansson <[email protected]> Cc: Christoph Hellwig <[email protected]> Cc: Matthew Wilcox <[email protected]> Cc: Alan Cox <[email protected]> Cc: Dominik Brodowski <[email protected]> Cc: Benjamin Herrenschmidt <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05pcmcia: convert some internal-only ioaddr_t to unsigned intOlof Johansson1-4/+4
Convert the io_req_t members to unsigned int, to allow use on machines with more than 16 bits worth of IO ports (i.e. secondary busses on ppc64, etc). There was only a couple of places in drivers where a change was needed. I left printk formats alone (there are lots of %04x-style formats in there), mostly to not change the format on the platforms that only have 16-bit io addresses, but also because the padding doesn't really add all that much value most of the time. I found only one sprintf of an address, and upsized the string accordingly (I doubt anyone will have anywhere near INT_MAX as irq value, but at least there's room for it now). Signed-off-by: Olof Johansson <[email protected]> Cc: Christoph Hellwig <[email protected]> Cc: Matthew Wilcox <[email protected]> Cc: Alan Cox <[email protected]> Cc: Dominik Brodowski <[email protected]> Cc: Benjamin Herrenschmidt <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-15[AVR32] pcmcia ioaddr_t should be 32 bits on AVR32Haavard Skinnemoen1-1/+1
Define ioaddr_t as u_int on AVR32 just like on ARM and MIPS. Signed-off-by: Haavard Skinnemoen <[email protected]>
2007-10-16pcmcia: use DMA_MASK_NONE for the default for all pcmcia devicesJames Bottomley1-0/+1
Most non cardbus devices can't do dma, so flag them as such in the device creation routine. Signed-off-by: James Bottomley <[email protected]> Cc: Andi Kleen <[email protected]> Cc: Alan Cox <[email protected]> Cc: Tejun Heo <[email protected]> Cc: Natalie Protasevich <[email protected]> Cc: Jeff Garzik <[email protected]> Cc: Dominik Brodowski <[email protected]> Cc: Russell King <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-07-08PCMCIA-NETDEV : add new ID of lan&modem multifunction cardKomuro1-0/+2
fmvj18x_cs: NEC PK-UG-J001 Panasonic CF-VML201 Panasonic TO-PDL9610 pcnet_cs: MICRO-RESEARCH MC336LAN Signed-off-by: Komuro <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2007-05-07add new_id to PCMCIA driversBernhard Walle1-0/+6
PCI drivers have the new_id file in sysfs which allows new IDs to be added at runtime. The advantage is to avoid re-compilation of a driver that works for a new device, but it's ID table doesn't contain the new device. This mechanism is only meant for testing, after the driver has been tested successfully, the ID should be added in source code so that new revisions of the kernel automatically detect the device. The implementation follows the PCI implementation. The interface is documented in Documentation/pcmcia/driver.txt. Computations should be done in userspace, so the sysfs string contains the raw structure members for matching. Signed-off-by: Bernhard Walle <[email protected]> Cc: Dominik Brodowski <[email protected]> Cc: Greg KH <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-02-16serial: Add PCMCIA IDs for Quatech DSP-100 dual RS232 adapter.Sergei Organov1-0/+1
Add PCMCIA IDs for Quatech DSP-100 dual RS232 adapter. Signed-off-by: Sergei Organov <[email protected]> Acked-by: Alan Cox <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2007-02-07Driver core: convert pcmcia code to use struct deviceGreg Kroah-Hartman1-1/+1
Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Cc: <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-12-04[PATCH] pcmcia: multifunction card handling fixesDominik Brodowski1-2/+3
s->functions needs to be initialized earlier, for the "let's see how high it increases" approach means that pcmcia_request_irq() (which makes use of this value) is confused, and might request an exclusive IRQ first even though it is not supposed to. Also, a CIS override autoloaded using the firmware loader may allow for the use of more or less functions in a multifunction card. Therefore, we may need to schedule a call to add this second function later on, or simply remove the other function (it's always the first -valid- function which reaches this codepath). Many thanks to Fabrice Bellet for debugging and testing patches. Signed-off-by: Dominik Brodowski <[email protected]>
2006-04-26Don't include linux/config.h from anywhere else in include/David Woodhouse1-1/+0
Signed-off-by: David Woodhouse <[email protected]>
2006-03-31[PATCH] pcmcia: declare pccard_iodyn_ops (fix m8xx_pcmcia.c compilation error)Marcelo Tosatti1-0/+3
Apparently the pccard_iodyn_ops declaration has been forgotten, which results in a compilation error for m8xx_pcmcia.c Signed-off-by: Marcelo Tosatti <[email protected]> Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: Add support for Possio GCC AKA PCMCIA Siemens MC45Petr Vandrovec1-0/+3
This ugly hack add support for Siemens MC45 PCMCIA GPRS card (which is identical to Possio GCC, and which is offered by one of our local GPRS providers). Card has unfortunate feature that after poweron oxcf950 chip is fully powered and works, but attached MC45 modem is powered down :-( There is a special sequence (which takes 1 sec :-( ) to poweron MC45 (and after MC45 powers on, it takes more than 2 secs until firmware fully boots...) which needs to be executed after all powerons. I'm really not familiar with PCMCIA subsystem, so I have no idea whether I should issue request_region() on rest of oxcf950 address range (0-7 is UART, 8-F are special configuration registers), or how this should be better integrated with PM system and so on - I just put it in same place where another hack already lived... Card uses 18.432MHz XTAL, so to get it to work you must add lines below to the /etc/pcmcia/serial.opts. case "$MANFID-$FUNCID-$PRODID_1-$PRODID_2-$PRODID_3-$PRODID_4" in '030c,0003-2-GPRS-CARD--') SERIAL_OPTS="baud_base 1152000" ;; esac Cc: Russell King <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: convert DEV_OK to pcmcia_dev_presentDominik Brodowski2-8/+5
Instead of the DEV_OK macro, drivers should use pcmcia_dev_present(). Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: use bitfield instead of p_state and stateDominik Brodowski1-16/+24
Instead of the two status values struct pcmcia_device->p_state and state, use descriptive bitfields. Most value-checking in drivers was invalid, as the core now only calls the ->remove() (a.k.a. detach) function in case the attachement _and_ configuration was successful. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: remove unused p_dev->state flagsDominik Brodowski1-3/+3
Remove the unused DEV_RELEASE_PENDING flag, and move the DEV_SUSPEND flag into the p_dev structure, and make use of it at the core level. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: remove dev_link_t and client_handle_t indirectionDominik Brodowski3-9/+4
dev_link_t * and client_handle_t both mean struct pcmcai_device * by now. Therefore, remove all such indirections. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: embed dev_link_t into struct pcmcia_deviceDominik Brodowski1-17/+14
Embed dev_link_t into struct pcmcia_device(), as they basically address the same entity. The actual contents of dev_link_t will be cleaned up step by step. This patch includes a bugfix from and signed-off-by Andrew Morton. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: rename pcmcia_device.stateDominik Brodowski1-1/+1
Rename pcmcia_device.state (which is used in very few places) to p_state in order to avoid a namespace collision when moving the deprecated dev_link_t into struct pcmcia_device Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: remove unneeded Vcc pseudo settingDominik Brodowski1-1/+1
As we do not allow setting Vcc in the pcmcia core, and Vpp1 and Vpp2 can only be set to the same value, a lot of code can be streamlined. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: remove export of pcmcia_release_configurationDominik Brodowski1-5/+5
Handle the _modifying_ operation sm91c92_cs requires in pcmcia_modify_configuration, so that the only remaining users of pcmcia_release_configuration() are within the pcmcia core module. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: default suspend and resume handlingDominik Brodowski1-2/+1
In all but one case, the suspend and resume functions of PCMCIA drivers contain mostly of calls to pcmcia_release_configuration() and pcmcia_request_configuration(). Therefore, move this code out of the drivers and into the core. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: convert remaining users of pcmcia_release_io and _irqDominik Brodowski1-2/+0
Convert the remaining drivers which use pcmcia_release_io or pcmcia_release_irq, and remove the EXPORT of these symbols. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: add pcmcia_disable_deviceDominik Brodowski1-0/+2
pcmcia_disable_device(struct pcmcia_device *p_dev) performs the necessary cleanups upon device or driver removal: it calls the appropriate pcmcia_release_* functions, and can replace (most) of the current drivers' _release() functions. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: remove wrong comment in ciscode.hKomuro1-1/+1
Remove misleading comment. Signed-off-by: Komuro <[email protected]> Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: remove duplicate fields in io_window_tDominik Brodowski1-2/+0
BasePort, NumPorts and Attributes are or can be embedded in struct resource, so remove them. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: size reduction if ioctl isn't compiledDominik Brodowski1-2/+4
If the kernel is configured to not include the deprecated PCMCIA ioctl, some code doesn't need to be built. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: remove pcmcia_compat.cDominik Brodowski2-6/+21
Remove the compatibility wrappers, as they can (now) also be implemented using macros. Please continue using these wrappers instead of new functions until a new API has stabilized. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: use mutexes instead of semaphoresDominik Brodowski1-1/+2
Use mutexes in the PCMICA core, as they suffice for what needs to be done. Includes a bugfix from and Signed-off-by Andrew Morton. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: remove unused definesDominik Brodowski2-12/+0
Remove unused fields and declarations. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: make config_t independent, add reference countingDominik Brodowski1-1/+0
Handle config_t structs independent of struct pcmcia_socket, and add reference counting for them. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-31[PATCH] pcmcia: access config_t using pointer instead of arrayDominik Brodowski1-0/+2
Access the PCMCIA config_t struct (one per device function) using a pointer in struct pcmcia_device, instead of looking them up in an array. Signed-off-by: Dominik Brodowski <[email protected]>
2006-03-01[PATCH] pcmcia: Add macro to match PCMCIA cards by numeric ID and first ↵Pavel Roskin1-0/+9
vendor string This is needed to distinguish Intersil and non-Intersil cards with numeric ID 0x0156, 0x0002. Signed-off-by: Pavel Roskin <[email protected]> Signed-off-by: Dominik Brodowski <[email protected]>
2006-01-06[PATCH] pcmcia: unify attach, EVENT_CARD_INSERTION handlers into one probe ↵Dominik Brodowski2-6/+1
callback Unify the EVENT_CARD_INSERTION and "attach" callbacks to one unified probe() callback. As all in-kernel drivers are changed to this new callback, there will be no temporary backwards-compatibility. Inside a probe() function, each driver _must_ set struct pcmcia_device *p_dev->instance and instance->handle correctly. With these patches, the basic driver interface for 16-bit PCMCIA drivers now has the classic four callbacks known also from other buses: int (*probe) (struct pcmcia_device *dev); void (*remove) (struct pcmcia_device *dev); int (*suspend) (struct pcmcia_device *dev); int (*resume) (struct pcmcia_device *dev); Signed-off-by: Dominik Brodowski <[email protected]>
2006-01-06[PATCH] pcmcia: remove old detach mechanismDominik Brodowski2-2/+0
Remove the old "detach" mechanism as it is unused now. Signed-off-by: Dominik Brodowski <[email protected]>
2006-01-06[PATCH] pcmcia: unify detach, REMOVAL_EVENT handlers into one remove callbackDominik Brodowski1-0/+2
Unify the "detach" and REMOVAL_EVENT handlers to one "remove" function. Old functionality is preserved, for the moment. Signed-off-by: Dominik Brodowski <[email protected]>