proc: revert /proc/<pid>/maps [stack:TID] annotation
[firefly-linux-kernel-4.4.55.git] / include / linux / ide.h
index 9856b7d455d9060d65c95e9331d7ca2958efac6f..a633898f36ac83f387f6de86350f7768a3d73b6e 100644 (file)
@@ -44,8 +44,14 @@ enum ata_cmd_type_bits {
        REQ_TYPE_ATA_TASKFILE = REQ_TYPE_DRV_PRIV + 1,
        REQ_TYPE_ATA_PC,
        REQ_TYPE_ATA_SENSE,     /* sense request */
+       REQ_TYPE_ATA_PM_SUSPEND,/* suspend request */
+       REQ_TYPE_ATA_PM_RESUME, /* resume request */
 };
 
+#define ata_pm_request(rq)     \
+       ((rq)->cmd_type == REQ_TYPE_ATA_PM_SUSPEND || \
+        (rq)->cmd_type == REQ_TYPE_ATA_PM_RESUME)
+
 /* Error codes returned in rq->errors to the higher part of the driver. */
 enum {
        IDE_DRV_ERROR_GENERAL   = 101,
@@ -1321,6 +1327,19 @@ struct ide_port_info {
        u8                      udma_mask;
 };
 
+/*
+ * State information carried for REQ_TYPE_ATA_PM_SUSPEND and REQ_TYPE_ATA_PM_RESUME
+ * requests.
+ */
+struct ide_pm_state {
+       /* PM state machine step value, currently driver specific */
+       int     pm_step;
+       /* requested PM state value (S1, S2, S3, S4, ...) */
+       u32     pm_state;
+       void*   data;           /* for driver use */
+};
+
+
 int ide_pci_init_one(struct pci_dev *, const struct ide_port_info *, void *);
 int ide_pci_init_two(struct pci_dev *, struct pci_dev *,
                     const struct ide_port_info *, void *);