aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/platform/x86/pmc_atom.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/platform/x86/pmc_atom.c')
-rw-r--r--drivers/platform/x86/pmc_atom.c43
1 files changed, 10 insertions, 33 deletions
diff --git a/drivers/platform/x86/pmc_atom.c b/drivers/platform/x86/pmc_atom.c
index b1d804376237..2104e1ad38d9 100644
--- a/drivers/platform/x86/pmc_atom.c
+++ b/drivers/platform/x86/pmc_atom.c
@@ -350,45 +350,24 @@ static int pmc_sleep_tmr_show(struct seq_file *s, void *unused)
350 350
351DEFINE_SHOW_ATTRIBUTE(pmc_sleep_tmr); 351DEFINE_SHOW_ATTRIBUTE(pmc_sleep_tmr);
352 352
353static void pmc_dbgfs_unregister(struct pmc_dev *pmc) 353static void pmc_dbgfs_register(struct pmc_dev *pmc)
354{ 354{
355 debugfs_remove_recursive(pmc->dbgfs_dir); 355 struct dentry *dir;
356}
357
358static int pmc_dbgfs_register(struct pmc_dev *pmc)
359{
360 struct dentry *dir, *f;
361 356
362 dir = debugfs_create_dir("pmc_atom", NULL); 357 dir = debugfs_create_dir("pmc_atom", NULL);
363 if (!dir)
364 return -ENOMEM;
365 358
366 pmc->dbgfs_dir = dir; 359 pmc->dbgfs_dir = dir;
367 360
368 f = debugfs_create_file("dev_state", S_IFREG | S_IRUGO, 361 debugfs_create_file("dev_state", S_IFREG | S_IRUGO, dir, pmc,
369 dir, pmc, &pmc_dev_state_fops); 362 &pmc_dev_state_fops);
370 if (!f) 363 debugfs_create_file("pss_state", S_IFREG | S_IRUGO, dir, pmc,
371 goto err; 364 &pmc_pss_state_fops);
372 365 debugfs_create_file("sleep_state", S_IFREG | S_IRUGO, dir, pmc,
373 f = debugfs_create_file("pss_state", S_IFREG | S_IRUGO, 366 &pmc_sleep_tmr_fops);
374 dir, pmc, &pmc_pss_state_fops);
375 if (!f)
376 goto err;
377
378 f = debugfs_create_file("sleep_state", S_IFREG | S_IRUGO,
379 dir, pmc, &pmc_sleep_tmr_fops);
380 if (!f)
381 goto err;
382
383 return 0;
384err:
385 pmc_dbgfs_unregister(pmc);
386 return -ENODEV;
387} 367}
388#else 368#else
389static int pmc_dbgfs_register(struct pmc_dev *pmc) 369static void pmc_dbgfs_register(struct pmc_dev *pmc)
390{ 370{
391 return 0;
392} 371}
393#endif /* CONFIG_DEBUG_FS */ 372#endif /* CONFIG_DEBUG_FS */
394 373
@@ -500,9 +479,7 @@ static int pmc_setup_dev(struct pci_dev *pdev, const struct pci_device_id *ent)
500 /* PMC hardware registers setup */ 479 /* PMC hardware registers setup */
501 pmc_hw_reg_setup(pmc); 480 pmc_hw_reg_setup(pmc);
502 481
503 ret = pmc_dbgfs_register(pmc); 482 pmc_dbgfs_register(pmc);
504 if (ret)
505 dev_warn(&pdev->dev, "debugfs register failed\n");
506 483
507 /* Register platform clocks - PMC_PLT_CLK [0..5] */ 484 /* Register platform clocks - PMC_PLT_CLK [0..5] */
508 ret = pmc_setup_clks(pdev, pmc->regmap, data); 485 ret = pmc_setup_clks(pdev, pmc->regmap, data);