1. 30 8月, 2011 2 次提交
    • E
      iwlagn: introduce struct iwl-shared - known by all layers · cac988a6
      Emmanuel Grumbach 提交于
      This struct will hold pointers to all the layers, so that every layer will find
      the pointers it needs when calling another layer.
      
      Note that the drv_data set to struct device is now a pointer to
      struct iwl_shared.
      This solves of bug that I introduced in
      
      	iwlagn: simplify the bus architecture
      
      Bug description:
      
      sysfs gets the the driver data from struct device. Till the aforementioned
      patch, dev_get_drvdata would return iwl_priv. After the patch, dev_get_drvdata
      return iwl_bus which is buggy since the sysfs handlers rely on this value, and
      sysfs handlers need iwl_priv.
      
      Now, dev_get_drvdata return iwl-shared. Since we have pointers to all the
      layers in iwl_shared, every layer will be able to get the pointer it needs:
      bus layer will gets iwl_bus from the PCI suspend callbacks, and the sysfs
      handlers will get the iwl_priv they need.
      
      In order to keep good encapsulation, we need to avoid to dereference iwl_priv
      from a different layer. This is why instead of including iwl-dev.h from
      iwl-shared.h, I added a forward declaration to iwl_priv. Moreover we keep type
      safety while providing encapsulation.
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      Signed-off-by: NWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      cac988a6
    • E
      iwlagn: introduce iwl-shared.h · 48f20d35
      Emmanuel Grumbach 提交于
      It will hold declaration of functions and forward declaration of struct that
      are used by several layers.
      This will allow modules not to include iwl_priv. iwl_bus and iwl_trans are
      still visible to all.
      
      All the layers share the module parameters, move the struct to iwl-shared.h.
      Also add all module parameters to iwl_mod_params instead of having them as
      global static. This includes
      
      * debug_level
      * ant_coupling
      * bt_ch_announce
      * wanted_ucode_alternative
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      Signed-off-by: NWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      48f20d35
  2. 03 8月, 2011 1 次提交
  3. 21 7月, 2011 3 次提交
  4. 07 7月, 2011 1 次提交
  5. 01 7月, 2011 1 次提交
  6. 28 6月, 2011 2 次提交
  7. 25 6月, 2011 1 次提交
  8. 18 6月, 2011 7 次提交