Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
sas_internal.h File Reference
#include <scsi/scsi.h>
#include <scsi/scsi_host.h>
#include <scsi/scsi_transport_sas.h>
#include <scsi/libsas.h>
#include <scsi/sas_ata.h>

Go to the source code of this file.

Data Structures

struct  sas_phy_data
 

Macros

#define sas_printk(fmt,...)   printk(KERN_NOTICE "sas: " fmt, ## __VA_ARGS__)
 
#define SAS_DPRINTK(fmt,...)   printk(KERN_DEBUG "sas: " fmt, ## __VA_ARGS__)
 
#define TO_SAS_TASK(_scsi_cmd)   ((void *)(_scsi_cmd)->host_scribble)
 
#define ASSIGN_SAS_TASK(_sc, _t)   do { (_sc)->host_scribble = (void *) _t; } while (0)
 

Functions

void sas_scsi_recover_host (struct Scsi_Host *shost)
 
int sas_show_class (enum sas_class class, char *buf)
 
int sas_show_proto (enum sas_protocol proto, char *buf)
 
int sas_show_linkrate (enum sas_linkrate linkrate, char *buf)
 
int sas_show_oob_mode (enum sas_oob_mode oob_mode, char *buf)
 
int sas_register_phys (struct sas_ha_struct *sas_ha)
 
void sas_unregister_phys (struct sas_ha_struct *sas_ha)
 
int sas_register_ports (struct sas_ha_struct *sas_ha)
 
void sas_unregister_ports (struct sas_ha_struct *sas_ha)
 
enum blk_eh_timer_return sas_scsi_timed_out (struct scsi_cmnd *)
 
int sas_init_queue (struct sas_ha_struct *sas_ha)
 
int sas_init_events (struct sas_ha_struct *sas_ha)
 
void sas_shutdown_queue (struct sas_ha_struct *sas_ha)
 
void sas_disable_revalidation (struct sas_ha_struct *ha)
 
void sas_enable_revalidation (struct sas_ha_struct *ha)
 
void __sas_drain_work (struct sas_ha_struct *ha)
 
void sas_deform_port (struct asd_sas_phy *phy, int gone)
 
void sas_porte_bytes_dmaed (struct work_struct *work)
 
void sas_porte_broadcast_rcvd (struct work_struct *work)
 
void sas_porte_link_reset_err (struct work_struct *work)
 
void sas_porte_timer_event (struct work_struct *work)
 
void sas_porte_hard_reset (struct work_struct *work)
 
void sas_queue_work (struct sas_ha_struct *ha, struct sas_work *sw)
 
int sas_notify_lldd_dev_found (struct domain_device *)
 
void sas_notify_lldd_dev_gone (struct domain_device *)
 
int sas_smp_phy_control (struct domain_device *dev, int phy_id, enum phy_func phy_func, struct sas_phy_linkrates *)
 
int sas_smp_get_phy_events (struct sas_phy *phy)
 
void sas_notify_phy_event (struct asd_sas_phy *phy, enum phy_event event)
 
void sas_device_set_phy (struct domain_device *dev, struct sas_port *port)
 
struct domain_devicesas_find_dev_by_rphy (struct sas_rphy *rphy)
 
struct domain_devicesas_ex_to_ata (struct domain_device *ex_dev, int phy_id)
 
int sas_ex_phy_discover (struct domain_device *dev, int single)
 
int sas_get_report_phy_sata (struct domain_device *dev, int phy_id, struct smp_resp *rps_resp)
 
int sas_try_ata_reset (struct asd_sas_phy *phy)
 
void sas_hae_reset (struct work_struct *work)
 
void sas_free_device (struct kref *kref)
 

Macro Definition Documentation

#define ASSIGN_SAS_TASK (   _sc,
  _t 
)    do { (_sc)->host_scribble = (void *) _t; } while (0)

Definition at line 40 of file sas_internal.h.

#define SAS_DPRINTK (   fmt,
  ... 
)    printk(KERN_DEBUG "sas: " fmt, ## __VA_ARGS__)

Definition at line 37 of file sas_internal.h.

#define sas_printk (   fmt,
  ... 
)    printk(KERN_NOTICE "sas: " fmt, ## __VA_ARGS__)

Definition at line 35 of file sas_internal.h.

#define TO_SAS_TASK (   _scsi_cmd)    ((void *)(_scsi_cmd)->host_scribble)

Definition at line 39 of file sas_internal.h.

Function Documentation

void __sas_drain_work ( struct sas_ha_struct ha)

Definition at line 57 of file sas_event.c.

void sas_deform_port ( struct asd_sas_phy phy,
int  gone 
)

sas_deform_port – remove this phy from the port it belongs to : the phy of interest

This is called when the physical link to the other phy has been lost (on this phy), in Event thread context. We cannot delay here.

Definition at line 204 of file sas_port.c.

void sas_device_set_phy ( struct domain_device dev,
struct sas_port port 
)

Definition at line 408 of file sas_discover.c.

void sas_disable_revalidation ( struct sas_ha_struct ha)

Definition at line 93 of file sas_event.c.

void sas_enable_revalidation ( struct sas_ha_struct ha)

Definition at line 100 of file sas_event.c.

int sas_ex_phy_discover ( struct domain_device dev,
int  single 
)

Definition at line 380 of file sas_expander.c.

struct domain_device* sas_ex_to_ata ( struct domain_device ex_dev,
int  phy_id 
)
read

Definition at line 335 of file sas_expander.c.

struct domain_device* sas_find_dev_by_rphy ( struct sas_rphy rphy)
read

Definition at line 880 of file sas_scsi_host.c.

void sas_free_device ( struct kref kref)

Definition at line 304 of file sas_discover.c.

int sas_get_report_phy_sata ( struct domain_device dev,
int  phy_id,
struct smp_resp rps_resp 
)
void sas_hae_reset ( struct work_struct work)

Definition at line 114 of file sas_init.c.

int sas_init_events ( struct sas_ha_struct sas_ha)

Definition at line 147 of file sas_event.c.

int sas_init_queue ( struct sas_ha_struct sas_ha)

Definition at line 1085 of file sas_scsi_host.c.

int sas_notify_lldd_dev_found ( struct domain_device )

Definition at line 177 of file sas_discover.c.

void sas_notify_lldd_dev_gone ( struct domain_device )

Definition at line 200 of file sas_discover.c.

void sas_notify_phy_event ( struct asd_sas_phy phy,
enum phy_event  event 
)

Definition at line 137 of file sas_event.c.

void sas_porte_broadcast_rcvd ( struct work_struct work)

Definition at line 269 of file sas_port.c.

void sas_porte_bytes_dmaed ( struct work_struct work)

Definition at line 259 of file sas_port.c.

void sas_porte_hard_reset ( struct work_struct work)

Definition at line 306 of file sas_port.c.

void sas_porte_link_reset_err ( struct work_struct work)

Definition at line 286 of file sas_port.c.

void sas_porte_timer_event ( struct work_struct work)

Definition at line 296 of file sas_port.c.

void sas_queue_work ( struct sas_ha_struct ha,
struct sas_work sw 
)

Definition at line 30 of file sas_event.c.

int sas_register_phys ( struct sas_ha_struct sas_ha)

Definition at line 118 of file sas_phy.c.

int sas_register_ports ( struct sas_ha_struct sas_ha)

Definition at line 333 of file sas_port.c.

void sas_scsi_recover_host ( struct Scsi_Host shost)

Definition at line 800 of file sas_scsi_host.c.

enum blk_eh_timer_return sas_scsi_timed_out ( struct scsi_cmnd )

Definition at line 863 of file sas_scsi_host.c.

int sas_show_class ( enum sas_class  class,
char buf 
)
int sas_show_linkrate ( enum sas_linkrate  linkrate,
char buf 
)
int sas_show_oob_mode ( enum sas_oob_mode  oob_mode,
char buf 
)
int sas_show_proto ( enum sas_protocol  proto,
char buf 
)
void sas_shutdown_queue ( struct sas_ha_struct sas_ha)

Definition at line 1101 of file sas_scsi_host.c.

int sas_smp_get_phy_events ( struct sas_phy phy)

Definition at line 642 of file sas_expander.c.

int sas_smp_phy_control ( struct domain_device dev,
int  phy_id,
enum phy_func  phy_func,
struct sas_phy_linkrates  
)

Definition at line 567 of file sas_expander.c.

int sas_try_ata_reset ( struct asd_sas_phy phy)

Definition at line 227 of file sas_init.c.

void sas_unregister_phys ( struct sas_ha_struct sas_ha)
void sas_unregister_ports ( struct sas_ha_struct sas_ha)

Definition at line 347 of file sas_port.c.