Module Name: src Committed By: riastradh Date: Sun Dec 19 11:12:59 UTC 2021
Modified Files: src/sys/external/bsd/drm2/dist/drm/i915: intel_uncore.c intel_uncore.h Log Message: i915: readl/writel -> bus_space To generate a diff of this commit: cvs rdiff -u -r1.15 -r1.16 \ src/sys/external/bsd/drm2/dist/drm/i915/intel_uncore.c cvs rdiff -u -r1.5 -r1.6 \ src/sys/external/bsd/drm2/dist/drm/i915/intel_uncore.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/external/bsd/drm2/dist/drm/i915/intel_uncore.c diff -u src/sys/external/bsd/drm2/dist/drm/i915/intel_uncore.c:1.15 src/sys/external/bsd/drm2/dist/drm/i915/intel_uncore.c:1.16 --- src/sys/external/bsd/drm2/dist/drm/i915/intel_uncore.c:1.15 Sun Dec 19 10:28:31 2021 +++ src/sys/external/bsd/drm2/dist/drm/i915/intel_uncore.c Sun Dec 19 11:12:59 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: intel_uncore.c,v 1.15 2021/12/19 10:28:31 riastradh Exp $ */ +/* $NetBSD: intel_uncore.c,v 1.16 2021/12/19 11:12:59 riastradh Exp $ */ /* * Copyright © 2013 Intel Corporation @@ -24,7 +24,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: intel_uncore.c,v 1.15 2021/12/19 10:28:31 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: intel_uncore.c,v 1.16 2021/12/19 11:12:59 riastradh Exp $"); #include <linux/pm_runtime.h> #include <asm/iosf_mbi.h> @@ -90,9 +90,30 @@ intel_uncore_forcewake_domain_to_str(con return "unknown"; } +#ifdef __NetBSD__ +static inline u32 +fw_ack(struct intel_uncore_forcewake_domain *d) +{ + return bus_space_read_4(d->uncore->regs_bst, d->uncore->regs_bsh, + d->reg_ack); +} +static inline void +fw_set(struct intel_uncore_forcewake_domain *d, u32 val) +{ + bus_space_write_4(d->uncore->regs_bst, d->uncore->regs_bsh, d->reg_set, + _MASKED_BIT_ENABLE(val)); +} +static inline void +fw_clear(struct intel_uncore_forcewake_domain *d, u32 val) +{ + bus_space_write_4(d->uncore->regs_bst, d->uncore->regs_bsh, d->reg_set, + _MASKED_BIT_DISABLE(val)); +} +#else #define fw_ack(d) readl((d)->reg_ack) #define fw_set(d, val) writel(_MASKED_BIT_ENABLE((val)), (d)->reg_set) #define fw_clear(d, val) writel(_MASKED_BIT_DISABLE((val)), (d)->reg_set) +#endif static inline void fw_domain_reset(const struct intel_uncore_forcewake_domain *d) @@ -1446,8 +1467,13 @@ static int __fw_domain_init(struct intel d->uncore = uncore; d->wake_count = 0; +#ifdef __NetBSD__ + d->reg_set = i915_mmio_reg_offset(reg_set); + d->reg_ack = i915_mmio_reg_offset(reg_ack); +#else d->reg_set = uncore->regs + i915_mmio_reg_offset(reg_set); d->reg_ack = uncore->regs + i915_mmio_reg_offset(reg_ack); +#endif d->id = domain_id; Index: src/sys/external/bsd/drm2/dist/drm/i915/intel_uncore.h diff -u src/sys/external/bsd/drm2/dist/drm/i915/intel_uncore.h:1.5 src/sys/external/bsd/drm2/dist/drm/i915/intel_uncore.h:1.6 --- src/sys/external/bsd/drm2/dist/drm/i915/intel_uncore.h:1.5 Sun Dec 19 11:10:25 2021 +++ src/sys/external/bsd/drm2/dist/drm/i915/intel_uncore.h Sun Dec 19 11:12:59 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: intel_uncore.h,v 1.5 2021/12/19 11:10:25 riastradh Exp $ */ +/* $NetBSD: intel_uncore.h,v 1.6 2021/12/19 11:12:59 riastradh Exp $ */ /* * Copyright © 2017 Intel Corporation @@ -147,8 +147,13 @@ struct intel_uncore { unsigned int wake_count; bool active; struct hrtimer timer; +#ifdef __NetBSD__ + bus_size_t reg_set; + bus_size_t reg_ack; +#else u32 __iomem *reg_set; u32 __iomem *reg_ack; +#endif } *fw_domain[FW_DOMAIN_ID_COUNT]; unsigned int user_forcewake_count;