Ver código fonte

Fix PCMCIA support on virtlab2

Wolfgang Denk 19 anos atrás
pai
commit
6516525083
2 arquivos alterados com 9 adições e 0 exclusões
  1. 2 0
      CHANGELOG
  2. 7 0
      common/cmd_pcmcia.c

+ 2 - 0
CHANGELOG

@@ -2,6 +2,8 @@
 Changes since U-Boot 1.1.4:
 ======================================================================
 
+* Fix PCMCIA support on virtlab2
+
 * Add support for VirtLab2 board
   (needed because of differences in the PCMCIA hardware).
 

+ 7 - 0
common/cmd_pcmcia.c

@@ -1035,12 +1035,19 @@ static int hardware_enable(int slot)
 		(pcmconf8xx_t *)&(((immap_t *)CFG_IMMR)->im_pcmcia);
 	volatile unsigned char	*powerctl =
 		(volatile unsigned char *)PCMCIA_CTRL;
+	volatile sysconf8xx_t	*sysp =
+		(sysconf8xx_t *)(&(((immap_t *)CFG_IMMR)->im_siu_conf));
 	unsigned int		reg, mask;
 
 	debug ("hardware_enable: " PCMCIA_BOARD_MSG " Slot %c\n", 'A'+slot);
 
 	udelay(10000);
 
+	/*
+	 * Configure SIUMCR to enable PCMCIA port B
+	 */
+	sysp->sc_siumcr &= ~SIUMCR_DBGC11;	/* set DBGC to 00 */
+
 	/* clear interrupt state, and disable interrupts */
 	pcmp->pcmc_pscr =  PCMCIA_MASK(slot);
 	pcmp->pcmc_per &= ~PCMCIA_MASK(slot);