GalliumOS / galliumos-distro

Docs, issues, and artwork sources for GalliumOS
https://galliumos.org/
GNU General Public License v2.0
348 stars 11 forks source link

No audio (in/out) on Google Pixel 2015 (SAMUS) #100

Closed reynhout closed 7 years ago

reynhout commented 8 years ago

Reported on Reddit: https://www.reddit.com/r/GalliumOS/comments/3tb7ly/no_sound_on_pixel_2_and_accidentally_removed/

Possible solution? https://github.com/raphael/linux-samus

The internal mic is also not working on SAMUS. Possibly related, so it might make sense to track them together. Report: https://www.reddit.com/r/GalliumOS/comments/3xw2zm/audio_issues_on_pixel/

welbinator commented 8 years ago

Is there anybody out there who could break this "possible solution" down into a noob friendly tutorial? That link you provided makes a lot of assumptions regarding the reader's familiarity with Linux

reynhout commented 8 years ago

Sorry, that link isn't a solution for users. There might (or might not!) be info in there that will help someone on the GalliumOS team debug the problem and roll the fix into a package update.

When we get it fixed, you will hopefully not need to do anything tricky at all -- just update the system via the usual apt-get update && apt-get dist-upgrade process.

welbinator commented 8 years ago

ahaha, ok. That makes a lot of sense. Thanks!

ghost commented 8 years ago

Are we sure this is unrelated to #86 or #82?

reynhout commented 8 years ago

Do you mean #66 instead of #86? If so, possibly -- but the new Pixel isn't a Bay Trail, so I decided to track this separately until we could confirm/deny the relationship.

82 could be related, but I think the reports are that sound never worked on this model. There does seem to be a lot of confusion getting sound to work as expected though, much of which appears to be status quo in Linux. :(

ghost commented 8 years ago

Oops, yes, you're right. I was referring to #66. My bad.

reynhout commented 8 years ago

Some SAMUS customizations

Pechnet commented 8 years ago

Hi all,

I just got my hands on Chrome Pixel 2015 LS. I also have the sound issue. Have you got any estimate on when this will be fixed within the new Gallium OS release? Otherwise I will need to look for alternative ways to patch it.

reynhout commented 8 years ago

@Pechnet : we do not have an estimate at this time, sorry. We do not have a test device for this model.

The solutions above are reported to work, but have not been tested by us. If you are able to test them, please do and let us know how things go. With active assistance, we might be able to incorporate the fixes into a future release.

Pechnet commented 8 years ago

OK thanks. Same goes for the track-pad right click?

reynhout commented 8 years ago

@Pechnet right-click issues might just be touchpad driver config. Has the problem been reported elsewhere?

welbinator commented 8 years ago

somebody buy these guys a Pixel already =]

Pechnet commented 8 years ago

@reynhout Thanks for clarifying and well done, apart from the sound issue Gallium OS is impressive. Yes it it's the https://github.com/GalliumOS/galliumos-distro/issues/108. I tried to follow the recommended steps but I encounter an issue. I'm not an expert Linux user, going back to it after many years. I posted a follow up on that G+ thread.

reynhout commented 8 years ago

@Pechnet I don't really understand what's going on in that other ticket. This is the wrong place to discuss it, but if you can add some detail there as to what the problem behaviour is, that would help. Right now that ticket reads like a mistaken report, so it would be difficult to work on.

ghost commented 8 years ago

I would be very interested in working on the Pixel issues, but I need a Pixel first.

caskaid commented 8 years ago

Using the "Possible Solution" repository in the top post resulted in completed broken gallium instance after rebooting. Black screen, no tty, nothing.

wamacdonald89 commented 8 years ago

@caskaid I can confirm this behavior as well. There may be a solution in there after changing some configs but ultimately we should not be suggesting this as a solution since it completely replaces the galliumos optimized kernel.

welbinator commented 8 years ago

We should ask pitch in and buy these guys a pixel

welbinator commented 8 years ago

all* pitch in

caskaid commented 8 years ago

Additional Testing:

In booting a stock Ubuntu 15.10 from SD and loading raphael/linux-samus from above, I was able to successfully get working audio out from both speakers and headphone. Had to reboot a couple of times and it still complained about pulseaudio not starting. Trackpad completely stops working however, but might just be some additional reconfiguration.

Added Bonus: Microphone was also detected and appeared to be working. Will be testing other items related to the linux-samus set, but wanted to keep the emphasis here on audio related items.

Trying to install the linux-samus set ~ 2 weeks ago ON GalliumOS resulted in a non-booting system. Not sure if I should try again. I am also not able to reach grub no matter what timeout/display settings I set for grub and I get screen distortion while trying to boot linux-samus from SD, but it eventually boots after around 20 seconds. Couldn't read what it was actually hanging on, will update comment if I can with updated information.

coolstar commented 8 years ago

I'd also be willing to look into the Pixel 2, but unfortunately it's quite expensive. Otherwise I'd be up for building a full coreboot ROM and getting the chromebook working fully in both Linux and Windows just like I did on the Acer C720, C740 and other Haswell/Broadwell chromebooks.

fortes commented 8 years ago

FWIW, I just did a clean install of Gallium and cannot get sound to play. The only output device is HDMI.

I previously have installed Debian on the Pixel 2 and was able to get sound running via https://github.com/raphael/linux-samus -- but it does require jumping through some hoops (see their README)

hugegreenbug commented 8 years ago

@fortes We are aware of the issue. The pixel 2 still isn't officially supported. We plan on porting the changes from raphael's kernel soon.

hugegreenbug commented 8 years ago

I ported the pixel2 sound module to the GalliumOS kernel, which appears to just be this file: https://github.com/raphael/linux-samus/blob/master/build/linux/sound/soc/intel/boards/bdw-rt5677.c . I haven't uploaded the code anywhere yet since I have no idea if it works. I have built a test kernel: https://drive.google.com/file/d/0B6zPD2kAJoTJWGlyVGk4WldTTDg/view?usp=sharing .

This kernel will need the firmware and you will need to run the setup script from Raphael's linux-samus kernel https://github.com/raphael/linux-samus/tree/master/scripts/setup/sound . If the kernel and the script works, then I can make a pixel2 package that has the modified config files and firmware.

hugegreenbug commented 8 years ago

I forgot to mention that acpid isn't included in GalluimOS, so you would need to install it for the sound setup script to work.

caskaid commented 8 years ago

Tried to test kernel without luck. All I did was ensure I was in fact booted into the right kernel, copied the appropriate "IntcSST2.bin" firmware to /lib/firmware/intel and rebooted, then attempted to run the sound.sh script which fails.

aplay -l does not list bdw-rt5677 at all. Nothing in dmesg regarding it, same for kern.log and syslog Spoke with ehegnes over at #linux-samus and he thought that things might not have been patched properly, but wont know until he can do a diff against linux-samus and inspect the important sound parts.

hugegreenbug commented 8 years ago

I will check it in later today

hugegreenbug commented 8 years ago

I found something I missed. Here is another test kernel: https://drive.google.com/file/d/0B6zPD2kAJoTJNE9sSU5leTdHMUk/view?usp=sharing .

I've also checked in the changes: https://github.com/galliumos/linux and I'm trying to get to get a confirmation about whether this is everything or not in #linux-samus.

hugegreenbug commented 8 years ago

ehegnes tried it out and said it still didn't work, but the modules loaded. I think this is too difficult to get right without me having one. I was hoping it would be straight forward. We aren't far from having enough to purchase one from donations. I'll revisit this when we get one.

caskaid commented 8 years ago

Ok. Last kernel did get it loaded as you mentioned, so it's a start. PM me the difference on IRC and I'll donate the remainder.

hugegreenbug commented 8 years ago

I think I can apply the patches to the linux-samus kernel instead until we get one.

suhangpro commented 8 years ago

I see there is an installation guide for Samus mentioning a fix for the sound problem: https://wiki.galliumos.org/Installing/Samus Is that a working solution for now?

ghost commented 8 years ago

Yes? No? Maybe? Do you have a Samus? Care to try it? (surely if someone posted it, it works for them)

doscero commented 8 years ago

@suhangpro The method works but you will be using a different kernel than from what gallium os provides

Pechnet commented 8 years ago

I had my first Google Hangout today with sound!!! Thanks a lot guys!

I did follow the recommended method and sound worked just by running the script. Speakers are ok but headphone doesn't sound very well. I've been lazy and didn't explore further, will the additional setup help to fix that?

Despite the fact I need to use a different kernel I would recommend it for now as having the sound finally made the machine complete for work.

sshivaji commented 8 years ago

What do I need to do to enable sound with the Gallium OS kernel? Is there a simple script I can use? Thanks

sshivaji commented 8 years ago

@doscero I got Samus kernel to work with audio on Gallium OS. However, from the comments above, it looks like people are able to get the Gallium OS kernel to work with audio (without using the samus kernel), how do I do that? Thanks

doscero commented 8 years ago

@sshivaji I believe that they are attempting to get audio to work with the Gallium OS kernel. From what I know of, there is currently no working method to getting audio to work on it.

coolstar commented 8 years ago

Update: I now have an upstream coreboot ROM that works and boots up on the Pixel 2.

However, the ROM has some issues with touch screen, touchpad and audio in Linux (I can't debug these without access to one though :/)

coolstar commented 8 years ago

Update: Looks like it isn't an issue with the ROM.... Touch Screen on the Pixel 2 is working fine in Windows now...

coolstar commented 8 years ago

Looking at the audio on the Pixel 2 from the Windows side of things, there's an RT5677CE over I2C and an RT5677AA over SPI for the sound. However, I'd need to have the device on hand to investigate further on Linux & Windows :/

coolstar commented 8 years ago

Anyways, I've investigated as much of the Pixel 2 as I could possibly do over teamviewer on a tester's machine remotely.

I'd have to have a Pixel 2 on hand to reverse engineer it further and figure out the Touchpad & Sound devices.

chepurko commented 8 years ago

Hi, FYI following instructions on setting up Raphael's kernel from https://github.com/raphael/linux-samus which is also echoed here https://wiki.galliumos.org/Installing/Samus, I was able to get audio to work, both output to speakers and input to microphone.

On my initial try after install GalliumOS on my Pixel 2 I ran through the instructions and output (speakers) worked fine. But today I noticed the microphone didn't work on some calls, so I tried the sound.sh script again and after some fiddling with settings I've recorded sound in audacity and everything sounds fine.

On the initial run through installing Raphael's kernel the sound.sh script will probably fail (which they clearly warn about) and you will have to do the step-by-step configuration for sound. Then you should set up things properly in the PulseAudio tray as described in the GalliumOS Wiki and also make sure the settings in Volume Control are correct (remember to check Output Devices > Port > Speakers/Headphones as you won't have speaker sound if this is set to headphones).

From the Wiki:

Default Server to (Numbers)unix:/run/user/1000/pulse/native Default Sink to bdw-rt677 Analog Stereo Volume Control/Output Devices/bdw-rt677 Analog Stereo and set to fallback and to the port you want to listen through (Headphones or Speakers).

ghost commented 8 years ago

Interesting. We probably will need a separate support package and seperate installer image for proper out-of-the-box Samus operation (galliumos-samus or galliumos-device-samus)

To be clear, that doesn't mean it's happening. We still don't have infinite amounts of money to just buy Pixels.

welbinator commented 8 years ago

I've been considering putting Linux on my Pixel again. If you come up with something that you think fixes audio on Samus, I'll be happy to test it out and report back.

ghost commented 8 years ago

I would love to throw together a package, I really would. But without either having physical access to a Samus myself, or having direct contact with someone who does (over Skype+TeamViewer or some such similar thing), it will be incredibly difficult to get working.

welbinator commented 8 years ago

I'm very much a linux noob, but I could carve out a time to do a hangout and let you poke around my pixel. How long would you need do you think?

ghost commented 8 years ago

I'm not sure. I would need to dig around on your computer (and your filesystem) a bit using a remote access tool, so make sure you're comfortable with me doing that before offering.

welbinator commented 8 years ago

yeah I can just powerwash before hand, and sign in with a dummy account I don't use. Chrome Remote Desktop should work fine for that I imagine

ghost commented 8 years ago

Ah, poking around a ChromeOS system won't be particularly helpful. If you install GalliumOS via chrx first, that's fine.