cregit-Linux how code gets into the kernel

Release 4.14 drivers/pci/pci-mid.c

Directory: drivers/pci
/*
 * Intel MID platform PM support
 *
 * Copyright (C) 2016, Intel Corporation
 *
 * Author: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms and conditions of the GNU General Public License,
 * version 2, as published by the Free Software Foundation.
 */

#include <linux/init.h>
#include <linux/pci.h>

#include <asm/cpu_device_id.h>
#include <asm/intel-family.h>
#include <asm/intel-mid.h>

#include "pci.h"


static bool mid_pci_power_manageable(struct pci_dev *dev) { return true; }

Contributors

PersonTokensPropCommitsCommitProp
Andy Shevchenko14100.00%1100.00%
Total14100.00%1100.00%


static int mid_pci_set_power_state(struct pci_dev *pdev, pci_power_t state) { return intel_mid_pci_set_power_state(pdev, state); }

Contributors

PersonTokensPropCommitsCommitProp
Andy Shevchenko22100.00%1100.00%
Total22100.00%1100.00%


static pci_power_t mid_pci_get_power_state(struct pci_dev *pdev) { return intel_mid_pci_get_power_state(pdev); }

Contributors

PersonTokensPropCommitsCommitProp
Lukas Wunner17100.00%1100.00%
Total17100.00%1100.00%


static pci_power_t mid_pci_choose_state(struct pci_dev *pdev) { return PCI_D3hot; }

Contributors

PersonTokensPropCommitsCommitProp
Andy Shevchenko14100.00%1100.00%
Total14100.00%1100.00%


static int mid_pci_wakeup(struct pci_dev *dev, bool enable) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Andy Shevchenko1694.12%150.00%
Rafael J. Wysocki15.88%150.00%
Total17100.00%2100.00%


static bool mid_pci_need_resume(struct pci_dev *dev) { return false; }

Contributors

PersonTokensPropCommitsCommitProp
Andy Shevchenko14100.00%1100.00%
Total14100.00%1100.00%

static const struct pci_platform_pm_ops mid_pci_platform_pm = { .is_manageable = mid_pci_power_manageable, .set_state = mid_pci_set_power_state, .get_state = mid_pci_get_power_state, .choose_state = mid_pci_choose_state, .set_wakeup = mid_pci_wakeup, .need_resume = mid_pci_need_resume, }; #define ICPU(model) { X86_VENDOR_INTEL, 6, model, X86_FEATURE_ANY, } /* * This table should be in sync with the one in * arch/x86/platform/intel-mid/pwr.c. */ static const struct x86_cpu_id lpss_cpu_ids[] = { ICPU(INTEL_FAM6_ATOM_PENWELL), ICPU(INTEL_FAM6_ATOM_MERRIFIELD), {} };
static int __init mid_pci_init(void) { const struct x86_cpu_id *id; id = x86_match_cpu(lpss_cpu_ids); if (id) pci_set_platform_pm(&mid_pci_platform_pm); return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Andy Shevchenko35100.00%1100.00%
Total35100.00%1100.00%

arch_initcall(mid_pci_init);

Overall Contributors

PersonTokensPropCommitsCommitProp
Andy Shevchenko19888.39%350.00%
Lukas Wunner2310.27%233.33%
Rafael J. Wysocki31.34%116.67%
Total224100.00%6100.00%
Directory: drivers/pci
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.