Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b34497d1 authored by Gavin Shan's avatar Gavin Shan Committed by Benjamin Herrenschmidt
Browse files

powerpc/powernv: Remove fields in PHB diag-data dump



For some fields (e.g. LEM, MMIO, DMA) in PHB diag-data dump, it's
meaningless to print them if they have non-zero value in the
corresponding mask registers because we always have non-zero values
in the mask registers. The patch only prints those fieds if we
have non-zero values in the primary registers (e.g. LEM, MMIO, DMA
status) so that we can save couple of lines. The patch also removes
unnecessary spare line before "brdgCtl:" and two leading spaces as
prefix in each line as Ben suggested.

Signed-off-by: default avatarGavin Shan <gwshan@linux.vnet.ibm.com>
Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
parent f5bc6b70
Loading
Loading
Loading
Loading
+40 −51
Original line number Diff line number Diff line
@@ -131,7 +131,7 @@ static void pnv_pci_dump_p7ioc_diag_data(struct pci_controller *hose,
	int i;

	data = (struct OpalIoP7IOCPhbErrorData *)common;
	pr_info("P7IOC PHB#%d Diag-data (Version: %d)\n\n",
	pr_info("P7IOC PHB#%d Diag-data (Version: %d)\n",
		hose->global_number, common->version);

	if (data->brdgCtl)
@@ -167,28 +167,23 @@ static void pnv_pci_dump_p7ioc_diag_data(struct pci_controller *hose,
	if (data->p7iocPlssr || data->p7iocCsr)
		pr_info("PhbSts:      %016llx %016llx\n",
			data->p7iocPlssr, data->p7iocCsr);
	if (data->lemFir || data->lemErrorMask ||
	    data->lemWOF)
	if (data->lemFir)
		pr_info("Lem:         %016llx %016llx %016llx\n",
			data->lemFir, data->lemErrorMask,
			data->lemWOF);
	if (data->phbErrorStatus || data->phbFirstErrorStatus ||
	    data->phbErrorLog0   || data->phbErrorLog1)
	if (data->phbErrorStatus)
		pr_info("PhbErr:      %016llx %016llx %016llx %016llx\n",
			data->phbErrorStatus, data->phbFirstErrorStatus,
			data->phbErrorLog0, data->phbErrorLog1);
	if (data->mmioErrorStatus || data->mmioFirstErrorStatus ||
	    data->mmioErrorLog0   || data->mmioErrorLog1)
	if (data->mmioErrorStatus)
		pr_info("OutErr:      %016llx %016llx %016llx %016llx\n",
			data->mmioErrorStatus, data->mmioFirstErrorStatus,
			data->mmioErrorLog0, data->mmioErrorLog1);
	if (data->dma0ErrorStatus || data->dma0FirstErrorStatus ||
	    data->dma0ErrorLog0   || data->dma0ErrorLog1)
	if (data->dma0ErrorStatus)
		pr_info("InAErr:      %016llx %016llx %016llx %016llx\n",
			data->dma0ErrorStatus, data->dma0FirstErrorStatus,
			data->dma0ErrorLog0, data->dma0ErrorLog1);
	if (data->dma1ErrorStatus || data->dma1FirstErrorStatus ||
	    data->dma1ErrorLog0   || data->dma1ErrorLog1)
	if (data->dma1ErrorStatus)
		pr_info("InBErr:      %016llx %016llx %016llx %016llx\n",
			data->dma1ErrorStatus, data->dma1FirstErrorStatus,
			data->dma1ErrorLog0, data->dma1ErrorLog1);
@@ -210,7 +205,7 @@ static void pnv_pci_dump_phb3_diag_data(struct pci_controller *hose,
	int i;

	data = (struct OpalIoPhb3ErrorData*)common;
	pr_info("PHB3 PHB#%d Diag-data (Version: %d)\n\n",
	pr_info("PHB3 PHB#%d Diag-data (Version: %d)\n",
		hose->global_number, common->version);
	if (data->brdgCtl)
		pr_info("brdgCtl:     %08x\n",
@@ -242,36 +237,30 @@ static void pnv_pci_dump_phb3_diag_data(struct pci_controller *hose,
		pr_info("RootErrLog1: %08x %016llx %016llx\n",
			data->sourceId, data->errorClass,
			data->correlator);
	if (data->nFir || data->nFirMask ||
	    data->nFirWOF)
	if (data->nFir)
		pr_info("nFir:        %016llx %016llx %016llx\n",
			data->nFir, data->nFirMask,
			data->nFirWOF);
	if (data->phbPlssr || data->phbCsr)
		pr_info("PhbSts:      %016llx %016llx\n",
			data->phbPlssr, data->phbCsr);
	if (data->lemFir || data->lemErrorMask ||
	    data->lemWOF)
	if (data->lemFir)
		pr_info("Lem:         %016llx %016llx %016llx\n",
			data->lemFir, data->lemErrorMask,
			data->lemWOF);
	if (data->phbErrorStatus || data->phbFirstErrorStatus ||
	    data->phbErrorLog0   || data->phbErrorLog1)
	if (data->phbErrorStatus)
		pr_info("PhbErr:      %016llx %016llx %016llx %016llx\n",
			data->phbErrorStatus, data->phbFirstErrorStatus,
			data->phbErrorLog0, data->phbErrorLog1);
	if (data->mmioErrorStatus || data->mmioFirstErrorStatus ||
	    data->mmioErrorLog0   || data->mmioErrorLog1)
	if (data->mmioErrorStatus)
		pr_info("OutErr:      %016llx %016llx %016llx %016llx\n",
			data->mmioErrorStatus, data->mmioFirstErrorStatus,
			data->mmioErrorLog0, data->mmioErrorLog1);
	if (data->dma0ErrorStatus || data->dma0FirstErrorStatus ||
	    data->dma0ErrorLog0   || data->dma0ErrorLog1)
	if (data->dma0ErrorStatus)
		pr_info("InAErr:      %016llx %016llx %016llx %016llx\n",
			data->dma0ErrorStatus, data->dma0FirstErrorStatus,
			data->dma0ErrorLog0, data->dma0ErrorLog1);
	if (data->dma1ErrorStatus || data->dma1FirstErrorStatus ||
	    data->dma1ErrorLog0   || data->dma1ErrorLog1)
	if (data->dma1ErrorStatus)
		pr_info("InBErr:      %016llx %016llx %016llx %016llx\n",
			data->dma1ErrorStatus, data->dma1FirstErrorStatus,
			data->dma1ErrorLog0, data->dma1ErrorLog1);