Lines Matching refs:dev_info

290 	void (*init)(struct cpc925_dev_info *dev_info);
291 void (*exit)(struct cpc925_dev_info *dev_info);
643 static void cpc925_cpu_init(struct cpc925_dev_info *dev_info) in cpc925_cpu_init() argument
648 apimask = __raw_readl(dev_info->vbase + REG_APIMASK_OFFSET); in cpc925_cpu_init()
660 __raw_writel(apimask, dev_info->vbase + REG_APIMASK_OFFSET); in cpc925_cpu_init()
664 static void cpc925_cpu_exit(struct cpc925_dev_info *dev_info) in cpc925_cpu_exit() argument
683 struct cpc925_dev_info *dev_info = edac_dev->pvt_info; in cpc925_cpu_check() local
688 apiexcp = __raw_readl(dev_info->vbase + REG_APIEXCP_OFFSET); in cpc925_cpu_check()
695 apimask = __raw_readl(dev_info->vbase + REG_APIMASK_OFFSET); in cpc925_cpu_check()
706 static void cpc925_htlink_init(struct cpc925_dev_info *dev_info) in cpc925_htlink_init() argument
710 ht_errctrl = __raw_readl(dev_info->vbase + REG_ERRCTRL_OFFSET); in cpc925_htlink_init()
713 __raw_writel(ht_errctrl, dev_info->vbase + REG_ERRCTRL_OFFSET); in cpc925_htlink_init()
718 static void cpc925_htlink_exit(struct cpc925_dev_info *dev_info) in cpc925_htlink_exit() argument
722 ht_errctrl = __raw_readl(dev_info->vbase + REG_ERRCTRL_OFFSET); in cpc925_htlink_exit()
724 __raw_writel(ht_errctrl, dev_info->vbase + REG_ERRCTRL_OFFSET); in cpc925_htlink_exit()
730 struct cpc925_dev_info *dev_info = edac_dev->pvt_info; in cpc925_htlink_check() local
731 u32 brgctrl = __raw_readl(dev_info->vbase + REG_BRGCTRL_OFFSET); in cpc925_htlink_check()
732 u32 linkctrl = __raw_readl(dev_info->vbase + REG_LINKCTRL_OFFSET); in cpc925_htlink_check()
733 u32 errctrl = __raw_readl(dev_info->vbase + REG_ERRCTRL_OFFSET); in cpc925_htlink_check()
734 u32 linkerr = __raw_readl(dev_info->vbase + REG_LINKERR_OFFSET); in cpc925_htlink_check()
756 dev_info->vbase + REG_BRGCTRL_OFFSET); in cpc925_htlink_check()
760 dev_info->vbase + REG_LINKCTRL_OFFSET); in cpc925_htlink_check()
765 dev_info->vbase + REG_BRGCTRL_OFFSET); in cpc925_htlink_check()
769 dev_info->vbase + REG_ERRCTRL_OFFSET); in cpc925_htlink_check()
773 dev_info->vbase + REG_LINKERR_OFFSET); in cpc925_htlink_check()
803 struct cpc925_dev_info *dev_info; in cpc925_add_edac_devices() local
810 for (dev_info = &cpc925_devs[0]; dev_info->init; dev_info++) { in cpc925_add_edac_devices()
811 dev_info->vbase = vbase; in cpc925_add_edac_devices()
812 dev_info->pdev = platform_device_register_simple( in cpc925_add_edac_devices()
813 dev_info->ctl_name, 0, NULL, 0); in cpc925_add_edac_devices()
814 if (IS_ERR(dev_info->pdev)) { in cpc925_add_edac_devices()
817 dev_info->ctl_name); in cpc925_add_edac_devices()
825 dev_info->edac_idx = edac_device_alloc_index(); in cpc925_add_edac_devices()
826 dev_info->edac_dev = in cpc925_add_edac_devices()
827 edac_device_alloc_ctl_info(0, dev_info->ctl_name, in cpc925_add_edac_devices()
828 1, NULL, 0, 0, NULL, 0, dev_info->edac_idx); in cpc925_add_edac_devices()
829 if (!dev_info->edac_dev) { in cpc925_add_edac_devices()
834 dev_info->edac_dev->pvt_info = dev_info; in cpc925_add_edac_devices()
835 dev_info->edac_dev->dev = &dev_info->pdev->dev; in cpc925_add_edac_devices()
836 dev_info->edac_dev->ctl_name = dev_info->ctl_name; in cpc925_add_edac_devices()
837 dev_info->edac_dev->mod_name = CPC925_EDAC_MOD_STR; in cpc925_add_edac_devices()
838 dev_info->edac_dev->dev_name = dev_name(&dev_info->pdev->dev); in cpc925_add_edac_devices()
841 dev_info->edac_dev->edac_check = dev_info->check; in cpc925_add_edac_devices()
843 if (dev_info->init) in cpc925_add_edac_devices()
844 dev_info->init(dev_info); in cpc925_add_edac_devices()
846 if (edac_device_add_device(dev_info->edac_dev) > 0) { in cpc925_add_edac_devices()
849 dev_info->ctl_name); in cpc925_add_edac_devices()
854 dev_info->ctl_name); in cpc925_add_edac_devices()
859 if (dev_info->exit) in cpc925_add_edac_devices()
860 dev_info->exit(dev_info); in cpc925_add_edac_devices()
861 edac_device_free_ctl_info(dev_info->edac_dev); in cpc925_add_edac_devices()
863 platform_device_unregister(dev_info->pdev); in cpc925_add_edac_devices()
873 struct cpc925_dev_info *dev_info; in cpc925_del_edac_devices() local
875 for (dev_info = &cpc925_devs[0]; dev_info->init; dev_info++) { in cpc925_del_edac_devices()
876 if (dev_info->edac_dev) { in cpc925_del_edac_devices()
877 edac_device_del_device(dev_info->edac_dev->dev); in cpc925_del_edac_devices()
878 edac_device_free_ctl_info(dev_info->edac_dev); in cpc925_del_edac_devices()
879 platform_device_unregister(dev_info->pdev); in cpc925_del_edac_devices()
882 if (dev_info->exit) in cpc925_del_edac_devices()
883 dev_info->exit(dev_info); in cpc925_del_edac_devices()
886 dev_info->ctl_name); in cpc925_del_edac_devices()