Bartlomiej Zolnierkiewicz 8185d5aa93 ide: /proc/ide/hd*/settings rework
* Add struct ide_devset, S_* flags, *DEVSET() & ide*_devset_*() macros.

* Add 'const struct ide_devset **settings' to ide_driver_t.

* Use 'const struct ide_devset **settings' in ide_drive_t instead of
  'struct ide_settings_s *settings'.  Then convert core code and device
  drivers to use struct ide_devset and co.:

  - device settings are no longer allocated dynamically for each device
    but instead there is an unique struct ide_devset instance per setting

  - device driver keeps the pointer to the table of pointers to its
    settings in ide_driver_t.settings

  - generic settings are kept in ide_generic_setting[]

  - ide_proc_[un]register_driver(), ide_find_setting_by_name(),
    ide_{read,write}_setting() and proc_ide_{read,write}_settings()
    are updated accordingly

  - ide*_add_settings() are removed

* Remove no longer used __ide_add_setting(), ide_add_setting(),
  __ide_remove_setting() and auto_remove_settings().

* Remove no longer used TYPE_*, SETTING_*, ide_procset_t
  and ide_settings_t.

* ->keep_settings, ->using_dma, ->unmask, ->noflush, ->dsc_overlap,
  ->nice1, ->addressing, ->wcache and ->nowerr ide_drive_t fields
  can now be bitfield flags.

While at it:

* Rename ide_find_setting_by_name() to ide_find_setting().

* Rename write_wcache() to set_wcache().

There should be no functional changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
2008-10-10 22:39:28 +02:00
..
2008-01-11 18:22:30 -06:00
2006-09-12 17:12:31 -05:00
2006-09-12 17:12:31 -05:00
2008-01-30 13:14:02 -06:00
2008-07-26 15:17:47 -04:00
2005-11-09 15:44:09 -05:00
2008-10-09 08:56:13 +02:00
2008-10-09 08:56:13 +02:00
2006-09-12 17:12:31 -05:00
2008-01-30 13:14:02 -06:00
2008-10-10 22:39:28 +02:00
2008-10-09 08:56:13 +02:00
2008-10-09 08:56:13 +02:00
2008-01-30 13:14:02 -06:00
2006-09-12 17:12:31 -05:00
2008-01-30 13:14:02 -06:00
2008-01-23 13:44:31 -06:00
2008-07-14 15:29:34 -06:00
2008-01-30 13:14:02 -06:00
2007-07-18 11:16:32 -05:00
2008-07-02 15:06:25 -06:00
2008-07-30 10:21:56 -05:00
2008-10-09 08:56:16 +02:00
2008-10-09 08:56:13 +02:00
2008-02-07 18:02:44 -06:00
2008-07-26 15:14:47 -04:00
2008-07-26 15:14:49 -04:00
2006-11-15 16:43:50 -06:00
2007-10-19 23:22:55 +02:00