Live data from Hacker News

Ask HN: Project ideas for a Linux kernel module

news.ycombinator.com

21–30 of 48 posts

Re: Ask HN: Project ideas for a Linux kernel module

#21
Writing or modifying an existing driver for something like an I2S DAC would suit you, I think.

You'd have to figure out phandle support for the I2C configuration channel, fire up I2S streaming by enabling it in the kernel and piping audio to the DAC, then playing it into some speakers.

Could expand it by adding some filtering. Many DACs have filter banks that you can populate with coefficients via I2C.

There's some decent kernel module resources and examples in this repo if this is something you're brand new to:

https://github.com/Johannes4Linux/Linux_Driver_Tutorial

If you have any interest or experience in cybersecurity and have considered doing that professionally, my company is hiring and likely will be all year. We probably have a use for a new SWE on the embedded side. Email me at my username at Gmail.

Re: Ask HN: Project ideas for a Linux kernel module

#22
post #13

Probably the most useful thing you could do would be take any Android device (or iOS device with the bootrom exploit) and rebase the patches for it on mainline, clean them up and get them merged into mainline Linux. Same goes for any other device not supported in mainline really, but Android devices are almost always like this. Along those lines, look at all the dkms modules in any Linux distro and try to talk to the…

Yeah, supporting Android devices in mainline kernel would be really useful also for projects like postmarketOS (https://postmarketos.org/)

Re: Ask HN: Project ideas for a Linux kernel module

#24
One of my pet peeves is that the Linux SPI driver framework has a very transactional API. You can read/write N bytes to a bus at a time.

Some SPI devices can stream out lots of data on the bus. I’m looking at you ADCs.

It’d be nice to have a stream style API for that. Not sure which Linux framework is best suited for that. Maybe IIO but something on those lines might be fun to explore.

Re: Ask HN: Project ideas for a Linux kernel module

#25
post #14

Not a project idea, but you might get a little inspiration from Asahi Lina. They're developing the linux kernel for M1 Macs and often stream it. https://github.com/asahilina

The voice filters, the cutesy avatars, a little too much for me. I think it's a bit better without audio.

Re: Ask HN: Project ideas for a Linux kernel module

#26

Writing or modifying an existing driver for something like an I2S DAC would suit you, I think. You'd have to figure out phandle support for the I2C configuration channel, fire up I2S streaming by enabling it in the kernel and piping audio to the DAC, then playing it into some speakers. Could expand it by adding some filtering. Many DACs have filter banks that you can populate with coefficients via I2C. There's some d…

Proper codec driver would be heavily abstracted though. I2C hidden behind regmap. Regmap mostly hidden behind ALSA kcontrol API. A lot of codec drivers consist mostly of tables of mappings between abstract controls and register locations/values. Not very exciting stuff. Finding an acquirable SoC that doesn't have DAI driver implemented may also be a challenge.

But why not I guess. :)

Camera sensor drivers are a bit less abstracted and many sensors don't have upstream drivers. But there's also a lack of quality documentation for HW in this area, oftentimes... v4l2 API is a bit more approachable than alsa PCM API, IMO. And on advanced SoCs you can pass around video buffers bewteen various v4l2 mem2mem devices to transform/process the data in HW. Drivers for HW acceleration of image or video data processing are seldom exercised in all their features, so there are many bugs there waiting to be squashed, and features to be implemented. It's a deep rabbit hole.

Re: Ask HN: Project ideas for a Linux kernel module

#27
post #5

I have recently been looking into getting a 12" Apple Macbook for on the road. The 12" Macbooks were small 12" Intel laptops produced between 2015 and 2017. They can boot Linux, but many devices are not functioning. They are great little machines, though a bit underpowered (even when they were new) so running MacOS is not a great experience. Decent Linux support should give these devices a second live. Most devices s…

So Elementary OS is one example of Linux that already runs very happily on my 2012 MacBook Air.

Surely most of the required support is there already?

Re: Ask HN: Project ideas for a Linux kernel module

#29
post #26

Writing or modifying an existing driver for something like an I2S DAC would suit you, I think. You'd have to figure out phandle support for the I2C configuration channel, fire up I2S streaming by enabling it in the kernel and piping audio to the DAC, then playing it into some speakers. Could expand it by adding some filtering. Many DACs have filter banks that you can populate with coefficients via I2C. There's some d…

Proper codec driver would be heavily abstracted though. I2C hidden behind regmap. Regmap mostly hidden behind ALSA kcontrol API. A lot of codec drivers consist mostly of tables of mappings between abstract controls and register locations/values. Not very exciting stuff. Finding an acquirable SoC that doesn't have DAI driver implemented may also be a challenge. But why not I guess. :) Camera sensor drivers are a bit l…

Anywhere is a good place to start.

Let the fella learn.

Post reply on HN