Path: blob/master/drivers/gpu/drm/arm/display/include/malidp_io.h
26519 views
/* SPDX-License-Identifier: GPL-2.0 */1/*2* (C) COPYRIGHT 2018 ARM Limited. All rights reserved.3* Author: James.Qian.Wang <[email protected]>4*5*/6#ifndef _MALIDP_IO_H_7#define _MALIDP_IO_H_89#include <linux/io.h>1011static inline u3212malidp_read32(u32 __iomem *base, u32 offset)13{14return readl((base + (offset >> 2)));15}1617static inline void18malidp_write32(u32 __iomem *base, u32 offset, u32 v)19{20writel(v, (base + (offset >> 2)));21}2223static inline void24malidp_write64(u32 __iomem *base, u32 offset, u64 v)25{26writel(lower_32_bits(v), (base + (offset >> 2)));27writel(upper_32_bits(v), (base + (offset >> 2) + 1));28}2930static inline void31malidp_write32_mask(u32 __iomem *base, u32 offset, u32 m, u32 v)32{33u32 tmp = malidp_read32(base, offset);3435tmp &= (~m);36malidp_write32(base, offset, v | tmp);37}3839static inline void40malidp_write_group(u32 __iomem *base, u32 offset, int num, const u32 *values)41{42int i;4344for (i = 0; i < num; i++)45malidp_write32(base, offset + i * 4, values[i]);46}4748#endif /*_MALIDP_IO_H_*/495051