{"action":"created","issue":{"url":"https://api.github.com/repos/raspberrypi/linux/issues/1803","repository_url":"https://api.github.com/repos/raspberrypi/linux","labels_url":"https://api.github.com/repos/raspberrypi/linux/issues/1803/labels{/name}","comments_url":"https://api.github.com/repos/raspberrypi/linux/issues/1803/comments","events_url":"https://api.github.com/repos/raspberrypi/linux/issues/1803/events","html_url":"https://github.com/raspberrypi/linux/pull/1803","id":201445297,"number":1803,"title":"bcm2835-i2s: Changes for allowing asymmetric sample formats. (#1783)","user":{"login":"gtrainavicius","id":477278,"avatar_url":"https://avatars.githubusercontent.com/u/477278?v=3","gravatar_id":"","url":"https://api.github.com/users/gtrainavicius","html_url":"https://github.com/gtrainavicius","followers_url":"https://api.github.com/users/gtrainavicius/followers","following_url":"https://api.github.com/users/gtrainavicius/following{/other_user}","gists_url":"https://api.github.com/users/gtrainavicius/gists{/gist_id}","starred_url":"https://api.github.com/users/gtrainavicius/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gtrainavicius/subscriptions","organizations_url":"https://api.github.com/users/gtrainavicius/orgs","repos_url":"https://api.github.com/users/gtrainavicius/repos","events_url":"https://api.github.com/users/gtrainavicius/events{/privacy}","received_events_url":"https://api.github.com/users/gtrainavicius/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2017-01-18T00:24:53Z","updated_at":"2017-01-24T19:54:28Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/raspberrypi/linux/pulls/1803","html_url":"https://github.com/raspberrypi/linux/pull/1803","diff_url":"https://github.com/raspberrypi/linux/pull/1803.diff","patch_url":"https://github.com/raspberrypi/linux/pull/1803.patch"},"body":"Hey, this is the update code for asymmetric sample formats, addressing the issue found by @HiassofT  https://github.com/raspberrypi/linux/issues/1799\r\n\r\nThe new changes are mainly introducing previous_txon_rxon to remember which streams were enabled previously, then both TXON and RXON get temporarily disabled (according to peripherals documentation, most of register bits can't be changed while either one of them is enabled), clearing only the FIFO of requested direction.\r\n\r\nI noticed that starting the stream in the other direction while there was an already active stream produces a short glitch in the other stream, but the same thing happens in unmodified code, I've tried disabling all register accesses, even not starting one of the streams if requested, and the glitch was still happening, so it must be someplace else than this driver..."},"comment":{"url":"https://api.github.com/repos/raspberrypi/linux/issues/comments/274919347","html_url":"https://github.com/raspberrypi/linux/pull/1803#issuecomment-274919347","issue_url":"https://api.github.com/repos/raspberrypi/linux/issues/1803","id":274919347,"user":{"login":"HiassofT","id":3920953,"avatar_url":"https://avatars.githubusercontent.com/u/3920953?v=3","gravatar_id":"","url":"https://api.github.com/users/HiassofT","html_url":"https://github.com/HiassofT","followers_url":"https://api.github.com/users/HiassofT/followers","following_url":"https://api.github.com/users/HiassofT/following{/other_user}","gists_url":"https://api.github.com/users/HiassofT/gists{/gist_id}","starred_url":"https://api.github.com/users/HiassofT/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HiassofT/subscriptions","organizations_url":"https://api.github.com/users/HiassofT/orgs","repos_url":"https://api.github.com/users/HiassofT/repos","events_url":"https://api.github.com/users/HiassofT/events{/privacy}","received_events_url":"https://api.github.com/users/HiassofT/received_events","type":"User","site_admin":false},"created_at":"2017-01-24T19:54:28Z","updated_at":"2017-01-24T19:54:28Z","body":"> I don't think symmetric_samplebits is the right way to go, because the processor itself supports asymmetric rates.\n\nThe I2S chip could probably support that, but not in the context of ALSA\nwhere parameters are set up independently per stream. At least I know\nof no solution to achieve this without (possibly) breaking something.\n\n> Could you give the patched code a go and check what's the impact on the samples during reconfiguration of stream and the glitch itself?\n\nI tested with your patch: first there's a frame (stereo-sample) repeating\nabout 70 times, then the next frame of the original stream is\nrepeated 2 times, then 27 frames match, then a frame with all-zero bits\nfollows, after that the rest of the stream seems to be shifted by\n1 frame.\n\nI haven't seen this in my previous 4 tests last week, but even if\nthis additional all-zero-bit frame is not related to your patch\ndisabling transmission is just plain wrong.\n"}}
{"actor":{"display_login":"HiassofT"}}