On 29.05.19 10:04, walter harms wrote: Hi,
>> basic rule: don't use vendor kernels for production, unless you >> *really* *really* have to. > > we have custom hardware, so this was needed. Custom hardware doesn't necessarily need a vendor kernel. Most cases should be happy w/ board specific DTS, possibly some extra drivers, sometimes perhaps a few extra tuning patches. But: such development, IMHO, should always happen on recent mainline and things that aren't really customer specific should be upstreamed as early as possible. Vendor kernels are a different thing: usually they pick some older base versions, do lots of strange things to get their hw somehow working, and - one of the worst things one could do - merge down things from mainline into their fork. After a few iterations, the code gets pretty much unmaintainable. Such things are probably nice for a sales demo, perhaps emc tests, but certainly not for production. Just have a look at typical android vendor kernels. Horrible. >> HW vendors usually don't have the capacities to offer any decent >> kernel support. there're only few exceptions (eg. phytec) that have >> their own kernel hackers and actively participate in upstreaming. > > We have noticed that also, *active* is a big point. Yes, but most hw vendors even never have been active in the first place. Even if a particular company is doing that in *some* area, it doesn't necessarily mean they're doing it for your particular product. Just look at Intel, and what mess the produced for their flopped sofia soc. >> by the way: should we create a separate list for commercial topics ? >> > > I used linux-arm and it worked surprisingly well (not all mails went truh the > list) > but it look very silent and i was unsure if they were still alive. IIRC, linux-arm is for arm specific development. Sure, the chance of finding some consultant there is better there, as arm just has a huge market share in embedded world. > A big win > for everyone would be a FAQ/Lessons-learned something you can take to check a > contract. > the customer will know what to expect and the contractor will know what to > offer. hmm, if anybody else here is interested in that, let's start with that. maybe these discussions might be better off-list ? > Having something a list of minimum requirements like that FAQ would improve > the stand of > the hardware developed to support linux. Not everyone has a big budget or > need to > produce in millions like the raspi guys did, and even they have sometimes > troubles. Well, one of the basic rules, IMHO, would be: if you're going to do some linux embedded project, you should do a proper evaluation: * check whether the board is already supported by mainline kernel (try to get a running mainline kernel built by yourself) * never use vendor kernels at all * check whether your supplier has active kernel hackers and actually does mainline integration * if you run into any problems here, call in a linux embedded and kernel export - *soon* in the project You spend a few extra bucks for the consultant, but he'll protect you from the wrong choices, eg. buying unsupported / badly supported hardware. In recent years, I had many clients that called me in far too late. One eg. was trying to build a medical device, using custom boards (very high hw development costs and long timeline, due to qualifactions, etc), with fancy HMI, but picked imx53, where no *usable* gpu driver exists. When I brought the bad news, the project already ran for several years and nobody dared to restart board development. (in the meantime, long after i've gone, they indeed create a new board w/ mx6). Such things could easily prevented if people just wouldn't trust the hw vendor at all and ask us (kernel hackers) early. --mtx -- Enrico Weigelt, metux IT consult Free software and Linux embedded engineering i...@metux.net -- +49-151-27565287