| 
							konst
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									 «  : 28-05-2004 11:08 »   | 
								
								 | 
							  
							 
							кому не жалко времени своего, пожалуйста, расскажите, как вычленить из ядра драйвер ком-порта и собрать его? или линк дайте на где почитать... 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							npak
							
						 | 
						
							
								  | 
								
									
									 « Ответ #1 : 28-05-2004 11:20 »   | 
								
								 | 
							  
							 
							надо развернуть исходники ядра, драйвер находися в файле
  drivers/char/serial.c
  Что значит собрать?  Как отдельный модуль?
  Надо собирать вместе с ядром.  Отдельного DDK, как в винде, в линухе нет. Как собрать ядро есть отдельные howto.  Если что не понятно, спрашивай. 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							RXL
							
						 | 
						
							
								  | 
								
									
									 « Ответ #2 : 28-05-2004 11:40 »   | 
								
								 | 
							  
							 
							Любой модуль к ядру можно собрать отдельно от ядра. Для этого необходимы заголовки от этого ядра и его конфигурация (находится в этих же заголовках).
  Какой смысл изымать драйвер ком-порта? 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							konst
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #3 : 28-05-2004 13:10 »   | 
								
								 | 
							  
							 
							мне нужен драйвер ком-порта отдельно как модуль для того, чтобы на его основе сделать драйвер ком-порта на моежей железяке. на ней есть ком-порт, даже, возможно и будет работать просто, если особым образом драйвер настроить, в винде есть такие настройки, в винде, однако, исходники драйвера есть, небольшое добавление в виде нужного мне функционала было достаточно, вот как бы аналогичную задачу под линуксом решить? 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							RXL
							
						 | 
						
							
								  | 
								
									
									 « Ответ #4 : 28-05-2004 13:21 »   | 
								
								 | 
							  
							 
							Если у тебя стандартный UART из поддерживаемых драйвером, то зачем городить? Или у тебя драйвер должен эмулировать последовательный порт? 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							konst
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #5 : 28-05-2004 13:35 »   | 
								
								 | 
							  
							 
							да. совсем стандартный. только надо выбрать 3ий диапазон ио за базовый. ну, возможно потребуется специальная процедура, чтоб его включить, но, скорее всего, нет. ещё такой вопрос. в линуксе драйверы лочат диапазоны ввода-вывода за собой так, чтобы другие на могли их захватывать или не обязательно? возможно ли на одну и ту же железку 2 драйвера повесить, у которым одно и тоже пространство ввода-вывода нужно? 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							RXL
							
						 | 
						
							
								  | 
								
									
									«  Ответ #6 : 28-05-2004 14:01 »    | 
								
								 | 
							  
							 
							konst, да бы не было конфликтов, ресурсы (io, irq, dma) запрашиваються. См. linux/ioport.h, linux/sched.h и т.п. Ищи ф-ии типа request_region(), request_irq(). Загляни в книгу - там про это должно быть написано.
  Два драйвера на один ресурс лучше не вешать.
  Кстати, ко ли у тебя стандартный uart, можно проще: linux/serial.h: register_serial(). 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. 
						 | 
					 
				 
			 |  
		 
	 | 
	 |