* [PATCH AUTOSEL 4.14 014/115] ata: ahci_brcm: Match BCM63138 compatible strings
[not found] <20191113015622.11592-1-sashal@kernel.org>
@ 2019-11-13 1:54 ` Sasha Levin
2019-11-13 20:07 ` Florian Fainelli
2019-11-13 1:54 ` [PATCH AUTOSEL 4.14 015/115] ata: ahci_brcm: Allow using driver or DSL SoCs Sasha Levin
2019-11-13 1:55 ` [PATCH AUTOSEL 4.14 049/115] ata: ep93xx: Use proper enums for directions Sasha Levin
2 siblings, 1 reply; 5+ messages in thread
From: Sasha Levin @ 2019-11-13 1:54 UTC (permalink / raw)
To: linux-kernel, stable; +Cc: Florian Fainelli, Jens Axboe, Sasha Levin, linux-ide
From: Florian Fainelli <f.fainelli@gmail.com>
[ Upstream commit fb8506f15f2e394f5f648575cf48a26e8744390c ]
Match the "brcm,bcm63138-ahci" compatible string in order to allow this
driver to probe on such platforms.
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
drivers/ata/ahci_brcm.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/ata/ahci_brcm.c b/drivers/ata/ahci_brcm.c
index 5936d1679bf3a..0a3998526bb1d 100644
--- a/drivers/ata/ahci_brcm.c
+++ b/drivers/ata/ahci_brcm.c
@@ -297,6 +297,7 @@ static struct scsi_host_template ahci_platform_sht = {
static const struct of_device_id ahci_of_match[] = {
{.compatible = "brcm,bcm7425-ahci", .data = (void *)BRCM_SATA_BCM7425},
{.compatible = "brcm,bcm7445-ahci", .data = (void *)BRCM_SATA_BCM7445},
+ {.compatible = "brcm,bcm63138-ahci", .data = (void *)BRCM_SATA_BCM7445},
{.compatible = "brcm,bcm-nsp-ahci", .data = (void *)BRCM_SATA_NSP},
{},
};
--
2.20.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH AUTOSEL 4.14 014/115] ata: ahci_brcm: Match BCM63138 compatible strings
2019-11-13 1:54 ` [PATCH AUTOSEL 4.14 014/115] ata: ahci_brcm: Match BCM63138 compatible strings Sasha Levin
@ 2019-11-13 20:07 ` Florian Fainelli
2019-11-22 3:29 ` Sasha Levin
0 siblings, 1 reply; 5+ messages in thread
From: Florian Fainelli @ 2019-11-13 20:07 UTC (permalink / raw)
To: Sasha Levin, linux-kernel, stable; +Cc: Jens Axboe, linux-ide
On 11/12/19 5:54 PM, Sasha Levin wrote:
> From: Florian Fainelli <f.fainelli@gmail.com>
>
> [ Upstream commit fb8506f15f2e394f5f648575cf48a26e8744390c ]
>
> Match the "brcm,bcm63138-ahci" compatible string in order to allow this
> driver to probe on such platforms.
>
> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
> Signed-off-by: Jens Axboe <axboe@kernel.dk>
> Signed-off-by: Sasha Levin <sashal@kernel.org>
This is a feature and not really a bug fix, is someone specifically
asking for this to be back ported? Also without the matching SATA PHY
driver changes:
7b69fa1c5c930886f8a916cc47096dd4044c007a ("phy: brcm-sata: Add BCM63138
(DSL) PHY init sequence")
this is pretty useless on its own. Same applies to all automatic
selections, not just this kernel obviously.
> ---
> drivers/ata/ahci_brcm.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/ata/ahci_brcm.c b/drivers/ata/ahci_brcm.c
> index 5936d1679bf3a..0a3998526bb1d 100644
> --- a/drivers/ata/ahci_brcm.c
> +++ b/drivers/ata/ahci_brcm.c
> @@ -297,6 +297,7 @@ static struct scsi_host_template ahci_platform_sht = {
> static const struct of_device_id ahci_of_match[] = {
> {.compatible = "brcm,bcm7425-ahci", .data = (void *)BRCM_SATA_BCM7425},
> {.compatible = "brcm,bcm7445-ahci", .data = (void *)BRCM_SATA_BCM7445},
> + {.compatible = "brcm,bcm63138-ahci", .data = (void *)BRCM_SATA_BCM7445},
> {.compatible = "brcm,bcm-nsp-ahci", .data = (void *)BRCM_SATA_NSP},
> {},
> };
>
--
Florian
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH AUTOSEL 4.14 014/115] ata: ahci_brcm: Match BCM63138 compatible strings
2019-11-13 20:07 ` Florian Fainelli
@ 2019-11-22 3:29 ` Sasha Levin
0 siblings, 0 replies; 5+ messages in thread
From: Sasha Levin @ 2019-11-22 3:29 UTC (permalink / raw)
To: Florian Fainelli; +Cc: linux-kernel, stable, Jens Axboe, linux-ide
On Wed, Nov 13, 2019 at 12:07:25PM -0800, Florian Fainelli wrote:
>On 11/12/19 5:54 PM, Sasha Levin wrote:
>> From: Florian Fainelli <f.fainelli@gmail.com>
>>
>> [ Upstream commit fb8506f15f2e394f5f648575cf48a26e8744390c ]
>>
>> Match the "brcm,bcm63138-ahci" compatible string in order to allow this
>> driver to probe on such platforms.
>>
>> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
>> Signed-off-by: Jens Axboe <axboe@kernel.dk>
>> Signed-off-by: Sasha Levin <sashal@kernel.org>
>
>This is a feature and not really a bug fix, is someone specifically
>asking for this to be back ported? Also without the matching SATA PHY
>driver changes:
>
>7b69fa1c5c930886f8a916cc47096dd4044c007a ("phy: brcm-sata: Add BCM63138
>(DSL) PHY init sequence")
>
>this is pretty useless on its own. Same applies to all automatic
>selections, not just this kernel obviously.
Ah, I got it from a distro tree but I see the backported the driver too.
I'll drop it, thanks!
--
Thanks,
Sasha
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH AUTOSEL 4.14 015/115] ata: ahci_brcm: Allow using driver or DSL SoCs
[not found] <20191113015622.11592-1-sashal@kernel.org>
2019-11-13 1:54 ` [PATCH AUTOSEL 4.14 014/115] ata: ahci_brcm: Match BCM63138 compatible strings Sasha Levin
@ 2019-11-13 1:54 ` Sasha Levin
2019-11-13 1:55 ` [PATCH AUTOSEL 4.14 049/115] ata: ep93xx: Use proper enums for directions Sasha Levin
2 siblings, 0 replies; 5+ messages in thread
From: Sasha Levin @ 2019-11-13 1:54 UTC (permalink / raw)
To: linux-kernel, stable; +Cc: Florian Fainelli, Jens Axboe, Sasha Levin, linux-ide
From: Florian Fainelli <f.fainelli@gmail.com>
[ Upstream commit 7fb44929cb0e5cdcde143e1ca3ca57b5b8247db0 ]
The Broadcom STB AHCI controller is the same as the one found on DSL
SoCs, so we will utilize the same driver on these systems as well.
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
drivers/ata/Kconfig | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index cb5339166563e..229a5ccd6b73b 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -102,7 +102,8 @@ config SATA_AHCI_PLATFORM
config AHCI_BRCM
tristate "Broadcom AHCI SATA support"
- depends on ARCH_BRCMSTB || BMIPS_GENERIC || ARCH_BCM_NSP
+ depends on ARCH_BRCMSTB || BMIPS_GENERIC || ARCH_BCM_NSP || \
+ ARCH_BCM_63XX
help
This option enables support for the AHCI SATA3 controller found on
Broadcom SoC's.
--
2.20.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH AUTOSEL 4.14 049/115] ata: ep93xx: Use proper enums for directions
[not found] <20191113015622.11592-1-sashal@kernel.org>
2019-11-13 1:54 ` [PATCH AUTOSEL 4.14 014/115] ata: ahci_brcm: Match BCM63138 compatible strings Sasha Levin
2019-11-13 1:54 ` [PATCH AUTOSEL 4.14 015/115] ata: ahci_brcm: Allow using driver or DSL SoCs Sasha Levin
@ 2019-11-13 1:55 ` Sasha Levin
2 siblings, 0 replies; 5+ messages in thread
From: Sasha Levin @ 2019-11-13 1:55 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Nathan Chancellor, Bartlomiej Zolnierkiewicz, Jens Axboe,
Sasha Levin, linux-ide, clang-built-linux
From: Nathan Chancellor <natechancellor@gmail.com>
[ Upstream commit 6adde4a36f1b6a562a1057fbb1065007851050e7 ]
Clang warns when one enumerated type is implicitly converted to another.
drivers/ata/pata_ep93xx.c:662:36: warning: implicit conversion from
enumeration type 'enum dma_data_direction' to different enumeration type
'enum dma_transfer_direction' [-Wenum-conversion]
drv_data->dma_rx_data.direction = DMA_FROM_DEVICE;
~ ^~~~~~~~~~~~~~~
drivers/ata/pata_ep93xx.c:670:36: warning: implicit conversion from
enumeration type 'enum dma_data_direction' to different enumeration type
'enum dma_transfer_direction' [-Wenum-conversion]
drv_data->dma_tx_data.direction = DMA_TO_DEVICE;
~ ^~~~~~~~~~~~~
drivers/ata/pata_ep93xx.c:681:19: warning: implicit conversion from
enumeration type 'enum dma_data_direction' to different enumeration type
'enum dma_transfer_direction' [-Wenum-conversion]
conf.direction = DMA_FROM_DEVICE;
~ ^~~~~~~~~~~~~~~
drivers/ata/pata_ep93xx.c:692:19: warning: implicit conversion from
enumeration type 'enum dma_data_direction' to different enumeration type
'enum dma_transfer_direction' [-Wenum-conversion]
conf.direction = DMA_TO_DEVICE;
~ ^~~~~~~~~~~~~
Use the equivalent valued enums from the expected type so that Clang no
longer warns about a conversion.
DMA_TO_DEVICE = DMA_MEM_TO_DEV = 1
DMA_FROM_DEVICE = DMA_DEV_TO_MEM = 2
Acked-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
drivers/ata/pata_ep93xx.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/ata/pata_ep93xx.c b/drivers/ata/pata_ep93xx.c
index 0a550190955ad..cc6d06c1b2c70 100644
--- a/drivers/ata/pata_ep93xx.c
+++ b/drivers/ata/pata_ep93xx.c
@@ -659,7 +659,7 @@ static void ep93xx_pata_dma_init(struct ep93xx_pata_data *drv_data)
* start of new transfer.
*/
drv_data->dma_rx_data.port = EP93XX_DMA_IDE;
- drv_data->dma_rx_data.direction = DMA_FROM_DEVICE;
+ drv_data->dma_rx_data.direction = DMA_DEV_TO_MEM;
drv_data->dma_rx_data.name = "ep93xx-pata-rx";
drv_data->dma_rx_channel = dma_request_channel(mask,
ep93xx_pata_dma_filter, &drv_data->dma_rx_data);
@@ -667,7 +667,7 @@ static void ep93xx_pata_dma_init(struct ep93xx_pata_data *drv_data)
return;
drv_data->dma_tx_data.port = EP93XX_DMA_IDE;
- drv_data->dma_tx_data.direction = DMA_TO_DEVICE;
+ drv_data->dma_tx_data.direction = DMA_MEM_TO_DEV;
drv_data->dma_tx_data.name = "ep93xx-pata-tx";
drv_data->dma_tx_channel = dma_request_channel(mask,
ep93xx_pata_dma_filter, &drv_data->dma_tx_data);
@@ -678,7 +678,7 @@ static void ep93xx_pata_dma_init(struct ep93xx_pata_data *drv_data)
/* Configure receive channel direction and source address */
memset(&conf, 0, sizeof(conf));
- conf.direction = DMA_FROM_DEVICE;
+ conf.direction = DMA_DEV_TO_MEM;
conf.src_addr = drv_data->udma_in_phys;
conf.src_addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES;
if (dmaengine_slave_config(drv_data->dma_rx_channel, &conf)) {
@@ -689,7 +689,7 @@ static void ep93xx_pata_dma_init(struct ep93xx_pata_data *drv_data)
/* Configure transmit channel direction and destination address */
memset(&conf, 0, sizeof(conf));
- conf.direction = DMA_TO_DEVICE;
+ conf.direction = DMA_MEM_TO_DEV;
conf.dst_addr = drv_data->udma_out_phys;
conf.dst_addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES;
if (dmaengine_slave_config(drv_data->dma_tx_channel, &conf)) {
--
2.20.1
^ permalink raw reply related [flat|nested] 5+ messages in thread