[PATCH 6/6] drm/msm/adreno: Remove CONFIG_OF checks

Rob Clark robdclark at gmail.com
Wed Nov 18 12:29:21 PST 2015


On Wed, Nov 18, 2015 at 11:04 AM, Archit Taneja <architt at codeaurora.org> wrote:
>
>
> On 11/18/2015 8:15 PM, Rob Clark wrote:
>>
>> On Wed, Nov 18, 2015 at 6:19 AM, Archit Taneja <architt at codeaurora.org>
>> wrote:
>>>
>>> Remove CONFIG_OF checks in adreno_device.c. The downstream bus scaling
>>> stuff is included only when CONFIG_OF is not set. So, remove that too.
>>>
>>> Signed-off-by: Archit Taneja <architt at codeaurora.org>
>>> ---
>>>   drivers/gpu/drm/msm/adreno/adreno_device.c | 52
>>> ------------------------------
>>>   1 file changed, 52 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c
>>> b/drivers/gpu/drm/msm/adreno/adreno_device.c
>>> index 1ea2df5..950d27d 100644
>>> --- a/drivers/gpu/drm/msm/adreno/adreno_device.c
>>> +++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
>>> @@ -19,10 +19,6 @@
>>>
>>>   #include "adreno_gpu.h"
>>>
>>> -#if defined(DOWNSTREAM_CONFIG_MSM_BUS_SCALING) && !defined(CONFIG_OF)
>>> -#  include <mach/kgsl.h>
>>> -#endif
>>> -
>>
>>
>> I think we do need to keep the bus-scaling for 3.10 kernel, esp. for
>> the display (otherwise underflow).. but the 'pdata->bus_scale_table'
>> stuff can be dropped since somehow that is unneeded. (I guess
>> downstream bus scaling gets that from DT?  I didn't really look into
>> how it worked.)
>
>
> Okay. It looks like the AHB bus scale tables are hardcoded within the
> driver and the AXI ones are retrieved from the mdp/gpu DT nodes.
>
>>
>> Eventually when we have real bus scaling upstream, hopefully we can
>> hack up some sort of shim for downstream kernel so the same drm/msm
>> code can also work downstream, but we'll have to see what the upstream
>> bus scaling API looks like.
>
>
>
> The adreno driver isn't using the bus scale table at all when DT is
> enabled. There are some downstream bus scale API helpers that let us
> get the table from DT. I guess we could put that under the BUS_SCALING
> macro.
>
> Is this particular patch okay as is? The bus scale stuff affected is
> needed only by the3.4 kernel stuff anyway.

oh, you're right, I didn't notice that this file was only using it for pdata..

BR,
-R

> Archit
>
>>
>> BR,
>> -R
>>
>>>   #define ANY_ID 0xff
>>>
>>>   bool hang_debug = false;
>>> @@ -168,7 +164,6 @@ static void set_gpu_pdev(struct drm_device *dev,
>>>   static int adreno_bind(struct device *dev, struct device *master, void
>>> *data)
>>>   {
>>>          static struct adreno_platform_config config = {};
>>> -#ifdef CONFIG_OF
>>>          struct device_node *child, *node = dev->of_node;
>>>          u32 val;
>>>          int ret;
>>> @@ -205,53 +200,6 @@ static int adreno_bind(struct device *dev, struct
>>> device *master, void *data)
>>>                  return -ENXIO;
>>>          }
>>>
>>> -#else
>>> -       struct kgsl_device_platform_data *pdata = dev->platform_data;
>>> -       uint32_t version = socinfo_get_version();
>>> -       if (cpu_is_apq8064ab()) {
>>> -               config.fast_rate = 450000000;
>>> -               config.slow_rate = 27000000;
>>> -               config.bus_freq  = 4;
>>> -               config.rev = ADRENO_REV(3, 2, 1, 0);
>>> -       } else if (cpu_is_apq8064()) {
>>> -               config.fast_rate = 400000000;
>>> -               config.slow_rate = 27000000;
>>> -               config.bus_freq  = 4;
>>> -
>>> -               if (SOCINFO_VERSION_MAJOR(version) == 2)
>>> -                       config.rev = ADRENO_REV(3, 2, 0, 2);
>>> -               else if ((SOCINFO_VERSION_MAJOR(version) == 1) &&
>>> -                               (SOCINFO_VERSION_MINOR(version) == 1))
>>> -                       config.rev = ADRENO_REV(3, 2, 0, 1);
>>> -               else
>>> -                       config.rev = ADRENO_REV(3, 2, 0, 0);
>>> -
>>> -       } else if (cpu_is_msm8960ab()) {
>>> -               config.fast_rate = 400000000;
>>> -               config.slow_rate = 320000000;
>>> -               config.bus_freq  = 4;
>>> -
>>> -               if (SOCINFO_VERSION_MINOR(version) == 0)
>>> -                       config.rev = ADRENO_REV(3, 2, 1, 0);
>>> -               else
>>> -                       config.rev = ADRENO_REV(3, 2, 1, 1);
>>> -
>>> -       } else if (cpu_is_msm8930()) {
>>> -               config.fast_rate = 400000000;
>>> -               config.slow_rate = 27000000;
>>> -               config.bus_freq  = 3;
>>> -
>>> -               if ((SOCINFO_VERSION_MAJOR(version) == 1) &&
>>> -                       (SOCINFO_VERSION_MINOR(version) == 2))
>>> -                       config.rev = ADRENO_REV(3, 0, 5, 2);
>>> -               else
>>> -                       config.rev = ADRENO_REV(3, 0, 5, 0);
>>> -
>>> -       }
>>> -#  ifdef DOWNSTREAM_CONFIG_MSM_BUS_SCALING
>>> -       config.bus_scale_table = pdata->bus_scale_table;
>>> -#  endif
>>> -#endif
>>>          dev->platform_data = &config;
>>>          set_gpu_pdev(dev_get_drvdata(master), to_platform_device(dev));
>>>          return 0;
>>> --
>>> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora
>>> Forum,
>>> hosted by The Linux Foundation
>>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-arm-msm"
>> in
>> the body of a message to majordomo at vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
>
> --
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
> a Linux Foundation Collaborative Project


More information about the dri-devel mailing list