Slashdot Mirror


Linux 3.17 Kernel Released With Xbox One Controller Support

An anonymous reader writes The Linux 3.17 kernel was officially released today. Linux 3.17 presents a number of new features that include working open-source AMD Hawaii GPU support, an Xbox One controller driver, free-fall support for Toshiba laptops, numerous ARM updates, and other changes.

64 of 114 comments (clear)

  1. Please explain by stair69 · · Score: 5, Interesting

    Why does a driver for a game controller need to be incorporated into the kernel?

    1. Re:Please explain by Anonymous Coward · · Score: 4, Informative

      It doesn't, you can load it as a module.

    2. Re:Please explain by Qzukk · · Score: 1

      So that people can plug the controller in and use it without having to compile their own driver?

      --
      If I have been able to see further than others, it is because I bought a pair of binoculars.
    3. Re:Please explain by Anonymous Coward · · Score: 2, Informative

      Why does a driver for a game controller need to be incorporated into the kernel?

      Because it is easier for somebody else to maintain that way, the issue is that the Linux kernel does not have a stable binary interface so you cannot just provide a driver and expect it to continue working over time. When the kernel ABI is updated any changes to it that any driver depends on needs to be reflected in every one of those drivers.

      The alternative is that every driver is hosted in its own repo somewhere else and kernel maintainers then have to pull all those drivers from the various repos and make sure they all compile when a change is made to the ABI. But the current state leads to a very bloated kernel.

    4. Re:Please explain by skids · · Score: 5, Insightful

      It doesn't, you can load it as a module.

      ...or run the alternative userspace driver, which linux supports doing as well.

      What really should be the question is why can't even Microsoft, which despite their software reputation generally is well reguarded for input accessories, not present a consistent interface across different generations of controllers. It's not like there isn't an enumeration standard they could follow.

    5. Re:Please explain by shione · · Score: 4, Insightful

      Because the xbox controller is the de facto standard controller in windows and on steam. And Linus knows that to get Linux onto everyones desktop one of the biggest shortcomings in Linux is mainstream commercial software and games. Steam OS (which cqan be installed over linux and not just standalone) sorta fixes that so it helps if the OS already has controller support.

      What I am waiting for is when Linux has out of the box support for those $1 usb bluetooth modules. They are a bitch to get working and really needed when youre setting up Linux as a HTPC and you dont want a huge IR module hanging out of your pc.

    6. Re:Please explain by Anonymous Coward · · Score: 1

      Yes, that's great and all - but the point is that drivers for peripherals don't belong in a kernel. Its sort of stupid. Drivers for peripherals should be loaded after the fact and shouldn't require waiting for a new GNU/Linux kernel to ship before the device can be used.

    7. Re:Please explain by Sam36 · · Score: 1

      You are either trolling or clueless...
      A kernel is an interface between software and hardware (like a game controller...)
      Any hardware driver in the linux kerel can be built in the kernel, or as a pluggable module.

    8. Re:Please explain by Anonymous Coward · · Score: 1

      Because 2000 unnecessary context switches per second are 2000 unnecessary context switches per second.

    9. Re:Please explain by Chaos+Incarnate · · Score: 4, Insightful

      Microsoft didn't want to allow the Xbox One to accept Xbox 360 controllers, so they chose to scrap XInput support from the Xbox One controllers. That PC users can't use the controllers is just an unfortunate side-effect.

      --
      Benford's Corollary to Clarke's Law: "Any technology distinguishable from magic is insufficiently advanced."
    10. Re:Please explain by Anonymous Coward · · Score: 1
    11. Re:Please explain by ihtoit · · Score: 1

      Because the box is a loss leader, Microsoft make their money on software and accessories, and because they don't want to ape Nintendo with their legacy ports in the Wii. If I had an N64 as well I'd have no need for two Wiimotes.

      (glad I'm not the only one who noticed the more-than-passing similarity between the Duke and the One and questioned the need for physically incompatible ports).

      --
      Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
    12. Re:Please explain by ihtoit · · Score: 1

      uh... thought it had that, given that there's a (now sadly unmaintained) standard: IEE802.15.1, and that most commodity bluetooth gear is driven by chips from just one or two manufacturers (Broadcom is one, I think Ericsson might be another)

      --
      Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
    13. Re:Please explain by Kjella · · Score: 3, Interesting

      The problem is that you can not control a kernel driver through an ABI, it all runs as root so bad driver code can corrupt or crash everything. If you can compile and trace/fix the driver yourself that's a manageable risk, if it's just a blob you're at the vendor's mercy. And since Linux doesn't have the market share (carrot) or a big certification program (stick) that wouldn't be a very good idea. The best case scenario is when you have a low-level ABI and can put the high-level driver code in a userspace driver, that way it can't harm the rest of the system at a slight performance penalty due to the context switches.

      That does depend on the hardware complying to some low level ABI though, otherwise the kernel wouldn't know how talk to the hardware. Fortunately USB is such a thing, plug in any USB device be it a keyboard, mouse, printer, scanner, memory stick or an XBone controller and Linux has a low level kernel driver (one per USB generation I think, actually) to read/write data. That's what the alternate "xboxdrv" driver does, it reads USB events, translates them to input events and returns them to the kernel. It only works for USB though, you still need drivers to talk to PCIe devices, disk drives, network controller and whatnot else though.

      --
      Live today, because you never know what tomorrow brings
    14. Re:Please explain by HalAtWork · · Score: 4, Interesting

      Couldn't they just have a USB ID/Bluetooth ID whitelist?

    15. Re:Please explain by ihtoit · · Score: 1

      yeah that. I could take a photo of my Wii if you like, with some sort of live indication of the date/time, and upload it to imgur?

      --
      Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
    16. Re:Please explain by aliquis · · Score: 1

      Why do a driver for random tv-card?

      Why not? I want support for the controller. Thank you all :)

    17. Re:Please explain by jones_supa · · Score: 2

      They are not unnecessary if they provide extra safety.

      It is like using C++ vector instead of C array. There is some performance overhead, but it is a fair price to pay for the added safety.

    18. Re:Please explain by Wootery · · Score: 1

      Some of us like low latency input

      Is there really a difference in latency between kernel and userland drivers? As in, anywhere near the time it takes to render a frame?

    19. Re:Please explain by jones_supa · · Score: 1

      I doubt there is.

    20. Re:Please explain by NonUniqueNickname · · Score: 3, Funny

      Why does a driver for a game controller need to be incorporated into the kernel?

      Welcome to /. Mr. Tanenbaum. Please feel free to create an account.

    21. Re:Please explain by tlhIngan · · Score: 1

      Microsoft didn't want to allow the Xbox One to accept Xbox 360 controllers, so they chose to scrap XInput support from the Xbox One controllers. That PC users can't use the controllers is just an unfortunate side-effect.

      They didn't have to go that far, actually.

      Xbox accessories have an authentication chip that's verified during USB connect so that's all the Xbone had to do - just check to see if it's an Xbone accessory and be done with it. Likewise the 360 can do the same.

      OTOH, the controllers are supposed to be standard HID devices, it's just that you need a mapping between the axis controls (because USB HIDs are keyboards, mice and joysticks, while something with a half-dozen axes and a dozen buttons needs to have input mappings done, as well as mapping the output (the vibrators (main and impulse triggers) and LEDs), aka the Xinput mapping.

      The PS4 is worse, though. Over USB it authenticates every 30 seconds (Xbone, like the 360 only do it at connect). While first-party controllers generally are best, there are some third party ones that lose out. (Like my Delta Six gun controller).

    22. Re:Please explain by ncc74656 · · Score: 2

      shouldn't require waiting for a new Linux kernel to ship

      FTFY. Even the most ardent Stallmanites don't usually try to claim credit for the kernel.

      --
      20 January 2017: the End of an Error.
    23. Re:Please explain by Ravaldy · · Score: 1

      You could see it two ways
      1. They want to avoid re-use of controllers and make more money
      2. They want to ensure the experience for all Xbox One users is the same and ensure game companies can rely on the fact that the controller remains the same across the platform
      3. Both of the above

    24. Re:Please explain by Curtman · · Score: 1

      Softmodded wii's can run emulators. Gamecube controllers are much better than the wiimote.

      Wii Homebrew

      The wii is still the most played console in our house.

  2. Systemd should replace the kernel. by Anonymous Coward · · Score: 5, Funny

    Why do we even have a Linux kernel these days?

    It's late 2014, for crying out loud. It's almost 2015! We shouldn't have to deal with a Linux kernel. We should just have to install systemd and then we can have a working system.

    The Linux kernel needs to go. It needs to be replaced with systemd.

    1. Re:Systemd should replace the kernel. by DoofusOfDeath · · Score: 3, Funny

      Why do we even have a Linux kernel these days?

      It's late 2014, for crying out loud. It's almost 2015! We shouldn't have to deal with a Linux kernel. We should just have to install systemd and then we can have a working system.

      The Linux kernel needs to go. It needs to be replaced with systemd.

      That's foolishness. Neither a kernel nor systemd is needed. My system boots straight into Emacs, and has systemd implemented in elisp.

    2. Re:Systemd should replace the kernel. by Shaman · · Score: 1

      /me spits out the hook

      --
      ...Steve
    3. Re:Systemd should replace the kernel. by gman003 · · Score: 1

      Look, if it's not running straight LISP at the hardware level, it's not a real computer. Who needs firmware when you have CONS?

    4. Re:Systemd should replace the kernel. by Antique+Geekmeister · · Score: 2

      This has actually been tried.

                                    http://en.wikipedia.org/wiki/S...

    5. Re:Systemd should replace the kernel. by Pablopelos · · Score: 3, Insightful

      And it can do towers of hanoi, web browsing, email, ftp, and it even includes an editor I think.

    6. Re:Systemd should replace the kernel. by Anonymous Coward · · Score: 1

      it even includes an editor I think.

      Yeah, you can run vi on it, which is the only editor you'll ever really need.

    7. Re:Systemd should replace the kernel. by Blaskowicz · · Score: 1

      We need an emacs smartphone! Not necessarily to run emacs on it, but at least we'll have the modifier keys on or around it.

  3. Re:Linux games by shione · · Score: 5, Informative

    No games to play???

    http://store.steampowered.com/...

    998 games and counting

    including...

    Xcom Enemy Unknown
    Wasteland 2

    Portal 2
    Counter Strike
    Left 4 Dead 2
    DOTA 2
    TF2
    Garys Mod
    Half Life 2
    Civ 5
    Borderlands 2
    Witcher 2
    System Shock 2
    Killing Floor

    How many games does a platform have to have so it doesnt have "no games to play" ?

  4. huh by ihtoit · · Score: 1

    ...I thought Freefall was a tech built into the hard drive?

    (I have a Toshiba laptop with a Toshiba HDD in it, the selling point for me was not in fact the freefall sensor but to be frank, any drop that chips a corner off the laptop case, for me, usually ends up shattering LCDs and glass platters anyway - I can only hope that the platters in the newer drives are made from tougher glass or even back to the aluminium alloy that sensible people build hard drives with (like my 8GB Travelstar that still works after 11 years and holy shit I don't want to just bin it because I have a memory chip in my phone that has twice the capacity in a package the size of my pinky nail)).

    --
    Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
    1. Re:huh by ihtoit · · Score: 1

      yeah refer to my other post, the tech is built in to a lot of laptop drives, some OEMs use external sensors and sub-HAL triggers, Apple I think is the only one that actually offers some semblance of control (as in allows the user to turn it on and off) which also offers the opportunity to restart the drive and unpark the head without having to coldstart the entire system. My laptop which has all the bells and whistles Toshiba offers, doesn't even bother to pass the message to Windows 7 that a trigger event has occurred, any subsequent writes that need to write to platters (it's a hybrid drive under the hood with an 8GB flash) will fail with a "delayed write failed" message, and that is usually the first indication that I get that I've been hitting the keyboard like a British nanny.

      --
      Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
    2. Re:huh by RyuuzakiTetsuya · · Score: 1

      There's APIs that allow developers to tap into the accelerometer directly. Don't think it's an officially supported API, but it does mean that I can wave my MacBook around and have it make lightsaber noises with the right app :)

      --
      Non impediti ratione cogitationus.
    3. Re:huh by ihtoit · · Score: 1

      I can see that going down well for the Star Wars #7 trailer... o.0

      --
      Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
  5. Re:Zero G by ihtoit · · Score: 2

    it's an OS-agnostic tech built in to the hard drive - the accelerometer is a basic switch that parks the head and deactivates the spindle motor if it detects excessive vibration or acceleration like during a freefall drop off a desk. You know if it's triggered when your OS complains about a delayed write failure (for some reason Windows 7 lacks the ability to send a "spinup" command to the controller), at which point you have to do a cold restart and everything's fine apart from the data that you just lost if you didn't already save it. It makes no guarantee for data integrity, it only guarantees the mitigation of risk of terminal headcrash during an impact event. Some manufacturers (Seagate, Toshiba, Hitachi, Fujitsu, and Western Digital) use variations on the theme, all platform-independent, though some OEMs such as Apple/Dell (are EuroPowerbooks still built at Dell's plant in Ireland?), Lenovo and Acer prefer to use their own accelerometers and control all aspects of physical protection through the controller interface via a custom BIOS.

    --
    Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
  6. I'm shocked by DaveAtFraud · · Score: 3, Funny

    Linus missed an opportunity to "adjust" the kernel version numbering scheme. This should have been released as Linux kernel 11.0.

    (Sorry, couldn't resist)

    Cheers,
    Dave

    --
    They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.
    Ben
    1. Re:I'm shocked by marcello_dl · · Score: 4, Funny

      Torvalds tried to joke and call it linux 3.18, but that broke the kernelversiond of systemd, which in turn messed the /dev tree so his printer started DDoSing his cellphone.
      All in all, a very windowsish experience.

      --
      ---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
  7. Re:Zero G by jonwil · · Score: 1

    I cant find details of just what the kernel change was but it seems like the hardware feature is a feature to detect that the laptop is undergoing a sudden shock and shut off the hard disk (move the heads out of the way) to prevent damage to the platters.

  8. Re:Linux games by ihtoit · · Score: 1

    turn in your Geek card on your way out, you missed the ONE game that should have been the top of that list: Kerbal Space Program. :)

    --
    Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
  9. Re:Linux games by skine · · Score: 4, Informative

    World of... oh what was the name of that game... it's on the tip of my tongue....

    Goo?

  10. Re:Linux games by pecosdave · · Score: 2

    I have World of Goo on nearly everything I own!

    (Wii, Phone, Linux machine, and every my work Mac and work Windows machine)

    --
    The preceding post was not a Slashvertisement.
  11. Re:An Apparent Pre-Mature Claim of 3.17 by Lunix+Nutcase · · Score: 2

    A Slashdot first!

  12. Re:An Apparent Pre-Mature Claim of 3.17 by ihtoit · · Score: 1

    not even that, it was announced on Phoronix two weeks ago. Slashdot is behind the curve - as usual. Record here shows a commit to the kernel source tree on the 13th August.

    --
    Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
  13. Re:Linux games by gman003 · · Score: 3, Informative

    How many games does a platform have to have so it doesn't have "no games to play" ?

    The PS3 was (and sometimes still is) widely ridiculed in gaming circles for having "no games", despite a launch lineup of 6-23 games (6JP/14US/23EU) and a current library of 796 retail games.

    As no similar critiques were lobbed against the Xb360 (1,125) or Wii (1,222), we can conclude that the number of games necessary is somewhere in the range of 800-1100, most likely 1000.

    However, your link only shows 702 games for me. Also, the above counts are of retail releases, which excludes a lot of the small indie stuff that makes up most of that list. And so we can conclude that Linux has "no games", and will continue to have "no games" for quite some time.

  14. Re:Linux games by Anonymous Coward · · Score: 1

    That 'ps3 has no games' thing is a meme. It's from the early days of the first generation "fat" ps3 back in 2008 or so.

  15. Chromebook by jeek · · Score: 1

    How long before Chromebooks get this support? It'd be great with my Steam/Chrubuntu setup.

    --
    If you want to be seen, stand up. If you want to be heard, speak up. If you want to be respected, sit down and shut up.
    1. Re:Chromebook by ihtoit · · Score: 1

      just as soon as someone wins the Google Pwn2Own prize.

      --
      Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
  16. Re:Linux games by Ginger+Unicorn · · Score: 1

    There's another way of thinking about it. When people say there are "no games" for a system, they mean no games that they care about. If you had a system that only had the 200 top selling titles on it and nothing else, the feeling among the general population wouldn't really be that there were no games for it.

    When linux has ports of the vast majority of the top selling PC titles, then people will stop saying there are no games for it, irrespective of the size of the long tail of guff no one cares about and creative/interesting indie games that the general population haven't heard of.

    Personally I see more value in the creative/interesting indie games. Unfortunately if they're not in the public consciousness, their mean contribution drops off a cliff in terms of Linux adoption/perception as a gaming platform.

    --
    (1.21 gigawatts) / (88 miles per hour) = 30 757 874 newtons
  17. Re:Linux games by Anonymous Coward · · Score: 1

    His point is still valid.

  18. Re:Linux games by abies · · Score: 1

    System Shock 2? You are serious giving it as an example of how good non-windows gaming is? Release dates from wikipedia
    August 11, 1999 (Win)
    June 18, 2013 (OS X)
    April 1, 2014 (Linux)
    15 years late exactly - as OP claimed and you tried to disprove.

    Most of the other things you mentioned are also quite old. Maybe preparing a list of 10 really good games from 2013-2014 would be better than hundreds of games from 2-15 years ago. Or maybe even better - take 20 best selling games of last 2 years and see how many of them are available under linux natively.

  19. Re:The return of support for 16-bit Windows progra by ihtoit · · Score: 1

    I'm thinking not, the 3.14 kernel patch fixed a security issue which also broke Win16 support. They've backported it as well so downloading older kernels to try and fix Win16 support under Wine won't work. There is no word on any attempts to fix the issue in the kernel. All I can suggest is to try and get your paws on a Win9x image and install it in Virtualbox (as I've done, though I had to install it as a DOS exec because APM platforms do weird things to modern processors - like cause them to wall it - and run a CPU idler which frees clock cycles from the VM back to the host. It's a crazy situation, but solvable). I'd offer you a copy of my MS-DOS 6.22-based Win95OSR2 image but Microsoft would have a fit...

    --
    Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
  20. Re:Linux games by synapse7 · · Score: 2

    I'm actually playing through Witcher2 at the moment on Mint, and it is f00king awesome so far.

  21. Re:Zero G by ihtoit · · Score: 1
    --
    Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
  22. Re:The return of support for 16-bit Windows progra by raxx7 · · Score: 1

    You can also try and install DOS + Win 3.1 under VirtualBox or under DOSBOX.

  23. Re:The return of support for 16-bit Windows progra by ihtoit · · Score: 1

    This too, but you'll still need CPUIdle or similar or you'll end up with a completely locked system. APM *does not* play nice.

    --
    Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
  24. Re:Zero G by jones_supa · · Score: 1

    The drive is not spun down, only the head is parked.

  25. Re:Zero G by jones_supa · · Score: 1

    You know if it's triggered when your OS complains about a delayed write failure (for some reason Windows 7 lacks the ability to send a "spinup" command to the controller), at which point you have to do a cold restart and everything's fine apart from the data that you just lost if you didn't already save it.

    That is not my experience with HP 3D DriveGuard. Usually when free fall is detected, the head is parked, the HDD LED changes color, and I/O for that disk is blocked. After a couple of seconds, normal operation is restored.

  26. AMD Hawaii support, you say? by Wootery · · Score: 1

    working open-source AMD Hawaii GPU support

    I'm sure I'm not the only one thinking that's much more front-page-worthy than Xbox 'One' controller support.

    Phoronix reports performance to be generally satisfactory (which, given the context, is pretty damn good).

  27. Re:Linux games by Blaskowicz · · Score: 1

    At least 10 of the top 20 most played games on Steam have native Linux versions, so they are hardly irrelevant. DOTA2, CS:GO, and TF2 alone have peaks of more than 1.1 million active (in-game) players combined. Some of the rest, like Skyrim, can be run well with Wine, other than lower frame rate compared to Windows.

    The issue may be how to install the game, and how to acquire it?
    Sometimes you can run a Windows game on Wine, but you can't install it. And then maybe you need to crack the game before running it on Wine. And to try the game out, you might need warez downloads anyway.
    e.g. to run the first Serious Sam (over 10-year-old at that point) I had to boot into Windows to install it. Then it runs fine under Windows. Then it runs on linux when mounting the .iso under /mnt .. except for the graphical output which stays empty outside of menus. Maybe it'll work with a different graphics card and/or by upgrading the distro. BUT, I'd be spending money to buy new hardware without knowing if the game will work or not afterwards.

    That some new games (e.g. Starcraft II) do work under Wine is a weak argument (e.g. Blizzard is known to test games under Wine)

  28. Re:The return of support for 16-bit Windows progra by Blaskowicz · · Score: 1

    It's sad. Just a few days ago I stumbled upon a site about old win16 (Windows 1.0 and 2.0!) which has links to a collection of Windows 3.1 games too.
    In particular I found out about a "lost" microsoft game : when Windows 3.1 came out, Reversi was left out but they actually made an updated version of it that looks like a Windows 3.1 game!

    http://members.chello.at/theod...

    The worst/best thing about it is that it's actually useful to have that game around. I have a gnome 3 version of Reversi (Iagno 3.8.2) which always end up locking itself with 100% CPU at one point. And Win16 Reversi is challenging on "beginner".

    Rather than old Windows I think I would try to run old Linux in a VM, such as debian squeeze (got extended to five years of support)