From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755004AbbJ1RWF (ORCPT ); Wed, 28 Oct 2015 13:22:05 -0400 Received: from mail-bn1on0071.outbound.protection.outlook.com ([157.56.110.71]:27520 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751114AbbJ1RWB (ORCPT ); Wed, 28 Oct 2015 13:22:01 -0400 Authentication-Results: spf=none (sender IP is 165.204.84.222) smtp.mailfrom=amd.com; arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=permerror action=none header.from=amd.com; X-WSS-ID: 0NWXXKJ-08-EKC-02 X-M-MSG: Subject: Re: [PATCH V4 0/8] PCI: ACPI: Setting up DMA coherency for PCI device from _CCA attribute To: "Rafael J. Wysocki" , Hanjun Guo References: <1445442731-28819-1-git-send-email-Suravee.Suthikulpanit@amd.com> <24127028.eJSjD1i70u@vostro.rjw.lan> <5630D38F.804@linaro.org> <1545680.eQNYNjjaSj@vostro.rjw.lan> CC: Bjorn Helgaas , , , , , , , , , , , From: Suravee Suthikulpanit Message-ID: <56310434.7070405@amd.com> Date: Wed, 28 Oct 2015 12:21:56 -0500 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 In-Reply-To: <1545680.eQNYNjjaSj@vostro.rjw.lan> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [10.180.168.240] X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:165.204.84.222;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(428002)(24454002)(199003)(164054003)(377454003)(479174004)(189002)(65806001)(105586002)(65956001)(15395725005)(50466002)(47776003)(11100500001)(15975445007)(2950100001)(189998001)(5008740100001)(92566002)(5003600100002)(5007970100001)(5004730100002)(99136001)(59896002)(5001770100001)(106466001)(4001350100001)(53416004)(77096005)(97736004)(101416001)(93886004)(83506001)(87936001)(19300405004)(54356999)(19580395003)(50986999)(117636001)(36756003)(64126003)(19273905006)(65816999)(76176999)(23676002)(87266999)(86362001)(562404015)(62816006)(563064011);DIR:OUT;SFP:1101;SCL:1;SRVR:BY2PR12MB0710;H:atltwp02.amd.com;FPR:;SPF:None;PTR:InfoDomainNonexistent;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BY2PR12MB0710;2:n+eUYO5V4NNRCsNHatdU2sN7miaJKxQUP+WsSOTsWufBDtflO/AbZnv43NDFgCSWwt33rCMyljQhQYqrkBqyK5w3p8blKevLybiJPXFGWlb7F/0YWv0bUt1StKEWoLp/Js1FHeR8EBJFGE8JSvuO2yDR0ZNmbA6AQFz9RbI0IEk=;3:L8r8ri1MqXGLSYeXMcVoTbYhCUS985zvErsgNc5LyAxg2IkU9Kg+z0NgYROzgl91B3lkEvc5idiec11PV6MQ6c9LIE9LM2KsokTNDfLuFk41sHEFf5FYO7DRnNomBvtd1Z11a19I+/PBE/At48zHjvKVZav9fsn7YifH3KElm+q9DwQZa/tSAM3KjL69yaRPr6Ta+KpUuifyxu+jfoQ/oZvGW6z7JH4gMznT6cnvbRfT0KV5XIeA+An3iK00ud5L;25:QUAddI8a0KvNrOg0z25hI3WJD57PHFN045WC/rfpDGHhkI7ZiQ5dAGY908zzv2kIj4/Ny60olCD0zbFRtEIaQz1cKbA8YhlWP2a59KL2CprZu1KsEjxEwJ9eQObuEBJJtJTVg2Gcrlk9ZUSv3ko//7RCA1uWwEJy4hdBZ9kKEtfpygtZ6lcgEZ7IavAt/miZF2zKOd93tSRZUbfFQYa6S3C4lL7oyyq/H0NZsOPaHxEofk/K8b88DvW23++f1JtD X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR12MB0710; X-Microsoft-Exchange-Diagnostics: 1;BY2PR12MB0710;20:2M99n+bcgEAvM474x9F7reJMbRvxp4aQw1wD5W8pgzyiW5AjuM+vFrWFlOZz0AUQPfigFxpcPswCggsl4HD55fU9dSkUtidCBsO0VUPmm+PhFagcyTk9djRiB33ZWh2Gz057ddGLQMD057PCkrqftMdAPUDhiCSC2U0Nii7LH/MV5ywTq38dLsdoOSc1Pz93JopITxXka2x7CcGGyj/3fRfgaKMP2l5+vZY6o1vlckPRH10jrly4tHHykSWshfg0fs8msuouJMWjDml3dmyzN/KjNvodNwPenScHPP4TlGJyYDcZoBroKADelbx2gZbWcj/fSZfb66fMPUu/s0Q6THPGlaionHjSzNKMiDhmf2CEp98ZjzfFKw5WMxHqeCXc431Q28LrPcCuMLBdLWNE8ItXsMuVw/BrRSPZt8SgxntZQ5jGGw1jUg90V0N6nF4ROBtF/u6bZLi3HwODeZxAeFVPXqQ/X1dmNyGc+Cu+jHaY1j3uwsfKoFCf2H4EwRFq;4:1NPCnDkMpEtzGwx9Kp1bBxU6Bgb+IGZgBThVu0iiwYsujMzEWlXZMei85E1Jqix6GBd5iaV/fY7q7MM847d0JH/gCw+pzuFb8RhE+yzdpOGwDSobmXUEdcRJx3r05iaom6K5eyY45FtxSS1L9fpK4Ne5/EShWPO0RffqJTZvsl+r6qKm6bxxp7UFf5V09T71Mt3IdOLKhO9sV+spTZsdkaLD27Qkej8svvOLfhOPYa1BW8IwLYeQcLYZOM/YezDy5i9Ew0a1u8ZCzFIB6mwyqe5TtPVfwdwpAIx+MegNVrGpoUO5GdmlHJErtC+T431+hlrSySw24Cx9l/fxp0S9y7CR/LiF4WmY41qoWBjfoPAViL0PJDgRnSHmAjNOMmw6VhfNTrDlcwCb5bEi89FGwQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(520078)(8121501046)(10201501046)(3002001)(102215026);SRVR:BY2PR12MB0710;BCL:0;PCL:0;RULEID:;SRVR:BY2PR12MB0710; X-Forefront-PRVS: 0743E8D0A6 X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCWTJQUjEyTUIwNzEwOzIzOmxFQXNzdmkyM2hmYVFIOW5uQlFDQXBWTkNl?= =?utf-8?B?MFhSMkF0M29uaWdUeHRVWUE4MnJucS93eXRrSXpydU83bkIrNDgrM0pmc0dT?= =?utf-8?B?VmtYM240N2REMDVaUlpaVVhISG92UThlRnJLTXVtTHY1ZUs2ZUhsbEkyd1RS?= =?utf-8?B?amlTMnRldngzcXZueWU4dFBoQkdxNS80TkhwdEtLeU15a1E3R0luWmszc2kv?= =?utf-8?B?S3FqbmVsQXZiRC9LdXQwYTVtb2N4cHJpd3NTZ0MvSGN1NG1NK29qYmpZd3lU?= =?utf-8?B?WUNZNHJiZS9wVnMxeE9PdDZJMDNZRzhHUDhmbVVoaUdxZUdxYzMwbUVNYlh0?= =?utf-8?B?M2xyMEcvclBzbFVGZFdFMnlTVy9MeUo3dS8yZ0R2NXdkbmN5am9uZlpCSElP?= =?utf-8?B?YmtFRms1dWVNZmh5WWcwYVlQb3I4Skk1SkxvR0RyeldGM1RaRHZObmVaaXZL?= =?utf-8?B?ZlZUT0pOQ2EzR00xWlpQcURjNWJkZDdYZVpNd3V6U3ZyRGVVWnBCemtkOE84?= =?utf-8?B?Q3NFRWsyeHdGTHBRSk5IV0lnMUZCbTcvOTY0U2s2dG5ka1U3WCtzM3B2cG9Y?= =?utf-8?B?VTJ5ZG1CQXo4RVVXd2k3Z094UHdocXRmMFNUd3U0T3dwOTZqV3VmQms1ci8v?= =?utf-8?B?NGZMbnNraXRNbWJFY3dsZFc1dDdyODhpSXM5eUc4ZUpTeU9Gb3luMG1qSHJM?= =?utf-8?B?dktDNzdMS1QvZHBES3Z5cVlLOU9TQ0NGcTRRMkNCbFR2dU10cDVvZENTa3BZ?= =?utf-8?B?bzE2U00wYUVwWWR5SEpNWFUyVHg0TkJlZkk3cW12SWhYNDJrejZKL0hvbmtk?= =?utf-8?B?cnVaS3hQN2ZCVXNzMFp0d1M3NC9rcHRjZWlkZjZ4dldKMUtrVFA1ajVadHla?= =?utf-8?B?MmxSVmlpQ0E4SmVqSTBRV21wVlhXRXRpdFdaS3NnL1RNWndWNVU0eHM0RTFs?= =?utf-8?B?cFVrS1VBYmpvZ0FIamM1SGVKS3k2NStxUldyYXRPSUozWUxDMUc0eHM0V21a?= =?utf-8?B?WWFKM0JyMXdiTkFKSXNnTTgvVWlHTTY3eHV0TmNONEZRUVFtVTRYam93WG96?= =?utf-8?B?b3Y5bTQ2aFlDTlhRN01obmhoM2JZU2dQOEdvOW5oRVQ5cXprSW9vUU0yUTg4?= =?utf-8?B?UUVlaTFXeGp3elBLSGhMSnFCYzdiMFNrUVVQNjhxKytpaDhpU3pWUGgxVldC?= =?utf-8?B?TUZpUWtJMlJHNURkQkFpQVFBV2lxUExBbFFVRjNOWTk2WUh6MVB0RUYxUkxs?= =?utf-8?B?STFJRllCWlNxam82MUJJU2ZPdzl4UHNJbkVxWjdzVWFxMVRuWFF6ZjErSWQ1?= =?utf-8?B?UlFlcThEN1pldkRNSDJ5aERTL08zNVEzaTFsMHNvKyt1TWcrYnI3UWs2bmxk?= =?utf-8?B?Mk16OW5NL09ydmcra2dDZllid2pIajlyeVdPa0Y2cndNN2dPNm15elJqWkRQ?= =?utf-8?B?Y1Q4MVFSUENQcEx1bDJpTUFYU09xVjlyL1ZHVkpUaVpVZ0NpdHh1Qnh6SWZx?= =?utf-8?B?OWxZSGtEVm1RSWs0R1A3aUFCRHpCSXRkNmZhVFlLSzI5S0pJeE1GalEzL29v?= =?utf-8?B?NTBzTUV3M0t1OGsyaTVRbWU2UlVMdE5RdDBPaW1Tekx0emxEU2duRlZyQS8w?= =?utf-8?B?Mml2M2hhcUtUeG9xanB5WkxTNTk4UnI4ck9RbXJyYTFJYlo2bmdESXhQWEd5?= =?utf-8?B?UkhFQnRHemJzUmovSGdHMUJqUkE0V3RpSjZ0ZkRkeHJvNXhmL1NOaFRlRWVR?= =?utf-8?B?Y2JYcVZXZEkydmRIajg2MmcxQkIvd29Fd1JieCtTS3I4M2ZNNXhYeVdnS3Zr?= =?utf-8?B?N0I2NmhBWWt4ZC9mWGpFVEFJRDJPaGxkblZ2OFR5YnJ6L25YMWVmVXJzeU9T?= =?utf-8?Q?wFy3jNoLQ+QND/kti8HrWHqUXtwJN0yq?= X-Microsoft-Exchange-Diagnostics: 1;BY2PR12MB0710;5:2kIjfOEs8JsoXE5wkoNV+Q/t26MheOBoLGJfYhZcUvxScUdSg3SN3ekIRoN9wY+EzP3VK0z4uojqgw/wWiUPfcmz6JaUdDbhY4aFencCEesD5tY6jFQj+d883flOehEpmWBQy/fMd3xCthikvl6XbA==;24:SY1lTiBTwxRd2PCXN4CL8NbGfl3fw17iRB6AsUl3yIqR9fitlOHLFrsymgnqO9eYpiDJwIigWbLQYyjwI/bnI6d8cG42kxHEzHNq/seyqF4=;20:gwI79IjKkVL9SMDvm3Yqg4SxkzAzuROnUmyPG2ptvUi0cWZdg8bQ26O70wnDVOwJ05o/2B3dh8ANsAndWP3TdfIwg3wvbTQxDdN2PJ4Asy9IMxbiZMCeK+wiejkqaLUPXowWXLCh3UjP4CYm/Ce+yy3JcKRYzO/QHy6Q08vvsoRi++3zdd+bmiL3HIWI3j4v9gWmL5bcjdULVDSChGBYrbRn6m57VSWW00B4Nw4GV86nZsncBEURZLulrg95d4L9 SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Oct 2015 17:21:57.1023 (UTC) X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.222];Helo=[atltwp02.amd.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR12MB0710 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Thanks all for the review comments. I'll update the V5 and send it out later on today. Suravee On 10/28/15 11:00, Rafael J. Wysocki wrote: > On Wednesday, October 28, 2015 09:54:23 PM Hanjun Guo wrote: >> Hi Rafael, >> >> On 10/27/2015 11:27 PM, Rafael J. Wysocki wrote: >>> On Tuesday, October 27, 2015 09:52:50 AM Bjorn Helgaas wrote: >>>> Hi Suravee, >>>> >>>> On Wed, Oct 21, 2015 at 08:52:03AM -0700, Suravee Suthikulpanit wrote: >>>>> This patch series adds support to setup DMA coherency for PCI device using >>>>> the ACPI _CCA attribute. According to the ACPI spec, the _CCA attribute >>>>> is required for ARM64. Therefore, this patch is a pre-req for ACPI PCI >>>>> support for ARM64 which is currently in development. Also, this should >>>>> not affect other architectures that does not define >>>>> CONFIG_ACPI_CCA_REQUIRED, since the default value is coherent. >>>>> >>>>> In the process, this series also introduces enum dev_dma_attr and a set >>>>> of APIs to query device DMA attribute. These APIs replace the obsolete >>>>> device_dma_is_coherent(), and acpi_check_dma(). >>>>> >>>>> I have also included a patch from Jeremy posted here: >>>>> http://www.spinics.net/lists/linux-usb/msg128582.html >>>>> >>>>> This patch series has been tested on AMD Seattle RevB platform. >>>>> The git tree containing tested code and pre-req patches are posted here: >>>>> >>>>> http://github.com/ssuthiku/linux.git pci-cca-v4 >>>>> >>>>> Changes from V3: (https://lkml.org/lkml/2015/8/26/389) >>>>> * Clean up suggested by Bjorn >>>>> * Introduce enum dev_dma_attr >>>>> * Replace device_dma_is_coherent() and acpi_check_dma() with >>>>> new APIs. >>>>> >>>>> Changes from V2: (https://lkml.org/lkml/2015/8/25/549) >>>>> * Return -ENOSUPP instead of -1 (per Rafael's suggestion) >>>>> * Add WARN() when fail to setup DMA for PCI device when booting >>>>> ACPI (per Arnd's suggestion) >>>>> * Added Acked-by from Rob. >>>>> * Minor clean up >>>>> >>>>> Changes from V1: (https://lkml.org/lkml/2015/8/13/182) >>>>> * Include patch 1 from Jeremy to enable support for _CCA=0 >>>>> * Clean up acpi_check_dma() per Bjorn suggestions >>>>> * Split the original V1 patch into two patches (patch 3 and 4) >>>>> >>>>> Jeremy Linton (1): >>>>> Honor ACPI _CCA attribute setting >>>>> >>>>> Suravee Suthikulpanit (7): >>>>> device property: Introducing enum dev_dma_attr >>>>> acpi: Adding DMA Attribute APIs for ACPI Device >>>>> device property: Adding DMA Attribute APIs for Generic Devices >>>>> device property: acpi: Make use of the new DMA Attribute APIs >>>>> device property: acpi: Remove unused DMA APIs >>>>> PCI: OF: Move of_pci_dma_configure() to pci_dma_configure() >>>>> PCI: ACPI: Add support for PCI device DMA coherency >>>>> >>>>> drivers/acpi/acpi_platform.c | 7 +++++- >>>>> drivers/acpi/glue.c | 8 +++--- >>>>> drivers/acpi/scan.c | 42 +++++++++++++++++++++++++++++++ >>>>> drivers/base/property.c | 32 +++++++++++++++++------ >>>>> drivers/crypto/ccp/ccp-platform.c | 9 ++++++- >>>>> drivers/net/ethernet/amd/xgbe/xgbe-main.c | 9 ++++++- >>>>> drivers/of/of_pci.c | 20 --------------- >>>>> drivers/pci/probe.c | 36 ++++++++++++++++++++++++-- >>>>> include/acpi/acpi_bus.h | 36 +++----------------------- >>>>> include/linux/acpi.h | 7 +++++- >>>>> include/linux/of_pci.h | 3 --- >>>>> include/linux/property.h | 10 +++++++- >>>>> 12 files changed, 145 insertions(+), 74 deletions(-) >>>> >>>> I had a couple minor comments. It's sort of a toss-up, but this feels >>>> more ACPI-flavored than PCI, so I assume Rafael will take this whole >>>> series unless I hear otherwise. >>> >>> I'll do that. >> >> If Suravee address the comments and send another version, >> an it be merged into 4.4? > > Well, it is likely, but not guaranteed. > > We're only a few days from the beginning of the merge window and I'm still > in Seoul. > > Thanks, > Rafael >