xrtcdev 52 drivers/rtc/rtc-zynqmp.c struct xlnx_rtc_dev *xrtcdev = dev_get_drvdata(dev); xrtcdev 66 drivers/rtc/rtc-zynqmp.c xrtcdev->calibval &= RTC_CALIB_MASK; xrtcdev 67 drivers/rtc/rtc-zynqmp.c writel(xrtcdev->calibval, (xrtcdev->reg_base + RTC_CALIB_WR)); xrtcdev 69 drivers/rtc/rtc-zynqmp.c writel(new_time, xrtcdev->reg_base + RTC_SET_TM_WR); xrtcdev 79 drivers/rtc/rtc-zynqmp.c writel(RTC_INT_SEC, xrtcdev->reg_base + RTC_INT_STS); xrtcdev 88 drivers/rtc/rtc-zynqmp.c struct xlnx_rtc_dev *xrtcdev = dev_get_drvdata(dev); xrtcdev 90 drivers/rtc/rtc-zynqmp.c status = readl(xrtcdev->reg_base + RTC_INT_STS); xrtcdev 97 drivers/rtc/rtc-zynqmp.c rtc_time64_to_tm(readl(xrtcdev->reg_base + RTC_CUR_TM), tm); xrtcdev 106 drivers/rtc/rtc-zynqmp.c read_time = readl(xrtcdev->reg_base + RTC_SET_TM_RD) - 1; xrtcdev 115 drivers/rtc/rtc-zynqmp.c struct xlnx_rtc_dev *xrtcdev = dev_get_drvdata(dev); xrtcdev 117 drivers/rtc/rtc-zynqmp.c rtc_time64_to_tm(readl(xrtcdev->reg_base + RTC_ALRM), &alrm->time); xrtcdev 118 drivers/rtc/rtc-zynqmp.c alrm->enabled = readl(xrtcdev->reg_base + RTC_INT_MASK) & RTC_INT_ALRM; xrtcdev 125 drivers/rtc/rtc-zynqmp.c struct xlnx_rtc_dev *xrtcdev = dev_get_drvdata(dev); xrtcdev 128 drivers/rtc/rtc-zynqmp.c writel(RTC_INT_ALRM, xrtcdev->reg_base + RTC_INT_EN); xrtcdev 130 drivers/rtc/rtc-zynqmp.c writel(RTC_INT_ALRM, xrtcdev->reg_base + RTC_INT_DIS); xrtcdev 137 drivers/rtc/rtc-zynqmp.c struct xlnx_rtc_dev *xrtcdev = dev_get_drvdata(dev); xrtcdev 142 drivers/rtc/rtc-zynqmp.c writel((u32)alarm_time, (xrtcdev->reg_base + RTC_ALRM)); xrtcdev 149 drivers/rtc/rtc-zynqmp.c static void xlnx_init_rtc(struct xlnx_rtc_dev *xrtcdev) xrtcdev 154 drivers/rtc/rtc-zynqmp.c rtc_ctrl = readl(xrtcdev->reg_base + RTC_CTRL); xrtcdev 156 drivers/rtc/rtc-zynqmp.c writel(rtc_ctrl, xrtcdev->reg_base + RTC_CTRL); xrtcdev 164 drivers/rtc/rtc-zynqmp.c xrtcdev->calibval &= RTC_CALIB_MASK; xrtcdev 165 drivers/rtc/rtc-zynqmp.c writel(xrtcdev->calibval, (xrtcdev->reg_base + RTC_CALIB_WR)); xrtcdev 178 drivers/rtc/rtc-zynqmp.c struct xlnx_rtc_dev *xrtcdev = (struct xlnx_rtc_dev *)id; xrtcdev 181 drivers/rtc/rtc-zynqmp.c status = readl(xrtcdev->reg_base + RTC_INT_STS); xrtcdev 187 drivers/rtc/rtc-zynqmp.c writel(RTC_INT_ALRM, xrtcdev->reg_base + RTC_INT_STS); xrtcdev 190 drivers/rtc/rtc-zynqmp.c rtc_update_irq(xrtcdev->rtc, 1, RTC_IRQF | RTC_AF); xrtcdev 197 drivers/rtc/rtc-zynqmp.c struct xlnx_rtc_dev *xrtcdev; xrtcdev 201 drivers/rtc/rtc-zynqmp.c xrtcdev = devm_kzalloc(&pdev->dev, sizeof(*xrtcdev), GFP_KERNEL); xrtcdev 202 drivers/rtc/rtc-zynqmp.c if (!xrtcdev) xrtcdev 205 drivers/rtc/rtc-zynqmp.c platform_set_drvdata(pdev, xrtcdev); xrtcdev 207 drivers/rtc/rtc-zynqmp.c xrtcdev->rtc = devm_rtc_allocate_device(&pdev->dev); xrtcdev 208 drivers/rtc/rtc-zynqmp.c if (IS_ERR(xrtcdev->rtc)) xrtcdev 209 drivers/rtc/rtc-zynqmp.c return PTR_ERR(xrtcdev->rtc); xrtcdev 211 drivers/rtc/rtc-zynqmp.c xrtcdev->rtc->ops = &xlnx_rtc_ops; xrtcdev 212 drivers/rtc/rtc-zynqmp.c xrtcdev->rtc->range_max = U32_MAX; xrtcdev 216 drivers/rtc/rtc-zynqmp.c xrtcdev->reg_base = devm_ioremap_resource(&pdev->dev, res); xrtcdev 217 drivers/rtc/rtc-zynqmp.c if (IS_ERR(xrtcdev->reg_base)) xrtcdev 218 drivers/rtc/rtc-zynqmp.c return PTR_ERR(xrtcdev->reg_base); xrtcdev 220 drivers/rtc/rtc-zynqmp.c xrtcdev->alarm_irq = platform_get_irq_byname(pdev, "alarm"); xrtcdev 221 drivers/rtc/rtc-zynqmp.c if (xrtcdev->alarm_irq < 0) xrtcdev 222 drivers/rtc/rtc-zynqmp.c return xrtcdev->alarm_irq; xrtcdev 223 drivers/rtc/rtc-zynqmp.c ret = devm_request_irq(&pdev->dev, xrtcdev->alarm_irq, xrtcdev 225 drivers/rtc/rtc-zynqmp.c dev_name(&pdev->dev), xrtcdev); xrtcdev 231 drivers/rtc/rtc-zynqmp.c xrtcdev->sec_irq = platform_get_irq_byname(pdev, "sec"); xrtcdev 232 drivers/rtc/rtc-zynqmp.c if (xrtcdev->sec_irq < 0) xrtcdev 233 drivers/rtc/rtc-zynqmp.c return xrtcdev->sec_irq; xrtcdev 234 drivers/rtc/rtc-zynqmp.c ret = devm_request_irq(&pdev->dev, xrtcdev->sec_irq, xrtcdev 236 drivers/rtc/rtc-zynqmp.c dev_name(&pdev->dev), xrtcdev); xrtcdev 243 drivers/rtc/rtc-zynqmp.c &xrtcdev->calibval); xrtcdev 245 drivers/rtc/rtc-zynqmp.c xrtcdev->calibval = RTC_CALIB_DEF; xrtcdev 247 drivers/rtc/rtc-zynqmp.c xlnx_init_rtc(xrtcdev); xrtcdev 251 drivers/rtc/rtc-zynqmp.c return rtc_register_device(xrtcdev->rtc); xrtcdev 264 drivers/rtc/rtc-zynqmp.c struct xlnx_rtc_dev *xrtcdev = dev_get_drvdata(dev); xrtcdev 267 drivers/rtc/rtc-zynqmp.c enable_irq_wake(xrtcdev->alarm_irq); xrtcdev 276 drivers/rtc/rtc-zynqmp.c struct xlnx_rtc_dev *xrtcdev = dev_get_drvdata(dev); xrtcdev 279 drivers/rtc/rtc-zynqmp.c disable_irq_wake(xrtcdev->alarm_irq);