Skip to content
View M-Vaittinen's full-sized avatar

Block or report M-Vaittinen

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
M-Vaittinen/README.md

About me

I am a passionate Linux kernel developer who enjoys collaborating with the Linux kernel community. This is a GitHub page - so people probably expect to see techy stuff here. Guess what, I am not always just sitting in front of a computer or tinkering with electronics. I do also enjoy for example riding a motorbike, fishing, hunting and jogging.

Techy stuff

Most of my work has been done for the Linux device drivers and related frameworks. For some reason, the interrupt-handling code and races around it have always facinated me. I've also enjoyed designing and implementing (timing-wise) performance critical pieces and building the locking mechanisms around them. At some point, I also had my share of both the in-kernel and userspace networking code. For example, the Linux IPv6 routing code probably still includes a tiny contribution from me :) Oh, I forgot to mention the Denx uBoot - I've not managed to avoid tinkering with it and adding a PMIC driver upstream too ;)

Social coding

As I said, I enjoy collaborating with the Linux kernel community. You can find my name from the MAINTAINERS file - and code authored by me at least from the regulators, GPIOs, regmap-IRQ, linear-ranges, watchdog, RTC, IPv6, netlink, power-supply, IIO, clk - and maybe some other - subsystems/components. Working with the upsteam community is the key thing for me. By the way, this should not be a surprize - none of my contributions have gone upstream without a few review comments and fix iterations. Reading suggestions and even criticism is hard - I am proud of my code - but it is also educating. I have learnt from all of the comments whether they have resulted a change in code/comments or not. It has not been easy to learn how the community works. It has taken a lot of time and effort, but at the end of the day it has been worth it. It's not only I have learnt the technology, people and processes, but also a few of the other Linux developers have learnt my ways and small oddities. I think I can say I am a part of that community by now. It helps with the further work I do. By the way, let's reverse back a few sentences to being proud of my code - being proud of your code is important. It is often linked to caring for the code you have written. Fixing your bugs and making improvements. I believe in being responsible.

"Do you know Linux?"

This is the question I have been asked in almost all job interviews in which I have participated. Sigh. I have been working with Linux for around 20 years. Last 15 mostly writing device/bus drivers. Still... Do I know Linux? According to the web, there were 20.7 million lines of code in Linux at 2020. (I didn't check this, but the figure sounds reasonable to me. You can, for example, run cloc to find out more accurate and current numbers). Point being? Who can master 20.7 million lines of code? And to be more precise, 20.7 million lines of fast evolving code. No one.

A more relevant question is if I know certain parts of code or if I know where to find out the needed details. For that, the answer is yes and yes. I know a few device driver frameworks and drivers. I know where to look for examples or documentation. For new and hard questions, I even have a few colleagues (local and remote) whom I can discuss with. Maybe most importantly - there is the whole broad Linux kernel community.

Still, do I know all the Linux? Am I a jack of all trades there? No. I don't. Ni, I am not. I know my strengths and points that need improvement - and I do always consider what I can do and what I can't do or what someone else does better.

Wish to have a chat?

I believe in email when it comes to communication. You can reach me using [email protected]. I am also often lurking in IRC at libera.chat channels #armlinux #linux-imx #beagle #u-boot #kernelnewbies #renesas-soc, using nick mvaittin - just please note that responses may be delayed, and messages may even be lost. So, please use email for more reliable communication.

Best Regards --Matti Vaittinen

Popular repositories Loading

  1. RoKiX-firmware-for-nRF5-SDK RoKiX-firmware-for-nRF5-SDK Public

    Forked from RohmSemiconductor/RoKiX-firmware-for-nRF5-SDK

    RoKiX firmware examples for nRF5 SDK

    C

  2. linux linux Public

    Forked from torvalds/linux

    My personal storge containing unofficial development versions of some ROHM PMIC (and other IC) drivers. May be rebased w/o warning.

    C 2

  3. beagle-dev-tools beagle-dev-tools Public

    My BeagleBoneBlack based development. Projects like an environment to develop/test linux device drivers and a BBB controlled electric meat-smoker.

    C++

  4. M-Vaittinen M-Vaittinen Public

  5. M-Vaittinen.github.io M-Vaittinen.github.io Public

    HTML

  6. c-for-fun c-for-fun Public

    Some silly game programming done with my kids :]

    C