Re: msm8909 support in a recent kernel

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 29, 2017 at 6:50 PM, Stephen Boyd <sboyd@xxxxxxxxxxxxxx> wrote:

Hi Stephen,

>> I'm looking at building a product using an msm8909 SoC and been
>> somewhat disappointed with the choice of kernels available - Qualcomm
>> I believe are only shipping 3.10, AOSP has some code on 3.18 but both
>> of these kernel releases are end of life.
>>
>> I was looking at the work done to support the Dragonboard on the basis
>> that the msm8916 doesn't look that dissimilar to the msm8909 in terms
>> of the peripherals on the SoC and I was considering forward porting
>> the msm8909 support from 3.10/3.18 to 4.9 (probably Linaro qcomlt
>> tree). Does anyone have a feel for how much work this would be? Would
>> I be completely insane to attempt that?
>>
>
> It can take quite some time to do a git rebase of the 3.10 or 3.18 tree
> to a newer kernel version. Even if you have knowledge of the SoC and
> have been working in the kernel for quite a while it can still take
> weeks if not months to move all the code over and have it all work
> correctly. Copying whole drivers is not really the issue. It's teasing
> out the core framework changes and porting those over that takes time.

Yeah that does seem to be where the main issues lie. Forward porting
the drivers is hard due to their reliance on a bunch of out of tree
code or modified generic code that has changed considerably in the
intervening years.

> It's not completely insane to support this SoC upstream though. You'd
> have to bring in the pinctrl and clk drivers, which may be a bit of
> effort. After that it should mostly be enabling various devices by
> adding DT nodes and testing things out. It looks like this is 32-bit, so
> getting SMP support may require some tweaks to the smp_ops code for qcom
> platforms. You're right that it isn't too different from msm8916, so it
> may be that most of the driver support for that SoC transfers over
> nicely to this one.

I've started from the 8916 drivers and started to port in the changes
from the 3.18 tree that seem relevant. I have a kernel that boots and
talks over the serial. I've done a bunch of pinctrl although it is not
complete yet. I've had a look at the clocks and got the PLL working
but I think I'm probably missing a document that describes the
clocking architecture in more detail (I have the register reference
but that's a bit of a worm's eye view).

The current issue I am experiencing is the first write to an SPMI
channel causes the board to reset. I suspect this means that I have
not setup clocks correctly somewhere?
--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux