mbox series

[0/9] arm: bcmbca: Move BCM63138 SoC support under ARCH_BCMBCA

Message ID 20220705172613.21152-1-william.zhang@broadcom.com
Headers show
Series arm: bcmbca: Move BCM63138 SoC support under ARCH_BCMBCA | expand

Message

William Zhang July 5, 2022, 5:26 p.m. UTC
Now that Broadcom Broadband arch ARCH_BCMBCA is in the kernel, this change
migrates the existing broadband chip BCM63138 support to ARCH_BCMBCA. It also
delete the old ARCH_BCM_63XX config as no other chip uses it.

Verified on BCM963138REF board with ramdisk boot.


William Zhang (9):
  dt-bindings: arm: add BCM63138 SoC
  ARM: dts: Move BCM963138DVT board dts to ARCH_BCMBCA
  ARM: dts: update dts files for bcmbca SoC BCM63138
  ARM: dts: Add BCM63138 generic board dts
  arm: bcmbca: Replace ARCH_BCM_63XX with ARCH_BCMBCA
  arm: bcmbca: Move BCM63138 ARCH_BCM_63XX config to ARCH_BCMBCA
  arm: bcmbca: Add BCMBCA sub platforms
  MAINTAINERS: Move BCM63138 to bcmbca arch entry
  ARM: multi_v7_defconfig: Update configs for BCM63138

 .../bindings/arm/bcm/brcm,bcmbca.yaml         |  8 +++
 MAINTAINERS                                   | 10 +--
 arch/arm/Kconfig.debug                        |  2 +-
 arch/arm/boot/dts/Makefile                    |  4 +-
 arch/arm/boot/dts/bcm63138.dtsi               | 18 +++---
 arch/arm/boot/dts/bcm963138.dts               | 26 ++++++++
 arch/arm/boot/dts/bcm963138dvt.dts            |  8 +--
 arch/arm/configs/multi_v7_defconfig           |  4 +-
 arch/arm/mach-bcm/Kconfig                     | 61 +++++++++++++------
 arch/arm/mach-bcm/Makefile                    |  7 +--
 arch/arm/mach-bcm/bcm63xx.c                   | 17 ------
 drivers/ata/Kconfig                           |  2 +-
 drivers/char/hw_random/Kconfig                |  2 +-
 drivers/clk/bcm/Kconfig                       |  4 +-
 drivers/i2c/busses/Kconfig                    |  2 +-
 drivers/phy/broadcom/Kconfig                  |  2 +-
 drivers/spi/Kconfig                           |  2 +-
 drivers/tty/serial/Kconfig                    |  4 +-
 18 files changed, 108 insertions(+), 75 deletions(-)
 create mode 100644 arch/arm/boot/dts/bcm963138.dts
 delete mode 100644 arch/arm/mach-bcm/bcm63xx.c

Comments

Krzysztof Kozlowski July 6, 2022, 7:54 a.m. UTC | #1
On 05/07/2022 19:26, William Zhang wrote:
> Update compatible string and UART node and clock name based on device tree
> binding documents.
> 
> Signed-off-by: William Zhang <william.zhang@broadcom.com>
> ---
> 
>  arch/arm/boot/dts/bcm63138.dtsi    | 18 +++++++++---------
>  arch/arm/boot/dts/bcm963138dvt.dts |  8 ++++----
>  2 files changed, 13 insertions(+), 13 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/bcm63138.dtsi b/arch/arm/boot/dts/bcm63138.dtsi
> index cca49a2e2d62..bec13ed9f73b 100644
> --- a/arch/arm/boot/dts/bcm63138.dtsi
> +++ b/arch/arm/boot/dts/bcm63138.dtsi
> @@ -9,13 +9,13 @@
>  / {
>  	#address-cells = <1>;
>  	#size-cells = <1>;
> -	compatible = "brcm,bcm63138";
> -	model = "Broadcom BCM63138 DSL SoC";
> +	compatible = "brcm,bcm63138", "brcm,bcmbca";

Changing compatibles affects ABI, so you should not combine it with some
node renaming/cleanup patch. Split these.

> +	model = "Broadcom BCM963138 Reference Board";
>  	interrupt-parent = <&gic>;
>  
>  	aliases {
> -		uart0 = &serial0;
> -		uart1 = &serial1;
> +		serial0 = &uart0;
> +		serial1 = &uart1;
>  	};
>  
>  	cpus {
> @@ -174,7 +174,7 @@ sata_phy0: sata-phy@0 {
>  	};
>  
>  	/* Legacy UBUS base */
> -	ubus@fffe8000 {
> +	bus@fffe8000 {
>  		compatible = "simple-bus";
>  		#address-cells = <1>;
>  		#size-cells = <1>;
> @@ -185,21 +185,21 @@ timer: timer@80 {
>  			reg = <0x80 0x3c>;
>  		};
>  
> -		serial0: serial@600 {
> +		uart0: serial@600 {
>  			compatible = "brcm,bcm6345-uart";
>  			reg = <0x600 0x1b>;
>  			interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
>  			clocks = <&periph_clk>;
> -			clock-names = "periph";
> +			clock-names = "refclk";
>  			status = "disabled";
>  		};
>  
> -		serial1: serial@620 {
> +		uart1: serial@620 {
>  			compatible = "brcm,bcm6345-uart";
>  			reg = <0x620 0x1b>;
>  			interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
>  			clocks = <&periph_clk>;
> -			clock-names = "periph";
> +			clock-names = "refclk";

This is even more confusing. You now rename clock-names. How is this
related to board compatible or to node names?



Best regards,
Krzysztof
William Zhang July 6, 2022, 10:07 p.m. UTC | #2
On 7/6/22 00:54, Krzysztof Kozlowski wrote:
> On 05/07/2022 19:26, William Zhang wrote:
>> Update compatible string and UART node and clock name based on device tree
>> binding documents.
>>
>> Signed-off-by: William Zhang <william.zhang@broadcom.com>
>> ---
>>
>>   arch/arm/boot/dts/bcm63138.dtsi    | 18 +++++++++---------
>>   arch/arm/boot/dts/bcm963138dvt.dts |  8 ++++----
>>   2 files changed, 13 insertions(+), 13 deletions(-)
>>
>> diff --git a/arch/arm/boot/dts/bcm63138.dtsi b/arch/arm/boot/dts/bcm63138.dtsi
>> index cca49a2e2d62..bec13ed9f73b 100644
>> --- a/arch/arm/boot/dts/bcm63138.dtsi
>> +++ b/arch/arm/boot/dts/bcm63138.dtsi
>> @@ -9,13 +9,13 @@
>>   / {
>>   	#address-cells = <1>;
>>   	#size-cells = <1>;
>> -	compatible = "brcm,bcm63138";
>> -	model = "Broadcom BCM63138 DSL SoC";
>> +	compatible = "brcm,bcm63138", "brcm,bcmbca";
> 
> Changing compatibles affects ABI, so you should not combine it with some
> node renaming/cleanup patch. Split these.
> 
>> +	model = "Broadcom BCM963138 Reference Board";
>>   	interrupt-parent = <&gic>;
>>   
>>   	aliases {
>> -		uart0 = &serial0;
>> -		uart1 = &serial1;
>> +		serial0 = &uart0;
>> +		serial1 = &uart1;
>>   	};
>>   
>>   	cpus {
>> @@ -174,7 +174,7 @@ sata_phy0: sata-phy@0 {
>>   	};
>>   
>>   	/* Legacy UBUS base */
>> -	ubus@fffe8000 {
>> +	bus@fffe8000 {
>>   		compatible = "simple-bus";
>>   		#address-cells = <1>;
>>   		#size-cells = <1>;
>> @@ -185,21 +185,21 @@ timer: timer@80 {
>>   			reg = <0x80 0x3c>;
>>   		};
>>   
>> -		serial0: serial@600 {
>> +		uart0: serial@600 {
>>   			compatible = "brcm,bcm6345-uart";
>>   			reg = <0x600 0x1b>;
>>   			interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
>>   			clocks = <&periph_clk>;
>> -			clock-names = "periph";
>> +			clock-names = "refclk";
>>   			status = "disabled";
>>   		};
>>   
>> -		serial1: serial@620 {
>> +		uart1: serial@620 {
>>   			compatible = "brcm,bcm6345-uart";
>>   			reg = <0x620 0x1b>;
>>   			interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
>>   			clocks = <&periph_clk>;
>> -			clock-names = "periph";
>> +			clock-names = "refclk";
> 
> This is even more confusing. You now rename clock-names. How is this
> related to board compatible or to node names?
Not related to board compatible string but it is the same board dts file 
that require some updates.  Anyway I don't have to change anything else 
other than the compatible string for this patchset.  So I will revert 
those changes.
> 
> 
> 
> Best regards,
> Krzysztof