Lines Matching defs:PIIX4_dev

230 static bool piix4_sb800_use_mmio(struct pci_dev *PIIX4_dev)
237 return (PIIX4_dev->vendor == PCI_VENDOR_ID_AMD &&
238 PIIX4_dev->device == PCI_DEVICE_ID_AMD_KERNCZ_SMBUS &&
239 PIIX4_dev->revision >= 0x51);
242 static int piix4_setup(struct pci_dev *PIIX4_dev,
248 if ((PIIX4_dev->vendor == PCI_VENDOR_ID_SERVERWORKS) &&
249 (PIIX4_dev->device == PCI_DEVICE_ID_SERVERWORKS_CSB5))
255 dev_err(&PIIX4_dev->dev,
262 PIIX4_dev->vendor == PCI_VENDOR_ID_INTEL) {
263 dev_err(&PIIX4_dev->dev, "IBM system detected; this module "
274 pci_read_config_word(PIIX4_dev, SMBBA, &piix4_smba);
277 dev_err(&PIIX4_dev->dev, "SMBus base address "
288 dev_err(&PIIX4_dev->dev, "SMBus region 0x%x already in use!\n",
293 pci_read_config_byte(PIIX4_dev, SMBHSTCFG, &temp);
298 pci_write_config_byte(PIIX4_dev, SMBHSTCFG, temp & 0xfe);
299 pci_write_config_word(PIIX4_dev, SMBBA, piix4_smba);
300 pci_write_config_byte(PIIX4_dev, SMBHSTCFG, temp | 0x01);
301 dev_info(&PIIX4_dev->dev, "WARNING: SMBus interface set to "
313 pci_write_config_byte(PIIX4_dev, SMBHSTCFG,
315 dev_notice(&PIIX4_dev->dev,
318 dev_err(&PIIX4_dev->dev,
326 dev_dbg(&PIIX4_dev->dev, "Using IRQ for SMBus\n");
328 dev_dbg(&PIIX4_dev->dev, "Using SMI# for SMBus\n");
330 dev_err(&PIIX4_dev->dev, "Illegal Interrupt configuration "
333 pci_read_config_byte(PIIX4_dev, SMBREV, &temp);
334 dev_info(&PIIX4_dev->dev,
341 static int piix4_setup_sb800_smba(struct pci_dev *PIIX4_dev,
352 mmio_cfg.use_mmio = piix4_sb800_use_mmio(PIIX4_dev);
353 retval = piix4_sb800_region_request(&PIIX4_dev->dev, &mmio_cfg);
367 piix4_sb800_region_release(&PIIX4_dev->dev, &mmio_cfg);
380 dev_err(&PIIX4_dev->dev,
388 static int piix4_setup_sb800(struct pci_dev *PIIX4_dev,
399 dev_err(&PIIX4_dev->dev, "SMBus does not support "
405 if ((PIIX4_dev->vendor == PCI_VENDOR_ID_AMD &&
406 PIIX4_dev->device == PCI_DEVICE_ID_AMD_HUDSON2_SMBUS &&
407 PIIX4_dev->revision >= 0x41) ||
408 (PIIX4_dev->vendor == PCI_VENDOR_ID_AMD &&
409 PIIX4_dev->device == PCI_DEVICE_ID_AMD_KERNCZ_SMBUS &&
410 PIIX4_dev->revision >= 0x49) ||
411 (PIIX4_dev->vendor == PCI_VENDOR_ID_HYGON &&
412 PIIX4_dev->device == PCI_DEVICE_ID_AMD_KERNCZ_SMBUS))
417 retval = piix4_setup_sb800_smba(PIIX4_dev, smb_en, aux, &smb_en_status,
427 dev_err(&PIIX4_dev->dev, "SMBus region 0x%x already in use!\n",
434 dev_info(&PIIX4_dev->dev,
442 dev_err(&PIIX4_dev->dev, "SMBus I2C bus config region "
451 dev_dbg(&PIIX4_dev->dev, "Using IRQ for SMBus\n");
453 dev_dbg(&PIIX4_dev->dev, "Using SMI# for SMBus\n");
455 dev_info(&PIIX4_dev->dev,
460 if (PIIX4_dev->vendor == PCI_VENDOR_ID_AMD ||
461 PIIX4_dev->vendor == PCI_VENDOR_ID_HYGON) {
462 if (PIIX4_dev->device == PCI_DEVICE_ID_AMD_KERNCZ_SMBUS ||
463 (PIIX4_dev->device == PCI_DEVICE_ID_AMD_HUDSON2_SMBUS &&
464 PIIX4_dev->revision >= 0x1F)) {
474 mmio_cfg.use_mmio = piix4_sb800_use_mmio(PIIX4_dev);
475 retval = piix4_sb800_region_request(&PIIX4_dev->dev, &mmio_cfg);
488 piix4_sb800_region_release(&PIIX4_dev->dev, &mmio_cfg);
491 dev_info(&PIIX4_dev->dev,
498 static int piix4_setup_aux(struct pci_dev *PIIX4_dev,
508 pci_read_config_word(PIIX4_dev, base_reg_addr, &piix4_smba);
510 dev_dbg(&PIIX4_dev->dev,
517 dev_dbg(&PIIX4_dev->dev,
526 dev_err(&PIIX4_dev->dev, "Auxiliary SMBus region 0x%x "
531 dev_info(&PIIX4_dev->dev,