{"action":"created","issue":{"url":"https://api.github.com/repos/raspberrypi/linux/issues/1231","labels_url":"https://api.github.com/repos/raspberrypi/linux/issues/1231/labels{/name}","comments_url":"https://api.github.com/repos/raspberrypi/linux/issues/1231/comments","events_url":"https://api.github.com/repos/raspberrypi/linux/issues/1231/events","html_url":"https://github.com/raspberrypi/linux/issues/1231","id":122903726,"number":1231,"title":"upstraming drivers/dma/bcm2835-dma.c","user":{"login":"msperl","id":2638784,"avatar_url":"https://avatars.githubusercontent.com/u/2638784?v=3","gravatar_id":"","url":"https://api.github.com/users/msperl","html_url":"https://github.com/msperl","followers_url":"https://api.github.com/users/msperl/followers","following_url":"https://api.github.com/users/msperl/following{/other_user}","gists_url":"https://api.github.com/users/msperl/gists{/gist_id}","starred_url":"https://api.github.com/users/msperl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/msperl/subscriptions","organizations_url":"https://api.github.com/users/msperl/orgs","repos_url":"https://api.github.com/users/msperl/repos","events_url":"https://api.github.com/users/msperl/events{/privacy}","received_events_url":"https://api.github.com/users/msperl/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":50,"created_at":"2015-12-18T08:24:56Z","updated_at":"2016-01-06T15:16:42Z","closed_at":null,"body":"I am trying to upstream drivers/dma/bcm2835-dma.c - especially the slave-portion.\r\n\r\nOne of the thing that turns up is that upstream wants changes to the code, which I can do.\r\n\r\nThe question is: how would it filter back to this branched code how can I help making that work smoothly?"},"comment":{"url":"https://api.github.com/repos/raspberrypi/linux/issues/comments/169351622","html_url":"https://github.com/raspberrypi/linux/issues/1231#issuecomment-169351622","issue_url":"https://api.github.com/repos/raspberrypi/linux/issues/1231","id":169351622,"user":{"login":"msperl","id":2638784,"avatar_url":"https://avatars.githubusercontent.com/u/2638784?v=3","gravatar_id":"","url":"https://api.github.com/users/msperl","html_url":"https://github.com/msperl","followers_url":"https://api.github.com/users/msperl/followers","following_url":"https://api.github.com/users/msperl/following{/other_user}","gists_url":"https://api.github.com/users/msperl/gists{/gist_id}","starred_url":"https://api.github.com/users/msperl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/msperl/subscriptions","organizations_url":"https://api.github.com/users/msperl/orgs","repos_url":"https://api.github.com/users/msperl/repos","events_url":"https://api.github.com/users/msperl/events{/privacy}","received_events_url":"https://api.github.com/users/msperl/received_events","type":"User","site_admin":false},"created_at":"2016-01-06T15:16:42Z","updated_at":"2016-01-06T15:16:42Z","body":"Thanks for all the explanations and reminder of how the workarounds were implemented.\r\n\r\nIn summary:\r\n* without legacy-support (i.e. Upstream) there is no need for any additional masking (besides DMA 12-14)\r\n* with legacy support (i.e. foundation) we need to mask out chanel 0 and assign it to legacy to support bcm2708_fb with 2D-DMA support.\r\n\r\nSo for legacy support we need this:\r\n```\r\n#if defined(CONFIG_DMA_BCM2708) || defined(CONFIG_DMA_BCM2708_MODULE)\r\n        /* Do not use the BULK channel (chan0) - it is used by legacy dma */\r\n        chans_available &= ~BCM2835_DMA_BULK_MASK;\r\n#endif\r\n```\r\nand we forget about the FIQ MASK.\r\n\r\n@HiassofT, @clivem: The branch mentioned above contains now the proposed upstream patchset - this can get used for some testing - I did check some of those additional patches and they look as if the things they fix are already patched in the new patchset. See also the note about the cyclic DMA and period_len that can be bigger than 65532, so you may want to test that as well."}}