[PATCH] ARM: rpi: add CM4S device id

Sebastien Bourdelin sebastien.bourdelin at rtone.fr
Fri Dec 15 00:32:42 PST 2023


On Thu Dec 14, 2023 at 6:17 PM CET, Ahmad Fatoum wrote:
> Hello Sebastien,
>
> On 14.12.23 17:35, Sebastien Bourdelin wrote:
> > Introduce the device id for the raspberry CM4S accordingly to [1].
> > 
> >  [1]: https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-revision-codes
> > 
> > Signed-off-by: Sebastien Bourdelin <sebastien.bourdelin at rtone.fr>
>
> Reviewed-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
>
> One comment below:
>
> > +	}, {
> > +		.hw_id = BCM2711_BOARD_REV_CM4_S,
> > +		.init = rpi_eth_init,
>
> Did you check that this is equally applicable on the RPI4?
> This ends up calling rpi_get_usbethaddr(), but that one
> calls GET_MAC_ADDRESS on the mbox interface, so I am not
> sure whether this is applicable to bcmgenet or not.
>
> Cheers,
> Ahmad
>

Hello Ahmad,

No i didn't check specifically for the CM4S, i assumed the CM4S is not
different then the CM4 and RPI4 on that part and kept the same logic
then:
https://git.pengutronix.de/cgit/barebox/tree/arch/arm/boards/raspberry-pi/rpi-common.c#n646

I'm actually not sure how to validate that.

Cheers,
Sebastien.

> >  	}, {
> >  		.hw_id = U8_MAX
> >  	},
> > @@ -682,6 +685,7 @@ static const struct of_device_id rpi_of_match[] = {
> >  	/* BCM2711 based Boards */
> >  	{ .compatible = "raspberrypi,4-model-b", .data = rpi_4_ids },
> >  	{ .compatible = "raspberrypi,4-compute-module", .data = rpi_4_ids },
> > +	{ .compatible = "raspberrypi,4-compute-module-s", .data = rpi_4_ids },
> >  	{ .compatible = "raspberrypi,400", .data = rpi_4_ids },
> >  
> >  	{ /* sentinel */ },
> > diff --git a/include/mach/bcm283x/mbox.h b/include/mach/bcm283x/mbox.h
> > index 908ba17dba..cf5143673a 100644
> > --- a/include/mach/bcm283x/mbox.h
> > +++ b/include/mach/bcm283x/mbox.h
> > @@ -175,6 +175,7 @@ struct bcm2835_mbox_tag_hdr {
> >  #define BCM2837B0_BOARD_REV_ZERO_2	0x12
> >  #define BCM2711_BOARD_REV_400		0x13
> >  #define BCM2711_BOARD_REV_CM4		0x14
> > +#define BCM2711_BOARD_REV_CM4_S		0x15
> >  
> >  struct bcm2835_mbox_tag_get_board_rev {
> >  	struct bcm2835_mbox_tag_hdr tag_hdr;




More information about the barebox mailing list