[U-Boot] [PATCH 5/7] mips: mt76xx: gardena-smart-gateway: Read default speed and mode values from DT
Stefan Roese
sr at denx.de
Mon Dec 10 11:47:15 UTC 2018
On 10.12.18 11:52, Patrick Delaunay wrote:
> In case of DT boot, don't read default speed and mode for SPI from
> CONFIG_*, instead read from DT node.
>
> Signed-off-by: Patrick Delaunay <patrick.delaunay at st.com>
> ---
>
> board/gardena/smart-gateway-mt7688/board.c | 24 ++++++++++++++++++++----
> 1 file changed, 20 insertions(+), 4 deletions(-)
>
> diff --git a/board/gardena/smart-gateway-mt7688/board.c b/board/gardena/smart-gateway-mt7688/board.c
> index 6e11077..8a67e70 100644
> --- a/board/gardena/smart-gateway-mt7688/board.c
> +++ b/board/gardena/smart-gateway-mt7688/board.c
> @@ -89,6 +89,14 @@ static void factory_data_env_config(void)
> u32 crc;
> int ret;
> u8 *ptr;
> + /* In DM mode, defaults will be taken from DT */
> + unsigned int speed = 0;
> + unsigned int mode = 0;
> +
> +#ifndef CONFIG_DM_SPI_FLASH
> + speed = CONFIG_SF_DEFAULT_SPEED;
> + mode = CONFIG_SF_DEFAULT_MODE;
> +#endif
CONFIG_DM_SPI_FLASH is always enabled in this board. So there should
be no need to handle the non-DM case at all.
Could you please change this patch and remove this unnecessary code?
Thanks,
Stefan
>
> buf = malloc(FACTORY_DATA_SIZE);
> if (!buf) {
> @@ -101,8 +109,8 @@ static void factory_data_env_config(void)
> */
> sf = spi_flash_probe(CONFIG_SF_DEFAULT_BUS,
> CONFIG_SF_DEFAULT_CS,
> - CONFIG_SF_DEFAULT_SPEED,
> - CONFIG_SF_DEFAULT_MODE);
> + speed,
> + mode);
> if (!sf) {
> printf("F-Data:Unable to access SPI NOR flash\n");
> goto err_free;
> @@ -207,6 +215,14 @@ int do_fd_write(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
> struct spi_flash *sf;
> u8 *buf;
> int ret = CMD_RET_FAILURE;
> + /* In DM mode, defaults will be taken from DT */
> + unsigned int speed = 0;
> + unsigned int mode = 0;
> +
> +#ifndef CONFIG_DM_SPI_FLASH
> + speed = CONFIG_SF_DEFAULT_SPEED;
> + mode = CONFIG_SF_DEFAULT_MODE;
> +#endif
>
> buf = malloc(FACTORY_DATA_SECT_SIZE);
> if (!buf) {
> @@ -216,8 +232,8 @@ int do_fd_write(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
>
> sf = spi_flash_probe(CONFIG_SF_DEFAULT_BUS,
> CONFIG_SF_DEFAULT_CS,
> - CONFIG_SF_DEFAULT_SPEED,
> - CONFIG_SF_DEFAULT_MODE);
> + speed,
> + mode);
> if (!sf) {
> printf("F-Data:Unable to access SPI NOR flash\n");
> goto err_free;
>
Viele Grüße,
Stefan
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr at denx.de
More information about the U-Boot
mailing list