msm: kgsl: Clean up includes
Do a massive update of the included header files. Clean out the cruft and put them all in correct alphabetical order. Change-Id: Ic0dedbad9385b59e801f6595a59ef5ae48c949c0 Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
This commit is contained in:
@@ -2,43 +2,29 @@
|
||||
/*
|
||||
* Copyright (c) 2002,2007-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/module.h>
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/of_device.h>
|
||||
#include <linux/of_fdt.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/input.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/of_device.h>
|
||||
#include <linux/of_fdt.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/msm_kgsl.h>
|
||||
#include <linux/regulator/consumer.h>
|
||||
#include <soc/qcom/scm.h>
|
||||
|
||||
#include <linux/msm-bus-board.h>
|
||||
#include <linux/msm-bus.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_gmu_core.h"
|
||||
#include "kgsl_pwrscale.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl_iommu.h"
|
||||
#include "kgsl_trace.h"
|
||||
#include "adreno_llc.h"
|
||||
|
||||
#include "adreno.h"
|
||||
#include "adreno_iommu.h"
|
||||
#include "adreno_compat.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "adreno_trace.h"
|
||||
|
||||
#include "adreno_a3xx.h"
|
||||
#include "adreno_a5xx.h"
|
||||
#include "adreno_a6xx.h"
|
||||
|
||||
#include "adreno_snapshot.h"
|
||||
#include "adreno_compat.h"
|
||||
#include "adreno_iommu.h"
|
||||
#include "adreno_llc.h"
|
||||
#include "adreno_trace.h"
|
||||
#include "kgsl_trace.h"
|
||||
|
||||
/* Include the master list of GPU cores that are supported */
|
||||
#include "adreno-gpulist.h"
|
||||
#include "adreno_dispatch.h"
|
||||
|
||||
static void adreno_input_work(struct work_struct *work);
|
||||
static unsigned int counter_delta(struct kgsl_device *device,
|
||||
|
||||
@@ -5,17 +5,12 @@
|
||||
#ifndef __ADRENO_H
|
||||
#define __ADRENO_H
|
||||
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "adreno_drawctxt.h"
|
||||
#include "adreno_ringbuffer.h"
|
||||
#include "adreno_profile.h"
|
||||
#include "adreno_dispatch.h"
|
||||
#include "kgsl_iommu.h"
|
||||
#include "adreno_drawctxt.h"
|
||||
#include "adreno_perfcounter.h"
|
||||
#include <linux/stat.h>
|
||||
#include <linux/delay.h>
|
||||
#include "kgsl_gmu_core.h"
|
||||
#include "adreno_profile.h"
|
||||
#include "adreno_ringbuffer.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
|
||||
#define DEVICE_3D_NAME "kgsl-3d"
|
||||
#define DEVICE_3D0_NAME "kgsl-3d0"
|
||||
|
||||
@@ -3,22 +3,17 @@
|
||||
* Copyright (c) 2012-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/firmware.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/msm_kgsl.h>
|
||||
#include <linux/clk/qcom.h>
|
||||
#include <linux/firmware.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "adreno.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "a3xx_reg.h"
|
||||
#include "adreno_a3xx.h"
|
||||
#include "adreno_cp_parser.h"
|
||||
#include "adreno_trace.h"
|
||||
#include "adreno_a3xx.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "adreno_perfcounter.h"
|
||||
#include "adreno_snapshot.h"
|
||||
#include "adreno_trace.h"
|
||||
|
||||
/*
|
||||
* Define registers for a3xx that contain addresses used by the
|
||||
|
||||
@@ -4,12 +4,11 @@
|
||||
*/
|
||||
|
||||
#include <linux/io.h>
|
||||
#include "kgsl.h"
|
||||
|
||||
#include "adreno.h"
|
||||
#include "kgsl_snapshot.h"
|
||||
#include "a3xx_reg.h"
|
||||
#include "adreno_snapshot.h"
|
||||
#include "adreno_a3xx.h"
|
||||
#include "adreno_snapshot.h"
|
||||
#include "kgsl_device.h"
|
||||
|
||||
/*
|
||||
* Set of registers to dump for A3XX on snapshot.
|
||||
|
||||
@@ -3,24 +3,20 @@
|
||||
* Copyright (c) 2014-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/firmware.h>
|
||||
#include <soc/qcom/subsystem_restart.h>
|
||||
#include <soc/qcom/scm.h>
|
||||
#include <linux/pm_opp.h>
|
||||
#include <linux/clk/qcom.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/firmware.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/slab.h>
|
||||
#include <soc/qcom/scm.h>
|
||||
#include <soc/qcom/subsystem_restart.h>
|
||||
|
||||
#include "adreno.h"
|
||||
#include "a5xx_reg.h"
|
||||
#include "adreno_a5xx.h"
|
||||
#include "adreno_cp_parser.h"
|
||||
#include "adreno_trace.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "adreno_perfcounter.h"
|
||||
#include "adreno_ringbuffer.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_trace.h"
|
||||
#include "adreno_a5xx_packets.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "adreno_trace.h"
|
||||
#include "kgsl_trace.h"
|
||||
|
||||
static int critical_packet_constructed;
|
||||
|
||||
|
||||
@@ -1,13 +1,12 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2014-2017, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2014-2017,2019 The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include "adreno.h"
|
||||
#include "adreno_a5xx.h"
|
||||
#include "a5xx_reg.h"
|
||||
#include "adreno_trace.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "adreno_trace.h"
|
||||
|
||||
#define PREEMPT_RECORD(_field) \
|
||||
offsetof(struct a5xx_cp_preemption_record, _field)
|
||||
|
||||
@@ -3,13 +3,9 @@
|
||||
* Copyright (c) 2015-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/io.h>
|
||||
#include "kgsl.h"
|
||||
#include "adreno.h"
|
||||
#include "kgsl_snapshot.h"
|
||||
#include "adreno_snapshot.h"
|
||||
#include "a5xx_reg.h"
|
||||
#include "adreno_a5xx.h"
|
||||
#include "adreno_snapshot.h"
|
||||
|
||||
enum a5xx_rbbm_debbus_id {
|
||||
A5XX_RBBM_DBGBUS_CP = 0x1,
|
||||
|
||||
@@ -4,23 +4,15 @@
|
||||
*/
|
||||
|
||||
#include <linux/firmware.h>
|
||||
#include <linux/of.h>
|
||||
#include <soc/qcom/subsystem_restart.h>
|
||||
#include <linux/pm_opp.h>
|
||||
#include <linux/jiffies.h>
|
||||
|
||||
#include "adreno.h"
|
||||
#include "a6xx_reg.h"
|
||||
#include "adreno_a6xx.h"
|
||||
#include "adreno_cp_parser.h"
|
||||
#include "adreno_trace.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "adreno_perfcounter.h"
|
||||
#include "adreno_ringbuffer.h"
|
||||
#include "adreno_llc.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "adreno_trace.h"
|
||||
#include "kgsl_gmu.h"
|
||||
#include "kgsl_hfi.h"
|
||||
#include "kgsl_trace.h"
|
||||
|
||||
#define MIN_HBB 13
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
@@ -6,6 +6,8 @@
|
||||
#ifndef _ADRENO_A6XX_H_
|
||||
#define _ADRENO_A6XX_H_
|
||||
|
||||
#include <linux/delay.h>
|
||||
|
||||
#include "a6xx_reg.h"
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,23 +3,18 @@
|
||||
* Copyright (c) 2018-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
/* soc/qcom/cmd-db.h needs types.h */
|
||||
#include <linux/firmware.h>
|
||||
#include <linux/jiffies.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/of_platform.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/regulator/consumer.h>
|
||||
#include <soc/qcom/cmd-db.h>
|
||||
|
||||
#include "kgsl_gmu_core.h"
|
||||
#include "kgsl_gmu.h"
|
||||
#include "kgsl_trace.h"
|
||||
#include "kgsl_snapshot.h"
|
||||
|
||||
#include "adreno.h"
|
||||
#include "a6xx_reg.h"
|
||||
#include "adreno_a6xx.h"
|
||||
#include "adreno_snapshot.h"
|
||||
#include "adreno_trace.h"
|
||||
#include "kgsl_gmu.h"
|
||||
#include "kgsl_trace.h"
|
||||
|
||||
static const unsigned int a6xx_gmu_gx_registers[] = {
|
||||
/* GMU GX */
|
||||
|
||||
@@ -1,14 +1,12 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include "adreno.h"
|
||||
#include "adreno_a6xx.h"
|
||||
#include "a6xx_reg.h"
|
||||
#include "adreno_trace.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "kgsl_gmu_core.h"
|
||||
#include "adreno_trace.h"
|
||||
|
||||
#define PREEMPT_RECORD(_field) \
|
||||
offsetof(struct a6xx_cp_preemption_record, _field)
|
||||
|
||||
@@ -2,19 +2,15 @@
|
||||
/*
|
||||
* Copyright (c) 2018-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/firmware.h>
|
||||
#include <linux/jiffies.h>
|
||||
#include <linux/interrupt.h>
|
||||
|
||||
#include "kgsl_gmu_core.h"
|
||||
#include "kgsl_rgmu.h"
|
||||
#include "kgsl_trace.h"
|
||||
#include <linux/firmware.h>
|
||||
#include <linux/regulator/consumer.h>
|
||||
|
||||
#include "adreno.h"
|
||||
#include "a6xx_reg.h"
|
||||
#include "adreno_a6xx.h"
|
||||
#include "adreno_trace.h"
|
||||
#include "adreno_snapshot.h"
|
||||
#include "kgsl_rgmu.h"
|
||||
#include "kgsl_trace.h"
|
||||
|
||||
/* RGMU timeouts */
|
||||
#define RGMU_IDLE_TIMEOUT 100 /* ms */
|
||||
|
||||
@@ -3,14 +3,9 @@
|
||||
* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/io.h>
|
||||
#include "kgsl.h"
|
||||
#include "adreno.h"
|
||||
#include "kgsl_snapshot.h"
|
||||
#include "adreno_snapshot.h"
|
||||
#include "a6xx_reg.h"
|
||||
#include "adreno_a6xx.h"
|
||||
#include "kgsl_gmu_core.h"
|
||||
#include "adreno_snapshot.h"
|
||||
|
||||
#define A6XX_NUM_CTXTS 2
|
||||
#define A6XX_NUM_AXI_ARB_BLOCKS 2
|
||||
|
||||
@@ -2,14 +2,10 @@
|
||||
/*
|
||||
* Copyright (c) 2013-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/ioctl.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_compat.h"
|
||||
|
||||
#include "adreno.h"
|
||||
#include "adreno_compat.h"
|
||||
#include "kgsl_compat.h"
|
||||
|
||||
int adreno_getproperty_compat(struct kgsl_device *device,
|
||||
struct kgsl_device_getproperty *param)
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
#define __ADRENO_COMPAT_H
|
||||
|
||||
#ifdef CONFIG_COMPAT
|
||||
#include <linux/compat.h>
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_device.h"
|
||||
|
||||
struct kgsl_device;
|
||||
struct kgsl_device_private;
|
||||
|
||||
int adreno_getproperty_compat(struct kgsl_device *device,
|
||||
struct kgsl_device_getproperty *param);
|
||||
|
||||
@@ -3,10 +3,11 @@
|
||||
* Copyright (c) 2013-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/coresight.h>
|
||||
#include <linux/of.h>
|
||||
|
||||
#include "adreno.h"
|
||||
|
||||
#define TO_ADRENO_CORESIGHT_ATTR(_attr) \
|
||||
container_of(_attr, struct adreno_coresight_attr, attr)
|
||||
|
||||
|
||||
@@ -3,14 +3,12 @@
|
||||
* Copyright (c) 2013-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl_snapshot.h"
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include "adreno.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "a3xx_reg.h"
|
||||
#include "adreno_cp_parser.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "adreno_snapshot.h"
|
||||
|
||||
#define MAX_IB_OBJS 1000
|
||||
#define NUM_SET_DRAW_GROUPS 32
|
||||
|
||||
@@ -1,17 +1,12 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2002,2008-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2002,2008-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/export.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/debugfs.h>
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/msm_kgsl.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "adreno.h"
|
||||
#include "kgsl_sync.h"
|
||||
|
||||
static int _isdb_set(void *data, u64 val)
|
||||
{
|
||||
|
||||
@@ -1,20 +1,12 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2013-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2013-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/wait.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/jiffies.h>
|
||||
#include <linux/err.h>
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "adreno.h"
|
||||
#include "adreno_ringbuffer.h"
|
||||
#include "adreno_trace.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
|
||||
#define DRAWQUEUE_NEXT(_i, _s) (((_i) + 1) % (_s))
|
||||
|
||||
|
||||
@@ -1,11 +1,14 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2008-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2008-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef ____ADRENO_DISPATCHER_H
|
||||
#define ____ADRENO_DISPATCHER_H
|
||||
|
||||
#include <linux/kobject.h>
|
||||
#include <linux/kthread.h>
|
||||
|
||||
extern unsigned int adreno_drawobj_timeout;
|
||||
|
||||
/*
|
||||
@@ -68,6 +71,12 @@ enum adreno_dispatcher_flags {
|
||||
ADRENO_DISPATCHER_ACTIVE = 1,
|
||||
};
|
||||
|
||||
struct adreno_device;
|
||||
struct adreno_context;
|
||||
struct kgsl_context;
|
||||
struct kgsl_device;
|
||||
struct kgsl_device_private;
|
||||
|
||||
void adreno_dispatcher_start(struct kgsl_device *device);
|
||||
void adreno_dispatcher_halt(struct kgsl_device *device);
|
||||
void adreno_dispatcher_unhalt(struct kgsl_device *device);
|
||||
@@ -78,6 +87,8 @@ void adreno_dispatcher_irq_fault(struct adreno_device *adreno_dev);
|
||||
void adreno_dispatcher_stop(struct adreno_device *adreno_dev);
|
||||
void adreno_dispatcher_stop_fault_timer(struct kgsl_device *device);
|
||||
|
||||
struct kgsl_drawobj;
|
||||
|
||||
int adreno_dispatcher_queue_cmds(struct kgsl_device_private *dev_priv,
|
||||
struct kgsl_context *context, struct kgsl_drawobj *drawobj[],
|
||||
uint32_t count, uint32_t *timestamp);
|
||||
|
||||
@@ -3,14 +3,10 @@
|
||||
* Copyright (c) 2002,2007-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/slab.h>
|
||||
#include <linux/msm_kgsl.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/debugfs.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "adreno.h"
|
||||
#include "adreno_iommu.h"
|
||||
#include "adreno_trace.h"
|
||||
|
||||
static void wait_callback(struct kgsl_device *device,
|
||||
|
||||
@@ -1,10 +1,14 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2002,2007-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#ifndef __ADRENO_DRAWCTXT_H
|
||||
#define __ADRENO_DRAWCTXT_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
#include "kgsl_device.h"
|
||||
|
||||
struct adreno_context_type {
|
||||
unsigned int type;
|
||||
const char *str;
|
||||
@@ -16,7 +20,6 @@ struct adreno_context_type {
|
||||
struct kgsl_device;
|
||||
struct adreno_device;
|
||||
struct kgsl_device_private;
|
||||
struct kgsl_context;
|
||||
|
||||
/**
|
||||
* struct adreno_context - Adreno GPU draw context
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2002,2007-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2002,2007-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/ioctl.h>
|
||||
#include "kgsl_device.h"
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include "adreno.h"
|
||||
#include "adreno_a5xx.h"
|
||||
|
||||
|
||||
@@ -2,9 +2,12 @@
|
||||
/*
|
||||
* Copyright (c) 2002,2007-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include "adreno.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include "a3xx_reg.h"
|
||||
#include "adreno.h"
|
||||
#include "adreno_iommu.h"
|
||||
#include "adreno_pm4types.h"
|
||||
|
||||
/*
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#ifndef __ADRENO_LLC_H
|
||||
#define __ADRENO_LLC_H
|
||||
|
||||
#include "adreno.h"
|
||||
#include <linux/soc/qcom/llcc-qcom.h>
|
||||
|
||||
#include "adreno.h"
|
||||
|
||||
#ifdef CONFIG_QCOM_LLCC
|
||||
|
||||
static inline bool adreno_llc_supported(void)
|
||||
|
||||
@@ -2,14 +2,13 @@
|
||||
/*
|
||||
* Copyright (c) 2002,2007-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/module.h>
|
||||
#include <linux/uaccess.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include "a5xx_reg.h"
|
||||
#include "adreno.h"
|
||||
#include "adreno_perfcounter.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "a5xx_reg.h"
|
||||
|
||||
/* Bit flag for RBMM_PERFCTR_CTL */
|
||||
#define RBBM_PERFCTR_CTL_ENABLE 0x00000001
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2008-2015, 2017 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2008-2015,2017,2019 The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#ifndef __ADRENO_PERFCOUNTER_H
|
||||
#define __ADRENO_PERFCOUNTER_H
|
||||
|
||||
#include "adreno.h"
|
||||
|
||||
struct adreno_device;
|
||||
|
||||
/* ADRENO_PERFCOUNTERS - Given an adreno device, return the perfcounters list */
|
||||
|
||||
@@ -1,20 +1,14 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2013-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2013-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/fs.h>
|
||||
#include <linux/kernel.h>
|
||||
|
||||
#include <linux/ctype.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/vmalloc.h>
|
||||
#include <linux/debugfs.h>
|
||||
#include <linux/sched/signal.h>
|
||||
|
||||
#include "adreno.h"
|
||||
#include "adreno_profile.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "adreno_pm4types.h"
|
||||
|
||||
#define ASSIGNS_STR_FORMAT "%.8s:%u "
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2013-2014, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2013-2014,2019 The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#ifndef __ADRENO_PROFILE_H
|
||||
#define __ADRENO_PROFILE_H
|
||||
#include <linux/seq_file.h>
|
||||
|
||||
/**
|
||||
* struct adreno_profile_assigns_list: linked list for assigned perf counters
|
||||
|
||||
@@ -2,26 +2,16 @@
|
||||
/*
|
||||
* Copyright (c) 2002,2007-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/slab.h>
|
||||
#include <linux/sched.h>
|
||||
|
||||
#include <linux/sched/clock.h>
|
||||
#include <linux/log2.h>
|
||||
#include <linux/time.h>
|
||||
#include <linux/delay.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl_trace.h"
|
||||
#include "kgsl_pwrctrl.h"
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include "a3xx_reg.h"
|
||||
#include "adreno.h"
|
||||
#include "adreno_iommu.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "adreno_ringbuffer.h"
|
||||
#include "adreno_trace.h"
|
||||
|
||||
#include "a3xx_reg.h"
|
||||
#include "adreno_a5xx.h"
|
||||
#include "kgsl_trace.h"
|
||||
|
||||
#define RB_HOSTPTR(_rb, _pos) \
|
||||
((unsigned int *) ((_rb)->buffer_desc.hostptr + \
|
||||
|
||||
@@ -5,10 +5,6 @@
|
||||
#ifndef __ADRENO_RINGBUFFER_H
|
||||
#define __ADRENO_RINGBUFFER_H
|
||||
|
||||
#include "kgsl_iommu.h"
|
||||
#include "adreno_iommu.h"
|
||||
#include "adreno_dispatch.h"
|
||||
|
||||
/* Given a ringbuffer, return the adreno device that owns it */
|
||||
|
||||
#define _RB_OFFSET(_id) (offsetof(struct adreno_device, ringbuffers) + \
|
||||
|
||||
@@ -1,18 +1,12 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2012-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl_snapshot.h"
|
||||
|
||||
#include "adreno.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "a3xx_reg.h"
|
||||
#include "adreno_cp_parser.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "adreno_snapshot.h"
|
||||
#include "adreno_a5xx.h"
|
||||
|
||||
#define VPC_MEMORY_BANKS 4
|
||||
|
||||
|
||||
@@ -4,9 +4,7 @@
|
||||
*/
|
||||
|
||||
#include <linux/sysfs.h>
|
||||
#include <linux/device.h>
|
||||
|
||||
#include "kgsl_device.h"
|
||||
#include "adreno.h"
|
||||
|
||||
struct adreno_sysfs_attribute {
|
||||
|
||||
@@ -2,42 +2,29 @@
|
||||
/*
|
||||
* Copyright (c) 2008-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/module.h>
|
||||
#include <linux/fb.h>
|
||||
#include <linux/file.h>
|
||||
#include <linux/fs.h>
|
||||
#include <linux/fdtable.h>
|
||||
#include <linux/list.h>
|
||||
#include <linux/debugfs.h>
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/workqueue.h>
|
||||
#include <linux/dma-buf.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/rbtree.h>
|
||||
#include <linux/major.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/mman.h>
|
||||
#include <linux/sort.h>
|
||||
#include <linux/security.h>
|
||||
#include <linux/compat.h>
|
||||
#include <linux/ctype.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/ion.h>
|
||||
#include <asm/cacheflush.h>
|
||||
#include <uapi/linux/sched/types.h>
|
||||
#include <linux/of_fdt.h>
|
||||
#include <linux/msm-bus.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_debugfs.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl_drawobj.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_trace.h"
|
||||
#include "kgsl_sync.h"
|
||||
#include <uapi/linux/sched/types.h>
|
||||
#include <linux/ctype.h>
|
||||
#include <linux/debugfs.h>
|
||||
#include <linux/dma-buf.h>
|
||||
#include <linux/fdtable.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/ion.h>
|
||||
#include <linux/mman.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/msm-bus.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/of_fdt.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/security.h>
|
||||
#include <linux/sort.h>
|
||||
|
||||
#include "kgsl_compat.h"
|
||||
#include "kgsl_pool.h"
|
||||
#include "kgsl_debugfs.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_mmu.h"
|
||||
#include "kgsl_sync.h"
|
||||
#include "kgsl_trace.h"
|
||||
|
||||
#ifndef arch_mmap_check
|
||||
#define arch_mmap_check(addr, len, flags) (0)
|
||||
|
||||
@@ -5,23 +5,15 @@
|
||||
#ifndef __KGSL_H
|
||||
#define __KGSL_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/vmalloc.h>
|
||||
#include <linux/msm_kgsl.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/clk.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/mutex.h>
|
||||
#include <linux/cdev.h>
|
||||
#include <linux/regulator/consumer.h>
|
||||
#include <linux/kthread.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/kthread.h>
|
||||
#include <asm/cacheflush.h>
|
||||
#include <linux/compat.h>
|
||||
#include <uapi/linux/msm_kgsl.h>
|
||||
|
||||
#include "kgsl_gmu_core.h"
|
||||
#include "kgsl_pwrscale.h"
|
||||
|
||||
/*
|
||||
* --- kgsl drawobj flags ---
|
||||
* These flags are same as --- drawobj flags ---
|
||||
@@ -457,6 +449,12 @@ struct kgsl_mem_entry *gpumem_alloc_entry(struct kgsl_device_private *dev_priv,
|
||||
uint64_t size, uint64_t flags);
|
||||
long gpumem_free_entry(struct kgsl_mem_entry *entry);
|
||||
|
||||
enum kgsl_mmutype kgsl_mmu_get_mmutype(struct kgsl_device *device);
|
||||
void kgsl_mmu_add_global(struct kgsl_device *device,
|
||||
struct kgsl_memdesc *memdesc, const char *name);
|
||||
void kgsl_mmu_remove_global(struct kgsl_device *device,
|
||||
struct kgsl_memdesc *memdesc);
|
||||
|
||||
/* Helper functions */
|
||||
int kgsl_request_irq(struct platform_device *pdev, const char *name,
|
||||
irq_handler_t handler, void *data);
|
||||
|
||||
@@ -1,16 +1,10 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2013-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2013-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/fs.h>
|
||||
#include <linux/file.h>
|
||||
#include <linux/uaccess.h>
|
||||
#include <asm/ioctl.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_compat.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_compat.h"
|
||||
#include "kgsl_sync.h"
|
||||
|
||||
static long
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2013-2017, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2013-2017,2019 The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#ifndef __KGSL_COMPAT_H
|
||||
#define __KGSL_COMPAT_H
|
||||
|
||||
#ifdef CONFIG_COMPAT
|
||||
#include <linux/compat.h>
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_device.h"
|
||||
#include <uapi/linux/msm_kgsl.h>
|
||||
|
||||
#ifdef CONFIG_COMPAT
|
||||
|
||||
struct kgsl_ibdesc_compat {
|
||||
compat_ulong_t gpuaddr;
|
||||
@@ -228,6 +228,9 @@ static inline compat_size_t sizet_to_compat(size_t size)
|
||||
return (compat_size_t)size;
|
||||
}
|
||||
|
||||
struct kgsl_device;
|
||||
struct kgsl_drawobj;
|
||||
|
||||
int kgsl_drawobj_create_compat(struct kgsl_device *device, unsigned int flags,
|
||||
struct kgsl_drawobj *drawobj, void __user *cmdlist,
|
||||
unsigned int numcmds, void __user *synclist,
|
||||
|
||||
@@ -1,15 +1,13 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2002,2008-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2002,2008-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/module.h>
|
||||
#include <linux/debugfs.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_debugfs.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl_debugfs.h"
|
||||
|
||||
/*default log levels is error for everything*/
|
||||
#define KGSL_LOG_LEVEL_MAX 7
|
||||
|
||||
@@ -5,19 +5,9 @@
|
||||
#ifndef __KGSL_DEVICE_H
|
||||
#define __KGSL_DEVICE_H
|
||||
|
||||
#include <linux/slab.h>
|
||||
#include <linux/idr.h>
|
||||
#include <linux/pm_qos.h>
|
||||
#include <linux/sched.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_mmu.h"
|
||||
#include "kgsl_pwrctrl.h"
|
||||
#include "kgsl_pwrscale.h"
|
||||
#include "kgsl_snapshot.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl_drawobj.h"
|
||||
#include "kgsl_gmu_core.h"
|
||||
#include "kgsl_mmu.h"
|
||||
|
||||
#define KGSL_IOCTL_FUNC(_cmd, _func) \
|
||||
[_IOC_NR((_cmd))] = \
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2016-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2016-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -18,16 +18,14 @@
|
||||
* goes to zero indicating no more pending events.
|
||||
*/
|
||||
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/list.h>
|
||||
#include <linux/compat.h>
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "adreno_drawctxt.h"
|
||||
#include "kgsl_compat.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_drawobj.h"
|
||||
#include "kgsl_sync.h"
|
||||
#include "kgsl_trace.h"
|
||||
#include "kgsl_compat.h"
|
||||
|
||||
/*
|
||||
* Define an kmem cache for the memobj & sparseobj structures since we
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2016-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
@@ -6,6 +6,8 @@
|
||||
#ifndef __KGSL_DRAWOBJ_H
|
||||
#define __KGSL_DRAWOBJ_H
|
||||
|
||||
#include <linux/kref.h>
|
||||
|
||||
#define DRAWOBJ(obj) (&obj->base)
|
||||
#define SYNCOBJ(obj) \
|
||||
container_of(obj, struct kgsl_drawobj_sync, base)
|
||||
@@ -172,6 +174,9 @@ enum kgsl_drawobj_cmd_priv {
|
||||
CMDOBJ_PROFILE,
|
||||
};
|
||||
|
||||
struct kgsl_ibdesc;
|
||||
struct kgsl_cmd_syncpoint;
|
||||
|
||||
struct kgsl_drawobj_cmd *kgsl_drawobj_cmd_create(struct kgsl_device *device,
|
||||
struct kgsl_context *context, unsigned int flags,
|
||||
unsigned int type);
|
||||
|
||||
@@ -1,15 +1,12 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2011-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2011-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/slab.h>
|
||||
#include <linux/list.h>
|
||||
#include <linux/workqueue.h>
|
||||
#include <linux/debugfs.h>
|
||||
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_debugfs.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_trace.h"
|
||||
|
||||
/*
|
||||
|
||||
@@ -2,22 +2,21 @@
|
||||
/*
|
||||
* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/module.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/iommu.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/of_platform.h>
|
||||
#include <linux/msm-bus.h>
|
||||
#include <linux/msm-bus-board.h>
|
||||
#include <linux/pm_opp.h>
|
||||
#include <soc/qcom/cmd-db.h>
|
||||
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
|
||||
|
||||
#include <linux/delay.h>
|
||||
#include <linux/firmware.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/iommu.h>
|
||||
#include <linux/mailbox_client.h>
|
||||
#include <linux/msm-bus.h>
|
||||
#include <linux/of_platform.h>
|
||||
#include <linux/regulator/consumer.h>
|
||||
#include <linux/slab.h>
|
||||
#include <soc/qcom/cmd-db.h>
|
||||
|
||||
#include "adreno.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_gmu.h"
|
||||
#include "kgsl_hfi.h"
|
||||
#include "adreno.h"
|
||||
|
||||
#undef MODULE_PARAM_PREFIX
|
||||
#define MODULE_PARAM_PREFIX "kgsl."
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#ifndef __KGSL_GMU_H
|
||||
#define __KGSL_GMU_H
|
||||
|
||||
#include <linux/mailbox_client.h>
|
||||
#include "kgsl_gmu_core.h"
|
||||
#include <linux/firmware.h>
|
||||
#include "kgsl_hfi.h"
|
||||
|
||||
#define MAX_GMUFW_SIZE 0x8000 /* in bytes */
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2018-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/module.h>
|
||||
#include <linux/types.h>
|
||||
|
||||
#include <linux/of.h>
|
||||
|
||||
#include "adreno.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_gmu_core.h"
|
||||
#include "kgsl_trace.h"
|
||||
#include "adreno.h"
|
||||
|
||||
#undef MODULE_PARAM_PREFIX
|
||||
#define MODULE_PARAM_PREFIX "kgsl_gmu."
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2018-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#ifndef __KGSL_GMU_CORE_H
|
||||
#define __KGSL_GMU_CORE_H
|
||||
@@ -117,6 +117,7 @@ static const char * const gpu_idle_level_names[] = {
|
||||
#define FENCE_STATUS_WRITEDROPPED0_MASK 0x1
|
||||
#define FENCE_STATUS_WRITEDROPPED1_MASK 0x2
|
||||
|
||||
struct device_node;
|
||||
struct kgsl_device;
|
||||
struct kgsl_snapshot;
|
||||
|
||||
|
||||
@@ -3,14 +3,14 @@
|
||||
* Copyright (c) 2018-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_hfi.h"
|
||||
#include "kgsl_gmu.h"
|
||||
#include "kgsl_trace.h"
|
||||
#include "kgsl_pwrctrl.h"
|
||||
#include <linux/delay.h>
|
||||
|
||||
#include "adreno.h"
|
||||
#include "adreno_a6xx.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_gmu.h"
|
||||
#include "kgsl_hfi.h"
|
||||
#include "kgsl_trace.h"
|
||||
|
||||
#define HFI_QUEUE_OFFSET(i) \
|
||||
(ALIGN(sizeof(struct hfi_queue_table), SZ_16) + \
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#ifndef __KGSL_HFI_H
|
||||
#define __KGSL_HFI_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
#define HFI_QUEUE_SIZE SZ_4K /* bytes, must be base 4dw */
|
||||
#define MAX_RCVD_PAYLOAD_SIZE 16 /* dwords */
|
||||
#define MAX_RCVD_SIZE (MAX_RCVD_PAYLOAD_SIZE + 3) /* dwords */
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2008-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2008-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/ioctl.h>
|
||||
#include <linux/compat.h>
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/fs.h>
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_sync.h"
|
||||
|
||||
|
||||
@@ -2,29 +2,21 @@
|
||||
/*
|
||||
* Copyright (c) 2011-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/types.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/spinlock.h>
|
||||
#include <linux/genalloc.h>
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include <linux/compat.h>
|
||||
#include <linux/iommu.h>
|
||||
#include <linux/msm_kgsl.h>
|
||||
#include <linux/ratelimit.h>
|
||||
#include <linux/of_platform.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <soc/qcom/scm.h>
|
||||
#include <soc/qcom/secure_buffer.h>
|
||||
#include <linux/compat.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_mmu.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl_iommu.h"
|
||||
#include "adreno_pm4types.h"
|
||||
#include "adreno.h"
|
||||
#include "kgsl_trace.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_iommu.h"
|
||||
#include "kgsl_mmu.h"
|
||||
#include "kgsl_pwrctrl.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl_trace.h"
|
||||
|
||||
#define _IOMMU_PRIV(_mmu) (&((_mmu)->priv.iommu))
|
||||
|
||||
|
||||
@@ -5,8 +5,7 @@
|
||||
#ifndef __KGSL_IOMMU_H
|
||||
#define __KGSL_IOMMU_H
|
||||
|
||||
#include <linux/of.h>
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_mmu.h"
|
||||
|
||||
/*
|
||||
* These defines control the address range for allocations that
|
||||
|
||||
@@ -1,19 +1,12 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2002,2007-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2002,2007-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/export.h>
|
||||
#include <linux/types.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/spinlock.h>
|
||||
#include <linux/genalloc.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/types.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_mmu.h"
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_mmu.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
|
||||
static void pagetable_remove_sysfs_objects(struct kgsl_pagetable *pagetable);
|
||||
|
||||
@@ -5,6 +5,8 @@
|
||||
#ifndef __KGSL_MMU_H
|
||||
#define __KGSL_MMU_H
|
||||
|
||||
#include <linux/platform_device.h>
|
||||
|
||||
#include "kgsl_iommu.h"
|
||||
|
||||
/* Identifier for the global page table */
|
||||
@@ -186,7 +188,6 @@ void kgsl_mmu_put_gpuaddr(struct kgsl_memdesc *memdesc);
|
||||
unsigned int kgsl_virtaddr_to_physaddr(void *virtaddr);
|
||||
unsigned int kgsl_mmu_log_fault_addr(struct kgsl_mmu *mmu,
|
||||
u64 ttbr0, uint64_t addr);
|
||||
enum kgsl_mmutype kgsl_mmu_get_mmutype(struct kgsl_device *device);
|
||||
bool kgsl_mmu_gpuaddr_in_range(struct kgsl_pagetable *pt, uint64_t gpuaddr);
|
||||
|
||||
int kgsl_mmu_get_region(struct kgsl_pagetable *pagetable,
|
||||
@@ -196,11 +197,6 @@ int kgsl_mmu_find_region(struct kgsl_pagetable *pagetable,
|
||||
uint64_t region_start, uint64_t region_end,
|
||||
uint64_t *gpuaddr, uint64_t size, unsigned int align);
|
||||
|
||||
void kgsl_mmu_add_global(struct kgsl_device *device,
|
||||
struct kgsl_memdesc *memdesc, const char *name);
|
||||
void kgsl_mmu_remove_global(struct kgsl_device *device,
|
||||
struct kgsl_memdesc *memdesc);
|
||||
|
||||
struct kgsl_pagetable *kgsl_mmu_get_pt_from_ptname(struct kgsl_mmu *mmu,
|
||||
int ptname);
|
||||
void kgsl_mmu_close(struct kgsl_device *device);
|
||||
|
||||
@@ -1,17 +1,16 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2016-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2016-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/vmalloc.h>
|
||||
#include <asm/cacheflush.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/highmem.h>
|
||||
#include <linux/version.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/scatterlist.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_pool.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
|
||||
#define KGSL_MAX_POOLS 4
|
||||
#define KGSL_MAX_POOL_ORDER 8
|
||||
@@ -283,6 +282,22 @@ static int kgsl_pool_get_retry_order(unsigned int order)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static unsigned int kgsl_gfp_mask(unsigned int page_order)
|
||||
{
|
||||
unsigned int gfp_mask = __GFP_HIGHMEM;
|
||||
|
||||
if (page_order > 0) {
|
||||
gfp_mask |= __GFP_COMP | __GFP_NORETRY | __GFP_NOWARN;
|
||||
gfp_mask &= ~__GFP_RECLAIM;
|
||||
} else
|
||||
gfp_mask |= GFP_KERNEL;
|
||||
|
||||
if (kgsl_sharedmem_get_noretry())
|
||||
gfp_mask |= __GFP_NORETRY | __GFP_NOWARN;
|
||||
|
||||
return gfp_mask;
|
||||
}
|
||||
|
||||
/**
|
||||
* kgsl_pool_alloc_page() - Allocate a page of requested size
|
||||
* @page_size: Size of the page to be allocated
|
||||
|
||||
@@ -1,30 +1,10 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2016-2017, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2016-2017,2019 The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#ifndef __KGSL_POOL_H
|
||||
#define __KGSL_POOL_H
|
||||
|
||||
#include <linux/mm_types.h>
|
||||
#include "kgsl_sharedmem.h"
|
||||
|
||||
static inline unsigned int
|
||||
kgsl_gfp_mask(unsigned int page_order)
|
||||
{
|
||||
unsigned int gfp_mask = __GFP_HIGHMEM;
|
||||
|
||||
if (page_order > 0) {
|
||||
gfp_mask |= __GFP_COMP | __GFP_NORETRY | __GFP_NOWARN;
|
||||
gfp_mask &= ~__GFP_RECLAIM;
|
||||
} else
|
||||
gfp_mask |= GFP_KERNEL;
|
||||
|
||||
if (kgsl_sharedmem_get_noretry())
|
||||
gfp_mask |= __GFP_NORETRY | __GFP_NOWARN;
|
||||
|
||||
return gfp_mask;
|
||||
}
|
||||
|
||||
void kgsl_pool_free_sgt(struct sg_table *sgt);
|
||||
void kgsl_pool_free_pages(struct page **pages, unsigned int page_count);
|
||||
void kgsl_init_page_pools(struct platform_device *pdev);
|
||||
|
||||
@@ -3,23 +3,18 @@
|
||||
* Copyright (c) 2010-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/export.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <asm/page.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/msm-bus.h>
|
||||
#include <linux/msm-bus-board.h>
|
||||
#include <linux/ktime.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/msm_adreno_devfreq.h>
|
||||
#include <linux/msm_kgsl.h>
|
||||
#include <linux/of_device.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/regulator/consumer.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/thermal.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_pwrscale.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_pwrscale.h"
|
||||
#include "kgsl_trace.h"
|
||||
#include "kgsl_gmu_core.h"
|
||||
|
||||
#define KGSL_PWRFLAGS_POWER_ON 0
|
||||
#define KGSL_PWRFLAGS_CLK_ON 1
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
#ifndef __KGSL_PWRCTRL_H
|
||||
#define __KGSL_PWRCTRL_H
|
||||
|
||||
#include <linux/clk.h>
|
||||
#include <linux/pm_qos.h>
|
||||
|
||||
/*****************************************************************************
|
||||
|
||||
@@ -3,15 +3,11 @@
|
||||
* Copyright (c) 2010-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/export.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/hrtimer.h>
|
||||
#include <linux/devfreq_cooling.h>
|
||||
#include <linux/pm_opp.h>
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_pwrscale.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_pwrscale.h"
|
||||
#include "kgsl_trace.h"
|
||||
|
||||
/*
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2010-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2010-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef __KGSL_PWRSCALE_H
|
||||
#define __KGSL_PWRSCALE_H
|
||||
|
||||
#include <linux/devfreq.h>
|
||||
#include <linux/msm_adreno_devfreq.h>
|
||||
#include "kgsl_pwrctrl.h"
|
||||
|
||||
|
||||
@@ -1,17 +1,18 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2018-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/device.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/of_platform.h>
|
||||
#include <linux/clk-provider.h>
|
||||
|
||||
#include <linux/clk-provider.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/of_platform.h>
|
||||
#include <linux/regulator/consumer.h>
|
||||
|
||||
#include "adreno.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_rgmu.h"
|
||||
#include "kgsl_gmu_core.h"
|
||||
#include "kgsl_trace.h"
|
||||
#include "adreno.h"
|
||||
|
||||
#define RGMU_CLK_FREQ 200000000
|
||||
|
||||
|
||||
@@ -3,21 +3,14 @@
|
||||
* Copyright (c) 2002,2007-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/export.h>
|
||||
#include <linux/vmalloc.h>
|
||||
#include <asm/cacheflush.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/kmemleak.h>
|
||||
#include <linux/highmem.h>
|
||||
#include <linux/scatterlist.h>
|
||||
#include <linux/slab.h>
|
||||
#include <soc/qcom/scm.h>
|
||||
#include <soc/qcom/secure_buffer.h>
|
||||
#include <linux/ratelimit.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_mmu.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
|
||||
/*
|
||||
* The user can set this from debugfs to force failed memory allocations to
|
||||
@@ -45,6 +38,43 @@ struct cp2_lock_req {
|
||||
#define MEM_PROTECT_LOCK_ID2 0x0A
|
||||
#define MEM_PROTECT_LOCK_ID2_FLAT 0x11
|
||||
|
||||
int kgsl_allocate_global(struct kgsl_device *device,
|
||||
struct kgsl_memdesc *memdesc, uint64_t size, uint64_t flags,
|
||||
unsigned int priv, const char *name)
|
||||
{
|
||||
int ret;
|
||||
|
||||
kgsl_memdesc_init(device, memdesc, flags);
|
||||
memdesc->priv |= priv;
|
||||
|
||||
if (((memdesc->priv & KGSL_MEMDESC_CONTIG) != 0) ||
|
||||
(kgsl_mmu_get_mmutype(device) == KGSL_MMU_TYPE_NONE))
|
||||
ret = kgsl_sharedmem_alloc_contig(device, memdesc,
|
||||
(size_t) size);
|
||||
else {
|
||||
ret = kgsl_sharedmem_page_alloc_user(memdesc, (size_t) size);
|
||||
if (ret == 0) {
|
||||
if (kgsl_memdesc_map(memdesc) == NULL) {
|
||||
kgsl_sharedmem_free(memdesc);
|
||||
ret = -ENOMEM;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (ret == 0)
|
||||
kgsl_mmu_add_global(device, memdesc, name);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
void kgsl_free_global(struct kgsl_device *device,
|
||||
struct kgsl_memdesc *memdesc)
|
||||
{
|
||||
kgsl_mmu_remove_global(device, memdesc);
|
||||
kgsl_sharedmem_free(memdesc);
|
||||
}
|
||||
|
||||
|
||||
/* An attribute for showing per-process memory statistics */
|
||||
struct kgsl_mem_entry_attribute {
|
||||
struct attribute attr;
|
||||
|
||||
@@ -6,7 +6,10 @@
|
||||
#define __KGSL_SHAREDMEM_H
|
||||
|
||||
#include <linux/dma-mapping.h>
|
||||
#include <linux/scatterlist.h>
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_mmu.h"
|
||||
|
||||
struct kgsl_device;
|
||||
@@ -259,34 +262,9 @@ kgsl_memdesc_footprint(const struct kgsl_memdesc *memdesc)
|
||||
* all pagetables. This is for use for device wide GPU allocations such as
|
||||
* ringbuffers.
|
||||
*/
|
||||
static inline int kgsl_allocate_global(struct kgsl_device *device,
|
||||
int kgsl_allocate_global(struct kgsl_device *device,
|
||||
struct kgsl_memdesc *memdesc, uint64_t size, uint64_t flags,
|
||||
unsigned int priv, const char *name)
|
||||
{
|
||||
int ret;
|
||||
|
||||
kgsl_memdesc_init(device, memdesc, flags);
|
||||
memdesc->priv |= priv;
|
||||
|
||||
if (((memdesc->priv & KGSL_MEMDESC_CONTIG) != 0) ||
|
||||
(kgsl_mmu_get_mmutype(device) == KGSL_MMU_TYPE_NONE))
|
||||
ret = kgsl_sharedmem_alloc_contig(device, memdesc,
|
||||
(size_t) size);
|
||||
else {
|
||||
ret = kgsl_sharedmem_page_alloc_user(memdesc, (size_t) size);
|
||||
if (ret == 0) {
|
||||
if (kgsl_memdesc_map(memdesc) == NULL) {
|
||||
kgsl_sharedmem_free(memdesc);
|
||||
ret = -ENOMEM;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (ret == 0)
|
||||
kgsl_mmu_add_global(device, memdesc, name);
|
||||
|
||||
return ret;
|
||||
}
|
||||
unsigned int priv, const char *name);
|
||||
|
||||
/**
|
||||
* kgsl_free_global() - Free a device wide GPU allocation and remove it from the
|
||||
@@ -298,12 +276,7 @@ static inline int kgsl_allocate_global(struct kgsl_device *device,
|
||||
* Remove the specific memory descriptor from the global pagetable entry list
|
||||
* and free it
|
||||
*/
|
||||
static inline void kgsl_free_global(struct kgsl_device *device,
|
||||
struct kgsl_memdesc *memdesc)
|
||||
{
|
||||
kgsl_mmu_remove_global(device, memdesc);
|
||||
kgsl_sharedmem_free(memdesc);
|
||||
}
|
||||
void kgsl_free_global(struct kgsl_device *device, struct kgsl_memdesc *memdesc);
|
||||
|
||||
void kgsl_sharedmem_set_noretry(bool val);
|
||||
bool kgsl_sharedmem_get_noretry(void);
|
||||
|
||||
@@ -3,18 +3,14 @@
|
||||
* Copyright (c) 2012-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/export.h>
|
||||
#include <linux/time.h>
|
||||
#include <linux/sysfs.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/utsname.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/idr.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "adreno_cp_parser.h"
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
#include "kgsl_snapshot.h"
|
||||
#include "adreno_cp_parser.h"
|
||||
|
||||
static void kgsl_snapshot_save_frozen_objs(struct work_struct *work);
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2012-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
@@ -279,6 +279,9 @@ struct kgsl_snapshot_gpu_object_v2 {
|
||||
__u64 size; /* Size of the object (in dwords) */
|
||||
} __packed;
|
||||
|
||||
struct kgsl_device;
|
||||
struct kgsl_process_private;
|
||||
|
||||
void kgsl_snapshot_push_object(struct kgsl_device *device,
|
||||
struct kgsl_process_private *process,
|
||||
uint64_t gpuaddr, uint64_t dwords);
|
||||
|
||||
@@ -1,16 +1,13 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2012-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/err.h>
|
||||
#include <linux/file.h>
|
||||
#include <linux/sched.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/uaccess.h>
|
||||
|
||||
#include <asm/current.h>
|
||||
#include <linux/sync_file.h>
|
||||
|
||||
#include "kgsl_device.h"
|
||||
#include "kgsl_sync.h"
|
||||
|
||||
static void kgsl_sync_timeline_signal(struct kgsl_sync_timeline *timeline,
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2012-2014, 2018 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2012-2014,2018-2019 The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#ifndef __KGSL_SYNC_H
|
||||
#define __KGSL_SYNC_H
|
||||
|
||||
#include <linux/sync_file.h>
|
||||
#include "kgsl_device.h"
|
||||
#include <linux/dma-fence.h>
|
||||
|
||||
/**
|
||||
* struct kgsl_sync_timeline - A sync timeline associated with a kgsl context
|
||||
@@ -68,6 +67,10 @@ struct kgsl_sync_fence_cb {
|
||||
bool (*func)(void *priv);
|
||||
};
|
||||
|
||||
struct kgsl_device_private;
|
||||
struct kgsl_drawobj_sync_event;
|
||||
struct event_fence_info;
|
||||
struct kgsl_process_private;
|
||||
struct kgsl_syncsource;
|
||||
|
||||
#if defined(CONFIG_SYNC_FILE)
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2011, 2013, 2015 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2011,2013,2015,2019 The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/module.h>
|
||||
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_device.h"
|
||||
|
||||
/* Instantiate tracepoints */
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright (c) 2011-2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
@@ -14,10 +14,11 @@
|
||||
#define TRACE_INCLUDE_FILE kgsl_trace
|
||||
|
||||
#include <linux/tracepoint.h>
|
||||
#include "kgsl_device.h"
|
||||
#include "adreno_drawctxt.h"
|
||||
|
||||
struct kgsl_device;
|
||||
#include "kgsl.h"
|
||||
#include "kgsl_drawobj.h"
|
||||
#include "kgsl_sharedmem.h"
|
||||
|
||||
struct kgsl_ringbuffer_issueibcmds;
|
||||
struct kgsl_device_waittimestamp;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user