From: Christoph Hellwig There's lots of exports in parport that aren't used by any drivers. Behind many of them there's actually dead code. Signed-off-by: Andrew Morton --- 25-akpm/drivers/parport/daisy.c | 155 ------------------------------------- 25-akpm/drivers/parport/ieee1284.c | 4 25-akpm/drivers/parport/probe.c | 1 25-akpm/drivers/parport/procfs.c | 3 25-akpm/drivers/parport/share.c | 1 5 files changed, 2 insertions(+), 162 deletions(-) diff -puN drivers/parport/daisy.c~parport-kill-dead-code-and-exports drivers/parport/daisy.c --- 25/drivers/parport/daisy.c~parport-kill-dead-code-and-exports 2004-10-24 23:48:50.582024024 -0700 +++ 25-akpm/drivers/parport/daisy.c 2004-10-24 23:48:50.593022352 -0700 @@ -207,8 +207,7 @@ void parport_daisy_fini (struct parport * * This function is similar to parport_register_device(), except * that it locates a device by its number rather than by the port - * it is attached to. See parport_find_device() and - * parport_find_class(). + * it is attached to. * * All parameters except for @devnum are the same as for * parport_register_device(). The return value is the same as @@ -305,53 +304,6 @@ int parport_device_num (int parport, int return res; } -/** - * parport_device_coords - convert canonical device number - * @devnum: device number - * @parport: pointer to storage for parallel port number - * @mux: pointer to storage for multiplexor port number - * @daisy: pointer to storage for daisy chain address - * - * This function converts a device number into its coordinates in - * terms of which parallel port in the system it is attached to, - * which multiplexor port it is attached to if there is a - * multiplexor on that port, and which daisy chain address it has - * if it is in a daisy chain. - * - * The caller must allocate storage for @parport, @mux, and - * @daisy. - * - * If there is no device with the specified device number, -ENXIO - * is returned. Otherwise, the values pointed to by @parport, - * @mux, and @daisy are set to the coordinates of the device, - * with -1 for coordinates with no value. - * - * This function is not actually very useful, but this interface - * was suggested by IEEE 1284.3. - **/ - -int parport_device_coords (int devnum, int *parport, int *mux, int *daisy) -{ - struct daisydev *dev; - - spin_lock(&topology_lock); - - dev = topology; - while (dev && dev->devnum != devnum) - dev = dev->next; - - if (!dev) { - spin_unlock(&topology_lock); - return -ENXIO; - } - - if (parport) *parport = dev->port->portnum; - if (mux) *mux = dev->port->muxport; - if (daisy) *daisy = dev->daisy; - spin_unlock(&topology_lock); - return 0; -} - /* Send a daisy-chain-style CPP command packet. */ static int cpp_daisy (struct parport *port, int cmd) { @@ -558,108 +510,3 @@ static int assign_addrs (struct parport kfree (deviceid); return detected; } - -/* Find a device with a particular manufacturer and model string, - starting from a given device number. Like the PCI equivalent, - 'from' itself is skipped. */ - -/** - * parport_find_device - find a specific device - * @mfg: required manufacturer string - * @mdl: required model string - * @from: previous device number found in search, or %NULL for - * new search - * - * This walks through the list of parallel port devices looking - * for a device whose 'MFG' string matches @mfg and whose 'MDL' - * string matches @mdl in their IEEE 1284 Device ID. - * - * When a device is found matching those requirements, its device - * number is returned; if there is no matching device, a negative - * value is returned. - * - * A new search it initiated by passing %NULL as the @from - * argument. If @from is not %NULL, the search continues from - * that device. - **/ - -int parport_find_device (const char *mfg, const char *mdl, int from) -{ - struct daisydev *d; - int res = -1; - - /* Find where to start. */ - - spin_lock(&topology_lock); - d = topology; /* sorted by devnum */ - while (d && d->devnum <= from) - d = d->next; - - /* Search. */ - while (d) { - struct parport_device_info *info; - info = &d->port->probe_info[1 + d->daisy]; - if ((!mfg || !strcmp (mfg, info->mfr)) && - (!mdl || !strcmp (mdl, info->model))) - break; - - d = d->next; - } - - if (d) - res = d->devnum; - - spin_unlock(&topology_lock); - return res; -} - -/** - * parport_find_class - find a device in a specified class - * @cls: required class - * @from: previous device number found in search, or %NULL for - * new search - * - * This walks through the list of parallel port devices looking - * for a device whose 'CLS' string matches @cls in their IEEE - * 1284 Device ID. - * - * When a device is found matching those requirements, its device - * number is returned; if there is no matching device, a negative - * value is returned. - * - * A new search it initiated by passing %NULL as the @from - * argument. If @from is not %NULL, the search continues from - * that device. - **/ - -int parport_find_class (parport_device_class cls, int from) -{ - struct daisydev *d; - int res = -1; - - spin_lock(&topology_lock); - d = topology; /* sorted by devnum */ - /* Find where to start. */ - while (d && d->devnum <= from) - d = d->next; - - /* Search. */ - while (d && d->port->probe_info[1 + d->daisy].class != cls) - d = d->next; - - if (d) - res = d->devnum; - - spin_unlock(&topology_lock); - return res; -} - -EXPORT_SYMBOL(parport_open); -EXPORT_SYMBOL(parport_close); -EXPORT_SYMBOL(parport_device_num); -EXPORT_SYMBOL(parport_device_coords); -EXPORT_SYMBOL(parport_daisy_deselect_all); -EXPORT_SYMBOL(parport_daisy_select); -EXPORT_SYMBOL(parport_daisy_init); -EXPORT_SYMBOL(parport_find_device); -EXPORT_SYMBOL(parport_find_class); diff -puN drivers/parport/ieee1284.c~parport-kill-dead-code-and-exports drivers/parport/ieee1284.c --- 25/drivers/parport/ieee1284.c~parport-kill-dead-code-and-exports 2004-10-24 23:48:50.583023872 -0700 +++ 25-akpm/drivers/parport/ieee1284.c 2004-10-24 23:48:50.593022352 -0700 @@ -40,7 +40,7 @@ /* Make parport_wait_peripheral wake up. * It will be useful to call this from an interrupt handler. */ -void parport_ieee1284_wakeup (struct parport *port) +static void parport_ieee1284_wakeup (struct parport *port) { up (&port->physport->ieee1284.irq); } @@ -813,9 +813,7 @@ long parport_set_timeout (struct pardevi EXPORT_SYMBOL(parport_negotiate); EXPORT_SYMBOL(parport_write); EXPORT_SYMBOL(parport_read); -EXPORT_SYMBOL(parport_ieee1284_wakeup); EXPORT_SYMBOL(parport_wait_peripheral); -EXPORT_SYMBOL(parport_poll_peripheral); EXPORT_SYMBOL(parport_wait_event); EXPORT_SYMBOL(parport_set_timeout); EXPORT_SYMBOL(parport_ieee1284_interrupt); diff -puN drivers/parport/probe.c~parport-kill-dead-code-and-exports drivers/parport/probe.c --- 25/drivers/parport/probe.c~parport-kill-dead-code-and-exports 2004-10-24 23:48:50.585023568 -0700 +++ 25-akpm/drivers/parport/probe.c 2004-10-24 23:48:50.594022200 -0700 @@ -213,4 +213,3 @@ ssize_t parport_device_id (int devnum, c parport_close (dev); return retval; } -EXPORT_SYMBOL(parport_device_id); diff -puN drivers/parport/procfs.c~parport-kill-dead-code-and-exports drivers/parport/procfs.c --- 25/drivers/parport/procfs.c~parport-kill-dead-code-and-exports 2004-10-24 23:48:50.587023264 -0700 +++ 25-akpm/drivers/parport/procfs.c 2004-10-24 23:48:50.594022200 -0700 @@ -529,8 +529,5 @@ static void __exit parport_default_proc_ } #endif -EXPORT_SYMBOL(parport_device_proc_register); -EXPORT_SYMBOL(parport_device_proc_unregister); - module_init(parport_default_proc_register) module_exit(parport_default_proc_unregister) diff -puN drivers/parport/share.c~parport-kill-dead-code-and-exports drivers/parport/share.c --- 25/drivers/parport/share.c~parport-kill-dead-code-and-exports 2004-10-24 23:48:50.588023112 -0700 +++ 25-akpm/drivers/parport/share.c 2004-10-24 23:48:50.595022048 -0700 @@ -1007,7 +1007,6 @@ EXPORT_SYMBOL(parport_register_driver); EXPORT_SYMBOL(parport_unregister_driver); EXPORT_SYMBOL(parport_register_device); EXPORT_SYMBOL(parport_unregister_device); -EXPORT_SYMBOL(parport_get_port); EXPORT_SYMBOL(parport_put_port); EXPORT_SYMBOL(parport_find_number); EXPORT_SYMBOL(parport_find_base); _