From cb3205d153b7fa80aef4f91c5b5aa3ba636dc777 Mon Sep 17 00:00:00 2001 From: Stefan Reinauer Date: Tue, 27 Jun 2017 00:38:32 +0200 Subject: sis/sis966: Clean up sata.c Wow, this one is disliked by clang for the empty for() loop, but looking at the file just makes my eyes bleed a little bit. I remember the circumstances under which we let this code go in. It was supposed to save contributions from a vendor, but that never worked out. Just to keep the little chunks down, here's an indent run and some of the cruft removed that doesn't actually contribute to functionality in any way. Change-Id: Ie82166ca82f09c4b66decfde5ad194a2d70b0708 Signed-off-by: Stefan Reinauer Reviewed-on: https://review.coreboot.org/20386 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi --- src/southbridge/sis/sis966/sata.c | 214 ++++++++++++++++++-------------------- 1 file changed, 100 insertions(+), 114 deletions(-) (limited to 'src') diff --git a/src/southbridge/sis/sis966/sata.c b/src/southbridge/sis/sis966/sata.c index 3f114a0148..b9e843229d 100644 --- a/src/southbridge/sis/sis966/sata.c +++ b/src/southbridge/sis/sis966/sata.c @@ -28,94 +28,93 @@ #include "sis966.h" #include -uint8_t SiS_SiS1183_init[68][3]={ -{0x04, 0x00, 0x05}, -{0x09, 0x00, 0x05}, -{0x2C, 0x00, 0x39}, -{0x2D, 0x00, 0x10}, -{0x2E, 0x00, 0x83}, -{0x2F, 0x00, 0x11}, -{0x90, 0x00, 0x40}, -{0x91, 0x00, 0x00}, // set mode -{0x50, 0x00, 0xA2}, -{0x52, 0x00, 0xA2}, -{0x55, 0x00, 0x96}, -{0x52, 0x00, 0xA2}, -{0x55, 0xF7, 0x00}, -{0x56, 0x00, 0xC0}, -{0x57, 0x00, 0x14}, -{0x67, 0x00, 0x28}, -{0x81, 0x00, 0xB3}, -{0x82, 0x00, 0x72}, -{0x83, 0x00, 0x40}, -{0x85, 0x00, 0xB3}, -{0x86, 0x00, 0x72}, -{0x87, 0x00, 0x40}, -{0x88, 0x00, 0xDE}, // after set mode -{0x89, 0x00, 0xB3}, -{0x8A, 0x00, 0x72}, -{0x8B, 0x00, 0x40}, -{0x8C, 0x00, 0xDE}, -{0x8D, 0x00, 0xB3}, -{0x8E, 0x00, 0x92}, -{0x8F, 0x00, 0x40}, -{0x93, 0x00, 0x00}, -{0x94, 0x00, 0x80}, -{0x95, 0x00, 0x08}, -{0x96, 0x00, 0x80}, -{0x97, 0x00, 0x08}, -{0x9C, 0x00, 0x80}, -{0x9D, 0x00, 0x08}, -{0x9E, 0x00, 0x80}, -{0x9F, 0x00, 0x08}, -{0xA0, 0x00, 0x15}, -{0xA1, 0x00, 0x15}, -{0xA2, 0x00, 0x15}, -{0xA3, 0x00, 0x15}, - - -{0xD8, 0xFE, 0x01}, // Com reset -{0xC8, 0xFE, 0x01}, -{0xE8, 0xFE, 0x01}, -{0xF8, 0xFE, 0x01}, - -{0xD8, 0xFE, 0x00}, // Com reset -{0xC8, 0xFE, 0x00}, -{0xE8, 0xFE, 0x00}, -{0xF8, 0xFE, 0x00}, - - -{0xC4, 0xFF, 0xFF}, // Clear status -{0xC5, 0xFF, 0xFF}, -{0xC6, 0xFF, 0xFF}, -{0xC7, 0xFF, 0xFF}, -{0xD4, 0xFF, 0xFF}, -{0xD5, 0xFF, 0xFF}, -{0xD6, 0xFF, 0xFF}, -{0xD7, 0xFF, 0xFF}, -{0xE4, 0xFF, 0xFF}, // Clear status -{0xE5, 0xFF, 0xFF}, -{0xE6, 0xFF, 0xFF}, -{0xE7, 0xFF, 0xFF}, -{0xF4, 0xFF, 0xFF}, -{0xF5, 0xFF, 0xFF}, -{0xF6, 0xFF, 0xFF}, -{0xF7, 0xFF, 0xFF}, - -{0x00, 0x00, 0x00} //End of table +uint8_t SiS_SiS1183_init[68][3] = { + {0x04, 0x00, 0x05}, + {0x09, 0x00, 0x05}, + {0x2C, 0x00, 0x39}, + {0x2D, 0x00, 0x10}, + {0x2E, 0x00, 0x83}, + {0x2F, 0x00, 0x11}, + {0x90, 0x00, 0x40}, + {0x91, 0x00, 0x00}, // set mode + {0x50, 0x00, 0xA2}, + {0x52, 0x00, 0xA2}, + {0x55, 0x00, 0x96}, + {0x52, 0x00, 0xA2}, + {0x55, 0xF7, 0x00}, + {0x56, 0x00, 0xC0}, + {0x57, 0x00, 0x14}, + {0x67, 0x00, 0x28}, + {0x81, 0x00, 0xB3}, + {0x82, 0x00, 0x72}, + {0x83, 0x00, 0x40}, + {0x85, 0x00, 0xB3}, + {0x86, 0x00, 0x72}, + {0x87, 0x00, 0x40}, + {0x88, 0x00, 0xDE}, // after set mode + {0x89, 0x00, 0xB3}, + {0x8A, 0x00, 0x72}, + {0x8B, 0x00, 0x40}, + {0x8C, 0x00, 0xDE}, + {0x8D, 0x00, 0xB3}, + {0x8E, 0x00, 0x92}, + {0x8F, 0x00, 0x40}, + {0x93, 0x00, 0x00}, + {0x94, 0x00, 0x80}, + {0x95, 0x00, 0x08}, + {0x96, 0x00, 0x80}, + {0x97, 0x00, 0x08}, + {0x9C, 0x00, 0x80}, + {0x9D, 0x00, 0x08}, + {0x9E, 0x00, 0x80}, + {0x9F, 0x00, 0x08}, + {0xA0, 0x00, 0x15}, + {0xA1, 0x00, 0x15}, + {0xA2, 0x00, 0x15}, + {0xA3, 0x00, 0x15}, + + {0xD8, 0xFE, 0x01}, // Com reset + {0xC8, 0xFE, 0x01}, + {0xE8, 0xFE, 0x01}, + {0xF8, 0xFE, 0x01}, + + {0xD8, 0xFE, 0x00}, // Com reset + {0xC8, 0xFE, 0x00}, + {0xE8, 0xFE, 0x00}, + {0xF8, 0xFE, 0x00}, + + {0xC4, 0xFF, 0xFF}, // Clear status + {0xC5, 0xFF, 0xFF}, + {0xC6, 0xFF, 0xFF}, + {0xC7, 0xFF, 0xFF}, + {0xD4, 0xFF, 0xFF}, + {0xD5, 0xFF, 0xFF}, + {0xD6, 0xFF, 0xFF}, + {0xD7, 0xFF, 0xFF}, + {0xE4, 0xFF, 0xFF}, // Clear status + {0xE5, 0xFF, 0xFF}, + {0xE6, 0xFF, 0xFF}, + {0xE7, 0xFF, 0xFF}, + {0xF4, 0xFF, 0xFF}, + {0xF5, 0xFF, 0xFF}, + {0xF6, 0xFF, 0xFF}, + {0xF7, 0xFF, 0xFF}, + + {0x00, 0x00, 0x00} // End of table }; static void sata_init(struct device *dev) { struct southbridge_sis_sis966_config *conf; + int i; + uint32_t temp32; + uint8_t temp8; conf = dev->chip_info; printk(BIOS_DEBUG, "SATA_INIT:---------->\n"); -//-------------- enable IDE (SiS1183) ------------------------- -{ - uint8_t temp8; - int i=0; + /* Enable IDE (SiS1183) */ + i = 0; while (SiS_SiS1183_init[i][0] != 0) { temp8 = pci_read_config8(dev, SiS_SiS1183_init[i][0]); temp8 &= SiS_SiS1183_init[i][1]; @@ -123,64 +122,51 @@ static void sata_init(struct device *dev) pci_write_config8(dev, SiS_SiS1183_init[i][0], temp8); i++; }; -} -//----------------------------------------------------------- -{ -uint32_t i,j; -uint32_t temp32; - -for (i=0;i<10;i++) { - temp32=0; - temp32= pci_read_config32(dev, 0xC0); - for ( j=0;j<0xFFFF;j++); - printk(BIOS_DEBUG, "status= %x\n",temp32); - if (((temp32&0xF) == 0x3) || ((temp32&0xF) == 0x0)) break; -} - -} + for (i = 0; i < 10; i++) { + temp32 = pci_read_config32(dev, 0xC0); + printk(BIOS_DEBUG, "status= %x\n", temp32); + if (((temp32 & 0xF) == 0x3) || ((temp32 & 0xF) == 0x0)) + break; + } #if DEBUG_SATA -{ - int i; - printk(BIOS_DEBUG, "****** SATA PCI config ******"); printk(BIOS_DEBUG, "\n 03020100 07060504 0B0A0908 0F0E0D0C"); - for (i=0;i<0xff;i+=4) { - if ((i%16)==0) + for (i = 0; i < 0xff; i += 4) { + if ((i % 16) == 0) printk(BIOS_DEBUG, "\n%02x: ", i); - printk(BIOS_DEBUG, "%08x ", pci_read_config32(dev,i)); + printk(BIOS_DEBUG, "%08x ", pci_read_config32(dev, i)); } printk(BIOS_DEBUG, "\n"); -} #endif printk(BIOS_DEBUG, "SATA_INIT:<----------\n"); - } static void lpci_set_subsystem(device_t dev, unsigned vendor, unsigned device) { pci_write_config32(dev, 0x40, - ((device & 0xffff) << 16) | (vendor & 0xffff)); + ((device & 0xffff) << 16) | (vendor & 0xffff)); } + static struct pci_operations lops_pci = { - .set_subsystem = lpci_set_subsystem, + .set_subsystem = lpci_set_subsystem, }; static struct device_operations sata_ops = { - .read_resources = pci_dev_read_resources, - .set_resources = pci_dev_set_resources, - .enable_resources = pci_dev_enable_resources, -// .enable = sis966_enable, - .init = sata_init, - .scan_bus = 0, - .ops_pci = &lops_pci, + .read_resources = pci_dev_read_resources, + .set_resources = pci_dev_set_resources, + .enable_resources = pci_dev_enable_resources, +// .enable = sis966_enable, + .init = sata_init, + .scan_bus = 0, + .ops_pci = &lops_pci, }; static const struct pci_driver sata0_driver __pci_driver = { - .ops = &sata_ops, - .vendor = PCI_VENDOR_ID_SIS, - .device = PCI_DEVICE_ID_SIS_SIS966_SATA, + .ops = &sata_ops, + .vendor = PCI_VENDOR_ID_SIS, + .device = PCI_DEVICE_ID_SIS_SIS966_SATA, }; -- cgit v1.2.3