opal-api.h (a976c2951d8f376112361830aa7762beff83a205) opal-api.h (3ced8d73006321bd2a0412fa0ff4b065a02e7514)
1/*
2 * OPAL API definitions.
3 *
4 * Copyright 2011-2015 IBM Corp.
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version

--- 653 unchanged lines hidden (view full) ---

662 * data upon request.
663 */
664enum {
665 OPAL_PHB_ERROR_DATA_VERSION_1 = 1,
666};
667
668enum {
669 OPAL_PHB_ERROR_DATA_TYPE_P7IOC = 1,
1/*
2 * OPAL API definitions.
3 *
4 * Copyright 2011-2015 IBM Corp.
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version

--- 653 unchanged lines hidden (view full) ---

662 * data upon request.
663 */
664enum {
665 OPAL_PHB_ERROR_DATA_VERSION_1 = 1,
666};
667
668enum {
669 OPAL_PHB_ERROR_DATA_TYPE_P7IOC = 1,
670 OPAL_PHB_ERROR_DATA_TYPE_PHB3 = 2
670 OPAL_PHB_ERROR_DATA_TYPE_PHB3 = 2,
671 OPAL_PHB_ERROR_DATA_TYPE_PHB4 = 3
671};
672
673enum {
674 OPAL_P7IOC_NUM_PEST_REGS = 128,
672};
673
674enum {
675 OPAL_P7IOC_NUM_PEST_REGS = 128,
675 OPAL_PHB3_NUM_PEST_REGS = 256
676 OPAL_PHB3_NUM_PEST_REGS = 256,
677 OPAL_PHB4_NUM_PEST_REGS = 512
676};
677
678struct OpalIoPhbErrorCommon {
679 __be32 version;
680 __be32 ioType;
681 __be32 len;
682};
683

--- 113 unchanged lines hidden (view full) ---

797 __be64 dma1ErrorStatus; /* E00 */
798 __be64 dma1FirstErrorStatus; /* E08 */
799 __be64 dma1ErrorLog0; /* E40 */
800 __be64 dma1ErrorLog1; /* E48 */
801 __be64 pestA[OPAL_PHB3_NUM_PEST_REGS];
802 __be64 pestB[OPAL_PHB3_NUM_PEST_REGS];
803};
804
678};
679
680struct OpalIoPhbErrorCommon {
681 __be32 version;
682 __be32 ioType;
683 __be32 len;
684};
685

--- 113 unchanged lines hidden (view full) ---

799 __be64 dma1ErrorStatus; /* E00 */
800 __be64 dma1FirstErrorStatus; /* E08 */
801 __be64 dma1ErrorLog0; /* E40 */
802 __be64 dma1ErrorLog1; /* E48 */
803 __be64 pestA[OPAL_PHB3_NUM_PEST_REGS];
804 __be64 pestB[OPAL_PHB3_NUM_PEST_REGS];
805};
806
807struct OpalIoPhb4ErrorData {
808 struct OpalIoPhbErrorCommon common;
809
810 __be32 brdgCtl;
811
812 /* PHB4 cfg regs */
813 __be32 deviceStatus;
814 __be32 slotStatus;
815 __be32 linkStatus;
816 __be32 devCmdStatus;
817 __be32 devSecStatus;
818
819 /* cfg AER regs */
820 __be32 rootErrorStatus;
821 __be32 uncorrErrorStatus;
822 __be32 corrErrorStatus;
823 __be32 tlpHdr1;
824 __be32 tlpHdr2;
825 __be32 tlpHdr3;
826 __be32 tlpHdr4;
827 __be32 sourceId;
828
829 /* PHB4 ETU Error Regs */
830 __be64 nFir; /* 000 */
831 __be64 nFirMask; /* 003 */
832 __be64 nFirWOF; /* 008 */
833 __be64 phbPlssr; /* 120 */
834 __be64 phbCsr; /* 110 */
835 __be64 lemFir; /* C00 */
836 __be64 lemErrorMask; /* C18 */
837 __be64 lemWOF; /* C40 */
838 __be64 phbErrorStatus; /* C80 */
839 __be64 phbFirstErrorStatus; /* C88 */
840 __be64 phbErrorLog0; /* CC0 */
841 __be64 phbErrorLog1; /* CC8 */
842 __be64 phbTxeErrorStatus; /* D00 */
843 __be64 phbTxeFirstErrorStatus; /* D08 */
844 __be64 phbTxeErrorLog0; /* D40 */
845 __be64 phbTxeErrorLog1; /* D48 */
846 __be64 phbRxeArbErrorStatus; /* D80 */
847 __be64 phbRxeArbFirstErrorStatus; /* D88 */
848 __be64 phbRxeArbErrorLog0; /* DC0 */
849 __be64 phbRxeArbErrorLog1; /* DC8 */
850 __be64 phbRxeMrgErrorStatus; /* E00 */
851 __be64 phbRxeMrgFirstErrorStatus; /* E08 */
852 __be64 phbRxeMrgErrorLog0; /* E40 */
853 __be64 phbRxeMrgErrorLog1; /* E48 */
854 __be64 phbRxeTceErrorStatus; /* E80 */
855 __be64 phbRxeTceFirstErrorStatus; /* E88 */
856 __be64 phbRxeTceErrorLog0; /* EC0 */
857 __be64 phbRxeTceErrorLog1; /* EC8 */
858
859 /* PHB4 REGB Error Regs */
860 __be64 phbPblErrorStatus; /* 1900 */
861 __be64 phbPblFirstErrorStatus; /* 1908 */
862 __be64 phbPblErrorLog0; /* 1940 */
863 __be64 phbPblErrorLog1; /* 1948 */
864 __be64 phbPcieDlpErrorLog1; /* 1AA0 */
865 __be64 phbPcieDlpErrorLog2; /* 1AA8 */
866 __be64 phbPcieDlpErrorStatus; /* 1AB0 */
867 __be64 phbRegbErrorStatus; /* 1C00 */
868 __be64 phbRegbFirstErrorStatus; /* 1C08 */
869 __be64 phbRegbErrorLog0; /* 1C40 */
870 __be64 phbRegbErrorLog1; /* 1C48 */
871
872 __be64 pestA[OPAL_PHB4_NUM_PEST_REGS];
873 __be64 pestB[OPAL_PHB4_NUM_PEST_REGS];
874};
875
805enum {
806 OPAL_REINIT_CPUS_HILE_BE = (1 << 0),
807 OPAL_REINIT_CPUS_HILE_LE = (1 << 1),
808};
809
810typedef struct oppanel_line {
811 __be64 line;
812 __be64 line_len;

--- 59 unchanged lines hidden (view full) ---

872
873/* CAPI modes for PHB */
874enum {
875 OPAL_PHB_CAPI_MODE_PCIE = 0,
876 OPAL_PHB_CAPI_MODE_CAPI = 1,
877 OPAL_PHB_CAPI_MODE_SNOOP_OFF = 2,
878 OPAL_PHB_CAPI_MODE_SNOOP_ON = 3,
879 OPAL_PHB_CAPI_MODE_DMA = 4,
876enum {
877 OPAL_REINIT_CPUS_HILE_BE = (1 << 0),
878 OPAL_REINIT_CPUS_HILE_LE = (1 << 1),
879};
880
881typedef struct oppanel_line {
882 __be64 line;
883 __be64 line_len;

--- 59 unchanged lines hidden (view full) ---

943
944/* CAPI modes for PHB */
945enum {
946 OPAL_PHB_CAPI_MODE_PCIE = 0,
947 OPAL_PHB_CAPI_MODE_CAPI = 1,
948 OPAL_PHB_CAPI_MODE_SNOOP_OFF = 2,
949 OPAL_PHB_CAPI_MODE_SNOOP_ON = 3,
950 OPAL_PHB_CAPI_MODE_DMA = 4,
951 OPAL_PHB_CAPI_MODE_DMA_TVT1 = 5,
880};
881
882/* OPAL I2C request */
883struct opal_i2c_request {
884 uint8_t type;
885#define OPAL_I2C_RAW_READ 0
886#define OPAL_I2C_RAW_WRITE 1
887#define OPAL_I2C_SM_READ 2

--- 121 unchanged lines hidden ---
952};
953
954/* OPAL I2C request */
955struct opal_i2c_request {
956 uint8_t type;
957#define OPAL_I2C_RAW_READ 0
958#define OPAL_I2C_RAW_WRITE 1
959#define OPAL_I2C_SM_READ 2

--- 121 unchanged lines hidden ---